提交 09fc023a 编写于 作者: Y yylgit

mvvm

## [0.3.0-alpha.8](https://github.com/didi/chameleon/compare/v0.3.0-alpha.7...v0.3.0-alpha.8)
### Bug Fixes
* 修复 全局安装chameleon-tool时的npm warn
## [0.3.0-alpha.7](https://github.com/didi/chameleon/compare/v0.3.0-alpha.6...v0.3.0-alpha.7)
### Bug Fixes
* 修复 build 模式autoprefixer被删除
* 修复 chameleon.config.js 中的base配置优先级bug
### Features
* 增加了cmss.enableAutoPrefix 参数控制是否添加css的autoprefix
## [0.3.0-alpha.6](https://github.com/didi/chameleon/compare/v0.3.0-alpha.5...v0.3.0-alpha.6)
### Bug Fixes
* 修复 cml wx build执行后报错
## [0.3.0-alpha.5](https://github.com/didi/chameleon/compare/v0.3.0-alpha.4...v0.3.0-alpha.5)
### Bug Fixes
* 修复 cml weex build生成config.json 格式不正确
## [0.3.0-alpha.4](https://github.com/didi/chameleon/compare/v0.3.0-alpha.3...v0.3.0-alpha.4)
### Bug Fixes
* 回退模板的chameleon-ui-builtin@0.2.1 到chameleon-ui-builtin@0.2.0, 因为image组件不兼容样式设置
## [0.3.0-alpha.3](https://github.com/didi/chameleon/compare/v0.3.0-alpha.2...v0.3.0-alpha.3)
### Features
* 升级初始化项目运行时依赖
* weex config.json中增加md5字段
### Bug Fixes
* 组件间css优先级问题
## [0.3.0-alpha.2](https://github.com/didi/chameleon/compare/v0.3.0-alpha.1...v0.3.0-alpha.2)
### Features
......
......@@ -2,7 +2,7 @@
"packages": [
"packages/*"
],
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"command": {
"publish": {
"allowBranch": "master",
......
{
"name": "babel-plugin-chameleon-import",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "Component modular import plugin for babel.",
"repository": {
"type": "git",
......
{
"name": "chameleon-css-loader",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "chameleon样式处理",
"main": "index.js",
"scripts": {
......
{
"name": "chameleon-dev-proxy",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "cml开发环境代理服务模块",
"main": "index.js",
"author": "Chameleon-Team",
......
{
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"name": "chameleon-errors-webpack-plugin",
"main": "index.js",
"author": "Chameleon-Team",
......
{
"name": "chameleon-linter",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "cml规范校验工具",
"main": "index.js",
"scripts": {
......@@ -24,10 +24,10 @@
"@babel/traverse": "^7.1.4",
"bulk-require": "^1.0.1",
"chalk": "^2.4.1",
"chameleon-tool-utils": "0.3.0-alpha.2",
"cml-component-parser": "0.3.0-alpha.2",
"cml-htmllint": "0.3.0-alpha.2",
"cml-js-parser": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.3",
"cml-component-parser": "0.3.0-alpha.3",
"cml-htmllint": "0.3.0-alpha.3",
"cml-js-parser": "0.3.0-alpha.3",
"commander": "^2.19.0",
"glob": "^7.1.3",
"json-lint": "^0.1.0",
......
{
"name": "chameleon-loader",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "chameleon cml文件处理loader",
"main": "src/index.js",
"directories": {
......@@ -18,8 +18,8 @@
"@babel/types": "^7.3.4",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0",
"chameleon-template-parse": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-template-parse": "0.3.0-alpha.3",
"chameleon-tool-utils": "0.3.0-alpha.3",
"consolidate": "0.14.0",
"de-indent": "1.0.2",
"hash-sum": "1.0.2",
......@@ -30,7 +30,7 @@
"lru-cache": "4.1.1",
"mvvm-interface-parser": "0.3.0-alpha.2",
"resolve": "1.4.0",
"runtime-check": "0.3.0-alpha.2",
"runtime-check": "0.3.0-alpha.3",
"source-map": "0.6.1",
"vue-style-loader": "4.0.1",
"xmldom": "0.1.27"
......
const cmlUtils = require('chameleon-tool-utils');
module.exports = function(loaderContext, jsonObject, cmlType) {
module.exports = function(loaderContext, jsonObject, cmlType, componentDeps) {
var jsonPath = loaderContext.resourcePath.replace(/(\.cml|\.wx\.cml|\.alipay\.cml|\.baidu\.cml)$/, '.json')
var context = (loaderContext._compiler && loaderContext._compiler.context) || loaderContext.options.context || process.cwd()
......@@ -10,6 +10,7 @@ module.exports = function(loaderContext, jsonObject, cmlType) {
Object.keys(components).forEach(key => {
let {filePath, refUrl} = cmlUtils.handleComponentUrl(context, loaderContext.resourcePath, components[key], cmlType);
if (filePath) {
componentDeps.push(filePath);
components[key] = refUrl;
} else {
delete components[key];
......@@ -17,9 +18,7 @@ module.exports = function(loaderContext, jsonObject, cmlType) {
}
})
}
cmlUtils.addNpmComponents(jsonObject, jsonPath, cmlType, context)
cmlUtils.addNpmComponents(jsonObject, jsonPath, cmlType, context);
return jsonObject;
......
......@@ -20,6 +20,13 @@ const miniAppScript = require('./miniapp-script.js');
let jsonObject = {};
module.exports = function (content) {
// 记录cml组件依赖 用于extract-css 优先级排序
if(!this._compiler._cmlDepsMap) {
this._compiler._cmlDepsMap = {};
}
const componentDeps = [];
this._compiler._cmlDepsMap[this.resourcePath] = componentDeps;
const self = this;
const filePath = this.resourcePath;
......@@ -211,8 +218,13 @@ module.exports = function (content) {
function miniAppHandler() {
// 记录依赖
let npmComponents = cmlUtils.getTargetInsertComponents(self.resourcePath, cmlType, context) || [];
npmComponents.forEach(item=>{
componentDeps.push(item.filePath);
})
let newJsonObj = jsonHandler(self, jsonObject, cmlType) || {};
let newJsonObj = jsonHandler(self, jsonObject, cmlType, componentDeps) || {};
newJsonObj.usingComponents = newJsonObj.usingComponents || {};
let usingComponents ={} ;
......@@ -394,7 +406,7 @@ module.exports = function (content) {
let componetsStr = '';
let coms = jsonObject.usingComponents || {};
let customComKeys = Object.keys(coms);
let npmComponents = cmlUtils.getTargetInsertComponents(self.resourcePath, cmlType, context, currentUsedBuildInTagMap) || [];
let npmComponents = cmlUtils.getTargetInsertComponents(self.resourcePath, cmlType, context) || [];
// 内置组件按需加载
npmComponents = npmComponents.filter(item=>{
// 如果是内置组件 选择模板中使用了的组件
......@@ -415,6 +427,7 @@ module.exports = function (content) {
//node_modules 中的组件引入
npmComponents.forEach(item => {
componentDeps.push(item.filePath);
defineComponets += `import ${toUpperCase(item.name)} from "${cmlUtils.handleRelativePath(self.resourcePath, item.filePath)}" \n`
})
......@@ -422,6 +435,7 @@ module.exports = function (content) {
let comPath = coms[comKey];
let { filePath } = cmlUtils.handleComponentUrl(context, self.resourcePath, comPath, cmlType);
if(filePath) {
componentDeps.push(filePath);
defineComponets += `import ${toUpperCase(comKey)} from "${cmlUtils.handleRelativePath(self.resourcePath, filePath)}" \n`
} else {
cmlUtils.log.error(`can't find component:${comPath} in ${self.resourcePath} `);
......
{
"name": "chameleon-miniapp-target",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "chameleon 小程序webpack的target",
"main": "src/index.js",
"scripts": {
......@@ -14,7 +14,7 @@
"webpack": "^3.12.0"
},
"dependencies": {
"chameleon-tool-utils": "0.3.0-alpha.2"
"chameleon-tool-utils": "0.3.0-alpha.3"
},
"mail": "ChameleonCore@didiglobal.com",
"gitHead": "5ddcde4330774710f7646559446e008f7785ce00"
......
{
"name": "chameleon-mixins",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "chameleon-mixins",
"main": "index.js",
"scripts": {
......@@ -12,7 +12,7 @@
"license": "Apache",
"devDependencies": {
"chai": "^4.2.0",
"chameleon-css-loader": "0.3.0-alpha.2",
"chameleon-css-loader": "0.3.0-alpha.3",
"coveralls": "^2.11.9",
"eslint": "^5.9.0",
"gulp": "^3.9.1",
......
{
"name": "chameleon-template-parse",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "",
"main": "index.js",
"scripts": {
......@@ -24,9 +24,9 @@
},
"devDependencies": {
"chai": "^4.2.0",
"chameleon-css-loader": "0.3.0-alpha.2",
"chameleon-mixins": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-css-loader": "0.3.0-alpha.3",
"chameleon-mixins": "0.3.0-alpha.3",
"chameleon-tool-utils": "0.3.0-alpha.3",
"clean-webpack-plugin": "^0.1.19",
"coveralls": "^2.11.9",
"eslint": "^5.9.0",
......
{
"name": "chameleon-templates",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.4",
"description": "",
"main": "index.js",
"scripts": {
......
......@@ -5,9 +5,9 @@
"requires": true,
"dependencies": {
"chameleon-api": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/chameleon-api/-/chameleon-api-0.4.0.tgz",
"integrity": "sha512-21Qc7wSE62uyMsWaK/g1HFdAkobYuusufeojfptt56y4v4epu1O6LKLMsdCV2Gi6x0uIe1gYskvCkxmPdh2Bvw==",
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/chameleon-api/-/chameleon-api-0.4.3.tgz",
"integrity": "sha512-byqC9UZAlAdVT70Pl5szDRvmLW4T13Gexc0/sZiZleElmpcgkVf78ruT7T7u4ISmuTa5G3oWi680jZevfBk0pA==",
"requires": {
"chameleon-bridge": "0.1.0",
"child_process": "1.0.2",
......@@ -23,9 +23,9 @@
}
},
"chameleon-bridge": {
"version": "0.1.1-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-bridge/-/chameleon-bridge-0.1.1-alpha.2.tgz",
"integrity": "sha512-5IFZPamHYErbMYPD/H+RT5GAmxDqDZ0YlkBAbDGIDm82WFEFlpp7MnDclb1ZjJ2/txz3WmUOQQq/ZvOrVqACJg=="
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/chameleon-bridge/-/chameleon-bridge-0.1.2.tgz",
"integrity": "sha512-Nrah3QBWzqXw5C6oSiD/mM2vVZTaRKE58Y1d/iasQa/7vNKNGLhvc/r8FJS6k7kBAgMSJJFLuUd475x2/x5Fbg=="
},
"chameleon-runtime": {
"version": "0.1.4",
......@@ -50,9 +50,9 @@
}
},
"chameleon-ui-builtin": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/chameleon-ui-builtin/-/chameleon-ui-builtin-0.1.2.tgz",
"integrity": "sha512-Oiqss1kq/12mzgJ9TkPtoBjfib91TfNtJ5e6w8vCgiZ2FtPHFSD00zH0nu7cHdTDDwDdwOhoE7ryWWYqVr4oqw==",
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/chameleon-ui-builtin/-/chameleon-ui-builtin-0.2.0.tgz",
"integrity": "sha512-IR0vbrvd5WIU1JXimHu/G4ByP+jWXCTSOoD8XWckw+8K5w3hlDoxBa1ca//+54AGD7Y/yTx5Q+Trf/itAeC8Ww==",
"requires": {
"chameleon-scroll": "0.0.3"
}
......@@ -63,9 +63,9 @@
"integrity": "sha1-sffn/HPSXn/R1FWtyU4UODAYK1o="
},
"cml-ui": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/cml-ui/-/cml-ui-0.1.5.tgz",
"integrity": "sha512-TEMNoQF4WtRl8f3Ji8GTAbYzFKekx33oIPoNG09NJVLUn4szvib3Mk2fCmOhi2lWcOLSwtWyQ0oDcUV5yeyNvw=="
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/cml-ui/-/cml-ui-0.1.7.tgz",
"integrity": "sha512-oxzAHXzi4D2nxnoEk0XylAbuBwSDZhR/G43UmjePOfGnDJBNhgIMB3UnDGjIpEmJVS5S0t1pEGPNCjFrzJ+LnQ=="
},
"fetch-detector": {
"version": "1.0.1",
......
......@@ -7,11 +7,11 @@
"scripts": {},
"license": "MIT",
"dependencies": {
"chameleon-api": "^0.4.0",
"chameleon-bridge": "^0.1.1-alpha.2",
"chameleon-runtime": "^0.1.4",
"chameleon-api": "0.4.3",
"chameleon-bridge": "0.1.2",
"chameleon-runtime": "0.1.4",
"chameleon-store": "0.0.3",
"chameleon-ui-builtin": "^0.1.2",
"cml-ui": "^0.1.5"
"chameleon-ui-builtin": "^0.2.0",
"cml-ui": "0.1.7"
}
}
......@@ -5,9 +5,9 @@
"requires": true,
"dependencies": {
"chameleon-api": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/chameleon-api/-/chameleon-api-0.4.0.tgz",
"integrity": "sha512-21Qc7wSE62uyMsWaK/g1HFdAkobYuusufeojfptt56y4v4epu1O6LKLMsdCV2Gi6x0uIe1gYskvCkxmPdh2Bvw==",
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/chameleon-api/-/chameleon-api-0.4.3.tgz",
"integrity": "sha512-byqC9UZAlAdVT70Pl5szDRvmLW4T13Gexc0/sZiZleElmpcgkVf78ruT7T7u4ISmuTa5G3oWi680jZevfBk0pA==",
"requires": {
"chameleon-bridge": "0.1.0",
"child_process": "1.0.2",
......@@ -23,9 +23,9 @@
}
},
"chameleon-bridge": {
"version": "0.1.1-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-bridge/-/chameleon-bridge-0.1.1-alpha.2.tgz",
"integrity": "sha512-5IFZPamHYErbMYPD/H+RT5GAmxDqDZ0YlkBAbDGIDm82WFEFlpp7MnDclb1ZjJ2/txz3WmUOQQq/ZvOrVqACJg=="
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/chameleon-bridge/-/chameleon-bridge-0.1.2.tgz",
"integrity": "sha512-Nrah3QBWzqXw5C6oSiD/mM2vVZTaRKE58Y1d/iasQa/7vNKNGLhvc/r8FJS6k7kBAgMSJJFLuUd475x2/x5Fbg=="
},
"chameleon-runtime": {
"version": "0.1.4",
......@@ -50,9 +50,9 @@
}
},
"chameleon-ui-builtin": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/chameleon-ui-builtin/-/chameleon-ui-builtin-0.1.2.tgz",
"integrity": "sha512-Oiqss1kq/12mzgJ9TkPtoBjfib91TfNtJ5e6w8vCgiZ2FtPHFSD00zH0nu7cHdTDDwDdwOhoE7ryWWYqVr4oqw==",
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/chameleon-ui-builtin/-/chameleon-ui-builtin-0.2.0.tgz",
"integrity": "sha512-IR0vbrvd5WIU1JXimHu/G4ByP+jWXCTSOoD8XWckw+8K5w3hlDoxBa1ca//+54AGD7Y/yTx5Q+Trf/itAeC8Ww==",
"requires": {
"chameleon-scroll": "0.0.3"
}
......@@ -63,9 +63,9 @@
"integrity": "sha1-sffn/HPSXn/R1FWtyU4UODAYK1o="
},
"cml-ui": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/cml-ui/-/cml-ui-0.1.5.tgz",
"integrity": "sha512-TEMNoQF4WtRl8f3Ji8GTAbYzFKekx33oIPoNG09NJVLUn4szvib3Mk2fCmOhi2lWcOLSwtWyQ0oDcUV5yeyNvw=="
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/cml-ui/-/cml-ui-0.1.7.tgz",
"integrity": "sha512-oxzAHXzi4D2nxnoEk0XylAbuBwSDZhR/G43UmjePOfGnDJBNhgIMB3UnDGjIpEmJVS5S0t1pEGPNCjFrzJ+LnQ=="
},
"fetch-detector": {
"version": "1.0.1",
......
......@@ -7,11 +7,11 @@
"scripts": {},
"license": "MIT",
"dependencies": {
"chameleon-api": "^0.4.0",
"chameleon-bridge": "^0.1.1-alpha.2",
"chameleon-runtime": "^0.1.4",
"chameleon-api": "0.4.3",
"chameleon-bridge": "0.1.2",
"chameleon-runtime": "0.1.4",
"chameleon-store": "0.0.3",
"chameleon-ui-builtin": "^0.1.2",
"cml-ui": "^0.1.5"
"chameleon-ui-builtin": "^0.2.0",
"cml-ui": "0.1.7"
}
}
......@@ -36,5 +36,5 @@
"test": "mocha --recursive --reporter spec",
"break-test": "./node_modules/.bin/mocha --inspect-brk --recursive --reporter spec"
},
"version": "0.3.0-alpha.2"
"version": "0.3.0-alpha.3"
}
\ No newline at end of file
......@@ -8,6 +8,7 @@ const watch = require('glob-watcher');
const fse = require('fs-extra');
const path = require('path');
const fs = require('fs');
const crypto = require('crypto');
/**
* 非web端构建
* @param {*} media dev or build ...
......@@ -180,6 +181,8 @@ exports.startReleaseOne = async function(media, type) {
await build.then(res => {
exports.getWebBuildPromise(media, false);
})
} else {
await build;
}
}
if (media === 'build') {
......@@ -209,6 +212,15 @@ exports.createConfigJson = function() {
};
// 获取weex jsbundle地址
let weexjs = configObj.weexjs || '';
let md5str = '';
const weexjsName = weexjs.split('/').pop();
const weexjsPath = path.resolve(cml.projectRoot, 'dist/weex/', weexjsName);
if (cml.utils.isFile(weexjsPath)) {
const md5sum = crypto.createHash('md5');
const buffer = fs.readFileSync(weexjsPath);
md5sum.update(buffer);
md5str = md5sum.digest('hex').toUpperCase();
}
let config = cml.config.get();
config.buildInfo = config.buildInfo || {};
......@@ -250,6 +262,7 @@ exports.createConfigJson = function() {
},
weex: {
url: weexjs,
md5: md5str,
query: {
path: item.path
}
......
......@@ -244,7 +244,7 @@ module.exports = function (options) {
commonConfig.plugins = commonConfig.plugins.concat([
new OptimizeCSSPlugin({
assetNameRegExp: /\.css$/,
cssProcessorOptions: { safe: true, discardComments: { removeAll: true } }
cssProcessorOptions: { safe: true, discardComments: { removeAll: true }, autoprefixer: false }
}),
new UglifyJsPlugin({})
])
......
......@@ -236,7 +236,7 @@ module.exports = function (options) {
commonConfig.plugins = commonConfig.plugins.concat([
new OptimizeCSSPlugin({
assetNameRegExp: /\.css$/,
cssProcessorOptions: { safe: true, discardComments: { removeAll: true } }
cssProcessorOptions: { safe: true, discardComments: { removeAll: true }, autoprefixer: false }
}),
new UglifyJsPlugin({})
])
......
......@@ -211,7 +211,7 @@ module.exports = function (options) {
commonConfig.plugins = commonConfig.plugins.concat([
new OptimizeCSSPlugin({
assetNameRegExp: /\.css$/,
cssProcessorOptions: { safe: true, discardComments: { removeAll: true } }
cssProcessorOptions: { safe: true, discardComments: { removeAll: true }, autoprefixer: false }
}),
new UglifyJsPlugin({})
])
......
......@@ -28,7 +28,7 @@ module.exports = function (options) {
buildConfig.plugins = [
new OptimizeCSSPlugin({
assetNameRegExp: targetObj.cssReg,
cssProcessorOptions: { safe: true, discardComments: { removeAll: true } }
cssProcessorOptions: { safe: true, discardComments: { removeAll: true }, autoprefixer: false }
})
]
}
......
// https://github.com/michael-ciniawsky/postcss-load-config
module.exports = {
let result = {
"plugins": {
// to edit target browsers: use "browserslist" field in package.json
"postcss-import": {},
"autoprefixer": cml.config.get().cmss.autoprefixOptions
"postcss-import": {}
}
}
\ No newline at end of file
}
if(cml.config.get().cmss.enableAutoPrefix === true) {
result.plugins.autoprefixer = cml.config.get().cmss.autoprefixOptions
}
module.exports = result;
// https://github.com/michael-ciniawsky/postcss-load-config
module.exports = {
let result = {
"plugins": {
// to edit target browsers: use "browserslist" field in package.json
"postcss-import": {},
"autoprefixer": cml.config.get().cmss.autoprefixOptions
"postcss-import": {}
}
}
\ No newline at end of file
}
if(cml.config.get().cmss.enableAutoPrefix === true) {
result.plugins.autoprefixer = cml.config.get().cmss.autoprefixOptions
}
module.exports = result;
// https://github.com/michael-ciniawsky/postcss-load-config
let defaultConfig = {
let result = {
"plugins": {
// to edit target browsers: use "browserslist" field in package.json
"postcss-import": {},
"autoprefixer": cml.config.get().cmss.autoprefixOptions
"postcss-import": {}
}
}
if(cml.config.get().cmss.enableAutoPrefix === true) {
result.plugins.autoprefixer = cml.config.get().cmss.autoprefixOptions
}
module.exports = defaultConfig;
module.exports = result;
......@@ -2,6 +2,6 @@
module.exports = {
"plugins": {
// to edit target browsers: use "browserslist" field in package.json
"postcss-import": {},
"postcss-import": {}
}
}
\ No newline at end of file
// https://github.com/michael-ciniawsky/postcss-load-config
module.exports = {
let result = {
"plugins": {
// to edit target browsers: use "browserslist" field in package.json
"postcss-import": {},
"autoprefixer": cml.config.get().cmss.autoprefixOptions
"postcss-import": {}
}
}
\ No newline at end of file
}
if(cml.config.get().cmss.enableAutoPrefix === true) {
result.plugins.autoprefixer = cml.config.get().cmss.autoprefixOptions
}
module.exports = result;
......@@ -82,7 +82,9 @@ var chameleonConfig = {
},
autoprefixOptions: {
browsers: ['> 0.1%', 'ios >= 8', 'not ie < 12']
}
},
// 是否对css开启autoprefix,默认为true 非weex端生效
enableAutoPrefix: true
},
wx: miniappConfig,
alipay: miniappConfig,
......@@ -161,7 +163,10 @@ _.get = function() {
if (baseConfig) {
platforms.forEach(platform => {
if (chameleonConfig[platform]) {
utils.merge(chameleonConfig[platform], JSON.parse(JSON.stringify(baseConfig)));
let base = JSON.parse(JSON.stringify(baseConfig));
let newConfig = JSON.parse(JSON.stringify(chameleonConfig[platform]));
utils.merge(base, newConfig);
chameleonConfig[platform] = base;
}
})
delete chameleonConfig.base;
......
{
"name": "chameleon-tool",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.8",
"description": "chameleon 脚手架工具",
"main": "chameleon.js",
"scripts": {
......@@ -30,7 +30,7 @@
"autoprefixer": "8.6.4",
"babel-core": "6.26.3",
"babel-loader": "7.1.4",
"babel-plugin-chameleon-import": "0.3.0-alpha.2",
"babel-plugin-chameleon-import": "^0.3.0-alpha.3",
"babel-plugin-transform-remove-strict-mode": "0.0.2",
"babel-plugin-transform-runtime": "6.23.0",
"babel-preset-env": "1.7.0",
......@@ -38,23 +38,23 @@
"babel-preset-stage-0": "6.24.1",
"body-parser": "^1.18.3",
"chalk": "^2.4.2",
"chameleon-css-loader": "0.3.0-alpha.2",
"chameleon-dev-proxy": "0.3.0-alpha.2",
"chameleon-errors-webpack-plugin": "0.3.0-alpha.2",
"chameleon-linter": "0.3.0-alpha.2",
"chameleon-loader": "0.3.0-alpha.2",
"chameleon-miniapp-target": "0.3.0-alpha.2",
"chameleon-mixins": "0.3.0-alpha.2",
"chameleon-template-parse": "0.3.0-alpha.2",
"chameleon-templates": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-url-loader": "0.3.0-alpha.2",
"chameleon-vue-precompiler": "0.3.0-alpha.2",
"chameleon-webpack-plugin": "0.3.0-alpha.2",
"chameleon-weex-vue-loader": "0.3.0-alpha.2",
"chameleon-css-loader": "^0.3.0-alpha.3",
"chameleon-dev-proxy": "^0.3.0-alpha.3",
"chameleon-errors-webpack-plugin": "^0.3.0-alpha.3",
"chameleon-linter": "^0.3.0-alpha.3",
"chameleon-loader": "^0.3.0-alpha.3",
"chameleon-miniapp-target": "^0.3.0-alpha.3",
"chameleon-mixins": "^0.3.0-alpha.3",
"chameleon-template-parse": "^0.3.0-alpha.3",
"chameleon-templates": "^0.3.0-alpha.4",
"chameleon-tool-utils": "^0.3.0-alpha.3",
"chameleon-url-loader": "^0.3.0-alpha.3",
"chameleon-vue-precompiler": "^0.3.0-alpha.3",
"chameleon-webpack-plugin": "^0.3.0-alpha.3",
"chameleon-weex-vue-loader": "^0.3.0-alpha.3",
"clean-webpack-plugin": "0.1.19",
"cml-extract-css-webpack-plugin": "0.3.0-alpha.2",
"cml-vue-loader": "0.3.0-alpha.2",
"cml-extract-css-webpack-plugin": "^0.3.0-alpha.3",
"cml-vue-loader": "^0.3.0-alpha.3",
"commander": "2.16.0",
"connect-history-api-fallback": "^1.5.0",
"copy-webpack-plugin": "4.5.2",
......@@ -69,7 +69,7 @@
"html-loader": "0.5.5",
"html-webpack-plugin": "2.30.1",
"inquirer": "6.0.0",
"interface-loader": "0.3.0-alpha.2",
"interface-loader": "^0.3.0-alpha.3",
"ip": "1.1.5",
"less": "3.0.4",
"less-loader": "4.1.0",
......@@ -99,10 +99,10 @@
"vuex": "3.0.1",
"webpack": "3.12.0",
"webpack-bundle-analyzer": "2.13.1",
"webpack-check-plugin": "0.3.0-alpha.2",
"webpack-check-plugin": "^0.3.0-alpha.3",
"webpack-chunk-hash": "0.6.0",
"webpack-hot-middleware": "2.22.2",
"webpack-liveload-middleware": "0.3.0-alpha.2",
"webpack-liveload-middleware": "^0.3.0-alpha.3",
"webpack-merge": "4.1.3",
"ws": "^6.1.0"
},
......
{
"name": "chameleon-vue-precompiler",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "为chameleon提供 vue-loader 的模板预编译处理能力",
"author": "Chameleon-Team",
"scripts": {},
......
{
"name": "chameleon-webpack-plugin",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "",
"main": "index.js",
"scripts": {
......
{
"name": "chameleon-weex-vue-loader",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"license": "Apache",
"main": "index.js",
"dependencies": {
......
{
"name": "cml-component-parser",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "A tool that can parse interface file and return all properties and methods it has.",
"main": "index.js",
"scripts": {},
......@@ -13,9 +13,9 @@
"dependencies": {
"@babel/parser": "^7.1.3",
"@babel/traverse": "^7.2.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"cml-interface-parser": "0.3.0-alpha.2",
"cml-js-parser": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.3",
"cml-interface-parser": "0.3.0-alpha.3",
"cml-js-parser": "0.3.0-alpha.3",
"commander": "^2.19.0"
},
"devDependencies": {
......
// 根据依赖的map 生成顺序的数组
exports.getAllFileSort = function (depsMap) {
debugger
let result = [];
let currentStack = []; //记录当前处理的文件 防止循环依赖
let allKeys = Object.keys(depsMap);
for(let i = 0; i < allKeys.length; i++) {
entry(allKeys[i])
}
function entry(filePath) {
// 已经存在 不操作
if(~result.indexOf(filePath)) {
return;
}
// 在栈中 不操作
if(~currentStack.indexOf(filePath)) {
return;
}
// 不存在依赖
if(!depsMap[filePath]) {
result.push(filePath);
} else {
// 存在依赖 先入栈
currentStack.push(filePath);
let deps = depsMap[filePath];
deps.forEach(item=>{
entry(item);
})
result.push(filePath);
// 处理完了出站
currentStack.pop(filePath);
}
}
return result;
}
exports.sortChunk = function(extractedChunk, allFileSort) {
debugger
let modules = Array.from(extractedChunk._modules);
let cssmodule = []; // 普通css 就是按照引用顺序 先引用的放在前面 css的module放前面 只有web端会引用
let cmlmodule = [];
let result = [];
modules.forEach(item=>{
if(/(\.cml|\.vue)$/.test(item._originalModule.resource)) {
cmlmodule.push(item);
} else {
cssmodule.push(item);
}
});
// 排序
cmlmodule.sort(function(a, b) {
let aIndex = allFileSort.indexOf(a._originalModule.resource);
let bIndex = allFileSort.indexOf(b._originalModule.resource);
return aIndex - bIndex;
})
result = result.concat(cssmodule, cmlmodule);
extractedChunk._modules = new Set(result);
}
\ No newline at end of file
......@@ -42,6 +42,7 @@ var _OrderUndefinedError2 = _interopRequireDefault(_OrderUndefinedError);
var _helpers = require('./lib/helpers');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
......@@ -50,6 +51,9 @@ var NS = _path2.default.dirname(_fs2.default.realpathSync(__filename));
var nextId = 0;
var cmlHelper = require('./helper');
var ExtractTextPlugin = function () {
function ExtractTextPlugin(options) {
_classCallCheck(this, ExtractTextPlugin);
......@@ -244,6 +248,11 @@ var ExtractTextPlugin = function () {
});
});
compilation.plugin('additional-assets', function (callback) {
// const
let cmlDepsMap = compiler._cmlDepsMap || {};
let allFileSort = cmlHelper.getAllFileSort(cmlDepsMap);
extractedChunks.forEach(function (extractedChunk) {
if (extractedChunk.getNumberOfModules()) {
extractedChunk.sortModules(function (a, b) {
......@@ -253,9 +262,12 @@ var ExtractTextPlugin = function () {
}
return (0, _helpers.getOrder)(a, b);
});
debugger
var chunk = extractedChunk.originalChunk;
//重新排列vue和cml文件中的css顺序
sortStyleModule(extractedChunk);
// sortStyleModule(extractedChunk);
cmlHelper.sortChunk(extractedChunk, allFileSort);
var source = _this3.renderExtractedChunk(extractedChunk);
var getPath = function getPath(format) {
......@@ -321,4 +333,5 @@ function sortStyleModule(extractedChunk) {
}
extractedChunk._modules = new Set(modules);
}
\ No newline at end of file
}
{
"name": "cml-extract-css-webpack-plugin",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"author": "Chameleon-Team",
"license": "Apache",
"dependencies": {
......
const {getAllFileSort} = require('../dist/helper');
const map = {
'a': ['b','c','d'],
'b': ['a','e','f']
}
let result = getAllFileSort(map);
// [ 'e', 'f', 'b', 'c', 'd', 'a' ]
console.log(result);
\ No newline at end of file
{
"name": "cml-htmllint",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "An chameleon template linter.",
"keywords": [
"html",
......
{
"name": "cml-interface-parser",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "A tool that can parse interface file and return all properties and methods it has.",
"main": "index.js",
"scripts": {
......@@ -13,7 +13,7 @@
"dependencies": {
"@babel/parser": "^7.1.3",
"@babel/traverse": "^7.2.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.3",
"commander": "^2.19.0"
},
"devDependencies": {
......
{
"name": "cml-js-parser",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "A tool used to get variable names and methods that can be used in templates.",
"main": "index.js",
"scripts": {
......@@ -14,7 +14,7 @@
"@babel/parser": "^7.2.2",
"@babel/traverse": "^7.2.2",
"bulk-require": "^1.0.1",
"chameleon-tool-utils": "0.3.0-alpha.2"
"chameleon-tool-utils": "0.3.0-alpha.3"
},
"devDependencies": {
"chai": "^4.2.0",
......
{
"name": "cml-vue-loader",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"dependencies": {
"consolidate": "^0.14.0",
"hash-sum": "^1.0.2",
......
{
"name": "easy-chameleon",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
......@@ -287,9 +287,9 @@
}
},
"babel-plugin-chameleon-import": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/babel-plugin-chameleon-import/-/babel-plugin-chameleon-import-0.3.0-alpha.2.tgz",
"integrity": "sha512-KPvW5z3cnS+T5skDvef6uUA2665PKW7XSsDXb0hlqUO/PNOJfmdSLkiuiRx4p8MIpNEcr6YGOUe1x67mbKk/TQ==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/babel-plugin-chameleon-import/-/babel-plugin-chameleon-import-0.3.0-alpha.3.tgz",
"integrity": "sha512-rDyACAmd2YyqtU0w3+5LoENAbEScjtPMNhwtwsY2u+kTYbxh9FqMNxuETjlEU/vaUfVnhIuLQt8hcuynMunRxA==",
"requires": {
"@babel/helper-module-imports": "7.0.0",
"@babel/runtime": "7.2.0"
......@@ -547,9 +547,9 @@
}
},
"chameleon-api": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/chameleon-api/-/chameleon-api-0.4.0.tgz",
"integrity": "sha512-21Qc7wSE62uyMsWaK/g1HFdAkobYuusufeojfptt56y4v4epu1O6LKLMsdCV2Gi6x0uIe1gYskvCkxmPdh2Bvw==",
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/chameleon-api/-/chameleon-api-0.4.3.tgz",
"integrity": "sha512-byqC9UZAlAdVT70Pl5szDRvmLW4T13Gexc0/sZiZleElmpcgkVf78ruT7T7u4ISmuTa5G3oWi680jZevfBk0pA==",
"requires": {
"chameleon-bridge": "0.1.0",
"child_process": "1.0.2",
......@@ -565,14 +565,14 @@
}
},
"chameleon-bridge": {
"version": "0.1.1-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-bridge/-/chameleon-bridge-0.1.1-alpha.2.tgz",
"integrity": "sha512-5IFZPamHYErbMYPD/H+RT5GAmxDqDZ0YlkBAbDGIDm82WFEFlpp7MnDclb1ZjJ2/txz3WmUOQQq/ZvOrVqACJg=="
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/chameleon-bridge/-/chameleon-bridge-0.1.2.tgz",
"integrity": "sha512-Nrah3QBWzqXw5C6oSiD/mM2vVZTaRKE58Y1d/iasQa/7vNKNGLhvc/r8FJS6k7kBAgMSJJFLuUd475x2/x5Fbg=="
},
"chameleon-css-loader": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-css-loader/-/chameleon-css-loader-0.3.0-alpha.2.tgz",
"integrity": "sha512-vxyb0ztZunN8sW5+t/v8nIyd6W3vQ7QfExBn9tbH43RfNbBoQQxFkN3DdfDBejT09Hvmf4HAOXN9x74Xb4J9mg==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-css-loader/-/chameleon-css-loader-0.3.0-alpha.3.tgz",
"integrity": "sha512-37SvjbcbCfUGgPah7i7wwyOKezfriBNUKh4VZve1aALXneyh1xRYO5lmm+1FthBu1mTE1MAlE21XxvZ0WpP+6g==",
"requires": {
"autoprefixer": "9.4.5",
"hash-sum": "1.0.2",
......@@ -583,16 +583,16 @@
}
},
"chameleon-loader": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-loader/-/chameleon-loader-0.3.0-alpha.2.tgz",
"integrity": "sha512-Mc9Cz1U6FzdtsbvXQUFZRb2ZpuM/Lio+4KasxAXnI45cQNACzZwN0tc36WCzO27eLOhGf42DF5EwiaYdVFqAfw==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-loader/-/chameleon-loader-0.3.0-alpha.3.tgz",
"integrity": "sha512-9eeYr3OzJYbkQUWtIw3/vk5v9fHUhxIz0Meoo6ufJv7s9RDbpuKlHtkcWEn/rljL8ovI5hjqZCgluTvOP7YlxA==",
"requires": {
"@babel/parser": "7.1.2",
"@babel/types": "7.4.0",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0",
"chameleon-template-parse": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-template-parse": "0.3.0-alpha.3",
"chameleon-tool-utils": "0.3.0-alpha.3",
"consolidate": "0.14.0",
"de-indent": "1.0.2",
"hash-sum": "1.0.2",
......@@ -602,7 +602,7 @@
"loader-utils": "1.1.0",
"lru-cache": "4.1.1",
"resolve": "1.4.0",
"runtime-check": "0.3.0-alpha.2",
"runtime-check": "0.3.0-alpha.3",
"source-map": "0.6.1",
"vue-style-loader": "4.0.1",
"xmldom": "0.1.27"
......@@ -637,21 +637,38 @@
"emojis-list": "2.1.0",
"json5": "0.5.1"
}
},
"runtime-check": {
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/runtime-check/-/runtime-check-0.3.0-alpha.3.tgz",
"integrity": "sha512-QHgheGQK2tpaYWZ20hbcW/V9HTeXrvKFwnR+aEG3z3KW+JG8790jtC9whvTOv4lt4G3uw0pzHyrnwDZRZwQ+WQ==",
"requires": {
"@babel/parser": "7.1.0",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0"
},
"dependencies": {
"@babel/parser": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.0.tgz",
"integrity": "sha512-SmjnXCuPAlai75AFtzv+KCBcJ3sDDWbIn+WytKw1k+wAtEy6phqI2RqKh/zAnw53i1NR8su3Ep/UoqaKcimuLg=="
}
}
}
}
},
"chameleon-miniapp-target": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-miniapp-target/-/chameleon-miniapp-target-0.3.0-alpha.2.tgz",
"integrity": "sha512-8aAm9TP1fNfgXvkdFtpn7+BwiMkrvwsm0NNMh4KFvxSP4/MXvWq2UHWrqT3eGN3vZW7CGEil5GLZsvyq1e+qRQ==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-miniapp-target/-/chameleon-miniapp-target-0.3.0-alpha.3.tgz",
"integrity": "sha512-3cTO/zO5JfGR9Ou8aOQpcnHiJZqvRY1w/57w2SXIqqvaicaAbH7DCRYDsSgyGkqYuQSTqrBiSbYaiFTpvvesxA==",
"requires": {
"chameleon-tool-utils": "0.3.0-alpha.2"
"chameleon-tool-utils": "0.3.0-alpha.3"
}
},
"chameleon-mixins": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-mixins/-/chameleon-mixins-0.3.0-alpha.2.tgz",
"integrity": "sha512-ib8Q7kRfC+wIJBZASRbixhcl5/FSWGw/XKowv8Emv8WNXprWxaDpjDnBzl3C+GuAsyXReqpwG/p+UE3EFx10Bw=="
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-mixins/-/chameleon-mixins-0.3.0-alpha.3.tgz",
"integrity": "sha512-86qVIA0thh+GT7UzYxi0evHcpOcUEbPTItrDPCxj4rtwFJbwBq+vI182YZaD8ih/NyIZPlrNhd3Wueerw9b2dg=="
},
"chameleon-runtime": {
"version": "0.1.4",
......@@ -671,9 +688,9 @@
}
},
"chameleon-template-parse": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-template-parse/-/chameleon-template-parse-0.3.0-alpha.2.tgz",
"integrity": "sha512-ixQM4bm90eqtn8Tcy2Kgwv9JsaT3zVud4LyI/C1mHLA7Zn3TO87m1eCmhFvea2jIIdYnLMe84UXtjOuNJWGW0w==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-template-parse/-/chameleon-template-parse-0.3.0-alpha.3.tgz",
"integrity": "sha512-okcDN3njqkv0iHMznnKxecp/c92M83WLX54gGRSuW98NBQ/IqKEDIMFAmRcWCeOX7guLF66Dh4/tWCHLJDeZ4g==",
"requires": {
"@babel/generator": "7.2.2",
"@babel/parser": "7.4.3",
......@@ -693,14 +710,14 @@
}
},
"chameleon-templates": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-templates/-/chameleon-templates-0.3.0-alpha.2.tgz",
"integrity": "sha512-2IrGiFOExvOkEmdpuI3yUa1T9DlzYLGEXqFTesus0vgL/O6HWpamJmvyMfcuEwBkTD+65mcaZc8dK4zkscBjuA=="
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-templates/-/chameleon-templates-0.3.0-alpha.3.tgz",
"integrity": "sha512-Ue6+SsjdGOFQ6u194NWx3/pGMCHCe+6QunyXMFusIguvIhtejPbR8ys2UMn8WBOwbEq6rWKmn6+6lQEt3f37IQ=="
},
"chameleon-tool-utils": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-tool-utils/-/chameleon-tool-utils-0.3.0-alpha.2.tgz",
"integrity": "sha512-3LBwFZx/DJ6uFVxeGEmJoQui8OW2i75oKceCmqwgAjqHo8BWydp7w/HvUosxpkJPMcq3CqI2nwUyEylyd8T5mg==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-tool-utils/-/chameleon-tool-utils-0.3.0-alpha.3.tgz",
"integrity": "sha512-PtSMWqO0LCZVSyABKLwRqj1TLlkhvHXNQb4YNGcRpQYH6muUhLvvNXy0jcJ3ekZSTwpRo56u3vDFB+LOtcLmFA==",
"requires": {
"chalk": "2.4.2",
"colors": "1.3.3",
......@@ -729,9 +746,9 @@
}
},
"chameleon-url-loader": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-url-loader/-/chameleon-url-loader-0.3.0-alpha.2.tgz",
"integrity": "sha512-n67mHLQIQPYZaTw3j4Rt4hhiF7PUQQCnWHPJowOnvha2oPUev7uamVLH/uteErqzK8JzR8DtywwwiiGjRNSGQg==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-url-loader/-/chameleon-url-loader-0.3.0-alpha.3.tgz",
"integrity": "sha512-Y/vf5nN4qfBZR7xr0oGqiGRBpr7a6Adh1eR2xM+R/GLbNsDHYFQYsJdz+RpFnbay0tI4U5/AM+Um+g19DlHgRA==",
"requires": {
"@webpack-contrib/schema-utils": "1.0.0-beta.0",
"loader-utils": "1.2.3",
......@@ -739,9 +756,9 @@
}
},
"chameleon-vue-precompiler": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-vue-precompiler/-/chameleon-vue-precompiler-0.3.0-alpha.2.tgz",
"integrity": "sha512-AcdlwqhXrTI++rO3wtJZL2crfmRzpw1hBF0L+15PMTXusdFbg63aNnbrtB2Al8A1ybDShVGs3HLdr9462ps+zw==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-vue-precompiler/-/chameleon-vue-precompiler-0.3.0-alpha.3.tgz",
"integrity": "sha512-LTn31+sy1hdqiPJQ+B934CEn3YJD8Q5GxXp+I1bvz2ecy3Vn5SVgeDanrjNNS6PhSWpG6jbz5kFpGZ+6tnOSYw==",
"requires": {
"esprima": "4.0.1"
},
......@@ -754,9 +771,9 @@
}
},
"chameleon-weex-vue-loader": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/chameleon-weex-vue-loader/-/chameleon-weex-vue-loader-0.3.0-alpha.2.tgz",
"integrity": "sha512-maNGjvoosyuXI9puM5jh8kdVFLduDYiez8vhrv5qMz+nkqhcC0vnZhcyFqqRWCWqt9vtYEAQI6xLXcGt0m4/Kw==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/chameleon-weex-vue-loader/-/chameleon-weex-vue-loader-0.3.0-alpha.3.tgz",
"integrity": "sha512-dUD9A81ibN5A6Ck287yEp9bDSLnpTHtsST95gi0LP3+7CMwYpC9QGelElAdYVf2pmafWyFEaYjYnXITlPV8jDw==",
"requires": {
"consolidate": "0.14.0",
"hash-sum": "1.0.2",
......@@ -951,9 +968,9 @@
}
},
"cml-ui": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/cml-ui/-/cml-ui-0.1.5.tgz",
"integrity": "sha512-TEMNoQF4WtRl8f3Ji8GTAbYzFKekx33oIPoNG09NJVLUn4szvib3Mk2fCmOhi2lWcOLSwtWyQ0oDcUV5yeyNvw=="
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/cml-ui/-/cml-ui-0.1.7.tgz",
"integrity": "sha512-oxzAHXzi4D2nxnoEk0XylAbuBwSDZhR/G43UmjePOfGnDJBNhgIMB3UnDGjIpEmJVS5S0t1pEGPNCjFrzJ+LnQ=="
},
"co": {
"version": "4.6.0",
......@@ -2483,16 +2500,16 @@
}
},
"interface-loader": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/interface-loader/-/interface-loader-0.3.0-alpha.2.tgz",
"integrity": "sha512-sY2I+arjLzJBV47H9kcysfPAUywdNNe66aaoUfjjmpqK22rd9ccW3UsA+ZckgbybtqCawn1/oHqnC/e3X/4+0w==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/interface-loader/-/interface-loader-0.3.0-alpha.3.tgz",
"integrity": "sha512-ABFe++DgP9mfaeYOqT3MidGDM5EBMy+pSRoZ8HSi0LdedKJnV2eYy3YckrMkH2n2zloUmcuADLoUwsRXlyxdMQ==",
"requires": {
"@babel/parser": "7.1.0",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.3",
"loader-utils": "1.1.0",
"runtime-check": "0.3.0-alpha.2"
"runtime-check": "0.3.0-alpha.3"
},
"dependencies": {
"@babel/parser": {
......@@ -2519,6 +2536,16 @@
"emojis-list": "2.1.0",
"json5": "0.5.1"
}
},
"runtime-check": {
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/runtime-check/-/runtime-check-0.3.0-alpha.3.tgz",
"integrity": "sha512-QHgheGQK2tpaYWZ20hbcW/V9HTeXrvKFwnR+aEG3z3KW+JG8790jtC9whvTOv4lt4G3uw0pzHyrnwDZRZwQ+WQ==",
"requires": {
"@babel/parser": "7.1.0",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0"
}
}
}
},
......@@ -3837,23 +3864,6 @@
"is-promise": "2.1.0"
}
},
"runtime-check": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/runtime-check/-/runtime-check-0.3.0-alpha.2.tgz",
"integrity": "sha512-r8X33HLXyohC+g2NL+KCiVyrd6n4/8kx74lcRIRsUCF1dlBERHadLmD5k816hjEzXqt7FsnK7S0KP8rJuOLEww==",
"requires": {
"@babel/parser": "7.1.0",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0"
},
"dependencies": {
"@babel/parser": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.0.tgz",
"integrity": "sha512-SmjnXCuPAlai75AFtzv+KCBcJ3sDDWbIn+WytKw1k+wAtEy6phqI2RqKh/zAnw53i1NR8su3Ep/UoqaKcimuLg=="
}
}
},
"rxjs": {
"version": "6.3.3",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz",
......@@ -4739,9 +4749,9 @@
"integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="
},
"webpack-check-plugin": {
"version": "0.3.0-alpha.2",
"resolved": "https://registry.npmjs.org/webpack-check-plugin/-/webpack-check-plugin-0.3.0-alpha.2.tgz",
"integrity": "sha512-NMW2Iv3Y0awgfnR0d4VhTHCYm+EtXiLqx13rGIEJL3Irkpcqf0k8DMV/zCcIm57imJes9/0To9JfHqah/T8yxg==",
"version": "0.3.0-alpha.3",
"resolved": "https://registry.npmjs.org/webpack-check-plugin/-/webpack-check-plugin-0.3.0-alpha.3.tgz",
"integrity": "sha512-8YZ3slskXKLcNOtjUiCQnyJbUMLDEhKuAWoageXx/nPiw994syZq2Cs0Bl+tnMOKDFWdPg3SqP5vXRm27XDXow==",
"requires": {
"@babel/parser": "7.1.0",
"babel-generator": "6.26.1",
......
{
"name": "easy-chameleon",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "easy-chameleon",
"main": "index.js",
"bin": {
......@@ -21,28 +21,28 @@
"mvvm"
],
"dependencies": {
"babel-plugin-chameleon-import": "0.3.0-alpha.2",
"chameleon-api": "^0.4.0",
"chameleon-bridge": "^0.1.1-alpha.2",
"chameleon-css-loader": "0.3.0-alpha.2",
"chameleon-loader": "0.3.0-alpha.2",
"chameleon-miniapp-target": "0.3.0-alpha.2",
"chameleon-mixins": "0.3.0-alpha.2",
"babel-plugin-chameleon-import": "^0.3.0-alpha.3",
"chameleon-api": "^0.4.3",
"chameleon-bridge": "^0.1.2",
"chameleon-css-loader": "^0.3.0-alpha.3",
"chameleon-loader": "^0.3.0-alpha.3",
"chameleon-miniapp-target": "^0.3.0-alpha.3",
"chameleon-mixins": "^0.3.0-alpha.3",
"chameleon-runtime": "^0.1.4",
"chameleon-store": "0.0.3",
"chameleon-template-parse": "0.3.0-alpha.2",
"chameleon-templates": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-url-loader": "0.3.0-alpha.2",
"chameleon-vue-precompiler": "0.3.0-alpha.2",
"chameleon-weex-vue-loader": "0.3.0-alpha.2",
"chameleon-template-parse": "^0.3.0-alpha.3",
"chameleon-templates": "^0.3.0-alpha.3",
"chameleon-tool-utils": "^0.3.0-alpha.3",
"chameleon-url-loader": "^0.3.0-alpha.3",
"chameleon-vue-precompiler": "^0.3.0-alpha.3",
"chameleon-weex-vue-loader": "^0.3.0-alpha.3",
"clean-webpack-plugin": "0.1.19",
"cml-ui": "^0.1.5",
"cml-ui": "^0.1.7",
"extract-text-webpack-plugin": "3.0.2",
"interface-loader": "0.3.0-alpha.2",
"interface-loader": "^0.3.0-alpha.3",
"ora": "3.0.0",
"webpack-check-plugin": "0.3.0-alpha.2",
"webpack-liveload-middleware": "0.3.0-alpha.2",
"webpack-check-plugin": "^0.3.0-alpha.3",
"webpack-liveload-middleware": "0.3.0-alpha.3",
"webpack-merge": "^4.1.3"
},
"devDependencies": {
......
{
"name": "interface-loader",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "",
"main": "src/index.js",
"scripts": {
......@@ -13,10 +13,10 @@
"@babel/parser": "7.1.0",
"babel-generator": "6.26.1",
"babel-traverse": "6.26.0",
"chameleon-tool-utils": "0.3.0-alpha.2",
"chameleon-tool-utils": "0.3.0-alpha.3",
"loader-utils": "1.1.0",
"mvvm-interface-parser": "0.3.0-alpha.2",
"runtime-check": "0.3.0-alpha.2"
"runtime-check": "0.3.0-alpha.3"
},
"author": "Chameleon-Team",
"license": "Apache",
......
{
"name": "runtime-check",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "",
"main": "index.js",
"scripts": {
......
{
"name": "chameleon-url-loader",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "A loader for webpack which transforms files into base64 URIs",
"license": "Apache",
"main": "dist/cjs.js",
......
{
"name": "webpack-check-plugin",
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"description": "",
"main": "index.js",
"scripts": {
......
......@@ -23,6 +23,6 @@
"istanbul": "^0.4.5",
"mocha": "^5.2.0"
},
"version": "0.3.0-alpha.2",
"version": "0.3.0-alpha.3",
"gitHead": "5ddcde4330774710f7646559446e008f7785ce00"
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册