From dce0e3ac42f6344e035237a9f31b954daa659249 Mon Sep 17 00:00:00 2001 From: RAHEEL Date: Thu, 3 Aug 2023 01:16:18 +0500 Subject: [PATCH 1/5] refactor: remove momentJS, use dayJS --- .../lowcoder/src/comps/comps/formComp/generate/comp.tsx | 4 ++-- client/packages/lowcoder/src/comps/generators/hookToComp.tsx | 2 +- client/packages/lowcoder/src/comps/hooks/dependencyHook.tsx | 2 +- client/packages/lowcoder/src/comps/hooks/drawerComp.tsx | 2 +- client/packages/lowcoder/src/comps/hooks/hookListComp.tsx | 1 - .../lowcoder/src/i18n/{momentLocale.ts => dayjsLocale.ts} | 2 +- client/packages/lowcoder/src/i18n/locales/en.ts | 4 ++-- client/packages/lowcoder/src/i18n/locales/zh.ts | 4 ++-- .../lowcoder/src/pages/editor/bottom/BottomMetaDrawer.tsx | 2 +- client/packages/lowcoder/src/util/commonUtils.ts | 4 ++-- docs/build-apps/use-third-party-libraries.md | 2 +- docs/build-apps/write-javascript/javascript-query.md | 4 ++-- docs/build-apps/write-javascript/transformers.md | 4 ++-- docs/build-apps/write-javascript/write-javascript-in.md | 2 +- 14 files changed, 19 insertions(+), 20 deletions(-) rename client/packages/lowcoder/src/i18n/{momentLocale.ts => dayjsLocale.ts} (78%) diff --git a/client/packages/lowcoder/src/comps/comps/formComp/generate/comp.tsx b/client/packages/lowcoder/src/comps/comps/formComp/generate/comp.tsx index 1402baca2..c2dd82e6d 100644 --- a/client/packages/lowcoder/src/comps/comps/formComp/generate/comp.tsx +++ b/client/packages/lowcoder/src/comps/comps/formComp/generate/comp.tsx @@ -88,9 +88,9 @@ const multiSelectComps: CompConfig[] = [ const dateComp: CompConfig = { type: "date", }; -// TODO: RAHEEL + function dateTimeToTimestamp(compName: string) { - return "moment(" + compName + ".value || 0).valueOf()"; + return "dayjs(" + compName + ".value || 0).valueOf()"; } function dateTimeComp(toTimestamp?: boolean): CompConfig { return { diff --git a/client/packages/lowcoder/src/comps/generators/hookToComp.tsx b/client/packages/lowcoder/src/comps/generators/hookToComp.tsx index 6afbbcce1..bd9059413 100644 --- a/client/packages/lowcoder/src/comps/generators/hookToComp.tsx +++ b/client/packages/lowcoder/src/comps/generators/hookToComp.tsx @@ -42,7 +42,7 @@ export function hookToStateComp(useHookFn: () => JSONObject) { } /** - * Provide a comp of static data, such as exposure of lodash, moment library + * Provide a comp of static data, such as exposure of lodash, day.js library */ export function simpleValueComp(value: any) { return simpleValueGetterComp(() => value); diff --git a/client/packages/lowcoder/src/comps/hooks/dependencyHook.tsx b/client/packages/lowcoder/src/comps/hooks/dependencyHook.tsx index 069c8ac7b..c65895e4a 100644 --- a/client/packages/lowcoder/src/comps/hooks/dependencyHook.tsx +++ b/client/packages/lowcoder/src/comps/hooks/dependencyHook.tsx @@ -1,5 +1,5 @@ /** * Hooks for managing dependencies - * lodash and moment are supported by default + * lodash and dayJS are supported by default */ export const DependecyHook = null; diff --git a/client/packages/lowcoder/src/comps/hooks/drawerComp.tsx b/client/packages/lowcoder/src/comps/hooks/drawerComp.tsx index c544ffbfe..02e8e36b4 100644 --- a/client/packages/lowcoder/src/comps/hooks/drawerComp.tsx +++ b/client/packages/lowcoder/src/comps/hooks/drawerComp.tsx @@ -125,7 +125,7 @@ let TmpDrawerComp = (function () { { return { ...it, - start_time: moment(it.start_time).format('YYYY-MM-DD') + start_time: dayjs(it.start_time).format('YYYY-MM-DD') }; }) ``` diff --git a/docs/build-apps/write-javascript/write-javascript-in.md b/docs/build-apps/write-javascript/write-javascript-in.md index 52f849185..be29611c6 100644 --- a/docs/build-apps/write-javascript/write-javascript-in.md +++ b/docs/build-apps/write-javascript/write-javascript-in.md @@ -43,7 +43,7 @@ Lowercase a string. Change date format. ```javascript -{{moment(table1.selectedRow.date_column).format('YYYY-MM-DD')}} +{{dayjs(table1.selectedRow.date_column).format('YYYY-MM-DD')}} ``` Return name from query results. From 372693f358324690b8095b67a2a18f76800f7ded Mon Sep 17 00:00:00 2001 From: RAHEEL Date: Thu, 3 Aug 2023 01:54:55 +0500 Subject: [PATCH 2/5] refactor: remove momentjs dependency --- client/package.json | 1 - client/packages/lowcoder-dev-utils/external.js | 4 ---- client/packages/lowcoder/package.json | 1 - client/packages/lowcoder/src/comps/hooks/hookComp.tsx | 2 +- client/yarn.lock | 1 - 5 files changed, 1 insertion(+), 8 deletions(-) diff --git a/client/package.json b/client/package.json index 829ffdd41..390085e3b 100644 --- a/client/package.json +++ b/client/package.json @@ -67,7 +67,6 @@ "packageManager": "yarn@3.2.4", "resolutions": { "@types/react": "^17", - "moment": "2.29.2", "canvas": "https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.2.1.tgz", "react-virtualized@^9.22.3": "patch:react-virtualized@npm%3A9.22.3#./.yarn/patches/react-virtualized-npm-9.22.3-0fff3cbf64.patch", "eslint-plugin-only-ascii@^0.0.0": "patch:eslint-plugin-only-ascii@npm%3A0.0.0#./.yarn/patches/eslint-plugin-only-ascii-npm-0.0.0-29e3417685.patch" diff --git a/client/packages/lowcoder-dev-utils/external.js b/client/packages/lowcoder-dev-utils/external.js index 4dc3e30c9..ad060bea1 100644 --- a/client/packages/lowcoder-dev-utils/external.js +++ b/client/packages/lowcoder-dev-utils/external.js @@ -18,10 +18,6 @@ export const libs = [ "@dnd-kit/modifiers", "@dnd-kit/sortable", "@dnd-kit/utilities", - { - name: "moment", - extractDefault: true, - }, { name: "dayjs", extractDefault: true, diff --git a/client/packages/lowcoder/package.json b/client/packages/lowcoder/package.json index 278628768..79663a58c 100644 --- a/client/packages/lowcoder/package.json +++ b/client/packages/lowcoder/package.json @@ -57,7 +57,6 @@ "lowcoder-core": "workspace:^", "lowcoder-design": "workspace:^", "mime": "^3.0.0", - "moment": "^2.29.4", "numbro": "^2.3.6", "papaparse": "^5.3.2", "qrcode.react": "^3.1.0", diff --git a/client/packages/lowcoder/src/comps/hooks/hookComp.tsx b/client/packages/lowcoder/src/comps/hooks/hookComp.tsx index 5af1ed154..b71169493 100644 --- a/client/packages/lowcoder/src/comps/hooks/hookComp.tsx +++ b/client/packages/lowcoder/src/comps/hooks/hookComp.tsx @@ -85,7 +85,7 @@ const HookMap: HookCompMapRawType = { currentTime: CurrentTimeHookComp, lodashJsLib: LodashJsLib, dayJsLib: DayJsLib, - momentJsLib: DayJsLib, + momentJsLib: DayJsLib, // old components use this hook utils: UtilsComp, message: MessageComp, localStorage: LocalStorageComp, diff --git a/client/yarn.lock b/client/yarn.lock index c000939f6..85ae5e1bd 100644 --- a/client/yarn.lock +++ b/client/yarn.lock @@ -11743,7 +11743,6 @@ __metadata: lowcoder-design: "workspace:^" lowcoder-dev-utils: "workspace:^" mime: ^3.0.0 - moment: ^2.29.4 numbro: ^2.3.6 papaparse: ^5.3.2 qrcode.react: ^3.1.0 From e63e43b6afb2c5772cfbd9407eb492e874d06de6 Mon Sep 17 00:00:00 2001 From: RAHEEL Date: Thu, 3 Aug 2023 02:24:02 +0500 Subject: [PATCH 3/5] fix: small fix --- client/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/client/package.json b/client/package.json index 390085e3b..829ffdd41 100644 --- a/client/package.json +++ b/client/package.json @@ -67,6 +67,7 @@ "packageManager": "yarn@3.2.4", "resolutions": { "@types/react": "^17", + "moment": "2.29.2", "canvas": "https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.2.1.tgz", "react-virtualized@^9.22.3": "patch:react-virtualized@npm%3A9.22.3#./.yarn/patches/react-virtualized-npm-9.22.3-0fff3cbf64.patch", "eslint-plugin-only-ascii@^0.0.0": "patch:eslint-plugin-only-ascii@npm%3A0.0.0#./.yarn/patches/eslint-plugin-only-ascii-npm-0.0.0-29e3417685.patch" From 1b530b29f65c8f50aa9f2846773186796a918194 Mon Sep 17 00:00:00 2001 From: RAHEEL Date: Thu, 3 Aug 2023 14:50:30 +0500 Subject: [PATCH 4/5] fix: add moment dependency for full calendar --- client/packages/lowcoder-dev-utils/external.js | 4 ++++ client/packages/lowcoder/package.json | 1 + client/yarn.lock | 1 + 3 files changed, 6 insertions(+) diff --git a/client/packages/lowcoder-dev-utils/external.js b/client/packages/lowcoder-dev-utils/external.js index ad060bea1..4dc3e30c9 100644 --- a/client/packages/lowcoder-dev-utils/external.js +++ b/client/packages/lowcoder-dev-utils/external.js @@ -18,6 +18,10 @@ export const libs = [ "@dnd-kit/modifiers", "@dnd-kit/sortable", "@dnd-kit/utilities", + { + name: "moment", + extractDefault: true, + }, { name: "dayjs", extractDefault: true, diff --git a/client/packages/lowcoder/package.json b/client/packages/lowcoder/package.json index 79663a58c..278628768 100644 --- a/client/packages/lowcoder/package.json +++ b/client/packages/lowcoder/package.json @@ -57,6 +57,7 @@ "lowcoder-core": "workspace:^", "lowcoder-design": "workspace:^", "mime": "^3.0.0", + "moment": "^2.29.4", "numbro": "^2.3.6", "papaparse": "^5.3.2", "qrcode.react": "^3.1.0", diff --git a/client/yarn.lock b/client/yarn.lock index 85ae5e1bd..c000939f6 100644 --- a/client/yarn.lock +++ b/client/yarn.lock @@ -11743,6 +11743,7 @@ __metadata: lowcoder-design: "workspace:^" lowcoder-dev-utils: "workspace:^" mime: ^3.0.0 + moment: ^2.29.4 numbro: ^2.3.6 papaparse: ^5.3.2 qrcode.react: ^3.1.0 From 1b13699df7acc5249536849f4863e38cc20fddaf Mon Sep 17 00:00:00 2001 From: RAHEEL Date: Mon, 21 Aug 2023 19:30:49 +0500 Subject: [PATCH 5/5] fix: replace momentJS with dayJS in autocomplete comp. --- .../src/comps/comps/autoCompleteComp/autoCompleteComp.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/packages/lowcoder/src/comps/comps/autoCompleteComp/autoCompleteComp.tsx b/client/packages/lowcoder/src/comps/comps/autoCompleteComp/autoCompleteComp.tsx index 81a8244bb..acd4b2d09 100644 --- a/client/packages/lowcoder/src/comps/comps/autoCompleteComp/autoCompleteComp.tsx +++ b/client/packages/lowcoder/src/comps/comps/autoCompleteComp/autoCompleteComp.tsx @@ -44,7 +44,7 @@ import { booleanExposingStateControl, } from "comps/controls/codeStateControl"; -import { getMomentLocale } from "i18n/momentLocale"; +import { getDayJSLocale } from "i18n/dayjsLocale"; import { autoCompleteDate, itemsDataTooltip, @@ -151,7 +151,7 @@ let AutoCompleteCompBase = (function () { const [validateState, setvalidateState] = useState({}); // 是否中文环境 - const [chineseEnv, setChineseEnv] = useState(getMomentLocale() === "zh-cn"); + const [chineseEnv, setChineseEnv] = useState(getDayJSLocale() === "zh-cn"); useEffect(() => { setsearchtext(props.value.value); @@ -346,11 +346,11 @@ let AutoCompleteCompBase = (function () { tooltip: itemsDataTooltip, placeholder: "[]", })} - {getMomentLocale() === "zh-cn" && + {getDayJSLocale() === "zh-cn" && children.searchFirstPY.propertyView({ label: trans("autoComplete.searchFirstPY"), })} - {getMomentLocale() === "zh-cn" && + {getDayJSLocale() === "zh-cn" && children.searchCompletePY.propertyView({ label: trans("autoComplete.searchCompletePY"), })}