amis 1.3.4 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/lib/RootRenderer.js +4 -1
- package/lib/RootRenderer.js.map +2 -2
- package/lib/components/Badge.d.ts +13 -1
- package/lib/components/Badge.js +16 -2
- package/lib/components/Badge.js.map +2 -2
- package/lib/components/Checkbox.d.ts +1 -1
- package/lib/components/Checkbox.js +1 -1
- package/lib/components/Checkbox.js.map +2 -2
- package/lib/components/Drawer.js +1 -1
- package/lib/components/Drawer.js.map +2 -2
- package/lib/components/Modal.js +1 -1
- package/lib/components/Modal.js.map +2 -2
- package/lib/components/RichText.d.ts +0 -3
- package/lib/components/RichText.js +1 -22
- package/lib/components/RichText.js.map +2 -2
- package/lib/components/Select.d.ts +7 -0
- package/lib/components/Select.js.map +2 -2
- package/lib/components/Steps.d.ts +3 -3
- package/lib/components/Steps.js.map +1 -1
- package/lib/components/WithRemoteConfig.d.ts +8 -0
- package/lib/components/WithRemoteConfig.js +28 -2
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/components/condition-builder/Field.js +0 -1
- package/lib/components/condition-builder/Field.js.map +2 -2
- package/lib/components/condition-builder/Value.js +2 -1
- package/lib/components/condition-builder/Value.js.map +2 -2
- package/lib/components/condition-builder/types.d.ts +5 -0
- package/lib/components/condition-builder/types.js.map +1 -1
- package/lib/env.d.ts +1 -1
- package/lib/env.js.map +1 -1
- package/lib/factory.d.ts +6 -2
- package/lib/factory.js +9 -4
- package/lib/factory.js.map +2 -2
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +1 -0
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +2 -1
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +2 -1
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.d.ts +6 -0
- package/lib/renderers/Action.js +9 -1
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/CRUD.d.ts +2 -2
- package/lib/renderers/CRUD.js +13 -21
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Card.js +11 -11
- package/lib/renderers/Card.js.map +2 -2
- package/lib/renderers/Collapse.d.ts +1 -1
- package/lib/renderers/Collapse.js +5 -1
- package/lib/renderers/Collapse.js.map +2 -2
- package/lib/renderers/Copyable.js +30 -28
- package/lib/renderers/Copyable.js.map +2 -2
- package/lib/renderers/Dialog.d.ts +0 -252
- package/lib/renderers/Dialog.js +3 -2
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/Drawer.js +2 -1
- package/lib/renderers/Drawer.js.map +2 -2
- package/lib/renderers/DropDownButton.d.ts +4 -0
- package/lib/renderers/DropDownButton.js +2 -2
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Form/ButtonGroupSelect.js +3 -0
- package/lib/renderers/Form/ButtonGroupSelect.js.map +2 -2
- package/lib/renderers/Form/Combo.d.ts +2 -0
- package/lib/renderers/Form/Combo.js +16 -1
- package/lib/renderers/Form/Combo.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.d.ts +0 -2
- package/lib/renderers/Form/Editor.d.ts +0 -2
- package/lib/renderers/Form/Editor.js +1 -1
- package/lib/renderers/Form/Editor.js.map +2 -2
- package/lib/renderers/Form/InputExcel.d.ts +5 -0
- package/lib/renderers/Form/InputExcel.js +24 -3
- package/lib/renderers/Form/InputExcel.js.map +2 -2
- package/lib/renderers/Form/InputImage.d.ts +8 -0
- package/lib/renderers/Form/InputImage.js +2 -1
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/InputNumber.d.ts +19 -5
- package/lib/renderers/Form/InputNumber.js +69 -7
- package/lib/renderers/Form/InputNumber.js.map +2 -2
- package/lib/renderers/Form/InputRange.js +7 -2
- package/lib/renderers/Form/InputRange.js.map +2 -2
- package/lib/renderers/Form/InputTable.d.ts +23 -5
- package/lib/renderers/Form/InputTable.js +32 -3
- package/lib/renderers/Form/InputTable.js.map +2 -2
- package/lib/renderers/Form/NestedSelect.js +2 -3
- package/lib/renderers/Form/NestedSelect.js.map +2 -2
- package/lib/renderers/Form/Options.js +3 -1
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/index.js +0 -10
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.js +3 -3
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/Json.js +5 -1
- package/lib/renderers/Json.js.map +2 -2
- package/lib/renderers/List.d.ts +5 -0
- package/lib/renderers/List.js +20 -14
- package/lib/renderers/List.js.map +2 -2
- package/lib/renderers/Page.d.ts +6 -0
- package/lib/renderers/Page.js +10 -2
- package/lib/renderers/Page.js.map +2 -2
- package/lib/renderers/Service.d.ts +10 -1
- package/lib/renderers/Service.js +85 -3
- package/lib/renderers/Service.js.map +2 -2
- package/lib/renderers/Steps.d.ts +4 -4
- package/lib/renderers/Steps.js +5 -2
- package/lib/renderers/Steps.js.map +2 -2
- package/lib/renderers/Table/TableBody.d.ts +5 -3
- package/lib/renderers/Table/TableBody.js +17 -11
- package/lib/renderers/Table/TableBody.js.map +2 -2
- package/lib/renderers/Table/TableCell.js +6 -2
- package/lib/renderers/Table/TableCell.js.map +2 -2
- package/lib/renderers/Table/TableContent.d.ts +3 -1
- package/lib/renderers/Table/TableContent.js +6 -2
- package/lib/renderers/Table/TableContent.js.map +2 -2
- package/lib/renderers/Table/TableRow.d.ts +1 -1
- package/lib/renderers/Table/TableRow.js +14 -13
- package/lib/renderers/Table/TableRow.js.map +2 -2
- package/lib/renderers/Table/index.d.ts +28 -3
- package/lib/renderers/Table/index.js +97 -54
- package/lib/renderers/Table/index.js.map +2 -2
- package/lib/schemaExtend.d.ts +1 -0
- package/lib/schemaExtend.js +59 -0
- package/lib/schemaExtend.js.map +13 -0
- package/lib/store/app.d.ts +0 -1
- package/lib/store/combo.d.ts +0 -2
- package/lib/store/crud.d.ts +3 -3
- package/lib/store/crud.js +41 -36
- package/lib/store/crud.js.map +2 -2
- package/lib/store/form.d.ts +0 -1
- package/lib/store/formItem.js +10 -6
- package/lib/store/formItem.js.map +2 -2
- package/lib/store/modal.d.ts +1 -1
- package/lib/store/modal.js +4 -0
- package/lib/store/modal.js.map +2 -2
- package/lib/store/root.d.ts +0 -1
- package/lib/store/service.d.ts +0 -1
- package/lib/store/service.js +0 -13
- package/lib/store/service.js.map +2 -2
- package/lib/store/table.d.ts +1 -2
- package/lib/store/table.js +44 -3
- package/lib/store/table.js.map +2 -2
- package/lib/themes/ang-ie11.css +278 -17
- package/lib/themes/ang.css +278 -17
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +278 -17
- package/lib/themes/antd.css +278 -17
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +278 -17
- package/lib/themes/cxd.css +278 -17
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +278 -17
- package/lib/themes/dark.css +278 -17
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +278 -17
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/api.js +12 -0
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/attachmentAdpator.d.ts +7 -0
- package/lib/utils/attachmentAdpator.js +82 -0
- package/lib/utils/attachmentAdpator.js.map +13 -0
- package/lib/utils/helper.d.ts +2 -0
- package/lib/utils/helper.js +14 -1
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/resize-sensor.js +6 -0
- package/lib/utils/resize-sensor.js.map +2 -2
- package/lib/utils/tpl-builtin.d.ts +1 -0
- package/lib/utils/tpl-builtin.js +24 -8
- package/lib/utils/tpl-builtin.js.map +2 -2
- package/lib/utils/validations.js +62 -5
- package/lib/utils/validations.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +369 -164
- package/scss/_properties.scss +6 -0
- package/scss/components/_badge.scss +15 -1
- package/scss/components/_list.scss +8 -0
- package/scss/components/_markdown.scss +266 -0
- package/scss/components/_spinner.scss +6 -2
- package/scss/components/_table.scss +4 -0
- package/scss/components/form/_form.scss +3 -17
- package/scss/components/form/_group.scss +4 -0
- package/scss/components/form/_nested-select.scss +4 -0
- package/scss/components/form/_number.scss +12 -1
- package/scss/themes/_common.scss +1 -0
- package/sdk/ang-ie11.css +324 -20
- package/sdk/ang.css +330 -20
- package/sdk/antd-ie11.css +324 -20
- package/sdk/antd.css +330 -20
- package/sdk/charts.js +15 -15
- package/sdk/color-picker.js +65 -69
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +324 -20
- package/sdk/cxd.css +330 -20
- package/sdk/dark-ie11.css +324 -20
- package/sdk/dark.css +330 -20
- package/sdk/exceljs.js +1 -1
- package/sdk/locale/de-DE.js +1 -0
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +27 -23
- package/sdk/rich-text.js +63 -63
- package/sdk/sdk-ie11.css +324 -20
- package/sdk/sdk.css +330 -20
- package/sdk/sdk.js +1146 -1138
- 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 +8 -3
- package/src/components/Badge.tsx +41 -6
- package/src/components/Checkbox.tsx +5 -2
- package/src/components/Drawer.tsx +3 -2
- package/src/components/Modal.tsx +3 -2
- package/src/components/RichText.tsx +2 -27
- package/src/components/Select.tsx +1 -0
- package/src/components/Steps.tsx +3 -3
- package/src/components/WithRemoteConfig.tsx +37 -2
- package/src/components/condition-builder/Field.tsx +1 -2
- package/src/components/condition-builder/Value.tsx +3 -0
- package/src/components/condition-builder/types.ts +6 -0
- package/src/env.tsx +1 -1
- package/src/factory.tsx +14 -4
- package/src/index.tsx +2 -0
- package/src/locale/de-DE.ts +1 -0
- package/src/locale/en-US.ts +2 -1
- package/src/locale/zh-CN.ts +2 -1
- package/src/renderers/Action.tsx +19 -1
- package/src/renderers/CRUD.tsx +15 -34
- package/src/renderers/Card.tsx +21 -15
- package/src/renderers/Collapse.tsx +5 -1
- package/src/renderers/Copyable.tsx +46 -44
- package/src/renderers/Dialog.tsx +3 -2
- package/src/renderers/Drawer.tsx +2 -1
- package/src/renderers/DropDownButton.tsx +8 -0
- package/src/renderers/Form/ButtonGroupSelect.tsx +3 -0
- package/src/renderers/Form/Combo.tsx +7 -0
- package/src/renderers/Form/Editor.tsx +19 -20
- package/src/renderers/Form/InputExcel.tsx +28 -3
- package/src/renderers/Form/InputImage.tsx +23 -8
- package/src/renderers/Form/InputNumber.tsx +113 -18
- package/src/renderers/Form/InputRange.tsx +5 -2
- package/src/renderers/Form/InputTable.tsx +88 -9
- package/src/renderers/Form/NestedSelect.tsx +1 -1
- package/src/renderers/Form/Options.tsx +3 -1
- package/src/renderers/Form/index.tsx +0 -15
- package/src/renderers/Form/wrapControl.tsx +2 -2
- package/src/renderers/Json.tsx +10 -1
- package/src/renderers/List.tsx +32 -19
- package/src/renderers/Page.tsx +19 -0
- package/src/renderers/Service.tsx +101 -3
- package/src/renderers/Steps.tsx +12 -9
- package/src/renderers/Table/TableBody.tsx +29 -10
- package/src/renderers/Table/TableCell.tsx +15 -1
- package/src/renderers/Table/TableContent.tsx +7 -1
- package/src/renderers/Table/TableRow.tsx +18 -17
- package/src/renderers/Table/index.tsx +117 -28
- package/src/schemaExtend.ts +66 -0
- package/src/store/crud.ts +34 -38
- package/src/store/formItem.ts +10 -6
- package/src/store/modal.ts +4 -0
- package/src/store/service.ts +0 -19
- package/src/store/table.ts +48 -0
- package/src/utils/api.ts +11 -0
- package/src/utils/attachmentAdpator.ts +90 -0
- package/src/utils/helper.ts +15 -0
- package/src/utils/resize-sensor.ts +7 -0
- package/src/utils/tpl-builtin.ts +36 -17
- package/src/utils/validations.ts +80 -12
package/README.md
CHANGED
package/lib/RootRenderer.js
CHANGED
@@ -126,7 +126,10 @@ var RootRenderer = /** @class */ (function (_super) {
|
|
126
126
|
}
|
127
127
|
else if (action.actionType === 'copy' &&
|
128
128
|
(action.content || action.copy)) {
|
129
|
-
env.copy &&
|
129
|
+
env.copy &&
|
130
|
+
env.copy((0, tpl_1.filter)(action.content || action.copy, ctx, '| raw'), {
|
131
|
+
format: action.copyFormat
|
132
|
+
});
|
130
133
|
}
|
131
134
|
};
|
132
135
|
RootRenderer.prototype.handleDialogConfirm = function (values, action) {
|
package/lib/RootRenderer.js.map
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/RootRenderer.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,yCAAoC;AACpC,6DAA0B;AAC1B,4EAAwC;AACxC,8EAA2C;AAC3C,+BAA8C;AAC9C,mCAAuD;AACvD,qCAAmD;AAEnD,yCAAkE;AAClE,mCAAmC;AACnC,uDAAoB;AACpB,kEAA+B;AAC/B,4EAAyC;AAOzC;IAAkC,6CAAkC;IAIlE,sBAAY,KAAwB;QAApC,YACE,kBAAM,KAAK,CAAC,SAmBb;QAjBC,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;YACpC,EAAE,EAAE,IAAA,aAAI,GAAE;YACV,IAAI,EAAE,KAAI,CAAC,KAAK,CAAC,KAAK;YACtB,SAAS,EAAE,gBAAS,CAAC,IAAI;YACzB,QAAQ,EAAE,EAAE;SACb,CAAe,CAAC;QAEjB,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,KAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAA,0BAAiB,EAAuC,KAAI,EAAE;YAC5D,cAAc;YACd,qBAAqB;YACrB,mBAAmB;YACnB,qBAAqB;YACrB,mBAAmB;SACpB,CAAC,CAAC;;IACL,CAAC;IAED,yCAAkB,GAAlB,UAAmB,SAA4B;QAC7C,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAE;YACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACjC;QAED,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ,EAAE;YACzC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC3C;IACH,CAAC;IAED,wCAAiB,GAAjB,UAAkB,KAAU,EAAE,SAAc;QAC1C,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,2CAAoB,GAApB;QACE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,mCAAY,GAAZ,UACE,CAA4B,EAC5B,MAAc,EACd,GAAW,EACX,WAA4B,EAC5B,QAAyB;QAL3B,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import {observer} from 'mobx-react';\nimport React from 'react';\nimport Alert from './components/Alert2';\nimport Spinner from './components/Spinner';\nimport {renderChild, RootProps} from './Root';\nimport {IScopedContext, ScopedContext} from './Scoped';\nimport {IRootStore, RootStore} from './store/root';\nimport {Action} from './types';\nimport {bulkBindFunctions, guid, isVisible} from './utils/helper';\nimport {filter} from './utils/tpl';\nimport qs from 'qs';\nimport pick from 'lodash/pick';\nimport mapValues from 'lodash/mapValues';\n\nexport interface RootRendererProps extends RootProps {\n location?: any;\n}\n\n@observer\nexport class RootRenderer extends React.Component<RootRendererProps> {\n store: IRootStore;\n static contextType = ScopedContext;\n\n constructor(props: RootRendererProps) {\n super(props);\n\n this.store = props.rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: RootStore.name,\n parentId: ''\n }) as IRootStore;\n\n this.store.initData(props.data);\n this.store.updateLocation(props.location);\n\n bulkBindFunctions<RootRenderer /*为毛 this 的类型自动识别不出来?*/>(this, [\n 'handleAction',\n 'handleDialogConfirm',\n 'handleDialogClose',\n 'handleDrawerConfirm',\n 'handleDrawerClose'\n ]);\n }\n\n componentDidUpdate(prevProps: RootRendererProps) {\n const props = this.props;\n\n if (props.data !== prevProps.data) {\n this.store.initData(props.data);\n }\n\n if (props.location !== prevProps.location) {\n this.store.updateLocation(props.location);\n }\n }\n\n componentDidCatch(error: any, errorInfo: any) {\n this.store.setRuntimeError(error, errorInfo);\n }\n\n componentWillUnmount() {\n this.props.rootStore.removeStore(this.store);\n }\n\n handleAction(\n e: React.UIEvent<any> | void,\n action: Action,\n ctx: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ) {\n const {env, messages, onAction} = this.props;\n const store = this.store;\n\n if (\n onAction?.(e, action, ctx, throwErrors, delegate || this.context) ===\n false\n ) {\n return;\n }\n\n const scoped = delegate || this.context;\n if (action.actionType === 'reload') {\n action.target && scoped.reload(action.target, ctx);\n } else if (action.target) {\n action.target.split(',').forEach(name => {\n let target = scoped.getComponentByName(name);\n target &&\n target.doAction &&\n target.doAction(\n {\n ...action,\n target: undefined\n },\n ctx\n );\n });\n } else if (\n action.actionType === 'url' ||\n action.actionType === 'link' ||\n action.actionType === 'jump'\n ) {\n if (!env || !env.jumpTo) {\n throw new Error('env.jumpTo is required!');\n }\n\n env.jumpTo(\n filter(\n (action.to || action.url || action.link) as string,\n ctx,\n '| raw'\n ),\n action,\n ctx\n );\n } else if (action.actionType === 'email') {\n const mailTo = filter(action.to, ctx);\n const mailInfo = mapValues(pick(action, 'to', 'cc', 'bcc', 'subject', 'body')
|
11
|
+
"import {observer} from 'mobx-react';\nimport React from 'react';\nimport Alert from './components/Alert2';\nimport Spinner from './components/Spinner';\nimport {renderChild, RootProps} from './Root';\nimport {IScopedContext, ScopedContext} from './Scoped';\nimport {IRootStore, RootStore} from './store/root';\nimport {Action} from './types';\nimport {bulkBindFunctions, guid, isVisible} from './utils/helper';\nimport {filter} from './utils/tpl';\nimport qs from 'qs';\nimport pick from 'lodash/pick';\nimport mapValues from 'lodash/mapValues';\n\nexport interface RootRendererProps extends RootProps {\n location?: any;\n}\n\n@observer\nexport class RootRenderer extends React.Component<RootRendererProps> {\n store: IRootStore;\n static contextType = ScopedContext;\n\n constructor(props: RootRendererProps) {\n super(props);\n\n this.store = props.rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: RootStore.name,\n parentId: ''\n }) as IRootStore;\n\n this.store.initData(props.data);\n this.store.updateLocation(props.location);\n\n bulkBindFunctions<RootRenderer /*为毛 this 的类型自动识别不出来?*/>(this, [\n 'handleAction',\n 'handleDialogConfirm',\n 'handleDialogClose',\n 'handleDrawerConfirm',\n 'handleDrawerClose'\n ]);\n }\n\n componentDidUpdate(prevProps: RootRendererProps) {\n const props = this.props;\n\n if (props.data !== prevProps.data) {\n this.store.initData(props.data);\n }\n\n if (props.location !== prevProps.location) {\n this.store.updateLocation(props.location);\n }\n }\n\n componentDidCatch(error: any, errorInfo: any) {\n this.store.setRuntimeError(error, errorInfo);\n }\n\n componentWillUnmount() {\n this.props.rootStore.removeStore(this.store);\n }\n\n handleAction(\n e: React.UIEvent<any> | void,\n action: Action,\n ctx: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ) {\n const {env, messages, onAction} = this.props;\n const store = this.store;\n\n if (\n onAction?.(e, action, ctx, throwErrors, delegate || this.context) ===\n false\n ) {\n return;\n }\n\n const scoped = delegate || this.context;\n if (action.actionType === 'reload') {\n action.target && scoped.reload(action.target, ctx);\n } else if (action.target) {\n action.target.split(',').forEach(name => {\n let target = scoped.getComponentByName(name);\n target &&\n target.doAction &&\n target.doAction(\n {\n ...action,\n target: undefined\n },\n ctx\n );\n });\n } else if (\n action.actionType === 'url' ||\n action.actionType === 'link' ||\n action.actionType === 'jump'\n ) {\n if (!env || !env.jumpTo) {\n throw new Error('env.jumpTo is required!');\n }\n\n env.jumpTo(\n filter(\n (action.to || action.url || action.link) as string,\n ctx,\n '| raw'\n ),\n action,\n ctx\n );\n } else if (action.actionType === 'email') {\n const mailTo = filter(action.to, ctx);\n const mailInfo = mapValues(\n pick(action, 'to', 'cc', 'bcc', 'subject', 'body'),\n val => filter(val, ctx)\n );\n const mailStr = qs.stringify(mailInfo);\n const mailto = `mailto:${mailTo}?${mailStr}`;\n\n window.open(mailto);\n } else if (action.actionType === 'dialog') {\n store.setCurrentAction(action);\n store.openDialog(ctx);\n } else if (action.actionType === 'drawer') {\n store.setCurrentAction(action);\n store.openDrawer(ctx);\n } else if (action.actionType === 'ajax') {\n store.setCurrentAction(action);\n store\n .saveRemote(action.api as string, ctx, {\n successMessage:\n (action.messages && action.messages.success) ||\n (messages && messages.saveSuccess),\n errorMessage:\n (action.messages && action.messages.failed) ||\n (messages && messages.saveSuccess)\n })\n .then(async () => {\n if (action.feedback && isVisible(action.feedback, store.data)) {\n await this.openFeedback(action.feedback, store.data);\n }\n\n const redirect =\n action.redirect && filter(action.redirect, store.data);\n redirect && env.jumpTo(redirect, action);\n action.reload &&\n this.reloadTarget(\n delegate || this.context,\n action.reload,\n store.data\n );\n })\n .catch(() => {});\n } else if (\n action.actionType === 'copy' &&\n (action.content || action.copy)\n ) {\n env.copy &&\n env.copy(filter(action.content || action.copy, ctx, '| raw'), {\n format: action.copyFormat\n });\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...args: Array<any>) {\n const store = this.store;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const dialog = store.action.dialog as any;\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDialog();\n }\n\n handleDialogClose() {\n const store = this.store;\n store.closeDialog();\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...args: Array<any>) {\n const store = this.store;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const dialog = store.action.dialog as any;\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleDrawerClose() {\n const store = this.store;\n store.closeDrawer();\n }\n\n openFeedback(dialog: any, ctx: any) {\n return new Promise(resolve => {\n const store = this.store;\n store.setCurrentAction({\n type: 'button',\n actionType: 'dialog',\n dialog: dialog\n });\n store.openDialog(ctx, undefined, confirmed => {\n resolve(confirmed);\n });\n });\n }\n\n reloadTarget(scoped: IScopedContext, target: string, data?: any) {\n scoped.reload(target, data);\n }\n\n render() {\n const {pathPrefix, schema, ...rest} = this.props;\n const store = this.store;\n\n if (store.runtimeError) {\n return (\n <Alert level=\"danger\">\n <h3>{this.store.runtimeError?.toString()}</h3>\n <pre>\n <code>{this.store.runtimeErrorStack.componentStack}</code>\n </pre>\n </Alert>\n );\n }\n\n return (\n <>\n {\n renderChild(pathPrefix!, schema, {\n ...rest,\n data: this.store.downStream,\n onAction: this.handleAction\n }) as JSX.Element\n }\n\n <Spinner size=\"lg\" overlay key=\"info\" show={store.loading} />\n\n {store.error ? (\n <Alert level=\"danger\" showCloseButton onClose={store.clearMessage}>\n {store.msg}\n </Alert>\n ) : null}\n\n {renderChild(\n 'dialog',\n {\n ...((store.action as Action) &&\n ((store.action as Action).dialog as object)),\n type: 'dialog'\n },\n {\n ...rest,\n key: 'dialog',\n data: store.dialogData,\n onConfirm: this.handleDialogConfirm,\n onClose: this.handleDialogClose,\n show: store.dialogOpen,\n onAction: this.handleAction\n }\n )}\n\n {renderChild(\n 'drawer',\n {\n ...((store.action as Action) &&\n ((store.action as Action).drawer as object)),\n type: 'drawer'\n },\n {\n ...rest,\n key: 'drawer',\n data: store.drawerData,\n onConfirm: this.handleDrawerConfirm,\n onClose: this.handleDrawerClose,\n show: store.drawerOpen,\n onAction: this.handleAction\n }\n )}\n </>\n );\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -13,7 +13,7 @@ export interface BadgeSchema extends BaseSchema {
|
|
13
13
|
/**
|
14
14
|
* 文本内容
|
15
15
|
*/
|
16
|
-
text?: string;
|
16
|
+
text?: string | number;
|
17
17
|
/**
|
18
18
|
* 大小
|
19
19
|
*/
|
@@ -22,10 +22,18 @@ export interface BadgeSchema extends BaseSchema {
|
|
22
22
|
* 角标类型
|
23
23
|
*/
|
24
24
|
mode?: 'text' | 'dot';
|
25
|
+
/**
|
26
|
+
* 角标位置,优先级大于position
|
27
|
+
*/
|
28
|
+
offset?: [number | string, number | string];
|
25
29
|
/**
|
26
30
|
* 角标位置
|
27
31
|
*/
|
28
32
|
position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
|
33
|
+
/**
|
34
|
+
* 封顶的数字值
|
35
|
+
*/
|
36
|
+
overflowCount?: number;
|
29
37
|
/**
|
30
38
|
* 动态控制是否显示
|
31
39
|
*/
|
@@ -40,6 +48,10 @@ export interface BadgeSchema extends BaseSchema {
|
|
40
48
|
style?: {
|
41
49
|
[propName: string]: any;
|
42
50
|
};
|
51
|
+
/**
|
52
|
+
* 提示类型
|
53
|
+
*/
|
54
|
+
level?: 'info' | 'warning' | 'success' | 'danger';
|
43
55
|
}
|
44
56
|
export interface BadgeProps {
|
45
57
|
badge?: BadgeSchema;
|
package/lib/components/Badge.js
CHANGED
@@ -24,7 +24,7 @@ var Badge = /** @class */ (function (_super) {
|
|
24
24
|
if (typeof badge === 'string') {
|
25
25
|
isDisplay = (0, tpl_1.evalExpression)(badge, data) === true;
|
26
26
|
}
|
27
|
-
var _b = badge.mode, mode = _b === void 0 ? 'dot' : _b, text = badge.text, size = badge.size, style = badge.style, _c = badge.position, position = _c === void 0 ? 'top-right' : _c, visibleOn = badge.visibleOn, className = badge.className, animation = badge.animation;
|
27
|
+
var _b = badge.mode, mode = _b === void 0 ? 'dot' : _b, text = badge.text, size = badge.size, style = badge.style, offset = badge.offset, _c = badge.position, position = _c === void 0 ? 'top-right' : _c, _d = badge.overflowCount, overflowCount = _d === void 0 ? 99 : _d, visibleOn = badge.visibleOn, className = badge.className, animation = badge.animation, _e = badge.level, level = _e === void 0 ? 'danger' : _e;
|
28
28
|
if (visibleOn) {
|
29
29
|
isDisplay = (0, tpl_1.evalExpression)(visibleOn, data) === true;
|
30
30
|
}
|
@@ -47,6 +47,10 @@ var Badge = /** @class */ (function (_super) {
|
|
47
47
|
height: size,
|
48
48
|
lineHeight: size + 'px'
|
49
49
|
};
|
50
|
+
// 当text、overflowCount都为number类型时,进行封顶值处理
|
51
|
+
if (typeof text === 'number' && typeof overflowCount === 'number') {
|
52
|
+
text = (text > overflowCount ? overflowCount + "+" : text);
|
53
|
+
}
|
50
54
|
if (!text) {
|
51
55
|
isDisplay = false;
|
52
56
|
}
|
@@ -54,6 +58,16 @@ var Badge = /** @class */ (function (_super) {
|
|
54
58
|
if (mode === 'dot') {
|
55
59
|
sizeStyle = { width: size, height: size };
|
56
60
|
}
|
61
|
+
var offsetStyle = {};
|
62
|
+
// 如果设置了offset属性,offset在position为'top-right'的基础上进行translate定位
|
63
|
+
if (offset && offset.length) {
|
64
|
+
position = 'top-right';
|
65
|
+
var left = "calc(50% + " + parseInt(offset[0], 10) + "px)";
|
66
|
+
var right = "calc(-50% + " + parseInt(offset[1], 10) + "px)";
|
67
|
+
offsetStyle = {
|
68
|
+
transform: "translate(" + left + ", " + right + ")",
|
69
|
+
};
|
70
|
+
}
|
57
71
|
var animationBackground = 'var(--danger)';
|
58
72
|
if (style && style.background) {
|
59
73
|
animationBackground = style.background;
|
@@ -70,7 +84,7 @@ var Badge = /** @class */ (function (_super) {
|
|
70
84
|
} })) : null;
|
71
85
|
return (react_1.default.createElement("div", { className: cx('Badge', className) },
|
72
86
|
children,
|
73
|
-
isDisplay ? (mode === 'dot' ? (react_1.default.createElement("span", { className: cx('Badge-dot', "Badge--" + position), style: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, sizeStyle), style) }, animationElement)) : (react_1.default.createElement("span", { className: cx('Badge-text', "Badge--" + position), style: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, sizeStyle), style) },
|
87
|
+
isDisplay ? (mode === 'dot' ? (react_1.default.createElement("span", { className: cx('Badge-dot', "Badge--" + position, "Badge--" + level), style: (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, offsetStyle), sizeStyle), style) }, animationElement)) : (react_1.default.createElement("span", { className: cx('Badge-text', "Badge--" + position, "Badge--" + level), style: (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, offsetStyle), sizeStyle), style) },
|
74
88
|
text,
|
75
89
|
animationElement))) : null));
|
76
90
|
};
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Badge.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;GAEG;;;;AAEH,6DAA0B;AAC1B,iGAA0D;AAE1D,oCAA4C;AAC5C,oDAAqD;
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file 角标组件\n */\n\nimport React from 'react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {BaseSchema, SchemaExpression} from '../Schema';\nimport {evalExpression} from '../utils/tpl';\nimport {resolveVariable} from '../utils/tpl-builtin';\nimport {ClassNamesFn} from '../theme';\n\n/**\n * Badge 角标。\n * 文档:https://baidu.gitee.io/amis/docs/components/badge\n */\nexport interface BadgeSchema extends BaseSchema {\n /**\n * 文本内容\n */\n text?: string;\n\n /**\n * 大小\n */\n size?: number;\n\n /**\n * 角标类型\n */\n mode?: 'text' | 'dot';\n\n /**\n * 角标位置\n */\n position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';\n\n /**\n * 动态控制是否显示\n */\n visibleOn?: SchemaExpression;\n\n /**\n * 是否显示动画\n */\n animation?: boolean;\n\n /**\n * 角标的自定义样式\n */\n style?: {\n [propName: string]: any;\n };\n}\n\nexport interface BadgeProps {\n badge?: BadgeSchema;\n classnames: ClassNamesFn;\n data: any;\n}\n\nexport class Badge extends React.Component<BadgeProps, object> {\n static propsList: Array<string> = ['body', 'className', 'children'];\n\n constructor(props: BadgeProps) {\n super(props);\n }\n\n render() {\n const badge = this.props.badge;\n if (!badge) {\n return this.props.children;\n }\n const {children, classnames: cx, data} = this.props;\n let isDisplay = true;\n if (typeof badge === 'string') {\n isDisplay = evalExpression(badge, data) === true;\n }\n\n let {\n mode = 'dot',\n text,\n size,\n style,\n position = 'top-right',\n visibleOn,\n className,\n animation\n } = badge;\n\n if (visibleOn) {\n isDisplay = evalExpression(visibleOn, data) === true;\n }\n\n if (typeof text === 'string' && text[0] === '$') {\n text = resolveVariable(text, data);\n }\n\n // 设置默认值\n if (typeof size === 'undefined') {\n if (mode === 'dot') {\n size = 6;\n } else {\n size = 16;\n }\n }\n\n let sizeStyle = {};\n if (mode === 'text') {\n sizeStyle = {\n borderRadius: size / 2,\n height: size,\n lineHeight: size + 'px'\n };\n\n if (!text) {\n isDisplay = false;\n }\n }\n\n if (mode === 'dot') {\n sizeStyle = {width: size, height: size};\n }\n\n let animationBackground = 'var(--danger)';\n\n if (style && style.background) {\n animationBackground = style.background;\n }\n\n const animationElement = animation ? (\n <div\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n border: `1px solid ${animationBackground}`,\n borderRadius: '50%',\n animation: 'badgeDotAnimation 1.2s infinite ease-in-out'\n }}\n ></div>\n ) : null;\n\n return (\n <div className={cx('Badge', className)}>\n {children}\n {isDisplay ? (\n mode === 'dot' ? (\n <span\n className={cx('Badge-dot', `Badge--${position}`)}\n style={{...sizeStyle, ...style}}\n >\n {animationElement}\n </span>\n ) : (\n <span\n className={cx('Badge-text', `Badge--${position}`)}\n style={{...sizeStyle, ...style}}\n >\n {text}\n {animationElement}\n </span>\n )\n ) : null}\n </div>\n );\n }\n}\n\nexport function withBadge<P extends object>(Component: React.ComponentType<P>) {\n return hoistNonReactStatic(\n class WithBadge extends React.Component<P & BadgeProps> {\n static displayName = `WithBadge(${\n Component.displayName || Component.name\n })`;\n\n render() {\n const badge = this.props.badge;\n\n if (!badge) {\n return <Component {...(this.props as P)} />;\n }\n\n return (\n <Badge {...(this.props as BadgeProps)}>\n <Component {...(this.props as P)} />\n </Badge>\n );\n }\n },\n Component\n );\n}\n"
|
11
|
+
"/**\n * @file 角标组件\n */\n\nimport React from 'react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {BaseSchema, SchemaExpression} from '../Schema';\nimport {evalExpression} from '../utils/tpl';\nimport {resolveVariable} from '../utils/tpl-builtin';\nimport {ClassNamesFn} from '../theme';\n\n/**\n * Badge 角标。\n * 文档:https://baidu.gitee.io/amis/docs/components/badge\n */\nexport interface BadgeSchema extends BaseSchema {\n /**\n * 文本内容\n */\n text?: string | number;\n\n /**\n * 大小\n */\n size?: number;\n\n /**\n * 角标类型\n */\n mode?: 'text' | 'dot';\n\n /**\n * 角标位置,优先级大于position\n */\n offset?: [number | string, number | string];\n \n /**\n * 角标位置\n */\n position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';\n\n /**\n * 封顶的数字值\n */\n overflowCount?: number;\n\n /**\n * 动态控制是否显示\n */\n visibleOn?: SchemaExpression;\n\n /**\n * 是否显示动画\n */\n animation?: boolean;\n\n /**\n * 角标的自定义样式\n */\n style?: {\n [propName: string]: any;\n };\n\n /**\n * 提示类型\n */\n level?: 'info' | 'warning' | 'success' | 'danger';\n}\n\nexport interface BadgeProps {\n badge?: BadgeSchema;\n classnames: ClassNamesFn;\n data: any;\n}\n\nexport class Badge extends React.Component<BadgeProps, object> {\n static propsList: Array<string> = ['body', 'className', 'children'];\n\n constructor(props: BadgeProps) {\n super(props);\n }\n\n render() {\n const badge = this.props.badge;\n if (!badge) {\n return this.props.children;\n }\n const {children, classnames: cx, data} = this.props;\n let isDisplay = true;\n if (typeof badge === 'string') {\n isDisplay = evalExpression(badge, data) === true;\n }\n\n let {\n mode = 'dot',\n text,\n size,\n style,\n offset,\n position = 'top-right',\n overflowCount = 99,\n visibleOn,\n className,\n animation,\n level = 'danger'\n } = badge;\n\n if (visibleOn) {\n isDisplay = evalExpression(visibleOn, data) === true;\n }\n\n if (typeof text === 'string' && text[0] === '$') {\n text = resolveVariable(text, data);\n }\n\n // 设置默认值\n if (typeof size === 'undefined') {\n if (mode === 'dot') {\n size = 6;\n } else {\n size = 16;\n }\n }\n\n let sizeStyle = {};\n if (mode === 'text') {\n sizeStyle = {\n borderRadius: size / 2,\n height: size,\n lineHeight: size + 'px'\n };\n // 当text、overflowCount都为number类型时,进行封顶值处理\n if (typeof text === 'number' && typeof overflowCount === 'number') {\n text = (\n (text as number) > (overflowCount as number) ? `${overflowCount}+` : text\n ) as string | number;\n }\n\n if (!text) {\n isDisplay = false;\n }\n }\n\n if (mode === 'dot') {\n sizeStyle = {width: size, height: size};\n }\n\n let offsetStyle = {};\n // 如果设置了offset属性,offset在position为'top-right'的基础上进行translate定位\n if (offset && offset.length) {\n position = 'top-right';\n const left = `calc(50% + ${parseInt(offset[0] as string, 10)}px)`;\n const right = `calc(-50% + ${parseInt(offset[1] as string, 10)}px)`;\n offsetStyle = {\n transform: `translate(${left}, ${right})`,\n };\n }\n\n let animationBackground = 'var(--danger)';\n\n if (style && style.background) {\n animationBackground = style.background;\n }\n\n const animationElement = animation ? (\n <div\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n border: `1px solid ${animationBackground}`,\n borderRadius: '50%',\n animation: 'badgeDotAnimation 1.2s infinite ease-in-out'\n }}\n ></div>\n ) : null;\n\n return (\n <div className={cx('Badge', className)}>\n {children}\n {isDisplay ? (\n mode === 'dot' ? (\n <span\n className={cx('Badge-dot', `Badge--${position}`, `Badge--${level}`)}\n style={{...offsetStyle, ...sizeStyle, ...style}}\n >\n {animationElement}\n </span>\n ) : (\n <span\n className={cx('Badge-text', `Badge--${position}`, `Badge--${level}`)}\n style={{...offsetStyle, ...sizeStyle, ...style}}\n >\n {text}\n {animationElement}\n </span>\n )\n ) : null}\n </div>\n );\n }\n}\n\nexport function withBadge<P extends object>(Component: React.ComponentType<P>) {\n return hoistNonReactStatic(\n class WithBadge extends React.Component<P & BadgeProps> {\n static displayName = `WithBadge(${\n Component.displayName || Component.name\n })`;\n\n render() {\n const badge = this.props.badge;\n\n if (!badge) {\n return <Component {...(this.props as P)} />;\n }\n\n return (\n <Badge {...(this.props as BadgeProps)}>\n <Component {...(this.props as P)} />\n </Badge>\n );\n }\n },\n Component\n );\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -20,7 +20,7 @@ var Checkbox = /** @class */ (function (_super) {
|
|
20
20
|
if (!onChange) {
|
21
21
|
return;
|
22
22
|
}
|
23
|
-
onChange(e.currentTarget.checked ? trueValue : falseValue);
|
23
|
+
onChange(e.currentTarget.checked ? trueValue : falseValue, e.nativeEvent.shiftKey);
|
24
24
|
};
|
25
25
|
Checkbox.prototype.render = function () {
|
26
26
|
var _a;
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Checkbox.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;GAGG;;;;AAEH,6DAA0B;AAC1B,kCAAiD;AACjD,0CAAyC;AAEzC,IAAM,YAAY,GAAG,UAAC,CAAM,IAAK,OAAA,CAAC,CAAC,eAAe,EAAE,EAAnB,CAAmB,CAAC;AAuBrD;IAA8B,yCAAmC;IAAjE;;
|
9
|
+
"mappings": ";AAAA;;;GAGG;;;;AAEH,6DAA0B;AAC1B,kCAAiD;AACjD,0CAAyC;AAEzC,IAAM,YAAY,GAAG,UAAC,CAAM,IAAK,OAAA,CAAC,CAAC,eAAe,EAAE,EAAnB,CAAmB,CAAC;AAuBrD;IAA8B,yCAAmC;IAAjE;;IA2EA,CAAC;IAhEC,8BAAW,GAAX,UAAY,CAAyB;QAC7B,IAAA,KAAoC,IAAI,CAAC,KAAK,EAA7C,SAAS,eAAA,EAAE,UAAU,gBAAA,EAAE,QAAQ,cAAc,CAAC;QAErD,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO;SACR;QAED,QAAQ,CACN,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAC/C,CAAC,CAAC,WAA0B,CAAC,QAAQ,CACvC,CAAC;IACJ,CAAC;IAED,yBAAM,GAAN;;QACM,IAAA,KAgBA,IAAI,CAAC,KAAK,EAfZ,IAAI,UAAA,EACJ,SAAS,eAAA,EACG,EAAE,gBAAA,EACd,KAAK,WAAA,EACL,KAAK,WAAA,EACL,OAAO,aAAA,EACP,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,IAAI,UAAA,EACJ,IAAI,UAAA,EACJ,cAAc,oBACF,CAAC;QAEf,OAAO,CACL,yCACE,SAAS,EAAE,EAAE,CAAC,wBAAsB,IAAM,EAAE,SAAS;oBACnD,gBAAgB,EAAE,CAAC,OAAO;;gBAC1B,GAAC,eAAa,IAAM,IAAG,IAAI;oBAC3B;YAEF,yCACE,IAAI,EAAE,IAAI,EACV,OAAO,EACL,OAAO,OAAO,KAAK,WAAW;oBAC5B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,OAAO,KAAK,KAAK,WAAW;wBAC9B,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,KAAK,IAAI,SAAS,EAExB,QAAQ,EAAE,IAAI,CAAC,WAAW,EAC1B,OAAO,EACL,YAAY,CAAC,oCAAoC;kBAEnD,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,GACV;YACF,wCAAK;YACL,wCAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,IAAG,QAAQ,IAAI,KAAK,CAAQ;YAC9D,WAAW,CAAC,CAAC,CAAC,CACb,uCAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,IAAG,WAAW,CAAO,CACzD,CAAC,CAAC,CAAC,IAAI,CACF,CACT,CAAC;IACJ,CAAC;;IAzEM,qBAAY,GAGf;QACF,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,UAAU;KACjB,CAAC;IAGF;QADC,iBAAQ;;0EACM,eAAK,oBAAL,eAAK,CAAC,WAAW;;+CAW/B;IAqDH,eAAC;CAAA,AA3ED,CAA8B,eAAK,CAAC,SAAS,GA2E5C;AA3EY,4BAAQ;AA6ErB,kBAAe,IAAA,iBAAS,EAAC,QAAQ,CAAC,CAAC",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Checkbox\n * @author fex\n */\n\nimport React from 'react';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {autobind} from '../utils/helper';\n\nconst preventEvent = (e: any) => e.stopPropagation();\n\ninterface CheckboxProps {\n type: 'checkbox' | 'radio';\n size?: 'sm' | 'lg' | 'small' | 'large';\n label?: string;\n labelClassName?: string;\n className?: string;\n onChange?: (value: any) => void;\n value?: any;\n inline?: boolean;\n trueValue?: any;\n falseValue?: any;\n disabled?: boolean;\n readOnly?: boolean;\n checked?: boolean;\n name?: string;\n description?: string;\n classPrefix: string;\n classnames: ClassNamesFn;\n partial?: boolean;\n}\n\nexport class Checkbox extends React.Component<CheckboxProps, any> {\n static defaultProps: Pick<\n CheckboxProps,\n 'trueValue' | 'falseValue' | 'type'\n > = {\n trueValue: true,\n falseValue: false,\n type: 'checkbox'\n };\n\n @autobind\n handleCheck(e: React.ChangeEvent<any>) {\n const {trueValue, falseValue, onChange} = this.props;\n\n if (!onChange) {\n return;\n }\n\n onChange(e.currentTarget.checked ? trueValue : falseValue);\n }\n\n render() {\n let {\n size,\n className,\n classnames: cx,\n value,\n label,\n partial,\n trueValue,\n children,\n disabled,\n description,\n readOnly,\n checked,\n type,\n name,\n labelClassName\n } = this.props;\n\n return (\n <label\n className={cx(`Checkbox Checkbox--${type}`, className, {\n 'Checkbox--full': !partial,\n [`Checkbox--${size}`]: size\n })}\n >\n <input\n type={type}\n checked={\n typeof checked !== 'undefined'\n ? checked\n : typeof value === 'undefined'\n ? value\n : value == trueValue\n }\n onChange={this.handleCheck}\n onClick={\n preventEvent // 当点击 i 的时候,这个地方也会触发 click,很奇怪,干脆禁掉\n }\n disabled={disabled}\n readOnly={readOnly}\n name={name}\n />\n <i />\n <span className={cx(labelClassName)}>{children || label}</span>\n {description ? (\n <div className={cx('Checkbox-desc')}>{description}</div>\n ) : null}\n </label>\n );\n }\n}\n\nexport default themeable(Checkbox);\n"
|
11
|
+
"/**\n * @file Checkbox\n * @author fex\n */\n\nimport React from 'react';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {autobind} from '../utils/helper';\n\nconst preventEvent = (e: any) => e.stopPropagation();\n\ninterface CheckboxProps {\n type: 'checkbox' | 'radio';\n size?: 'sm' | 'lg' | 'small' | 'large';\n label?: string;\n labelClassName?: string;\n className?: string;\n onChange?: (value: any, shift?: boolean) => void;\n value?: any;\n inline?: boolean;\n trueValue?: any;\n falseValue?: any;\n disabled?: boolean;\n readOnly?: boolean;\n checked?: boolean;\n name?: string;\n description?: string;\n classPrefix: string;\n classnames: ClassNamesFn;\n partial?: boolean;\n}\n\nexport class Checkbox extends React.Component<CheckboxProps, any> {\n static defaultProps: Pick<\n CheckboxProps,\n 'trueValue' | 'falseValue' | 'type'\n > = {\n trueValue: true,\n falseValue: false,\n type: 'checkbox'\n };\n\n @autobind\n handleCheck(e: React.ChangeEvent<any>) {\n const {trueValue, falseValue, onChange} = this.props;\n\n if (!onChange) {\n return;\n }\n\n onChange(\n e.currentTarget.checked ? trueValue : falseValue,\n (e.nativeEvent as MouseEvent).shiftKey\n );\n }\n\n render() {\n let {\n size,\n className,\n classnames: cx,\n value,\n label,\n partial,\n trueValue,\n children,\n disabled,\n description,\n readOnly,\n checked,\n type,\n name,\n labelClassName\n } = this.props;\n\n return (\n <label\n className={cx(`Checkbox Checkbox--${type}`, className, {\n 'Checkbox--full': !partial,\n [`Checkbox--${size}`]: size\n })}\n >\n <input\n type={type}\n checked={\n typeof checked !== 'undefined'\n ? checked\n : typeof value === 'undefined'\n ? value\n : value == trueValue\n }\n onChange={this.handleCheck}\n onClick={\n preventEvent // 当点击 i 的时候,这个地方也会触发 click,很奇怪,干脆禁掉\n }\n disabled={disabled}\n readOnly={readOnly}\n name={name}\n />\n <i />\n <span className={cx(labelClassName)}>{children || label}</span>\n {description ? (\n <div className={cx('Checkbox-desc')}>{description}</div>\n ) : null}\n </label>\n );\n }\n}\n\nexport default themeable(Checkbox);\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/components/Drawer.js
CHANGED
@@ -127,7 +127,7 @@ var Drawer = /** @class */ (function (_super) {
|
|
127
127
|
react_1.default.createElement("div", { ref: _this.contentRef, className: (0, classnames_1.default)(ns + "Drawer-content", bodyClassName, fadeStyles[status]) },
|
128
128
|
react_1.default.createElement("a", { onClick: disabled ? undefined : onHide, className: ns + "Drawer-close" },
|
129
129
|
react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" })),
|
130
|
-
children)));
|
130
|
+
status === Transition_1.EXITED ? null : children)));
|
131
131
|
})));
|
132
132
|
};
|
133
133
|
var _b, _c;
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Drawer.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;;GAIG;;;;;AAEH,6DAA0B;AAC1B,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Drawer\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport Transition, {\n ENTERED,\n ENTERING,\n EXITING\n} from 'react-transition-group/Transition';\nimport Portal from 'react-overlays/Portal';\nimport {Icon} from './icons';\nimport cx from 'classnames';\nimport {current, addModal, removeModal} from './ModalManager';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {noop, autobind, getScrollbarWidth} from '../utils/helper';\n\ntype DrawerPosition = 'top' | 'right' | 'bottom' | 'left';\n\nexport interface DrawerProps {\n className?: string;\n bodyClassName?: string;\n size: any;\n overlay: boolean;\n onHide: (e: any) => void;\n closeOnEsc?: boolean;\n container: any;\n show?: boolean;\n position: DrawerPosition;\n disabled?: boolean;\n closeOnOutside?: boolean;\n classPrefix: string;\n classnames: ClassNamesFn;\n onExited?: () => void;\n onEntered?: () => void;\n}\nexport interface DrawerState {}\nconst fadeStyles: {\n [propName: string]: string;\n} = {\n [ENTERING]: 'in',\n [ENTERED]: 'in'\n};\nexport class Drawer extends React.Component<DrawerProps, DrawerState> {\n static defaultProps: Pick<\n DrawerProps,\n 'container' | 'position' | 'size' | 'overlay'\n > = {\n container: document.body,\n position: 'left',\n size: 'md',\n overlay: true\n };\n\n modalDom: HTMLElement;\n contentDom: HTMLElement;\n isRootClosed = false;\n\n componentDidMount() {\n if (this.props.show) {\n this.handleEntered();\n }\n\n document.body.addEventListener('click', this.handleRootClickCapture, true);\n document.body.addEventListener('click', this.handleRootClick);\n }\n\n componentDidUpdate(prevProps: DrawerProps) {\n // jest 里面没有触发 entered 导致后续的逻辑错误,\n // 所以直接 300 ms 后触发\n if (\n typeof jest !== 'undefined' &&\n prevProps.show !== this.props.show &&\n this.props.show\n ) {\n setTimeout(() => {\n this.handleEntered();\n }, 300);\n }\n }\n\n componentWillUnmount() {\n if (this.props.show) {\n this.handleExited();\n }\n\n document.body.removeEventListener('click', this.handleRootClick);\n document.body.removeEventListener(\n 'click',\n this.handleRootClickCapture,\n true\n );\n }\n\n contentRef = (ref: any) => (this.contentDom = ref);\n\n handleEnter = () => {\n document.body.classList.add(`is-modalOpened`);\n if (\n window.innerWidth - document.documentElement.clientWidth > 0 ||\n document.body.scrollHeight > document.body.clientHeight\n ) {\n const scrollbarWidth = getScrollbarWidth();\n if (scrollbarWidth) {\n document.body.style.width = `calc(100% - ${scrollbarWidth}px)`;\n }\n }\n };\n\n handleEntered = () => {\n const onEntered = this.props.onEntered;\n onEntered && onEntered();\n };\n handleExited = () => {\n const onExited = this.props.onExited;\n document.activeElement && (document.activeElement as HTMLElement)?.blur?.();\n onExited && onExited();\n setTimeout(() => {\n if (!document.querySelector('.amis-dialog-widget')) {\n document.body.classList.remove(`is-modalOpened`);\n document.body.style.width = '';\n }\n }, 200);\n };\n\n modalRef = (ref: any) => {\n this.modalDom = ref;\n if (ref) {\n addModal(this);\n (ref as HTMLElement).classList.add(\n `${this.props.classPrefix}Modal--${current()}th`\n );\n } else {\n removeModal(this);\n }\n };\n\n @autobind\n handleRootClickCapture(e: MouseEvent) {\n const target = e.target as HTMLElement;\n const {closeOnOutside, classPrefix: ns} = this.props;\n const isLeftButton =\n (e.button === 1 && window.event !== null) || e.button === 0;\n\n this.isRootClosed = !!(\n isLeftButton &&\n closeOnOutside &&\n target &&\n this.modalDom &&\n ((!this.modalDom.contains(target) && !target.closest('[role=dialog]')) ||\n (target.matches(`.${ns}Drawer-overlay`) &&\n target.parentElement === this.modalDom))\n ); // 干脆过滤掉来自弹框里面的点击\n }\n\n @autobind\n handleRootClick(e: MouseEvent) {\n const {onHide} = this.props;\n\n this.isRootClosed && !e.defaultPrevented && onHide(e);\n }\n\n render() {\n const {\n classPrefix: ns,\n className,\n children,\n container,\n show,\n position,\n size,\n onHide,\n disabled,\n overlay,\n bodyClassName\n } = this.props;\n\n return (\n <Portal container={container}>\n <Transition\n mountOnEnter\n unmountOnExit\n in={show}\n timeout={500}\n onEnter={this.handleEnter}\n onExited={this.handleExited}\n onEntered={this.handleEntered}\n >\n {(status: string) => {\n if (status === ENTERING) {\n // force reflow\n // 由于从 mount 进来到加上 in 这个 class 估计是时间太短,上次的样式还没应用进去,所以这里强制reflow一把。\n // 否则看不到动画。\n this.contentDom.offsetWidth;\n }\n\n return (\n <div\n ref={this.modalRef}\n role=\"dialog\"\n className={cx(\n `amis-dialog-widget ${ns}Drawer`,\n {\n [`${ns}Drawer--${position}`]: position,\n [`${ns}Drawer--${size}`]: size,\n [`${ns}Drawer--noOverlay`]: !overlay\n },\n className\n )}\n // onClick={this.handleWidgetClick} // 其实不需要插件,直接写逻辑吧\n >\n {overlay ? (\n <div\n className={cx(`${ns}Drawer-overlay`, fadeStyles[status])}\n />\n ) : null}\n <div\n ref={this.contentRef}\n className={cx(\n `${ns}Drawer-content`,\n bodyClassName,\n fadeStyles[status]\n )}\n >\n <a\n onClick={disabled ? undefined : onHide}\n className={`${ns}Drawer-close`}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n {children}\n </div>\n </div>\n );\n }}\n </Transition>\n </Portal>\n );\n }\n}\n\nexport default themeable(Drawer);\n"
|
11
|
+
"/**\n * @file Drawer\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport Transition, {\n ENTERED,\n ENTERING,\n EXITING,\n EXITED\n} from 'react-transition-group/Transition';\nimport Portal from 'react-overlays/Portal';\nimport {Icon} from './icons';\nimport cx from 'classnames';\nimport {current, addModal, removeModal} from './ModalManager';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {noop, autobind, getScrollbarWidth} from '../utils/helper';\n\ntype DrawerPosition = 'top' | 'right' | 'bottom' | 'left';\n\nexport interface DrawerProps {\n className?: string;\n bodyClassName?: string;\n size: any;\n overlay: boolean;\n onHide: (e: any) => void;\n closeOnEsc?: boolean;\n container: any;\n show?: boolean;\n position: DrawerPosition;\n disabled?: boolean;\n closeOnOutside?: boolean;\n classPrefix: string;\n classnames: ClassNamesFn;\n onExited?: () => void;\n onEntered?: () => void;\n}\nexport interface DrawerState {}\nconst fadeStyles: {\n [propName: string]: string;\n} = {\n [ENTERING]: 'in',\n [ENTERED]: 'in'\n};\nexport class Drawer extends React.Component<DrawerProps, DrawerState> {\n static defaultProps: Pick<\n DrawerProps,\n 'container' | 'position' | 'size' | 'overlay'\n > = {\n container: document.body,\n position: 'left',\n size: 'md',\n overlay: true\n };\n\n modalDom: HTMLElement;\n contentDom: HTMLElement;\n isRootClosed = false;\n\n componentDidMount() {\n if (this.props.show) {\n this.handleEntered();\n }\n\n document.body.addEventListener('click', this.handleRootClickCapture, true);\n document.body.addEventListener('click', this.handleRootClick);\n }\n\n componentDidUpdate(prevProps: DrawerProps) {\n // jest 里面没有触发 entered 导致后续的逻辑错误,\n // 所以直接 300 ms 后触发\n if (\n typeof jest !== 'undefined' &&\n prevProps.show !== this.props.show &&\n this.props.show\n ) {\n setTimeout(() => {\n this.handleEntered();\n }, 300);\n }\n }\n\n componentWillUnmount() {\n if (this.props.show) {\n this.handleExited();\n }\n\n document.body.removeEventListener('click', this.handleRootClick);\n document.body.removeEventListener(\n 'click',\n this.handleRootClickCapture,\n true\n );\n }\n\n contentRef = (ref: any) => (this.contentDom = ref);\n\n handleEnter = () => {\n document.body.classList.add(`is-modalOpened`);\n if (\n window.innerWidth - document.documentElement.clientWidth > 0 ||\n document.body.scrollHeight > document.body.clientHeight\n ) {\n const scrollbarWidth = getScrollbarWidth();\n if (scrollbarWidth) {\n document.body.style.width = `calc(100% - ${scrollbarWidth}px)`;\n }\n }\n };\n\n handleEntered = () => {\n const onEntered = this.props.onEntered;\n onEntered && onEntered();\n };\n handleExited = () => {\n const onExited = this.props.onExited;\n document.activeElement && (document.activeElement as HTMLElement)?.blur?.();\n onExited && onExited();\n setTimeout(() => {\n if (!document.querySelector('.amis-dialog-widget')) {\n document.body.classList.remove(`is-modalOpened`);\n document.body.style.width = '';\n }\n }, 200);\n };\n\n modalRef = (ref: any) => {\n this.modalDom = ref;\n if (ref) {\n addModal(this);\n (ref as HTMLElement).classList.add(\n `${this.props.classPrefix}Modal--${current()}th`\n );\n } else {\n removeModal(this);\n }\n };\n\n @autobind\n handleRootClickCapture(e: MouseEvent) {\n const target = e.target as HTMLElement;\n const {closeOnOutside, classPrefix: ns} = this.props;\n const isLeftButton =\n (e.button === 1 && window.event !== null) || e.button === 0;\n\n this.isRootClosed = !!(\n isLeftButton &&\n closeOnOutside &&\n target &&\n this.modalDom &&\n ((!this.modalDom.contains(target) && !target.closest('[role=dialog]')) ||\n (target.matches(`.${ns}Drawer-overlay`) &&\n target.parentElement === this.modalDom))\n ); // 干脆过滤掉来自弹框里面的点击\n }\n\n @autobind\n handleRootClick(e: MouseEvent) {\n const {onHide} = this.props;\n\n this.isRootClosed && !e.defaultPrevented && onHide(e);\n }\n\n render() {\n const {\n classPrefix: ns,\n className,\n children,\n container,\n show,\n position,\n size,\n onHide,\n disabled,\n overlay,\n bodyClassName\n } = this.props;\n\n return (\n <Portal container={container}>\n <Transition\n mountOnEnter\n unmountOnExit\n in={show}\n timeout={500}\n onEnter={this.handleEnter}\n onExited={this.handleExited}\n onEntered={this.handleEntered}\n >\n {(status: string) => {\n if (status === ENTERING) {\n // force reflow\n // 由于从 mount 进来到加上 in 这个 class 估计是时间太短,上次的样式还没应用进去,所以这里强制reflow一把。\n // 否则看不到动画。\n this.contentDom.offsetWidth;\n }\n\n return (\n <div\n ref={this.modalRef}\n role=\"dialog\"\n className={cx(\n `amis-dialog-widget ${ns}Drawer`,\n {\n [`${ns}Drawer--${position}`]: position,\n [`${ns}Drawer--${size}`]: size,\n [`${ns}Drawer--noOverlay`]: !overlay\n },\n className\n )}\n // onClick={this.handleWidgetClick} // 其实不需要插件,直接写逻辑吧\n >\n {overlay ? (\n <div\n className={cx(`${ns}Drawer-overlay`, fadeStyles[status])}\n />\n ) : null}\n <div\n ref={this.contentRef}\n className={cx(\n `${ns}Drawer-content`,\n bodyClassName,\n fadeStyles[status]\n )}\n >\n <a\n onClick={disabled ? undefined : onHide}\n className={`${ns}Drawer-close`}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n {status === EXITED ? null : children}\n </div>\n </div>\n );\n }}\n </Transition>\n </Portal>\n );\n }\n}\n\nexport default themeable(Drawer);\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/components/Modal.js
CHANGED
@@ -101,7 +101,7 @@ var Modal = /** @class */ (function (_super) {
|
|
101
101
|
_a["Modal--" + size] = size,
|
102
102
|
_a), className) },
|
103
103
|
overlay ? (react_1.default.createElement("div", { className: cx("Modal-overlay", fadeStyles[status]) })) : null,
|
104
|
-
react_1.default.createElement("div", { className: cx("Modal-content", contentClassName, fadeStyles[status]) }, children))));
|
104
|
+
react_1.default.createElement("div", { className: cx("Modal-content", contentClassName, fadeStyles[status]) }, status === Transition_1.EXITED ? null : children))));
|
105
105
|
}));
|
106
106
|
};
|
107
107
|
var _b, _c;
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Modal.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;;GAIG;;;;;AAEH,6DAA0B;AAC1B,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Modal\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport Transition, {\n ENTERED,\n ENTERING,\n EXITING\n} from 'react-transition-group/Transition';\nimport Portal from 'react-overlays/Portal';\nimport {current, addModal, removeModal} from './ModalManager';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {Icon} from './icons';\nimport {LocaleProps, localeable} from '../locale';\nimport {autobind, getScrollbarWidth} from '../utils/helper';\n\nexport interface ModalProps extends ThemeProps, LocaleProps {\n className?: string;\n contentClassName?: string;\n size?: any;\n overlay?: boolean;\n onHide: (e: any) => void;\n closeOnEsc?: boolean;\n closeOnOutside?: boolean;\n container?: any;\n show?: boolean;\n disabled?: boolean;\n onExited?: () => void;\n onEntered?: () => void;\n}\nexport interface ModalState {}\nconst fadeStyles: {\n [propName: string]: string;\n} = {\n [ENTERING]: 'in',\n [ENTERED]: 'in',\n [EXITING]: 'out'\n};\nexport class Modal extends React.Component<ModalProps, ModalState> {\n static defaultProps = {\n container: document.body,\n size: '',\n overlay: true\n };\n\n isRootClosed = false;\n modalDom: HTMLElement;\n\n static Header = themeable(\n localeable(\n ({\n classnames: cx,\n className,\n showCloseButton,\n onClose,\n children,\n classPrefix,\n translate: __,\n ...rest\n }: ThemeProps &\n LocaleProps & {\n className?: string;\n showCloseButton?: boolean;\n onClose?: () => void;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-header', className)}>\n {showCloseButton !== false ? (\n <a\n data-tooltip={__('Dialog.close')}\n data-position=\"left\"\n onClick={onClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n {children}\n </div>\n )\n )\n );\n\n static Title = themeable(\n ({\n classnames: cx,\n className,\n children,\n classPrefix,\n ...rest\n }: ThemeProps & {\n className?: string;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-title', className)}>\n {children}\n </div>\n )\n );\n\n static Body = themeable(\n ({\n classnames: cx,\n className,\n children,\n classPrefix,\n ...rest\n }: ThemeProps & {\n className?: string;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-body', className)}>\n {children}\n </div>\n )\n );\n\n static Footer = themeable(\n ({\n classnames: cx,\n className,\n children,\n classPrefix,\n ...rest\n }: ThemeProps & {\n className?: string;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-footer', className)}>\n {children}\n </div>\n )\n );\n\n componentDidMount() {\n if (this.props.show) {\n this.handleEnter();\n this.handleEntered();\n }\n\n document.body.addEventListener('click', this.handleRootClickCapture, true);\n document.body.addEventListener('click', this.handleRootClick);\n }\n\n componentWillUnmount() {\n if (this.props.show) {\n this.handleExited();\n }\n\n document.body.removeEventListener('click', this.handleRootClick);\n document.body.removeEventListener(\n 'click',\n this.handleRootClickCapture,\n true\n );\n }\n\n handleEnter = () => {\n document.body.classList.add(`is-modalOpened`);\n if (\n window.innerWidth - document.documentElement.clientWidth > 0 ||\n document.body.scrollHeight > document.body.clientHeight\n ) {\n const scrollbarWidth = getScrollbarWidth();\n document.body.style.width = `calc(100% - ${scrollbarWidth}px)`;\n }\n };\n\n handleEntered = () => {\n const onEntered = this.props.onEntered;\n\n onEntered && onEntered();\n };\n handleExited = () => {\n const onExited = this.props.onExited;\n onExited && onExited();\n setTimeout(() => {\n if (!document.querySelector('.amis-dialog-widget')) {\n document.body.classList.remove(`is-modalOpened`);\n document.body.style.width = '';\n }\n }, 200);\n };\n\n modalRef = (ref: any) => {\n this.modalDom = ref;\n const {classPrefix: ns} = this.props;\n if (ref) {\n addModal(this);\n (ref as HTMLElement).classList.add(`${ns}Modal--${current()}th`);\n } else {\n removeModal(this);\n }\n };\n\n @autobind\n handleRootClickCapture(e: MouseEvent) {\n const target = e.target as HTMLElement;\n const {closeOnOutside, classPrefix: ns} = this.props;\n const isLeftButton =\n (e.button === 1 && window.event !== null) || e.button === 0;\n\n this.isRootClosed = !!(\n isLeftButton &&\n closeOnOutside &&\n target &&\n this.modalDom &&\n ((!this.modalDom.contains(target) && !target.closest('[role=dialog]')) ||\n (target.matches(`.${ns}Modal`) && target === this.modalDom))\n ); // 干脆过滤掉来自弹框里面的点击\n }\n\n @autobind\n handleRootClick(e: MouseEvent) {\n const {onHide} = this.props;\n this.isRootClosed && !e.defaultPrevented && onHide(e);\n }\n\n render() {\n const {\n className,\n contentClassName,\n children,\n container,\n show,\n size,\n overlay,\n classnames: cx\n } = this.props;\n\n return (\n <Transition\n mountOnEnter\n unmountOnExit\n in={show}\n timeout={500}\n onEnter={this.handleEnter}\n onExited={this.handleExited}\n onEntered={this.handleEntered}\n >\n {(status: string) => (\n <Portal container={container}>\n <div\n ref={this.modalRef}\n role=\"dialog\"\n className={cx(\n `amis-dialog-widget Modal`,\n {\n [`Modal--${size}`]: size\n },\n className\n )}\n >\n {overlay ? (\n <div className={cx(`Modal-overlay`, fadeStyles[status])} />\n ) : null}\n <div\n className={cx(\n `Modal-content`,\n contentClassName,\n fadeStyles[status]\n )}\n >\n {children}\n </div>\n </div>\n </Portal>\n )}\n </Transition>\n );\n }\n}\n\nconst FinalModal = themeable(localeable(Modal));\n\nexport default FinalModal as typeof FinalModal & {\n Header: typeof Modal.Header;\n Title: typeof Modal.Title;\n Body: typeof Modal.Body;\n Footer: typeof Modal.Footer;\n};\n"
|
11
|
+
"/**\n * @file Modal\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport Transition, {\n ENTERED,\n ENTERING,\n EXITING,\n EXITED\n} from 'react-transition-group/Transition';\nimport Portal from 'react-overlays/Portal';\nimport {current, addModal, removeModal} from './ModalManager';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {Icon} from './icons';\nimport {LocaleProps, localeable} from '../locale';\nimport {autobind, getScrollbarWidth} from '../utils/helper';\n\nexport interface ModalProps extends ThemeProps, LocaleProps {\n className?: string;\n contentClassName?: string;\n size?: any;\n overlay?: boolean;\n onHide: (e: any) => void;\n closeOnEsc?: boolean;\n closeOnOutside?: boolean;\n container?: any;\n show?: boolean;\n disabled?: boolean;\n onExited?: () => void;\n onEntered?: () => void;\n}\nexport interface ModalState {}\nconst fadeStyles: {\n [propName: string]: string;\n} = {\n [ENTERING]: 'in',\n [ENTERED]: 'in',\n [EXITING]: 'out'\n};\nexport class Modal extends React.Component<ModalProps, ModalState> {\n static defaultProps = {\n container: document.body,\n size: '',\n overlay: true\n };\n\n isRootClosed = false;\n modalDom: HTMLElement;\n\n static Header = themeable(\n localeable(\n ({\n classnames: cx,\n className,\n showCloseButton,\n onClose,\n children,\n classPrefix,\n translate: __,\n ...rest\n }: ThemeProps &\n LocaleProps & {\n className?: string;\n showCloseButton?: boolean;\n onClose?: () => void;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-header', className)}>\n {showCloseButton !== false ? (\n <a\n data-tooltip={__('Dialog.close')}\n data-position=\"left\"\n onClick={onClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n {children}\n </div>\n )\n )\n );\n\n static Title = themeable(\n ({\n classnames: cx,\n className,\n children,\n classPrefix,\n ...rest\n }: ThemeProps & {\n className?: string;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-title', className)}>\n {children}\n </div>\n )\n );\n\n static Body = themeable(\n ({\n classnames: cx,\n className,\n children,\n classPrefix,\n ...rest\n }: ThemeProps & {\n className?: string;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-body', className)}>\n {children}\n </div>\n )\n );\n\n static Footer = themeable(\n ({\n classnames: cx,\n className,\n children,\n classPrefix,\n ...rest\n }: ThemeProps & {\n className?: string;\n children?: React.ReactNode;\n } & React.HTMLAttributes<HTMLDivElement>) => (\n <div {...rest} className={cx('Modal-footer', className)}>\n {children}\n </div>\n )\n );\n\n componentDidMount() {\n if (this.props.show) {\n this.handleEnter();\n this.handleEntered();\n }\n\n document.body.addEventListener('click', this.handleRootClickCapture, true);\n document.body.addEventListener('click', this.handleRootClick);\n }\n\n componentWillUnmount() {\n if (this.props.show) {\n this.handleExited();\n }\n\n document.body.removeEventListener('click', this.handleRootClick);\n document.body.removeEventListener(\n 'click',\n this.handleRootClickCapture,\n true\n );\n }\n\n handleEnter = () => {\n document.body.classList.add(`is-modalOpened`);\n if (\n window.innerWidth - document.documentElement.clientWidth > 0 ||\n document.body.scrollHeight > document.body.clientHeight\n ) {\n const scrollbarWidth = getScrollbarWidth();\n document.body.style.width = `calc(100% - ${scrollbarWidth}px)`;\n }\n };\n\n handleEntered = () => {\n const onEntered = this.props.onEntered;\n\n onEntered && onEntered();\n };\n handleExited = () => {\n const onExited = this.props.onExited;\n onExited && onExited();\n setTimeout(() => {\n if (!document.querySelector('.amis-dialog-widget')) {\n document.body.classList.remove(`is-modalOpened`);\n document.body.style.width = '';\n }\n }, 200);\n };\n\n modalRef = (ref: any) => {\n this.modalDom = ref;\n const {classPrefix: ns} = this.props;\n if (ref) {\n addModal(this);\n (ref as HTMLElement).classList.add(`${ns}Modal--${current()}th`);\n } else {\n removeModal(this);\n }\n };\n\n @autobind\n handleRootClickCapture(e: MouseEvent) {\n const target = e.target as HTMLElement;\n const {closeOnOutside, classPrefix: ns} = this.props;\n const isLeftButton =\n (e.button === 1 && window.event !== null) || e.button === 0;\n\n this.isRootClosed = !!(\n isLeftButton &&\n closeOnOutside &&\n target &&\n this.modalDom &&\n ((!this.modalDom.contains(target) && !target.closest('[role=dialog]')) ||\n (target.matches(`.${ns}Modal`) && target === this.modalDom))\n ); // 干脆过滤掉来自弹框里面的点击\n }\n\n @autobind\n handleRootClick(e: MouseEvent) {\n const {onHide} = this.props;\n this.isRootClosed && !e.defaultPrevented && onHide(e);\n }\n\n render() {\n const {\n className,\n contentClassName,\n children,\n container,\n show,\n size,\n overlay,\n classnames: cx\n } = this.props;\n\n return (\n <Transition\n mountOnEnter\n unmountOnExit\n in={show}\n timeout={500}\n onEnter={this.handleEnter}\n onExited={this.handleExited}\n onEntered={this.handleEntered}\n >\n {(status: string) => (\n <Portal container={container}>\n <div\n ref={this.modalRef}\n role=\"dialog\"\n className={cx(\n `amis-dialog-widget Modal`,\n {\n [`Modal--${size}`]: size\n },\n className\n )}\n >\n {overlay ? (\n <div className={cx(`Modal-overlay`, fadeStyles[status])} />\n ) : null}\n <div\n className={cx(\n `Modal-content`,\n contentClassName,\n fadeStyles[status]\n )}\n >\n {status === EXITED ? null : children}\n </div>\n </div>\n </Portal>\n )}\n </Transition>\n );\n }\n}\n\nconst FinalModal = themeable(localeable(Modal));\n\nexport default FinalModal as typeof FinalModal & {\n Header: typeof Modal.Header;\n Title: typeof Modal.Title;\n Body: typeof Modal.Body;\n Footer: typeof Modal.Footer;\n};\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -37,9 +37,6 @@ import 'froala-editor/js/languages/zh_cn.js';
|
|
37
37
|
import 'froala-editor/css/froala_style.min.css';
|
38
38
|
import 'froala-editor/css/froala_editor.pkgd.min.css';
|
39
39
|
export default class FroalaEditor extends React.Component<any, any> {
|
40
|
-
oldModel: any;
|
41
40
|
constructor(props: any);
|
42
|
-
componentDidUpdate(): void;
|
43
|
-
handleModelChange(model: string): void;
|
44
41
|
render(): JSX.Element;
|
45
42
|
}
|
@@ -48,7 +48,6 @@ var FroalaEditor = /** @class */ (function (_super) {
|
|
48
48
|
(0, tslib_1.__extends)(FroalaEditor, _super);
|
49
49
|
function FroalaEditor(props) {
|
50
50
|
var _this = _super.call(this, props) || this;
|
51
|
-
_this.oldModel = null;
|
52
51
|
froala_editor_min_js_1.default.VIDEO_PROVIDERS = [
|
53
52
|
{
|
54
53
|
test_regex: /.*/,
|
@@ -57,30 +56,10 @@ var FroalaEditor = /** @class */ (function (_super) {
|
|
57
56
|
html: '<span class="fr-video fr-dvb fr-draggable" contenteditable="false" draggable="true"><video class="fr-draggable" controls="" data-msg="ok" data-status="0" src="{url}" style="width: 600px;"></video></span>'
|
58
57
|
}
|
59
58
|
];
|
60
|
-
_this.state = {
|
61
|
-
model: _this.props.model
|
62
|
-
};
|
63
|
-
_this.handleModelChange = _this.handleModelChange.bind(_this);
|
64
59
|
return _this;
|
65
60
|
}
|
66
|
-
FroalaEditor.prototype.componentDidUpdate = function () {
|
67
|
-
if (JSON.stringify(this.oldModel) == JSON.stringify(this.props.model)) {
|
68
|
-
return;
|
69
|
-
}
|
70
|
-
this.handleModelChange(this.props.model);
|
71
|
-
};
|
72
|
-
FroalaEditor.prototype.handleModelChange = function (model) {
|
73
|
-
if (!this.props.onModelChange) {
|
74
|
-
return;
|
75
|
-
}
|
76
|
-
this.oldModel = model;
|
77
|
-
this.props.onModelChange(model);
|
78
|
-
this.setState({
|
79
|
-
model: model
|
80
|
-
});
|
81
|
-
};
|
82
61
|
FroalaEditor.prototype.render = function () {
|
83
|
-
return (react_1.default.createElement(react_froala_wysiwyg_1.default, { tag: "textarea", config: this.props.config, model: this.
|
62
|
+
return (react_1.default.createElement(react_froala_wysiwyg_1.default, { tag: "textarea", config: this.props.config, model: this.props.model, onModelChange: this.props.onModelChange }));
|
84
63
|
};
|
85
64
|
return FroalaEditor;
|
86
65
|
}(react_1.default.Component));
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/RichText.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;;GAIG;;;AAEH,6DAA0B;AAE1B,aAAa;AACb,2FAAyD;AACzD,aAAa;AACb,4GAA2D;AAC3D,8CAA4C;AAC5C,+CAA6C;AAC7C,qDAAmD;AACnD,kDAAgD;AAChD,kDAAgD;AAChD,iDAA+C;AAC/C,oDAAkD;AAClD,kDAAgD;AAChD,8CAA4C;AAC5C,mDAAiD;AACjD,6CAA2C;AAC3C,8CAA4C;AAC5C,qDAAmD;AACnD,qDAAmD;AACnD,qDAAmD;AACnD,oDAAkD;AAClD,6CAA2C;AAC3C,8CAA4C;AAC5C,yDAAuD;AACvD,wDAAsD;AACtD,8CAA4C;AAC5C,qDAAmD;AACnD,8CAA4C;AAC5C,6CAA2C;AAC3C,2DAAyD;AACzD,8CAA4C;AAC5C,4CAA0C;AAC1C,8CAA4C;AAC5C,mDAAiD;AACjD,+CAA6C;AAE7C,4BAA4B;AAC5B,kDAAgD;AAChD,wDAAsD;AAEtD;IAA0C,6CAAyB;
|
9
|
+
"mappings": ";AAAA;;;;GAIG;;;AAEH,6DAA0B;AAE1B,aAAa;AACb,2FAAyD;AACzD,aAAa;AACb,4GAA2D;AAC3D,8CAA4C;AAC5C,+CAA6C;AAC7C,qDAAmD;AACnD,kDAAgD;AAChD,kDAAgD;AAChD,iDAA+C;AAC/C,oDAAkD;AAClD,kDAAgD;AAChD,8CAA4C;AAC5C,mDAAiD;AACjD,6CAA2C;AAC3C,8CAA4C;AAC5C,qDAAmD;AACnD,qDAAmD;AACnD,qDAAmD;AACnD,oDAAkD;AAClD,6CAA2C;AAC3C,8CAA4C;AAC5C,yDAAuD;AACvD,wDAAsD;AACtD,8CAA4C;AAC5C,qDAAmD;AACnD,8CAA4C;AAC5C,6CAA2C;AAC3C,2DAAyD;AACzD,8CAA4C;AAC5C,4CAA0C;AAC1C,8CAA4C;AAC5C,mDAAiD;AACjD,+CAA6C;AAE7C,4BAA4B;AAC5B,kDAAgD;AAChD,wDAAsD;AAEtD;IAA0C,6CAAyB;IACjE,sBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SASb;QARC,8BAAM,CAAC,eAAe,GAAG;YACvB;gBACE,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,EAAE;gBACb,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,6MAA6M;aACpN;SACF,CAAC;;IACJ,CAAC;IAED,6BAAM,GAAN;QACE,OAAO,CACL,8BAAC,8BAAqB,IACpB,GAAG,EAAC,UAAU,EACd,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GACvC,CACH,CAAC;IACJ,CAAC;IACH,mBAAC;AAAD,CAAC,AAvBD,CAA0C,eAAK,CAAC,SAAS,GAuBxD",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file RichText\n * @description\n * @author fex\n */\n\nimport React from 'react';\n\n// @ts-ignore\nimport FroalaEditorComponent from 'react-froala-wysiwyg';\n// @ts-ignore\nimport Froala from 'froala-editor/js/froala_editor.min.js';\nimport 'froala-editor/js/plugins/align.min';\nimport 'froala-editor/js/plugins/colors.min';\nimport 'froala-editor/js/plugins/char_counter.min';\nimport 'froala-editor/js/plugins/code_view.min';\nimport 'froala-editor/js/plugins/draggable.min';\nimport 'froala-editor/js/plugins/entities.min';\nimport 'froala-editor/js/plugins/font_family.min';\nimport 'froala-editor/js/plugins/font_size.min';\nimport 'froala-editor/js/plugins/forms.min';\nimport 'froala-editor/js/plugins/fullscreen.min';\nimport 'froala-editor/js/plugins/help.min';\nimport 'froala-editor/js/plugins/image.min';\nimport 'froala-editor/js/plugins/inline_class.min';\nimport 'froala-editor/js/plugins/inline_style.min';\nimport 'froala-editor/js/plugins/line_breaker.min';\nimport 'froala-editor/js/plugins/line_height.min';\nimport 'froala-editor/js/plugins/link.min';\nimport 'froala-editor/js/plugins/lists.min';\nimport 'froala-editor/js/plugins/paragraph_format.min';\nimport 'froala-editor/js/plugins/paragraph_style.min';\nimport 'froala-editor/js/plugins/print.min';\nimport 'froala-editor/js/plugins/quick_insert.min';\nimport 'froala-editor/js/plugins/quote.min';\nimport 'froala-editor/js/plugins/save.min';\nimport 'froala-editor/js/plugins/special_characters.min';\nimport 'froala-editor/js/plugins/table.min';\nimport 'froala-editor/js/plugins/url.min';\nimport 'froala-editor/js/plugins/video.min';\nimport 'froala-editor/js/plugins/word_paste.min';\nimport 'froala-editor/js/languages/zh_cn.js';\n\n// Require Editor CSS files.\nimport 'froala-editor/css/froala_style.min.css';\nimport 'froala-editor/css/froala_editor.pkgd.min.css';\n\nexport default class FroalaEditor extends React.Component<any, any> {\n
|
11
|
+
"/**\n * @file RichText\n * @description\n * @author fex\n */\n\nimport React from 'react';\n\n// @ts-ignore\nimport FroalaEditorComponent from 'react-froala-wysiwyg';\n// @ts-ignore\nimport Froala from 'froala-editor/js/froala_editor.min.js';\nimport 'froala-editor/js/plugins/align.min';\nimport 'froala-editor/js/plugins/colors.min';\nimport 'froala-editor/js/plugins/char_counter.min';\nimport 'froala-editor/js/plugins/code_view.min';\nimport 'froala-editor/js/plugins/draggable.min';\nimport 'froala-editor/js/plugins/entities.min';\nimport 'froala-editor/js/plugins/font_family.min';\nimport 'froala-editor/js/plugins/font_size.min';\nimport 'froala-editor/js/plugins/forms.min';\nimport 'froala-editor/js/plugins/fullscreen.min';\nimport 'froala-editor/js/plugins/help.min';\nimport 'froala-editor/js/plugins/image.min';\nimport 'froala-editor/js/plugins/inline_class.min';\nimport 'froala-editor/js/plugins/inline_style.min';\nimport 'froala-editor/js/plugins/line_breaker.min';\nimport 'froala-editor/js/plugins/line_height.min';\nimport 'froala-editor/js/plugins/link.min';\nimport 'froala-editor/js/plugins/lists.min';\nimport 'froala-editor/js/plugins/paragraph_format.min';\nimport 'froala-editor/js/plugins/paragraph_style.min';\nimport 'froala-editor/js/plugins/print.min';\nimport 'froala-editor/js/plugins/quick_insert.min';\nimport 'froala-editor/js/plugins/quote.min';\nimport 'froala-editor/js/plugins/save.min';\nimport 'froala-editor/js/plugins/special_characters.min';\nimport 'froala-editor/js/plugins/table.min';\nimport 'froala-editor/js/plugins/url.min';\nimport 'froala-editor/js/plugins/video.min';\nimport 'froala-editor/js/plugins/word_paste.min';\nimport 'froala-editor/js/languages/zh_cn.js';\n\n// Require Editor CSS files.\nimport 'froala-editor/css/froala_style.min.css';\nimport 'froala-editor/css/froala_editor.pkgd.min.css';\n\nexport default class FroalaEditor extends React.Component<any, any> {\n constructor(props: any) {\n super(props);\n Froala.VIDEO_PROVIDERS = [\n {\n test_regex: /.*/,\n url_regex: '',\n url_text: '',\n html: '<span class=\"fr-video fr-dvb fr-draggable\" contenteditable=\"false\" draggable=\"true\"><video class=\"fr-draggable\" controls=\"\" data-msg=\"ok\" data-status=\"0\" src=\"{url}\" style=\"width: 600px;\"></video></span>'\n }\n ];\n }\n\n render() {\n return (\n <FroalaEditorComponent\n tag=\"textarea\"\n config={this.props.config}\n model={this.props.model}\n onModelChange={this.props.onModelChange}\n />\n );\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -5,6 +5,7 @@
|
|
5
5
|
* @date 2017-11-07
|
6
6
|
*/
|
7
7
|
/// <reference types="hoist-non-react-statics" />
|
8
|
+
/// <reference types="lodash" />
|
8
9
|
import React from 'react';
|
9
10
|
import { ControllerStateAndHelpers } from 'downshift';
|
10
11
|
import { ThemeProps } from '../theme';
|
@@ -3412,10 +3413,12 @@ export declare const SelectWithRemoteOptions: {
|
|
3412
3413
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
3413
3414
|
}): {
|
3414
3415
|
toDispose: (() => void)[];
|
3416
|
+
loadOptions: import("lodash").DebouncedFunc<any>;
|
3415
3417
|
componentDidMount(): void;
|
3416
3418
|
componentDidUpdate(prevProps: any): void;
|
3417
3419
|
componentWillUnmount(): void;
|
3418
3420
|
loadConfig(ctx?: any): Promise<void>;
|
3421
|
+
loadAutoComplete(input: string): Promise<any>;
|
3419
3422
|
setConfig(value: any, ctx?: any): void;
|
3420
3423
|
syncConfig(): void;
|
3421
3424
|
deferLoadConfig(item: any): Promise<void>;
|
@@ -4388,10 +4391,12 @@ export declare const SelectWithRemoteOptions: {
|
|
4388
4391
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
4389
4392
|
}): {
|
4390
4393
|
toDispose: (() => void)[];
|
4394
|
+
loadOptions: import("lodash").DebouncedFunc<any>;
|
4391
4395
|
componentDidMount(): void;
|
4392
4396
|
componentDidUpdate(prevProps: any): void;
|
4393
4397
|
componentWillUnmount(): void;
|
4394
4398
|
loadConfig(ctx?: any): Promise<void>;
|
4399
|
+
loadAutoComplete(input: string): Promise<any>;
|
4395
4400
|
setConfig(value: any, ctx?: any): void;
|
4396
4401
|
syncConfig(): void;
|
4397
4402
|
deferLoadConfig(item: any): Promise<void>;
|
@@ -5363,10 +5368,12 @@ export declare const SelectWithRemoteOptions: {
|
|
5363
5368
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
5364
5369
|
}): {
|
5365
5370
|
toDispose: (() => void)[];
|
5371
|
+
loadOptions: import("lodash").DebouncedFunc<any>;
|
5366
5372
|
componentDidMount(): void;
|
5367
5373
|
componentDidUpdate(prevProps: any): void;
|
5368
5374
|
componentWillUnmount(): void;
|
5369
5375
|
loadConfig(ctx?: any): Promise<void>;
|
5376
|
+
loadAutoComplete(input: string): Promise<any>;
|
5370
5377
|
setConfig(value: any, ctx?: any): void;
|
5371
5378
|
syncConfig(): void;
|
5372
5379
|
deferLoadConfig(item: any): Promise<void>;
|