amis 1.9.1-beta.0 → 1.9.1-beta.4
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/RootRenderer.js +10 -2
- package/lib/RootRenderer.js.map +2 -2
- package/lib/Schema.d.ts +3 -2
- package/lib/Schema.js.map +1 -1
- package/lib/SchemaRenderer.js +6 -9
- package/lib/SchemaRenderer.js.map +2 -2
- package/lib/actions/CmptAction.js +4 -4
- package/lib/actions/CmptAction.js.map +2 -2
- package/lib/components/Button.d.ts +11 -10
- package/lib/components/Button.js +2 -2
- package/lib/components/Button.js.map +2 -2
- package/lib/components/CalendarMobile.d.ts +40 -40
- package/lib/components/Checkbox.js +1 -1
- package/lib/components/Checkbox.js.map +2 -2
- package/lib/components/ContextMenu.d.ts +4 -0
- package/lib/components/ContextMenu.js +23 -7
- package/lib/components/ContextMenu.js.map +2 -2
- package/lib/components/DatePicker.d.ts +40 -40
- package/lib/components/DateRangePicker.d.ts +40 -40
- package/lib/components/Form.d.ts +22 -0
- package/lib/components/Form.js +44 -0
- package/lib/components/Form.js.map +13 -0
- package/lib/components/FormField.d.ts +65 -0
- package/lib/components/FormField.js +48 -0
- package/lib/components/FormField.js.map +13 -0
- package/lib/components/InputBox.d.ts +10 -10
- package/lib/components/InputBox.js +4 -3
- package/lib/components/InputBox.js.map +2 -2
- package/lib/components/InputBoxWithSuggestion.d.ts +280 -0
- package/lib/components/InputBoxWithSuggestion.js +65 -0
- package/lib/components/InputBoxWithSuggestion.js.map +13 -0
- package/lib/components/ListGroup.d.ts +10 -10
- package/lib/components/PickerContainer.d.ts +4 -2
- package/lib/components/PickerContainer.js +28 -5
- package/lib/components/PickerContainer.js.map +2 -2
- package/lib/components/Radios.d.ts +10 -10
- package/lib/components/ResultBox.d.ts +40 -40
- package/lib/components/Select.d.ts +195 -202
- package/lib/components/Select.js +7 -3
- package/lib/components/Select.js.map +2 -2
- package/lib/components/Textarea.d.ts +568 -2
- package/lib/components/Textarea.js +129 -1
- package/lib/components/Textarea.js.map +2 -2
- package/lib/components/Toast.js +11 -9
- package/lib/components/Toast.js.map +2 -2
- package/lib/components/UserSelect.d.ts +500 -0
- package/lib/components/UserSelect.js +559 -0
- package/lib/components/UserSelect.js.map +13 -0
- package/lib/components/UserTabSelect.d.ts +320 -0
- package/lib/components/UserTabSelect.js +163 -0
- package/lib/components/UserTabSelect.js.map +13 -0
- package/lib/components/WithRemoteConfig.d.ts +7 -0
- package/lib/components/WithRemoteConfig.js +22 -13
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/components/calendar/DaysView.d.ts +26 -1
- package/lib/components/calendar/DaysView.js +60 -19
- package/lib/components/calendar/DaysView.js.map +2 -2
- package/lib/components/calendar/TimeView.d.ts +1 -1
- package/lib/components/calendar/TimeView.js +10 -3
- package/lib/components/calendar/TimeView.js.map +2 -2
- package/lib/components/formula/Picker.js +4 -4
- package/lib/components/formula/Picker.js.map +2 -2
- package/lib/components/icons.d.ts +7 -1
- package/lib/components/icons.js +17 -1
- package/lib/components/icons.js.map +2 -2
- package/lib/components/index.d.ts +2 -1
- package/lib/components/index.js +3 -1
- package/lib/components/index.js.map +2 -2
- package/lib/components/json-schema/Array.d.ts +3 -0
- package/lib/components/json-schema/Array.js +125 -0
- package/lib/components/json-schema/Array.js.map +13 -0
- package/lib/components/json-schema/Item.d.ts +3 -0
- package/lib/components/json-schema/Item.js +34 -0
- package/lib/components/json-schema/Item.js.map +13 -0
- package/lib/components/json-schema/Object.d.ts +3 -0
- package/lib/components/json-schema/Object.js +178 -0
- package/lib/components/json-schema/Object.js.map +13 -0
- package/lib/components/json-schema/index.d.ts +279 -0
- package/lib/components/json-schema/index.js +16 -0
- package/lib/components/json-schema/index.js.map +13 -0
- package/lib/components/schema-editor/Array.js +2 -2
- package/lib/components/schema-editor/Array.js.map +2 -2
- package/lib/components/schema-editor/Common.d.ts +2 -0
- package/lib/components/schema-editor/Common.js +39 -3
- package/lib/components/schema-editor/Common.js.map +2 -2
- package/lib/components/schema-editor/Object.js +2 -2
- package/lib/components/schema-editor/Object.js.map +2 -2
- package/lib/components/schema-editor/index.d.ts +45 -41
- package/lib/components/schema-editor/index.js +5 -5
- package/lib/components/schema-editor/index.js.map +2 -2
- package/lib/components/table/ItemActionsWrapper.d.ts +10 -0
- package/lib/components/table/ItemActionsWrapper.js +25 -0
- package/lib/components/table/ItemActionsWrapper.js.map +13 -0
- package/lib/components/table/index.d.ts +48 -41
- package/lib/components/table/index.js +46 -18
- package/lib/components/table/index.js.map +2 -2
- package/lib/helper.css +125 -124
- package/lib/helper.css.map +1 -1
- package/lib/hooks/use-validation-resolver.d.ts +1 -0
- package/lib/hooks/use-validation-resolver.js +49 -0
- package/lib/hooks/use-validation-resolver.js.map +13 -0
- package/lib/icons/department.js +17 -0
- package/lib/icons/menu.js +9 -0
- package/lib/icons/post.js +15 -0
- package/lib/icons/role.js +14 -0
- package/lib/icons/user-remove.js +12 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +3 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +11 -1
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +12 -1
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +14 -3
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.js +25 -11
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/CRUD.js +5 -1
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Dialog.js +9 -3
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/Drawer.js +5 -1
- package/lib/renderers/Drawer.js.map +2 -2
- package/lib/renderers/Form/InputDate.d.ts +2 -2
- package/lib/renderers/Form/InputDate.js.map +2 -2
- package/lib/renderers/Form/JSONSchema.d.ts +23 -0
- package/lib/renderers/Form/JSONSchema.js +44 -0
- package/lib/renderers/Form/JSONSchema.js.map +13 -0
- package/lib/renderers/Form/JSONSchemaEditor.d.ts +2 -3
- package/lib/renderers/Form/JSONSchemaEditor.js +9 -24
- package/lib/renderers/Form/JSONSchemaEditor.js.map +2 -2
- package/lib/renderers/Form/Options.js +11 -5
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/Textarea.d.ts +1 -8
- package/lib/renderers/Form/Textarea.js +11 -75
- package/lib/renderers/Form/Textarea.js.map +2 -2
- package/lib/renderers/Form/UserSelect.d.ts +54 -0
- package/lib/renderers/Form/UserSelect.js +197 -0
- package/lib/renderers/Form/UserSelect.js.map +13 -0
- package/lib/renderers/Form/index.d.ts +1 -1
- package/lib/renderers/Form/index.js +88 -42
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/Log.d.ts +28 -0
- package/lib/renderers/Log.js +110 -20
- package/lib/renderers/Log.js.map +2 -2
- package/lib/renderers/Page.js +5 -1
- package/lib/renderers/Page.js.map +2 -2
- package/lib/renderers/Service.js +5 -1
- package/lib/renderers/Service.js.map +2 -2
- package/lib/renderers/Table-v2/index.d.ts +14 -2
- package/lib/renderers/Table-v2/index.js +33 -3
- package/lib/renderers/Table-v2/index.js.map +2 -2
- package/lib/renderers/Wizard.js +37 -14
- package/lib/renderers/Wizard.js.map +2 -2
- package/lib/store/form.js +65 -45
- package/lib/store/form.js.map +2 -2
- package/lib/themes/ang-ie11.css +576 -24
- package/lib/themes/ang.css +553 -12
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +576 -24
- package/lib/themes/antd.css +553 -12
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +576 -24
- package/lib/themes/cxd.css +553 -12
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +576 -24
- package/lib/themes/dark.css +553 -12
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default-ie11.css +576 -24
- package/lib/themes/default.css +553 -12
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/api.js +1 -1
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/renderer-event.js.map +2 -2
- package/package.json +2 -1
- package/schema.json +552 -5
- package/scss/_properties.scss +20 -8
- package/scss/components/_input-box.scss +22 -1
- package/scss/components/_json-schema.scss +124 -0
- package/scss/components/_log.scss +37 -5
- package/scss/components/form/_date-range.scss +1 -0
- package/scss/components/form/_select.scss +9 -0
- package/scss/components/form/_transfer.scss +19 -3
- package/scss/components/form/_user-select.scss +422 -0
- package/scss/helper/background/_background-color.scss +125 -124
- package/scss/themes/_common.scss +2 -0
- package/sdk/ang-ie11.css +670 -24
- package/sdk/ang.css +647 -12
- package/sdk/antd-ie11.css +670 -24
- package/sdk/antd.css +647 -12
- package/sdk/barcode.js +51 -51
- package/sdk/charts.js +14 -14
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +670 -24
- package/sdk/cxd.css +647 -12
- package/sdk/dark-ie11.css +670 -24
- package/sdk/dark.css +647 -12
- package/sdk/exceljs.js +1 -1
- package/sdk/helper.css +125 -124
- package/sdk/helper.css.map +1 -1
- package/sdk/locale/de-DE.js +11 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +16 -16
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +670 -24
- package/sdk/sdk.css +647 -12
- package/sdk/sdk.js +1653 -1637
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/RootRenderer.tsx +27 -15
- package/src/Schema.ts +5 -1
- package/src/SchemaRenderer.tsx +1 -4
- package/src/actions/CmptAction.ts +4 -4
- package/src/components/Button.tsx +3 -0
- package/src/components/Checkbox.tsx +2 -1
- package/src/components/ContextMenu.tsx +25 -7
- package/src/components/Form.tsx +70 -0
- package/src/components/FormField.tsx +127 -0
- package/src/components/InputBox.tsx +4 -1
- package/src/components/InputBoxWithSuggestion.tsx +113 -0
- package/src/components/PickerContainer.tsx +20 -5
- package/src/components/Select.tsx +18 -10
- package/src/components/Textarea.tsx +234 -2
- package/src/components/Toast.tsx +19 -18
- package/src/components/UserSelect.tsx +850 -0
- package/src/components/UserTabSelect.tsx +261 -0
- package/src/components/WithRemoteConfig.tsx +35 -11
- package/src/components/calendar/DaysView.tsx +117 -49
- package/src/components/calendar/TimeView.tsx +11 -6
- package/src/components/formula/Picker.tsx +2 -1
- package/src/components/icons.tsx +17 -1
- package/src/components/index.tsx +3 -1
- package/src/components/json-schema/Array.tsx +216 -0
- package/src/components/json-schema/Item.tsx +47 -0
- package/src/components/json-schema/Object.tsx +339 -0
- package/src/components/json-schema/index.tsx +44 -0
- package/src/components/schema-editor/Array.tsx +3 -1
- package/src/components/schema-editor/Common.tsx +61 -4
- package/src/components/schema-editor/Object.tsx +3 -1
- package/src/components/schema-editor/index.tsx +12 -5
- package/src/components/table/ItemActionsWrapper.tsx +32 -0
- package/src/components/table/index.tsx +115 -58
- package/src/hooks/use-validation-resolver.ts +45 -0
- package/src/icons/department.svg +17 -0
- package/src/icons/menu.svg +2 -0
- package/src/icons/post.svg +15 -0
- package/src/icons/role.svg +14 -0
- package/src/icons/user-remove.svg +12 -0
- package/src/index.tsx +2 -0
- package/src/locale/de-DE.ts +11 -1
- package/src/locale/en-US.ts +12 -1
- package/src/locale/zh-CN.ts +14 -3
- package/src/renderers/Action.tsx +10 -9
- package/src/renderers/CRUD.tsx +5 -1
- package/src/renderers/Dialog.tsx +9 -3
- package/src/renderers/Drawer.tsx +5 -1
- package/src/renderers/Form/InputDate.tsx +9 -4
- package/src/renderers/Form/JSONSchema.tsx +56 -0
- package/src/renderers/Form/JSONSchemaEditor.tsx +8 -27
- package/src/renderers/Form/Options.tsx +17 -7
- package/src/renderers/Form/Textarea.tsx +7 -117
- package/src/renderers/Form/UserSelect.tsx +263 -0
- package/src/renderers/Form/index.tsx +28 -18
- package/src/renderers/Form/wrapControl.tsx +0 -1
- package/src/renderers/Log.tsx +213 -19
- package/src/renderers/Page.tsx +6 -1
- package/src/renderers/Service.tsx +5 -1
- package/src/renderers/Table-v2/index.tsx +65 -2
- package/src/renderers/Wizard.tsx +24 -10
- package/src/store/form.ts +24 -17
- package/src/utils/api.ts +1 -1
- package/src/utils/renderer-event.ts +0 -2
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/calendar/DaysView.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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",
|
9
|
+
"mappings": ";AAAA,2CAA2C;;;;AAE3C,+DAA4B;AAC5B,6DAA0B;AAC1B,qEAAkC;AAClC,4EAAyC;AACzC,oEAAiC;AACjC,uCAAqD;AAErD,6CAAuE;AACvE,kEAA+B;AAgE/B;IAAoC,+CAAoC;IAkHtE,wBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SA4Bb;QA9ID,qBAAe,GAAG;YAChB,KAAK,EAAE;gBACL,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,CAAC;aACR;YACD,OAAO,EAAE;gBACP,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,CAAC;aACR;YACD,OAAO,EAAE;gBACP,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,CAAC;aACR;YACD,YAAY,EAAE;gBACZ,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,CAAC;aACR;SACF,CAAC;QA0JF,wBAAkB,GAAG,UAAC,KAA4B;YAChD,eAAe;YACf,IAAI,KAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC9B,IAAM,QAAQ,GAAG,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAC7C,IAAM,WAAW,GAAG,KAAI,CAAC,KAAK,CAAC,YAAY,IAAI,QAAQ,CAAC;gBAExD,IAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;gBAC3C,IAAI,QAAQ,GAAG,CAAC,CAAC;gBAEjB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACvC,QAAQ,GAAG,CAAC,CAAC;iBACd;gBACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACvC,QAAQ,GAAG,CAAC,CAAC,CAAC;iBACf;gBAED,QAAQ;qBACL,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC;qBAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAW,EAAE,EAAE,CAAC,CAAC;qBAC/D,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;qBAC1B,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;qBAC9B,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;qBAC9B,YAAY,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;gBAE5C,KAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;oBAC1B,QAAQ,UAAA;oBACR,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE;iBAC/B,CAAC,CAAC;gBACH,OAAO;aACR;YAED,KAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,cAAQ,GAAG;YACH,IAAA,KAAuC,KAAI,CAAC,KAAK,EAAhD,YAAY,kBAAA,EAAE,QAAQ,cAAA,EAAE,UAAU,gBAAc,CAAC;YACxD,OAAO,CACL,uCAAK,GAAG,EAAC,KAAK,EAAC,SAAS,EAAC,aAAa,IACnC,CAAC,YAAY,IAAI,QAAQ,IAAI,IAAA,gBAAM,GAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CACtD,CACP,CAAC;QACJ,CAAC,CAAC;QAEF,aAAO,GAAG,UACR,IAAsD,EACtD,KAAa;YAEb,IAAM,IAAI,GAAG,CAAC,KAAI,CAAC,KAAK,CAAC,YAAY,IAAI,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;YACtE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;YAElB,KAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBAC1B,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE;gBACtB,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE;aAC3B,CAAC,CAAC;YAEH,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC/B,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC3B;QACH,CAAC,CAAC;QAEF,iBAAW,GAAG,UACZ,IAAsD,EACtD,KAAa,EACb,CAAS,EACT,KAAc;;YAEd,IAAM,GAAG,GAAQ,QAAQ,CAAC,cAAc,CACtC,UAAG,KAAI,CAAC,KAAK,CAAC,SAAS,cAAI,CAAC,WAAQ,CACrC,CAAC;YACI,IAAA,KAAc,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAvC,GAAG,SAAA,EAAE,IAAI,UAA8B,CAAC;YAC/C,IAAM,MAAM,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC;YACpC,IAAM,MAAM,GAAG,EAAE,CAAC,CAAC,cAAc;YAEjC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,UAAU,0CAAE,QAAQ,CAAC;gBACxB,GAAG,EAAE,MAAM,GAAG,MAAM;gBACpB,QAAQ,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;aAC/C,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,aAAO,GAAG;;YACR,IAAI,IAAI,GAAG,CAAC,KAAI,CAAC,KAAK,CAAC,YAAY,IAAI,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;YAEpE,qCAAqC;YACrC,IAAI,CAAA,MAAA,KAAI,CAAC,KAAK,CAAC,OAAO,0CAAE,OAAO,EAAE,MAAI,MAAA,KAAI,CAAC,KAAK,CAAC,OAAO,0CAAE,OAAO,CAAC,IAAI,CAAC,CAAA,EAAE;gBACtE,IAAI,GAAG,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;aACnC;YAED,KAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBAC1B,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1B,KAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC;QAEF,YAAM,GAAG;YACP,KAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC;QAEF,eAAS,GAAG,UAAC,KAAU,EAAE,WAA0B;YACjD,IAAI,KAAI,CAAC,KAAK,CAAC,SAAS,EAAE;gBACxB,IAAI,UAAQ,GAAU,EAAE,CAAC;gBACzB,KAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,UAAC,IAAS;oBACrC,IACE,WAAW,CAAC,aAAa,CACvB,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAC3C;wBACD,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EACxC;wBACA,UAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBACrB;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,UAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACvB,IAAM,IAAE,GAAG,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC;oBACjC,IAAM,EAAE,GAAG,KAAI,CAAC,KAAK,CAAC,SAAS,CAAC;oBAChC,OAAO;oBACP,IAAM,cAAY,GAAG;wBACnB,YAAY,EAAE,UAAQ,CAAC,GAAG,CAAC,UAAC,IAAS;4BACnC,uDACK,IAAI,KACP,IAAI,EACF,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC;oCACpD,KAAK;oCACL,IAAA,gBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,IACpD;wBACJ,CAAC,CAAC;wBACF,WAAW,aAAA;qBACZ,CAAC;oBAEF,OAAO;oBACP,IAAI,KAAI,CAAC,KAAK,CAAC,SAAS,EAAE;wBACxB,IAAI,cAAY,GAAU,EAAE,CAAC;wBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BACxC,IAAI,cAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gCAC3B,MAAM;6BACP;4BACD,IAAI,IAAA,gBAAM,EAAC,UAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE;gCAC5D,cAAY,CAAC,IAAI,CAAC,UAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;6BAChC;iCAAM,IAAI,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gCACtC,IAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,IAAA,gBAAM,EAAC,UAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,EACzD,CAAC,CACF,CAAC;gCACF,WAAW;gCACX,cAAY,CAAC,IAAI,iDACZ,UAAQ,CAAC,CAAC,CAAC,KACd,KAAK,OAAA,EACL,SAAS,EAAE,IAAA,gBAAM,EAAC,WAAW,CAAC,EAC9B,OAAO,EAAE,IAAA,gBAAM,EAAC,WAAW,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,IACnD,CAAC;gCACH,UAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,UAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;6BAC9D;iCAAM;gCACL,UAAU;gCACV,cAAY,CAAC,IAAI,CAAC;oCAChB,KAAK,EAAE,CAAC;oCACR,SAAS,EAAE,gBAAgB;oCAC3B,OAAO,EAAE,EAAE;oCACX,MAAM,EAAE,UAAQ,CAAC,CAAC,CAAC,CAAC,MAAM;iCAC3B,CAAC,CAAC;6BACJ;yBACF;wBACD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,CAAS;4BAC1B,KAAK;4BACL,IAAI,SAAS,GAAG,IAAA,mBAAS,EACvB,cAAY,EACZ,UAAC,IAAS,IAAK,OAAA,IAAI,CAAC,MAAM,KAAK,CAAC,EAAjB,CAAiB,CACjC,CAAC;4BACF,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;gCACpB,SAAS,GAAG,IAAA,mBAAS,EACnB,cAAY,EACZ,UAAC,IAAS,IAAK,OAAA,IAAI,CAAC,MAAM,KAAK,SAAS,EAAzB,CAAyB,CACzC,CAAC;6BACH;4BACD,IAAI,SAAS,GAAG,CAAC,CAAC,IAAI,SAAS,KAAK,CAAC,EAAE;gCACrC,IAAI,IAAI,GAAG,cAAY,CAAC,CAAC,CAAC,CAAC;gCAC3B,cAAY,CAAC,CAAC,CAAC,GAAG,cAAY,CAAC,SAAS,CAAC,CAAC;gCAC1C,cAAY,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;6BAChC;4BACD,IAAI,cAAY,CAAC,CAAC,CAAC,IAAI,cAAY,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE;gCAC3D,cAAY,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;6BAC5B;wBACH,CAAC,CAAC,CAAC;wBACH,SAAS;wBACT,cAAY,GAAG,cAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACxC,IAAM,WAAW,GAAG,cAAY,CAAC,GAAG,CAAC,UAAC,IAAS,EAAE,KAAa;4BAC5D,IAAM,KAAK,GACT,IAAI,CAAC,KAAK;gCACV,IAAI,CAAC,GAAG,CACN,IAAA,gBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAC7D,CAAC,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CACrC,CAAC;4BACJ,OAAO,CACL,uCACE,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,SAAS,GAAG,KAAK,EAClC,SAAS,EAAE,IAAE,CACX,yCAAyC,EACzC,IAAI,CAAC,SAAS,CACf,EACD,KAAK,EAAE,EAAC,KAAK,EAAE,KAAK,GAAG,KAAK,EAAC,EAC7B,OAAO,EAAE;oCACP,OAAA,KAAI,CAAC,KAAK,CAAC,eAAe;wCAC1B,KAAI,CAAC,KAAK,CAAC,eAAe,CAAC,cAAY,CAAC;gCADxC,CACwC;gCAG1C,uCAAK,SAAS,EAAE,IAAE,CAAC,gCAAgC,CAAC,IACjD,IAAI,CAAC,OAAO,CACT,CACF,CACP,CAAC;wBACJ,CAAC,CAAC,CAAC;wBACH,OAAO,CACL,8DAAQ,KAAK;4BACX,uCAAK,SAAS,EAAE,IAAE,CAAC,iCAAiC,CAAC;gCACnD,uCAAK,SAAS,EAAE,IAAE,CAAC,wCAAwC,CAAC,IACzD,WAAW,CAAC,IAAI,EAAE,CACf;gCACL,WAAW;gCACX,UAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CACtB,uCAAK,SAAS,EAAE,IAAE,CAAC,wCAAwC,CAAC;oCACzD,UAAQ,CAAC,MAAM,GAAG,CAAC;;oCAAG,EAAE,CAAC,MAAM,CAAC,CAC7B,CACP,CACG,CACH,CACN,CAAC;qBACH;oBAED,OAAO;oBACP,IAAM,YAAY,GAAG,CACnB,wCACE,SAAS,EAAE,IAAE,CAAC,uBAAuB,EAAE,UAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAC7D,OAAO,EAAE;4BACP,OAAA,KAAI,CAAC,KAAK,CAAC,eAAe;gCAC1B,KAAI,CAAC,KAAK,CAAC,eAAe,CAAC,cAAY,CAAC;wBADxC,CACwC,GAEpC,CACT,CAAC;oBACF,OAAO,CACL,8DAAQ,KAAK;wBACV,WAAW,CAAC,IAAI,EAAE;wBAClB,YAAY,CACV,CACN,CAAC;iBACH;aACF;YACD,OAAO,8DAAQ,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,CAAM,CAAC;QAClD,CAAC,CAAC;QAeF,iBAAW,GAAG;YACN,IAAA,KAMF,KAAI,CAAC,KAAK,EALZ,UAAU,gBAAA,EACV,YAAY,kBAAA,EACZ,QAAQ,cAAA,EACR,SAAS,eAAA,EACG,EAAE,gBACF,CAAC;YAEf,IAAM,IAAI,GAAG,YAAY,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC5E,IAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,IAAM,eAAe,GAAG,KAAI,CAAC,eAAe,CAAC;YAE7C,MAAM,CAAC,IAAI,CAAC,KAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAE7B,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,MAAM,EAAE,CAAC;gBACtC,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;oBAC5B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;wBAClB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;4BAClB,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,EAAE,CAAC;gBACP,IAAI,IAAI,EAAE;oBACR,IAAM,KAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;oBACtC,IAAM,KAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;oBACtC,IAAM,SAAO,GAAG,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;oBAC/C,IAAM,WAAS,GAAG;wBAChB,KAAK,EAAE,IAAI;wBACX,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,IAAI;qBACd,CAAC;oBAEF,MAAM,CAAC,IAAI,CACT,8BAAC,mBAAS,IACR,GAAG,EAAE,CAAC,GAAG,OAAO,EAChB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAS,CAAC,IAAI,CAAC,CAAC,IAEvC,UAAC,EAAoC;4BAAnC,aAAa,mBAAA,EAAE,QAAQ,cAAA,EAAE,SAAS,eAAA;wBACnC,IAAM,UAAU,GAAG,aAAa,CAAC;4BAC/B,OAAO,EAAE,cAAM,OAAA,QAAQ,EAAE,EAAV,CAAU;4BACzB,QAAQ,EAAE,UAAC,CAAM;gCACf,OAAA,KAAI,CAAC,OAAO,CACV,IAAI,EACJ,IAAI,CAAC,GAAG,CACN,KAAG,EACH,IAAI,CAAC,GAAG,CACN,QAAQ,CACN,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EACxC,EAAE,CACH,IAAI,CAAC,EACN,KAAG,CACJ,CACF,CACF;4BAZD,CAYC;yBACJ,CAAC,CAAC;wBACH,OAAO,CACL,uCACE,SAAS,EAAE,EAAE,CACX,sBAAsB,EACtB,wBAAwB,CACzB;4BAUD,uCACE,SAAS,EAAE,EAAE,CACX,oBAAoB,EACpB,IAAI,KAAK,OAAO;oCACd,CAAC,CAAC,yBAAyB;oCAC3B,CAAC,CAAC,yBAAyB,CAC9B,EACD,EAAE,EAAE,UAAG,KAAI,CAAC,KAAK,CAAC,SAAS,cAAI,CAAC,WAAQ,IAEvC,SAAO,CAAC,GAAG,CAAC,UAAA,MAAM;;gCACjB,OAAO,CACL,uCACE,GAAG,EAAE,MAAM,CAAC,KAAK,EACjB,SAAS,EAAE,EAAE,CAAC,wBAAwB,EAAE;wCACtC,cAAc,EAAE,YAAY;4CAC1B,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,WAAS,CAAC,IAAI,CAAC,CAAC;4CAC/C,CAAC,CAAC,MAAM,CAAC,KAAK,MAAK,MAAA,SAAO,aAAP,SAAO,uBAAP,SAAO,CAAG,CAAC,CAAC,0CAAE,KAAK,CAAA;qCACzC,CAAC,EACF,OAAO,EAAE;wCACP,KAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;wCAC/C,KAAI,CAAC,WAAW,CACd,IAAI,EACJ,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,EAC1B,CAAC,CACF,CAAC;wCACF,SAAS,EAAE,CAAC;oCACd,CAAC,IAEA,MAAM,CAAC,KAAK,CACT,CACP,CAAC;4BACJ,CAAC,CAAC,CACE,CACF,CACP,CAAC;oBACJ,CAAC,CACS,CACb,CAAC;oBACF,MAAM,CAAC,IAAI,CAAC,wCAAM,GAAG,EAAE,CAAC,GAAG,SAAS,GAAS,CAAC,CAAC;iBAChD;YACH,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;YAC9B,OAAO,2CAAM,MAAM,CAAO,CAAC;QAC7B,CAAC,CAAC;QAEF,kBAAY,GAAG;YACb,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC/B,OAAO,IAAI,CAAC;aACb;YAEK,IAAA,KAAkC,KAAI,CAAC,KAAK,EAAhC,EAAE,eAAA,EAAc,EAAE,gBAAc,CAAC;YAEnD,OAAO,CACL,yCAAO,GAAG,EAAC,IAAI;gBACb;oBACE,sCAAI,OAAO,EAAE,CAAC,IACX,KAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAC5B,uCAAK,GAAG,EAAC,QAAQ,EAAC,SAAS,EAAC,YAAY;wBACtC,qCACE,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAC1C,OAAO,EAAE,KAAI,CAAC,MAAM,IAEnB,EAAE,CAAC,QAAQ,CAAC,CACX;wBACJ,qCACE,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EACpD,OAAO,EAAE,KAAI,CAAC,OAAO,IAEpB,EAAE,CAAC,SAAS,CAAC,CACZ,CACA,CACP,CAAC,CAAC,CAAC,IAAI,CACL,CACF,CACC,CACT,CAAC;QACJ,CAAC,CAAC;QAEF,qBAAe,GAAG,UAAC,KAAe;YAChC,KAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxE,CAAC,CAAC;QAEF,oBAAc,GAAG,UAAC,KAAe,EAAE,KAAa;YACxC,IAAA,KAA2B,KAAI,CAAC,KAAK,EAApC,YAAY,kBAAA,EAAE,QAAQ,cAAc,CAAC;YAE5C,yBAAyB;YACzB,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE;gBAC9B,IAAM,WAAW,GAAG,CAAC,YAAY,IAAI,QAAQ,IAAI,IAAA,gBAAM,GAAE,CAAC,CAAC,KAAK,EAAE,CAAC;gBAEnE,kBAAkB;gBAClB,IAAM,UAAU,GAAG,IAAA,kCAAyB,EAC1C,KAAK,EACL,CAAC,MAAM,EAAE,OAAO,CAAC,EACjB,WAAW,CACZ,CAAC;gBACF,IAAM,YAAY,GAAG,KAAI,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBAC5D,KAAI,CAAC,QAAQ,CAAC;oBACZ,OAAO,EAAE,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE,YAAY,CAAC;oBAC9D,WAAW,EAAE,KAAK;iBACnB,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;QAEF,kBAAY,GAAG;YACN,IAAW,EAAE,GAAI,KAAI,CAAC,KAAK,UAAd,CAAe;YACnC,IAAM,KAAK,GACT,KAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC5E,OAAO,CACL,8BAAC,gBAAM,IACL,SAAS,EAAE,KAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,MAAM,EAAE,KAAI,CAAC,KAAK,CAAC,MAAM,EACzB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,KAAI,CAAC,KAAK,CAAC,OAAO,EAC3B,KAAK,EAAE,KAAI,CAAC,KAAK,CAAC,WAAW,EAC7B,QAAQ,EAAE,KAAI,CAAC,cAAc,EAC7B,SAAS,EAAE,KAAI,CAAC,eAAe,EAC/B,OAAO,EAAE,KAAI,CAAC,MAAM,GACpB,CACH,CAAC;QACJ,CAAC,CAAC;QA9fO,IAAA,YAAY,GAA0B,KAAK,aAA/B,EAAE,QAAQ,GAAgB,KAAK,SAArB,EAAE,UAAU,GAAI,KAAK,WAAT,CAAU;QACnD,IAAM,WAAW,GAAG,YAAY,IAAI,IAAA,gBAAM,GAAE,CAAC;QAE7C,IAAM,KAAK,GAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,MAAc;YAC3C,IAAM,IAAI,GAAkB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC3C,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;oBAClB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;wBAClB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAM,YAAY,GAAG,KAAI,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAM,OAAO,GAAG,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC3D,KAAI,CAAC,KAAK,GAAG;YACX,OAAO,SAAA;YACP,KAAK,OAAA;YACL,WAAW,EAAE,WAAW,CAAC,OAAO,EAAE;YAClC,SAAS,EAAE,CAAC;SACb,CAAC;QAEF,IAAI,KAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9B,KAAI,CAAC,eAAe,GAAG,IAAA,eAAK,EAAC,KAAI,CAAC,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;SAC3E;;IACH,CAAC;IAhHD,sCAAa,GAAb,UAAc,MAAW;QACvB,IAAI,IAAI,GAAG,MAAM,CAAC,YAAY,EAC5B,KAAK,GAAG,MAAM,CAAC,cAAc,EAAE,EAC/B,GAAG,GAAU,EAAE,EACf,CAAC,GAAG,CAAC,CAAC;QACR,IAAI,CAAC,OAAO,CAAC,UAAU,GAAQ;YAC7B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAED,wCAAe,GAAf;QACE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,mCAAU,GAAV;QACE,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC5B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,EACrE,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,EAC9C,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,EACzB,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE,EAC3B,KAAK,GAAG,EAAE,EACV,IAAI,GAAG,EAAE,EACT,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EACjD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,eAAe,EACxD,OAAO,EACP,UAAU,EACV,QAAQ,EACR,WAAW,CAAC;QAEd,4CAA4C;QAC5C,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,OAAO,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAE7C,OAAO,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAClC,OAAO,GAAG,QAAQ,CAAC;YACnB,WAAW,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;YAEhC,IACE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,WAAW;gBAC/B,SAAS,CAAC,KAAK,EAAE,GAAG,YAAY,CAAC;gBACnC,SAAS,CAAC,IAAI,EAAE,GAAG,WAAW;gBAE9B,OAAO,IAAI,SAAS,CAAC;iBAClB,IACH,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,WAAW;gBAC/B,SAAS,CAAC,KAAK,EAAE,GAAG,YAAY,CAAC;gBACnC,SAAS,CAAC,IAAI,EAAE,GAAG,WAAW;gBAE9B,OAAO,IAAI,SAAS,CAAC;YAEvB,IAAI,QAAQ,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;gBAC/C,OAAO,IAAI,YAAY,CAAC;YAE1B,IAAI,SAAS,CAAC,MAAM,CAAC,IAAA,gBAAM,GAAE,EAAE,KAAK,CAAC;gBAAE,OAAO,IAAI,WAAW,CAAC;YAE9D,UAAU,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,UAAU;gBAAE,OAAO,IAAI,cAAc,CAAC;YAE1C,QAAQ,GAAG;gBACT,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC9B,YAAY,EAAE,SAAS,CAAC,IAAI,EAAE;gBAC9B,WAAW,EAAE,OAAO;aACrB,CAAC;YAEF,IAAI,CAAC,UAAU;gBAAG,QAAgB,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC;YAErE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;YAErD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrB,KAAK,CAAC,IAAI,CACR,eAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAC,EAAE,IAAI,CAAC,CAChE,CAAC;gBACF,IAAI,GAAG,EAAE,CAAC;aACX;YAED,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACvB;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAiCD,2CAAkB,GAAlB;QACE,IAAI,CAAC,QAAQ,CAAC,EAAC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,EAAC,CAAC,CAAC;IACnD,CAAC;IAED,0CAAiB,GAAjB;QAAA,iBAyBC;QAxBO,IAAA,KAAkD,IAAI,CAAC,KAAK,EAA3D,UAAU,gBAAA,EAAE,YAAY,kBAAA,EAAE,QAAQ,cAAA,EAAE,SAAS,eAAc,CAAC;QACnE,IAAM,SAAS,GAAG;YAChB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;SACd,CAAC;QACF,IAAM,IAAI,GAAG,YAAY,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC5E,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,MAAM,EAAE,CAAC;YACtC,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC5B,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;oBAClB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;wBAClB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,IAAI,EAAE;gBACR,KAAI,CAAC,WAAW,CACd,IAAI,EACJ,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1C,CAAC,EACD,MAAM,CACP,CAAC;aACH;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAyPD,eAAe;IACf,4CAAmB,GAAnB,UAAoB,SAAoB;;QAChC,IAAA,KAAmB,MAAA,IAAI,CAAC,eAAe,0CAAG,SAAS,CAAC,EAAnD,GAAG,SAAA,EAAE,GAAG,SAAA,EAAE,IAAI,UAAqC,CAAC;QAE3D,OAAO,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC,EAAC,EAAE,UAAC,IAAI,EAAE,KAAK;YACrD,IAAM,KAAK,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC;iBACxB,QAAQ,EAAE;iBACV,QAAQ,CAAC,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAEvD,OAAO,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,OAAA,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAC,IAAI,IAA6C,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,CAAC,CAAC;IACtE,CAAC;IAkMD,+BAAM,GAAN;QACQ,IAAA,KAMF,IAAI,CAAC,KAAK,EALF,IAAI,cAAA,EACd,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,UAAU,gBAAA,EACE,EAAE,gBACF,CAAC;QACf,IAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,IAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC,IAAI,IAAA,iBAAQ,GAAE,IAAI,WAAW,IAAI,CAAC,KAAK,EAAE;YACvC,OAAO,uCAAK,SAAS,EAAC,UAAU,IAAE,IAAI,CAAC,YAAY,EAAE,CAAO,CAAC;SAC9D;QAED,IAAM,aAAa,GAAG;YACpB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC7B,yCAAO,GAAG,EAAC,IAAI;gBACb;oBACE,sCAAI,OAAO,EAAE,CAAC;wBACZ,uCAAK,SAAS,EAAC,WAAW;4BACxB,qCACE,SAAS,EAAC,SAAS,EACnB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,aAG1C;4BACJ,qCACE,SAAS,EAAC,SAAS,EACnB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,aAG3C;4BAEJ,uCAAK,SAAS,EAAC,WAAW;gCACxB,qCACE,SAAS,EAAC,WAAW,EACrB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAEpC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CACjC;gCACJ,qCACE,SAAS,EAAC,WAAW,EACrB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAErC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CACrB,CACA;4BAEN,qCACE,SAAS,EAAC,SAAS,EACnB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,aAGtC;4BACJ,qCAAG,SAAS,EAAC,SAAS,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,aAE1D,CACA,CACH,CACF;gBACL,0CACG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAC,GAAW,EAAE,KAAa,IAAK,OAAA,CAC9D,sCAAI,GAAG,EAAE,GAAG,GAAG,KAAK,EAAE,SAAS,EAAC,KAAK,IAClC,GAAG,CACD,CACN,EAJ+D,CAI/D,CAAC,CACC,CACC,CACT;YAED,yCAAO,GAAG,EAAC,IAAI,IAAE,IAAI,CAAC,UAAU,EAAE,CAAS;SAC5C,CAAC;QAEF,OAAO,CACL;YACE,uCAAK,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;gBACzC,yCAAO,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAC9C,aAAa,CACR;gBACP,UAAU,CAAC,CAAC,CAAC,CACZ,uCACE,SAAS,EACP,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;wBACvC,CAAC,CAAC,kBAAkB;wBACpB,CAAC,CAAC,aAAa,IAGlB,IAAI,CAAC,WAAW,EAAE,CACf,CACP,CAAC,CAAC,CAAC,IAAI,CACJ;YACN,6CAAQ,IAAI,CAAC,YAAY,EAAE,CAAS,CACnC,CACJ,CAAC;IACJ,CAAC;IACH,qBAAC;AAAD,CAAC,AAntBD,CAAoC,eAAK,CAAC,SAAS,GAmtBlD;AAntBY,wCAAc;AAqtB3B,kBAAe,IAAA,mBAAU,EACvB,cAAkE,CACnE,CAAC",
|
10
10
|
"sourcesContent": [
|
11
|
-
"// 最早基于 react-datetime 2.16.2 版本,后来大部分都自己写了\n\nimport moment from 'moment';\nimport React from 'react';\nimport Downshift from 'downshift';\nimport findIndex from 'lodash/findIndex';\nimport {LocaleProps, localeable} from '../../locale';\nimport {ClassNamesFn} from '../../theme';\nimport {isMobile, convertArrayValueToMoment} from '../../utils/helper';\nimport Picker from '../Picker';\nimport {PickerOption} from '../PickerColumn';\nimport {DateType} from './Calendar';\n\ninterface CustomDaysViewProps extends LocaleProps {\n classPrefix?: string;\n prevIcon?: string;\n nextIcon?: string;\n viewDate: moment.Moment;\n selectedDate: moment.Moment;\n minDate: moment.Moment;\n maxDate: moment.Moment;\n useMobileUI: boolean;\n embed: boolean;\n timeFormat: string;\n requiredConfirm?: boolean;\n isEndDate?: boolean;\n renderDay?: Function;\n onClose?: () => void;\n onChange: (value: moment.Moment) => void;\n onConfirm?: (value: number[], types: DateType[]) => void;\n setDateTimeState: (state: any) => void;\n showTime: () => void;\n setTime: (type: string, amount: number) => void;\n scrollToTop: (type: string, amount: number, i: number, lable?: string) => void;\n subtractTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n addTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n isValidDate?: (\n currentDate: moment.Moment,\n selected?: moment.Moment\n ) => boolean;\n showView: (view: string) => () => void;\n updateSelectedDate: (event: React.MouseEvent<any>, close?: boolean) => void;\n handleClickOutside: () => void;\n classnames: ClassNamesFn;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n hideHeader?: boolean;\n getColumns: (types: DateType[], dateBoundary: void) => any;\n getDateBoundary: (currentDate: moment.Moment) => any;\n}\n\nexport class CustomDaysView extends React.Component<CustomDaysViewProps> {\n state: {\n columns: {options: PickerOption[]}[];\n types: DateType[];\n pickerValue: number[];\n uniqueTag: any;\n };\n\n getDaysOfWeek(locale: any) {\n var days = locale._weekdaysMin,\n first = locale.firstDayOfWeek(),\n dow: any[] = [],\n i = 0;\n days.forEach(function (day: any) {\n dow[(7 + i++ - first) % 7] = day;\n });\n\n return dow;\n }\n\n alwaysValidDate() {\n return 1;\n }\n\n renderDays() {\n let date = this.props.viewDate,\n selected = this.props.selectedDate && this.props.selectedDate.clone(),\n prevMonth = date.clone().subtract(1, 'months'),\n currentYear = date.year(),\n currentMonth = date.month(),\n weeks = [],\n days = [],\n renderer = this.props.renderDay || this.renderDay,\n isValid = this.props.isValidDate || this.alwaysValidDate,\n classes,\n isDisabled,\n dayProps,\n currentDate;\n\n // Go to the last week of the previous month\n prevMonth.date(prevMonth.daysInMonth()).startOf('week');\n let lastDay = prevMonth.clone().add(42, 'd');\n\n while (prevMonth.isBefore(lastDay)) {\n classes = 'rdtDay';\n currentDate = prevMonth.clone();\n\n if (\n (prevMonth.year() === currentYear &&\n prevMonth.month() < currentMonth) ||\n prevMonth.year() < currentYear\n )\n classes += ' rdtOld';\n else if (\n (prevMonth.year() === currentYear &&\n prevMonth.month() > currentMonth) ||\n prevMonth.year() > currentYear\n )\n classes += ' rdtNew';\n\n if (selected && prevMonth.isSame(selected, 'day'))\n classes += ' rdtActive';\n\n if (prevMonth.isSame(moment(), 'day')) classes += ' rdtToday';\n\n isDisabled = !isValid(currentDate, selected);\n if (isDisabled) classes += ' rdtDisabled';\n\n dayProps = {\n 'key': prevMonth.format('M_D'),\n 'data-value': prevMonth.date(),\n 'className': classes\n };\n\n if (!isDisabled) (dayProps as any).onClick = this.updateSelectedDate;\n\n days.push(renderer(dayProps, currentDate, selected));\n\n if (days.length === 7) {\n weeks.push(\n React.createElement('tr', {key: prevMonth.format('M_D')}, days)\n );\n days = [];\n }\n\n prevMonth.add(1, 'd');\n }\n\n return weeks;\n }\n\n constructor(props: any) {\n super(props);\n const {selectedDate, viewDate, timeFormat} = props;\n const currentDate = selectedDate || moment();\n\n const types: DateType[] = ['year', 'month', 'date'];\n timeFormat.split(':').forEach((format: string) => {\n const type: DateType | '' = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n type && types.push(type);\n });\n\n const dateBoundary = this.props.getDateBoundary(currentDate);\n const columns = this.props.getColumns(types, dateBoundary);\n this.state = {\n columns,\n types,\n pickerValue: currentDate.toArray(),\n uniqueTag: 0,\n }\n }\n\n componentWillMount() {\n this.setState({uniqueTag: (new Date()).valueOf()})\n }\n\n componentDidMount() {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n } = this.props;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n this.scrollToTop(type, parseInt(date.format(formatMap[type]), 10), i, 'init')\n }\n })\n }\n\n updateSelectedDate = (event: React.MouseEvent<any>) => {\n // need confirm\n if (this.props.requiredConfirm) {\n const viewDate = this.props.viewDate.clone();\n const currentDate = this.props.selectedDate || viewDate;\n\n const target = event.target as HTMLElement;\n let modifier = 0;\n\n if (~target.className.indexOf('rdtNew')) {\n modifier = 1;\n }\n if (~target.className.indexOf('rdtOld')) {\n modifier = -1;\n }\n\n viewDate\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value') as string, 10))\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n this.props.setDateTimeState({\n viewDate,\n selectedDate: viewDate.clone()\n });\n return;\n }\n\n this.props.updateSelectedDate(event, true);\n };\n\n showTime = () =>{\n const {selectedDate, viewDate, timeFormat} = this.props\n return (\n <div \n key=\"stb\"\n className=\"rdtShowTime\"\n >\n {(selectedDate || viewDate || moment()).format(timeFormat)}\n </div>\n )\n }\n\n setTime = (\n type: 'hours' | 'minutes' | 'seconds' | 'milliseconds',\n value: number\n ) => {\n const date = (this.props.selectedDate || this.props.viewDate).clone();\n date[type](value);\n\n this.props.setDateTimeState({\n viewDate: date.clone(),\n selectedDate: date.clone()\n });\n\n if (!this.props.requiredConfirm) {\n this.props.onChange(date);\n }\n };\n\n scrollToTop = (\n type: 'hours' | 'minutes' | 'seconds' | 'milliseconds',\n value: number,\n i: number,\n label?: string,\n ) => {\n let elf: any = document.getElementById(`${this.state.uniqueTag}-${i}-input`);\n elf.parentNode.scrollTo({\n top: value * 28,\n behavior: label === 'init' ? 'auto' : 'smooth'\n })\n };\n\n confirm = () => {\n let date = (this.props.selectedDate || this.props.viewDate).clone();\n\n // 如果 minDate 是可用的,且比当前日期晚,则用 minDate\n if (this.props.minDate?.isValid() && this.props.minDate?.isAfter(date)) {\n date = this.props.minDate.clone();\n }\n\n this.props.setDateTimeState({\n selectedDate: date\n });\n this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n cancel = () => {\n this.props.onClose && this.props.onClose();\n };\n\n renderDay = (props: any, currentDate: moment.Moment) => {\n if (this.props.schedules) {\n let schedule: any[] = [];\n this.props.schedules.forEach((item: any) => {\n if (\n currentDate.isSameOrAfter(\n moment(item.startTime).subtract(1, 'days')\n ) &&\n currentDate.isSameOrBefore(item.endTime)\n ) {\n schedule.push(item);\n }\n });\n if (schedule.length > 0) {\n const cx = this.props.classnames;\n const __ = this.props.translate;\n // 日程数据\n const scheduleData = {\n scheduleData: schedule.map((item: any) => {\n return {\n ...item,\n time:\n moment(item.startTime).format('YYYY-MM-DD HH:mm:ss') +\n ' - ' +\n moment(item.endTime).format('YYYY-MM-DD HH:mm:ss')\n };\n }),\n currentDate\n };\n\n // 放大模式\n if (this.props.largeMode) {\n let showSchedule: any[] = [];\n for (let i = 0; i < schedule.length; i++) {\n if (showSchedule.length > 3) {\n break;\n }\n if (moment(schedule[i].startTime).isSame(currentDate, 'day')) {\n showSchedule.push(schedule[i]);\n } else if (currentDate.weekday() === 0) {\n const width = Math.min(\n moment(schedule[i].endTime).diff(currentDate, 'days') + 1,\n 7\n );\n // 周一重新设置日程\n showSchedule.push({\n ...schedule[i],\n width,\n startTime: moment(currentDate),\n endTime: moment(currentDate).add(width - 1, 'days')\n });\n schedule[i].height === undefined && (schedule[i].height = 0);\n } else {\n // 生成空白格占位\n showSchedule.push({\n width: 1,\n className: 'bg-transparent',\n content: '',\n height: schedule[i].height\n });\n }\n }\n [0, 1, 2].forEach((i: number) => {\n // 排序\n let tempIndex = findIndex(\n showSchedule,\n (item: any) => item.height === i\n );\n if (tempIndex === -1) {\n tempIndex = findIndex(\n showSchedule,\n (item: any) => item.height === undefined\n );\n }\n if (tempIndex > -1 && tempIndex !== i) {\n let temp = showSchedule[i];\n showSchedule[i] = showSchedule[tempIndex];\n showSchedule[tempIndex] = temp;\n }\n if (showSchedule[i] && showSchedule[i].height === undefined) {\n showSchedule[i].height = i;\n }\n });\n // 最多展示3个\n showSchedule = showSchedule.slice(0, 3);\n const scheduleDiv = showSchedule.map((item: any, index: number) => {\n const width =\n item.width ||\n Math.min(\n moment(item.endTime).diff(moment(item.startTime), 'days') + 1,\n 7 - moment(item.startTime).weekday()\n );\n return (\n <div\n key={props.key + 'content' + index}\n className={cx(\n 'ScheduleCalendar-large-schedule-content',\n item.className\n )}\n style={{width: width + '00%'}}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n >\n <div className={cx('ScheduleCalendar-text-overflow')}>\n {item.content}\n </div>\n </div>\n );\n });\n return (\n <td {...props}>\n <div className={cx('ScheduleCalendar-large-day-wrap')}>\n <div className={cx('ScheduleCalendar-large-schedule-header')}>\n {currentDate.date()}\n </div>\n {scheduleDiv}\n {schedule.length > 3 && (\n <div className={cx('ScheduleCalendar-large-schedule-footer')}>\n {schedule.length - 3} {__('more')}\n </div>\n )}\n </div>\n </td>\n );\n }\n\n // 正常模式\n const ScheduleIcon = (\n <span\n className={cx('ScheduleCalendar-icon', schedule[0].className)}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n ></span>\n );\n return (\n <td {...props}>\n {currentDate.date()}\n {ScheduleIcon}\n </td>\n );\n }\n }\n return <td {...props}>{currentDate.date()}</td>;\n };\n\n computedTimeOptions(total: number) {\n const times: {label: string; value: string}[] = [];\n\n for (let t = 0; t < total; t++) {\n const label = t < 10 ? `0${t}` : `${t}`;\n times.push({label, value: label});\n }\n\n return times;\n }\n\n renderTimes = () => {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n classnames: cx\n } = this.props;\n\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n const inputs: Array<React.ReactNode> = [];\n\n inputs.push(this.showTime())\n\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n const min = 0;\n const max = type === 'hours' ? 23 : 59;\n const hours = this.computedTimeOptions(24);\n const times = this.computedTimeOptions(60);\n const options = type === 'hours' ? hours : times;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n\n inputs.push(\n <Downshift\n key={i + 'input'}\n inputValue={date.format(formatMap[type])}\n >\n {({getInputProps, openMenu, closeMenu}) => {\n const inputProps = getInputProps({\n onFocus: () => openMenu(),\n onChange: (e: any) =>\n this.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(\n e.currentTarget.value.replace(/\\D/g, ''),\n 10\n ) || 0,\n max\n )\n )\n )\n });\n return (\n <div className={cx('CalendarInputWrapper', 'CalendarInputWrapperMT')}>\n {/* <input\n type=\"text\"\n value={date.format(formatMap[type])}\n className={cx('CalendarInput')}\n min={min}\n max={max}\n {...inputProps}\n /> */}\n <div \n className={cx(\n 'CalendarInput-sugs',\n type === 'hours' ? 'CalendarInput-sugsHours' : 'CalendarInput-sugsTimes'\n )} \n id={`${this.state.uniqueTag}-${i}-input`}\n >\n {options.map(option => {\n return (\n <div\n key={option.value}\n className={cx(\n 'CalendarInput-sugsItem', \n {'is-highlight': option.value === date.format(formatMap[type])}\n )}\n onClick={() => {\n this.setTime(type, parseInt(option.value, 10));\n this.scrollToTop(type, parseInt(option.value, 10), i);\n closeMenu();\n }}\n >\n {option.value}\n </div>\n );\n })}\n </div>\n </div>\n );\n }}\n </Downshift>\n );\n inputs.push(<span key={i + 'divider'}></span>);\n }\n });\n inputs.length && inputs.pop();\n return <div>{inputs}</div>;\n };\n\n renderFooter = () => {\n if (!this.props.requiredConfirm) {\n return null;\n }\n\n const {translate: __, classnames: cx} = this.props;\n\n return (\n <tfoot key=\"tf\">\n <tr>\n <td colSpan={7}>\n {this.props.requiredConfirm ? (\n <div key=\"button\" className=\"rdtActions\">\n <a\n className={cx('Button', 'Button--default')}\n onClick={this.cancel}\n >\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm')}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n ) : null}\n </td>\n </tr>\n </tfoot>\n );\n };\n\n onPickerConfirm = (value: number[]) => {\n this.props.onConfirm && this.props.onConfirm(value, this.state.types);\n };\n\n onPickerChange = (value: number[], index: number) => {\n const {selectedDate, viewDate} = this.props;\n\n // 变更年份、月份的时候,需要更新columns\n if (index === 1 || index === 0) {\n const currentDate = (selectedDate || viewDate || moment()).clone();\n\n // 只需计算year 、month\n const selectDate = convertArrayValueToMoment(\n value,\n ['year', 'month'],\n currentDate\n );\n const dateBoundary = this.props.getDateBoundary(selectDate);\n this.setState({\n columns: this.props.getColumns(this.state.types, dateBoundary),\n pickerValue: value\n });\n }\n };\n\n renderPicker = () => {\n const {translate: __} = this.props;\n const title =\n this.state.types.length > 3 ? __('Date.titleTime') : __('Date.titleDate');\n return (\n <Picker\n translate={this.props.translate}\n locale={this.props.locale}\n title={title}\n columns={this.state.columns}\n value={this.state.pickerValue}\n onChange={this.onPickerChange}\n onConfirm={this.onPickerConfirm}\n onClose={this.cancel}\n />\n );\n };\n\n render() {\n const {viewDate: date, useMobileUI, embed, timeFormat, classnames: cx} = this.props;\n const locale = date.localeData();\n const __ = this.props.translate;\n if (isMobile() && useMobileUI && !embed) {\n return <div className=\"rdtYears\">{this.renderPicker()}</div>;\n }\n\n const tableChildren = [\n this.props.hideHeader ? null : (\n <thead key=\"th\">\n <tr>\n <th colSpan={7}>\n <div className=\"rdtHeader\">\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'years')}\n >\n «\n </a>\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'months')}\n >\n ‹\n </a>\n\n <div className=\"rdtCenter\">\n <a\n className=\"rdtSwitch\"\n onClick={this.props.showView('years')}\n >\n {date.format(__('dateformat.year'))}\n </a>\n <a\n className=\"rdtSwitch\"\n onClick={this.props.showView('months')}\n >\n {date.format(__('MMM'))}\n </a>\n </div>\n\n <a\n className=\"rdtNext\"\n onClick={this.props.addTime(1, 'months')}\n >\n ›\n </a>\n <a className=\"rdtNext\" onClick={this.props.addTime(1, 'years')}>\n »\n </a>\n </div>\n </th>\n </tr>\n <tr>\n {this.getDaysOfWeek(locale).map((day: number, index: number) => (\n <th key={day + index} className=\"dow\">\n {day}\n </th>\n ))}\n </tr>\n </thead>\n ),\n\n <tbody key=\"tb\">{this.renderDays()}</tbody>\n ];\n\n return (\n <>\n <div className={timeFormat ? 'rdtDays' : ''}>\n <table className={timeFormat ? 'rdtDaysPart' : ''}>{tableChildren}</table>\n {timeFormat ? (\n <div className={timeFormat.toLowerCase().indexOf('s') > 0 ? \"rdtTimePartWithS\" : \"rdtTimePart\"}>{this.renderTimes()}</div>\n ) : null}\n </div>\n <table>{this.renderFooter()}</table>\n </>\n );\n }\n}\n\nexport default localeable(\n CustomDaysView as any as React.ComponentClass<CustomDaysViewProps>\n);\n"
|
11
|
+
"// 最早基于 react-datetime 2.16.2 版本,后来大部分都自己写了\n\nimport moment from 'moment';\nimport React from 'react';\nimport Downshift from 'downshift';\nimport findIndex from 'lodash/findIndex';\nimport merge from 'lodash/merge';\nimport {LocaleProps, localeable} from '../../locale';\nimport {ClassNamesFn} from '../../theme';\nimport {isMobile, convertArrayValueToMoment} from '../../utils/helper';\nimport Picker from '../Picker';\nimport {PickerOption} from '../PickerColumn';\nimport {DateType} from './Calendar';\n\nimport type {TimeScale} from './TimeView';\n\ninterface CustomDaysViewProps extends LocaleProps {\n classPrefix?: string;\n prevIcon?: string;\n nextIcon?: string;\n viewDate: moment.Moment;\n selectedDate: moment.Moment;\n minDate: moment.Moment;\n maxDate: moment.Moment;\n useMobileUI: boolean;\n embed: boolean;\n timeFormat: string;\n requiredConfirm?: boolean;\n isEndDate?: boolean;\n renderDay?: Function;\n onClose?: () => void;\n onChange: (value: moment.Moment) => void;\n onConfirm?: (value: number[], types: DateType[]) => void;\n setDateTimeState: (state: any) => void;\n showTime: () => void;\n setTime: (type: string, amount: number) => void;\n scrollToTop: (\n type: string,\n amount: number,\n i: number,\n lable?: string\n ) => void;\n subtractTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n addTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n isValidDate?: (\n currentDate: moment.Moment,\n selected?: moment.Moment\n ) => boolean;\n showView: (view: string) => () => void;\n updateSelectedDate: (event: React.MouseEvent<any>, close?: boolean) => void;\n handleClickOutside: () => void;\n classnames: ClassNamesFn;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n hideHeader?: boolean;\n getColumns: (types: DateType[], dateBoundary: void) => any;\n getDateBoundary: (currentDate: moment.Moment) => any;\n timeConstraints?: any;\n}\n\nexport class CustomDaysView extends React.Component<CustomDaysViewProps> {\n timeConstraints = {\n hours: {\n min: 0,\n max: 23,\n step: 1\n },\n minutes: {\n min: 0,\n max: 59,\n step: 1\n },\n seconds: {\n min: 0,\n max: 59,\n step: 1\n },\n milliseconds: {\n min: 0,\n max: 999,\n step: 1\n }\n };\n\n state: {\n columns: {options: PickerOption[]}[];\n types: DateType[];\n pickerValue: number[];\n uniqueTag: any;\n };\n\n getDaysOfWeek(locale: any) {\n var days = locale._weekdaysMin,\n first = locale.firstDayOfWeek(),\n dow: any[] = [],\n i = 0;\n days.forEach(function (day: any) {\n dow[(7 + i++ - first) % 7] = day;\n });\n\n return dow;\n }\n\n alwaysValidDate() {\n return 1;\n }\n\n renderDays() {\n let date = this.props.viewDate,\n selected = this.props.selectedDate && this.props.selectedDate.clone(),\n prevMonth = date.clone().subtract(1, 'months'),\n currentYear = date.year(),\n currentMonth = date.month(),\n weeks = [],\n days = [],\n renderer = this.props.renderDay || this.renderDay,\n isValid = this.props.isValidDate || this.alwaysValidDate,\n classes,\n isDisabled,\n dayProps,\n currentDate;\n\n // Go to the last week of the previous month\n prevMonth.date(prevMonth.daysInMonth()).startOf('week');\n let lastDay = prevMonth.clone().add(42, 'd');\n\n while (prevMonth.isBefore(lastDay)) {\n classes = 'rdtDay';\n currentDate = prevMonth.clone();\n\n if (\n (prevMonth.year() === currentYear &&\n prevMonth.month() < currentMonth) ||\n prevMonth.year() < currentYear\n )\n classes += ' rdtOld';\n else if (\n (prevMonth.year() === currentYear &&\n prevMonth.month() > currentMonth) ||\n prevMonth.year() > currentYear\n )\n classes += ' rdtNew';\n\n if (selected && prevMonth.isSame(selected, 'day'))\n classes += ' rdtActive';\n\n if (prevMonth.isSame(moment(), 'day')) classes += ' rdtToday';\n\n isDisabled = !isValid(currentDate, selected);\n if (isDisabled) classes += ' rdtDisabled';\n\n dayProps = {\n 'key': prevMonth.format('M_D'),\n 'data-value': prevMonth.date(),\n 'className': classes\n };\n\n if (!isDisabled) (dayProps as any).onClick = this.updateSelectedDate;\n\n days.push(renderer(dayProps, currentDate, selected));\n\n if (days.length === 7) {\n weeks.push(\n React.createElement('tr', {key: prevMonth.format('M_D')}, days)\n );\n days = [];\n }\n\n prevMonth.add(1, 'd');\n }\n\n return weeks;\n }\n\n constructor(props: any) {\n super(props);\n const {selectedDate, viewDate, timeFormat} = props;\n const currentDate = selectedDate || moment();\n\n const types: DateType[] = ['year', 'month', 'date'];\n timeFormat.split(':').forEach((format: string) => {\n const type: DateType | '' = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n type && types.push(type);\n });\n\n const dateBoundary = this.props.getDateBoundary(currentDate);\n const columns = this.props.getColumns(types, dateBoundary);\n this.state = {\n columns,\n types,\n pickerValue: currentDate.toArray(),\n uniqueTag: 0\n };\n\n if (this.props.timeConstraints) {\n this.timeConstraints = merge(this.timeConstraints, props.timeConstraints);\n }\n }\n\n componentWillMount() {\n this.setState({uniqueTag: new Date().valueOf()});\n }\n\n componentDidMount() {\n const {timeFormat, selectedDate, viewDate, isEndDate} = this.props;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n this.scrollToTop(\n type,\n parseInt(date.format(formatMap[type]), 10),\n i,\n 'init'\n );\n }\n });\n }\n\n updateSelectedDate = (event: React.MouseEvent<any>) => {\n // need confirm\n if (this.props.requiredConfirm) {\n const viewDate = this.props.viewDate.clone();\n const currentDate = this.props.selectedDate || viewDate;\n\n const target = event.target as HTMLElement;\n let modifier = 0;\n\n if (~target.className.indexOf('rdtNew')) {\n modifier = 1;\n }\n if (~target.className.indexOf('rdtOld')) {\n modifier = -1;\n }\n\n viewDate\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value') as string, 10))\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n this.props.setDateTimeState({\n viewDate,\n selectedDate: viewDate.clone()\n });\n return;\n }\n\n this.props.updateSelectedDate(event, true);\n };\n\n showTime = () => {\n const {selectedDate, viewDate, timeFormat} = this.props;\n return (\n <div key=\"stb\" className=\"rdtShowTime\">\n {(selectedDate || viewDate || moment()).format(timeFormat)}\n </div>\n );\n };\n\n setTime = (\n type: 'hours' | 'minutes' | 'seconds' | 'milliseconds',\n value: number\n ) => {\n const date = (this.props.selectedDate || this.props.viewDate).clone();\n date[type](value);\n\n this.props.setDateTimeState({\n viewDate: date.clone(),\n selectedDate: date.clone()\n });\n\n if (!this.props.requiredConfirm) {\n this.props.onChange(date);\n }\n };\n\n scrollToTop = (\n type: 'hours' | 'minutes' | 'seconds' | 'milliseconds',\n value: number,\n i: number,\n label?: string\n ) => {\n const elf: any = document.getElementById(\n `${this.state.uniqueTag}-${i}-input`\n );\n const {min, step} = this.timeConstraints[type];\n const offset = (value - min) / step;\n const height = 28; /** 单个选项的高度 */\n\n elf?.parentNode?.scrollTo({\n top: offset * height,\n behavior: label === 'init' ? 'auto' : 'smooth'\n });\n };\n\n confirm = () => {\n let date = (this.props.selectedDate || this.props.viewDate).clone();\n\n // 如果 minDate 是可用的,且比当前日期晚,则用 minDate\n if (this.props.minDate?.isValid() && this.props.minDate?.isAfter(date)) {\n date = this.props.minDate.clone();\n }\n\n this.props.setDateTimeState({\n selectedDate: date\n });\n this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n cancel = () => {\n this.props.onClose && this.props.onClose();\n };\n\n renderDay = (props: any, currentDate: moment.Moment) => {\n if (this.props.schedules) {\n let schedule: any[] = [];\n this.props.schedules.forEach((item: any) => {\n if (\n currentDate.isSameOrAfter(\n moment(item.startTime).subtract(1, 'days')\n ) &&\n currentDate.isSameOrBefore(item.endTime)\n ) {\n schedule.push(item);\n }\n });\n if (schedule.length > 0) {\n const cx = this.props.classnames;\n const __ = this.props.translate;\n // 日程数据\n const scheduleData = {\n scheduleData: schedule.map((item: any) => {\n return {\n ...item,\n time:\n moment(item.startTime).format('YYYY-MM-DD HH:mm:ss') +\n ' - ' +\n moment(item.endTime).format('YYYY-MM-DD HH:mm:ss')\n };\n }),\n currentDate\n };\n\n // 放大模式\n if (this.props.largeMode) {\n let showSchedule: any[] = [];\n for (let i = 0; i < schedule.length; i++) {\n if (showSchedule.length > 3) {\n break;\n }\n if (moment(schedule[i].startTime).isSame(currentDate, 'day')) {\n showSchedule.push(schedule[i]);\n } else if (currentDate.weekday() === 0) {\n const width = Math.min(\n moment(schedule[i].endTime).diff(currentDate, 'days') + 1,\n 7\n );\n // 周一重新设置日程\n showSchedule.push({\n ...schedule[i],\n width,\n startTime: moment(currentDate),\n endTime: moment(currentDate).add(width - 1, 'days')\n });\n schedule[i].height === undefined && (schedule[i].height = 0);\n } else {\n // 生成空白格占位\n showSchedule.push({\n width: 1,\n className: 'bg-transparent',\n content: '',\n height: schedule[i].height\n });\n }\n }\n [0, 1, 2].forEach((i: number) => {\n // 排序\n let tempIndex = findIndex(\n showSchedule,\n (item: any) => item.height === i\n );\n if (tempIndex === -1) {\n tempIndex = findIndex(\n showSchedule,\n (item: any) => item.height === undefined\n );\n }\n if (tempIndex > -1 && tempIndex !== i) {\n let temp = showSchedule[i];\n showSchedule[i] = showSchedule[tempIndex];\n showSchedule[tempIndex] = temp;\n }\n if (showSchedule[i] && showSchedule[i].height === undefined) {\n showSchedule[i].height = i;\n }\n });\n // 最多展示3个\n showSchedule = showSchedule.slice(0, 3);\n const scheduleDiv = showSchedule.map((item: any, index: number) => {\n const width =\n item.width ||\n Math.min(\n moment(item.endTime).diff(moment(item.startTime), 'days') + 1,\n 7 - moment(item.startTime).weekday()\n );\n return (\n <div\n key={props.key + 'content' + index}\n className={cx(\n 'ScheduleCalendar-large-schedule-content',\n item.className\n )}\n style={{width: width + '00%'}}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n >\n <div className={cx('ScheduleCalendar-text-overflow')}>\n {item.content}\n </div>\n </div>\n );\n });\n return (\n <td {...props}>\n <div className={cx('ScheduleCalendar-large-day-wrap')}>\n <div className={cx('ScheduleCalendar-large-schedule-header')}>\n {currentDate.date()}\n </div>\n {scheduleDiv}\n {schedule.length > 3 && (\n <div className={cx('ScheduleCalendar-large-schedule-footer')}>\n {schedule.length - 3} {__('more')}\n </div>\n )}\n </div>\n </td>\n );\n }\n\n // 正常模式\n const ScheduleIcon = (\n <span\n className={cx('ScheduleCalendar-icon', schedule[0].className)}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n ></span>\n );\n return (\n <td {...props}>\n {currentDate.date()}\n {ScheduleIcon}\n </td>\n );\n }\n }\n return <td {...props}>{currentDate.date()}</td>;\n };\n\n /** 时间选择器数据源 */\n computedTimeOptions(timeScale: TimeScale) {\n const {min, max, step} = this.timeConstraints?.[timeScale];\n\n return Array.from({length: max - min + 1}, (item, index) => {\n const value = (index + min)\n .toString()\n .padStart(timeScale !== 'milliseconds' ? 2 : 3, '0');\n\n return index % step === 0 ? {label: value, value} : undefined;\n }).filter((item): item is {label: string; value: string} => !!item);\n }\n\n renderTimes = () => {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n classnames: cx\n } = this.props;\n\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n const inputs: Array<React.ReactNode> = [];\n const timeConstraints = this.timeConstraints;\n\n inputs.push(this.showTime());\n\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n const min = timeConstraints[type].min;\n const max = timeConstraints[type].max;\n const options = this.computedTimeOptions(type);\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n\n inputs.push(\n <Downshift\n key={i + 'input'}\n inputValue={date.format(formatMap[type])}\n >\n {({getInputProps, openMenu, closeMenu}) => {\n const inputProps = getInputProps({\n onFocus: () => openMenu(),\n onChange: (e: any) =>\n this.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(\n e.currentTarget.value.replace(/\\D/g, ''),\n 10\n ) || 0,\n max\n )\n )\n )\n });\n return (\n <div\n className={cx(\n 'CalendarInputWrapper',\n 'CalendarInputWrapperMT'\n )}\n >\n {/* <input\n type=\"text\"\n value={date.format(formatMap[type])}\n className={cx('CalendarInput')}\n min={min}\n max={max}\n {...inputProps}\n /> */}\n <div\n className={cx(\n 'CalendarInput-sugs',\n type === 'hours'\n ? 'CalendarInput-sugsHours'\n : 'CalendarInput-sugsTimes'\n )}\n id={`${this.state.uniqueTag}-${i}-input`}\n >\n {options.map(option => {\n return (\n <div\n key={option.value}\n className={cx('CalendarInput-sugsItem', {\n 'is-highlight': selectedDate\n ? option.value === date.format(formatMap[type])\n : option.value === options?.[0]?.value\n })}\n onClick={() => {\n this.setTime(type, parseInt(option.value, 10));\n this.scrollToTop(\n type,\n parseInt(option.value, 10),\n i\n );\n closeMenu();\n }}\n >\n {option.value}\n </div>\n );\n })}\n </div>\n </div>\n );\n }}\n </Downshift>\n );\n inputs.push(<span key={i + 'divider'}></span>);\n }\n });\n inputs.length && inputs.pop();\n return <div>{inputs}</div>;\n };\n\n renderFooter = () => {\n if (!this.props.requiredConfirm) {\n return null;\n }\n\n const {translate: __, classnames: cx} = this.props;\n\n return (\n <tfoot key=\"tf\">\n <tr>\n <td colSpan={7}>\n {this.props.requiredConfirm ? (\n <div key=\"button\" className=\"rdtActions\">\n <a\n className={cx('Button', 'Button--default')}\n onClick={this.cancel}\n >\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm')}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n ) : null}\n </td>\n </tr>\n </tfoot>\n );\n };\n\n onPickerConfirm = (value: number[]) => {\n this.props.onConfirm && this.props.onConfirm(value, this.state.types);\n };\n\n onPickerChange = (value: number[], index: number) => {\n const {selectedDate, viewDate} = this.props;\n\n // 变更年份、月份的时候,需要更新columns\n if (index === 1 || index === 0) {\n const currentDate = (selectedDate || viewDate || moment()).clone();\n\n // 只需计算year 、month\n const selectDate = convertArrayValueToMoment(\n value,\n ['year', 'month'],\n currentDate\n );\n const dateBoundary = this.props.getDateBoundary(selectDate);\n this.setState({\n columns: this.props.getColumns(this.state.types, dateBoundary),\n pickerValue: value\n });\n }\n };\n\n renderPicker = () => {\n const {translate: __} = this.props;\n const title =\n this.state.types.length > 3 ? __('Date.titleTime') : __('Date.titleDate');\n return (\n <Picker\n translate={this.props.translate}\n locale={this.props.locale}\n title={title}\n columns={this.state.columns}\n value={this.state.pickerValue}\n onChange={this.onPickerChange}\n onConfirm={this.onPickerConfirm}\n onClose={this.cancel}\n />\n );\n };\n\n render() {\n const {\n viewDate: date,\n useMobileUI,\n embed,\n timeFormat,\n classnames: cx\n } = this.props;\n const locale = date.localeData();\n const __ = this.props.translate;\n if (isMobile() && useMobileUI && !embed) {\n return <div className=\"rdtYears\">{this.renderPicker()}</div>;\n }\n\n const tableChildren = [\n this.props.hideHeader ? null : (\n <thead key=\"th\">\n <tr>\n <th colSpan={7}>\n <div className=\"rdtHeader\">\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'years')}\n >\n «\n </a>\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'months')}\n >\n ‹\n </a>\n\n <div className=\"rdtCenter\">\n <a\n className=\"rdtSwitch\"\n onClick={this.props.showView('years')}\n >\n {date.format(__('dateformat.year'))}\n </a>\n <a\n className=\"rdtSwitch\"\n onClick={this.props.showView('months')}\n >\n {date.format(__('MMM'))}\n </a>\n </div>\n\n <a\n className=\"rdtNext\"\n onClick={this.props.addTime(1, 'months')}\n >\n ›\n </a>\n <a className=\"rdtNext\" onClick={this.props.addTime(1, 'years')}>\n »\n </a>\n </div>\n </th>\n </tr>\n <tr>\n {this.getDaysOfWeek(locale).map((day: number, index: number) => (\n <th key={day + index} className=\"dow\">\n {day}\n </th>\n ))}\n </tr>\n </thead>\n ),\n\n <tbody key=\"tb\">{this.renderDays()}</tbody>\n ];\n\n return (\n <>\n <div className={timeFormat ? 'rdtDays' : ''}>\n <table className={timeFormat ? 'rdtDaysPart' : ''}>\n {tableChildren}\n </table>\n {timeFormat ? (\n <div\n className={\n timeFormat.toLowerCase().indexOf('s') > 0\n ? 'rdtTimePartWithS'\n : 'rdtTimePart'\n }\n >\n {this.renderTimes()}\n </div>\n ) : null}\n </div>\n <table>{this.renderFooter()}</table>\n </>\n );\n }\n}\n\nexport default localeable(\n CustomDaysView as any as React.ComponentClass<CustomDaysViewProps>\n);\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -34,7 +34,7 @@ interface CustomTimeViewState {
|
|
34
34
|
counters: Array<string>;
|
35
35
|
[propName: string]: any;
|
36
36
|
}
|
37
|
-
declare type TimeScale = 'hours' | 'minutes' | 'seconds' | 'milliseconds';
|
37
|
+
export declare type TimeScale = 'hours' | 'minutes' | 'seconds' | 'milliseconds';
|
38
38
|
export declare class CustomTimeView extends React.Component<CustomTimeViewProps & LocaleProps, CustomTimeViewState> {
|
39
39
|
padValues: {
|
40
40
|
hours: number;
|
@@ -194,9 +194,13 @@ var CustomTimeView = /** @class */ (function (_super) {
|
|
194
194
|
}
|
195
195
|
};
|
196
196
|
_this.scrollToTop = function (type, value, i, label) {
|
197
|
+
var _a;
|
197
198
|
var elf = document.getElementById("".concat(_this.state.uniqueTag, "-").concat(i, "-input"));
|
198
|
-
|
199
|
-
|
199
|
+
var _b = _this.timeConstraints[type], min = _b.min, step = _b.step;
|
200
|
+
var offset = (value - min) / step;
|
201
|
+
var height = 28; /** 单个选项的高度 */
|
202
|
+
(_a = elf === null || elf === void 0 ? void 0 : elf.parentNode) === null || _a === void 0 ? void 0 : _a.scrollTo({
|
203
|
+
top: offset * height,
|
200
204
|
behavior: label === 'init' ? 'auto' : 'smooth'
|
201
205
|
});
|
202
206
|
};
|
@@ -412,8 +416,11 @@ var CustomTimeView = /** @class */ (function (_super) {
|
|
412
416
|
react_1.default.createElement("div", { className: cx('CalendarInput-sugs', type === 'hours'
|
413
417
|
? 'CalendarInput-sugsHours'
|
414
418
|
: 'CalendarInput-sugsTimes'), id: "".concat(_this.state.uniqueTag, "-").concat(i, "-input") }, options_1.map(function (option) {
|
419
|
+
var _a;
|
415
420
|
return (react_1.default.createElement("div", { key: option.value, className: cx('CalendarInput-sugsItem', {
|
416
|
-
'is-highlight':
|
421
|
+
'is-highlight': selectedDate
|
422
|
+
? option.value === date.format(formatMap_1[type])
|
423
|
+
: option.value === ((_a = options_1 === null || options_1 === void 0 ? void 0 : options_1[0]) === null || _a === void 0 ? void 0 : _a.value)
|
417
424
|
}), onClick: function () {
|
418
425
|
_this.setTime(type, parseInt(option.value, 10));
|
419
426
|
_this.scrollToTop(type, parseInt(option.value, 10), i);
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/calendar/TimeView.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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",
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import moment from 'moment';\nimport React from 'react';\nimport merge from 'lodash/merge';\nimport {LocaleProps, localeable} from '../../locale';\nimport {Icon} from '../icons';\nimport {ClassNamesFn} from '../../theme';\nimport Picker from '../Picker';\nimport {PickerColumnItem} from '../PickerColumn';\nimport {getRange, isMobile} from '../../utils/helper';\nimport Downshift from 'downshift';\n\ninterface CustomTimeViewProps extends LocaleProps {\n viewDate: moment.Moment;\n selectedDate: moment.Moment;\n dateFormat?: boolean | string;\n minDate: moment.Moment;\n maxDate: moment.Moment;\n subtractTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n addTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n showView: (view: string) => () => void;\n updateSelectedDate: (event: React.MouseEvent<any>, close?: boolean) => void;\n timeFormat: string;\n requiredConfirm?: boolean;\n isEndDate?: boolean;\n classnames: ClassNamesFn;\n setTime: (type: string, amount: number) => void;\n scrollToTop: (\n type: string,\n amount: number,\n i: number,\n lable?: string\n ) => void;\n onClose?: () => void;\n onConfirm?: (value: number[], types: string[]) => void;\n setDateTimeState: (state: any) => void;\n useMobileUI: boolean;\n showToolbar?: boolean;\n onChange: (value: moment.Moment) => void;\n timeConstraints?: any;\n timeRangeHeader?: string;\n}\n\ninterface CustomTimeViewState {\n daypart: any;\n hours: any;\n counters: Array<string>;\n [propName: string]: any;\n}\n\ntype TimeScale = 'hours' | 'minutes' | 'seconds' | 'milliseconds';\n\nexport class CustomTimeView extends React.Component<\n CustomTimeViewProps & LocaleProps,\n CustomTimeViewState\n> {\n padValues = {\n hours: 2,\n minutes: 2,\n seconds: 2,\n milliseconds: 3\n };\n\n timeConstraints = {\n hours: {\n min: 0,\n max: 23,\n step: 1\n },\n minutes: {\n min: 0,\n max: 59,\n step: 1\n },\n seconds: {\n min: 0,\n max: 59,\n step: 1\n },\n milliseconds: {\n min: 0,\n max: 999,\n step: 1\n }\n };\n\n static defaultProps = {\n showToolbar: true\n };\n\n timer?: any;\n increaseTimer?: any;\n\n constructor(props: any) {\n super(props);\n this.state = {\n ...this.calculateState(this.props),\n uniqueTag: 0\n };\n\n if (this.props.timeConstraints) {\n this.timeConstraints = merge(\n this.timeConstraints,\n this.props.timeConstraints\n );\n }\n }\n\n componentWillMount() {\n this.setState({uniqueTag: new Date().valueOf()});\n }\n\n componentDidMount() {\n const {timeFormat, selectedDate, viewDate, isEndDate} = this.props;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n this.scrollToTop(\n type,\n parseInt(date.format(formatMap[type]), 10),\n i,\n 'init'\n );\n }\n });\n }\n\n updateSelectedDate = (event: React.MouseEvent<any>) => {\n // need confirm\n if (this.props.requiredConfirm) {\n const viewDate = this.props.viewDate.clone();\n const currentDate = this.props.selectedDate || viewDate;\n\n const target = event.target as HTMLElement;\n let modifier = 0;\n\n if (~target.className.indexOf('rdtNew')) {\n modifier = 1;\n }\n if (~target.className.indexOf('rdtOld')) {\n modifier = -1;\n }\n\n viewDate\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value') as string, 10))\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n this.props.setDateTimeState({\n viewDate,\n selectedDate: viewDate.clone()\n });\n return;\n }\n\n this.props.updateSelectedDate(event, true);\n };\n\n componentDidUpdate(preProps: CustomTimeViewProps) {\n if (\n preProps.viewDate !== this.props.viewDate ||\n preProps.selectedDate !== this.props.selectedDate ||\n preProps.timeFormat !== this.props.timeFormat\n ) {\n this.setState(this.calculateState(this.props));\n }\n }\n\n onStartClicking(action: any, type: string) {\n let me: any = this;\n\n return function () {\n let update: any = {};\n update[type] = me[action](type);\n me.setState(update);\n\n me.timer = setTimeout(function () {\n me.increaseTimer = setInterval(function () {\n update[type] = me[action](type);\n me.setState(update);\n }, 70);\n }, 500);\n\n me.mouseUpListener = function () {\n clearTimeout(me.timer);\n clearInterval(me.increaseTimer);\n me.props.setTime(type, me.state[type]);\n document.body.removeEventListener('mouseup', me.mouseUpListener);\n document.body.removeEventListener('touchend', me.mouseUpListener);\n };\n\n document.body.addEventListener('mouseup', me.mouseUpListener);\n document.body.addEventListener('touchend', me.mouseUpListener);\n };\n }\n\n updateMilli(e: any) {\n var milli = parseInt(e.target.value, 10);\n if (milli === e.target.value && milli >= 0 && milli < 1000) {\n this.props.setTime('milliseconds', milli);\n this.setState({milliseconds: milli});\n }\n }\n\n renderHeader() {\n if (!this.props.dateFormat) return null;\n\n var date = this.props.selectedDate || this.props.viewDate;\n return React.createElement(\n 'thead',\n {key: 'h'},\n React.createElement(\n 'tr',\n {},\n React.createElement(\n 'th',\n {\n className: 'rdtSwitch',\n colSpan: 4,\n onClick: this.props.showView('days')\n },\n date.format(this.props.dateFormat as string)\n )\n )\n );\n }\n\n toggleDayPart(type: 'hours') {\n // type is always 'hours'\n var value = parseInt(this.state[type], 10) + 12;\n if (value > this.timeConstraints[type].max)\n value =\n this.timeConstraints[type].min +\n (value - (this.timeConstraints[type].max + 1));\n return this.pad(type, value);\n }\n\n increase(type: TimeScale) {\n var value =\n parseInt(this.state[type], 10) + this.timeConstraints[type].step;\n if (value > this.timeConstraints[type].max)\n value =\n this.timeConstraints[type].min +\n (value - (this.timeConstraints[type].max + 1));\n if (value < this.timeConstraints[type].min) {\n value = this.timeConstraints[type].min;\n }\n return this.pad(type, value);\n }\n\n decrease(type: TimeScale) {\n var value =\n parseInt(this.state[type], 10) - this.timeConstraints[type].step;\n if (value < this.timeConstraints[type].min)\n value =\n this.timeConstraints[type].max +\n 1 -\n (this.timeConstraints[type].min - value);\n return this.pad(type, value);\n }\n\n pad(type: TimeScale, value: number) {\n var str = value + '';\n while (str.length < this.padValues[type]) str = '0' + str;\n return str;\n }\n\n disableContextMenu(event: React.MouseEvent<any>) {\n event.preventDefault();\n return false;\n }\n\n calculateState(props: CustomTimeViewProps) {\n var date = props.selectedDate || props.viewDate,\n format = props.timeFormat,\n counters = [];\n if (format.toLowerCase().indexOf('h') !== -1) {\n counters.push('hours');\n if (format.indexOf('m') !== -1) {\n counters.push('minutes');\n if (format.indexOf('s') !== -1) {\n counters.push('seconds');\n }\n }\n }\n\n var hours = parseInt(date.format('H'), 10);\n\n let daypart: any = false;\n if (\n this.state !== null &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n if (this.props.timeFormat.indexOf(' A') !== -1) {\n daypart = hours >= 12 ? 'PM' : 'AM';\n } else {\n daypart = hours >= 12 ? 'pm' : 'am';\n }\n }\n\n return {\n hours: hours,\n minutes: date.format('mm'),\n seconds: date.format('ss'),\n milliseconds: date.format('SSS'),\n daypart: daypart,\n counters: counters\n };\n }\n\n renderDayPart = () => {\n const {translate: __, classnames: cx} = this.props;\n return (\n <div\n key=\"dayPart\"\n className={cx('CalendarCounter CalendarCounter--daypart')}\n >\n <span\n key=\"up\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--up')}\n onClick={this.onStartClicking('toggleDayPart', 'hours')}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n <div className={cx('CalendarCounter-value')} key={this.state.daypart}>\n {__(this.state.daypart)}\n </div>\n <span\n key=\"down\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--down')}\n onClick={this.onStartClicking('toggleDayPart', 'hours')}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n </div>\n );\n };\n\n getCounterValue = (type: string) => {\n if (type !== 'daypart') {\n let value = this.state[type];\n if (\n type === 'hours' &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n value = ((value - 1) % 12) + 1;\n\n if (value === 0) {\n value = 12;\n }\n }\n return parseInt(value);\n }\n return 0;\n };\n\n renderCounter = (type: TimeScale | 'daypart') => {\n const cx = this.props.classnames;\n if (type !== 'daypart') {\n const value = this.getCounterValue(type);\n\n const {min, max, step} = this.timeConstraints[type];\n\n return (\n <div key={type} className={cx('CalendarCounter')}>\n <span\n key=\"up\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--up')}\n onMouseDown={this.onStartClicking('increase', type)}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n\n <div key=\"c\" className={cx('CalendarCounter-value')}>\n <input\n type=\"text\"\n value={this.pad(type, value)}\n className={cx('CalendarInput')}\n min={min}\n max={max}\n step={step}\n onChange={e =>\n this.props.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(e.currentTarget.value.replace(/\\D/g, ''), 10) ||\n 0,\n max\n )\n )\n )\n }\n />\n </div>\n\n <span\n key=\"do\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--down')}\n onMouseDown={this.onStartClicking('decrease', type)}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n </div>\n );\n }\n return null;\n };\n\n onConfirm = (value: (number | string)[]) => {\n // 修正am、pm\n const hourIndex = this.state.counters.indexOf('hours');\n if (\n hourIndex !== -1 &&\n this.state.daypart !== false &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n const amMode: string = value.splice(-1, 1)[0] as string;\n let hour = (value[hourIndex] as number) % 12;\n // 修正pm\n amMode.toLowerCase().indexOf('p') !== -1 && (hour = hour + 12);\n value[hourIndex] = hour;\n }\n\n this.props.onConfirm &&\n this.props.onConfirm(value as number[], this.state.counters);\n };\n\n getDayPartOptions = () => {\n const {translate: __} = this.props;\n let options = ['am', 'pm'];\n if (this.props.timeFormat.indexOf(' A') !== -1) {\n options = ['AM', 'PM'];\n }\n\n return options.map(daypart => ({\n text: __(daypart),\n value: daypart\n }));\n };\n\n onPickerChange = (value: (number | string)[], index: number) => {\n const time: {[prop: string]: any} = {};\n this.state.counters.forEach((type, i) => (time[type] = value[i]));\n if (\n this.state.daypart !== false &&\n index > this.state.counters.length - 1\n ) {\n time.daypart = value[value.length - 1];\n }\n this.setState((prevState: CustomTimeViewState) => {\n return {...prevState, ...time};\n });\n // @ts-ignore\n this.props.onChange && this.props.onChange(value);\n };\n\n renderTimeViewPicker = () => {\n const {translate: __} = this.props;\n const title = __('Date.titleTime');\n const columns: PickerColumnItem[] = [];\n const values = [];\n\n this.state.counters.forEach((type: TimeScale | 'daypart') => {\n if (type !== 'daypart') {\n let {min, max, step} = this.timeConstraints[type];\n // 修正am pm时hours可选最大值\n if (\n type === 'hours' &&\n this.state.daypart !== false &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n max = max > 12 ? 12 : max;\n }\n columns.push({\n options: getRange(min, max, step).map(item => {\n return {\n text: this.pad(type, item),\n value: item\n };\n })\n });\n values.push(parseInt(this.state[type], 10));\n }\n });\n if (this.state.daypart !== false) {\n columns.push({\n options: this.getDayPartOptions()\n });\n values.push(this.state.daypart);\n }\n\n return (\n <Picker\n translate={this.props.translate}\n locale={this.props.locale}\n title={title}\n columns={columns}\n value={values}\n onConfirm={this.onConfirm}\n onClose={this.props.onClose}\n showToolbar={this.props.showToolbar}\n onChange={this.onPickerChange}\n />\n );\n };\n\n setTime = (type: TimeScale, value: number) => {\n const date = (this.props.selectedDate || this.props.viewDate).clone();\n date[type](value);\n\n this.props.setDateTimeState({\n viewDate: date.clone(),\n selectedDate: date.clone()\n });\n\n if (!this.props.requiredConfirm) {\n this.props.onChange(date);\n }\n };\n\n scrollToTop = (type: TimeScale, value: number, i: number, label?: string) => {\n let elf: any = document.getElementById(\n `${this.state.uniqueTag}-${i}-input`\n );\n elf.parentNode.scrollTo({\n top: value * 28,\n behavior: label === 'init' ? 'auto' : 'smooth'\n });\n };\n\n confirm = () => {\n let date = (this.props.selectedDate || this.props.viewDate).clone();\n\n // 如果 minDate 是可用的,且比当前日期晚,则用 minDate\n if (this.props.minDate?.isValid() && this.props.minDate?.isAfter(date)) {\n date = this.props.minDate.clone();\n }\n\n this.props.setDateTimeState({\n selectedDate: date\n });\n this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n cancel = () => {\n this.props.onClose && this.props.onClose();\n };\n\n computedTimeOptions(timeScale: TimeScale) {\n const {min, max, step} = this.timeConstraints?.[timeScale];\n\n return Array.from({length: max - min + 1}, (item, index) => {\n const value = (index + min)\n .toString()\n .padStart(timeScale !== 'milliseconds' ? 2 : 3, '0');\n\n return index % step === 0 ? {label: value, value} : undefined;\n }).filter((item): item is {label: string; value: string} => !!item);\n }\n\n render() {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n classnames: cx,\n timeRangeHeader\n } = this.props;\n\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n const inputs: Array<React.ReactNode> = [];\n const timeConstraints = this.timeConstraints;\n\n if (isMobile() && this.props.useMobileUI) {\n return (\n <div className={cx('CalendarTime')}>{this.renderTimeViewPicker()}</div>\n );\n }\n\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n const min = timeConstraints[type].min;\n const max = timeConstraints[type].max;\n const options = this.computedTimeOptions(type);\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n\n inputs.push(\n <Downshift\n key={i + 'input'}\n inputValue={date.format(formatMap[type])}\n >\n {({getInputProps, openMenu, closeMenu}) => {\n const inputProps = getInputProps({\n onFocus: () => openMenu(),\n onChange: (e: any) =>\n this.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(\n e.currentTarget.value.replace(/\\D/g, ''),\n 10\n ) || 0,\n max\n )\n )\n )\n });\n return (\n <div className={cx('CalendarInputWrapper')}>\n <div\n className={cx(\n 'CalendarInput-sugs',\n type === 'hours'\n ? 'CalendarInput-sugsHours'\n : 'CalendarInput-sugsTimes'\n )}\n id={`${this.state.uniqueTag}-${i}-input`}\n >\n {options.map(option => {\n return (\n <div\n key={option.value}\n className={cx('CalendarInput-sugsItem', {\n 'is-highlight':\n option.value === date.format(formatMap[type])\n })}\n onClick={() => {\n this.setTime(type, parseInt(option.value, 10));\n this.scrollToTop(\n type,\n parseInt(option.value, 10),\n i\n );\n closeMenu();\n }}\n >\n {option.value}\n </div>\n );\n })}\n </div>\n </div>\n );\n }}\n </Downshift>\n );\n inputs.push(<span key={i + 'divider'}></span>);\n }\n });\n inputs.length && inputs.pop();\n return (\n <>\n <div className={cx(timeRangeHeader ? 'TimeRangeHeaderWrapper' : null)}>\n {timeRangeHeader}\n </div>\n <div>{inputs}</div>\n </>\n );\n }\n}\n\nexport default localeable(CustomTimeView as any);\n"
|
11
|
+
"import moment from 'moment';\nimport React from 'react';\nimport merge from 'lodash/merge';\nimport {LocaleProps, localeable} from '../../locale';\nimport {Icon} from '../icons';\nimport {ClassNamesFn} from '../../theme';\nimport Picker from '../Picker';\nimport {PickerColumnItem} from '../PickerColumn';\nimport {getRange, isMobile} from '../../utils/helper';\nimport Downshift from 'downshift';\n\ninterface CustomTimeViewProps extends LocaleProps {\n viewDate: moment.Moment;\n selectedDate: moment.Moment;\n dateFormat?: boolean | string;\n minDate: moment.Moment;\n maxDate: moment.Moment;\n subtractTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n addTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n showView: (view: string) => () => void;\n updateSelectedDate: (event: React.MouseEvent<any>, close?: boolean) => void;\n timeFormat: string;\n requiredConfirm?: boolean;\n isEndDate?: boolean;\n classnames: ClassNamesFn;\n setTime: (type: string, amount: number) => void;\n scrollToTop: (\n type: string,\n amount: number,\n i: number,\n lable?: string\n ) => void;\n onClose?: () => void;\n onConfirm?: (value: number[], types: string[]) => void;\n setDateTimeState: (state: any) => void;\n useMobileUI: boolean;\n showToolbar?: boolean;\n onChange: (value: moment.Moment) => void;\n timeConstraints?: any;\n timeRangeHeader?: string;\n}\n\ninterface CustomTimeViewState {\n daypart: any;\n hours: any;\n counters: Array<string>;\n [propName: string]: any;\n}\n\nexport type TimeScale = 'hours' | 'minutes' | 'seconds' | 'milliseconds';\n\nexport class CustomTimeView extends React.Component<\n CustomTimeViewProps & LocaleProps,\n CustomTimeViewState\n> {\n padValues = {\n hours: 2,\n minutes: 2,\n seconds: 2,\n milliseconds: 3\n };\n\n timeConstraints = {\n hours: {\n min: 0,\n max: 23,\n step: 1\n },\n minutes: {\n min: 0,\n max: 59,\n step: 1\n },\n seconds: {\n min: 0,\n max: 59,\n step: 1\n },\n milliseconds: {\n min: 0,\n max: 999,\n step: 1\n }\n };\n\n static defaultProps = {\n showToolbar: true\n };\n\n timer?: any;\n increaseTimer?: any;\n\n constructor(props: any) {\n super(props);\n this.state = {\n ...this.calculateState(this.props),\n uniqueTag: 0\n };\n\n if (this.props.timeConstraints) {\n this.timeConstraints = merge(\n this.timeConstraints,\n this.props.timeConstraints\n );\n }\n }\n\n componentWillMount() {\n this.setState({uniqueTag: new Date().valueOf()});\n }\n\n componentDidMount() {\n const {timeFormat, selectedDate, viewDate, isEndDate} = this.props;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n this.scrollToTop(\n type,\n parseInt(date.format(formatMap[type]), 10),\n i,\n 'init'\n );\n }\n });\n }\n\n updateSelectedDate = (event: React.MouseEvent<any>) => {\n // need confirm\n if (this.props.requiredConfirm) {\n const viewDate = this.props.viewDate.clone();\n const currentDate = this.props.selectedDate || viewDate;\n\n const target = event.target as HTMLElement;\n let modifier = 0;\n\n if (~target.className.indexOf('rdtNew')) {\n modifier = 1;\n }\n if (~target.className.indexOf('rdtOld')) {\n modifier = -1;\n }\n\n viewDate\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value') as string, 10))\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n this.props.setDateTimeState({\n viewDate,\n selectedDate: viewDate.clone()\n });\n return;\n }\n\n this.props.updateSelectedDate(event, true);\n };\n\n componentDidUpdate(preProps: CustomTimeViewProps) {\n if (\n preProps.viewDate !== this.props.viewDate ||\n preProps.selectedDate !== this.props.selectedDate ||\n preProps.timeFormat !== this.props.timeFormat\n ) {\n this.setState(this.calculateState(this.props));\n }\n }\n\n onStartClicking(action: any, type: string) {\n let me: any = this;\n\n return function () {\n let update: any = {};\n update[type] = me[action](type);\n me.setState(update);\n\n me.timer = setTimeout(function () {\n me.increaseTimer = setInterval(function () {\n update[type] = me[action](type);\n me.setState(update);\n }, 70);\n }, 500);\n\n me.mouseUpListener = function () {\n clearTimeout(me.timer);\n clearInterval(me.increaseTimer);\n me.props.setTime(type, me.state[type]);\n document.body.removeEventListener('mouseup', me.mouseUpListener);\n document.body.removeEventListener('touchend', me.mouseUpListener);\n };\n\n document.body.addEventListener('mouseup', me.mouseUpListener);\n document.body.addEventListener('touchend', me.mouseUpListener);\n };\n }\n\n updateMilli(e: any) {\n var milli = parseInt(e.target.value, 10);\n if (milli === e.target.value && milli >= 0 && milli < 1000) {\n this.props.setTime('milliseconds', milli);\n this.setState({milliseconds: milli});\n }\n }\n\n renderHeader() {\n if (!this.props.dateFormat) return null;\n\n var date = this.props.selectedDate || this.props.viewDate;\n return React.createElement(\n 'thead',\n {key: 'h'},\n React.createElement(\n 'tr',\n {},\n React.createElement(\n 'th',\n {\n className: 'rdtSwitch',\n colSpan: 4,\n onClick: this.props.showView('days')\n },\n date.format(this.props.dateFormat as string)\n )\n )\n );\n }\n\n toggleDayPart(type: 'hours') {\n // type is always 'hours'\n var value = parseInt(this.state[type], 10) + 12;\n if (value > this.timeConstraints[type].max)\n value =\n this.timeConstraints[type].min +\n (value - (this.timeConstraints[type].max + 1));\n return this.pad(type, value);\n }\n\n increase(type: TimeScale) {\n var value =\n parseInt(this.state[type], 10) + this.timeConstraints[type].step;\n if (value > this.timeConstraints[type].max)\n value =\n this.timeConstraints[type].min +\n (value - (this.timeConstraints[type].max + 1));\n if (value < this.timeConstraints[type].min) {\n value = this.timeConstraints[type].min;\n }\n return this.pad(type, value);\n }\n\n decrease(type: TimeScale) {\n var value =\n parseInt(this.state[type], 10) - this.timeConstraints[type].step;\n if (value < this.timeConstraints[type].min)\n value =\n this.timeConstraints[type].max +\n 1 -\n (this.timeConstraints[type].min - value);\n return this.pad(type, value);\n }\n\n pad(type: TimeScale, value: number) {\n var str = value + '';\n while (str.length < this.padValues[type]) str = '0' + str;\n return str;\n }\n\n disableContextMenu(event: React.MouseEvent<any>) {\n event.preventDefault();\n return false;\n }\n\n calculateState(props: CustomTimeViewProps) {\n var date = props.selectedDate || props.viewDate,\n format = props.timeFormat,\n counters = [];\n if (format.toLowerCase().indexOf('h') !== -1) {\n counters.push('hours');\n if (format.indexOf('m') !== -1) {\n counters.push('minutes');\n if (format.indexOf('s') !== -1) {\n counters.push('seconds');\n }\n }\n }\n\n var hours = parseInt(date.format('H'), 10);\n\n let daypart: any = false;\n if (\n this.state !== null &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n if (this.props.timeFormat.indexOf(' A') !== -1) {\n daypart = hours >= 12 ? 'PM' : 'AM';\n } else {\n daypart = hours >= 12 ? 'pm' : 'am';\n }\n }\n\n return {\n hours: hours,\n minutes: date.format('mm'),\n seconds: date.format('ss'),\n milliseconds: date.format('SSS'),\n daypart: daypart,\n counters: counters\n };\n }\n\n renderDayPart = () => {\n const {translate: __, classnames: cx} = this.props;\n return (\n <div\n key=\"dayPart\"\n className={cx('CalendarCounter CalendarCounter--daypart')}\n >\n <span\n key=\"up\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--up')}\n onClick={this.onStartClicking('toggleDayPart', 'hours')}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n <div className={cx('CalendarCounter-value')} key={this.state.daypart}>\n {__(this.state.daypart)}\n </div>\n <span\n key=\"down\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--down')}\n onClick={this.onStartClicking('toggleDayPart', 'hours')}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n </div>\n );\n };\n\n getCounterValue = (type: string) => {\n if (type !== 'daypart') {\n let value = this.state[type];\n if (\n type === 'hours' &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n value = ((value - 1) % 12) + 1;\n\n if (value === 0) {\n value = 12;\n }\n }\n return parseInt(value);\n }\n return 0;\n };\n\n renderCounter = (type: TimeScale | 'daypart') => {\n const cx = this.props.classnames;\n if (type !== 'daypart') {\n const value = this.getCounterValue(type);\n\n const {min, max, step} = this.timeConstraints[type];\n\n return (\n <div key={type} className={cx('CalendarCounter')}>\n <span\n key=\"up\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--up')}\n onMouseDown={this.onStartClicking('increase', type)}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n\n <div key=\"c\" className={cx('CalendarCounter-value')}>\n <input\n type=\"text\"\n value={this.pad(type, value)}\n className={cx('CalendarInput')}\n min={min}\n max={max}\n step={step}\n onChange={e =>\n this.props.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(e.currentTarget.value.replace(/\\D/g, ''), 10) ||\n 0,\n max\n )\n )\n )\n }\n />\n </div>\n\n <span\n key=\"do\"\n className={cx('CalendarCounter-btn CalendarCounter-btn--down')}\n onMouseDown={this.onStartClicking('decrease', type)}\n onContextMenu={this.disableContextMenu}\n >\n <Icon icon=\"right-arrow-bold\" />\n </span>\n </div>\n );\n }\n return null;\n };\n\n onConfirm = (value: (number | string)[]) => {\n // 修正am、pm\n const hourIndex = this.state.counters.indexOf('hours');\n if (\n hourIndex !== -1 &&\n this.state.daypart !== false &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n const amMode: string = value.splice(-1, 1)[0] as string;\n let hour = (value[hourIndex] as number) % 12;\n // 修正pm\n amMode.toLowerCase().indexOf('p') !== -1 && (hour = hour + 12);\n value[hourIndex] = hour;\n }\n\n this.props.onConfirm &&\n this.props.onConfirm(value as number[], this.state.counters);\n };\n\n getDayPartOptions = () => {\n const {translate: __} = this.props;\n let options = ['am', 'pm'];\n if (this.props.timeFormat.indexOf(' A') !== -1) {\n options = ['AM', 'PM'];\n }\n\n return options.map(daypart => ({\n text: __(daypart),\n value: daypart\n }));\n };\n\n onPickerChange = (value: (number | string)[], index: number) => {\n const time: {[prop: string]: any} = {};\n this.state.counters.forEach((type, i) => (time[type] = value[i]));\n if (\n this.state.daypart !== false &&\n index > this.state.counters.length - 1\n ) {\n time.daypart = value[value.length - 1];\n }\n this.setState((prevState: CustomTimeViewState) => {\n return {...prevState, ...time};\n });\n // @ts-ignore\n this.props.onChange && this.props.onChange(value);\n };\n\n renderTimeViewPicker = () => {\n const {translate: __} = this.props;\n const title = __('Date.titleTime');\n const columns: PickerColumnItem[] = [];\n const values = [];\n\n this.state.counters.forEach((type: TimeScale | 'daypart') => {\n if (type !== 'daypart') {\n let {min, max, step} = this.timeConstraints[type];\n // 修正am pm时hours可选最大值\n if (\n type === 'hours' &&\n this.state.daypart !== false &&\n this.props.timeFormat.toLowerCase().indexOf(' a') !== -1\n ) {\n max = max > 12 ? 12 : max;\n }\n columns.push({\n options: getRange(min, max, step).map(item => {\n return {\n text: this.pad(type, item),\n value: item\n };\n })\n });\n values.push(parseInt(this.state[type], 10));\n }\n });\n if (this.state.daypart !== false) {\n columns.push({\n options: this.getDayPartOptions()\n });\n values.push(this.state.daypart);\n }\n\n return (\n <Picker\n translate={this.props.translate}\n locale={this.props.locale}\n title={title}\n columns={columns}\n value={values}\n onConfirm={this.onConfirm}\n onClose={this.props.onClose}\n showToolbar={this.props.showToolbar}\n onChange={this.onPickerChange}\n />\n );\n };\n\n setTime = (type: TimeScale, value: number) => {\n const date = (this.props.selectedDate || this.props.viewDate).clone();\n date[type](value);\n\n this.props.setDateTimeState({\n viewDate: date.clone(),\n selectedDate: date.clone()\n });\n\n if (!this.props.requiredConfirm) {\n this.props.onChange(date);\n }\n };\n\n scrollToTop = (type: TimeScale, value: number, i: number, label?: string) => {\n const elf: any = document.getElementById(\n `${this.state.uniqueTag}-${i}-input`\n );\n const {min, step} = this.timeConstraints[type];\n const offset = (value - min) / step;\n const height = 28; /** 单个选项的高度 */\n\n elf?.parentNode?.scrollTo({\n top: offset * height,\n behavior: label === 'init' ? 'auto' : 'smooth'\n });\n };\n\n confirm = () => {\n let date = (this.props.selectedDate || this.props.viewDate).clone();\n\n // 如果 minDate 是可用的,且比当前日期晚,则用 minDate\n if (this.props.minDate?.isValid() && this.props.minDate?.isAfter(date)) {\n date = this.props.minDate.clone();\n }\n\n this.props.setDateTimeState({\n selectedDate: date\n });\n this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n cancel = () => {\n this.props.onClose && this.props.onClose();\n };\n\n computedTimeOptions(timeScale: TimeScale) {\n const {min, max, step} = this.timeConstraints?.[timeScale];\n\n return Array.from({length: max - min + 1}, (item, index) => {\n const value = (index + min)\n .toString()\n .padStart(timeScale !== 'milliseconds' ? 2 : 3, '0');\n\n return index % step === 0 ? {label: value, value} : undefined;\n }).filter((item): item is {label: string; value: string} => !!item);\n }\n\n render() {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n classnames: cx,\n timeRangeHeader\n } = this.props;\n\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n const inputs: Array<React.ReactNode> = [];\n const timeConstraints = this.timeConstraints;\n\n if (isMobile() && this.props.useMobileUI) {\n return (\n <div className={cx('CalendarTime')}>{this.renderTimeViewPicker()}</div>\n );\n }\n\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n const min = timeConstraints[type].min;\n const max = timeConstraints[type].max;\n const options = this.computedTimeOptions(type);\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n\n inputs.push(\n <Downshift\n key={i + 'input'}\n inputValue={date.format(formatMap[type])}\n >\n {({getInputProps, openMenu, closeMenu}) => {\n const inputProps = getInputProps({\n onFocus: () => openMenu(),\n onChange: (e: any) =>\n this.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(\n e.currentTarget.value.replace(/\\D/g, ''),\n 10\n ) || 0,\n max\n )\n )\n )\n });\n return (\n <div className={cx('CalendarInputWrapper')}>\n <div\n className={cx(\n 'CalendarInput-sugs',\n type === 'hours'\n ? 'CalendarInput-sugsHours'\n : 'CalendarInput-sugsTimes'\n )}\n id={`${this.state.uniqueTag}-${i}-input`}\n >\n {options.map(option => {\n return (\n <div\n key={option.value}\n className={cx('CalendarInput-sugsItem', {\n 'is-highlight': selectedDate\n ? option.value === date.format(formatMap[type])\n : option.value === options?.[0]?.value\n })}\n onClick={() => {\n this.setTime(type, parseInt(option.value, 10));\n this.scrollToTop(\n type,\n parseInt(option.value, 10),\n i\n );\n closeMenu();\n }}\n >\n {option.value}\n </div>\n );\n })}\n </div>\n </div>\n );\n }}\n </Downshift>\n );\n inputs.push(<span key={i + 'divider'}></span>);\n }\n });\n inputs.length && inputs.pop();\n return (\n <>\n <div className={cx(timeRangeHeader ? 'TimeRangeHeaderWrapper' : null)}>\n {timeRangeHeader}\n </div>\n <div>{inputs}</div>\n </>\n );\n }\n}\n\nexport default localeable(CustomTimeView as any);\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -123,9 +123,9 @@ var FormulaPicker = /** @class */ (function (_super) {
|
|
123
123
|
};
|
124
124
|
FormulaPicker.prototype.render = function () {
|
125
125
|
var _a, _b, _c;
|
126
|
-
var _d, _e, _f, _g;
|
127
|
-
var
|
128
|
-
var
|
126
|
+
var _d, _e, _f, _g, _h;
|
127
|
+
var _j = this.props, cx = _j.classnames, __ = _j.translate, disabled = _j.disabled, allowInput = _j.allowInput, className = _j.className, onChange = _j.onChange, size = _j.size, borderMode = _j.borderMode, placeholder = _j.placeholder, mode = _j.mode, btnLabel = _j.btnLabel, level = _j.level, btnSize = _j.btnSize, icon = _j.icon, title = _j.title, clearable = _j.clearable, variables = _j.variables, functions = _j.functions, children = _j.children, variableMode = _j.variableMode, rest = (0, tslib_1.__rest)(_j, ["classnames", "translate", "disabled", "allowInput", "className", "onChange", "size", "borderMode", "placeholder", "mode", "btnLabel", "level", "btnSize", "icon", "title", "clearable", "variables", "functions", "children", "variableMode"]);
|
128
|
+
var _k = this.state, isOpened = _k.isOpened, value = _k.value, editorValue = _k.editorValue, isError = _k.isError;
|
129
129
|
var iconElement = (0, icon_1.generateIcon)(cx, icon, 'Icon');
|
130
130
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
131
131
|
children ? (children({
|
@@ -151,7 +151,7 @@ var FormulaPicker = /** @class */ (function (_super) {
|
|
151
151
|
react_1.default.createElement(Modal_1.default, { size: "md", closeOnEsc: true, show: this.state.isOpened, onHide: this.close },
|
152
152
|
react_1.default.createElement(Modal_1.default.Header, { onClose: this.close, className: "font-bold" }, __(title || 'FormulaEditor.title')),
|
153
153
|
react_1.default.createElement(Modal_1.default.Body, null,
|
154
|
-
react_1.default.createElement(Editor_2.default, (0, tslib_1.__assign)({}, rest, { variables: (_f = this.state.variables) !== null && _f !== void 0 ? _f : variables, functions: (_g = this.state.functions) !== null && _g !== void 0 ? _g : functions, variableMode: this.state.variableMode, value: editorValue, onChange: this.handleEditorChange }))),
|
154
|
+
react_1.default.createElement(Editor_2.default, (0, tslib_1.__assign)({}, rest, { variables: (_f = this.state.variables) !== null && _f !== void 0 ? _f : variables, functions: (_g = this.state.functions) !== null && _g !== void 0 ? _g : functions, variableMode: (_h = this.state.variableMode) !== null && _h !== void 0 ? _h : variableMode, value: editorValue, onChange: this.handleEditorChange }))),
|
155
155
|
react_1.default.createElement(Modal_1.default.Footer, null,
|
156
156
|
!!isError ? (react_1.default.createElement("div", { className: cx('Dialog-info'), key: "info" },
|
157
157
|
react_1.default.createElement("span", { className: cx('Dialog-error') }, __('FormulaEditor.invalidData', { err: isError })))) : null,
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/formula/Picker.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import {uncontrollable} from 'uncontrollable';\nimport React from 'react';\nimport {\n FormulaEditor,\n FormulaEditorProps,\n FuncGroup,\n VariableItem\n} from './Editor';\nimport {autobind, noop} from '../../utils/helper';\nimport {generateIcon} from '../../utils/icon';\nimport Editor from './Editor';\nimport ResultBox from '../ResultBox';\nimport Button from '../Button';\nimport {Icon} from '../icons';\nimport Modal from '../Modal';\nimport {themeable} from '../../theme';\nimport {localeable} from '../../locale';\nimport type {SchemaIcon} from '../../Schema';\nimport {parse, Evaluator} from 'amis-formula';\n\nexport interface FormulaPickerProps extends FormulaEditorProps {\n // 新的属性?\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * 编辑器标题\n */\n title?: string;\n\n /**\n * 按钮图标\n */\n icon?: SchemaIcon;\n\n /**\n * 控件模式\n */\n mode?: 'button' | 'input-button';\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 按钮Label,inputMode为button时生效\n */\n btnLabel?: string;\n\n /**\n * 按钮样式\n */\n level?:\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'link'\n | 'primary'\n | 'dark'\n | 'light';\n\n /**\n * 按钮大小\n */\n btnSize?: 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 禁用状态\n */\n disabled?: boolean;\n\n /**\n * 是否允许输入,否需要点击fx在弹窗中输入\n */\n allowInput?: boolean;\n\n /**\n * 占位文本\n */\n placeholder?: string;\n\n /**\n * 可清除\n */\n clearable?: boolean;\n\n /**\n * 支持通过上下文变量配置value\n */\n source?: string;\n\n /**\n * 外层透传的 data,和source配合使用\n */\n data?: any;\n\n /**\n * 公式弹出的时候,可以外部设置 variables 和 functions\n */\n onPickerOpen?: (props: FormulaPickerProps) => any;\n\n children?: (props: {\n onClick: (e: React.MouseEvent) => void;\n setState: (state: any) => void;\n isOpened: boolean;\n }) => JSX.Element;\n\n onConfirm?: (value?: any) => void;\n\n onRef?: (node: any) => void;\n}\n\nexport interface FormulaPickerState {\n isOpened: boolean;\n value: string;\n editorValue: string;\n isError: boolean | string;\n\n variables?: Array<VariableItem>;\n functions?: Array<FuncGroup>;\n variableMode?: any;\n}\n\nexport class FormulaPicker extends React.Component<\n FormulaPickerProps,\n FormulaPickerState\n> {\n constructor(props: FormulaPickerProps) {\n super(props);\n this.props.onRef && this.props.onRef(this);\n }\n\n static defaultProps = {\n evalMode: true\n };\n\n state: FormulaPickerState = {\n isOpened: false,\n value: this.props.value!,\n editorValue: this.props.value!,\n isError: false\n };\n\n @autobind\n handleConfirm() {\n const value = this.state.value;\n\n if (this.props.onConfirm) {\n this.props.onConfirm(value);\n } else {\n this.props.onChange?.(value);\n }\n }\n\n @autobind\n renderFormulaValue(item: any) {\n const {allowInput, classnames: cx} = this.props;\n const html = {__html: item.html};\n if (allowInput) {\n return '';\n }\n return (\n <div\n className={cx('FormulaPicker-ResultBox')}\n dangerouslySetInnerHTML={html}\n ></div>\n );\n }\n\n @autobind\n handleInputChange(value: string) {\n this.setState({value}, () => this.handleConfirm());\n }\n\n @autobind\n handleEditorChange(value: string) {\n this.setState({\n editorValue: value,\n isError: false\n });\n }\n\n @autobind\n handleEditorConfirm() {\n const {translate: __} = this.props;\n const value = this.state.editorValue;\n const validate = this.validate(value);\n\n if (validate === true) {\n this.setState({value}, () => {\n this.close(undefined, () => this.handleConfirm());\n });\n } else {\n this.setState({isError: validate});\n }\n }\n\n @autobind\n async handleClick() {\n const state = {\n ...(await this.props.onPickerOpen?.(this.props)),\n editorValue: this.props.value,\n isOpened: true\n };\n\n this.setState(state);\n }\n\n @autobind\n close(e?: any, callback?: () => void) {\n this.setState(\n {\n isOpened: false,\n isError: false\n },\n () => {\n if (callback) {\n callback();\n return;\n }\n }\n );\n }\n\n @autobind\n updateState(state: any = {}) {\n const {isOpened, ...rest} = state;\n this.setState({\n ...this.state,\n ...rest\n });\n }\n\n @autobind\n validate(value: string) {\n const {translate: __} = this.props;\n\n try {\n const ast = parse(value, {\n evalMode: this.props.evalMode,\n allowFilter: false\n });\n\n new Evaluator({}).evalute(ast);\n\n return true;\n } catch (e) {\n if (/\\s(\\d+:\\d+)$/.test(e.message)) {\n const [, position] = /\\s(\\d+:\\d+)$/.exec(e.message) || [];\n return position;\n }\n return e.message;\n }\n }\n\n render() {\n let {\n classnames: cx,\n translate: __,\n disabled,\n allowInput,\n className,\n onChange,\n size,\n borderMode,\n placeholder,\n mode,\n btnLabel,\n level,\n btnSize,\n icon,\n title,\n clearable,\n variables,\n functions,\n children,\n ...rest\n } = this.props;\n const {isOpened, value, editorValue, isError} = this.state;\n\n const iconElement = generateIcon(cx, icon, 'Icon');\n\n return (\n <>\n {children ? (\n children({\n isOpened: this.state.isOpened,\n onClick: this.handleClick,\n setState: this.updateState\n })\n ) : (\n <div className={cx('FormulaPicker', className)}>\n {mode === 'button' ? (\n <Button\n className={cx('FormulaPicker-action', 'w-full')}\n level={level}\n size={btnSize}\n onClick={this.handleClick}\n >\n {iconElement ? (\n React.cloneElement(iconElement, {\n className: cx(\n iconElement?.props?.className ?? '',\n 'FormulaPicker-icon',\n {\n ['is-filled']: !!value\n }\n )\n })\n ) : (\n <Icon\n icon=\"function\"\n className={cx('FormulaPicker-icon', 'icon', {\n ['is-filled']: !!value\n })}\n />\n )}\n <span className={cx('FormulaPicker-label')}>\n {__(btnLabel || 'FormulaEditor.btnLabel')}\n </span>\n </Button>\n ) : (\n <>\n <ResultBox\n className={cx(\n 'FormulaPicker-input',\n isOpened ? 'is-active' : '',\n !!isError ? 'is-error' : ''\n )}\n allowInput={allowInput}\n clearable={clearable}\n value={value}\n result={\n allowInput\n ? void 0\n : FormulaEditor.highlightValue(\n value,\n variables!,\n this.props.evalMode\n )\n }\n itemRender={this.renderFormulaValue}\n onResultChange={noop}\n onChange={this.handleInputChange}\n disabled={disabled}\n borderMode={borderMode}\n placeholder={placeholder}\n />\n\n <Button\n className={cx('FormulaPicker-action')}\n onClick={this.handleClick}\n >\n <Icon\n icon=\"function\"\n className={cx('FormulaPicker-icon', 'icon', {\n ['is-filled']: !!value\n })}\n />\n </Button>\n </>\n )}\n </div>\n )}\n <Modal\n size=\"md\"\n closeOnEsc\n show={this.state.isOpened}\n onHide={this.close}\n >\n <Modal.Header onClose={this.close} className=\"font-bold\">\n {__(title || 'FormulaEditor.title')}\n </Modal.Header>\n <Modal.Body>\n <Editor\n {...rest}\n variables={this.state.variables ?? variables}\n functions={this.state.functions ?? functions}\n variableMode={this.state.variableMode}\n value={editorValue}\n onChange={this.handleEditorChange}\n />\n </Modal.Body>\n <Modal.Footer>\n {!!isError ? (\n <div className={cx('Dialog-info')} key=\"info\">\n <span className={cx('Dialog-error')}>\n {__('FormulaEditor.invalidData', {err: isError})}\n </span>\n </div>\n ) : null}\n <Button onClick={this.close}>{__('cancel')}</Button>\n <Button onClick={this.handleEditorConfirm} level=\"primary\">\n {__('confirm')}\n </Button>\n </Modal.Footer>\n </Modal>\n </>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(FormulaPicker, {\n value: 'onChange'\n })\n )\n);\n"
|
11
|
+
"import {uncontrollable} from 'uncontrollable';\nimport React from 'react';\nimport {\n FormulaEditor,\n FormulaEditorProps,\n FuncGroup,\n VariableItem\n} from './Editor';\nimport {autobind, noop} from '../../utils/helper';\nimport {generateIcon} from '../../utils/icon';\nimport Editor from './Editor';\nimport ResultBox from '../ResultBox';\nimport Button from '../Button';\nimport {Icon} from '../icons';\nimport Modal from '../Modal';\nimport {themeable} from '../../theme';\nimport {localeable} from '../../locale';\nimport type {SchemaIcon} from '../../Schema';\nimport {parse, Evaluator} from 'amis-formula';\n\nexport interface FormulaPickerProps extends FormulaEditorProps {\n // 新的属性?\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * 编辑器标题\n */\n title?: string;\n\n /**\n * 按钮图标\n */\n icon?: SchemaIcon;\n\n /**\n * 控件模式\n */\n mode?: 'button' | 'input-button';\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 按钮Label,inputMode为button时生效\n */\n btnLabel?: string;\n\n /**\n * 按钮样式\n */\n level?:\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'link'\n | 'primary'\n | 'dark'\n | 'light';\n\n /**\n * 按钮大小\n */\n btnSize?: 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 禁用状态\n */\n disabled?: boolean;\n\n /**\n * 是否允许输入,否需要点击fx在弹窗中输入\n */\n allowInput?: boolean;\n\n /**\n * 占位文本\n */\n placeholder?: string;\n\n /**\n * 可清除\n */\n clearable?: boolean;\n\n /**\n * 支持通过上下文变量配置value\n */\n source?: string;\n\n /**\n * 外层透传的 data,和source配合使用\n */\n data?: any;\n\n /**\n * 公式弹出的时候,可以外部设置 variables 和 functions\n */\n onPickerOpen?: (props: FormulaPickerProps) => any;\n\n children?: (props: {\n onClick: (e: React.MouseEvent) => void;\n setState: (state: any) => void;\n isOpened: boolean;\n }) => JSX.Element;\n\n onConfirm?: (value?: any) => void;\n\n onRef?: (node: any) => void;\n}\n\nexport interface FormulaPickerState {\n isOpened: boolean;\n value: string;\n editorValue: string;\n isError: boolean | string;\n\n variables?: Array<VariableItem>;\n functions?: Array<FuncGroup>;\n variableMode?: any;\n}\n\nexport class FormulaPicker extends React.Component<\n FormulaPickerProps,\n FormulaPickerState\n> {\n constructor(props: FormulaPickerProps) {\n super(props);\n this.props.onRef && this.props.onRef(this);\n }\n\n static defaultProps = {\n evalMode: true\n };\n\n state: FormulaPickerState = {\n isOpened: false,\n value: this.props.value!,\n editorValue: this.props.value!,\n isError: false\n };\n\n @autobind\n handleConfirm() {\n const value = this.state.value;\n\n if (this.props.onConfirm) {\n this.props.onConfirm(value);\n } else {\n this.props.onChange?.(value);\n }\n }\n\n @autobind\n renderFormulaValue(item: any) {\n const {allowInput, classnames: cx} = this.props;\n const html = {__html: item.html};\n if (allowInput) {\n return '';\n }\n return (\n <div\n className={cx('FormulaPicker-ResultBox')}\n dangerouslySetInnerHTML={html}\n ></div>\n );\n }\n\n @autobind\n handleInputChange(value: string) {\n this.setState({value}, () => this.handleConfirm());\n }\n\n @autobind\n handleEditorChange(value: string) {\n this.setState({\n editorValue: value,\n isError: false\n });\n }\n\n @autobind\n handleEditorConfirm() {\n const {translate: __} = this.props;\n const value = this.state.editorValue;\n const validate = this.validate(value);\n\n if (validate === true) {\n this.setState({value}, () => {\n this.close(undefined, () => this.handleConfirm());\n });\n } else {\n this.setState({isError: validate});\n }\n }\n\n @autobind\n async handleClick() {\n const state = {\n ...(await this.props.onPickerOpen?.(this.props)),\n editorValue: this.props.value,\n isOpened: true\n };\n\n this.setState(state);\n }\n\n @autobind\n close(e?: any, callback?: () => void) {\n this.setState(\n {\n isOpened: false,\n isError: false\n },\n () => {\n if (callback) {\n callback();\n return;\n }\n }\n );\n }\n\n @autobind\n updateState(state: any = {}) {\n const {isOpened, ...rest} = state;\n this.setState({\n ...this.state,\n ...rest\n });\n }\n\n @autobind\n validate(value: string) {\n const {translate: __} = this.props;\n\n try {\n const ast = parse(value, {\n evalMode: this.props.evalMode,\n allowFilter: false\n });\n\n new Evaluator({}).evalute(ast);\n\n return true;\n } catch (e) {\n if (/\\s(\\d+:\\d+)$/.test(e.message)) {\n const [, position] = /\\s(\\d+:\\d+)$/.exec(e.message) || [];\n return position;\n }\n return e.message;\n }\n }\n\n render() {\n let {\n classnames: cx,\n translate: __,\n disabled,\n allowInput,\n className,\n onChange,\n size,\n borderMode,\n placeholder,\n mode,\n btnLabel,\n level,\n btnSize,\n icon,\n title,\n clearable,\n variables,\n functions,\n children,\n variableMode,\n ...rest\n } = this.props;\n const {isOpened, value, editorValue, isError} = this.state;\n\n const iconElement = generateIcon(cx, icon, 'Icon');\n\n return (\n <>\n {children ? (\n children({\n isOpened: this.state.isOpened,\n onClick: this.handleClick,\n setState: this.updateState\n })\n ) : (\n <div className={cx('FormulaPicker', className)}>\n {mode === 'button' ? (\n <Button\n className={cx('FormulaPicker-action', 'w-full')}\n level={level}\n size={btnSize}\n onClick={this.handleClick}\n >\n {iconElement ? (\n React.cloneElement(iconElement, {\n className: cx(\n iconElement?.props?.className ?? '',\n 'FormulaPicker-icon',\n {\n ['is-filled']: !!value\n }\n )\n })\n ) : (\n <Icon\n icon=\"function\"\n className={cx('FormulaPicker-icon', 'icon', {\n ['is-filled']: !!value\n })}\n />\n )}\n <span className={cx('FormulaPicker-label')}>\n {__(btnLabel || 'FormulaEditor.btnLabel')}\n </span>\n </Button>\n ) : (\n <>\n <ResultBox\n className={cx(\n 'FormulaPicker-input',\n isOpened ? 'is-active' : '',\n !!isError ? 'is-error' : ''\n )}\n allowInput={allowInput}\n clearable={clearable}\n value={value}\n result={\n allowInput\n ? void 0\n : FormulaEditor.highlightValue(\n value,\n variables!,\n this.props.evalMode\n )\n }\n itemRender={this.renderFormulaValue}\n onResultChange={noop}\n onChange={this.handleInputChange}\n disabled={disabled}\n borderMode={borderMode}\n placeholder={placeholder}\n />\n\n <Button\n className={cx('FormulaPicker-action')}\n onClick={this.handleClick}\n >\n <Icon\n icon=\"function\"\n className={cx('FormulaPicker-icon', 'icon', {\n ['is-filled']: !!value\n })}\n />\n </Button>\n </>\n )}\n </div>\n )}\n <Modal\n size=\"md\"\n closeOnEsc\n show={this.state.isOpened}\n onHide={this.close}\n >\n <Modal.Header onClose={this.close} className=\"font-bold\">\n {__(title || 'FormulaEditor.title')}\n </Modal.Header>\n <Modal.Body>\n <Editor\n {...rest}\n variables={this.state.variables ?? variables}\n functions={this.state.functions ?? functions}\n variableMode={this.state.variableMode ?? variableMode}\n value={editorValue}\n onChange={this.handleEditorChange}\n />\n </Modal.Body>\n <Modal.Footer>\n {!!isError ? (\n <div className={cx('Dialog-info')} key=\"info\">\n <span className={cx('Dialog-error')}>\n {__('FormulaEditor.invalidData', {err: isError})}\n </span>\n </div>\n ) : null}\n <Button onClick={this.close}>{__('cancel')}</Button>\n <Button onClick={this.handleEditorConfirm} level=\"primary\">\n {__('confirm')}\n </Button>\n </Modal.Footer>\n </Modal>\n </>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(FormulaPicker, {\n value: 'onChange'\n })\n )\n);\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -18,8 +18,14 @@ import CheckIcon from '../icons/check.svg';
|
|
18
18
|
import PlusIcon from '../icons/plus.svg';
|
19
19
|
import MinusIcon from '../icons/minus.svg';
|
20
20
|
import PencilIcon from '../icons/pencil.svg';
|
21
|
+
import ReloadIcon from '../icons/reload.svg';
|
21
22
|
import FunctionIcon from '../icons/function.svg';
|
22
23
|
import InputClearIcon from '../icons/input-clear.svg';
|
24
|
+
import MenuIcon from '../icons/menu.svg';
|
25
|
+
import UserRemove from '../icons/user-remove.svg';
|
26
|
+
import Role from '../icons/role.svg';
|
27
|
+
import Department from '../icons/department.svg';
|
28
|
+
import Post from '../icons/post.svg';
|
23
29
|
export declare const closeIcon: JSX.Element;
|
24
30
|
export declare const unDoIcon: JSX.Element;
|
25
31
|
export declare const reDoIcon: JSX.Element;
|
@@ -36,4 +42,4 @@ export declare function registerIcon(key: string, component: React.ReactType<{}>
|
|
36
42
|
export declare function Icon({ icon, className, ...rest }: {
|
37
43
|
icon: string;
|
38
44
|
} & React.ComponentProps<any>): JSX.Element;
|
39
|
-
export { InputClearIcon, CloseIcon, UnDoIcon, ReDoIcon, EnterIcon, VolumeIcon, MuteIcon, PlayIcon, PauseIcon, LeftArrowIcon, RightArrowIcon, CheckIcon, PlusIcon, MinusIcon, PencilIcon, FunctionIcon };
|
45
|
+
export { InputClearIcon, CloseIcon, UnDoIcon, ReDoIcon, EnterIcon, VolumeIcon, MuteIcon, PlayIcon, PauseIcon, ReloadIcon, LeftArrowIcon, RightArrowIcon, CheckIcon, PlusIcon, MinusIcon, PencilIcon, FunctionIcon, MenuIcon, UserRemove, Role, Department, Post };
|