vap1 0.4.5 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/base.json +30 -0
- package/basetype.d.ts +4 -1
- package/cems/admin/AsyncSelect.d.ts +45 -0
- package/cems/admin/AsyncSelect.js +2 -0
- package/cems/admin/CardTable.d.ts +207 -0
- package/cems/admin/CardTable.js +2 -0
- package/cems/admin/EasyuiTree.d.ts +131 -0
- package/cems/admin/EasyuiTree.js +2 -0
- package/cems/admin/utils.d.ts +5 -0
- package/cems/admin/utils.js +3 -0
- package/cems/admin/validator.d.ts +137 -0
- package/cems/admin/validator.js +2 -0
- package/cems/assets/CUpload.d.ts +23 -0
- package/cems/assets/CUpload.js +2 -0
- package/cems/assets/Charts.d.ts +37 -0
- package/cems/assets/Charts.js +2 -0
- package/cems/assets/DInfo.d.ts +38 -0
- package/cems/assets/DInfo.js +2 -0
- package/cems/assets/DModal.d.ts +84 -0
- package/cems/assets/DModal.js +2 -0
- package/cems/assets/DTable.d.ts +128 -0
- package/cems/assets/DTable.js +2 -0
- package/cems/assets/DivWidth.d.ts +14 -0
- package/cems/assets/DivWidth.js +2 -0
- package/cems/assets/Patch.d.ts +9 -0
- package/cems/assets/Patch.js +2 -0
- package/cems/assets/Sensitive.d.ts +33 -0
- package/cems/assets/Sensitive.js +2 -0
- package/cems/assets/types.d.ts +200 -0
- package/cems/assets/types.js +2 -0
- package/cems/assets/utils.d.ts +61 -0
- package/cems/assets/utils.js +2 -0
- package/cems/define.d.ts +9 -0
- package/cems/define.js +18 -0
- package/cems/index.d.ts +228 -0
- package/cems/index.js +81 -0
- package/cems/policy/CForm.d.ts +133 -0
- package/cems/policy/CForm.js +2 -0
- package/cems/policy/DApiTable.d.ts +78 -0
- package/cems/policy/DApiTable.js +2 -0
- package/cems/policy/DButton.d.ts +17 -0
- package/cems/policy/DButton.js +2 -0
- package/cems/policy/DCheckbox.d.ts +50 -0
- package/cems/policy/DCheckbox.js +2 -0
- package/cems/policy/DCheckboxGroup.d.ts +34 -0
- package/cems/policy/DCheckboxGroup.js +2 -0
- package/cems/policy/DCol.d.ts +33 -0
- package/cems/policy/DCol.js +2 -0
- package/cems/policy/DColorPicker.d.ts +9 -0
- package/cems/policy/DColorPicker.js +2 -0
- package/cems/policy/DDatePicker.d.ts +41 -0
- package/cems/policy/DDatePicker.js +2 -0
- package/cems/policy/DDiv.d.ts +65 -0
- package/cems/policy/DDiv.js +2 -0
- package/cems/policy/DDrawer.d.ts +6 -0
- package/cems/policy/DDrawer.js +2 -0
- package/cems/policy/DDynamicSelect.d.ts +50 -0
- package/cems/policy/DDynamicSelect.js +2 -0
- package/cems/policy/DDynamicTreeSelect.d.ts +45 -0
- package/cems/policy/DDynamicTreeSelect.js +2 -0
- package/cems/policy/DForm.d.ts +248 -0
- package/cems/policy/DForm.js +2 -0
- package/cems/policy/DIcon.d.ts +33 -0
- package/cems/policy/DIcon.js +2 -0
- package/cems/policy/DInput.d.ts +41 -0
- package/cems/policy/DInput.js +2 -0
- package/cems/policy/DLabel.d.ts +17 -0
- package/cems/policy/DLabel.js +2 -0
- package/cems/policy/DPTable.d.ts +86 -0
- package/cems/policy/DPTable.js +2 -0
- package/cems/policy/DRadio.d.ts +34 -0
- package/cems/policy/DRadio.js +2 -0
- package/cems/policy/DSCTable.d.ts +33 -0
- package/cems/policy/DSCTable.js +2 -0
- package/cems/policy/DSelect.d.ts +42 -0
- package/cems/policy/DSelect.js +2 -0
- package/cems/policy/DSlider.d.ts +21 -0
- package/cems/policy/DSlider.js +2 -0
- package/cems/policy/DSwitch.d.ts +21 -0
- package/cems/policy/DSwitch.js +2 -0
- package/cems/policy/DTab.d.ts +30 -0
- package/cems/policy/DTab.js +2 -0
- package/cems/policy/DTimePicker.d.ts +37 -0
- package/cems/policy/DTimePicker.js +2 -0
- package/cems/policy/DTree.d.ts +98 -0
- package/cems/policy/DTree.js +2 -0
- package/cems/policy/DUpload.d.ts +33 -0
- package/cems/policy/DUpload.js +2 -0
- package/cems/policy/types.d.ts +200 -0
- package/cems/policy/types.js +2 -0
- package/cems/policy/utils.d.ts +13 -0
- package/cems/policy/utils.js +2 -0
- package/components/Box/Box.d.ts +43 -7
- package/components/Box/Box.js +67 -17
- package/components/Box/SelectBar.d.ts +1 -1
- package/components/Box/SelectBar.js +19 -9
- package/components/Lists/BaseList.d.ts +5 -0
- package/components/Lists/BaseList.js +111 -0
- package/components/Lists/Fields/IconRender.d.ts +53 -0
- package/components/Lists/Fields/IconRender.js +174 -0
- package/components/Lists/Fields/ItemRender.d.ts +2 -0
- package/components/Lists/Fields/ItemRender.js +127 -0
- package/components/Lists/Fields/_utils.d.ts +3 -0
- package/components/Lists/Fields/_utils.js +80 -0
- package/components/Lists/Fields/index.d.ts +3 -0
- package/components/Lists/Fields/index.js +47 -0
- package/components/Lists/Grid/grid.d.ts +7 -0
- package/components/Lists/Grid/grid.js +18 -0
- package/components/Lists/Grid/index.d.ts +3 -0
- package/components/Lists/Grid/index.js +50 -0
- package/components/Lists/Row/index.d.ts +3 -0
- package/components/Lists/Row/index.js +14 -0
- package/components/Lists/SList.js +17 -7
- package/components/Lists/Timeline/index.d.ts +3 -0
- package/components/Lists/Timeline/index.js +117 -0
- package/components/Lists/VList.d.ts +3 -0
- package/components/Lists/VList.js +92 -0
- package/components/Lists/components/LayoutSwitcher.d.ts +13 -0
- package/components/Lists/components/LayoutSwitcher.js +121 -0
- package/components/Lists/components/SearchTool.d.ts +13 -0
- package/components/Lists/components/SearchTool.js +34 -0
- package/components/Lists/index.d.ts +129 -0
- package/components/Lists/index.js +2 -0
- package/components/SearchTool/SearchBand/BandInput.d.ts +3 -0
- package/components/SearchTool/SearchBand/BandInput.js +54 -0
- package/components/SearchTool/SearchBand/BandTag.d.ts +7 -0
- package/components/SearchTool/SearchBand/BandTag.js +82 -0
- package/components/SearchTool/SearchBand/_SearchBandAction.d.ts +3 -0
- package/components/SearchTool/SearchBand/_SearchBandAction.js +23 -0
- package/components/SearchTool/SearchBand/_SearchBandFix.d.ts +3 -0
- package/components/SearchTool/SearchBand/_SearchBandFix.js +72 -0
- package/components/SearchTool/SearchBand/_SearchBandTag.d.ts +3 -0
- package/components/SearchTool/SearchBand/_SearchBandTag.js +75 -0
- package/components/SearchTool/SearchBand/_register.d.ts +47 -0
- package/components/SearchTool/SearchBand/_register.js +15 -0
- package/components/SearchTool/SearchBand/hooks.d.ts +12 -0
- package/components/SearchTool/SearchBand/hooks.js +181 -0
- package/components/SearchTool/SearchBand/index.d.ts +3 -0
- package/components/SearchTool/SearchBand/index.js +66 -0
- package/components/SearchTool/SearchBand/type.d.ts +71 -0
- package/components/SearchTool/SearchBand/type.js +3 -0
- package/components/{SearchBar → SearchTool/SearchBar}/ActionButtons.d.ts +2 -2
- package/components/{SearchBar → SearchTool/SearchBar}/ActionButtons.js +22 -12
- package/components/{SearchBar → SearchTool/SearchBar}/ByField.d.ts +1 -1
- package/components/{SearchBar → SearchTool/SearchBar}/ByField.js +21 -11
- package/components/{SearchBar → SearchTool/SearchBar}/ByKeyword.d.ts +1 -1
- package/components/{SearchBar → SearchTool/SearchBar}/ByKeyword.js +20 -10
- package/components/{SearchBar → SearchTool/SearchBar}/SearchField.d.ts +1 -1
- package/components/{SearchBar → SearchTool/SearchBar}/SearchTags.js +1 -1
- package/components/{SearchBar → SearchTool/SearchBar}/_register.d.ts +1 -1
- package/components/{SearchBar → SearchTool/SearchBar}/_register.js +3 -3
- package/components/SearchTool/SearchBar/index.d.ts +7 -0
- package/components/{SearchBar → SearchTool/SearchBar}/index.js +1 -1
- package/components/{SearchBar/index.d.ts → SearchTool/SearchBar/type.d.ts} +68 -67
- package/components/SearchTool/SearchBar/type.js +35 -0
- package/components/SearchTool/index.d.ts +5 -0
- package/components/SearchTool/index.js +7 -0
- package/components/Tables/ApiTable.d.ts +5 -7
- package/components/Tables/ApiTable.js +17 -7
- package/components/Tables/ApiTableModal.d.ts +5 -7
- package/components/Tables/ApiTableModal.js +17 -7
- package/components/Tables/Components/ActionBar.d.ts +8 -11
- package/components/Tables/Components/ActionBar.js +74 -41
- package/components/Tables/Components/Actions.d.ts +3 -1
- package/components/Tables/Components/Actions.js +40 -3
- package/components/Tables/Components/index.d.ts +3 -1
- package/components/Tables/Components/useTableContext.d.ts +16 -0
- package/components/Tables/Components/useTableContext.js +116 -0
- package/components/Tables/STable.js +17 -7
- package/components/Tables/TopTable.js +17 -7
- package/components/Tables/Util.d.ts +2 -2
- package/components/Tables/Util.js +0 -1
- package/components/Tables/VTable.d.ts +9 -9
- package/components/Tables/VTable.js +119 -172
- package/components/Tables/VTableBack.d.ts +0 -0
- package/components/Tables/VTableBack.js +269 -0
- package/components/Tables/index.d.ts +11 -22
- package/components/TreeSelect/BaseTreeSelect.js +17 -7
- package/components/TreeSelect/DTreeSelect.js +19 -9
- package/components/TreeSelect/FTreeSelect.js +2 -2
- package/components/TreeSelect/STreeSelect.js +1 -1
- package/components/Trees/ActionTree.d.ts +3 -5
- package/components/Trees/ActionTree.js +19 -9
- package/components/Trees/BaseTree.js +17 -7
- package/components/Trees/COTree/COButton.js +17 -7
- package/components/Trees/COTree/COSelect.js +17 -7
- package/components/Trees/COTree/COTree.js +19 -9
- package/components/Trees/DTree.d.ts +0 -7
- package/components/Trees/DTree.js +19 -9
- package/components/Trees/FTree.js +19 -9
- package/components/Trees/STree.js +17 -7
- package/components/UForm/FormWrapper.js +17 -7
- package/components/UForm/UDescriptions.d.ts +2 -3
- package/components/UForm/UDescriptions.js +17 -7
- package/components/UForm/UForm.d.ts +1 -1
- package/components/UForm/UForm.js +24 -11
- package/components/UForm/UFormModal.js +19 -9
- package/components/UForm/_FieldType.d.ts +1 -1
- package/components/UForm/_FieldType.js +4 -0
- package/components/UForm/_input.d.ts +5 -1
- package/components/UForm/_input.js +25 -8
- package/components/Upload/UploadImage.js +17 -7
- package/components/Upload/UploadModal.js +19 -9
- package/components/Upload/useUpload.js +2 -2
- package/components/_adapt/Alert.js +17 -7
- package/components/_adapt/Col.d.ts +1 -1
- package/components/_adapt/ColorPicker.js +17 -7
- package/components/_adapt/Drawer.js +17 -7
- package/components/_adapt/Dropdown.js +17 -7
- package/components/_adapt/FloatButton.js +17 -7
- package/components/_adapt/Input.js +17 -7
- package/components/_adapt/InputNumber.js +17 -7
- package/components/_adapt/Layout.js +17 -7
- package/components/_adapt/Menu.js +17 -7
- package/components/_adapt/Modal.js +17 -7
- package/components/_adapt/Popconfirm.js +17 -7
- package/components/_adapt/Popover.js +17 -7
- package/components/_adapt/Progress.js +17 -7
- package/components/_adapt/Select.js +17 -7
- package/components/_adapt/Table.js +17 -7
- package/components/_adapt/Tabs.js +17 -7
- package/components/_adapt/Tag.js +17 -7
- package/components/_adapt/TreeSelect.js +17 -7
- package/components/_adapt/todo/Image.d.ts +0 -1
- package/components/_adapt/todo/Segmented.d.ts +0 -1
- package/components/_common/AutoComplete.js +35 -12
- package/components/_common/CountUp.js +17 -7
- package/components/_common/DateRange.d.ts +5 -2
- package/components/_common/DateRange.js +43 -40
- package/components/_common/HighLight.d.ts +1 -1
- package/components/_common/HighLight.js +26 -24
- package/components/_common/Loading.js +17 -7
- package/components/_common/MonthRange.js +17 -7
- package/components/_common/PromiseLabel.js +2 -2
- package/components/_common/UTitle.d.ts +1 -1
- package/components/_common/UTitle.js +18 -8
- package/components/_common/Upagination.d.ts +1 -0
- package/components/_common/Upagination.js +5 -1
- package/components/_i18n.d.ts +1 -102
- package/components/index.d.ts +2 -2
- package/components/index.js +5 -1
- package/deps/JsonView.js +17 -7
- package/deps/app-audit/LookUp.js +19 -9
- package/deps/app-data/Const.d.ts +68 -3
- package/deps/app-data/Const.js +47 -3
- package/deps/app-data/TimeConst.d.ts +0 -0
- package/deps/app-data/TimeConst.js +58 -0
- package/deps/app-data/useSource.d.ts +22 -0
- package/deps/app-data/useSource.js +253 -162
- package/deps/echarts.d.ts +3 -0
- package/deps/echarts.js +20 -10
- package/deps/editor/Article.js +17 -7
- package/deps/editor/Editor.js +17 -7
- package/deps/editor/EditorModal.js +17 -7
- package/deps/editor/support/buttons/ImageButton.js +17 -7
- package/deps/editor/tools/Button.js +0 -2
- package/deps/editor/tools/_TxtButton.js +17 -7
- package/deps/vapc/_basic.d.ts +1 -0
- package/deps/vapc/_basic.js +15 -0
- package/deps/vapc/index.d.ts +10 -0
- package/deps/vapc/index.js +70 -0
- package/hooks/useAjaxAction.js +2 -2
- package/hooks/useAjaxQuery.js +2 -2
- package/hooks/useApiBase.js +2 -2
- package/hooks/useApiGlobal.js +1 -1
- package/hooks/useArray.js +2 -2
- package/hooks/useDefault.d.ts +0 -1
- package/hooks/useDoLoad.d.ts +1 -1
- package/hooks/useError.d.ts +1 -1
- package/hooks/useMemoPromise.js +2 -2
- package/index.d.ts +2 -1
- package/index.js +1 -1
- package/login/Base65.d.ts +7 -1
- package/login/Base65.js +49 -22
- package/login/Password.d.ts +8 -5
- package/login/Password.js +68 -102
- package/package.json +1 -1
- package/screen/Page.js +17 -7
- package/screen/vapc-schema/dark.d.ts +1 -0
- package/screen/vapc-schema/dark.js +50 -0
- package/screen/vapc-schema/insight.d.ts +1 -0
- package/screen/vapc-schema/insight.js +49 -0
- package/uform/FormEditor.js +17 -7
- package/uform/FormViewer.js +17 -7
- package/uform/hooks/useEditor.d.ts +0 -1
- package/uform/hooks/useForm.d.ts +0 -1
- package/uform/inputs/index.d.ts +0 -1
- package/uform/panel/Editor/_GroupDefault.js +17 -7
- package/uform/panel/Editor/_GroupStep.js +17 -7
- package/uform/panel/Editor/_GroupTab.js +17 -7
- package/uform/panel/Editor/index.js +17 -7
- package/uform/panel/Items/Fields.js +17 -7
- package/uform/panel/Items/InputSelector.js +17 -7
- package/uform/panel/Items/Inputs.js +17 -7
- package/uform/panel/Items/index.d.ts +1 -1
- package/uform/panel/Propreties/CanvasProperties.js +17 -7
- package/uform/panel/Propreties/Component/FieldPlugin.js +17 -7
- package/uform/panel/Propreties/Component/LinkAsyncFunction.js +17 -7
- package/uform/panel/Propreties/Component/LinkSyncFunction.js +17 -7
- package/uform/panel/Propreties/Component/Links.js +17 -7
- package/uform/panel/Propreties/Component/OptionTable.js +17 -7
- package/uform/panel/Propreties/Component/RegexpModal.js +17 -7
- package/uform/panel/Propreties/Component/Validate.js +17 -7
- package/uform/panel/Propreties/Component/ValidateAsyncFunction.js +17 -7
- package/uform/panel/Propreties/Component/ValidateSyncFunction.js +17 -7
- package/uform/panel/Propreties/FieldOptions.js +17 -7
- package/uform/panel/Propreties/FieldProperties.js +17 -7
- package/uform/panel/Propreties/_ItemAdvance.js +17 -7
- package/uform/panel/Propreties/_ItemBase.js +17 -7
- package/uform/panel/Propreties/_ItemLink.js +17 -7
- package/uform/panel/Propreties/_ItemValidate.js +17 -7
- package/uform/schema.d.ts +1 -1
- package/uform/utils/Convert.js +2 -2
- package/utils/Ajax.d.ts +3 -0
- package/utils/Ajax.js +22 -16
- package/utils/CacheUtil.d.ts +1 -1
- package/utils/Const.js +17 -7
- package/utils/Format.d.ts +138 -14
- package/utils/Format.js +132 -23
- package/utils/Global.d.ts +46 -2
- package/utils/Global.js +24 -2
- package/utils/PageUtil.d.ts +111 -23
- package/utils/PageUtil.js +163 -28
- package/utils/Renders/ApiGetRender.js +25 -12
- package/utils/Renders/ApiPostRender.js +3 -3
- package/utils/Renders/CondictionRender.js +17 -7
- package/utils/Renders/DateRender.js +20 -2
- package/utils/Renders/ListRender.js +1 -1
- package/utils/Renders/NumberRender.js +24 -5
- package/utils/Renders/StringRender.js +81 -11
- package/utils/Renders/_define.d.ts +8 -7
- package/utils/Renders/_define.js +76 -17
- package/utils/StringUtil.d.ts +292 -62
- package/utils/StringUtil.js +310 -63
- package/utils/TreeUtil.js +14 -12
- package/utils/VAP.d.ts +26 -1
- package/utils/VAP.js +57 -1
- package/utils/_AjaxUtil.d.ts +1 -0
- package/utils/_AjaxUtil.js +70 -3
- package/utils/_Support.d.ts +2 -2
- package/utils/_Support.js +4 -2
- package/utils/crontab/_en.d.ts +2 -0
- package/utils/crontab/_en.js +178 -0
- package/utils/crontab/_global.d.ts +11 -0
- package/utils/crontab/_global.js +23 -0
- package/utils/crontab/_zh_CN.d.ts +2 -0
- package/utils/crontab/_zh_CN.js +180 -0
- package/utils/crontab/_zh_TW.d.ts +2 -0
- package/utils/crontab/_zh_TW.js +170 -0
- package/utils/crontab/crontabParser.d.ts +1 -0
- package/utils/crontab/crontabParser.js +251 -0
- package/utils/crontab/crontabRender.d.ts +23 -0
- package/utils/crontab/crontabRender.js +502 -0
- package/utils/crontab/index.d.ts +3 -0
- package/utils/crontab/index.js +9 -0
- package/utils/crontab/type.d.ts +79 -0
- package/utils/crontab/type.js +2 -0
- package/utils/crontab/utils.d.ts +20 -0
- package/utils/crontab/utils.js +122 -0
- package/utils/i18n.d.ts +13 -2
- package/utils/i18n.js +13 -2
- package/utils/index.d.ts +4 -0
- package/utils/index.js +19 -9
- package/utils/py.js +2 -0
- package/components/SearchBar/_FieldType.d.ts +0 -8
- package/components/SearchBar/_FieldType.js +0 -51
- /package/components/{SearchBar → SearchTool/SearchBar}/SearchField.js +0 -0
- /package/components/{SearchBar → SearchTool/SearchBar}/SearchTags.d.ts +0 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.zh_TW = void 0;
|
|
4
|
+
exports.zh_TW = {
|
|
5
|
+
atX0SecondsPastTheMinuteGt20: function () {
|
|
6
|
+
return null;
|
|
7
|
+
},
|
|
8
|
+
atX0MinutesPastTheHourGt20: function () {
|
|
9
|
+
return null;
|
|
10
|
+
},
|
|
11
|
+
commaMonthX0ThroughMonthX1: function () {
|
|
12
|
+
return null;
|
|
13
|
+
},
|
|
14
|
+
commaYearX0ThroughYearX1: function () {
|
|
15
|
+
return ", 從 %s 年至 %s 年";
|
|
16
|
+
},
|
|
17
|
+
use24HourTimeFormatByDefault: function () {
|
|
18
|
+
return true;
|
|
19
|
+
},
|
|
20
|
+
everyMinute: function () {
|
|
21
|
+
return "每分鐘";
|
|
22
|
+
},
|
|
23
|
+
everyHour: function () {
|
|
24
|
+
return "每小時";
|
|
25
|
+
},
|
|
26
|
+
anErrorOccuredWhenGeneratingTheExpressionD: function () {
|
|
27
|
+
return "產生表達式描述時發生了錯誤,請檢查 cron 表達式語法。";
|
|
28
|
+
},
|
|
29
|
+
atSpace: function () {
|
|
30
|
+
return "在 ";
|
|
31
|
+
},
|
|
32
|
+
everyMinuteBetweenX0AndX1: function () {
|
|
33
|
+
return "在 %s 和 %s 之間的每分鐘";
|
|
34
|
+
},
|
|
35
|
+
at: function () {
|
|
36
|
+
return "在";
|
|
37
|
+
},
|
|
38
|
+
spaceAnd: function () {
|
|
39
|
+
return " 和";
|
|
40
|
+
},
|
|
41
|
+
everySecond: function () {
|
|
42
|
+
return "每秒";
|
|
43
|
+
},
|
|
44
|
+
everyX0Seconds: function () {
|
|
45
|
+
return "每 %s 秒";
|
|
46
|
+
},
|
|
47
|
+
secondsX0ThroughX1PastTheMinute: function () {
|
|
48
|
+
return "在每分鐘的 %s 到 %s 秒";
|
|
49
|
+
},
|
|
50
|
+
atX0SecondsPastTheMinute: function () {
|
|
51
|
+
return "在每分鐘的 %s 秒";
|
|
52
|
+
},
|
|
53
|
+
everyX0Minutes: function () {
|
|
54
|
+
return "每 %s 分鐘";
|
|
55
|
+
},
|
|
56
|
+
minutesX0ThroughX1PastTheHour: function () {
|
|
57
|
+
return "在每小時的 %s 到 %s 分鐘";
|
|
58
|
+
},
|
|
59
|
+
atX0MinutesPastTheHour: function () {
|
|
60
|
+
return "在每小時的 %s 分";
|
|
61
|
+
},
|
|
62
|
+
everyX0Hours: function () {
|
|
63
|
+
return "每 %s 小時";
|
|
64
|
+
},
|
|
65
|
+
betweenX0AndX1: function () {
|
|
66
|
+
return "在 %s 和 %s 之間";
|
|
67
|
+
},
|
|
68
|
+
atX0: function () {
|
|
69
|
+
return "在 %s";
|
|
70
|
+
},
|
|
71
|
+
commaEveryDay: function () {
|
|
72
|
+
return ", 每天";
|
|
73
|
+
},
|
|
74
|
+
commaEveryX0DaysOfTheWeek: function () {
|
|
75
|
+
return ", 每週的每 %s 天";
|
|
76
|
+
},
|
|
77
|
+
commaX0ThroughX1: function () {
|
|
78
|
+
return ", %s 到 %s";
|
|
79
|
+
},
|
|
80
|
+
commaAndX0ThroughX1: function () {
|
|
81
|
+
return ", 和 %s 到 %s";
|
|
82
|
+
},
|
|
83
|
+
first: function () {
|
|
84
|
+
return "第一個";
|
|
85
|
+
},
|
|
86
|
+
second: function () {
|
|
87
|
+
return "第二個";
|
|
88
|
+
},
|
|
89
|
+
third: function () {
|
|
90
|
+
return "第三個";
|
|
91
|
+
},
|
|
92
|
+
fourth: function () {
|
|
93
|
+
return "第四個";
|
|
94
|
+
},
|
|
95
|
+
fifth: function () {
|
|
96
|
+
return "第五個";
|
|
97
|
+
},
|
|
98
|
+
commaOnThe: function () {
|
|
99
|
+
return ", 在每月 ";
|
|
100
|
+
},
|
|
101
|
+
spaceX0OfTheMonth: function () {
|
|
102
|
+
return "%s ";
|
|
103
|
+
},
|
|
104
|
+
lastDay: function () {
|
|
105
|
+
return "最後一天";
|
|
106
|
+
},
|
|
107
|
+
commaOnTheLastX0OfTheMonth: function () {
|
|
108
|
+
return ", 每月的最後一個 %s ";
|
|
109
|
+
},
|
|
110
|
+
commaOnlyOnX0: function () {
|
|
111
|
+
return ", 僅在 %s";
|
|
112
|
+
},
|
|
113
|
+
commaAndOnX0: function () {
|
|
114
|
+
return ", 或 %s";
|
|
115
|
+
},
|
|
116
|
+
commaEveryX0Months: function () {
|
|
117
|
+
return ", 每 %s 月";
|
|
118
|
+
},
|
|
119
|
+
commaOnlyInX0: function () {
|
|
120
|
+
return ", 僅在 %s";
|
|
121
|
+
},
|
|
122
|
+
commaOnlyInMonthX0: function () {
|
|
123
|
+
return ", 僅在 %s";
|
|
124
|
+
},
|
|
125
|
+
commaOnlyInYearX0: function () {
|
|
126
|
+
return ", 僅在 %s 年";
|
|
127
|
+
},
|
|
128
|
+
commaOnTheLastDayOfTheMonth: function () {
|
|
129
|
+
return ", 每月的最後一天";
|
|
130
|
+
},
|
|
131
|
+
commaOnTheLastWeekdayOfTheMonth: function () {
|
|
132
|
+
return ", 每月的最後一個工作日";
|
|
133
|
+
},
|
|
134
|
+
commaDaysBeforeTheLastDayOfTheMonth: function () {
|
|
135
|
+
return ", %s 這個月的最後一天的前幾天";
|
|
136
|
+
},
|
|
137
|
+
firstWeekday: function () {
|
|
138
|
+
return "第一個工作日";
|
|
139
|
+
},
|
|
140
|
+
weekdayNearestDayX0: function () {
|
|
141
|
+
return "最接近 %s 號的工作日";
|
|
142
|
+
},
|
|
143
|
+
commaOnTheX0OfTheMonth: function () {
|
|
144
|
+
return ", 每月的 %s ";
|
|
145
|
+
},
|
|
146
|
+
commaEveryX0Days: function () {
|
|
147
|
+
return ", 每 %s 天";
|
|
148
|
+
},
|
|
149
|
+
commaBetweenDayX0AndX1OfTheMonth: function () {
|
|
150
|
+
return ", 在每月的 %s 和 %s 之間";
|
|
151
|
+
},
|
|
152
|
+
commaOnDayX0OfTheMonth: function () {
|
|
153
|
+
return ", 每月的 %s";
|
|
154
|
+
},
|
|
155
|
+
commaEveryX0Years: function () {
|
|
156
|
+
return ", 每 %s 年";
|
|
157
|
+
},
|
|
158
|
+
commaStartingX0: function () {
|
|
159
|
+
return ", %s 開始";
|
|
160
|
+
},
|
|
161
|
+
dayX0: function () {
|
|
162
|
+
return " %s 號";
|
|
163
|
+
},
|
|
164
|
+
daysOfTheWeek: function () {
|
|
165
|
+
return ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
|
|
166
|
+
},
|
|
167
|
+
monthsOfTheYear: function () {
|
|
168
|
+
return ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"];
|
|
169
|
+
},
|
|
170
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const crontabParser: (expression: string) => string[];
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.crontabParser = void 0;
|
|
4
|
+
var utils_1 = require("./utils");
|
|
5
|
+
var _global_1 = require("./_global");
|
|
6
|
+
var parseSpecial = function (expression) {
|
|
7
|
+
var specialExpressions = {
|
|
8
|
+
'@yearly': '0 0 1 1 *',
|
|
9
|
+
'@annually': '0 0 1 1 *',
|
|
10
|
+
'@monthly': '0 0 1 * *',
|
|
11
|
+
'@weekly': '0 0 * * 0',
|
|
12
|
+
'@daily': '0 0 * * *',
|
|
13
|
+
'@midnight': '0 0 * * *',
|
|
14
|
+
'@hourly': '0 * * * *'
|
|
15
|
+
};
|
|
16
|
+
var special = specialExpressions[expression];
|
|
17
|
+
if (!special) {
|
|
18
|
+
throw new Error('未知的特殊表达式');
|
|
19
|
+
}
|
|
20
|
+
return special;
|
|
21
|
+
};
|
|
22
|
+
var extractParts = function (expression) {
|
|
23
|
+
// if (!this.expression) {
|
|
24
|
+
// throw new Error("cron expression is empty");
|
|
25
|
+
// }
|
|
26
|
+
// split on one or more spaces
|
|
27
|
+
var parsed = expression.trim().split(/[ ]+/);
|
|
28
|
+
// sort elements with array of numbers
|
|
29
|
+
for (var i = 0; i < parsed.length; i++) {
|
|
30
|
+
if (parsed[i].includes(",")) {
|
|
31
|
+
var arrayElement = parsed[i]
|
|
32
|
+
.split(",")
|
|
33
|
+
.map(function (item) { return item.trim(); })
|
|
34
|
+
.filter(function (item) { return item !== ""; })
|
|
35
|
+
.map(function (item) { return (!isNaN(Number(item)) ? Number(item) : item); })
|
|
36
|
+
.filter(function (item) { return item !== null && item !== ""; });
|
|
37
|
+
if (arrayElement.length === 0) {
|
|
38
|
+
arrayElement.push("*");
|
|
39
|
+
}
|
|
40
|
+
arrayElement.sort(function (a, b) { return (a !== null && b !== null ? a - b : 0); });
|
|
41
|
+
parsed[i] = arrayElement.map(function (item) { return (item !== null ? item.toString() : ""); }).join(",");
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (parsed.length < 5) {
|
|
45
|
+
throw new Error("\u8868\u8FBE\u5F0F\u81F3\u5C11\u9700\u8981\u75315\u4E2A\u90E8\u5206\u7EC4\u6210");
|
|
46
|
+
}
|
|
47
|
+
else if (parsed.length == 5) {
|
|
48
|
+
// 5 part cron so shift array past seconds element
|
|
49
|
+
parsed.unshift("");
|
|
50
|
+
parsed.push("");
|
|
51
|
+
}
|
|
52
|
+
else if (parsed.length == 6) {
|
|
53
|
+
/* We will detect if this 6 part expression has a year specified and if so we will shift the parts and treat the
|
|
54
|
+
first part as a minute part rather than a second part.
|
|
55
|
+
|
|
56
|
+
Ways we detect:
|
|
57
|
+
1. Last part is a literal year (i.e. 2020)
|
|
58
|
+
2. 3rd or 5th part is specified as "?" (DOM or DOW)
|
|
59
|
+
*/
|
|
60
|
+
var isYearWithNoSecondsPart = /\d{4}$/.test(parsed[5]) || parsed[4] == "?" || parsed[2] == "?";
|
|
61
|
+
if (isYearWithNoSecondsPart) {
|
|
62
|
+
// year provided; shift parts over by one
|
|
63
|
+
parsed.unshift("");
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
// seconds provided
|
|
67
|
+
parsed.push("");
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else if (parsed.length > 7) {
|
|
71
|
+
throw new Error("\u8868\u8FBE\u5F0F\u6700\u591A\u53EA\u80FD\u75317\u4E2A\u90E8\u5206\u7EC4\u6210");
|
|
72
|
+
}
|
|
73
|
+
return parsed;
|
|
74
|
+
};
|
|
75
|
+
var normalize = function (expressionParts) {
|
|
76
|
+
// Convert ? to * for DOM and DOW
|
|
77
|
+
expressionParts[3] = expressionParts[3].replace("?", "*");
|
|
78
|
+
expressionParts[5] = expressionParts[5].replace("?", "*");
|
|
79
|
+
// Convert ? to * for Hour. ? isn't valid for hour position but we can work around it.
|
|
80
|
+
expressionParts[2] = expressionParts[2].replace("?", "*");
|
|
81
|
+
// Convert 0/, 1/ to */
|
|
82
|
+
if (expressionParts[0].indexOf("0/") == 0) {
|
|
83
|
+
// Seconds
|
|
84
|
+
expressionParts[0] = expressionParts[0].replace("0/", "*/");
|
|
85
|
+
}
|
|
86
|
+
if (expressionParts[1].indexOf("0/") == 0) {
|
|
87
|
+
// Minutes
|
|
88
|
+
expressionParts[1] = expressionParts[1].replace("0/", "*/");
|
|
89
|
+
}
|
|
90
|
+
if (expressionParts[2].indexOf("0/") == 0) {
|
|
91
|
+
// Hours
|
|
92
|
+
expressionParts[2] = expressionParts[2].replace("0/", "*/");
|
|
93
|
+
}
|
|
94
|
+
if (expressionParts[3].indexOf("1/") == 0) {
|
|
95
|
+
// DOM
|
|
96
|
+
expressionParts[3] = expressionParts[3].replace("1/", "*/");
|
|
97
|
+
}
|
|
98
|
+
if (expressionParts[4].indexOf("1/") == 0) {
|
|
99
|
+
// Month
|
|
100
|
+
expressionParts[4] = expressionParts[4].replace("1/", "*/");
|
|
101
|
+
}
|
|
102
|
+
if (expressionParts[6].indexOf("1/") == 0) {
|
|
103
|
+
// Years
|
|
104
|
+
expressionParts[6] = expressionParts[6].replace("1/", "*/");
|
|
105
|
+
}
|
|
106
|
+
// Adjust DOW based on dayOfWeekStartIndexZero option
|
|
107
|
+
// Normalized DOW: 0=Sunday/6=Saturday
|
|
108
|
+
expressionParts[5] = expressionParts[5].replace(/(^\d)|([^#/\s]\d)/g, function (t) {
|
|
109
|
+
// skip anything preceeded by # or /
|
|
110
|
+
var dowDigits = t.replace(/\D/, ""); // extract digit part (i.e. if "-2" or ",2", just take 2)
|
|
111
|
+
var dowDigitsAdjusted = dowDigits;
|
|
112
|
+
if (_global_1.dayOfWeekStartIndexZero) {
|
|
113
|
+
// "7" also means Sunday so we will convert to "0" to normalize it
|
|
114
|
+
if (dowDigits == "7") {
|
|
115
|
+
dowDigitsAdjusted = "0";
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
// If dayOfWeekStartIndexZero==false, Sunday is specified as 1 and Saturday is specified as 7.
|
|
120
|
+
// To normalize, we will shift the DOW number down so that 1 becomes 0, 2 becomes 1, and so on.
|
|
121
|
+
dowDigitsAdjusted = (parseInt(dowDigits) - 1).toString();
|
|
122
|
+
}
|
|
123
|
+
return t.replace(dowDigits, dowDigitsAdjusted);
|
|
124
|
+
});
|
|
125
|
+
// Convert DOW 'L' to '6' (Saturday)
|
|
126
|
+
if (expressionParts[5] == "L") {
|
|
127
|
+
expressionParts[5] = "6";
|
|
128
|
+
}
|
|
129
|
+
// Convert DOM '?' to '*'
|
|
130
|
+
if (expressionParts[3] == "?") {
|
|
131
|
+
expressionParts[3] = "*";
|
|
132
|
+
}
|
|
133
|
+
if (expressionParts[3].indexOf("W") > -1 &&
|
|
134
|
+
(expressionParts[3].indexOf(",") > -1 || expressionParts[3].indexOf("-") > -1)) {
|
|
135
|
+
throw new Error("The 'W' character can be specified only when the day-of-month is a single day, not a range or list of days.");
|
|
136
|
+
}
|
|
137
|
+
// Convert DOW SUN-SAT format to 0-6 format
|
|
138
|
+
var days = {
|
|
139
|
+
SUN: 0,
|
|
140
|
+
MON: 1,
|
|
141
|
+
TUE: 2,
|
|
142
|
+
WED: 3,
|
|
143
|
+
THU: 4,
|
|
144
|
+
FRI: 5,
|
|
145
|
+
SAT: 6,
|
|
146
|
+
};
|
|
147
|
+
for (var day in days) {
|
|
148
|
+
expressionParts[5] = expressionParts[5].replace(new RegExp(day, "gi"), days[day].toString());
|
|
149
|
+
}
|
|
150
|
+
// Adjust month based on monthStartIndexZero option
|
|
151
|
+
// Normalized Month: 1=JAN/12=DEC
|
|
152
|
+
expressionParts[4] = expressionParts[4].replace(/(^\d{1,2})|([^#/\s]\d{1,2})/g, function (t) {
|
|
153
|
+
// skip anything preceeded by # or /
|
|
154
|
+
var dowDigits = t.replace(/\D/, ""); // extract digit part (i.e. if "-2" or ",2", just take 2)
|
|
155
|
+
var dowDigitsAdjusted = dowDigits;
|
|
156
|
+
if (_global_1.monthStartIndexZero) {
|
|
157
|
+
// if monthStartIndexZero==true, we will shift month number up so that JAN=1 and DEC=12
|
|
158
|
+
dowDigitsAdjusted = (parseInt(dowDigits) + 1).toString();
|
|
159
|
+
}
|
|
160
|
+
return t.replace(dowDigits, dowDigitsAdjusted);
|
|
161
|
+
});
|
|
162
|
+
// Convert JAN-DEC format to 1-12 format
|
|
163
|
+
var months = {
|
|
164
|
+
JAN: 1,
|
|
165
|
+
FEB: 2,
|
|
166
|
+
MAR: 3,
|
|
167
|
+
APR: 4,
|
|
168
|
+
MAY: 5,
|
|
169
|
+
JUN: 6,
|
|
170
|
+
JUL: 7,
|
|
171
|
+
AUG: 8,
|
|
172
|
+
SEP: 9,
|
|
173
|
+
OCT: 10,
|
|
174
|
+
NOV: 11,
|
|
175
|
+
DEC: 12,
|
|
176
|
+
};
|
|
177
|
+
for (var month in months) {
|
|
178
|
+
expressionParts[4] = expressionParts[4].replace(new RegExp(month, "gi"), months[month].toString());
|
|
179
|
+
}
|
|
180
|
+
// Convert 0 second to (empty)
|
|
181
|
+
if (expressionParts[0] == "0") {
|
|
182
|
+
expressionParts[0] = "";
|
|
183
|
+
}
|
|
184
|
+
// If time increment or * (every) is specified for seconds or minutes and hours part is single item, make it a "self-range" so
|
|
185
|
+
// the expression can be interpreted as an increment / range. This will allow us to easily interpret an hour part as 'between' a second or minute duration.
|
|
186
|
+
// For example:
|
|
187
|
+
// 0-20/3 9 * * * => 0-20/3 9-9 * * * (9 => 9-9) => Every 3 minutes, minutes 0 through 20 past the hour, between 09:00 AM and 09:59 AM
|
|
188
|
+
// */5 3 * * * => */5 3-3 * * * (3 => 3-3) => Every 5 minutes, between 03:00 AM and 03:59 AM
|
|
189
|
+
if (!/\*|\-|\,|\//.test(expressionParts[2]) &&
|
|
190
|
+
(/\*|\//.test(expressionParts[1]) || /\*|\//.test(expressionParts[0]))) {
|
|
191
|
+
expressionParts[2] += "-".concat(expressionParts[2]);
|
|
192
|
+
}
|
|
193
|
+
// Loop through all parts and apply global normalization
|
|
194
|
+
for (var i = 0; i < expressionParts.length; i++) {
|
|
195
|
+
// ignore empty characters around comma
|
|
196
|
+
// if nothing left, set it to *
|
|
197
|
+
if (expressionParts[i].indexOf(",") != -1) {
|
|
198
|
+
expressionParts[i] =
|
|
199
|
+
expressionParts[i]
|
|
200
|
+
.split(",")
|
|
201
|
+
.filter(function (str) { return str !== ""; })
|
|
202
|
+
.join(",") || "*";
|
|
203
|
+
}
|
|
204
|
+
// convert all '*/1' to '*'
|
|
205
|
+
if (expressionParts[i] == "*/1") {
|
|
206
|
+
expressionParts[i] = "*";
|
|
207
|
+
}
|
|
208
|
+
/* Convert Month,DOW,Year step values with a starting value (i.e. not '*') to range expressions.
|
|
209
|
+
This allows us to reuse the range expression handling for step values.
|
|
210
|
+
|
|
211
|
+
For example:
|
|
212
|
+
- month part '3/2' will be converted to '3-12/2' (every 2 months between March and December)
|
|
213
|
+
- DOW part '3/2' will be converted to '3-6/2' (every 2 days between Tuesday and Saturday)
|
|
214
|
+
*/
|
|
215
|
+
if (expressionParts[i].indexOf("/") > -1 && !/^\*|\-|\,/.test(expressionParts[i])) {
|
|
216
|
+
var stepRangeThrough = null;
|
|
217
|
+
switch (i) {
|
|
218
|
+
case 4:
|
|
219
|
+
stepRangeThrough = "12";
|
|
220
|
+
break;
|
|
221
|
+
case 5:
|
|
222
|
+
stepRangeThrough = "6";
|
|
223
|
+
break;
|
|
224
|
+
case 6:
|
|
225
|
+
stepRangeThrough = "9999";
|
|
226
|
+
break;
|
|
227
|
+
default:
|
|
228
|
+
stepRangeThrough = null;
|
|
229
|
+
break;
|
|
230
|
+
}
|
|
231
|
+
if (stepRangeThrough !== null) {
|
|
232
|
+
var parts = expressionParts[i].split("/");
|
|
233
|
+
expressionParts[i] = "".concat(parts[0], "-").concat(stepRangeThrough, "/").concat(parts[1]);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
};
|
|
238
|
+
var crontabParser = function (expression) {
|
|
239
|
+
var parsed;
|
|
240
|
+
if (expression.startsWith('@')) {
|
|
241
|
+
var special = parseSpecial(expression);
|
|
242
|
+
parsed = extractParts(special);
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
parsed = extractParts(expression);
|
|
246
|
+
}
|
|
247
|
+
normalize(parsed);
|
|
248
|
+
(0, utils_1.validate)(parsed);
|
|
249
|
+
return parsed;
|
|
250
|
+
};
|
|
251
|
+
exports.crontabParser = crontabParser;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Options } from "./type";
|
|
2
|
+
export declare const crontabRender: (expression: string, options?: Options) => string;
|
|
3
|
+
export declare class ExpressionDescriptor {
|
|
4
|
+
specialCharacters: string[];
|
|
5
|
+
expression: string;
|
|
6
|
+
expressionParts: string[];
|
|
7
|
+
options: Options;
|
|
8
|
+
constructor(expression: string, options: Options);
|
|
9
|
+
getFullDescription(): string;
|
|
10
|
+
protected getTimeOfDayDescription(): string;
|
|
11
|
+
protected getSecondsDescription(): string;
|
|
12
|
+
protected getMinutesDescription(): string;
|
|
13
|
+
protected getHoursDescription(): string;
|
|
14
|
+
protected getDayOfWeekDescription(): string;
|
|
15
|
+
protected getMonthDescription(): string;
|
|
16
|
+
protected getDayOfMonthDescription(): string | null;
|
|
17
|
+
protected getYearDescription(): string;
|
|
18
|
+
protected getSegmentDescription(expression: string, allDescription: string, getSingleItemDescription: (t: string, form?: number) => string, getIncrementDescriptionFormat: (t: string) => string, getRangeDescriptionFormat: (t: string) => string, getDescriptionFormat: (t: string) => string): string | null;
|
|
19
|
+
protected generateRangeSegmentDescription(rangeExpression: string, getRangeDescriptionFormat: (t: string) => string, getSingleItemDescription: (t: string, form?: number) => string): string;
|
|
20
|
+
protected formatTime(hourExpression: string, minuteExpression: string, secondExpression: string): string;
|
|
21
|
+
protected transformVerbosity(description: string, useVerboseFormat: boolean): string;
|
|
22
|
+
private getPeriod;
|
|
23
|
+
}
|