amis 1.8.0-beta.0 → 1.8.0-beta.1

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.
Files changed (95) hide show
  1. package/lib/components/DatePicker.d.ts +3 -0
  2. package/lib/components/DatePicker.js +41 -7
  3. package/lib/components/DatePicker.js.map +2 -2
  4. package/lib/components/Progress.js +12 -9
  5. package/lib/components/Progress.js.map +2 -2
  6. package/lib/components/calendar/Calendar.js +16 -12
  7. package/lib/components/calendar/Calendar.js.map +2 -2
  8. package/lib/components/formula/Editor.d.ts +3 -1
  9. package/lib/components/formula/Editor.js +20 -2
  10. package/lib/components/formula/Editor.js.map +2 -2
  11. package/lib/components/formula/Picker.d.ts +5 -0
  12. package/lib/components/formula/Picker.js +19 -4
  13. package/lib/components/formula/Picker.js.map +2 -2
  14. package/lib/factory.js +2 -2
  15. package/lib/factory.js.map +2 -2
  16. package/lib/index.js +1 -1
  17. package/lib/renderers/Dialog.d.ts +4 -0
  18. package/lib/renderers/Dialog.js +4 -3
  19. package/lib/renderers/Dialog.js.map +2 -2
  20. package/lib/renderers/DropDownButton.d.ts +2 -0
  21. package/lib/renderers/DropDownButton.js +13 -4
  22. package/lib/renderers/DropDownButton.js.map +2 -2
  23. package/lib/renderers/Form/InputFormula.d.ts +4 -0
  24. package/lib/renderers/Form/InputFormula.js +2 -2
  25. package/lib/renderers/Form/InputFormula.js.map +2 -2
  26. package/lib/renderers/Form/InputTable.js +4 -2
  27. package/lib/renderers/Form/InputTable.js.map +2 -2
  28. package/lib/renderers/Page.js +2 -3
  29. package/lib/renderers/Page.js.map +2 -2
  30. package/lib/renderers/Progress.d.ts +1 -1
  31. package/lib/renderers/Progress.js +1 -1
  32. package/lib/renderers/Progress.js.map +2 -2
  33. package/lib/renderers/Table/TableRow.js +1 -1
  34. package/lib/renderers/Table/TableRow.js.map +2 -2
  35. package/lib/store/table.js +2 -2
  36. package/lib/store/table.js.map +2 -2
  37. package/lib/themes/ang-ie11.css +34 -7
  38. package/lib/themes/ang.css +34 -7
  39. package/lib/themes/ang.css.map +1 -1
  40. package/lib/themes/antd-ie11.css +34 -7
  41. package/lib/themes/antd.css +34 -7
  42. package/lib/themes/antd.css.map +1 -1
  43. package/lib/themes/cxd-ie11.css +34 -7
  44. package/lib/themes/cxd.css +34 -7
  45. package/lib/themes/cxd.css.map +1 -1
  46. package/lib/themes/dark-ie11.css +34 -7
  47. package/lib/themes/dark.css +34 -7
  48. package/lib/themes/dark.css.map +1 -1
  49. package/lib/themes/default-ie11.css +34 -7
  50. package/lib/themes/default.css +34 -7
  51. package/lib/themes/default.css.map +1 -1
  52. package/package.json +1 -1
  53. package/schema.json +20 -8
  54. package/scss/components/_formula.scss +18 -0
  55. package/scss/components/_progress.scss +3 -8
  56. package/scss/components/form/_date.scss +13 -0
  57. package/sdk/ang-ie11.css +40 -8
  58. package/sdk/ang.css +40 -8
  59. package/sdk/antd-ie11.css +40 -8
  60. package/sdk/antd.css +40 -8
  61. package/sdk/barcode.js +51 -51
  62. package/sdk/charts.js +14 -14
  63. package/sdk/codemirror.js +7 -7
  64. package/sdk/color-picker.js +65 -65
  65. package/sdk/cropperjs.js +2 -2
  66. package/sdk/cxd-ie11.css +40 -8
  67. package/sdk/cxd.css +40 -8
  68. package/sdk/dark-ie11.css +40 -8
  69. package/sdk/dark.css +40 -8
  70. package/sdk/exceljs.js +1 -1
  71. package/sdk/markdown.js +69 -69
  72. package/sdk/papaparse.js +1 -1
  73. package/sdk/renderers/Form/CityDB.js +1 -1
  74. package/sdk/rest.js +17 -17
  75. package/sdk/rich-text.js +62 -62
  76. package/sdk/sdk-ie11.css +40 -8
  77. package/sdk/sdk.css +40 -8
  78. package/sdk/sdk.js +1248 -1248
  79. package/sdk/thirds/hls.js/hls.js +1 -1
  80. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  81. package/sdk/tinymce.js +57 -57
  82. package/src/components/DatePicker.tsx +56 -18
  83. package/src/components/Progress.tsx +8 -12
  84. package/src/components/calendar/Calendar.tsx +17 -12
  85. package/src/components/formula/Editor.tsx +34 -3
  86. package/src/components/formula/Picker.tsx +28 -1
  87. package/src/factory.tsx +2 -2
  88. package/src/renderers/Dialog.tsx +17 -3
  89. package/src/renderers/DropDownButton.tsx +14 -3
  90. package/src/renderers/Form/InputFormula.tsx +7 -0
  91. package/src/renderers/Form/InputTable.tsx +6 -2
  92. package/src/renderers/Page.tsx +1 -2
  93. package/src/renderers/Progress.tsx +2 -2
  94. package/src/renderers/Table/TableRow.tsx +1 -1
  95. package/src/store/table.ts +2 -2
