diff --git a/packages/demo/src/editor/config.js b/packages/demo/src/editor/config.ts similarity index 100% rename from packages/demo/src/editor/config.js rename to packages/demo/src/editor/config.ts diff --git a/packages/demo/src/vision/loader.js b/packages/demo/src/vision/loader.ts similarity index 100% rename from packages/demo/src/vision/loader.js rename to packages/demo/src/vision/loader.ts diff --git a/packages/demo/src/vision/upgrade-assets.js b/packages/demo/src/vision/upgrade-assets.ts similarity index 100% rename from packages/demo/src/vision/upgrade-assets.js rename to packages/demo/src/vision/upgrade-assets.ts diff --git a/packages/designer/src/designer/setting/utils.js b/packages/designer/src/designer/setting/utils.ts similarity index 100% rename from packages/designer/src/designer/setting/utils.js rename to packages/designer/src/designer/setting/utils.ts diff --git a/packages/editor-setters/src/expression-setter/locale/snippets.js b/packages/editor-setters/src/expression-setter/locale/snippets.ts similarity index 100% rename from packages/editor-setters/src/expression-setter/locale/snippets.js rename to packages/editor-setters/src/expression-setter/locale/snippets.ts diff --git a/packages/editor-setters/src/expression-setter/locale/utils.js b/packages/editor-setters/src/expression-setter/locale/utils.ts similarity index 100% rename from packages/editor-setters/src/expression-setter/locale/utils.js rename to packages/editor-setters/src/expression-setter/locale/utils.ts diff --git a/packages/editor-setters/src/expression-setter/locale/zh-CN.js b/packages/editor-setters/src/expression-setter/locale/zh-CN.ts similarity index 100% rename from packages/editor-setters/src/expression-setter/locale/zh-CN.js rename to packages/editor-setters/src/expression-setter/locale/zh-CN.ts diff --git a/packages/editor-setters/src/json-setter/locale/snippets.js b/packages/editor-setters/src/json-setter/locale/snippets.ts similarity index 100% rename from packages/editor-setters/src/json-setter/locale/snippets.js rename to packages/editor-setters/src/json-setter/locale/snippets.ts diff --git a/packages/editor-setters/src/json-setter/locale/utils.js b/packages/editor-setters/src/json-setter/locale/utils.ts similarity index 100% rename from packages/editor-setters/src/json-setter/locale/utils.js rename to packages/editor-setters/src/json-setter/locale/utils.ts diff --git a/packages/editor-setters/src/json-setter/locale/zh-CN.js b/packages/editor-setters/src/json-setter/locale/zh-CN.ts similarity index 100% rename from packages/editor-setters/src/json-setter/locale/zh-CN.js rename to packages/editor-setters/src/json-setter/locale/zh-CN.ts diff --git a/packages/editor-setters/src/locale/snippets.js b/packages/editor-setters/src/locale/snippets.js deleted file mode 100644 index 7c8484c4f..000000000 --- a/packages/editor-setters/src/locale/snippets.js +++ /dev/null @@ -1,242 +0,0 @@ -export default [ - { - label: 'constants', - kind: 'Class', - insertText: 'constants', - detail: '应用全局常量', - documentation: '应用范围定义的通用常量' - }, - { - label: 'utils', - kind: 'Class', - insertText: 'utils', - detail: '应用全局公共函数', - documentation: '应用范围扩展的公共函数' - }, - { - label: 'state', - kind: 'Enum', - insertText: 'state', - detail: '当前所在容器组件内部状态', - documentation: 'React Class内部状态state' - }, - { - label: 'setState', - kind: 'Function', - insertText: 'setState({\n\t$0\n})', - insertTextRules: 'InsertAsSnippet', - detail: '设置当前所在容器组件的state数据', - documentation: '原生React方法,会自动更新组件视图' - }, - { - label: 'reloadDataSource', - kind: 'Function', - insertText: 'reloadDataSource(${1:${2:namespace}, ${3:false}, ${4:callback}})', - insertTextRules: 'InsertAsSnippet', - detail: '刷新当前所在的容器组件', - documentation: '触发当前所在的容器组件,重新发送异步请求,并用最新数据更新视图' - }, - { - label: 'location', - kind: 'Class', - insertText: 'location', - detail: '路由解析对象' - }, - { - label: 'location.query', - kind: 'Value', - insertText: 'location.query.${1:xxxx}', - insertTextRules: 'InsertAsSnippet', - detail: '从路由解析对象中获取参数信息' - }, - { - label: 'history', - kind: 'Class', - insertText: 'history', - detail: '路由历史对象' - }, - { - label: 'React', - kind: 'Keyword', - insertText: 'React', - detail: 'React对象' - }, - { - label: 'ReactDOM', - kind: 'Keyword', - insertText: 'ReactDOM', - detail: 'ReactDom对象' - }, - { - label: 'ReactDOM.findDOMNode', - kind: 'Function', - insertText: 'ReactDOM.findDOMNode(${1:this.refs.xxxx})', - insertTextRules: 'InsertAsSnippet', - detail: 'ReactDom查找真实dom node' - }, - { - label: 'Dialog.alert', - kind: 'Method', - insertText: [ - 'Dialog.alert({', - "\tcontent: '${1:Alert content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: 'alert弹框 By Fusion' - }, - { - label: 'Dialog.confirm', - kind: 'Method', - insertText: [ - 'Dialog.confirm({', - "\tcontent: '${1:Confirm content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t},', - '\tonCancel: () => {', - '\t\t$4', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: '确认弹出框 By Fusion' - }, - { - label: 'Message.success', - kind: 'Method', - insertText: 'Message.success(${1:content})', - insertTextRules: 'InsertAsSnippet', - detail: '成功反馈提示 By Fusion' - }, - { - label: 'Message.error', - kind: 'Method', - insertText: 'Message.error(${1:content})', - insertTextRules: 'InsertAsSnippet', - detail: '错误反馈提示 By Fusion' - }, - { - label: 'Message.help', - kind: 'Method', - insertText: 'Message.help(${1:content})', - insertTextRules: 'InsertAsSnippet', - detail: '帮助反馈提示 By Fusion' - }, - { - label: 'Message.loading', - kind: 'Method', - insertText: 'Message.loading(${1:content})', - insertTextRules: 'InsertAsSnippet', - detail: 'loading反馈提示 By Fusion' - }, - { - label: 'Message.notice', - kind: 'Method', - insertText: 'Message.notice(${1:content})', - insertTextRules: 'InsertAsSnippet', - detail: '注意反馈提示 By Fusion' - }, - { - label: 'Message.waining', - kind: 'Method', - insertText: 'Message.waining(${1:content})', - insertTextRules: 'InsertAsSnippet', - detail: '警告反馈提示 By Fusion' - }, - { - label: 'Modal.confirm', - kind: 'Method', - insertText: [ - 'Modal.confirm({', - "\tcontent: '${1:Confirm content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t},', - '\tonCancel: () => {', - '\t\t$4', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: '确认弹出框 By Antd' - }, - { - label: 'Modal.info', - kind: 'Method', - insertText: [ - 'Modal.info({', - "\tcontent: '${1:Info content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t},', - '\tonCancel: () => {', - '\t\t$4', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: '信息弹出框 By Antd' - }, - { - label: 'Modal.success', - kind: 'Method', - insertText: [ - 'Modal.success({', - "\tcontent: '${1:Success content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t},', - '\tonCancel: () => {', - '\t\t$4', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: '成功弹出框 By Antd' - }, - { - label: 'Modal.error', - kind: 'Method', - insertText: [ - 'Modal.error({', - "\tcontent: '${1:Error content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t},', - '\tonCancel: () => {', - '\t\t$4', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: '错误弹出框 By Antd' - }, - { - label: 'Modal.warning', - kind: 'Method', - insertText: [ - 'Modal.warning({', - "\tcontent: '${1:Warning content}',", - "\ttitle: '${2:Title}',", - '\tonOk: () => {', - '\t\t$3', - '\t},', - '\tonCancel: () => {', - '\t\t$4', - '\t}', - '})' - ].join('\n'), - insertTextRules: 'InsertAsSnippet', - detail: '警告弹出框 By Antd' - } -]; \ No newline at end of file diff --git a/packages/editor-setters/src/locale/snippets copy.js b/packages/editor-setters/src/locale/snippets.ts similarity index 100% rename from packages/editor-setters/src/locale/snippets copy.js rename to packages/editor-setters/src/locale/snippets.ts diff --git a/packages/editor-setters/src/locale/utils copy.js b/packages/editor-setters/src/locale/utils.ts similarity index 100% rename from packages/editor-setters/src/locale/utils copy.js rename to packages/editor-setters/src/locale/utils.ts diff --git a/packages/editor-setters/src/locale/zh-CN copy.js b/packages/editor-setters/src/locale/zh-CN.ts similarity index 100% rename from packages/editor-setters/src/locale/zh-CN copy.js rename to packages/editor-setters/src/locale/zh-CN.ts diff --git a/packages/editor-setters/src/mixed-setter/locale/utils.js b/packages/editor-setters/src/mixed-setter/locale/utils.js deleted file mode 100644 index a02a8dd06..000000000 --- a/packages/editor-setters/src/mixed-setter/locale/utils.js +++ /dev/null @@ -1,21 +0,0 @@ -import IntlMessageFormat from 'intl-messageformat'; - -export const isJSExpression = (obj = '') => { - if(obj && typeof obj === 'object' && obj.type === 'JSExpression') { - return true; - } - return false; -} - -/** - * 用于构造国际化字符串处理函数 - * @param {*} locale 国际化标识,例如 zh-CN、en-US - * @param {*} messages 国际化语言包 - */ -export const generateI18n = (locale = 'zh-CN', messages = {}) => { - return function (key, values = {}) { - if (!messages || !messages[key]) return ''; - const formater = new IntlMessageFormat(messages[key], locale); - return formater.format(values); - }; -} diff --git a/packages/editor-setters/src/locale/utils.js b/packages/editor-setters/src/mixed-setter/locale/utils.ts similarity index 100% rename from packages/editor-setters/src/locale/utils.js rename to packages/editor-setters/src/mixed-setter/locale/utils.ts diff --git a/packages/editor-setters/src/mixed-setter/locale/zh-CN.js b/packages/editor-setters/src/mixed-setter/locale/zh-CN.js deleted file mode 100644 index 951596009..000000000 --- a/packages/editor-setters/src/mixed-setter/locale/zh-CN.js +++ /dev/null @@ -1,36 +0,0 @@ -export default { - // function - setting: '点击设置', - edit: '编辑', - submitConfirm: '确认提交 cmd+s', - close: '关闭 esc', - fullScreen: '全屏', - cancelFullScreen: '取消全屏', - jsonIllegal: '非json格式', - functionIllegal: '非function格式', - objectIllegal: '非object格式', - circularRef: '对象中出现循环引用的对象', - formatError: '格式错误', - saved: '已保存', - // expression - valueIllegal: '值类型为对象类型,与当前组件属性设置的控件类型不匹配,请在属性“代码编辑模式”下进行编辑', - jsExpression: '请输入JS表达式', - // Mixin - input: '字符串Input', - textarea: '多行字符串Textarea', - expression: '变量控件Expression', - monacoEditor: '编辑器MonacoEditor', - numberPicker: '数字NumberPicker', - bool: '布尔Switch', - datePicker: '日期选择DatePicker', - select: '下拉选择Select', - radio: '单项选择RadioGroup', - date: '日期选择DatePicker', - dateYear: '年选择DatePicker', - dateMonth: '月选择DatePicker', - dateRange: '日期区间选择DatePicker', - list: '数组List', - object: '对象ObjectButton', - reactNode: '节点类型ReactNode', - typeError: 'Minix组件属性Types配置错误,存在不支持类型[{type}],请检查组件属性配置', -}; \ No newline at end of file diff --git a/packages/editor-setters/src/locale/zh-CN.js b/packages/editor-setters/src/mixed-setter/locale/zh-CN.ts similarity index 100% rename from packages/editor-setters/src/locale/zh-CN.js rename to packages/editor-setters/src/mixed-setter/locale/zh-CN.ts diff --git a/packages/editor-skeleton/src/components/settings/utils.js b/packages/editor-skeleton/src/components/settings/utils.ts similarity index 100% rename from packages/editor-skeleton/src/components/settings/utils.js rename to packages/editor-skeleton/src/components/settings/utils.ts diff --git a/packages/material-parser/src/parse/js/resolver/resolveTranspiledClass.ts b/packages/material-parser/src/parse/js/resolver/resolveTranspiledClass.ts index 0357966ab..399c3ffc0 100644 --- a/packages/material-parser/src/parse/js/resolver/resolveTranspiledClass.ts +++ b/packages/material-parser/src/parse/js/resolver/resolveTranspiledClass.ts @@ -11,6 +11,7 @@ export default function resolveTranspiledClass(path: any) { visitFunctionDeclaration(arg) { classPath = new NodePath( builders.functionDeclaration( + // @ts-ignore arg.node.id || 'Default', [], builders.blockStatement([ diff --git a/packages/material-parser/src/parse/js/utils/getMethodDocumentation.js b/packages/material-parser/src/parse/js/utils/getMethodDocumentation.ts similarity index 100% rename from packages/material-parser/src/parse/js/utils/getMethodDocumentation.js rename to packages/material-parser/src/parse/js/utils/getMethodDocumentation.ts diff --git a/packages/material-parser/src/parse/js/utils/getTSType.js b/packages/material-parser/src/parse/js/utils/getTSType.ts similarity index 98% rename from packages/material-parser/src/parse/js/utils/getTSType.js rename to packages/material-parser/src/parse/js/utils/getTSType.ts index da3ac46de..f5a3b3936 100644 --- a/packages/material-parser/src/parse/js/utils/getTSType.js +++ b/packages/material-parser/src/parse/js/utils/getTSType.ts @@ -115,6 +115,7 @@ function handleTSTypeLiteral(path, typeParams) { value: getTSTypeWithRequirements(param.get('typeAnnotation'), typeParams), }); } else if (t.TSCallSignatureDeclaration.check(param.node)) { + // @ts-ignore type.signature.constructor = handleTSFunctionType(param, typeParams); } else if (t.TSIndexSignature.check(param.node)) { type.signature.properties.push({ @@ -195,12 +196,14 @@ function handleTSFunctionType(path, typeParams) { }; if (param.node.name === 'this') { + // @ts-ignore type.signature.this = arg.type; return; } if (param.node.type === 'RestElement') { arg.name = param.node.argument.name; + // @ts-ignore arg.rest = true; } @@ -288,7 +291,7 @@ function handleTSIndexedAccessType(path, typeParams) { let visitedTypes = {}; -function getTSTypeWithResolvedTypes(path, typeParams) { +function getTSTypeWithResolvedTypes(path, typeParams?) { if (t.TSTypeAnnotation.check(path.node)) { path = path.get('typeAnnotation'); } @@ -343,7 +346,7 @@ function getTSTypeWithResolvedTypes(path, typeParams) { * * If there is no match, "unknown" is returned. */ -export default function getTSType(path, typeParamMap) { +export default function getTSType(path, typeParamMap?) { // Empty visited types before an after run // Before: in case the detection threw and we rerun again // After: cleanup memory after we are done here diff --git a/packages/material-parser/src/parse/ts/index.ts b/packages/material-parser/src/parse/ts/index.ts index f266211d2..761d9bbb2 100644 --- a/packages/material-parser/src/parse/ts/index.ts +++ b/packages/material-parser/src/parse/ts/index.ts @@ -72,6 +72,7 @@ function getDocgenTypeHelper( }[] = symbolArr.map((prop) => { const propType = checker.getTypeOfSymbolAtLocation( prop, + // @ts-ignore prop.valueDeclaration || (prop.declarations && prop.declarations[0]) || {}, ); return { diff --git a/packages/material-parser/tsconfig.json b/packages/material-parser/tsconfig.json index b4d848194..22be7efab 100644 --- a/packages/material-parser/tsconfig.json +++ b/packages/material-parser/tsconfig.json @@ -4,7 +4,8 @@ "target": "es6", "module": "commonjs", "rootDir": "src", - "outDir": "lib" + "outDir": "lib", + "strict": false }, "include": ["src/**/*"], "exclude": ["schemas"] diff --git a/packages/rax-provider/package.json b/packages/rax-provider/package.json index 726dfc8c1..084c5af84 100644 --- a/packages/rax-provider/package.json +++ b/packages/rax-provider/package.json @@ -9,7 +9,8 @@ "main": "lib/index.js", "module": "es/index.js", "scripts": { - "start": "build-scripts start" + "start": "build-scripts start", + "build": "build-scripts build" }, "peerDependencies": { "prop-types": "^15.7.2", diff --git a/packages/rax-provider/src/index.js b/packages/rax-provider/src/index.ts similarity index 100% rename from packages/rax-provider/src/index.js rename to packages/rax-provider/src/index.ts diff --git a/packages/rax-provider/src/lazy-component.js b/packages/rax-provider/src/lazy-component.ts similarity index 100% rename from packages/rax-provider/src/lazy-component.js rename to packages/rax-provider/src/lazy-component.ts diff --git a/packages/rax-provider/src/provider.js b/packages/rax-provider/src/provider.ts similarity index 100% rename from packages/rax-provider/src/provider.js rename to packages/rax-provider/src/provider.ts diff --git a/packages/rax-provider/src/router.js b/packages/rax-provider/src/router.ts similarity index 100% rename from packages/rax-provider/src/router.js rename to packages/rax-provider/src/router.ts diff --git a/packages/rax-provider/tsconfig.json b/packages/rax-provider/tsconfig.json new file mode 100644 index 000000000..e1a57bf23 --- /dev/null +++ b/packages/rax-provider/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "lib": ["es2015", "dom"], + "target": "esnext", + "module": "esnext", + "moduleResolution": "node", + "strict": false, + "strictPropertyInitialization": false, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "jsx": "preserve", + "importHelpers": true, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "sourceMap": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "outDir": "lib" + }, + "exclude": ["test", "lib", "es", "node_modules"], + "include": [ + "src" + ] +} diff --git a/packages/rax-render/package.json b/packages/rax-render/package.json index 30b98e318..169bf5206 100644 --- a/packages/rax-render/package.json +++ b/packages/rax-render/package.json @@ -41,6 +41,7 @@ "debug": "^4.1.1", "events": "^3.0.0", "fetch-jsonp": "^1.1.3", + "fs-extra": "^9.0.1", "intl-messageformat": "^9.3.1", "jsonuri": "^2.1.2", "keymaster": "^1.6.2", diff --git a/packages/rax-render/src/comp/visualDom/index.jsx b/packages/rax-render/src/comp/visualDom/index.tsx similarity index 97% rename from packages/rax-render/src/comp/visualDom/index.jsx rename to packages/rax-render/src/comp/visualDom/index.tsx index b18e7d039..ef3a9f6d8 100644 --- a/packages/rax-render/src/comp/visualDom/index.jsx +++ b/packages/rax-render/src/comp/visualDom/index.tsx @@ -1,3 +1,4 @@ +// @ts-nocheck import { Component } from 'rax'; import './index.css'; diff --git a/packages/rax-render/src/context/appContext.js b/packages/rax-render/src/context/appContext.ts similarity index 100% rename from packages/rax-render/src/context/appContext.js rename to packages/rax-render/src/context/appContext.ts diff --git a/packages/rax-render/src/engine/base.jsx b/packages/rax-render/src/engine/base.tsx similarity index 99% rename from packages/rax-render/src/engine/base.jsx rename to packages/rax-render/src/engine/base.tsx index 850804129..b888e2a61 100644 --- a/packages/rax-render/src/engine/base.jsx +++ b/packages/rax-render/src/engine/base.tsx @@ -1,3 +1,4 @@ +// @ts-nocheck import { Component, createElement } from 'rax'; import PropTypes from 'prop-types'; import Debug from 'debug'; diff --git a/packages/rax-render/src/engine/blockEngine.jsx b/packages/rax-render/src/engine/blockEngine.tsx similarity index 99% rename from packages/rax-render/src/engine/blockEngine.jsx rename to packages/rax-render/src/engine/blockEngine.tsx index 718059244..5aefc730a 100644 --- a/packages/rax-render/src/engine/blockEngine.jsx +++ b/packages/rax-render/src/engine/blockEngine.tsx @@ -1,3 +1,4 @@ +// @ts-nocheck import { createElement } from 'rax'; import PropTypes from 'prop-types'; import Debug from 'debug'; diff --git a/packages/rax-render/src/engine/compEngine.jsx b/packages/rax-render/src/engine/compEngine.tsx similarity index 99% rename from packages/rax-render/src/engine/compEngine.jsx rename to packages/rax-render/src/engine/compEngine.tsx index 772071987..6d4f50ef5 100644 --- a/packages/rax-render/src/engine/compEngine.jsx +++ b/packages/rax-render/src/engine/compEngine.tsx @@ -1,3 +1,5 @@ +// @ts-nocheck + import { createElement } from 'rax'; import PropTypes from 'prop-types'; import Debug from 'debug'; diff --git a/packages/rax-render/src/engine/index.jsx b/packages/rax-render/src/engine/index.tsx similarity index 99% rename from packages/rax-render/src/engine/index.jsx rename to packages/rax-render/src/engine/index.tsx index 2a4af143f..6215a46ed 100644 --- a/packages/rax-render/src/engine/index.jsx +++ b/packages/rax-render/src/engine/index.tsx @@ -1,3 +1,4 @@ +// @ts-nocheck /* eslint-disable */ import { Component, createElement } from 'rax'; import PropTypes from 'prop-types'; diff --git a/packages/rax-render/src/engine/pageEngine.jsx b/packages/rax-render/src/engine/pageEngine.tsx similarity index 99% rename from packages/rax-render/src/engine/pageEngine.jsx rename to packages/rax-render/src/engine/pageEngine.tsx index 464abf649..e09b02b22 100644 --- a/packages/rax-render/src/engine/pageEngine.jsx +++ b/packages/rax-render/src/engine/pageEngine.tsx @@ -1,3 +1,5 @@ +// @ts-nocheck + import { createElement } from 'rax'; import PropTypes from 'prop-types'; import Debug from 'debug'; diff --git a/packages/rax-render/src/engine/tempEngine.jsx b/packages/rax-render/src/engine/tempEngine.tsx similarity index 99% rename from packages/rax-render/src/engine/tempEngine.jsx rename to packages/rax-render/src/engine/tempEngine.tsx index 582ab1ee0..5946eee07 100644 --- a/packages/rax-render/src/engine/tempEngine.jsx +++ b/packages/rax-render/src/engine/tempEngine.tsx @@ -1,3 +1,5 @@ +// @ts-nocheck + import { createElement } from 'rax'; import PropTypes from 'prop-types'; import Debug from 'debug'; diff --git a/packages/rax-render/src/hoc/compFactory.js b/packages/rax-render/src/hoc/compFactory.tsx similarity index 99% rename from packages/rax-render/src/hoc/compFactory.js rename to packages/rax-render/src/hoc/compFactory.tsx index 98b1a3269..a1ad666bf 100644 --- a/packages/rax-render/src/hoc/compFactory.js +++ b/packages/rax-render/src/hoc/compFactory.tsx @@ -1,3 +1,5 @@ +// @ts-nocheck + import { Component, createElement, forwardRef } from 'rax'; import PropTypes from 'prop-types'; import { AppHelper } from '@ali/lowcode-utils'; diff --git a/packages/rax-render/src/hoc/compWrapper.js b/packages/rax-render/src/hoc/compWrapper.tsx similarity index 80% rename from packages/rax-render/src/hoc/compWrapper.js rename to packages/rax-render/src/hoc/compWrapper.tsx index 8a396c22c..a32a69526 100644 --- a/packages/rax-render/src/hoc/compWrapper.js +++ b/packages/rax-render/src/hoc/compWrapper.tsx @@ -1,7 +1,9 @@ +// @ts-nocheck + import { createElement, Component } from 'rax'; export default function (Comp) { - class compWrapper extends Component { + return class CompWrapper extends Component { constructor(props, context) { super(props, context); } @@ -12,6 +14,4 @@ export default function (Comp) { }); } } - - return compWrapper; } diff --git a/packages/rax-render/src/index.jsx b/packages/rax-render/src/index.tsx similarity index 100% rename from packages/rax-render/src/index.jsx rename to packages/rax-render/src/index.tsx diff --git a/packages/rax-render/src/utils/dataHelper.js b/packages/rax-render/src/utils/dataHelper.ts similarity index 99% rename from packages/rax-render/src/utils/dataHelper.js rename to packages/rax-render/src/utils/dataHelper.ts index 6c838a739..bdd44974b 100644 --- a/packages/rax-render/src/utils/dataHelper.js +++ b/packages/rax-render/src/utils/dataHelper.ts @@ -1,3 +1,5 @@ +// @ts-nocheck + import { transformArrayToMap, isJSFunction, transformStringToFunction, clone } from './index'; import { jsonp, mtop, request, get, post, bzb } from './request'; diff --git a/packages/rax-render/src/utils/index.js b/packages/rax-render/src/utils/index.ts similarity index 99% rename from packages/rax-render/src/utils/index.js rename to packages/rax-render/src/utils/index.ts index 9100f9619..76d067936 100644 --- a/packages/rax-render/src/utils/index.js +++ b/packages/rax-render/src/utils/index.ts @@ -1,3 +1,5 @@ +// @ts-nocheck + import Debug from 'debug'; import _keymaster from 'keymaster'; import { forEach as _forEach, shallowEqual as _shallowEqual } from '@ali/b3-one/lib/obj'; @@ -13,9 +15,10 @@ import _debounce from 'lodash/debounce'; import _serialize from 'serialize-javascript'; import * as _jsonuri from 'jsonuri'; import IntlMessageFormat from 'intl-messageformat'; -import pkg from '../../package.json'; +import * as fs from 'fs-extra'; -window.sdkVersion = pkg.version; +const sdkVersion = fs.readJSONSync(path.join(__dirname, '..', '..', 'package.json')); +window.sdkVersion = sdkVersion; export const moment = _moment; moment.locale('zh-cn'); @@ -281,7 +284,7 @@ export function goldlog(gmKey, params = {}, logKey = 'other') { // vscode 黄金令箭API const sendIDEMessage = window.sendIDEMessage || getParentWinValue('sendIDEMessage'); const goKey = serializeParams({ - sdkVersion: pkg.version, + sdkVersion, env: getEnv(), ...params, }); diff --git a/packages/rax-render/src/utils/request.js b/packages/rax-render/src/utils/request.ts similarity index 99% rename from packages/rax-render/src/utils/request.js rename to packages/rax-render/src/utils/request.ts index f03bd4203..97cb4d395 100644 --- a/packages/rax-render/src/utils/request.js +++ b/packages/rax-render/src/utils/request.ts @@ -1,3 +1,5 @@ +// @ts-nocheck + import 'whatwg-fetch'; import fetchMtop from '@ali/lib-mtop'; import fetchJsonp from 'fetch-jsonp'; diff --git a/packages/rax-render/tsconfig.json b/packages/rax-render/tsconfig.json new file mode 100644 index 000000000..e1a57bf23 --- /dev/null +++ b/packages/rax-render/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "lib": ["es2015", "dom"], + "target": "esnext", + "module": "esnext", + "moduleResolution": "node", + "strict": false, + "strictPropertyInitialization": false, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "jsx": "preserve", + "importHelpers": true, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "sourceMap": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "outDir": "lib" + }, + "exclude": ["test", "lib", "es", "node_modules"], + "include": [ + "src" + ] +} diff --git a/packages/react-renderer/package.json b/packages/react-renderer/package.json index 51316f142..aad269a1c 100644 --- a/packages/react-renderer/package.json +++ b/packages/react-renderer/package.json @@ -10,8 +10,8 @@ ], "scripts": { "test": "echo \"Error: run tests from root\" && exit 1", - "start": "../../node_modules/.bin/build-scripts start", - "build": "../../node_modules/.bin/build-scripts build", + "start": "build-scripts start", + "build": "build-scripts build", "prepublishOnly": "npm run build" }, "repository": { diff --git a/packages/react-renderer/src/components/Div.jsx b/packages/react-renderer/src/components/Div.tsx similarity index 100% rename from packages/react-renderer/src/components/Div.jsx rename to packages/react-renderer/src/components/Div.tsx diff --git a/packages/react-renderer/src/components/VisualDom.jsx b/packages/react-renderer/src/components/VisualDom.tsx similarity index 100% rename from packages/react-renderer/src/components/VisualDom.jsx rename to packages/react-renderer/src/components/VisualDom.tsx diff --git a/packages/react-renderer/src/context/appContext.js b/packages/react-renderer/src/context/appContext.ts similarity index 100% rename from packages/react-renderer/src/context/appContext.js rename to packages/react-renderer/src/context/appContext.ts diff --git a/packages/react-renderer/src/engine/index.jsx b/packages/react-renderer/src/engine/index.tsx similarity index 100% rename from packages/react-renderer/src/engine/index.jsx rename to packages/react-renderer/src/engine/index.tsx diff --git a/packages/react-renderer/src/index.js b/packages/react-renderer/src/index.tsx similarity index 100% rename from packages/react-renderer/src/index.js rename to packages/react-renderer/src/index.tsx diff --git a/packages/react-renderer/src/renderer/addon.jsx b/packages/react-renderer/src/renderer/addon.tsx similarity index 100% rename from packages/react-renderer/src/renderer/addon.jsx rename to packages/react-renderer/src/renderer/addon.tsx diff --git a/packages/react-renderer/src/renderer/base.jsx b/packages/react-renderer/src/renderer/base.tsx similarity index 100% rename from packages/react-renderer/src/renderer/base.jsx rename to packages/react-renderer/src/renderer/base.tsx diff --git a/packages/react-renderer/src/renderer/block.jsx b/packages/react-renderer/src/renderer/block.tsx similarity index 100% rename from packages/react-renderer/src/renderer/block.jsx rename to packages/react-renderer/src/renderer/block.tsx diff --git a/packages/react-renderer/src/renderer/component.jsx b/packages/react-renderer/src/renderer/component.tsx similarity index 100% rename from packages/react-renderer/src/renderer/component.jsx rename to packages/react-renderer/src/renderer/component.tsx diff --git a/packages/react-renderer/src/renderer/page.jsx b/packages/react-renderer/src/renderer/page.tsx similarity index 100% rename from packages/react-renderer/src/renderer/page.jsx rename to packages/react-renderer/src/renderer/page.tsx diff --git a/packages/react-renderer/src/renderer/temp.jsx b/packages/react-renderer/src/renderer/temp.tsx similarity index 100% rename from packages/react-renderer/src/renderer/temp.jsx rename to packages/react-renderer/src/renderer/temp.tsx diff --git a/packages/react-renderer/src/utils/dataHelper.js b/packages/react-renderer/src/utils/dataHelper.ts similarity index 100% rename from packages/react-renderer/src/utils/dataHelper.js rename to packages/react-renderer/src/utils/dataHelper.ts diff --git a/packages/react-renderer/src/utils/index.js b/packages/react-renderer/src/utils/index.ts similarity index 100% rename from packages/react-renderer/src/utils/index.js rename to packages/react-renderer/src/utils/index.ts diff --git a/packages/react-renderer/src/utils/request.js b/packages/react-renderer/src/utils/request.ts similarity index 100% rename from packages/react-renderer/src/utils/request.js rename to packages/react-renderer/src/utils/request.ts diff --git a/packages/react-renderer/tsconfig.json b/packages/react-renderer/tsconfig.json new file mode 100644 index 000000000..c37b76ecc --- /dev/null +++ b/packages/react-renderer/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "lib" + }, + "include": [ + "./src/" + ] +} diff --git a/packages/utils/src/appHelper.ts b/packages/utils/src/appHelper.ts index d9b80856f..3046af0cd 100644 --- a/packages/utils/src/appHelper.ts +++ b/packages/utils/src/appHelper.ts @@ -1,3 +1,5 @@ +// @ts-nocheck + import EventEmitter from 'events'; let instance = null; diff --git a/tsconfig.json b/tsconfig.json index 46a462b3b..556a1fea8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,12 +8,6 @@ "module": "esnext", // Search under node_modules for non-relative imports. "moduleResolution": "node", - // Process & infer types from .js files. - "allowJs": true, - // Report errors in .js files. - "checkJs": false, - // Don't emit; allow Babel to transform files. - // "noEmit": true, // Enable strictest settings like strictNullChecks & noImplicitAny. "strict": true, "strictPropertyInitialization": false,