From 1e08541b205923cad55133dc18c24cb9bd4865b8 Mon Sep 17 00:00:00 2001 From: HoikanChen Date: Fri, 19 Jan 2024 21:00:15 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=96=B0=E5=BB=BA=E4=B8=80=E4=B8=AAi?= =?UTF-8?q?nula-novdom=E6=A8=A1=E5=9D=97=202=E3=80=81=E4=BF=AE=E6=94=B9inu?= =?UTF-8?q?la-reactive?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/inula-novdom/.prettierrc.js | 32 + packages/inula-novdom/babel.config.js | 25 + packages/inula-novdom/jest.config.js | 33 + packages/inula-novdom/package.json | 12 + packages/inula-novdom/src/Utils.ts | 0 packages/inula-novdom/src/components/For.tsx | 123 ++++ packages/inula-novdom/src/components/Show.tsx | 56 ++ packages/inula-novdom/src/core.ts | 91 +++ packages/inula-novdom/src/dom.ts | 295 +++++++++ packages/inula-novdom/src/event.ts | 85 +++ .../inula-novdom/tests/jest/jestSetting.js | 26 + packages/inula-novdom/tests/no-vdom.test.js | 572 ++++++++++++++++++ packages/inula-reactive/index.ts | 34 ++ packages/inula-reactive/package.json | 5 +- packages/inula-reactive/src/RNode.ts | 241 ++++---- packages/inula-reactive/src/RNodeAccessor.ts | 223 +------ packages/inula-reactive/src/RNodeCreator.ts | 7 +- packages/inula-reactive/src/Reactive.ts | 16 - packages/inula-reactive/src/Utils.ts | 2 +- .../comparison/{DiffUtils.ts => ArrayDiff.ts} | 6 +- .../src/comparison/InDepthComparison.ts | 233 +++++++ .../inula-reactive/src/proxy/RProxyHandler.ts | 4 +- .../inula-reactive/tests/reactive.test.ts | 30 +- 23 files changed, 1792 insertions(+), 359 deletions(-) create mode 100644 packages/inula-novdom/.prettierrc.js create mode 100644 packages/inula-novdom/babel.config.js create mode 100644 packages/inula-novdom/jest.config.js create mode 100644 packages/inula-novdom/package.json create mode 100644 packages/inula-novdom/src/Utils.ts create mode 100644 packages/inula-novdom/src/components/For.tsx create mode 100644 packages/inula-novdom/src/components/Show.tsx create mode 100644 packages/inula-novdom/src/core.ts create mode 100644 packages/inula-novdom/src/dom.ts create mode 100644 packages/inula-novdom/src/event.ts create mode 100644 packages/inula-novdom/tests/jest/jestSetting.js create mode 100644 packages/inula-novdom/tests/no-vdom.test.js create mode 100644 packages/inula-reactive/index.ts delete mode 100644 packages/inula-reactive/src/Reactive.ts rename packages/inula-reactive/src/comparison/{DiffUtils.ts => ArrayDiff.ts} (97%) create mode 100644 packages/inula-reactive/src/comparison/InDepthComparison.ts diff --git a/packages/inula-novdom/.prettierrc.js b/packages/inula-novdom/.prettierrc.js new file mode 100644 index 00000000..c2622eaa --- /dev/null +++ b/packages/inula-novdom/.prettierrc.js @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2023 Huawei Technologies Co.,Ltd. + * + * openInula is licensed under Mulan PSL v2. + * You can use this software according to the terms and conditions of the Mulan PSL v2. + * You may obtain a copy of Mulan PSL v2 at: + * + * http://license.coscl.org.cn/MulanPSL2 + * + * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, + * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, + * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. + * See the Mulan PSL v2 for more details. + */ + +'use strict'; + +module.exports = { + printWidth: 120, // 一行120字符数,如果超过会进行换行 + tabWidth: 2, // tab等2个空格 + useTabs: false, // 用空格缩进行 + semi: true, // 行尾使用分号 + singleQuote: true, // 字符串使用单引号 + quoteProps: 'as-needed', // 仅在需要时在对象属性添加引号 + jsxSingleQuote: false, // 在JSX中使用双引号 + trailingComma: 'es5', // 使用尾逗号(对象、数组等) + bracketSpacing: true, // 对象的括号间增加空格 + bracketSameLine: false, // 将多行JSX元素的>放在最后一行的末尾 + arrowParens: 'avoid', // 在唯一的arrow函数参数周围省略括号 + vueIndentScriptAndStyle: false, // 不缩进Vue文件中的