@@ -6,8 +6,8 @@
6
6
  "/src/factory.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {RendererStore, IRendererStore, IIRendererStore} from './store/index';\nimport {getEnv, destroy} from 'mobx-state-tree';\nimport {wrapFetcher} from './utils/api';\nimport {normalizeLink} from './utils/normalizeLink';\nimport {\n createObject,\n findIndex,\n isObject,\n JSONTraverse,\n promisify,\n qsparse,\n string2regExp\n} from './utils/helper';\nimport {\n Api,\n fetcherResult,\n Payload,\n SchemaNode,\n Schema,\n Action,\n EventTrack,\n PlainObject\n} from './types';\nimport {observer} from 'mobx-react';\nimport Scoped, {IScopedContext} from './Scoped';\nimport {getTheme, ThemeInstance, ThemeProps} from './theme';\nimport find from 'lodash/find';\nimport Alert from './components/Alert2';\nimport {toast} from './components/Toast';\nimport {alert, confirm, setRenderSchemaFn} from './components/Alert';\nimport {getDefaultLocale, makeTranslator, LocaleProps} from './locale';\nimport ScopedRootRenderer, {RootRenderProps} from './Root';\nimport {HocStoreFactory} from './WithStore';\nimport {EnvContext, RendererEnv} from './env';\nimport {envOverwrite} from './envOverwrite';\nimport {\n EventListeners,\n createRendererEvent,\n RendererEventListener,\n OnEventProps,\n RendererEvent\n} from './utils/renderer-event';\nimport {runActions} from './actions/Action';\n\nexport interface TestFunc {\n (\n path: string,\n schema?: Schema,\n resolveRenderer?: (\n path: string,\n schema?: Schema,\n props?: any\n ) => null | RendererConfig\n ): boolean;\n}\n\nexport interface RendererBasicConfig {\n test?: RegExp | TestFunc;\n type?: string;\n name?: string;\n storeType?: string;\n shouldSyncSuperStore?: (\n store: any,\n props: any,\n prevProps: any\n ) => boolean | undefined;\n storeExtendsData?: boolean | ((props: any) => boolean); // 是否需要继承上层数据。\n weight?: number; // 权重,值越低越优先命中。\n isolateScope?: boolean;\n isFormItem?: boolean;\n // [propName:string]:any;\n}\n\nexport interface RendererProps extends ThemeProps, LocaleProps, OnEventProps {\n render: (region: string, node: SchemaNode, props?: any) => JSX.Element;\n env: RendererEnv;\n $path: string; // 当前组件所在的层级信息\n $schema: any; // 原始 schema 配置\n store?: IIRendererStore;\n syncSuperStore?: boolean;\n data: {\n [propName: string]: any;\n };\n defaultData?: object;\n className?: any;\n [propName: string]: any;\n}\n\nexport type RendererComponent = React.ComponentType<RendererProps> & {\n propsList?: Array<any>;\n};\n\nexport interface RendererConfig extends RendererBasicConfig {\n component: RendererComponent;\n Renderer?: RendererComponent; // 原始组件\n}\n\nexport interface RenderSchemaFilter {\n (schema: Schema, renderer: RendererConfig, props?: any): Schema;\n}\n\nexport interface wsObject {\n url: string;\n body?: any;\n}\n\nexport interface RenderOptions {\n session?: string;\n fetcher?: (config: fetcherConfig) => Promise<fetcherResult>;\n wsFetcher?: (\n ws: wsObject,\n onMessage: (data: any) => void,\n onError: (error: any) => void\n ) => void;\n isCancel?: (value: any) => boolean;\n notify?: (\n type: 'error' | 'success',\n msg: string,\n conf?: {\n closeButton?: boolean;\n timeout?: number;\n }\n ) => void;\n jumpTo?: (to: string, action?: Action, ctx?: object) => void;\n alert?: (msg: string) => void;\n confirm?: (msg: string, title?: string) => boolean | Promise<boolean>;\n rendererResolver?: (\n path: string,\n schema: Schema,\n props: any\n ) => null | RendererConfig;\n copy?: (contents: string, options?: any) => void;\n getModalContainer?: () => HTMLElement;\n loadRenderer?: (\n schema: Schema,\n path: string,\n reRender: Function\n ) => Promise<React.ReactType> | React.ReactType | JSX.Element | void;\n affixOffsetTop?: number;\n affixOffsetBottom?: number;\n richTextToken?: string;\n /**\n * 替换文本,用于实现 URL 替换、语言替换等\n */\n replaceText?: {[propName: string]: any};\n /**\n * 文本替换的黑名单,因为属性太多了所以改成黑名单的 fangs\n */\n replaceTextIgnoreKeys?: String[];\n /**\n * 过滤 html 标签,可用来添加 xss 保护逻辑\n */\n filterHtml?: (input: string) => string;\n [propName: string]: any;\n}\n\nexport interface fetcherConfig {\n url: string;\n method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp';\n data?: any;\n config?: any;\n}\n\nconst renderers: Array<RendererConfig> = [];\nconst rendererNames: Array<string> = [];\nconst schemaFilters: Array<RenderSchemaFilter> = [];\nlet anonymousIndex = 1;\n\nexport function addSchemaFilter(fn: RenderSchemaFilter) {\n schemaFilters.push(fn);\n}\n\nexport function filterSchema(\n schema: Schema,\n render: RendererConfig,\n props?: any\n) {\n return schemaFilters.reduce(\n (schema, filter) => filter(schema, render, props),\n schema\n ) as Schema;\n}\n\nexport function Renderer(config: RendererBasicConfig) {\n return function <T extends RendererComponent>(component: T): T {\n const renderer = registerRenderer({\n ...config,\n component: component\n });\n return renderer.component as T;\n };\n}\n\nexport function registerRenderer(config: RendererConfig): RendererConfig {\n if (!config.test && !config.type) {\n throw new TypeError('please set config.test or config.type');\n } else if (!config.component) {\n throw new TypeError('config.component is required');\n }\n\n if (typeof config.type === 'string' && config.type) {\n config.type = config.type.toLowerCase();\n config.test =\n config.test || new RegExp(`(^|\\/)${string2regExp(config.type)}$`, 'i');\n }\n\n config.weight = config.weight || 0;\n config.Renderer = config.component;\n config.name = config.name || config.type || `anonymous-${anonymousIndex++}`;\n\n if (~rendererNames.indexOf(config.name)) {\n throw new Error(\n `The renderer with name \"${config.name}\" has already exists, please try another name!`\n );\n }\n\n if (config.storeType && config.component) {\n config.component = HocStoreFactory({\n storeType: config.storeType,\n extendsData: config.storeExtendsData,\n shouldSyncSuperStore: config.shouldSyncSuperStore\n })(observer(config.component));\n }\n\n if (config.isolateScope) {\n config.component = Scoped(config.component);\n }\n\n const idx = findIndex(\n renderers,\n item => (config.weight as number) < item.weight\n );\n ~idx ? renderers.splice(idx, 0, config) : renderers.push(config);\n rendererNames.push(config.name);\n return config;\n}\n\nexport function unRegisterRenderer(config: RendererConfig | string) {\n let idx =\n typeof config === 'string'\n ? findIndex(renderers, item => item.name === config)\n : renderers.indexOf(config);\n ~idx && renderers.splice(idx, 1);\n\n let idx2 =\n typeof config === 'string'\n ? findIndex(rendererNames, item => item === config)\n : rendererNames.indexOf(config.name || '');\n ~idx2 && rendererNames.splice(idx2, 1);\n\n // 清空渲染器定位缓存\n cache = {};\n}\n\nexport function loadRenderer(schema: Schema, path: string) {\n return (\n <Alert level=\"danger\">\n <p>Error: 找不到对应的渲染器</p>\n <p>Path: {path}</p>\n <pre>\n <code>{JSON.stringify(schema, null, 2)}</code>\n </pre>\n </Alert>\n );\n}\n\nconst defaultOptions: RenderOptions = {\n session: 'global',\n affixOffsetTop: 0,\n affixOffsetBottom: 0,\n richTextToken: '',\n useMobileUI: true, // 是否启用移动端原生 UI\n loadRenderer,\n rendererEventListeners: [],\n fetcher() {\n return Promise.reject('fetcher is required');\n },\n // 使用 WebSocket 来实时获取数据\n wsFetcher(ws, onMessage, onError) {\n if (ws) {\n const socket = new WebSocket(ws.url);\n socket.onopen = event => {\n if (ws.body) {\n socket.send(JSON.stringify(ws.body));\n }\n };\n socket.onmessage = event => {\n if (event.data) {\n onMessage(JSON.parse(event.data));\n }\n };\n socket.onerror = onError;\n return {\n close: socket.close\n };\n } else {\n return {\n close: () => {}\n };\n }\n },\n isCancel() {\n console.error(\n 'Please implement isCancel. see https://baidu.gitee.io/amis/docs/start/getting-started#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97'\n );\n return false;\n },\n updateLocation() {\n console.error(\n 'Please implement updateLocation. see https://baidu.gitee.io/amis/docs/start/getting-started#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97'\n );\n },\n alert,\n confirm,\n notify: (type, msg, conf) =>\n toast[type] ? toast[type](msg, conf) : console.warn('[Notify]', type, msg),\n\n jumpTo: (to: string, action?: any) => {\n if (to === 'goBack') {\n return window.history.back();\n }\n to = normalizeLink(to);\n if (action && action.actionType === 'url') {\n action.blank === false ? (window.location.href = to) : window.open(to);\n return;\n }\n if (/^https?:\\/\\//.test(to)) {\n window.location.replace(to);\n } else {\n location.href = to;\n }\n },\n isCurrentUrl: (to: string) => {\n if (!to) {\n return false;\n }\n\n const link = normalizeLink(to);\n const location = window.location;\n let pathname = link;\n let search = '';\n const idx = link.indexOf('?');\n if (~idx) {\n pathname = link.substring(0, idx);\n search = link.substring(idx);\n }\n if (search) {\n if (pathname !== location.pathname || !location.search) {\n return false;\n }\n const query = qsparse(search.substring(1));\n const currentQuery = qsparse(location.search.substring(1));\n return Object.keys(query).every(key => query[key] === currentQuery[key]);\n } else if (pathname === location.pathname) {\n return true;\n }\n return false;\n },\n copy(contents: string) {\n console.error('copy contents', contents);\n },\n // 用于跟踪用户在界面中的各种操作\n tracker(eventTrack: EventTrack, props: PlainObject) {},\n // 返回解绑函数\n bindEvent(renderer: any) {\n if (!renderer) {\n return undefined;\n }\n const listeners: EventListeners = renderer.props.$schema.onEvent;\n if (listeners) {\n // 暂存\n for (let key of Object.keys(listeners)) {\n this.rendererEventListeners.push({\n renderer,\n type: key,\n weight: listeners[key].weight || 0,\n actions: listeners[key].actions\n });\n }\n\n return () => {\n this.rendererEventListeners = this.rendererEventListeners.filter(\n (item: RendererEventListener) => item.renderer !== renderer\n );\n };\n }\n\n return undefined;\n },\n async dispatchEvent(\n e: string | React.MouseEvent<any>,\n renderer: React.Component<RendererProps>,\n scoped: IScopedContext,\n data: any,\n broadcast?: RendererEvent<any>\n ) {\n const eventName = typeof e === 'string' ? e : e.type;\n if (!broadcast) {\n const eventConfig = renderer?.props?.onEvent?.[eventName];\n\n if (!eventConfig) {\n // 没命中也没关系\n return Promise.resolve(undefined);\n }\n }\n\n // 没有可处理的监听\n if (!this.rendererEventListeners.length) {\n return Promise.resolve();\n }\n\n // 如果是广播动作,就直接复用\n const rendererEvent =\n broadcast ||\n createRendererEvent(eventName, {\n env: this,\n nativeEvent: e,\n data,\n scoped\n });\n\n // 过滤&排序\n const listeners = this.rendererEventListeners\n .filter(\n (item: RendererEventListener) =>\n item.type === eventName &&\n (broadcast ? true : item.renderer === renderer)\n )\n .sort(\n (prev: RendererEventListener, next: RendererEventListener) =>\n next.weight - prev.weight\n );\n\n for (let listener of listeners) {\n await runActions(listener.actions, listener.renderer, rendererEvent);\n\n // 停止后续监听器执行\n if (rendererEvent.stoped) {\n break;\n }\n }\n\n return rendererEvent;\n },\n rendererResolver: resolveRenderer,\n replaceTextIgnoreKeys: [\n 'type',\n 'name',\n 'mode',\n 'target',\n 'reload',\n 'persistData'\n ],\n /**\n * 过滤 html 标签,可用来添加 xss 保护逻辑\n */\n filterHtml: (input: string) => input\n};\nlet stores: {\n [propName: string]: IRendererStore;\n} = {};\nexport function render(\n schema: Schema,\n props: RootRenderProps = {},\n options: RenderOptions = {},\n pathPrefix: string = ''\n): JSX.Element {\n let locale = props.locale || getDefaultLocale();\n // 兼容 locale 的不同写法\n locale = locale.replace('_', '-');\n locale = locale === 'en' ? 'en-US' : locale;\n locale = locale === 'zh' ? 'zh-CN' : locale;\n locale = locale === 'cn' ? 'zh-CN' : locale;\n const translate = props.translate || makeTranslator(locale);\n let store = stores[options.session || 'global'];\n\n // 根据环境覆盖 schema,这个要在最前面做,不然就无法覆盖 validations\n envOverwrite(schema, locale);\n\n if (!store) {\n options = {\n ...defaultOptions,\n ...options,\n fetcher: options.fetcher\n ? wrapFetcher(options.fetcher, options.tracker)\n : defaultOptions.fetcher,\n confirm: promisify(\n options.confirm || defaultOptions.confirm || window.confirm\n ),\n locale,\n translate\n } as any;\n\n store = RendererStore.create({}, options);\n stores[options.session || 'global'] = store;\n }\n\n (window as any).amisStore = store; // 为了方便 debug.\n const env = getEnv(store);\n\n let theme = props.theme || options.theme || 'cxd';\n if (theme === 'default') {\n theme = 'cxd';\n }\n env.theme = getTheme(theme);\n\n if (props.locale !== undefined) {\n env.translate = translate;\n env.locale = locale;\n }\n\n // 默认将开启移动端原生 UI\n if (typeof options.useMobileUI) {\n props.useMobileUI = true;\n }\n\n // 进行文本替换\n if (env.replaceText && isObject(env.replaceText)) {\n const replaceKeys = Object.keys(env.replaceText);\n replaceKeys.sort().reverse(); // 避免用户将短的放前面\n const replaceTextIgnoreKeys = new Set(env.replaceTextIgnoreKeys || []);\n JSONTraverse(schema, (value: any, key: string, object: any) => {\n if (typeof value === 'string' && !replaceTextIgnoreKeys.has(key)) {\n for (const replaceKey of replaceKeys) {\n if (~value.indexOf(replaceKey)) {\n object[key] = value.replaceAll(\n replaceKey,\n env.replaceText[replaceKey]\n );\n }\n }\n }\n });\n }\n\n return (\n <EnvContext.Provider value={env}>\n <ScopedRootRenderer\n {...props}\n schema={schema}\n pathPrefix={pathPrefix}\n rootStore={store}\n env={env}\n theme={theme}\n locale={locale}\n translate={translate}\n />\n </EnvContext.Provider>\n );\n}\n\n// 默认 env 会被缓存,所以新传入的 env 不会替换旧的。\n// 除非先删了旧的,新的才会生效。\nexport function clearStoresCache(\n sessions: Array<string> | string = Object.keys(stores)\n) {\n if (!Array.isArray(sessions)) {\n sessions = [sessions];\n }\n\n sessions.forEach(key => {\n const store = stores[key];\n\n // @ts-ignore\n delete stores[key];\n\n store && destroy(store);\n });\n}\n\n// 当然也可以直接这样更新。\n// 主要是有时候第一次创建的时候并没有准备多少接口,\n// 可以后续补充点,比如 amis 自己实现的,prompt 里面的表单。\nexport function updateEnv(options: Partial<RenderOptions>, session = 'global') {\n options = {\n ...options\n };\n\n if (options.fetcher) {\n options.fetcher = wrapFetcher(options.fetcher, options.tracker) as any;\n }\n\n if (options.confirm) {\n options.confirm = promisify(options.confirm);\n }\n\n let store = stores[options.session || session];\n if (!store) {\n store = RendererStore.create({}, options);\n stores[options.session || session] = store;\n } else {\n const env = getEnv(store);\n Object.assign(env, options);\n }\n}\n\nlet cache: {[propName: string]: RendererConfig} = {};\nexport function resolveRenderer(\n path: string,\n schema?: Schema\n): null | RendererConfig {\n const type = typeof schema?.type == 'string' ? schema.type.toLowerCase() : '';\n\n if (type && cache[type]) {\n return cache[type];\n } else if (cache[path]) {\n return cache[path];\n } else if (path && path.length > 1024) {\n throw new Error('Path太长是不是死循环了?');\n }\n\n let renderer: null | RendererConfig = null;\n\n renderers.some(item => {\n let matched = false;\n\n // 直接匹配类型,后续注册渲染都应该用这个方式而不是之前的判断路径。\n if (item.type && type) {\n matched = item.type === type;\n\n // 如果是type来命中的,那么cache的key直接用 type 即可。\n if (matched) {\n cache[type] = item;\n }\n } else if (typeof item.test === 'function') {\n // 不应该搞得这么复杂的,让每个渲染器唯一 id,自己不晕别人用起来也不晕。\n matched = item.test(path, schema, resolveRenderer);\n } else if (item.test instanceof RegExp) {\n matched = item.test.test(path);\n }\n\n if (matched) {\n renderer = item;\n }\n\n return matched;\n });\n\n // 只能缓存纯正则表达式的后者方法中没有用到第二个参数的,\n // 因为自定义 test 函数的有可能依赖 schema 的结果\n if (\n renderer !== null &&\n ((renderer as RendererConfig).type ||\n (renderer as RendererConfig).test instanceof RegExp ||\n (typeof (renderer as RendererConfig).test === 'function' &&\n ((renderer as RendererConfig).test as Function).length < 2))\n ) {\n cache[path] = renderer;\n }\n\n return renderer;\n}\n\nexport function getRenderers() {\n return renderers.concat();\n}\n\nexport function getRendererByName(name: string) {\n return find(renderers, item => item.name === name);\n}\n\nsetRenderSchemaFn((controls, value, callback, scopeRef, theme) => {\n return render(\n {\n name: 'form',\n type: 'form',\n wrapWithPanel: false,\n mode: 'horizontal',\n controls,\n messages: {\n validateFailed: ''\n }\n },\n {\n data: value,\n onFinished: callback,\n scopeRef,\n theme\n },\n {\n session: 'prompt'\n }\n );\n});\n\nexport {RendererEnv};\n"
