diff --git a/packages/editor-framework/README.md b/packages/editor-framework/README.md index eb99c606a..8a6fb13f0 100644 --- a/packages/editor-framework/README.md +++ b/packages/editor-framework/README.md @@ -1 +1 @@ -编辑器框架 +## todo diff --git a/packages/editor-framework/package.json b/packages/editor-framework/package.json index 8866b4a77..ebcbe65db 100644 --- a/packages/editor-framework/package.json +++ b/packages/editor-framework/package.json @@ -1,7 +1,7 @@ { - "name": "editor-framework", + "name": "@ali/lowcode-engine-editor", "version": "0.0.1", - "description": "alibaba lowcode editor framework", + "description": "alibaba lowcode editor core", "files": [ "demo/", "es/", diff --git a/packages/editor-skeleton/.editorconfig b/packages/editor-skeleton/.editorconfig new file mode 100644 index 000000000..5760be583 --- /dev/null +++ b/packages/editor-skeleton/.editorconfig @@ -0,0 +1,12 @@ +# http://editorconfig.org +root = true + +[*] +indent_style = space +indent_size = 2 +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false diff --git a/packages/editor-skeleton/.eslintignore b/packages/editor-skeleton/.eslintignore new file mode 100644 index 000000000..3b437e614 --- /dev/null +++ b/packages/editor-skeleton/.eslintignore @@ -0,0 +1,11 @@ +# 忽略目录 +build/ +tests/ +demo/ + +# node 覆盖率文件 +coverage/ + +# 忽略文件 +**/*-min.js +**/*.min.js diff --git a/packages/editor-skeleton/.eslintrc.js b/packages/editor-skeleton/.eslintrc.js new file mode 100644 index 000000000..18ae6baa7 --- /dev/null +++ b/packages/editor-skeleton/.eslintrc.js @@ -0,0 +1,7 @@ +const { eslint, deepmerge } = require('@ice/spec'); + +module.exports = deepmerge(eslint, { + rules: { + "global-require": 0, + }, +}); diff --git a/packages/editor-skeleton/.gitignore b/packages/editor-skeleton/.gitignore new file mode 100644 index 000000000..c590da5b0 --- /dev/null +++ b/packages/editor-skeleton/.gitignore @@ -0,0 +1,20 @@ +# See https://help.github.com/ignore-files/ for more about ignoring files. + +# dependencies +/node_modules + +# production +/build +/dist + +# misc +.idea/ +.happypack +.DS_Store + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# ignore d.ts auto generated by css-modules-typescript-loader +*.module.scss.d.ts \ No newline at end of file diff --git a/packages/editor-skeleton/.stylelintignore b/packages/editor-skeleton/.stylelintignore new file mode 100644 index 000000000..82af6f60d --- /dev/null +++ b/packages/editor-skeleton/.stylelintignore @@ -0,0 +1,7 @@ +# 忽略目录 +build/ +tests/ +demo/ + +# node 覆盖率文件 +coverage/ diff --git a/packages/editor-skeleton/.stylelintrc.js b/packages/editor-skeleton/.stylelintrc.js new file mode 100644 index 000000000..eeb605b33 --- /dev/null +++ b/packages/editor-skeleton/.stylelintrc.js @@ -0,0 +1,3 @@ +const { stylelint } = require('@ice/spec'); + +module.exports = stylelint; diff --git a/packages/editor-skeleton/README.md b/packages/editor-skeleton/README.md new file mode 100644 index 000000000..8a6fb13f0 --- /dev/null +++ b/packages/editor-skeleton/README.md @@ -0,0 +1 @@ +## todo diff --git a/packages/editor-skeleton/abc.json b/packages/editor-skeleton/abc.json new file mode 100644 index 000000000..dce1f92ed --- /dev/null +++ b/packages/editor-skeleton/abc.json @@ -0,0 +1,4 @@ +{ + "type": "ice-scripts", + "builder": "@ali/builder-ice-scripts" +} diff --git a/packages/editor-skeleton/ice.config.js b/packages/editor-skeleton/ice.config.js new file mode 100644 index 000000000..f905f88e8 --- /dev/null +++ b/packages/editor-skeleton/ice.config.js @@ -0,0 +1,30 @@ +const path = require('path'); + +module.exports = { + entry: 'src/index.tsx', + publicPath: './', + alias: { + '@': path.resolve(__dirname, './src'), + }, + plugins: [ + ['ice-plugin-fusion', { + themePackage: '@icedesign/theme', + }], + ['ice-plugin-moment-locales', { + locales: ['zh-cn'], + }], + ], + chainWebpack: (config) => { + // 修改对应 css module的 loader,默认修改 scss-module 同理可以修改 css-module 和 less-module 规则 + ['scss-module'].forEach((rule) => { + if (config.module.rules.get(rule)) { + config.module.rule(rule).use('ts-css-module-loader') + .loader(require.resolve('css-modules-typescript-loader')) + .options({ modules: true, sass: true }); + // 指定应用loader的位置 + config.module.rule(rule).use('ts-css-module-loader').before('css-loader'); + } + }); + }, +}; + diff --git a/packages/editor-skeleton/jsconfig.json b/packages/editor-skeleton/jsconfig.json new file mode 100644 index 000000000..9e0f3c03d --- /dev/null +++ b/packages/editor-skeleton/jsconfig.json @@ -0,0 +1,9 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "jsx": "react", + "paths": { + "@/*": ["./src/*"] + } + } +} diff --git a/packages/editor-skeleton/package.json b/packages/editor-skeleton/package.json new file mode 100644 index 000000000..7ada377d0 --- /dev/null +++ b/packages/editor-skeleton/package.json @@ -0,0 +1,47 @@ +{ + "name": "@ali/lowcode-engine-skeleton", + "version": "0.0.1", + "description": "alibaba lowcode editor skeleton", + "author": "xiayang.xy", + "dependencies": { + "@alifd/next": "^1.x", + "@icedesign/theme": "^1.x", + "@types/react": "^16.8.3", + "@types/react-dom": "^16.8.2", + "moment": "^2.23.0", + "prop-types": "^15.5.8", + "react": "^16.4.1", + "react-dom": "^16.4.1", + "react-router-dom": "^5.0.1" + }, + "devDependencies": { + "@ice/spec": "^0.1.1", + "css-modules-typescript-loader": "^2.0.4", + "eslint": "^6.0.1", + "ice-plugin-fusion": "^0.1.4", + "ice-plugin-moment-locales": "^0.1.0", + "ice-scripts": "^2.0.0", + "stylelint": "^10.1.0" + }, + "scripts": { + "start": "ice-scripts dev", + "build": "ice-scripts build", + "lint": "npm run eslint && npm run stylelint", + "eslint": "eslint --cache --ext .js,.jsx ./", + "stylelint": "stylelint ./**/*.scss" + }, + "engines": { + "node": ">=8.0.0" + }, + "iceworks": { + "type": "react", + "adapter": "adapter-react-v3" + }, + "ideMode": { + "name": "ice-react" + }, + "repository": { + "type": "git", + "url": "https://github.com/ice-lab/react-materials/tree/master/scaffolds/ice-ts" + } +} diff --git a/packages/editor-skeleton/public/favicon.png b/packages/editor-skeleton/public/favicon.png new file mode 100644 index 000000000..a2605c57e Binary files /dev/null and b/packages/editor-skeleton/public/favicon.png differ diff --git a/packages/editor-skeleton/public/index.html b/packages/editor-skeleton/public/index.html new file mode 100644 index 000000000..5c0692966 --- /dev/null +++ b/packages/editor-skeleton/public/index.html @@ -0,0 +1,13 @@ + + +
+ + + +