11
+ "import React from 'react';\nimport {RendererStore, IRendererStore, IIRendererStore} from './store/index';\nimport {getEnv, destroy} from 'mobx-state-tree';\nimport {wrapFetcher} from './utils/api';\nimport {normalizeLink} from './utils/normalizeLink';\nimport {\n createObject,\n findIndex,\n isObject,\n JSONTraverse,\n promisify,\n qsparse,\n string2regExp\n} from './utils/helper';\nimport {\n Api,\n fetcherResult,\n Payload,\n SchemaNode,\n Schema,\n Action,\n EventTrack,\n PlainObject\n} from './types';\nimport {observer} from 'mobx-react';\nimport Scoped, {IScopedContext} from './Scoped';\nimport {getTheme, ThemeInstance, ThemeProps} from './theme';\nimport find from 'lodash/find';\nimport Alert from './components/Alert2';\nimport {toast} from './components/Toast';\nimport {alert, confirm, setRenderSchemaFn} from './components/Alert';\nimport {getDefaultLocale, makeTranslator, LocaleProps} from './locale';\nimport ScopedRootRenderer, {RootRenderProps} from './Root';\nimport {HocStoreFactory} from './WithStore';\nimport {EnvContext, RendererEnv} from './env';\nimport {envOverwrite} from './envOverwrite';\nimport {\n EventListeners,\n createRendererEvent,\n RendererEventListener,\n OnEventProps,\n RendererEvent\n} from './utils/renderer-event';\nimport {runActions} from './actions/Action';\n\nexport interface TestFunc {\n (\n path: string,\n schema?: Schema,\n resolveRenderer?: (\n path: string,\n schema?: Schema,\n props?: any\n ) => null | RendererConfig\n ): boolean;\n}\n\nexport interface RendererBasicConfig {\n test?: RegExp | TestFunc;\n type?: string;\n name?: string;\n storeType?: string;\n shouldSyncSuperStore?: (\n store: any,\n props: any,\n prevProps: any\n ) => boolean | undefined;\n storeExtendsData?: boolean | ((props: any) => boolean); // 是否需要继承上层数据。\n weight?: number; // 权重,值越低越优先命中。\n isolateScope?: boolean;\n isFormItem?: boolean;\n // [propName:string]:any;\n}\n\nexport interface RendererProps extends ThemeProps, LocaleProps, OnEventProps {\n render: (region: string, node: SchemaNode, props?: any) => JSX.Element;\n env: RendererEnv;\n $path: string; // 当前组件所在的层级信息\n $schema: any; // 原始 schema 配置\n store?: IIRendererStore;\n syncSuperStore?: boolean;\n data: {\n [propName: string]: any;\n };\n defaultData?: object;\n className?: any;\n [propName: string]: any;\n}\n\nexport type RendererComponent = React.ComponentType<RendererProps> & {\n propsList?: Array<any>;\n};\n\nexport interface RendererConfig extends RendererBasicConfig {\n component: RendererComponent;\n Renderer?: RendererComponent; // 原始组件\n}\n\nexport interface RenderSchemaFilter {\n (schema: Schema, renderer: RendererConfig, props?: any): Schema;\n}\n\nexport interface wsObject {\n url: string;\n body?: any;\n}\n\nexport interface RenderOptions {\n session?: string;\n fetcher?: (config: fetcherConfig) => Promise<fetcherResult>;\n wsFetcher?: (\n ws: wsObject,\n onMessage: (data: any) => void,\n onError: (error: any) => void\n ) => void;\n isCancel?: (value: any) => boolean;\n notify?: (\n type: 'error' | 'success',\n msg: string,\n conf?: {\n closeButton?: boolean;\n timeout?: number;\n }\n ) => void;\n jumpTo?: (to: string, action?: Action, ctx?: object) => void;\n alert?: (msg: string) => void;\n confirm?: (msg: string, title?: string) => boolean | Promise<boolean>;\n rendererResolver?: (\n path: string,\n schema: Schema,\n props: any\n ) => null | RendererConfig;\n copy?: (contents: string, options?: any) => void;\n getModalContainer?: () => HTMLElement;\n loadRenderer?: (\n schema: Schema,\n path: string,\n reRender: Function\n ) => Promise<React.ReactType> | React.ReactType | JSX.Element | void;\n affixOffsetTop?: number;\n affixOffsetBottom?: number;\n richTextToken?: string;\n /**\n * 替换文本,用于实现 URL 替换、语言替换等\n */\n replaceText?: {[propName: string]: any};\n /**\n * 文本替换的黑名单,因为属性太多了所以改成黑名单的 fangs\n */\n replaceTextIgnoreKeys?: String[];\n /**\n * 过滤 html 标签,可用来添加 xss 保护逻辑\n */\n filterHtml?: (input: string) => string;\n [propName: string]: any;\n}\n\nexport interface fetcherConfig {\n url: string;\n method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp';\n data?: any;\n config?: any;\n}\n\nconst renderers: Array<RendererConfig> = [];\nconst rendererNames: Array<string> = [];\nconst schemaFilters: Array<RenderSchemaFilter> = [];\nlet anonymousIndex = 1;\n\nexport function addSchemaFilter(fn: RenderSchemaFilter) {\n schemaFilters.push(fn);\n}\n\nexport function filterSchema(\n schema: Schema,\n render: RendererConfig,\n props?: any\n) {\n return schemaFilters.reduce(\n (schema, filter) => filter(schema, render, props),\n schema\n ) as Schema;\n}\n\nexport function Renderer(config: RendererBasicConfig) {\n return function <T extends RendererComponent>(component: T): T {\n const renderer = registerRenderer({\n ...config,\n component: component\n });\n return renderer.component as T;\n };\n}\n\nexport function registerRenderer(config: RendererConfig): RendererConfig {\n if (!config.test && !config.type) {\n throw new TypeError('please set config.test or config.type');\n } else if (!config.component) {\n throw new TypeError('config.component is required');\n }\n\n if (typeof config.type === 'string' && config.type) {\n config.type = config.type.toLowerCase();\n config.test =\n config.test || new RegExp(`(^|\\/)${string2regExp(config.type)}$`, 'i');\n }\n\n config.weight = config.weight || 0;\n config.Renderer = config.component;\n config.name = config.name || config.type || `anonymous-${anonymousIndex++}`;\n\n if (~rendererNames.indexOf(config.name)) {\n throw new Error(\n `The renderer with name \"${config.name}\" has already exists, please try another name!`\n );\n }\n\n if (config.storeType && config.component) {\n config.component = HocStoreFactory({\n storeType: config.storeType,\n extendsData: config.storeExtendsData,\n shouldSyncSuperStore: config.shouldSyncSuperStore\n })(observer(config.component));\n }\n\n if (config.isolateScope) {\n config.component = Scoped(config.component);\n }\n\n const idx = findIndex(\n renderers,\n item => (config.weight as number) < item.weight\n );\n ~idx ? renderers.splice(idx, 0, config) : renderers.push(config);\n rendererNames.push(config.name);\n return config;\n}\n\nexport function unRegisterRenderer(config: RendererConfig | string) {\n let idx =\n typeof config === 'string'\n ? findIndex(renderers, item => item.name === config)\n : renderers.indexOf(config);\n ~idx && renderers.splice(idx, 1);\n\n let idx2 =\n typeof config === 'string'\n ? findIndex(rendererNames, item => item === config)\n : rendererNames.indexOf(config.name || '');\n ~idx2 && rendererNames.splice(idx2, 1);\n\n // 清空渲染器定位缓存\n cache = {};\n}\n\nexport function loadRenderer(schema: Schema, path: string) {\n return (\n <Alert level=\"danger\">\n <p>Error: 找不到对应的渲染器</p>\n <p>Path: {path}</p>\n <pre>\n <code>{JSON.stringify(schema, null, 2)}</code>\n </pre>\n </Alert>\n );\n}\n\nconst defaultOptions: RenderOptions = {\n session: 'global',\n affixOffsetTop: 0,\n affixOffsetBottom: 0,\n richTextToken: '',\n useMobileUI: true, // 是否启用移动端原生 UI\n loadRenderer,\n rendererEventListeners: [],\n fetcher() {\n return Promise.reject('fetcher is required');\n },\n // 使用 WebSocket 来实时获取数据\n wsFetcher(ws, onMessage, onError) {\n if (ws) {\n const socket = new WebSocket(ws.url);\n socket.onopen = event => {\n if (ws.body) {\n socket.send(JSON.stringify(ws.body));\n }\n };\n socket.onmessage = event => {\n if (event.data) {\n onMessage(JSON.parse(event.data));\n }\n };\n socket.onerror = onError;\n return {\n close: socket.close\n };\n } else {\n return {\n close: () => {}\n };\n }\n },\n isCancel() {\n console.error(\n 'Please implement isCancel. see https://baidu.gitee.io/amis/docs/start/getting-started#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97'\n );\n return false;\n },\n updateLocation() {\n console.error(\n 'Please implement updateLocation. see https://baidu.gitee.io/amis/docs/start/getting-started#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97'\n );\n },\n alert,\n confirm,\n notify: (type, msg, conf) =>\n toast[type] ? toast[type](msg, conf) : console.warn('[Notify]', type, msg),\n\n jumpTo: (to: string, action?: any) => {\n if (to === 'goBack') {\n return window.history.back();\n }\n to = normalizeLink(to);\n if (action && action.actionType === 'url') {\n action.blank === false ? (window.location.href = to) : window.open(to);\n return;\n }\n if (/^https?:\\/\\//.test(to)) {\n window.location.replace(to);\n } else {\n location.href = to;\n }\n },\n isCurrentUrl: (to: string) => {\n if (!to) {\n return false;\n }\n\n const link = normalizeLink(to);\n const location = window.location;\n let pathname = link;\n let search = '';\n const idx = link.indexOf('?');\n if (~idx) {\n pathname = link.substring(0, idx);\n search = link.substring(idx);\n }\n if (search) {\n if (pathname !== location.pathname || !location.search) {\n return false;\n }\n const query = qsparse(search.substring(1));\n const currentQuery = qsparse(location.search.substring(1));\n return Object.keys(query).every(key => query[key] === currentQuery[key]);\n } else if (pathname === location.pathname) {\n return true;\n }\n return false;\n },\n copy(contents: string) {\n console.error('copy contents', contents);\n },\n // 用于跟踪用户在界面中的各种操作\n tracker(eventTrack: EventTrack, props: PlainObject) {},\n // 返回解绑函数\n bindEvent(renderer: any) {\n if (!renderer) {\n return undefined;\n }\n const listeners: EventListeners = renderer.props.$schema.onEvent;\n if (listeners) {\n // 暂存\n for (let key of Object.keys(listeners)) {\n this.rendererEventListeners.push({\n renderer,\n type: key,\n weight: listeners[key].weight || 0,\n actions: listeners[key].actions\n });\n }\n\n return () => {\n this.rendererEventListeners = this.rendererEventListeners.filter(\n (item: RendererEventListener) => item.renderer !== renderer\n );\n };\n }\n\n return undefined;\n },\n async dispatchEvent(\n e: string | React.MouseEvent<any>,\n renderer: React.Component<RendererProps>,\n scoped: IScopedContext,\n data: any,\n broadcast?: RendererEvent<any>\n ) {\n const eventName = typeof e === 'string' ? e : e.type;\n if (!broadcast) {\n const eventConfig = renderer?.props?.onEvent?.[eventName];\n\n if (!eventConfig) {\n // 没命中也没关系\n return Promise.resolve(undefined);\n }\n }\n\n // 没有可处理的监听\n if (!this.rendererEventListeners.length) {\n return Promise.resolve();\n }\n\n // 如果是广播动作,就直接复用\n const rendererEvent =\n broadcast ||\n createRendererEvent(eventName, {\n env: this,\n nativeEvent: e,\n data,\n scoped\n });\n\n // 过滤&排序\n const listeners = this.rendererEventListeners\n .filter(\n (item: RendererEventListener) =>\n item.type === eventName &&\n (broadcast ? true : item.renderer === renderer)\n )\n .sort(\n (prev: RendererEventListener, next: RendererEventListener) =>\n next.weight - prev.weight\n );\n\n for (let listener of listeners) {\n await runActions(listener.actions, listener.renderer, rendererEvent);\n\n // 停止后续监听器执行\n if (rendererEvent.stoped) {\n break;\n }\n }\n\n return rendererEvent;\n },\n rendererResolver: resolveRenderer,\n replaceTextIgnoreKeys: [\n 'type',\n 'name',\n 'mode',\n 'target',\n 'reload',\n 'persistData'\n ],\n /**\n * 过滤 html 标签,可用来添加 xss 保护逻辑\n */\n filterHtml: (input: string) => input\n};\nlet stores: {\n [propName: string]: IRendererStore;\n} = {};\nexport function render(\n schema: Schema,\n props: RootRenderProps = {},\n options: RenderOptions = {},\n pathPrefix: string = ''\n): JSX.Element {\n let locale = props.locale || getDefaultLocale();\n // 兼容 locale 的不同写法\n locale = locale.replace('_', '-');\n locale = locale === 'en' ? 'en-US' : locale;\n locale = locale === 'zh' ? 'zh-CN' : locale;\n locale = locale === 'cn' ? 'zh-CN' : locale;\n const translate = props.translate || makeTranslator(locale);\n let store = stores[options.session || 'global'];\n\n // 根据环境覆盖 schema,这个要在最前面做,不然就无法覆盖 validations\n envOverwrite(schema, locale);\n\n if (!store) {\n options = {\n ...defaultOptions,\n ...options,\n fetcher: options.fetcher\n ? wrapFetcher(options.fetcher, options.tracker)\n : defaultOptions.fetcher,\n confirm: promisify(\n options.confirm || defaultOptions.confirm || window.confirm\n ),\n locale,\n translate\n } as any;\n\n store = RendererStore.create({}, options);\n stores[options.session || 'global'] = store;\n }\n\n (window as any).amisStore = store; // 为了方便 debug.\n const env = getEnv(store);\n\n let theme = props.theme || options.theme || 'cxd';\n if (theme === 'default') {\n theme = 'cxd';\n }\n env.theme = getTheme(theme);\n\n if (props.locale !== undefined) {\n env.translate = translate;\n env.locale = locale;\n }\n\n // 默认将开启移动端原生 UI\n if (typeof options.useMobileUI) {\n props.useMobileUI = true;\n }\n\n // 进行文本替换\n if (env.replaceText && isObject(env.replaceText)) {\n const replaceKeys = Object.keys(env.replaceText);\n replaceKeys.sort((a, b) => b.length - a.length); // 避免用户将短的放前面\n const replaceTextIgnoreKeys = new Set(env.replaceTextIgnoreKeys || []);\n JSONTraverse(schema, (value: any, key: string, object: any) => {\n if (typeof value === 'string' && !replaceTextIgnoreKeys.has(key)) {\n for (const replaceKey of replaceKeys) {\n if (~value.indexOf(replaceKey)) {\n value = object[key] = value.replaceAll(\n replaceKey,\n env.replaceText[replaceKey]\n );\n }\n }\n }\n });\n }\n\n return (\n <EnvContext.Provider value={env}>\n <ScopedRootRenderer\n {...props}\n schema={schema}\n pathPrefix={pathPrefix}\n rootStore={store}\n env={env}\n theme={theme}\n locale={locale}\n translate={translate}\n />\n </EnvContext.Provider>\n );\n}\n\n// 默认 env 会被缓存,所以新传入的 env 不会替换旧的。\n// 除非先删了旧的,新的才会生效。\nexport function clearStoresCache(\n sessions: Array<string> | string = Object.keys(stores)\n) {\n if (!Array.isArray(sessions)) {\n sessions = [sessions];\n }\n\n sessions.forEach(key => {\n const store = stores[key];\n\n // @ts-ignore\n delete stores[key];\n\n store && destroy(store);\n });\n}\n\n// 当然也可以直接这样更新。\n// 主要是有时候第一次创建的时候并没有准备多少接口,\n// 可以后续补充点,比如 amis 自己实现的,prompt 里面的表单。\nexport function updateEnv(options: Partial<RenderOptions>, session = 'global') {\n options = {\n ...options\n };\n\n if (options.fetcher) {\n options.fetcher = wrapFetcher(options.fetcher, options.tracker) as any;\n }\n\n if (options.confirm) {\n options.confirm = promisify(options.confirm);\n }\n\n let store = stores[options.session || session];\n if (!store) {\n store = RendererStore.create({}, options);\n stores[options.session || session] = store;\n } else {\n const env = getEnv(store);\n Object.assign(env, options);\n }\n}\n\nlet cache: {[propName: string]: RendererConfig} = {};\nexport function resolveRenderer(\n path: string,\n schema?: Schema\n): null | RendererConfig {\n const type = typeof schema?.type == 'string' ? schema.type.toLowerCase() : '';\n\n if (type && cache[type]) {\n return cache[type];\n } else if (cache[path]) {\n return cache[path];\n } else if (path && path.length > 1024) {\n throw new Error('Path太长是不是死循环了?');\n }\n\n let renderer: null | RendererConfig = null;\n\n renderers.some(item => {\n let matched = false;\n\n // 直接匹配类型,后续注册渲染都应该用这个方式而不是之前的判断路径。\n if (item.type && type) {\n matched = item.type === type;\n\n // 如果是type来命中的,那么cache的key直接用 type 即可。\n if (matched) {\n cache[type] = item;\n }\n } else if (typeof item.test === 'function') {\n // 不应该搞得这么复杂的,让每个渲染器唯一 id,自己不晕别人用起来也不晕。\n matched = item.test(path, schema, resolveRenderer);\n } else if (item.test instanceof RegExp) {\n matched = item.test.test(path);\n }\n\n if (matched) {\n renderer = item;\n }\n\n return matched;\n });\n\n // 只能缓存纯正则表达式的后者方法中没有用到第二个参数的,\n // 因为自定义 test 函数的有可能依赖 schema 的结果\n if (\n renderer !== null &&\n ((renderer as RendererConfig).type ||\n (renderer as RendererConfig).test instanceof RegExp ||\n (typeof (renderer as RendererConfig).test === 'function' &&\n ((renderer as RendererConfig).test as Function).length < 2))\n ) {\n cache[path] = renderer;\n }\n\n return renderer;\n}\n\nexport function getRenderers() {\n return renderers.concat();\n}\n\nexport function getRendererByName(name: string) {\n return find(renderers, item => item.name === name);\n}\n\nsetRenderSchemaFn((controls, value, callback, scopeRef, theme) => {\n return render(\n {\n name: 'form',\n type: 'form',\n wrapWithPanel: false,\n mode: 'horizontal',\n controls,\n messages: {\n validateFailed: ''\n }\n },\n {\n data: value,\n onFinished: callback,\n scopeRef,\n theme\n },\n {\n session: 'prompt'\n }\n );\n});\n\nexport {RendererEnv};\n"
12
12
  ]
13
13
  }
package/lib/index.js CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerLocale = exports.setDefaultLocale = exports.getDefaultLocale = exports.classnames = exports.getClassPrefix = exports.classPrefix = exports.getTheme = exports.theme = exports.setDefaultTheme = exports.validateObject = exports.validate = exports.ScopedContext = exports.Scoped = exports.registerIcon = exports.Icon = exports.setIconVendor = exports.resolveVariableAndFilter = exports.resolveVariable = exports.relativeValueRe = exports.filterDate = exports.filterSchema = exports.resolveRenderer = exports.registerOptionsControl = exports.registerFormItem = exports.getRenderers = exports.unRegisterRenderer = exports.registerRenderer = exports.getRendererByName = exports.normalizeOptions = exports.str2rules = exports.addRule = exports.setCustomEvalExpression = exports.setCustomEvalJs = exports.evalJS = exports.evalExpression = exports.registerTplEnginer = exports.registerFilter = exports.resizeSensor = exports.utils = exports.filter = exports.buildApi = exports.wrapFetcher = exports.OptionsControl = exports.FormItemWrap = exports.FormItem = exports.RegisterStore = exports.Renderer = exports.updateEnv = exports.clearStoresCache = exports.render = void 0;
4
4
  exports.animation = exports.makeTranslator = void 0;
5
5
  var tslib_1 = require("tslib");
6
- /** @license amis v1.8.0-beta.0
6
+ /** @license amis v1.8.0-beta.1
7
7
  *
8
8
  * Copyright Baidu
9
9
  *
@@ -56,6 +56,10 @@ export interface DialogSchema extends BaseSchema {
56
56
  * 是否显示错误信息
57
57
  */
58
58
  showErrorMsg?: boolean;
59
+ /**
60
+ * 是否显示 spinner
61
+ */
62
+ showLoading?: boolean;
59
63
  }
60
64
  export declare type DialogSchemaBase = Omit<DialogSchema, 'type'>;
61
65
  export interface DialogProps extends RendererProps, Omit<DialogSchema, 'className'> {
@@ -243,10 +243,11 @@ var Dialog = /** @class */ (function (_super) {
243
243
  if (!actions || !actions.length) {
244
244
  return null;
245
245
  }
246
- var _a = this.props, store = _a.store, render = _a.render, cx = _a.classnames, showErrorMsg = _a.showErrorMsg;
246
+ var _a = this.props, store = _a.store, render = _a.render, cx = _a.classnames, showErrorMsg = _a.showErrorMsg, showLoading = _a.showLoading;
247
247
  return (react_1.default.createElement("div", { className: cx('Modal-footer') },
248
- store.loading || store.error ? (react_1.default.createElement("div", { className: cx('Dialog-info'), key: "info" },
249
- react_1.default.createElement(components_1.Spinner, { size: "sm", key: "info", show: store.loading }),
248
+ (showLoading !== false && store.loading) ||
249
+ (showErrorMsg !== false && store.error) ? (react_1.default.createElement("div", { className: cx('Dialog-info'), key: "info" },
250
+ showLoading !== false ? (react_1.default.createElement(components_1.Spinner, { size: "sm", key: "info", show: store.loading })) : null,
250
251
  store.error && showErrorMsg !== false ? (react_1.default.createElement("span", { className: cx('Dialog-error') }, store.msg)) : null)) : null,
251
252
  actions.map(function (action, key) {
252
253
  return render("action/".concat(key), action, {
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Dialog.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport {Renderer, RendererProps} from '../factory';\nimport {SchemaNode, Schema, Action} from '../types';\nimport {filter} from '../utils/tpl';\nimport Modal from '../components/Modal';\nimport findLast from 'lodash/findLast';\nimport {\n guid,\n isVisible,\n autobind,\n isObjectShallowModified\n} from '../utils/helper';\nimport {reaction} from 'mobx';\nimport {Icon} from '../components/icons';\nimport {ModalStore, IModalStore} from '../store/modal';\nimport {findDOMNode} from 'react-dom';\nimport {Spinner} from '../components';\nimport {IServiceStore} from '../store/service';\nimport {\n BaseSchema,\n SchemaClassName,\n SchemaCollection,\n SchemaName,\n SchemaTpl\n} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {isAlive} from 'mobx-state-tree';\n\n/**\n * Dialog 弹框渲染器。\n * 文档:https://baidu.gitee.io/amis/docs/components/dialog\n */\nexport interface DialogSchema extends BaseSchema {\n type: 'dialog';\n\n /**\n * 默认不用填写,自动会创建确认和取消按钮。\n */\n actions?: Array<ActionSchema>;\n\n /**\n * 内容区域\n */\n body?: SchemaCollection;\n\n /**\n * 配置 Body 容器 className\n */\n bodyClassName?: SchemaClassName;\n\n /**\n * 是否支持按 ESC 关闭 Dialog\n */\n closeOnEsc?: boolean;\n\n /**\n * 是否支持点其它区域关闭 Dialog\n */\n closeOnOutside?: boolean;\n\n name?: SchemaName;\n\n /**\n * Dialog 大小\n */\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * 请通过配置 title 设置标题\n */\n title?: SchemaCollection;\n\n header?: SchemaCollection;\n headerClassName?: SchemaClassName;\n\n footer?: SchemaCollection;\n\n /**\n * 影响自动生成的按钮,如果自己配置了按钮这个配置无效。\n */\n confirm?: boolean;\n\n /**\n * 是否显示关闭按钮\n */\n showCloseButton?: boolean;\n\n /**\n * 是否显示错误信息\n */\n showErrorMsg?: boolean;\n}\n\nexport type DialogSchemaBase = Omit<DialogSchema, 'type'>;\n\nexport interface DialogProps\n extends RendererProps,\n Omit<DialogSchema, 'className'> {\n onClose: (confirmed?: boolean) => void;\n onConfirm: (\n values: Array<object>,\n action: Action,\n ctx: object,\n targets: Array<any>\n ) => void;\n children?: React.ReactNode | ((props?: any) => React.ReactNode);\n store: IModalStore;\n show?: boolean;\n lazyRender?: boolean;\n lazySchema?: (props: DialogProps) => SchemaCollection;\n wrapperComponent: React.ElementType;\n}\n\nexport default class Dialog extends React.Component<DialogProps> {\n static propsList: Array<string> = [\n 'title',\n 'size',\n 'closeOnEsc',\n 'closeOnOutside',\n 'children',\n 'bodyClassName',\n 'headerClassName',\n 'confirm',\n 'onClose',\n 'onConfirm',\n 'show',\n 'body',\n 'showCloseButton',\n 'showErrorMsg',\n 'actions',\n 'popOverContainer'\n ];\n static defaultProps = {\n title: '弹框',\n bodyClassName: '',\n confirm: true,\n show: true,\n lazyRender: false,\n showCloseButton: true,\n wrapperComponent: Modal,\n closeOnEsc: false,\n closeOnOutside: false,\n showErrorMsg: true\n };\n\n reaction: any;\n isDead = false;\n $$id: string = guid();\n constructor(props: DialogProps) {\n super(props);\n\n props.store.setEntered(!!props.show);\n this.handleSelfClose = this.handleSelfClose.bind(this);\n this.handleAction = this.handleAction.bind(this);\n this.handleDialogConfirm = this.handleDialogConfirm.bind(this);\n this.handleDialogClose = this.handleDialogClose.bind(this);\n this.handleDrawerConfirm = this.handleDrawerConfirm.bind(this);\n this.handleDrawerClose = this.handleDrawerClose.bind(this);\n this.handleEntered = this.handleEntered.bind(this);\n this.handleExited = this.handleExited.bind(this);\n this.handleFormInit = this.handleFormInit.bind(this);\n this.handleFormSaved = this.handleFormSaved.bind(this);\n this.handleFormChange = this.handleFormChange.bind(this);\n this.handleChildFinished = this.handleChildFinished.bind(this);\n\n const store = props.store;\n this.reaction = reaction(\n () => `${store.loading}${store.error}`,\n () => this.forceUpdate()\n );\n }\n\n // shouldComponentUpdate(nextProps:DialogProps, nextState:DialogState) {\n // const props = this.props;\n\n // if (this.state.entered !== nextState.entered) {\n // return true;\n // } else if (props.show === nextProps.show && !nextProps.show) {\n // return false;\n // }\n\n // return isObjectShallowModified(this.props, nextProps);\n // }\n\n componentWillUnmount() {\n this.reaction && this.reaction();\n this.isDead = true;\n }\n\n buildActions(): Array<ActionSchema> {\n const {actions, confirm, translate: __} = this.props;\n\n if (typeof actions !== 'undefined') {\n return actions;\n }\n\n let ret: Array<ActionSchema> = [];\n ret.push({\n type: 'button',\n actionType: 'cancel',\n label: __('cancel')\n });\n\n if (confirm) {\n ret.push({\n type: 'button',\n actionType: 'confirm',\n label: __('confirm'),\n primary: true\n });\n }\n\n return ret;\n }\n\n handleSelfClose(e?: any, confirmed?: boolean) {\n const {onClose, store} = this.props;\n\n // clear error\n store.updateMessage();\n onClose(confirmed);\n }\n\n handleAction(e: React.UIEvent<any>, action: Action, data: object) {\n const {store, onAction} = this.props;\n\n if (action.type === 'reset') {\n store.reset();\n } else if (action.actionType === 'cancel') {\n this.handleSelfClose();\n } else if (onAction) {\n onAction(e, action, data);\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\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\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDialog(true);\n }\n\n handleDialogClose(...args: Array<any>) {\n const {store} = this.props;\n\n const action = store.action as Action;\n const dialog = action.dialog as any;\n\n if (dialog.onClose && dialog.onClose(...args) === false) {\n return;\n }\n\n store.closeDialog(args[1]);\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const drawer = store.action.drawer as any;\n\n if (\n drawer &&\n drawer.onConfirm &&\n drawer.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleDrawerClose(...args: Array<any>) {\n const {store} = this.props;\n\n const action = store.action as Action;\n const drawer = action.drawer as any;\n\n if (drawer.onClose && drawer.onClose(...args) === false) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleEntered() {\n const {lazySchema, store} = this.props;\n\n store.setEntered(true);\n if (typeof lazySchema === 'function') {\n store.setSchema(lazySchema(this.props));\n }\n\n const activeElem = document.activeElement as HTMLElement;\n if (activeElem) {\n const dom = findDOMNode(this) as HTMLElement;\n dom && !dom.contains(activeElem) && activeElem.blur();\n }\n }\n\n handleExited() {\n const {lazySchema, store} = this.props;\n if (isAlive(store)) {\n store.reset();\n store.setEntered(false);\n if (typeof lazySchema === 'function') {\n store.setSchema('');\n }\n }\n }\n\n handleFormInit(data: any) {\n const {store} = this.props;\n\n store.setFormData(data);\n }\n\n handleFormChange(data: any, name?: string) {\n const {store} = this.props;\n\n // 如果 dialog 里面不放 form,而是直接放表单项就会进到这里来。\n if (typeof name === 'string') {\n data = {\n [name]: data\n };\n }\n\n store.setFormData(data);\n }\n\n handleFormSaved(data: any, response: any) {\n const {store} = this.props;\n\n store.setFormData({\n ...data,\n ...response\n });\n }\n\n handleChildFinished(value: any, action: Action) {\n // 下面会覆盖\n }\n\n openFeedback(dialog: any, ctx: any) {\n return new Promise(resolve => {\n const {store} = this.props;\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 @autobind\n getPopOverContainer() {\n return (findDOMNode(this) as HTMLElement).querySelector(\n `.${this.props.classPrefix}Modal-content`\n );\n }\n\n renderBody(body: SchemaNode, key?: any): React.ReactNode {\n let {render, store} = this.props;\n\n if (Array.isArray(body)) {\n return body.map((body, key) => this.renderBody(body, key));\n }\n\n let subProps: any = {\n key,\n disabled: (body && (body as any).disabled) || store.loading,\n onAction: this.handleAction,\n onFinished: this.handleChildFinished,\n popOverContainer: this.getPopOverContainer,\n affixOffsetTop: 0,\n onChange: this.handleFormChange,\n onInit: this.handleFormInit,\n onSaved: this.handleFormSaved,\n syncLocation: false // 弹框中的 crud 一般不需要同步地址栏\n };\n\n if (!(body as Schema).type) {\n return render(`body${key ? `/${key}` : ''}`, body, subProps);\n }\n\n let schema: Schema = body as Schema;\n\n if (schema.type === 'form') {\n schema = {\n mode: 'horizontal',\n wrapWithPanel: false,\n submitText: null,\n ...schema\n };\n }\n\n return render(`body${key ? `/${key}` : ''}`, schema, subProps);\n }\n\n renderFooter() {\n const actions = this.buildActions();\n\n if (!actions || !actions.length) {\n return null;\n }\n\n const {store, render, classnames: cx, showErrorMsg} = this.props;\n\n return (\n <div className={cx('Modal-footer')}>\n {store.loading || store.error ? (\n <div className={cx('Dialog-info')} key=\"info\">\n <Spinner size=\"sm\" key=\"info\" show={store.loading} />\n {store.error && showErrorMsg !== false ? (\n <span className={cx('Dialog-error')}>{store.msg}</span>\n ) : null}\n </div>\n ) : null}\n {actions.map((action, key) =>\n render(`action/${key}`, action, {\n data: store.formData,\n onAction: this.handleAction,\n key,\n disabled: action.disabled || store.loading\n })\n )}\n </div>\n );\n }\n\n render() {\n const store = this.props.store;\n const {\n className,\n size,\n closeOnEsc,\n closeOnOutside,\n title,\n render,\n header,\n body,\n bodyClassName,\n headerClassName,\n show,\n lazyRender,\n lazySchema,\n wrapperComponent,\n showCloseButton,\n env,\n classnames: cx,\n classPrefix,\n translate: __\n } = {\n ...this.props,\n ...store.schema\n } as any;\n\n const Wrapper = wrapperComponent || Modal;\n return (\n <Wrapper\n classPrefix={classPrefix}\n className={cx(className)}\n size={size}\n backdrop=\"static\"\n onHide={this.handleSelfClose}\n keyboard={closeOnEsc && !store.loading}\n closeOnEsc={closeOnEsc}\n closeOnOutside={!store.dialogOpen && closeOnOutside}\n show={show}\n onEntered={this.handleEntered}\n onExited={this.handleExited}\n container={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n enforceFocus={false}\n disabled={store.loading}\n >\n {title && typeof title === 'string' ? (\n <div className={cx('Modal-header', headerClassName)}>\n {showCloseButton !== false && !store.loading ? (\n <a\n data-tooltip={__('Dialog.close')}\n data-position=\"left\"\n onClick={this.handleSelfClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n <div className={cx('Modal-title')}>\n {filter(__(title), store.formData)}\n </div>\n </div>\n ) : title ? (\n <div className={cx('Modal-header', headerClassName)}>\n {showCloseButton !== false && !store.loading ? (\n <a\n data-tooltip={__('Dialog.close')}\n onClick={this.handleSelfClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n {render('title', title, {\n data: store.formData\n })}\n </div>\n ) : showCloseButton !== false && !store.loading ? (\n <a\n data-tooltip={__('Dialog.close')}\n onClick={this.handleSelfClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n {header\n ? render('header', header, {\n data: store.formData\n })\n : null}\n\n {(!store.entered && lazyRender) || (lazySchema && !body) ? (\n <div className={cx('Modal-body', bodyClassName)}>\n <Spinner overlay show size=\"lg\" />\n </div>\n ) : body ? (\n <div className={cx('Modal-body', bodyClassName)}>\n {this.renderBody(body, 'body')}\n </div>\n ) : null}\n\n {this.renderFooter()}\n\n {body\n ? render(\n 'drawer',\n {\n // 支持嵌套\n ...((store.action as Action) &&\n ((store.action as Action).drawer as object)),\n type: 'drawer'\n },\n {\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 : null}\n\n {body\n ? render(\n 'dialog',\n {\n // 支持嵌套\n ...((store.action as Action) &&\n ((store.action as Action).dialog as object)),\n type: 'dialog'\n },\n {\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 : null}\n </Wrapper>\n );\n }\n}\n\n@Renderer({\n type: 'dialog',\n storeType: ModalStore.name,\n storeExtendsData: false,\n isolateScope: true,\n shouldSyncSuperStore: (store: IServiceStore, props: any, prevProps: any) =>\n !!(\n (store.dialogOpen || props.show) &&\n (props.show !== prevProps.show ||\n isObjectShallowModified(prevProps.data, props.data))\n )\n})\nexport class DialogRenderer extends Dialog {\n static contextType = ScopedContext;\n\n constructor(props: DialogProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n super.componentWillUnmount();\n }\n\n tryChildrenToHandle(action: Action, ctx: object, rawAction?: Action) {\n const scoped = this.context as IScopedContext;\n\n const targets: Array<any> = [];\n const {onConfirm, store} = this.props;\n\n if (action.target) {\n targets.push(\n ...action.target\n .split(',')\n .map(name => scoped.getComponentByName(name))\n .filter(item => item && item.doAction)\n );\n }\n\n if (!targets.length) {\n let components = scoped\n .getComponents()\n .filter(item => !~['drawer', 'dialog'].indexOf(item.props.type));\n\n const pool = components.concat();\n\n while (pool.length) {\n const item = pool.pop()!;\n\n if (~['crud', 'form', 'wizard'].indexOf(item.props.type)) {\n targets.push(item);\n break;\n } else if (~['drawer', 'dialog'].indexOf(item.props.type)) {\n continue;\n } else if (~['page', 'service'].indexOf(item.props.type)) {\n pool.unshift.apply(pool, item.context.getComponents());\n }\n }\n }\n\n if (targets.length) {\n store.markBusying(true);\n store.updateMessage();\n\n Promise.all(\n targets.map(target =>\n target.doAction(\n {\n ...action,\n from: this.$$id\n },\n ctx,\n true\n )\n )\n )\n .then(values => {\n if (\n (action.type === 'submit' ||\n action.actionType === 'submit' ||\n action.actionType === 'confirm') &&\n action.close !== false\n ) {\n onConfirm && onConfirm(values, rawAction || action, ctx, targets);\n } else if (action.close) {\n action.close === true\n ? this.handleSelfClose()\n : this.closeTarget(action.close);\n }\n store.markBusying(false);\n })\n .catch(reason => {\n if (this.isDead) {\n return;\n }\n store.updateMessage(reason.message, true);\n store.markBusying(false);\n });\n\n return true;\n }\n\n return false;\n }\n\n handleAction(\n e: React.UIEvent<any>,\n action: Action,\n data: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ) {\n const {onAction, store, onConfirm, env} = this.props;\n\n if (action.from === this.$$id) {\n return onAction\n ? onAction(e, action, data, throwErrors, delegate || this.context)\n : false;\n }\n\n const scoped = this.context as IScopedContext;\n\n if (action.type === 'reset') {\n store.setCurrentAction(action);\n store.reset();\n } else if (\n action.actionType === 'close' ||\n action.actionType === 'cancel'\n ) {\n store.setCurrentAction(action);\n this.handleSelfClose();\n action.close && this.closeTarget(action.close);\n } else if (action.actionType === 'confirm') {\n store.setCurrentAction(action);\n this.tryChildrenToHandle(\n {\n ...action,\n actionType: 'submit'\n },\n data,\n action\n ) || this.handleSelfClose(undefined, true);\n } else if (action.actionType === 'next' || action.actionType === 'prev') {\n store.setCurrentAction(action);\n if (action.type === 'submit') {\n this.tryChildrenToHandle(\n {\n ...action,\n actionType: 'submit',\n close: true\n },\n data,\n action\n ) || this.handleSelfClose(undefined, true);\n } else {\n onConfirm([data], action, data, []);\n }\n } else if (action.actionType === 'dialog') {\n store.setCurrentAction(action);\n store.openDialog(data);\n } else if (action.actionType === 'drawer') {\n store.setCurrentAction(action);\n store.openDrawer(data);\n } else if (action.actionType === 'reload') {\n store.setCurrentAction(action);\n action.target && scoped.reload(action.target, data);\n if (action.close || action.type === 'submit') {\n this.handleSelfClose(undefined, action.type === 'submit');\n this.closeTarget(action.close);\n }\n } else if (this.tryChildrenToHandle(action, data)) {\n // do nothing\n } else if (action.actionType === 'ajax') {\n store.setCurrentAction(action);\n store\n .saveRemote(action.api as string, data, {\n successMessage: action.messages && action.messages.success,\n errorMessage: action.messages && action.messages.failed\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 reidrect =\n action.redirect && filter(action.redirect, store.data);\n reidrect && env.jumpTo(reidrect, action);\n action.reload && this.reloadTarget(action.reload, store.data);\n if (action.close) {\n this.handleSelfClose();\n this.closeTarget(action.close);\n }\n })\n .catch(() => {});\n } else if (onAction) {\n let ret = onAction(\n e,\n {\n ...action,\n close: false\n },\n data,\n throwErrors,\n delegate || this.context\n );\n action.close &&\n (ret && ret.then\n ? ret.then(this.handleSelfClose)\n : setTimeout(this.handleSelfClose, 200));\n }\n }\n\n handleChildFinished(value: any, action: Action) {\n if ((action && action.from === this.$$id) || action.close === false) {\n return;\n }\n\n const scoped = this.context as IScopedContext;\n const components = scoped\n .getComponents()\n .filter((item: any) => !~['drawer', 'dialog'].indexOf(item.props.type));\n const onConfirm = this.props.onConfirm;\n const onClose = this.props.onClose;\n\n if (\n components.length === 1 &&\n (components[0].props.type === 'form' ||\n components[0].props.type === 'wizard') &&\n (action.close === true ||\n components[0].props.closeDialogOnSubmit !== false)\n ) {\n onConfirm && onConfirm([value], action, {}, components);\n } else if (action.close === true) {\n onClose();\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDialogConfirm(values, action, ...rest);\n const scoped = this.context as IScopedContext;\n const store = this.props.store;\n const dialogAction = store.action as Action;\n const reload = action.reload ?? dialogAction.reload;\n\n if (reload) {\n scoped.reload(reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDrawerConfirm(values, action);\n const scoped = this.context as IScopedContext;\n const store = this.props.store;\n const drawerAction = store.action as Action;\n\n // 稍等会,等动画结束。\n setTimeout(() => {\n if (drawerAction.reload) {\n scoped.reload(drawerAction.reload, store.data);\n } else if (action.reload) {\n scoped.reload(action.reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }, 300);\n }\n\n reloadTarget(target: string, data?: any) {\n const scoped = this.context as IScopedContext;\n scoped.reload(target, data);\n }\n\n closeTarget(target: string) {\n const scoped = this.context as IScopedContext;\n scoped.close(target);\n }\n}\n"
11
+ "import React from 'react';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport {Renderer, RendererProps} from '../factory';\nimport {SchemaNode, Schema, Action} from '../types';\nimport {filter} from '../utils/tpl';\nimport Modal from '../components/Modal';\nimport findLast from 'lodash/findLast';\nimport {\n guid,\n isVisible,\n autobind,\n isObjectShallowModified\n} from '../utils/helper';\nimport {reaction} from 'mobx';\nimport {Icon} from '../components/icons';\nimport {ModalStore, IModalStore} from '../store/modal';\nimport {findDOMNode} from 'react-dom';\nimport {Spinner} from '../components';\nimport {IServiceStore} from '../store/service';\nimport {\n BaseSchema,\n SchemaClassName,\n SchemaCollection,\n SchemaName,\n SchemaTpl\n} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {isAlive} from 'mobx-state-tree';\n\n/**\n * Dialog 弹框渲染器。\n * 文档:https://baidu.gitee.io/amis/docs/components/dialog\n */\nexport interface DialogSchema extends BaseSchema {\n type: 'dialog';\n\n /**\n * 默认不用填写,自动会创建确认和取消按钮。\n */\n actions?: Array<ActionSchema>;\n\n /**\n * 内容区域\n */\n body?: SchemaCollection;\n\n /**\n * 配置 Body 容器 className\n */\n bodyClassName?: SchemaClassName;\n\n /**\n * 是否支持按 ESC 关闭 Dialog\n */\n closeOnEsc?: boolean;\n\n /**\n * 是否支持点其它区域关闭 Dialog\n */\n closeOnOutside?: boolean;\n\n name?: SchemaName;\n\n /**\n * Dialog 大小\n */\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * 请通过配置 title 设置标题\n */\n title?: SchemaCollection;\n\n header?: SchemaCollection;\n headerClassName?: SchemaClassName;\n\n footer?: SchemaCollection;\n\n /**\n * 影响自动生成的按钮,如果自己配置了按钮这个配置无效。\n */\n confirm?: boolean;\n\n /**\n * 是否显示关闭按钮\n */\n showCloseButton?: boolean;\n\n /**\n * 是否显示错误信息\n */\n showErrorMsg?: boolean;\n\n /**\n * 是否显示 spinner\n */\n showLoading?: boolean;\n}\n\nexport type DialogSchemaBase = Omit<DialogSchema, 'type'>;\n\nexport interface DialogProps\n extends RendererProps,\n Omit<DialogSchema, 'className'> {\n onClose: (confirmed?: boolean) => void;\n onConfirm: (\n values: Array<object>,\n action: Action,\n ctx: object,\n targets: Array<any>\n ) => void;\n children?: React.ReactNode | ((props?: any) => React.ReactNode);\n store: IModalStore;\n show?: boolean;\n lazyRender?: boolean;\n lazySchema?: (props: DialogProps) => SchemaCollection;\n wrapperComponent: React.ElementType;\n}\n\nexport default class Dialog extends React.Component<DialogProps> {\n static propsList: Array<string> = [\n 'title',\n 'size',\n 'closeOnEsc',\n 'closeOnOutside',\n 'children',\n 'bodyClassName',\n 'headerClassName',\n 'confirm',\n 'onClose',\n 'onConfirm',\n 'show',\n 'body',\n 'showCloseButton',\n 'showErrorMsg',\n 'actions',\n 'popOverContainer'\n ];\n static defaultProps = {\n title: '弹框',\n bodyClassName: '',\n confirm: true,\n show: true,\n lazyRender: false,\n showCloseButton: true,\n wrapperComponent: Modal,\n closeOnEsc: false,\n closeOnOutside: false,\n showErrorMsg: true\n };\n\n reaction: any;\n isDead = false;\n $$id: string = guid();\n constructor(props: DialogProps) {\n super(props);\n\n props.store.setEntered(!!props.show);\n this.handleSelfClose = this.handleSelfClose.bind(this);\n this.handleAction = this.handleAction.bind(this);\n this.handleDialogConfirm = this.handleDialogConfirm.bind(this);\n this.handleDialogClose = this.handleDialogClose.bind(this);\n this.handleDrawerConfirm = this.handleDrawerConfirm.bind(this);\n this.handleDrawerClose = this.handleDrawerClose.bind(this);\n this.handleEntered = this.handleEntered.bind(this);\n this.handleExited = this.handleExited.bind(this);\n this.handleFormInit = this.handleFormInit.bind(this);\n this.handleFormSaved = this.handleFormSaved.bind(this);\n this.handleFormChange = this.handleFormChange.bind(this);\n this.handleChildFinished = this.handleChildFinished.bind(this);\n\n const store = props.store;\n this.reaction = reaction(\n () => `${store.loading}${store.error}`,\n () => this.forceUpdate()\n );\n }\n\n // shouldComponentUpdate(nextProps:DialogProps, nextState:DialogState) {\n // const props = this.props;\n\n // if (this.state.entered !== nextState.entered) {\n // return true;\n // } else if (props.show === nextProps.show && !nextProps.show) {\n // return false;\n // }\n\n // return isObjectShallowModified(this.props, nextProps);\n // }\n\n componentWillUnmount() {\n this.reaction && this.reaction();\n this.isDead = true;\n }\n\n buildActions(): Array<ActionSchema> {\n const {actions, confirm, translate: __} = this.props;\n\n if (typeof actions !== 'undefined') {\n return actions;\n }\n\n let ret: Array<ActionSchema> = [];\n ret.push({\n type: 'button',\n actionType: 'cancel',\n label: __('cancel')\n });\n\n if (confirm) {\n ret.push({\n type: 'button',\n actionType: 'confirm',\n label: __('confirm'),\n primary: true\n });\n }\n\n return ret;\n }\n\n handleSelfClose(e?: any, confirmed?: boolean) {\n const {onClose, store} = this.props;\n\n // clear error\n store.updateMessage();\n onClose(confirmed);\n }\n\n handleAction(e: React.UIEvent<any>, action: Action, data: object) {\n const {store, onAction} = this.props;\n\n if (action.type === 'reset') {\n store.reset();\n } else if (action.actionType === 'cancel') {\n this.handleSelfClose();\n } else if (onAction) {\n onAction(e, action, data);\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\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\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDialog(true);\n }\n\n handleDialogClose(...args: Array<any>) {\n const {store} = this.props;\n\n const action = store.action as Action;\n const dialog = action.dialog as any;\n\n if (dialog.onClose && dialog.onClose(...args) === false) {\n return;\n }\n\n store.closeDialog(args[1]);\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const drawer = store.action.drawer as any;\n\n if (\n drawer &&\n drawer.onConfirm &&\n drawer.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleDrawerClose(...args: Array<any>) {\n const {store} = this.props;\n\n const action = store.action as Action;\n const drawer = action.drawer as any;\n\n if (drawer.onClose && drawer.onClose(...args) === false) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleEntered() {\n const {lazySchema, store} = this.props;\n\n store.setEntered(true);\n if (typeof lazySchema === 'function') {\n store.setSchema(lazySchema(this.props));\n }\n\n const activeElem = document.activeElement as HTMLElement;\n if (activeElem) {\n const dom = findDOMNode(this) as HTMLElement;\n dom && !dom.contains(activeElem) && activeElem.blur();\n }\n }\n\n handleExited() {\n const {lazySchema, store} = this.props;\n if (isAlive(store)) {\n store.reset();\n store.setEntered(false);\n if (typeof lazySchema === 'function') {\n store.setSchema('');\n }\n }\n }\n\n handleFormInit(data: any) {\n const {store} = this.props;\n\n store.setFormData(data);\n }\n\n handleFormChange(data: any, name?: string) {\n const {store} = this.props;\n\n // 如果 dialog 里面不放 form,而是直接放表单项就会进到这里来。\n if (typeof name === 'string') {\n data = {\n [name]: data\n };\n }\n\n store.setFormData(data);\n }\n\n handleFormSaved(data: any, response: any) {\n const {store} = this.props;\n\n store.setFormData({\n ...data,\n ...response\n });\n }\n\n handleChildFinished(value: any, action: Action) {\n // 下面会覆盖\n }\n\n openFeedback(dialog: any, ctx: any) {\n return new Promise(resolve => {\n const {store} = this.props;\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 @autobind\n getPopOverContainer() {\n return (findDOMNode(this) as HTMLElement).querySelector(\n `.${this.props.classPrefix}Modal-content`\n );\n }\n\n renderBody(body: SchemaNode, key?: any): React.ReactNode {\n let {render, store} = this.props;\n\n if (Array.isArray(body)) {\n return body.map((body, key) => this.renderBody(body, key));\n }\n\n let subProps: any = {\n key,\n disabled: (body && (body as any).disabled) || store.loading,\n onAction: this.handleAction,\n onFinished: this.handleChildFinished,\n popOverContainer: this.getPopOverContainer,\n affixOffsetTop: 0,\n onChange: this.handleFormChange,\n onInit: this.handleFormInit,\n onSaved: this.handleFormSaved,\n syncLocation: false // 弹框中的 crud 一般不需要同步地址栏\n };\n\n if (!(body as Schema).type) {\n return render(`body${key ? `/${key}` : ''}`, body, subProps);\n }\n\n let schema: Schema = body as Schema;\n\n if (schema.type === 'form') {\n schema = {\n mode: 'horizontal',\n wrapWithPanel: false,\n submitText: null,\n ...schema\n };\n }\n\n return render(`body${key ? `/${key}` : ''}`, schema, subProps);\n }\n\n renderFooter() {\n const actions = this.buildActions();\n\n if (!actions || !actions.length) {\n return null;\n }\n\n const {\n store,\n render,\n classnames: cx,\n showErrorMsg,\n showLoading\n } = this.props;\n\n return (\n <div className={cx('Modal-footer')}>\n {(showLoading !== false && store.loading) ||\n (showErrorMsg !== false && store.error) ? (\n <div className={cx('Dialog-info')} key=\"info\">\n {showLoading !== false ? (\n <Spinner size=\"sm\" key=\"info\" show={store.loading} />\n ) : null}\n {store.error && showErrorMsg !== false ? (\n <span className={cx('Dialog-error')}>{store.msg}</span>\n ) : null}\n </div>\n ) : null}\n {actions.map((action, key) =>\n render(`action/${key}`, action, {\n data: store.formData,\n onAction: this.handleAction,\n key,\n disabled: action.disabled || store.loading\n })\n )}\n </div>\n );\n }\n\n render() {\n const store = this.props.store;\n const {\n className,\n size,\n closeOnEsc,\n closeOnOutside,\n title,\n render,\n header,\n body,\n bodyClassName,\n headerClassName,\n show,\n lazyRender,\n lazySchema,\n wrapperComponent,\n showCloseButton,\n env,\n classnames: cx,\n classPrefix,\n translate: __\n } = {\n ...this.props,\n ...store.schema\n } as any;\n\n const Wrapper = wrapperComponent || Modal;\n return (\n <Wrapper\n classPrefix={classPrefix}\n className={cx(className)}\n size={size}\n backdrop=\"static\"\n onHide={this.handleSelfClose}\n keyboard={closeOnEsc && !store.loading}\n closeOnEsc={closeOnEsc}\n closeOnOutside={!store.dialogOpen && closeOnOutside}\n show={show}\n onEntered={this.handleEntered}\n onExited={this.handleExited}\n container={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n enforceFocus={false}\n disabled={store.loading}\n >\n {title && typeof title === 'string' ? (\n <div className={cx('Modal-header', headerClassName)}>\n {showCloseButton !== false && !store.loading ? (\n <a\n data-tooltip={__('Dialog.close')}\n data-position=\"left\"\n onClick={this.handleSelfClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n <div className={cx('Modal-title')}>\n {filter(__(title), store.formData)}\n </div>\n </div>\n ) : title ? (\n <div className={cx('Modal-header', headerClassName)}>\n {showCloseButton !== false && !store.loading ? (\n <a\n data-tooltip={__('Dialog.close')}\n onClick={this.handleSelfClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n {render('title', title, {\n data: store.formData\n })}\n </div>\n ) : showCloseButton !== false && !store.loading ? (\n <a\n data-tooltip={__('Dialog.close')}\n onClick={this.handleSelfClose}\n className={cx('Modal-close')}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n {header\n ? render('header', header, {\n data: store.formData\n })\n : null}\n\n {(!store.entered && lazyRender) || (lazySchema && !body) ? (\n <div className={cx('Modal-body', bodyClassName)}>\n <Spinner overlay show size=\"lg\" />\n </div>\n ) : body ? (\n <div className={cx('Modal-body', bodyClassName)}>\n {this.renderBody(body, 'body')}\n </div>\n ) : null}\n\n {this.renderFooter()}\n\n {body\n ? render(\n 'drawer',\n {\n // 支持嵌套\n ...((store.action as Action) &&\n ((store.action as Action).drawer as object)),\n type: 'drawer'\n },\n {\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 : null}\n\n {body\n ? render(\n 'dialog',\n {\n // 支持嵌套\n ...((store.action as Action) &&\n ((store.action as Action).dialog as object)),\n type: 'dialog'\n },\n {\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 : null}\n </Wrapper>\n );\n }\n}\n\n@Renderer({\n type: 'dialog',\n storeType: ModalStore.name,\n storeExtendsData: false,\n isolateScope: true,\n shouldSyncSuperStore: (store: IServiceStore, props: any, prevProps: any) =>\n !!(\n (store.dialogOpen || props.show) &&\n (props.show !== prevProps.show ||\n isObjectShallowModified(prevProps.data, props.data))\n )\n})\nexport class DialogRenderer extends Dialog {\n static contextType = ScopedContext;\n\n constructor(props: DialogProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n super.componentWillUnmount();\n }\n\n tryChildrenToHandle(action: Action, ctx: object, rawAction?: Action) {\n const scoped = this.context as IScopedContext;\n\n const targets: Array<any> = [];\n const {onConfirm, store} = this.props;\n\n if (action.target) {\n targets.push(\n ...action.target\n .split(',')\n .map(name => scoped.getComponentByName(name))\n .filter(item => item && item.doAction)\n );\n }\n\n if (!targets.length) {\n let components = scoped\n .getComponents()\n .filter(item => !~['drawer', 'dialog'].indexOf(item.props.type));\n\n const pool = components.concat();\n\n while (pool.length) {\n const item = pool.pop()!;\n\n if (~['crud', 'form', 'wizard'].indexOf(item.props.type)) {\n targets.push(item);\n break;\n } else if (~['drawer', 'dialog'].indexOf(item.props.type)) {\n continue;\n } else if (~['page', 'service'].indexOf(item.props.type)) {\n pool.unshift.apply(pool, item.context.getComponents());\n }\n }\n }\n\n if (targets.length) {\n store.markBusying(true);\n store.updateMessage();\n\n Promise.all(\n targets.map(target =>\n target.doAction(\n {\n ...action,\n from: this.$$id\n },\n ctx,\n true\n )\n )\n )\n .then(values => {\n if (\n (action.type === 'submit' ||\n action.actionType === 'submit' ||\n action.actionType === 'confirm') &&\n action.close !== false\n ) {\n onConfirm && onConfirm(values, rawAction || action, ctx, targets);\n } else if (action.close) {\n action.close === true\n ? this.handleSelfClose()\n : this.closeTarget(action.close);\n }\n store.markBusying(false);\n })\n .catch(reason => {\n if (this.isDead) {\n return;\n }\n store.updateMessage(reason.message, true);\n store.markBusying(false);\n });\n\n return true;\n }\n\n return false;\n }\n\n handleAction(\n e: React.UIEvent<any>,\n action: Action,\n data: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ) {\n const {onAction, store, onConfirm, env} = this.props;\n\n if (action.from === this.$$id) {\n return onAction\n ? onAction(e, action, data, throwErrors, delegate || this.context)\n : false;\n }\n\n const scoped = this.context as IScopedContext;\n\n if (action.type === 'reset') {\n store.setCurrentAction(action);\n store.reset();\n } else if (\n action.actionType === 'close' ||\n action.actionType === 'cancel'\n ) {\n store.setCurrentAction(action);\n this.handleSelfClose();\n action.close && this.closeTarget(action.close);\n } else if (action.actionType === 'confirm') {\n store.setCurrentAction(action);\n this.tryChildrenToHandle(\n {\n ...action,\n actionType: 'submit'\n },\n data,\n action\n ) || this.handleSelfClose(undefined, true);\n } else if (action.actionType === 'next' || action.actionType === 'prev') {\n store.setCurrentAction(action);\n if (action.type === 'submit') {\n this.tryChildrenToHandle(\n {\n ...action,\n actionType: 'submit',\n close: true\n },\n data,\n action\n ) || this.handleSelfClose(undefined, true);\n } else {\n onConfirm([data], action, data, []);\n }\n } else if (action.actionType === 'dialog') {\n store.setCurrentAction(action);\n store.openDialog(data);\n } else if (action.actionType === 'drawer') {\n store.setCurrentAction(action);\n store.openDrawer(data);\n } else if (action.actionType === 'reload') {\n store.setCurrentAction(action);\n action.target && scoped.reload(action.target, data);\n if (action.close || action.type === 'submit') {\n this.handleSelfClose(undefined, action.type === 'submit');\n this.closeTarget(action.close);\n }\n } else if (this.tryChildrenToHandle(action, data)) {\n // do nothing\n } else if (action.actionType === 'ajax') {\n store.setCurrentAction(action);\n store\n .saveRemote(action.api as string, data, {\n successMessage: action.messages && action.messages.success,\n errorMessage: action.messages && action.messages.failed\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 reidrect =\n action.redirect && filter(action.redirect, store.data);\n reidrect && env.jumpTo(reidrect, action);\n action.reload && this.reloadTarget(action.reload, store.data);\n if (action.close) {\n this.handleSelfClose();\n this.closeTarget(action.close);\n }\n })\n .catch(() => {});\n } else if (onAction) {\n let ret = onAction(\n e,\n {\n ...action,\n close: false\n },\n data,\n throwErrors,\n delegate || this.context\n );\n action.close &&\n (ret && ret.then\n ? ret.then(this.handleSelfClose)\n : setTimeout(this.handleSelfClose, 200));\n }\n }\n\n handleChildFinished(value: any, action: Action) {\n if ((action && action.from === this.$$id) || action.close === false) {\n return;\n }\n\n const scoped = this.context as IScopedContext;\n const components = scoped\n .getComponents()\n .filter((item: any) => !~['drawer', 'dialog'].indexOf(item.props.type));\n const onConfirm = this.props.onConfirm;\n const onClose = this.props.onClose;\n\n if (\n components.length === 1 &&\n (components[0].props.type === 'form' ||\n components[0].props.type === 'wizard') &&\n (action.close === true ||\n components[0].props.closeDialogOnSubmit !== false)\n ) {\n onConfirm && onConfirm([value], action, {}, components);\n } else if (action.close === true) {\n onClose();\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDialogConfirm(values, action, ...rest);\n const scoped = this.context as IScopedContext;\n const store = this.props.store;\n const dialogAction = store.action as Action;\n const reload = action.reload ?? dialogAction.reload;\n\n if (reload) {\n scoped.reload(reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDrawerConfirm(values, action);\n const scoped = this.context as IScopedContext;\n const store = this.props.store;\n const drawerAction = store.action as Action;\n\n // 稍等会,等动画结束。\n setTimeout(() => {\n if (drawerAction.reload) {\n scoped.reload(drawerAction.reload, store.data);\n } else if (action.reload) {\n scoped.reload(action.reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }, 300);\n }\n\n reloadTarget(target: string, data?: any) {\n const scoped = this.context as IScopedContext;\n scoped.reload(target, data);\n }\n\n closeTarget(target: string) {\n const scoped = this.context as IScopedContext;\n scoped.close(target);\n }\n}\n"
12
12
  ]
13
13
  }
@@ -98,12 +98,14 @@ export default class DropDownButton extends React.Component<DropDownButtonProps,
98
98
  state: DropDownButtonState;
99
99
  static defaultProps: Pick<DropDownButtonProps, 'placement' | 'tooltipTrigger' | 'tooltipRootClose'>;
100
100
  target: any;
101
+ timer: ReturnType<typeof setTimeout>;
101
102
  constructor(props: DropDownButtonProps);
102
103
  componentDidMount(): void;
103
104
  domRef(ref: any): void;
104
105
  toogle(e: React.MouseEvent<any>): void;
105
106
  open(): void;
106
107
  close(): void;
108
+ keepOpen(): void;
107
109
  renderButton(button: DropdownButton, index: number | string): React.ReactNode;
108
110
  renderOuter(): JSX.Element;
109
111
  render(): JSX.Element;
@@ -22,6 +22,7 @@ var DropDownButton = /** @class */ (function (_super) {
22
22
  _this.open = _this.open.bind(_this);
23
23
  _this.close = _this.close.bind(_this);
24
24
  _this.toogle = _this.toogle.bind(_this);
25
+ _this.keepOpen = _this.keepOpen.bind(_this);
25
26
  _this.domRef = _this.domRef.bind(_this);
26
27
  return _this;
27
28
  }
@@ -47,9 +48,17 @@ var DropDownButton = /** @class */ (function (_super) {
47
48
  });
48
49
  };
49
50
  DropDownButton.prototype.close = function () {
50
- this.setState({
51
- isOpened: false
52
- });
51
+ var _this = this;
52
+ this.timer = setTimeout(function () {
53
+ _this.setState({
54
+ isOpened: false
55
+ });
56
+ }, 200);
57
+ };
58
+ DropDownButton.prototype.keepOpen = function () {
59
+ if (this.timer) {
60
+ clearTimeout(this.timer);
61
+ }
53
62
  };
54
63
  DropDownButton.prototype.renderButton = function (button, index) {
55
64
  var _a;
@@ -82,7 +91,7 @@ var DropDownButton = /** @class */ (function (_super) {
82
91
  var _a;
83
92
  var _b = this.props, render = _b.render, buttons = _b.buttons, data = _b.data, popOverContainer = _b.popOverContainer, cx = _b.classnames, ns = _b.classPrefix, children = _b.children, align = _b.align, closeOnClick = _b.closeOnClick, closeOnOutside = _b.closeOnOutside, menuClassName = _b.menuClassName;
84
93
  var body = (react_1.default.createElement(RootClose_1.RootClose, { disabled: !this.state.isOpened, onRootClose: closeOnOutside !== false ? this.close : helper_1.noop }, function (ref) {
85
- return (react_1.default.createElement("ul", { className: cx('DropDown-menu-root', 'DropDown-menu', menuClassName), onClick: closeOnClick ? _this.close : helper_1.noop, ref: ref }, children
94
+ return (react_1.default.createElement("ul", { className: cx('DropDown-menu-root', 'DropDown-menu', menuClassName), onClick: closeOnClick ? _this.close : helper_1.noop, onMouseEnter: _this.keepOpen, ref: ref }, children
86
95
  ? children
87
96
  : Array.isArray(buttons)
88
97
  ? buttons.map(function (button, index) {
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/DropDownButton.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport Overlay from '../components/Overlay';\nimport PopOver from '../components/PopOver';\nimport TooltipWrapper from '../components/TooltipWrapper';\nimport type {TooltipObject, Trigger} from '../components/TooltipWrapper';\nimport {isDisabled, isVisible, noop} from '../utils/helper';\nimport {filter} from '../utils/tpl';\nimport {Icon} from '../components/icons';\nimport {BaseSchema, SchemaClassName, SchemaIcon} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {DividerSchema} from './Divider';\nimport {RootClose} from '../utils/RootClose';\nimport {generateIcon} from '../utils/icon';\n\nimport type {Option} from '../components/Select';\n\nexport type DropdownButton =\n | (ActionSchema & {children?: Array<DropdownButton>})\n | DividerSchema\n | 'divider';\n\n/**\n * 下拉按钮渲染器。\n * 文档:https://baidu.gitee.io/amis/docs/components/dropdown-button\n */\nexport interface DropdownButtonSchema extends BaseSchema {\n /**\n * 指定为 DropDown Button 类型\n */\n type: 'dropdown-button';\n\n /**\n * 是否独占一行 `display: block`\n */\n block?: boolean;\n\n /**\n * 给 Button 配置 className。\n */\n btnClassName?: SchemaClassName;\n\n /**\n * 按钮集合,支持分组\n */\n buttons?: Array<DropdownButton>;\n\n /**\n * 按钮文字\n */\n label?: string;\n\n /**\n * 按钮级别,样式\n */\n level?: 'info' | 'success' | 'danger' | 'warning' | 'primary' | 'link';\n\n /**\n * 按钮提示文字,hover 时显示\n */\n // tooltip?: SchemaTooltip;\n\n /**\n * 点击外部是否关闭\n */\n closeOnOutside?: boolean;\n\n /**\n * 点击内容是否关闭\n */\n closeOnClick?: boolean;\n\n /**\n * 按钮大小\n */\n size?: 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 对齐方式\n */\n align?: 'left' | 'right';\n\n /**\n * 是否只显示图标。\n */\n iconOnly?: boolean;\n\n /**\n * 右侧图标\n */\n rightIcon?: SchemaIcon;\n\n /**\n * 触发条件,默认是 click\n */\n trigger?: 'click' | 'hover';\n\n /**\n * 是否显示下拉按钮\n */\n hideCaret?: boolean;\n\n /**\n * 菜单 CSS 样式\n */\n menuClassName?: string;\n}\n\nexport interface DropDownButtonProps\n extends RendererProps,\n Omit<DropdownButtonSchema, 'type' | 'className'> {\n disabledTip?: string | TooltipObject;\n /**\n * 按钮提示文字,hover focus 时显示\n */\n tooltip?: string | TooltipObject;\n placement?: 'top' | 'right' | 'bottom' | 'left';\n tooltipContainer?: any;\n tooltipTrigger?: Trigger | Array<Trigger>;\n tooltipRootClose?: boolean;\n defaultIsOpened?: boolean;\n label?: any;\n // 激活状态\n isActived?: boolean;\n menuClassName?: string;\n}\n\nexport interface DropDownButtonState {\n isOpened: boolean;\n}\n\nexport default class DropDownButton extends React.Component<\n DropDownButtonProps,\n DropDownButtonState\n> {\n state: DropDownButtonState = {\n isOpened: false\n };\n\n static defaultProps: Pick<\n DropDownButtonProps,\n 'placement' | 'tooltipTrigger' | 'tooltipRootClose'\n > = {\n placement: 'top',\n tooltipTrigger: ['hover', 'focus'],\n tooltipRootClose: false\n };\n\n target: any;\n constructor(props: DropDownButtonProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.toogle = this.toogle.bind(this);\n this.domRef = this.domRef.bind(this);\n }\n\n componentDidMount() {\n if (this.props.defaultIsOpened) {\n this.setState({\n isOpened: true\n });\n }\n }\n\n domRef(ref: any) {\n this.target = ref;\n }\n\n toogle(e: React.MouseEvent<any>) {\n e.preventDefault();\n\n this.setState({\n isOpened: !this.state.isOpened\n });\n }\n\n open() {\n this.setState({\n isOpened: true\n });\n }\n\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n renderButton(\n button: DropdownButton,\n index: number | string\n ): React.ReactNode {\n const {render, classnames: cx, data} = this.props;\n index = typeof index === 'number' ? index.toString() : index;\n\n if (typeof button !== 'string' && Array.isArray(button?.children)) {\n return (\n <div key={index} className={cx('DropDown-menu')}>\n <li key={`${index}/0`} className={cx('DropDown-groupTitle')}>\n {button.icon ? generateIcon(cx, button.icon, 'm-r-xs') : null}\n <span>{button.label}</span>\n </li>\n {button.children.map((child, childIndex) =>\n this.renderButton(child, `${index}/${childIndex + 1}`)\n )}\n </div>\n );\n }\n\n if (typeof button !== 'string' && !isVisible(button, data)) {\n return null;\n } else if (button === 'divider' || button.type === 'divider') {\n return <li key={index} className={cx('DropDown-divider')} />;\n } else {\n return (\n <li\n key={index}\n className={cx('DropDown-button', {\n ['is-disabled']: isDisabled(button, data)\n })}\n >\n {render(`button/${index}`, {\n type: 'button',\n ...(button as any),\n isMenuItem: true\n })}\n </li>\n );\n }\n }\n\n renderOuter() {\n const {\n render,\n buttons,\n data,\n popOverContainer,\n classnames: cx,\n classPrefix: ns,\n children,\n align,\n closeOnClick,\n closeOnOutside,\n menuClassName\n } = this.props;\n\n let body = (\n <RootClose\n disabled={!this.state.isOpened}\n onRootClose={closeOnOutside !== false ? this.close : noop}\n >\n {(ref: any) => {\n return (\n <ul\n className={cx(\n 'DropDown-menu-root',\n 'DropDown-menu',\n menuClassName\n )}\n onClick={closeOnClick ? this.close : noop}\n ref={ref}\n >\n {children\n ? children\n : Array.isArray(buttons)\n ? buttons.map((button, index) =>\n this.renderButton(button, index)\n )\n : null}\n </ul>\n );\n }}\n </RootClose>\n );\n\n if (popOverContainer) {\n return (\n <Overlay container={popOverContainer} target={() => this.target} show>\n <PopOver\n overlay\n onHide={this.close}\n classPrefix={ns}\n className={cx('DropDown-popover', menuClassName)}\n style={{minWidth: this.target?.offsetWidth}}\n >\n {body}\n </PopOver>\n </Overlay>\n );\n }\n\n return body;\n }\n\n render() {\n const {\n tooltip,\n placement,\n tooltipContainer,\n tooltipTrigger,\n tooltipRootClose,\n disabledTip,\n block,\n disabled,\n btnDisabled,\n btnClassName,\n size,\n label,\n level,\n primary,\n className,\n classnames: cx,\n align,\n iconOnly,\n icon,\n rightIcon,\n isActived,\n trigger,\n data,\n hideCaret\n } = this.props;\n\n const iconElement = generateIcon(cx, icon, 'm-r-xs');\n\n const rightIconElement = generateIcon(cx, rightIcon, 'm-l-xs');\n\n return (\n <div\n className={cx(\n 'DropDown ',\n {\n 'DropDown--block': block,\n 'DropDown--alignRight': align === 'right',\n 'is-opened': this.state.isOpened,\n 'is-actived': isActived\n },\n className\n )}\n onMouseEnter={trigger === 'hover' ? this.open : () => {}}\n onMouseLeave={trigger === 'hover' ? this.close : () => {}}\n ref={this.domRef}\n >\n <TooltipWrapper\n placement={placement}\n tooltip={disabled ? disabledTip : tooltip}\n container={tooltipContainer}\n trigger={tooltipTrigger}\n rootClose={tooltipRootClose}\n >\n <button\n onClick={this.toogle}\n disabled={disabled || btnDisabled}\n className={cx(\n 'Button',\n btnClassName,\n typeof level === 'undefined'\n ? 'Button--default'\n : level\n ? `Button--${level}`\n : '',\n {\n 'Button--block': block,\n 'Button--primary': primary,\n 'Button--iconOnly': iconOnly\n },\n size ? `Button--${size}` : ''\n )}\n >\n {iconElement}\n {typeof label === 'string' ? filter(label, data) : label}\n {rightIconElement}\n {!hideCaret ? (\n <span className={cx('DropDown-caret')}>\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n </button>\n </TooltipWrapper>\n {this.state.isOpened ? this.renderOuter() : null}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'dropdown-button'\n})\nexport class DropDownButtonRenderer extends DropDownButton {}\n"
11
+ "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport Overlay from '../components/Overlay';\nimport PopOver from '../components/PopOver';\nimport TooltipWrapper from '../components/TooltipWrapper';\nimport type {TooltipObject, Trigger} from '../components/TooltipWrapper';\nimport {isDisabled, isVisible, noop} from '../utils/helper';\nimport {filter} from '../utils/tpl';\nimport {Icon} from '../components/icons';\nimport {BaseSchema, SchemaClassName, SchemaIcon} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {DividerSchema} from './Divider';\nimport {RootClose} from '../utils/RootClose';\nimport {generateIcon} from '../utils/icon';\n\nimport type {Option} from '../components/Select';\n\nexport type DropdownButton =\n | (ActionSchema & {children?: Array<DropdownButton>})\n | DividerSchema\n | 'divider';\n\n/**\n * 下拉按钮渲染器。\n * 文档:https://baidu.gitee.io/amis/docs/components/dropdown-button\n */\nexport interface DropdownButtonSchema extends BaseSchema {\n /**\n * 指定为 DropDown Button 类型\n */\n type: 'dropdown-button';\n\n /**\n * 是否独占一行 `display: block`\n */\n block?: boolean;\n\n /**\n * 给 Button 配置 className。\n */\n btnClassName?: SchemaClassName;\n\n /**\n * 按钮集合,支持分组\n */\n buttons?: Array<DropdownButton>;\n\n /**\n * 按钮文字\n */\n label?: string;\n\n /**\n * 按钮级别,样式\n */\n level?: 'info' | 'success' | 'danger' | 'warning' | 'primary' | 'link';\n\n /**\n * 按钮提示文字,hover 时显示\n */\n // tooltip?: SchemaTooltip;\n\n /**\n * 点击外部是否关闭\n */\n closeOnOutside?: boolean;\n\n /**\n * 点击内容是否关闭\n */\n closeOnClick?: boolean;\n\n /**\n * 按钮大小\n */\n size?: 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 对齐方式\n */\n align?: 'left' | 'right';\n\n /**\n * 是否只显示图标。\n */\n iconOnly?: boolean;\n\n /**\n * 右侧图标\n */\n rightIcon?: SchemaIcon;\n\n /**\n * 触发条件,默认是 click\n */\n trigger?: 'click' | 'hover';\n\n /**\n * 是否显示下拉按钮\n */\n hideCaret?: boolean;\n\n /**\n * 菜单 CSS 样式\n */\n menuClassName?: string;\n}\n\nexport interface DropDownButtonProps\n extends RendererProps,\n Omit<DropdownButtonSchema, 'type' | 'className'> {\n disabledTip?: string | TooltipObject;\n /**\n * 按钮提示文字,hover focus 时显示\n */\n tooltip?: string | TooltipObject;\n placement?: 'top' | 'right' | 'bottom' | 'left';\n tooltipContainer?: any;\n tooltipTrigger?: Trigger | Array<Trigger>;\n tooltipRootClose?: boolean;\n defaultIsOpened?: boolean;\n label?: any;\n // 激活状态\n isActived?: boolean;\n menuClassName?: string;\n}\n\nexport interface DropDownButtonState {\n isOpened: boolean;\n}\n\nexport default class DropDownButton extends React.Component<\n DropDownButtonProps,\n DropDownButtonState\n> {\n state: DropDownButtonState = {\n isOpened: false\n };\n\n static defaultProps: Pick<\n DropDownButtonProps,\n 'placement' | 'tooltipTrigger' | 'tooltipRootClose'\n > = {\n placement: 'top',\n tooltipTrigger: ['hover', 'focus'],\n tooltipRootClose: false\n };\n\n target: any;\n timer: ReturnType<typeof setTimeout>;\n constructor(props: DropDownButtonProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.toogle = this.toogle.bind(this);\n this.keepOpen = this.keepOpen.bind(this);\n this.domRef = this.domRef.bind(this);\n }\n\n componentDidMount() {\n if (this.props.defaultIsOpened) {\n this.setState({\n isOpened: true\n });\n }\n }\n\n domRef(ref: any) {\n this.target = ref;\n }\n\n toogle(e: React.MouseEvent<any>) {\n e.preventDefault();\n\n this.setState({\n isOpened: !this.state.isOpened\n });\n }\n\n open() {\n this.setState({\n isOpened: true\n });\n }\n\n close() {\n this.timer = setTimeout(() => {\n this.setState({\n isOpened: false\n });\n }, 200);\n }\n\n keepOpen() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n }\n\n renderButton(\n button: DropdownButton,\n index: number | string\n ): React.ReactNode {\n const {render, classnames: cx, data} = this.props;\n index = typeof index === 'number' ? index.toString() : index;\n\n if (typeof button !== 'string' && Array.isArray(button?.children)) {\n return (\n <div key={index} className={cx('DropDown-menu')}>\n <li key={`${index}/0`} className={cx('DropDown-groupTitle')}>\n {button.icon ? generateIcon(cx, button.icon, 'm-r-xs') : null}\n <span>{button.label}</span>\n </li>\n {button.children.map((child, childIndex) =>\n this.renderButton(child, `${index}/${childIndex + 1}`)\n )}\n </div>\n );\n }\n\n if (typeof button !== 'string' && !isVisible(button, data)) {\n return null;\n } else if (button === 'divider' || button.type === 'divider') {\n return <li key={index} className={cx('DropDown-divider')} />;\n } else {\n return (\n <li\n key={index}\n className={cx('DropDown-button', {\n ['is-disabled']: isDisabled(button, data)\n })}\n >\n {render(`button/${index}`, {\n type: 'button',\n ...(button as any),\n isMenuItem: true\n })}\n </li>\n );\n }\n }\n\n renderOuter() {\n const {\n render,\n buttons,\n data,\n popOverContainer,\n classnames: cx,\n classPrefix: ns,\n children,\n align,\n closeOnClick,\n closeOnOutside,\n menuClassName\n } = this.props;\n\n let body = (\n <RootClose\n disabled={!this.state.isOpened}\n onRootClose={closeOnOutside !== false ? this.close : noop}\n >\n {(ref: any) => {\n return (\n <ul\n className={cx(\n 'DropDown-menu-root',\n 'DropDown-menu',\n menuClassName\n )}\n onClick={closeOnClick ? this.close : noop}\n onMouseEnter={this.keepOpen}\n ref={ref}\n >\n {children\n ? children\n : Array.isArray(buttons)\n ? buttons.map((button, index) =>\n this.renderButton(button, index)\n )\n : null}\n </ul>\n );\n }}\n </RootClose>\n );\n\n if (popOverContainer) {\n return (\n <Overlay container={popOverContainer} target={() => this.target} show>\n <PopOver\n overlay\n onHide={this.close}\n classPrefix={ns}\n className={cx('DropDown-popover', menuClassName)}\n style={{minWidth: this.target?.offsetWidth}}\n >\n {body}\n </PopOver>\n </Overlay>\n );\n }\n\n return body;\n }\n\n render() {\n const {\n tooltip,\n placement,\n tooltipContainer,\n tooltipTrigger,\n tooltipRootClose,\n disabledTip,\n block,\n disabled,\n btnDisabled,\n btnClassName,\n size,\n label,\n level,\n primary,\n className,\n classnames: cx,\n align,\n iconOnly,\n icon,\n rightIcon,\n isActived,\n trigger,\n data,\n hideCaret\n } = this.props;\n\n const iconElement = generateIcon(cx, icon, 'm-r-xs');\n\n const rightIconElement = generateIcon(cx, rightIcon, 'm-l-xs');\n\n return (\n <div\n className={cx(\n 'DropDown ',\n {\n 'DropDown--block': block,\n 'DropDown--alignRight': align === 'right',\n 'is-opened': this.state.isOpened,\n 'is-actived': isActived\n },\n className\n )}\n onMouseEnter={trigger === 'hover' ? this.open : () => {}}\n onMouseLeave={trigger === 'hover' ? this.close : () => {}}\n ref={this.domRef}\n >\n <TooltipWrapper\n placement={placement}\n tooltip={disabled ? disabledTip : tooltip}\n container={tooltipContainer}\n trigger={tooltipTrigger}\n rootClose={tooltipRootClose}\n >\n <button\n onClick={this.toogle}\n disabled={disabled || btnDisabled}\n className={cx(\n 'Button',\n btnClassName,\n typeof level === 'undefined'\n ? 'Button--default'\n : level\n ? `Button--${level}`\n : '',\n {\n 'Button--block': block,\n 'Button--primary': primary,\n 'Button--iconOnly': iconOnly\n },\n size ? `Button--${size}` : ''\n )}\n >\n {iconElement}\n {typeof label === 'string' ? filter(label, data) : label}\n {rightIconElement}\n {!hideCaret ? (\n <span className={cx('DropDown-caret')}>\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n </button>\n </TooltipWrapper>\n {this.state.isOpened ? this.renderOuter() : null}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'dropdown-button'\n})\nexport class DropDownButtonRenderer extends DropDownButton {}\n"
12
12
  ]
13
13
  }
@@ -39,6 +39,10 @@ export interface InputFormulaControlSchema extends FormBaseControl {
39
39
  * 控件模式
40
40
  */
41
41
  inputMode?: 'button' | 'input-button';
42
+ /**
43
+ * 外层input是否允许输入,否需要点击fx在弹窗中输入
44
+ */
45
+ allowInput?: boolean;
42
46
  /**
43
47
  * 按钮图标
44
48
  */