amis 1.8.0-beta.0 → 1.8.0-beta.3

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 (217) hide show
  1. package/lib/SchemaRenderer.js +19 -3
  2. package/lib/SchemaRenderer.js.map +2 -2
  3. package/lib/WithRootStore.d.ts +18 -0
  4. package/lib/WithStore.js +2 -1
  5. package/lib/WithStore.js.map +2 -2
  6. package/lib/actions/CmptAction.js +14 -3
  7. package/lib/actions/CmptAction.js.map +2 -2
  8. package/lib/components/BarCode.js +1 -1
  9. package/lib/components/BarCode.js.map +2 -2
  10. package/lib/components/DatePicker.d.ts +3 -0
  11. package/lib/components/DatePicker.js +56 -11
  12. package/lib/components/DatePicker.js.map +2 -2
  13. package/lib/components/DateRangePicker.d.ts +92 -84
  14. package/lib/components/DateRangePicker.js +198 -5
  15. package/lib/components/DateRangePicker.js.map +2 -2
  16. package/lib/components/MonthRangePicker.d.ts +84 -84
  17. package/lib/components/Progress.js +12 -9
  18. package/lib/components/Progress.js.map +2 -2
  19. package/lib/components/Radios.d.ts +1 -1
  20. package/lib/components/Radios.js +3 -5
  21. package/lib/components/Radios.js.map +2 -2
  22. package/lib/components/Range.d.ts +2 -2
  23. package/lib/components/Range.js +24 -11
  24. package/lib/components/Range.js.map +2 -2
  25. package/lib/components/Steps.d.ts +6 -0
  26. package/lib/components/Steps.js +13 -9
  27. package/lib/components/Steps.js.map +2 -2
  28. package/lib/components/calendar/Calendar.js +16 -12
  29. package/lib/components/calendar/Calendar.js.map +2 -2
  30. package/lib/components/calendar/YearsView.js +3 -3
  31. package/lib/components/calendar/YearsView.js.map +2 -2
  32. package/lib/components/formula/Editor.d.ts +3 -1
  33. package/lib/components/formula/Editor.js +20 -2
  34. package/lib/components/formula/Editor.js.map +2 -2
  35. package/lib/components/formula/Picker.d.ts +5 -0
  36. package/lib/components/formula/Picker.js +19 -4
  37. package/lib/components/formula/Picker.js.map +2 -2
  38. package/lib/factory.d.ts +4 -0
  39. package/lib/factory.js +8 -2
  40. package/lib/factory.js.map +2 -2
  41. package/lib/index.js +1 -1
  42. package/lib/locale/de-DE.js +13 -0
  43. package/lib/locale/de-DE.js.map +2 -2
  44. package/lib/locale/en-US.js +13 -0
  45. package/lib/locale/en-US.js.map +2 -2
  46. package/lib/locale/zh-CN.js +13 -0
  47. package/lib/locale/zh-CN.js.map +2 -2
  48. package/lib/renderers/Action.d.ts +2 -0
  49. package/lib/renderers/Action.js +23 -5
  50. package/lib/renderers/Action.js.map +2 -2
  51. package/lib/renderers/Carousel.d.ts +1 -0
  52. package/lib/renderers/Carousel.js +13 -1
  53. package/lib/renderers/Carousel.js.map +2 -2
  54. package/lib/renderers/Dialog.d.ts +4 -0
  55. package/lib/renderers/Dialog.js +4 -3
  56. package/lib/renderers/Dialog.js.map +2 -2
  57. package/lib/renderers/DropDownButton.d.ts +2 -0
  58. package/lib/renderers/DropDownButton.js +13 -4
  59. package/lib/renderers/DropDownButton.js.map +2 -2
  60. package/lib/renderers/Form/Checkboxes.d.ts +2 -2
  61. package/lib/renderers/Form/Checkboxes.js +2 -6
  62. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  63. package/lib/renderers/Form/Combo.js +3 -2
  64. package/lib/renderers/Form/Combo.js.map +2 -2
  65. package/lib/renderers/Form/InputCity.d.ts +3 -0
  66. package/lib/renderers/Form/InputCity.js +44 -2
  67. package/lib/renderers/Form/InputCity.js.map +2 -2
  68. package/lib/renderers/Form/InputDateRange.d.ts +5 -0
  69. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  70. package/lib/renderers/Form/InputFile.js +6 -3
  71. package/lib/renderers/Form/InputFile.js.map +2 -2
  72. package/lib/renderers/Form/InputFormula.d.ts +4 -0
  73. package/lib/renderers/Form/InputFormula.js +2 -2
  74. package/lib/renderers/Form/InputFormula.js.map +2 -2
  75. package/lib/renderers/Form/InputImage.js +6 -3
  76. package/lib/renderers/Form/InputImage.js.map +2 -2
  77. package/lib/renderers/Form/InputRange.js +13 -14
  78. package/lib/renderers/Form/InputRange.js.map +2 -2
  79. package/lib/renderers/Form/InputTable.js +4 -2
  80. package/lib/renderers/Form/InputTable.js.map +2 -2
  81. package/lib/renderers/Form/Item.d.ts +11 -6
  82. package/lib/renderers/Form/index.js +1 -1
  83. package/lib/renderers/Form/index.js.map +2 -2
  84. package/lib/renderers/Form/wrapControl.d.ts +9 -0
  85. package/lib/renderers/Form/wrapControl.js +1 -1
  86. package/lib/renderers/Form/wrapControl.js.map +2 -2
  87. package/lib/renderers/Nav.js +2 -2
  88. package/lib/renderers/Nav.js.map +2 -2
  89. package/lib/renderers/Page.js +2 -3
  90. package/lib/renderers/Page.js.map +2 -2
  91. package/lib/renderers/Progress.d.ts +1 -1
  92. package/lib/renderers/Progress.js +1 -1
  93. package/lib/renderers/Progress.js.map +2 -2
  94. package/lib/renderers/Steps.d.ts +8 -0
  95. package/lib/renderers/Steps.js +2 -2
  96. package/lib/renderers/Steps.js.map +2 -2
  97. package/lib/renderers/Table/TableRow.js +1 -1
  98. package/lib/renderers/Table/TableRow.js.map +2 -2
  99. package/lib/renderers/Table/index.js +7 -3
  100. package/lib/renderers/Table/index.js.map +2 -2
  101. package/lib/renderers/Tabs.d.ts +4 -0
  102. package/lib/renderers/Tabs.js +22 -6
  103. package/lib/renderers/Tabs.js.map +2 -2
  104. package/lib/renderers/Wizard.d.ts +6 -3
  105. package/lib/renderers/Wizard.js +257 -152
  106. package/lib/renderers/Wizard.js.map +2 -2
  107. package/lib/store/index.d.ts +5 -0
  108. package/lib/store/index.js +14 -0
  109. package/lib/store/index.js.map +2 -2
  110. package/lib/store/table.js +4 -4
  111. package/lib/store/table.js.map +2 -2
  112. package/lib/themes/ang-ie11.css +194 -23
  113. package/lib/themes/ang.css +193 -22
  114. package/lib/themes/ang.css.map +1 -1
  115. package/lib/themes/antd-ie11.css +194 -23
  116. package/lib/themes/antd.css +193 -22
  117. package/lib/themes/antd.css.map +1 -1
  118. package/lib/themes/cxd-ie11.css +194 -23
  119. package/lib/themes/cxd.css +193 -22
  120. package/lib/themes/cxd.css.map +1 -1
  121. package/lib/themes/dark-ie11.css +194 -23
  122. package/lib/themes/dark.css +193 -22
  123. package/lib/themes/dark.css.map +1 -1
  124. package/lib/themes/default-ie11.css +194 -23
  125. package/lib/themes/default.css +193 -22
  126. package/lib/themes/default.css.map +1 -1
  127. package/lib/types.d.ts +1 -1
  128. package/lib/types.js.map +1 -1
  129. package/lib/utils/columnsSplit.d.ts +1 -0
  130. package/lib/utils/columnsSplit.js +40 -0
  131. package/lib/utils/columnsSplit.js.map +13 -0
  132. package/lib/utils/debug.d.ts +1 -1
  133. package/lib/utils/debug.js +16 -22
  134. package/lib/utils/debug.js.map +2 -2
  135. package/package.json +1 -1
  136. package/schema.json +181 -30
  137. package/scss/_properties.scss +2 -2
  138. package/scss/components/_barcode.scss +1 -1
  139. package/scss/components/_carousel.scss +1 -0
  140. package/scss/components/_debug.scss +3 -3
  141. package/scss/components/_formula.scss +18 -0
  142. package/scss/components/_progress.scss +3 -8
  143. package/scss/components/_steps.scss +199 -8
  144. package/scss/components/form/_date.scss +14 -0
  145. package/scss/components/form/_editor.scss +2 -1
  146. package/sdk/ang-ie11.css +234 -25
  147. package/sdk/ang.css +233 -24
  148. package/sdk/antd-ie11.css +234 -25
  149. package/sdk/antd.css +233 -24
  150. package/sdk/barcode.js +51 -51
  151. package/sdk/charts.js +14 -14
  152. package/sdk/codemirror.js +7 -7
  153. package/sdk/color-picker.js +65 -65
  154. package/sdk/cropperjs.js +2 -2
  155. package/sdk/cxd-ie11.css +234 -25
  156. package/sdk/cxd.css +233 -24
  157. package/sdk/dark-ie11.css +234 -25
  158. package/sdk/dark.css +233 -24
  159. package/sdk/exceljs.js +1 -1
  160. package/sdk/locale/de-DE.js +13 -0
  161. package/sdk/markdown.js +69 -69
  162. package/sdk/papaparse.js +1 -1
  163. package/sdk/renderers/Form/CityDB.js +1 -1
  164. package/sdk/rest.js +17 -17
  165. package/sdk/rich-text.js +62 -62
  166. package/sdk/sdk-ie11.css +234 -25
  167. package/sdk/sdk.css +233 -24
  168. package/sdk/sdk.js +1290 -1288
  169. package/sdk/thirds/hls.js/hls.js +1 -1
  170. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  171. package/sdk/tinymce.js +57 -57
  172. package/src/SchemaRenderer.tsx +32 -14
  173. package/src/WithStore.tsx +3 -1
  174. package/src/actions/CmptAction.ts +18 -0
  175. package/src/components/BarCode.tsx +2 -2
  176. package/src/components/DatePicker.tsx +77 -22
  177. package/src/components/DateRangePicker.tsx +198 -4
  178. package/src/components/Progress.tsx +8 -12
  179. package/src/components/Radios.tsx +6 -17
  180. package/src/components/Range.tsx +26 -12
  181. package/src/components/Steps.tsx +28 -27
  182. package/src/components/calendar/Calendar.tsx +17 -12
  183. package/src/components/calendar/YearsView.tsx +3 -4
  184. package/src/components/formula/Editor.tsx +34 -3
  185. package/src/components/formula/Picker.tsx +28 -1
  186. package/src/factory.tsx +15 -2
  187. package/src/locale/de-DE.ts +13 -0
  188. package/src/locale/en-US.ts +13 -0
  189. package/src/locale/zh-CN.ts +13 -0
  190. package/src/renderers/Action.tsx +22 -1
  191. package/src/renderers/Carousel.tsx +8 -0
  192. package/src/renderers/Dialog.tsx +17 -3
  193. package/src/renderers/DropDownButton.tsx +14 -3
  194. package/src/renderers/Form/Checkboxes.tsx +5 -18
  195. package/src/renderers/Form/Combo.tsx +2 -3
  196. package/src/renderers/Form/InputCity.tsx +33 -4
  197. package/src/renderers/Form/InputDateRange.tsx +8 -1
  198. package/src/renderers/Form/InputFile.tsx +7 -3
  199. package/src/renderers/Form/InputFormula.tsx +7 -0
  200. package/src/renderers/Form/InputImage.tsx +7 -3
  201. package/src/renderers/Form/InputRange.tsx +18 -16
  202. package/src/renderers/Form/InputTable.tsx +6 -2
  203. package/src/renderers/Form/index.tsx +1 -1
  204. package/src/renderers/Form/wrapControl.tsx +1 -1
  205. package/src/renderers/Nav.tsx +1 -1
  206. package/src/renderers/Page.tsx +1 -2
  207. package/src/renderers/Progress.tsx +2 -2
  208. package/src/renderers/Steps.tsx +14 -0
  209. package/src/renderers/Table/TableRow.tsx +1 -1
  210. package/src/renderers/Table/index.tsx +11 -2
  211. package/src/renderers/Tabs.tsx +75 -28
  212. package/src/renderers/Wizard.tsx +154 -93
  213. package/src/store/index.ts +20 -0
  214. package/src/store/table.ts +4 -4
  215. package/src/types.ts +3 -1
  216. package/src/utils/columnsSplit.tsx +57 -0
  217. package/src/utils/debug.tsx +17 -24
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/wrapControl.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 {IFormStore, IFormItemStore} from '../../store/form';\nimport debouce from 'lodash/debounce';\n\nimport {RendererProps, Renderer} from '../../factory';\nimport {ComboStore, IComboStore, IUniqueGroup} from '../../store/combo';\nimport {\n anyChanged,\n promisify,\n isObject,\n guid,\n isEmpty,\n autobind,\n getVariable\n} from '../../utils/helper';\nimport {IIRendererStore, IRendererStore} from '../../store';\nimport {ScopedContext, IScopedContext} from '../../Scoped';\nimport {reaction} from 'mobx';\nimport {FormItemStore} from '../../store/formItem';\nimport {isAlive} from 'mobx-state-tree';\nimport {observer} from 'mobx-react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {withRootStore} from '../../WithRootStore';\nimport {FormBaseControl, FormItemWrap} from './Item';\nimport {Api} from '../../types';\nimport {TableStore} from '../../store/table';\n\nexport interface ControlOutterProps extends RendererProps {\n formStore?: IFormStore;\n name?: string;\n value?: any;\n id?: string;\n type?: string;\n required?: boolean;\n validations: string | {[propsName: string]: any};\n validationErrors: {[propsName: string]: any};\n validateOnChange: boolean;\n multiple?: boolean;\n delimiter?: string;\n joinValues?: boolean;\n extractValue?: boolean;\n valueField?: string;\n labelField?: string;\n unique?: boolean;\n selectFirst?: boolean;\n autoFill?: any;\n clearValueOnHidden?: boolean;\n validateApi?: Api;\n submitOnChange?: boolean;\n validate?: (value: any, values: any, name: string) => any;\n formItem?: IFormItemStore;\n addHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n removeHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n $schema: {\n pipeIn?: (value: any, data: any) => any;\n pipeOut?: (value: any, originValue: any, data: any) => any;\n [propName: string]: any;\n };\n store?: IIRendererStore;\n onChange?: (\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) => void;\n}\n\nexport interface ControlProps {\n onBulkChange?: (values: Object) => void;\n onChange?: (value: any, name: string, submit: boolean) => void;\n store: IIRendererStore;\n}\n\nexport function wrapControl<\n T extends React.ComponentType<React.ComponentProps<T> & ControlProps>\n>(ComposedComponent: T) {\n type OuterProps = JSX.LibraryManagedAttributes<\n T,\n Omit<React.ComponentProps<T>, keyof ControlProps>\n > &\n ControlOutterProps;\n\n const result = hoistNonReactStatic(\n withRootStore(\n observer(\n class extends React.Component<OuterProps> {\n public model: IFormItemStore | undefined;\n control?: any;\n value?: any = undefined;\n hook?: () => any;\n hook2?: () => any;\n hook3?: () => any;\n reaction?: () => void;\n\n static contextType = ScopedContext;\n static defaultProps = {};\n\n lazyEmitChange = debouce(this.emitChange.bind(this), 250, {\n trailing: true,\n leading: false\n });\n\n constructor(props: OuterProps) {\n super(props);\n\n const {\n formStore: form,\n formItem,\n rootStore,\n store,\n onChange,\n data,\n $schema: {\n name,\n id,\n type,\n required,\n validations,\n validationErrors,\n unique,\n value,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength,\n validateOnChange\n }\n } = this.props;\n\n this.getValue = this.getValue.bind(this);\n this.setValue = this.setValue.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.setPrinstineValue = this.setPrinstineValue.bind(this);\n this.controlRef = this.controlRef.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n\n if (!name) {\n return;\n }\n\n let propValue = this.props.value;\n const model = rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: FormItemStore.name,\n parentId: store?.id,\n name\n }) as IFormItemStore;\n this.model = model;\n // @issue 打算干掉这个\n formItem?.addSubFormItem(model);\n model.config({\n id,\n type,\n required,\n unique,\n value,\n rules: validations,\n messages: validationErrors,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength,\n validateOnChange\n });\n\n // issue 这个逻辑应该在 combo 里面自己实现。\n if (\n this.model.unique &&\n form?.parentStore?.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.bindUniuqueItem(model);\n }\n\n // 同步 value\n model.changeTmpValue(\n propValue ?? store?.getValueByName(model.name) ?? value\n );\n\n // 如果没有初始值,通过 onChange 设置过去\n if (\n onChange &&\n typeof propValue === 'undefined' &&\n typeof store?.getValueByName(model.name, false) === 'undefined' &&\n // todo 后续再优化这个判断,\n // 目前 input-table 中默认值会给冲掉,所以加上这个判断\n // 对应 issue 为 https://github.com/baidu/amis/issues/2674\n store?.storeType !== TableStore.name\n ) {\n onChange(model.tmpValue, model.name, false, true);\n }\n }\n\n componentDidMount() {\n const {\n store,\n formStore: form,\n $schema: {name, validate},\n addHook\n } = this.props;\n\n // 提交前先把之前的 lazyEmit 执行一下。\n this.hook3 = () => {\n this.lazyEmitChange.flush();\n };\n addHook?.(this.hook3, 'flush');\n\n const formItem = this.model as IFormItemStore;\n if (formItem && validate) {\n let finalValidate = promisify(validate.bind(formItem));\n this.hook2 = () => {\n formItem.clearError('control:valdiate');\n return finalValidate(\n this.props.data,\n this.getValue(),\n name\n ).then((ret: any) => {\n if ((typeof ret === 'string' || Array.isArray(ret)) && ret) {\n formItem.addError(ret, 'control:valdiate');\n }\n });\n };\n addHook?.(this.hook2);\n }\n }\n\n componentDidUpdate(prevProps: OuterProps) {\n const props = this.props;\n const form = props.formStore;\n const model = this.model;\n\n if (\n model &&\n anyChanged(\n [\n 'id',\n 'validations',\n 'validationErrors',\n 'value',\n 'required',\n 'unique',\n 'multiple',\n 'delimiter',\n 'valueField',\n 'labelField',\n 'joinValues',\n 'extractValue',\n 'selectFirst',\n 'autoFill',\n 'clearValueOnHidden',\n 'validateApi'\n ],\n prevProps.$schema,\n props.$schema\n )\n ) {\n model.config({\n required: props.$schema.required,\n id: props.$schema.id,\n unique: props.$schema.unique,\n value: props.$schema.value,\n rules: props.$schema.validations,\n multiple: props.$schema.multiple,\n delimiter: props.$schema.delimiter,\n valueField: props.$schema.valueField,\n labelField: props.$schema.labelField,\n joinValues: props.$schema.joinValues,\n extractValue: props.$schema.extractValue,\n messages: props.$schema.validationErrors,\n selectFirst: props.$schema.selectFirst,\n autoFill: props.$schema.autoFill,\n clearValueOnHidden: props.$schema.clearValueOnHidden,\n validateApi: props.$schema.validateApi,\n minLength: props.minLength,\n maxLength: props.maxLength\n });\n }\n\n if (model && typeof props.value !== 'undefined') {\n // 自己控制的 value 优先\n if (\n props.value !== prevProps.value &&\n props.value !== model.tmpValue\n ) {\n model.changeTmpValue(props.value);\n }\n } else if (\n // 然后才是查看关联的 name 属性值是否变化\n model &&\n props.data !== prevProps.data &&\n (!model.emitedValue || model.emitedValue === model.tmpValue)\n ) {\n model.changeEmitedValue(undefined);\n const value = getVariable(props.data, model.name);\n const prevValue = getVariable(prevProps.data, model.name);\n if (\n (value !== prevValue ||\n getVariable(props.data, model.name, false) !==\n getVariable(prevProps.data, model.name, false)) &&\n value !== model.tmpValue\n ) {\n model.changeTmpValue(value);\n }\n }\n }\n\n componentWillUnmount() {\n this.hook && this.props.removeHook?.(this.hook);\n this.hook2 && this.props.removeHook?.(this.hook2);\n this.hook3 && this.props.removeHook?.(this.hook3, 'flush');\n // this.lazyEmitChange.flush();\n\n this.lazyEmitChange.cancel();\n this.reaction?.();\n this.disposeModel();\n }\n\n disposeModel() {\n const {formStore: form, formItem, rootStore} = this.props;\n\n if (\n this.model &&\n this.model.unique &&\n form?.parentStore &&\n form?.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.unBindUniuqueItem(this.model);\n }\n\n if (this.model) {\n formItem &&\n isAlive(formItem) &&\n formItem.removeSubFormItem(this.model);\n\n this.model.clearValueOnHidden &&\n this.model.form?.deleteValueByName(this.model.name);\n\n rootStore.removeStore(this.model);\n }\n delete this.model;\n }\n\n controlRef(control: any) {\n const {\n addHook,\n removeHook,\n formStore: form,\n $schema: {name}\n } = this.props;\n\n // 因为 control 有可能被 n 层 hoc 包裹。\n while (control && control.getWrappedInstance) {\n control = control.getWrappedInstance();\n }\n\n if (control && control.validate && this.model) {\n const formItem = this.model as IFormItemStore;\n let validate = promisify(control.validate.bind(control));\n this.hook = () => {\n formItem.clearError('component:valdiate');\n\n return validate(this.props.data, this.getValue(), name).then(\n ret => {\n if (\n (typeof ret === 'string' || Array.isArray(ret)) &&\n ret\n ) {\n formItem.setError(ret, 'component:valdiate');\n }\n }\n );\n };\n addHook?.(this.hook);\n } else if (!control && this.hook) {\n removeHook?.(this.hook);\n this.hook = undefined;\n }\n\n // 注册到 Scoped 上\n const originRef = this.control;\n this.control = control;\n const scoped = this.context as IScopedContext;\n\n if (!this.control) {\n return;\n }\n\n if (control) {\n scoped.registerComponent(this.control);\n } else {\n scoped.unRegisterComponent(originRef);\n }\n }\n\n validate() {\n const {formStore: form, data} = this.props;\n\n if (this.model) {\n if (\n this.model.unique &&\n form?.parentStore &&\n form.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n const group = combo.uniques.get(\n this.model.name\n ) as IUniqueGroup;\n group.items.forEach(item => item.validate(data));\n } else {\n this.model.validate(data, this.hook);\n form\n ?.getItemsByName(this.model.name)\n .forEach(item => item !== this.model && item.validate(data));\n }\n }\n }\n\n handleChange(\n value: any,\n submitOnChange: boolean = this.props.$schema.submitOnChange,\n changeImmediately: boolean = false\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n type,\n pipeOut,\n changeImmediately: conrolChangeImmediately\n },\n formInited,\n data\n } = this.props;\n\n if (\n !this.model ||\n // todo 以后想办法不要強耦合类型。\n ~[\n 'service',\n 'group',\n 'hbox',\n 'panel',\n 'grid',\n 'input-group'\n ].indexOf(type)\n ) {\n onChange && onChange.apply(null, arguments as any);\n return;\n }\n\n if (pipeOut) {\n const oldValue = this.model.value;\n value = pipeOut(value, oldValue, data);\n }\n\n this.model.changeTmpValue(value);\n\n if (changeImmediately || conrolChangeImmediately || !formInited) {\n this.emitChange(submitOnChange);\n } else {\n // this.props.onTmpValueChange?.(value, this.model.name);\n this.lazyEmitChange(submitOnChange);\n }\n }\n\n emitChange(\n submitOnChange: boolean = this.props.$schema.submitOnChange\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n name,\n id,\n label,\n type,\n onChange: onFormItemChange,\n maxLength,\n minLength\n },\n data,\n env,\n validateOnChange,\n formSubmited\n } = this.props;\n\n if (!this.model) {\n return;\n }\n const value = this.model.tmpValue;\n const oldValue = getVariable(data, this.model.name, false);\n\n if (oldValue === value) {\n return;\n }\n\n if (type !== 'input-password') {\n env?.tracker(\n {\n eventType: 'formItemChange',\n eventData: {\n id,\n name,\n label,\n type,\n value\n }\n },\n this.props\n );\n }\n\n this.model.changeEmitedValue(value);\n if (\n onFormItemChange?.(value, oldValue, this.model, form) === false\n ) {\n return;\n }\n const validated = this.model.validated;\n onChange?.(value, name!, submitOnChange === true);\n\n if (\n // 如果配置了 minLength 或者 maxLength 就切成及时验证\n this.model.rules.minLength ||\n this.model.rules.maxLength ||\n validateOnChange === true ||\n (validateOnChange !== false && (formSubmited || validated))\n ) {\n this.validate();\n } else if (validateOnChange === false) {\n this.model?.reset();\n }\n }\n\n handleBlur(e: any) {\n const {\n onBlur,\n $schema: {validateOnBlur}\n } = this.props;\n\n if (validateOnBlur && this.model) {\n this.validate();\n }\n\n onBlur && onBlur(e);\n }\n\n setPrinstineValue(value: any) {\n if (!this.model) {\n return;\n }\n\n const {\n formStore: form,\n name,\n $schema: {pipeOut},\n onChange,\n value: oldValue,\n data\n } = this.props;\n\n if (pipeOut) {\n value = pipeOut(value, oldValue, data);\n }\n\n onChange?.(value, name!, false, true);\n }\n\n getValue() {\n const {formStore: data, $schema: control} = this.props;\n let value: any = this.model ? this.model.tmpValue : control.value;\n\n if (control.pipeIn) {\n value = control.pipeIn(value, data);\n }\n\n return value;\n }\n\n // 兼容老版本用法,新版本直接用 onChange 就可以。\n setValue(value: any, key?: string) {\n const {\n $schema: {name},\n onBulkChange\n } = this.props;\n\n if (!key || key === name) {\n this.handleChange(value);\n } else {\n onBulkChange &&\n onBulkChange({\n [key]: value\n });\n }\n }\n\n render() {\n const {\n controlWidth,\n disabled,\n formMode,\n $schema: control,\n store,\n data,\n invisible\n } = this.props;\n\n if (invisible) {\n return null;\n }\n\n const value = this.getValue();\n const model = this.model;\n\n const injectedProps: any = {\n defaultSize: controlWidth,\n disabled: disabled || control.disabled,\n formItem: this.model,\n formMode: control.mode || formMode,\n ref: this.controlRef,\n data: data || store?.data,\n value,\n defaultValue: control.value,\n formItemValue: value, // 为了兼容老版本的自定义组件\n onChange: this.handleChange,\n\n onBlur: this.handleBlur,\n setValue: this.setValue,\n getValue: this.getValue,\n prinstine: model ? model.prinstine : undefined,\n setPrinstineValue: this.setPrinstineValue\n };\n\n return (\n <ComposedComponent\n {...(this.props as JSX.LibraryManagedAttributes<\n T,\n React.ComponentProps<T>\n >)}\n {...injectedProps}\n />\n );\n }\n }\n ) as any\n ),\n ComposedComponent\n );\n\n return result as typeof result & {\n ComposedComponent: T;\n };\n}\n"
11
+ "import React from 'react';\nimport {IFormStore, IFormItemStore} from '../../store/form';\nimport debouce from 'lodash/debounce';\n\nimport {RendererProps, Renderer} from '../../factory';\nimport {ComboStore, IComboStore, IUniqueGroup} from '../../store/combo';\nimport {\n anyChanged,\n promisify,\n isObject,\n guid,\n isEmpty,\n autobind,\n getVariable\n} from '../../utils/helper';\nimport {IIRendererStore, IRendererStore} from '../../store';\nimport {ScopedContext, IScopedContext} from '../../Scoped';\nimport {reaction} from 'mobx';\nimport {FormItemStore} from '../../store/formItem';\nimport {isAlive} from 'mobx-state-tree';\nimport {observer} from 'mobx-react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {withRootStore} from '../../WithRootStore';\nimport {FormBaseControl, FormItemWrap} from './Item';\nimport {Api} from '../../types';\nimport {TableStore} from '../../store/table';\n\nexport interface ControlOutterProps extends RendererProps {\n formStore?: IFormStore;\n name?: string;\n value?: any;\n id?: string;\n type?: string;\n required?: boolean;\n validations: string | {[propsName: string]: any};\n validationErrors: {[propsName: string]: any};\n validateOnChange: boolean;\n multiple?: boolean;\n delimiter?: string;\n joinValues?: boolean;\n extractValue?: boolean;\n valueField?: string;\n labelField?: string;\n unique?: boolean;\n selectFirst?: boolean;\n autoFill?: any;\n clearValueOnHidden?: boolean;\n validateApi?: Api;\n submitOnChange?: boolean;\n validate?: (value: any, values: any, name: string) => any;\n formItem?: IFormItemStore;\n addHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n removeHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n $schema: {\n pipeIn?: (value: any, data: any) => any;\n pipeOut?: (value: any, originValue: any, data: any) => any;\n [propName: string]: any;\n };\n store?: IIRendererStore;\n onChange?: (\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) => void;\n}\n\nexport interface ControlProps {\n onBulkChange?: (values: Object) => void;\n onChange?: (value: any, name: string, submit: boolean) => void;\n store: IIRendererStore;\n}\n\nexport function wrapControl<\n T extends React.ComponentType<React.ComponentProps<T> & ControlProps>\n>(ComposedComponent: T) {\n type OuterProps = JSX.LibraryManagedAttributes<\n T,\n Omit<React.ComponentProps<T>, keyof ControlProps>\n > &\n ControlOutterProps;\n\n const result = hoistNonReactStatic(\n withRootStore(\n observer(\n class extends React.Component<OuterProps> {\n public model: IFormItemStore | undefined;\n control?: any;\n value?: any = undefined;\n hook?: () => any;\n hook2?: () => any;\n hook3?: () => any;\n reaction?: () => void;\n\n static contextType = ScopedContext;\n static defaultProps = {};\n\n lazyEmitChange = debouce(this.emitChange.bind(this), 250, {\n trailing: true,\n leading: false\n });\n\n constructor(props: OuterProps) {\n super(props);\n\n const {\n formStore: form,\n formItem,\n rootStore,\n store,\n onChange,\n data,\n $schema: {\n name,\n id,\n type,\n required,\n validations,\n validationErrors,\n unique,\n value,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength,\n validateOnChange\n }\n } = this.props;\n\n this.getValue = this.getValue.bind(this);\n this.setValue = this.setValue.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.setPrinstineValue = this.setPrinstineValue.bind(this);\n this.controlRef = this.controlRef.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n\n if (!name) {\n return;\n }\n\n let propValue = this.props.value;\n const model = rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: FormItemStore.name,\n parentId: store?.id,\n name\n }) as IFormItemStore;\n this.model = model;\n // @issue 打算干掉这个\n formItem?.addSubFormItem(model);\n model.config({\n id,\n type,\n required,\n unique,\n value,\n rules: validations,\n messages: validationErrors,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength,\n validateOnChange\n });\n\n // issue 这个逻辑应该在 combo 里面自己实现。\n if (\n this.model.unique &&\n form?.parentStore?.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.bindUniuqueItem(model);\n }\n\n // 同步 value\n model.changeTmpValue(\n propValue ?? store?.getValueByName(model.name) ?? value\n );\n\n // 如果没有初始值,通过 onChange 设置过去\n if (\n onChange &&\n typeof propValue === 'undefined' &&\n typeof store?.getValueByName(model.name, false) === 'undefined' &&\n // todo 后续再优化这个判断,\n // 目前 input-table 中默认值会给冲掉,所以加上这个判断\n // 对应 issue 为 https://github.com/baidu/amis/issues/2674\n store?.storeType !== TableStore.name\n ) {\n onChange(model.tmpValue, model.name, false, true);\n }\n }\n\n componentDidMount() {\n const {\n store,\n formStore: form,\n $schema: {name, validate},\n addHook\n } = this.props;\n\n // 提交前先把之前的 lazyEmit 执行一下。\n this.hook3 = () => {\n this.lazyEmitChange.flush();\n };\n addHook?.(this.hook3, 'flush');\n\n const formItem = this.model as IFormItemStore;\n if (formItem && validate) {\n let finalValidate = promisify(validate.bind(formItem));\n this.hook2 = () => {\n formItem.clearError('control:valdiate');\n return finalValidate(\n this.props.data,\n this.getValue(),\n name\n ).then((ret: any) => {\n if ((typeof ret === 'string' || Array.isArray(ret)) && ret) {\n formItem.addError(ret, 'control:valdiate');\n }\n });\n };\n addHook?.(this.hook2);\n }\n }\n\n componentDidUpdate(prevProps: OuterProps) {\n const props = this.props;\n const form = props.formStore;\n const model = this.model;\n\n if (\n model &&\n anyChanged(\n [\n 'id',\n 'validations',\n 'validationErrors',\n 'value',\n 'required',\n 'unique',\n 'multiple',\n 'delimiter',\n 'valueField',\n 'labelField',\n 'joinValues',\n 'extractValue',\n 'selectFirst',\n 'autoFill',\n 'clearValueOnHidden',\n 'validateApi'\n ],\n prevProps.$schema,\n props.$schema\n )\n ) {\n model.config({\n required: props.$schema.required,\n id: props.$schema.id,\n unique: props.$schema.unique,\n value: props.$schema.value,\n rules: props.$schema.validations,\n multiple: props.$schema.multiple,\n delimiter: props.$schema.delimiter,\n valueField: props.$schema.valueField,\n labelField: props.$schema.labelField,\n joinValues: props.$schema.joinValues,\n extractValue: props.$schema.extractValue,\n messages: props.$schema.validationErrors,\n selectFirst: props.$schema.selectFirst,\n autoFill: props.$schema.autoFill,\n clearValueOnHidden: props.$schema.clearValueOnHidden,\n validateApi: props.$schema.validateApi,\n minLength: props.minLength,\n maxLength: props.maxLength\n });\n }\n\n if (model && typeof props.value !== 'undefined') {\n // 自己控制的 value 优先\n if (\n props.value !== prevProps.value &&\n props.value !== model.tmpValue\n ) {\n model.changeTmpValue(props.value);\n }\n } else if (\n // 然后才是查看关联的 name 属性值是否变化\n model &&\n props.data !== prevProps.data &&\n (!model.emitedValue || model.emitedValue === model.tmpValue)\n ) {\n model.changeEmitedValue(undefined);\n const value = getVariable(props.data, model.name);\n const prevValue = getVariable(prevProps.data, model.name);\n if (\n (value !== prevValue ||\n getVariable(props.data, model.name, false) !==\n getVariable(prevProps.data, model.name, false)) &&\n value !== model.tmpValue\n ) {\n model.changeTmpValue(value);\n }\n }\n }\n\n componentWillUnmount() {\n this.hook && this.props.removeHook?.(this.hook);\n this.hook2 && this.props.removeHook?.(this.hook2);\n this.hook3 && this.props.removeHook?.(this.hook3, 'flush');\n // this.lazyEmitChange.flush();\n\n this.lazyEmitChange.cancel();\n this.reaction?.();\n this.disposeModel();\n }\n\n disposeModel() {\n const {formStore: form, formItem, rootStore} = this.props;\n\n if (\n this.model &&\n this.model.unique &&\n form?.parentStore &&\n form?.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.unBindUniuqueItem(this.model);\n }\n\n if (this.model) {\n formItem &&\n isAlive(formItem) &&\n formItem.removeSubFormItem(this.model);\n\n this.model.clearValueOnHidden &&\n this.model.form?.deleteValueByName(this.model.name);\n\n isAlive(rootStore) && rootStore.removeStore(this.model);\n }\n delete this.model;\n }\n\n controlRef(control: any) {\n const {\n addHook,\n removeHook,\n formStore: form,\n $schema: {name}\n } = this.props;\n\n // 因为 control 有可能被 n 层 hoc 包裹。\n while (control && control.getWrappedInstance) {\n control = control.getWrappedInstance();\n }\n\n if (control && control.validate && this.model) {\n const formItem = this.model as IFormItemStore;\n let validate = promisify(control.validate.bind(control));\n this.hook = () => {\n formItem.clearError('component:valdiate');\n\n return validate(this.props.data, this.getValue(), name).then(\n ret => {\n if (\n (typeof ret === 'string' || Array.isArray(ret)) &&\n ret\n ) {\n formItem.setError(ret, 'component:valdiate');\n }\n }\n );\n };\n addHook?.(this.hook);\n } else if (!control && this.hook) {\n removeHook?.(this.hook);\n this.hook = undefined;\n }\n\n // 注册到 Scoped 上\n const originRef = this.control;\n this.control = control;\n const scoped = this.context as IScopedContext;\n\n if (!this.control) {\n return;\n }\n\n if (control) {\n scoped.registerComponent(this.control);\n } else {\n scoped.unRegisterComponent(originRef);\n }\n }\n\n validate() {\n const {formStore: form, data} = this.props;\n\n if (this.model) {\n if (\n this.model.unique &&\n form?.parentStore &&\n form.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n const group = combo.uniques.get(\n this.model.name\n ) as IUniqueGroup;\n group.items.forEach(item => item.validate(data));\n } else {\n this.model.validate(data, this.hook);\n form\n ?.getItemsByName(this.model.name)\n .forEach(item => item !== this.model && item.validate(data));\n }\n }\n }\n\n handleChange(\n value: any,\n submitOnChange: boolean = this.props.$schema.submitOnChange,\n changeImmediately: boolean = false\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n type,\n pipeOut,\n changeImmediately: conrolChangeImmediately\n },\n formInited,\n data\n } = this.props;\n\n if (\n !this.model ||\n // todo 以后想办法不要強耦合类型。\n ~[\n 'service',\n 'group',\n 'hbox',\n 'panel',\n 'grid',\n 'input-group'\n ].indexOf(type)\n ) {\n onChange && onChange.apply(null, arguments as any);\n return;\n }\n\n if (pipeOut) {\n const oldValue = this.model.value;\n value = pipeOut(value, oldValue, data);\n }\n\n this.model.changeTmpValue(value);\n\n if (changeImmediately || conrolChangeImmediately || !formInited) {\n this.emitChange(submitOnChange);\n } else {\n // this.props.onTmpValueChange?.(value, this.model.name);\n this.lazyEmitChange(submitOnChange);\n }\n }\n\n emitChange(\n submitOnChange: boolean = this.props.$schema.submitOnChange\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n name,\n id,\n label,\n type,\n onChange: onFormItemChange,\n maxLength,\n minLength\n },\n data,\n env,\n validateOnChange,\n formSubmited\n } = this.props;\n\n if (!this.model) {\n return;\n }\n const value = this.model.tmpValue;\n const oldValue = getVariable(data, this.model.name, false);\n\n if (oldValue === value) {\n return;\n }\n\n if (type !== 'input-password') {\n env?.tracker(\n {\n eventType: 'formItemChange',\n eventData: {\n id,\n name,\n label,\n type,\n value\n }\n },\n this.props\n );\n }\n\n this.model.changeEmitedValue(value);\n if (\n onFormItemChange?.(value, oldValue, this.model, form) === false\n ) {\n return;\n }\n const validated = this.model.validated;\n onChange?.(value, name!, submitOnChange === true);\n\n if (\n // 如果配置了 minLength 或者 maxLength 就切成及时验证\n this.model.rules.minLength ||\n this.model.rules.maxLength ||\n validateOnChange === true ||\n (validateOnChange !== false && (formSubmited || validated))\n ) {\n this.validate();\n } else if (validateOnChange === false) {\n this.model?.reset();\n }\n }\n\n handleBlur(e: any) {\n const {\n onBlur,\n $schema: {validateOnBlur}\n } = this.props;\n\n if (validateOnBlur && this.model) {\n this.validate();\n }\n\n onBlur && onBlur(e);\n }\n\n setPrinstineValue(value: any) {\n if (!this.model) {\n return;\n }\n\n const {\n formStore: form,\n name,\n $schema: {pipeOut},\n onChange,\n value: oldValue,\n data\n } = this.props;\n\n if (pipeOut) {\n value = pipeOut(value, oldValue, data);\n }\n\n onChange?.(value, name!, false, true);\n }\n\n getValue() {\n const {formStore: data, $schema: control} = this.props;\n let value: any = this.model ? this.model.tmpValue : control.value;\n\n if (control.pipeIn) {\n value = control.pipeIn(value, data);\n }\n\n return value;\n }\n\n // 兼容老版本用法,新版本直接用 onChange 就可以。\n setValue(value: any, key?: string) {\n const {\n $schema: {name},\n onBulkChange\n } = this.props;\n\n if (!key || key === name) {\n this.handleChange(value);\n } else {\n onBulkChange &&\n onBulkChange({\n [key]: value\n });\n }\n }\n\n render() {\n const {\n controlWidth,\n disabled,\n formMode,\n $schema: control,\n store,\n data,\n invisible\n } = this.props;\n\n if (invisible) {\n return null;\n }\n\n const value = this.getValue();\n const model = this.model;\n\n const injectedProps: any = {\n defaultSize: controlWidth,\n disabled: disabled || control.disabled,\n formItem: this.model,\n formMode: control.mode || formMode,\n ref: this.controlRef,\n data: data || store?.data,\n value,\n defaultValue: control.value,\n formItemValue: value, // 为了兼容老版本的自定义组件\n onChange: this.handleChange,\n\n onBlur: this.handleBlur,\n setValue: this.setValue,\n getValue: this.getValue,\n prinstine: model ? model.prinstine : undefined,\n setPrinstineValue: this.setPrinstineValue\n };\n\n return (\n <ComposedComponent\n {...(this.props as JSX.LibraryManagedAttributes<\n T,\n React.ComponentProps<T>\n >)}\n {...injectedProps}\n />\n );\n }\n }\n ) as any\n ),\n ComposedComponent\n );\n\n return result as typeof result & {\n ComposedComponent: T;\n };\n}\n"
12
12
  ]
13
13
  }
@@ -294,13 +294,13 @@ var ConditionBuilderWithRemoteOptions = (0, WithRemoteConfig_1.withRemoteConfig)
294
294
  if (Array.isArray(links) && motivation !== 'toggle') {
295
295
  var data_1 = props.data, env_1 = props.env, unfoldedField_1 = props.unfoldedField, foldedField_1 = props.foldedField;
296
296
  links = (0, helper_1.mapTree)(links, function (link) {
297
- var _a, _b;
297
+ var _a;
298
298
  var item = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, link), (0, filter_schema_1.default)(link, data_1)), { active: (motivation !== 'location-change' && link.active) ||
299
299
  (link.activeOn
300
300
  ? (0, tpl_1.evalExpression)(link.activeOn, data_1)
301
301
  : !!(link.hasOwnProperty('to') &&
302
302
  env_1 &&
303
- env_1.isCurrentUrl((0, tpl_1.filter)(link.to, data_1)))), __id: (_b = (_a = link.id) !== null && _a !== void 0 ? _a : link.__id) !== null && _b !== void 0 ? _b : (0, helper_1.guid)() });
303
+ env_1.isCurrentUrl((0, tpl_1.filter)(link.to, data_1)))), __id: (_a = link.__id) !== null && _a !== void 0 ? _a : (0, helper_1.guid)() });
304
304
  item.unfolded =
305
305
  (0, helper_1.isUnfolded)(item, { unfoldedField: unfoldedField_1, foldedField: foldedField_1 }) ||
306
306
  (link.children && link.children.some(function (link) { return !!link.active; }));
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Nav.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";;;;AAAA,6DAA0B;AAC1B,uCAAsC;AACtC,sCAAgE;AAChE,sFAAuD;AACvD,oCAAoD;AACpD,0CAUyB;AACzB,oCAAwD;AACxD,kCAA+C;AAC/C,6CAAyC;AAQzC,sCAA2C;AAC3C,mEAGwC;AAExC,+EAA4C;AAC5C,oCAA4C;AAC5C,6CAAuD;AA6IvD;IAAgC,2CAG/B;IAHD;QAAA,qEA+SC;QAlSC,gBAAU,GAGN;YACF,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;SACL,CAAC;QACF,WAAK,GAAoB,EAAE,CAAC;;IA2R9B,CAAC;IAxRC,gCAAW,GAAX,UAAY,IAAU;QACd,IAAA,KAAkB,IAAI,CAAC,KAAK,EAA3B,GAAG,SAAA,EAAE,QAAQ,cAAc,CAAC;QACnC,qBAAqB;QACrB,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE;YACnB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC;gBACX,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE;oBACT,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,EAAE;iBACd;aACF,CAAC,CAAC;SACJ;QAED,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,IAAI,CAAC,CAAC;IACnB,CAAC;IAGD,+BAAU,GAAV,UAAW,MAAY,EAAE,SAAmB;;QAC1C,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAGD,gCAAW,GAAX,UAAY,CAAY,EAAE,EAAU,EAAE,KAAa;;QAC3C,IAAA,KAAgC,IAAI,CAAC,KAAK,EAAzC,eAAe,qBAAA,EAAE,UAAU,gBAAc,CAAC;QACjD,IAAI,IAAI,GAAI,CAAC,CAAC,MAAsB,CAAC,qBAAqB,EAAE,CAAC;QAC7D,IAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAY,CAAC;QACtC,IAAA,GAAG,GAAmB,IAAI,IAAvB,EAAE,MAAM,GAAW,IAAI,OAAf,EAAE,KAAK,GAAI,IAAI,MAAR,CAAS;QAC7B,IAAA,OAAO,GAAa,CAAC,QAAd,EAAE,OAAO,GAAI,CAAC,QAAL,CAAM;QAC3B,IAAM,IAAI,GAAG,KAAK,GAAG,CAAC,MAAA,QAAQ,CAAC,UAAiB,EAAE,EAAE,CAAC,mCAAI,EAAE,CAAC,CAAC;QAC7D,IAAM,MAAM,GAAG,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC;QAClC,IAAI,QAAQ,CAAC;QACb,IAAI,OAAO,IAAI,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE;YAC/B,QAAQ,GAAG,QAAQ,CAAC;SACrB;aAAM;YACL,QAAQ,GAAG,KAAK,CAAC;SAClB;QACD,IACE,CAAC,eAAe;YAChB,QAAQ,KAAK,QAAQ;YACrB,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,MAAM,EACrC;YACA,QAAQ,GAAG,MAAM,CAAC;SACnB;QACD,OAAO;YACL,MAAM,EAAE,EAAE;YACV,QAAQ,UAAA;YACR,QAAQ,UAAA;YACR,IAAI,MAAA;YACJ,MAAM,QAAA;YACN,IAAI,MAAA;SACL,CAAC;IACJ,CAAC;IAED,wCAAmB,GAAnB,UAAoB,CAAY;;QACvB,IAAA,eAAe,GAAI,IAAI,CAAC,KAAK,gBAAd,CAAe;QACrC,IAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC,CAAC,MAAM;QAC9C,IAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAW,CAAC;QAC1D,IAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9D,IACE,eAAe;YACf,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,CAAC,aAAa,OAAK,MAAA,MAAM,CAAC,aAAa,0CAAE,aAAa,CAAA,EACzE;YACA,IAAI,CAAC,QAAQ,CAAC,EAAC,aAAa,EAAE,SAAS,EAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,OAAO;SACR;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QACvD,IAAA,KAA2C,IAAI,CAAC,QAAQ,EAAvD,QAAQ,cAAA,EAAE,IAAI,UAAA,EAAE,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAiB,CAAC;QAC7D,IAAI,QAAQ,MAAK,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAA,EAAE;YAC/B,IAAI,CAAC,QAAQ,CAAC,EAAC,aAAa,EAAE,SAAS,EAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,OAAO;SACR;QACD,IAAM,EAAE,GAAI,IAAA,uBAAW,EAAC,IAAI,CAAiB,CAAC,UAAyB,CAAC;QACxE,IAAI,QAAQ,KAAK,MAAM,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC;gBACZ,aAAa,EAAE;oBACb,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,GAAG;oBAC9C,IAAI,MAAA;oBACJ,KAAK,EAAE,EAAE,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI;oBAC9C,MAAM,QAAA;oBACN,OAAO,EAAE,GAAG;iBACb;aACF,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC;gBACZ,aAAa,EAAE;oBACb,GAAG,EACD,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC3D,EAAE,CAAC,qBAAqB,EAAE,CAAC,GAAG;oBAChC,IAAI,MAAA;oBACJ,KAAK,EAAE,EAAE,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI;iBAC/C;aACF,CAAC,CAAC;SACJ;IACH,CAAC;IAGD,oCAAe,GAAf,UAAgB,IAAU;QAD1B,iBAmBC;QAjBC,OAAO,UAAC,CAAkB;YACxB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAM,aAAa,GAAG,CAAC,CAAC,aAA4B,CAAC;YACrD,CAAC,CAAC,YAAY,CAAC,aAAa,GAAG,UAAU,CAAC;YAC1C,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjD,KAAI,CAAC,QAAQ,GAAG;gBACd,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,IAAI;aACX,CAAC;YACF,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,KAAI,CAAC,UAAU,GAAG;gBAChB,CAAC,EAAE,CAAC,CAAC,OAAO;gBACZ,CAAC,EAAE,CAAC,CAAC,OAAO;aACb,CAAC;YACF,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAI,CAAC,aAAa,CAAC,CAAC;YAC9D,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAI,CAAC,cAAc,CAAC,CAAC;QAClE,CAAC,CAAC;IACJ,CAAC;IAGD,mCAAc,GAAd,UAAe,CAAY;QACzB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO;SACR;QACD,IAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,IAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,EAAE;YACP,OAAO;SACR;QACD,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAGD,kCAAa,GAAb,UAAc,CAAY;;QACxB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC;YACZ,aAAa,EAAE,SAAS;SACzB,CAAC,CAAC;QACH,IAAM,aAAa,GAAG,CAAC,CAAC,aAA4B,CAAC;QACrD,IAAM,EAAE,GAAG,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,MAAM,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,EAAE,KAAK,MAAM,EAAE;YAC9C,OAAO;SACR;QACD,aAAa,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACjE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAEnE,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,YAAY,mDAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,+BAAU,GAAV,UAAW,IAAU,EAAE,KAAa,EAAE,KAAS;QAA/C,iBAoGC;;QApGqC,sBAAA,EAAA,SAAS;QAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE;YAClD,OAAO,IAAI,CAAC;SACb;QACD,IAAM,QAAQ,GAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QAClC,IAAA,KAWF,IAAI,CAAC,KAAK,EAVZ,QAAQ,cAAA,EACR,gBAAgB,sBAAA,EACJ,EAAE,gBAAA,EACd,UAAU,gBAAA,EACV,MAAM,YAAA,EACN,WAAW,iBAAA,EACX,SAAS,eAAA,EACT,KAAK,WAAA,EACL,SAAS,eAAA,EACH,WAAW,UACL,CAAC;QACf,IAAM,MAAM,GACV,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1E,OAAO,CACL,sCACE,GAAG,EAAE,IAAI,CAAC,IAAI,aACL,IAAI,CAAC,IAAI,EAClB,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE;gBACxC,aAAa,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO;gBACxD,WAAW,EAAE,QAAQ;gBACrB,aAAa,EAAE,IAAI,CAAC,QAAQ;gBAC5B,SAAS,EAAE,MAAM;aAClB,CAAC,EACF,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAEvC,8BAAC,aAAK,IACJ,UAAU,EAAE,EAAE,EACd,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,IAAA,qBAAY,EAAC,WAAW,EAAE,IAAI,CAAC;gBAErC,gDACW,IAAI,CAAC,IAAI,gBACN,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAC1C,KAAK,EAAE;wBACL,WAAW,EAAE,KAAK,GAAG,CAAC,MAAA,QAAQ,CAAC,UAAiB,EAAE,EAAE,CAAC,mCAAI,EAAE,CAAC;qBAC7D;oBAEA,CAAC,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC,CACxB,uCACE,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAC/B,SAAS,QACT,WAAW,EAAE,UAAA,CAAC;4BACZ,KAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;4BAC5B,CAAC,CAAC,eAAe,EAAE,CAAC;wBACtB,CAAC;wBAED,8BAAC,YAAI,IAAC,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,MAAM,GAAG,CACrC,CACP,CAAC,CAAC,CAAC,IAAI;oBACP,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACd,8BAAC,iBAAO,IACN,IAAI,EAAC,IAAI,EACT,IAAI,QACJ,IAAI,EAAC,QAAQ,EACb,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,GACnC,CACH,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CACX,wCACE,OAAO,EAAE,UAAA,CAAC;4BACR,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;4BACtB,CAAC,CAAC,eAAe,EAAE,CAAC;wBACtB,CAAC,EACD,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;wBAElD,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACjC,CACR,CAAC,CAAC,CAAC,IAAI;oBACP,IAAA,mBAAY,EAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;oBAC3C,IAAI,CAAC,KAAK;wBACT,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;4BAC7B,CAAC,CAAC,IAAI,CAAC,KAAK;4BACZ,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAyB,CAAC,CAAC,CACrD;gBAEF,OAAO;gBACP,WAAW,CAAC,CAAC,CAAC,CACZ,uCAAK,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,IACnC,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE;oBAC7B,IAAI,EAAE,IAAA,qBAAY,EAAC,WAAW,EAAE,IAAI,CAAC;iBACtC,CAAC,CACE,CACP,CAAC,CAAC,CAAC,IAAI;gBAET,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CACtD,sCAAI,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,IAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;oBAC7B,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC;gBAAvC,CAAuC,CACxC,CACE,CACN,CAAC,CAAC,CAAC,IAAI,CACF,CACL,CACN,CAAC;IACJ,CAAC;IAED,2BAAM,GAAN;QAAA,iBAuBC;QAtBO,IAAA,KAAuD,IAAI,CAAC,KAAK,EAAhE,SAAS,eAAA,EAAE,OAAO,aAAA,EAAc,EAAE,gBAAA,EAAE,KAAK,WAAA,EAAE,OAAO,aAAc,CAAC;QACjE,IAAA,aAAa,GAAI,IAAI,CAAC,KAAK,cAAd,CAAe;QACnC,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC;YACvB,sCACE,SAAS,EAAE,EAAE,CACX,UAAU,EACV,SAAS,EACT,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CACjD;gBAEA,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBACnB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK,IAAK,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,EAA5B,CAA4B,CAAC;oBAC1D,CAAC,CAAC,IAAI;gBAER,8BAAC,iBAAO,IAAC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,QAAC,IAAI,EAAC,QAAQ,GAAG,CAC/C;YACJ,aAAa,CAAC,CAAC,CAAC,CACf,uCAAK,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,aAAa,GAAI,CAClE,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC;IACJ,CAAC;;IA1SM,uBAAY,GAAG;QACpB,UAAU,EAAE,EAAE;KACf,CAAC;IAiBF;QADC,iBAAQ;;;;iDAeR;IAGD;QADC,iBAAQ;;;;gDAGR;IAGD;QADC,iBAAQ;;0EACM,SAAS,oBAAT,SAAS;;iDA6BvB;IAED;QADC,iBAAQ;;0EACc,SAAS,oBAAT,SAAS;;yDA0C/B;IAGD;QADC,iBAAQ;;;;qDAmBR;IAGD;QADC,iBAAQ;;0EACS,SAAS,oBAAT,SAAS;;oDAY1B;IAGD;QADC,iBAAQ;;0EACQ,SAAS,oBAAT,SAAS;;mDAkBzB;IAgIH,iBAAC;CAAA,AA/SD,CAAgC,eAAK,CAAC,SAAS,GA+S9C;AA/SY,gCAAU;AAiTvB,IAAM,gBAAgB,GAAG,IAAA,iBAAS,EAAC,UAAU,CAAC,CAAC;AAE/C,IAAM,iCAAiC,GAAG,IAAA,mCAAgB,EAAC;IACzD,OAAO,EAAE,UAAC,MAAW,EAAE,KAAU;QAC/B,IAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACjC,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC;QAElE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;SACvD;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,EAAE,UAAC,QAAa,EAAE,MAAW,EAAE,KAAU;QAChD,IAAI,QAAQ,CAAC,KAAK,IAAI,CAAC,IAAA,iBAAQ,EAAC,MAAM,EAAE,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,MAAM,EAAX,CAAW,CAAC,EAAE;YACrD,IAAA,GAAG,GAAI,KAAK,IAAT,CAAU;YAEpB,GAAG,CAAC,MAAM,CAAC,IAAA,YAAM,EAAC,QAAQ,CAAC,KAAe,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;SAC1D;IACH,CAAC;IACD,eAAe,EAAf,UACE,KAAkB,EAClB,MAA+B,EAC/B,KAAU,EACV,UAAmB;QAEnB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,KAAK,QAAQ,EAAE;YAC5C,IAAA,MAAI,GAAqC,KAAK,KAA1C,EAAE,KAAG,GAAgC,KAAK,IAArC,EAAE,eAAa,GAAiB,KAAK,cAAtB,EAAE,aAAW,GAAI,KAAK,YAAT,CAAU;YAEtD,KAAK,GAAG,IAAA,gBAAO,EACb,KAAK,EACL,UAAC,IAAU;;gBACT,IAAM,IAAI,yEACL,IAAI,GACJ,IAAA,uBAAiB,EAAC,IAAI,EAAE,MAAc,CAAC,KAC1C,MAAM,EACJ,CAAC,UAAU,KAAK,iBAAiB,IAAI,IAAI,CAAC,MAAM,CAAC;wBACjD,CAAC,IAAI,CAAC,QAAQ;4BACZ,CAAC,CAAC,IAAA,oBAAc,EAAC,IAAI,CAAC,QAAkB,EAAE,MAAI,CAAC;4BAC/C,CAAC,CAAC,CAAC,CAAC,CACA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;gCACzB,KAAG;gCACH,KAAG,CAAC,YAAY,CAAC,IAAA,YAAM,EAAC,IAAI,CAAC,EAAY,EAAE,MAAI,CAAC,CAAC,CAClD,CAAC,EACR,IAAI,EAAE,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAA,aAAI,GAAE,GAC1B,CAAC;gBAEF,IAAI,CAAC,QAAQ;oBACX,IAAA,mBAAU,EAAC,IAAI,EAAE,EAAC,aAAa,iBAAA,EAAE,WAAW,eAAA,EAAC,CAAC;wBAC9C,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAA,IAAI,IAAI,OAAA,CAAC,CAAC,IAAI,CAAC,MAAM,EAAb,CAAa,CAAC,CAAC,CAAC;gBAE/D,OAAO,IAAI,CAAC;YACd,CAAC,EACD,CAAC,EACD,IAAI,CACL,CAAC;SACH;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,eAAe,EAAf,UAAgB,IAAU,EAAE,OAAsB,EAAE,KAAkB;QACpE,OAAO,IAAA,mBAAU,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,kDAC9B,IAAI,KACP,OAAO,EAAE,IAAI,IACb,CAAC;IACL,CAAC;IAED,cAAc,EAAd,UACE,IAAU,EACV,OAAsB,EACtB,GAAY,EACZ,KAAkB;QAElB,IAAM,OAAO,mDACR,IAAI,KACP,OAAO,EAAE,KAAK,EACd,MAAM,EAAE,IAAI,EACZ,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GACpC,CAAC;QAEF,IAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YACtC,CAAC,CAAC,GAAG,CAAC,IAAI;YACV,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAE1E,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;SACzB;QAED,OAAO,IAAA,mBAAU,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;CACF,CAAC;IACc,wCAUb;IACC,iBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SAIb;QAHC,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7C,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACjD,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;;IAC/C,CAAC;IAED,mCAAiB,GAAjB;QACE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACnC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACpD;IACH,CAAC;IAED,oCAAkB,GAAlB,UAAmB,SAAc;QAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ,EAAE;YAC9C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;SAC/D;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,EAAE;YAC/C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;SACrD;IACH,CAAC;IAED,4BAAU,GAAV,UAAW,MAAY,EAAE,SAAmB;QACpC,IAAA,KAAoC,IAAI,CAAC,KAAK,EAA7C,MAAM,YAAA,EAAE,YAAY,kBAAA,EAAE,SAAS,eAAc,CAAC;QAErD,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAClC,SAAS,CAAC,MAAM,CAAC,CAAC;SACnB;aAAM;YACL,YAAY,CACV,IAAA,gBAAO,EAAC,MAAM,EAAE,UAAC,IAAU;gBACzB,OAAA,MAAM,KAAK,IAAI;oBACb,CAAC,iDACM,IAAI,KACP,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAEhD,CAAC,CAAC,IAAI;YALR,CAKQ,CACT,EACD,QAAQ,CACT,CAAC;SACH;IACH,CAAC;IAEK,4BAAU,GAAhB,UAAiB,QAAmB;;;;;;wBAC9B,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;wBACvB,MAAM,GAAwB,QAAQ,OAAhC,EAAE,QAAQ,GAAc,QAAQ,SAAtB,EAAE,QAAQ,GAAI,QAAQ,SAAZ,CAAa;wBAC9C,IAAI,QAAQ,EAAE;4BAEN,SAAS,GAAG,IAAA,sBAAa,EAC7B,KAAK,EACL,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAA3B,CAA2B,CACxB,CAAC;4BACd,KAAK,GAAG,IAAA,mBAAU,EAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;4BAExC,IAAI,QAAQ,KAAK,MAAM,EAAE;gCACvB,oBAAoB;gCACpB,IAAA,gBAAO,EAAC,KAAK,EAAE,UAAA,IAAI;oCACjB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;wCACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;4CAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;yCACpB;wCACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qCAC9B;oCACD,OAAO,IAAI,CAAC;gCACd,CAAC,CAAC,CAAC;6BACJ;iCAAM;gCAEC,GAAG,GAAG,IAAA,sBAAa,EACvB,KAAK,EACL,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,IAAI,KAAK,MAAM,EAApB,CAAoB,CACjB,CAAC;gCACd,SAAS;gCACT,IAAI,QAAQ,KAAK,QAAQ,EAAE;oCACzB,GAAG,CAAC,IAAI,CAAE,GAAG,CAAC,GAAG,EAAa,GAAG,CAAC,CAAC,CAAC;iCACrC;gCACD,KAAK,GAAG,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;6BAC7C;yBACF;wBACD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;wBACzC,qBAAM,IAAI,CAAC,SAAS,CAClB,IAAA,gBAAO,EAAC,KAAK,EAAE,UAAC,IAAU;gCACxB,WAAW;gCACX,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;oCACpB,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;wCACtB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;qCAClB;iCACF;gCACD,OAAO,IAAI,CAAC;4BACd,CAAC,CAAC,CACH,EAAA;;wBAVD,SAUC,CAAC;;;;;KACH;IAEK,2BAAS,GAAf,UAAgB,KAAY;;;;;;wBACpB,KAAoC,IAAI,CAAC,KAAK,EAA7C,YAAY,kBAAA,EAAE,GAAG,SAAA,EAAE,IAAI,UAAA,EAAE,MAAM,YAAA,CAAe;6BACjD,CAAA,YAAY,IAAI,IAAA,oBAAc,EAAC,YAAY,CAAC,CAAA,EAA5C,wBAA4C;wBAC9C,qBAAM,GAAG,CAAC,OAAO,CACf,YAAyB,EACzB,IAAA,qBAAY,EAAC,IAAI,EAAE,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC,EACjC,EAAC,MAAM,EAAE,MAAM,EAAC,CACjB,EAAA;;wBAJD,SAIC,CAAC;wBACF,MAAM,EAAE,CAAC;;;wBAET,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;;;;;;KAE9C;IAED,8BAAY,GAAZ,UAAa,IAAU;QACf,IAAA,KAAwB,IAAI,CAAC,KAAK,EAAjC,QAAQ,cAAA,EAAE,GAAG,SAAA,EAAE,IAAI,UAAc,CAAC;QACzC,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE;YACxC,OAAO;SACR;QAED,IACE,CAAC,IAAI,CAAC,EAAE;YACR,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACtC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAC/B;YACA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO;SACR;QAED,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,CAAC,IAAA,YAAM,EAAC,IAAI,CAAC,EAAY,EAAE,IAAI,CAAC,EAAE,IAAW,CAAC,CAAC;IAC5D,CAAC;IAED,wBAAM,GAAN;QACE,IAAM,KAAsD,IAAI,CAAC,KAAK,EAA/D,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,SAAS,eAAA,EAAE,YAAY,kBAAA,EAAK,IAAI,2BAAlD,kDAAmD,CAAa,CAAC;QACvE,OAAO,CACL,8BAAC,gBAAgB,4BACX,IAAI,IACR,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,IAAI,EAAE,EACnB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,QAAQ,EAAE,IAAI,CAAC,UAAU,EACzB,YAAY,EAAE,IAAI,CAAC,UAAU,IAC7B,CACH,CAAC;IACJ,CAAC;IACH,cAAC;AAAD,CAAC,AAnJD,CAAc,eAAK,CAAC,SAAS,GAoJ9B,CAAC;AAEF,kBAAe,gBAAgB,CAAC;AAKhC;IAAwC,mDAA8B;IAepE,4BAAY,KAAoB,EAAE,OAAuB;QAAzD,YACE,kBAAM,KAAK,CAAC,SAIb;QAjBD,eAAS,GAKO,SAAS,CAAC;QAUxB,IAAM,MAAM,GAAG,OAAO,CAAC;QACvB,MAAM,CAAC,iBAAiB,CAAC,KAAI,CAAC,CAAC;;IACjC,CAAC;IATD,4CAAe,GAAf,UAAgB,GAAQ;QACtB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;IACvB,CAAC;IASD,iDAAoB,GAApB;QACE,IAAM,MAAM,GAAG,IAAI,CAAC,OAAyB,CAAC;QAC9C,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAGD,mCAAM,GAAN,UAAO,MAAe,EAAE,KAAW,EAAE,MAAe;;QAClD,IAAI,KAAK,EAAE;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC5B;QAEK,IAAA,KAAqC,IAAI,CAAC,KAAK,EAA9C,IAAI,UAAA,EAAE,GAAG,SAAA,EAAE,MAAM,YAAA,EAAa,EAAE,eAAc,CAAC;QACtD,IAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,IAAA,qBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7D,MAAA,IAAI,CAAC,SAAS,0CAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAGD,oCAAO,GAAP,UAAQ,MAAc;QACpB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,mCAAM,GAAN;QACE,IAAU,IAAI,uBAAI,IAAI,CAAC,KAAK,EAAtB,EAAS,CAAa,CAAC;QAC7B,OAAO,CACL,8BAAC,iCAAiC,4BAC5B,IAAI,IACR,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,IACrC,CACH,CAAC;IACJ,CAAC;;IApDM,8BAAW,GAAG,sBAAa,CAAC;IAUnC;QADC,iBAAQ;;;;6DAGR;IAeD;QADC,iBAAQ;;;;oDAUR;IAGD;QADC,iBAAQ;;;;qDAGR;IA1CU,kBAAkB;QAJ9B,IAAA,kBAAQ,EAAC;YACR,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,KAAK;SACZ,CAAC;0EAgBmB,uBAAa,oBAAb,uBAAa,oDAAW,uBAAc,oBAAd,uBAAc;OAf9C,kBAAkB,CAsD9B;IAAD,yBAAC;CAAA,AAtDD,CAAwC,eAAK,CAAC,SAAS,GAsDtD;AAtDY,gDAAkB",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {Renderer, RendererEnv, RendererProps} from '../factory';\nimport getExprProperties from '../utils/filter-schema';\nimport {filter, evalExpression} from '../utils/tpl';\nimport {\n guid,\n autobind,\n createObject,\n findTree,\n isUnfolded,\n mapTree,\n someTree,\n spliceTree,\n findTreeIndex\n} from '../utils/helper';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport {themeable, ThemeProps} from '../theme';\nimport {Icon} from '../components/icons';\nimport {\n BaseSchema,\n SchemaApi,\n SchemaIcon,\n SchemaUrlPath,\n SchemaCollection\n} from '../Schema';\nimport {generateIcon} from '../utils/icon';\nimport {\n RemoteOptionsProps,\n withRemoteConfig\n} from '../components/WithRemoteConfig';\nimport {Payload} from '../types';\nimport Spinner from '../components/Spinner';\nimport {isEffectiveApi} from '../utils/api';\nimport {Badge, BadgeSchema} from '../components/Badge';\n\nexport type NavItemSchema = {\n /**\n * 文字说明\n */\n label?: string | SchemaCollection;\n\n /**\n * 图标类名,参考 fontawesome 4。\n */\n icon?: SchemaIcon;\n\n to?: SchemaUrlPath;\n\n target?: string;\n\n unfolded?: boolean;\n active?: boolean;\n\n defer?: boolean;\n deferApi?: SchemaApi;\n\n children?: Array<NavItemSchema>;\n} & Omit<BaseSchema, 'type'>;\n\n/**\n * Nav 导航渲染器\n * 文档:https://baidu.gitee.io/amis/docs/components/nav\n */\nexport interface NavSchema extends BaseSchema {\n /**\n * 指定为 Nav 导航渲染器\n */\n type: 'nav';\n\n /**\n * 链接地址集合\n */\n links?: Array<NavItemSchema>;\n\n /**\n * @default 24\n */\n indentSize: number;\n\n /**\n * 可以通过 API 拉取。\n */\n source?: SchemaApi;\n\n /**\n * 懒加载 api,如果不配置复用 source 接口。\n */\n deferApi?: SchemaApi;\n\n /**\n * true 为垂直排列,false 为水平排列类似如 tabs。\n */\n stacked?: boolean;\n\n /**\n * 更多操作菜单列表\n */\n itemActions?: SchemaCollection;\n\n /**\n * 可拖拽\n */\n draggable?: boolean;\n\n /**\n * 保存排序的 api\n */\n saveOrderApi?: SchemaApi;\n\n /**\n * 角标\n */\n itemBadge?: BadgeSchema;\n\n /**\n * 仅允许同层级拖拽\n */\n dragOnSameLevel?: boolean;\n}\n\nexport interface Link {\n className?: string;\n label?: string | SchemaCollection;\n to?: string;\n target?: string;\n icon?: string;\n active?: boolean;\n activeOn?: string;\n unfolded?: boolean;\n children?: Links;\n defer?: boolean;\n loading?: boolean;\n loaded?: boolean;\n [propName: string]: any;\n itemBadge?: BadgeSchema;\n}\nexport interface Links extends Array<Link> {}\n\nexport interface NavigationState {\n links?: Links;\n error?: string;\n dropIndicator?: {\n top: number;\n left: number;\n width: number;\n height?: number;\n opacity?: number;\n };\n}\n\nexport interface NavigationProps\n extends ThemeProps,\n Omit<NavSchema, 'type' | 'className'> {\n onSelect?: (item: Link) => void | false;\n onToggle?: (item: Link, forceFold?: boolean) => void;\n onDragUpdate?: (dropInfo: IDropInfo) => void;\n togglerClassName?: string;\n links?: Array<Link>;\n loading?: boolean;\n render: RendererProps['render'];\n env: RendererEnv;\n data: Object;\n reload?: any;\n}\n\nexport interface IDropInfo {\n dragLink: Link | null;\n nodeId: string;\n position: string;\n rect: DOMRect;\n height: number;\n left: number;\n}\n\nexport class Navigation extends React.Component<\n NavigationProps,\n NavigationState\n> {\n static defaultProps = {\n indentSize: 24\n };\n\n dragNode: {\n node: HTMLElement;\n link: Link | null;\n } | null;\n dropInfo: IDropInfo | null;\n startPoint: {\n y: number;\n x: number;\n } = {\n y: 0,\n x: 0\n };\n state: NavigationState = {};\n\n @autobind\n handleClick(link: Link) {\n const {env, onSelect} = this.props;\n // 和 action 里命名一致方便分析\n if (link && link.to) {\n env?.tracker({\n eventType: 'link',\n eventData: {\n label: link.label,\n link: link.to\n }\n });\n }\n\n onSelect?.(link);\n }\n\n @autobind\n toggleLink(target: Link, forceFold?: boolean) {\n this.props.onToggle?.(target, forceFold);\n }\n\n @autobind\n getDropInfo(e: DragEvent, id: string, depth: number): IDropInfo {\n const {dragOnSameLevel, indentSize} = this.props;\n let rect = (e.target as HTMLElement).getBoundingClientRect();\n const dragLink = this.dragNode?.link as Link;\n const {top, height, width} = rect;\n let {clientY, clientX} = e;\n const left = depth * (parseInt(indentSize as any, 10) ?? 24);\n const deltaX = left + width * 0.2;\n let position;\n if (clientY >= top + height / 2) {\n position = 'bottom';\n } else {\n position = 'top';\n }\n if (\n !dragOnSameLevel &&\n position === 'bottom' &&\n clientX >= this.startPoint.x + deltaX\n ) {\n position = 'self';\n }\n return {\n nodeId: id,\n dragLink,\n position,\n rect,\n height,\n left\n };\n }\n @autobind\n updateDropIndicator(e: DragEvent) {\n const {dragOnSameLevel} = this.props;\n const target = e.target as HTMLElement; // a标签\n const targetId = target.getAttribute('data-id') as string;\n const targetDepth = Number(target.getAttribute('data-depth'));\n if (\n dragOnSameLevel &&\n this.dragNode?.node.parentElement !== target.parentElement?.parentElement\n ) {\n this.setState({dropIndicator: undefined});\n this.dropInfo = null;\n return;\n }\n this.dropInfo = this.getDropInfo(e, targetId, targetDepth);\n let {position, rect, dragLink, height, left} = this.dropInfo;\n if (targetId === dragLink?.__id) {\n this.setState({dropIndicator: undefined});\n this.dropInfo = null;\n return;\n }\n const ul = (findDOMNode(this) as HTMLElement).firstChild as HTMLElement;\n if (position === 'self') {\n this.setState({\n dropIndicator: {\n top: rect.top - ul.getBoundingClientRect().top,\n left,\n width: ul.getBoundingClientRect().width - left,\n height,\n opacity: 0.2\n }\n });\n } else {\n this.setState({\n dropIndicator: {\n top:\n (position === 'bottom' ? rect.top + rect.height : rect.top) -\n ul.getBoundingClientRect().top,\n left,\n width: ul.getBoundingClientRect().width - left\n }\n });\n }\n }\n\n @autobind\n handleDragStart(link: Link) {\n return (e: React.DragEvent) => {\n e.stopPropagation();\n const currentTarget = e.currentTarget as HTMLElement;\n e.dataTransfer.effectAllowed = 'copyMove';\n e.dataTransfer.setDragImage(currentTarget, 0, 0);\n this.dragNode = {\n node: currentTarget,\n link: link\n };\n this.dropInfo = null;\n this.startPoint = {\n x: e.clientX,\n y: e.clientY\n };\n currentTarget.addEventListener('dragend', this.handleDragEnd);\n document.body.addEventListener('dragover', this.handleDragOver);\n };\n }\n\n @autobind\n handleDragOver(e: DragEvent) {\n e.preventDefault();\n e.stopPropagation();\n if (!this.dragNode) {\n return;\n }\n const target = e.target as HTMLElement;\n const id = target.getAttribute('data-id');\n if (!id) {\n return;\n }\n this.updateDropIndicator(e);\n }\n\n @autobind\n handleDragEnd(e: DragEvent) {\n e.preventDefault();\n e.stopPropagation();\n this.setState({\n dropIndicator: undefined\n });\n const currentTarget = e.currentTarget as HTMLElement;\n const id = currentTarget.getAttribute('data-id');\n let nodeId = this.dropInfo?.nodeId;\n if (!this.dropInfo || !nodeId || id === nodeId) {\n return;\n }\n currentTarget.removeEventListener('dragend', this.handleDragEnd);\n document.body.removeEventListener('dragover', this.handleDragOver);\n\n this.props.onDragUpdate?.(this.dropInfo);\n this.dragNode = null;\n this.dropInfo = null;\n }\n\n renderItem(link: Link, index: number, depth = 1) {\n if (link.hidden === true || link.visible === false) {\n return null;\n }\n const isActive: boolean = !!link.active;\n const {\n disabled,\n togglerClassName,\n classnames: cx,\n indentSize,\n render,\n itemActions,\n draggable,\n links,\n itemBadge,\n data: defaultData\n } = this.props;\n const hasSub =\n (link.defer && !link.loaded) || (link.children && link.children.length);\n return (\n <li\n key={link.__id}\n data-id={link.__id}\n className={cx('Nav-item', link.className, {\n 'is-disabled': disabled || link.disabled || link.loading,\n 'is-active': isActive,\n 'is-unfolded': link.unfolded,\n 'has-sub': hasSub\n })}\n onDragStart={this.handleDragStart(link)}\n >\n <Badge\n classnames={cx}\n badge={itemBadge}\n data={createObject(defaultData, link)}\n >\n <a\n data-id={link.__id}\n data-depth={depth}\n onClick={this.handleClick.bind(this, link)}\n style={{\n paddingLeft: depth * (parseInt(indentSize as any, 10) ?? 24)\n }}\n >\n {!disabled && draggable ? (\n <div\n className={cx('Nav-itemDrager')}\n draggable\n onMouseDown={e => {\n this.toggleLink(link, true);\n e.stopPropagation();\n }}\n >\n <Icon icon=\"drag-bar\" className=\"icon\" />\n </div>\n ) : null}\n {link.loading ? (\n <Spinner\n size=\"sm\"\n show\n icon=\"reload\"\n spinnerClassName={cx('Nav-spinner')}\n />\n ) : hasSub ? (\n <span\n onClick={e => {\n this.toggleLink(link);\n e.stopPropagation();\n }}\n className={cx('Nav-itemToggler', togglerClassName)}\n >\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n {generateIcon(cx, link.icon, 'Nav-itemIcon')}\n {link.label &&\n (typeof link.label === 'string'\n ? link.label\n : render('inline', link.label as SchemaCollection))}\n </a>\n {\n // 更多操作\n itemActions ? (\n <div className={cx('Nav-item-atcions')}>\n {render('inline', itemActions, {\n data: createObject(defaultData, link)\n })}\n </div>\n ) : null\n }\n {Array.isArray(link.children) && link.children.length ? (\n <ul className={cx('Nav-subItems')}>\n {link.children.map((link, index) =>\n this.renderItem(link, index, depth + 1)\n )}\n </ul>\n ) : null}\n </Badge>\n </li>\n );\n }\n\n render(): JSX.Element {\n const {className, stacked, classnames: cx, links, loading} = this.props;\n const {dropIndicator} = this.state;\n return (\n <div className={cx('Nav')}>\n <ul\n className={cx(\n 'Nav-list',\n className,\n stacked ? 'Nav-list--stacked' : 'Nav-list--tabs'\n )}\n >\n {Array.isArray(links)\n ? links.map((item, index) => this.renderItem(item, index))\n : null}\n\n <Spinner show={!!loading} overlay icon=\"reload\" />\n </ul>\n {dropIndicator ? (\n <div className={cx('Nav-dropIndicator')} style={dropIndicator} />\n ) : null}\n </div>\n );\n }\n}\n\nconst ThemedNavigation = themeable(Navigation);\n\nconst ConditionBuilderWithRemoteOptions = withRemoteConfig({\n adaptor: (config: any, props: any) => {\n const links = Array.isArray(config)\n ? config\n : config.links || config.options || config.items || config.rows;\n\n if (!Array.isArray(links)) {\n throw new Error('payload.data.options is not array.');\n }\n\n return links;\n },\n afterLoad: (response: any, config: any, props: any) => {\n if (response.value && !someTree(config, item => item.active)) {\n const {env} = props;\n\n env.jumpTo(filter(response.value as string, props.data));\n }\n },\n normalizeConfig(\n links: Array<Link>,\n origin: Array<Link> | undefined,\n props: any,\n motivation?: string\n ) {\n if (Array.isArray(links) && motivation !== 'toggle') {\n const {data, env, unfoldedField, foldedField} = props;\n\n links = mapTree(\n links,\n (link: Link) => {\n const item: any = {\n ...link,\n ...getExprProperties(link, data as object),\n active:\n (motivation !== 'location-change' && link.active) ||\n (link.activeOn\n ? evalExpression(link.activeOn as string, data)\n : !!(\n link.hasOwnProperty('to') &&\n env &&\n env.isCurrentUrl(filter(link.to as string, data))\n )),\n __id: link.id ?? link.__id ?? guid()\n };\n\n item.unfolded =\n isUnfolded(item, {unfoldedField, foldedField}) ||\n (link.children && link.children.some(link => !!link.active));\n\n return item;\n },\n 1,\n true\n );\n }\n\n return links;\n },\n\n beforeDeferLoad(item: Link, indexes: Array<number>, links: Array<Link>) {\n return spliceTree(links, indexes, 1, {\n ...item,\n loading: true\n });\n },\n\n afterDeferLoad(\n item: Link,\n indexes: Array<number>,\n ret: Payload,\n links: Array<Link>\n ) {\n const newItem = {\n ...item,\n loading: false,\n loaded: true,\n error: ret.ok ? undefined : ret.msg\n };\n\n const children = Array.isArray(ret.data)\n ? ret.data\n : ret.data.links || ret.data.options || ret.data.items || ret.data.rows;\n\n if (Array.isArray(children)) {\n newItem.children = children.concat();\n newItem.unfolded = true;\n }\n\n return spliceTree(links, indexes, 1, newItem);\n }\n})(\n class extends React.Component<\n RemoteOptionsProps &\n React.ComponentProps<typeof ThemedNavigation> & {\n location?: any;\n env?: RendererEnv;\n data?: any;\n unfoldedField?: string;\n foldedField?: string;\n reload?: any;\n }\n > {\n constructor(props: any) {\n super(props);\n this.toggleLink = this.toggleLink.bind(this);\n this.handleSelect = this.handleSelect.bind(this);\n this.dragUpdate = this.dragUpdate.bind(this);\n }\n\n componentDidMount() {\n if (Array.isArray(this.props.links)) {\n this.props.updateConfig(this.props.links, 'mount');\n }\n }\n\n componentDidUpdate(prevProps: any) {\n if (this.props.location !== prevProps.location) {\n this.props.updateConfig(this.props.config, 'location-change');\n } else if (this.props.links !== prevProps.links) {\n this.props.updateConfig(this.props.links, 'update');\n }\n }\n\n toggleLink(target: Link, forceFold?: boolean) {\n const {config, updateConfig, deferLoad} = this.props;\n\n if (target.defer && !target.loaded) {\n deferLoad(target);\n } else {\n updateConfig(\n mapTree(config, (link: Link) =>\n target === link\n ? {\n ...link,\n unfolded: forceFold ? false : !link.unfolded\n }\n : link\n ),\n 'toggle'\n );\n }\n }\n\n async dragUpdate(dropInfo: IDropInfo) {\n let links = this.props.config;\n const {nodeId, dragLink, position} = dropInfo;\n if (dragLink) {\n // 删除原节点\n const sourceIdx = findTreeIndex(\n links,\n link => link.__id === dragLink.__id\n ) as number[];\n links = spliceTree(links, sourceIdx, 1);\n\n if (position === 'self') {\n // 插入到对应节点的children中\n mapTree(links, link => {\n if (link.__id === nodeId) {\n if (!link.children) {\n link.children = [];\n }\n link.children.push(dragLink);\n }\n return link;\n });\n } else {\n // 找到需要插入的节点\n const idx = findTreeIndex(\n links,\n link => link.__id === nodeId\n ) as number[];\n // 插入节点之后\n if (position === 'bottom') {\n idx.push((idx.pop() as number) + 1);\n }\n links = spliceTree(links, idx, 0, dragLink);\n }\n }\n this.props.updateConfig(links, 'update');\n await this.saveOrder(\n mapTree(links, (link: Link) => {\n // 清除内部加的字段\n for (let key in link) {\n if (/^__.*$/.test(key)) {\n delete link[key];\n }\n }\n return link;\n })\n );\n }\n\n async saveOrder(links: Links) {\n const {saveOrderApi, env, data, reload} = this.props;\n if (saveOrderApi && isEffectiveApi(saveOrderApi)) {\n await env.fetcher(\n saveOrderApi as SchemaApi,\n createObject(data, {data: links}),\n {method: 'post'}\n );\n reload();\n } else {\n env.alert('NAV saveOrderApi is required!');\n }\n }\n\n handleSelect(link: Link) {\n const {onSelect, env, data} = this.props;\n if (onSelect && onSelect(link) === false) {\n return;\n }\n\n if (\n !link.to &&\n ((link.children && link.children.length) ||\n (link.defer && !link.loaded))\n ) {\n this.toggleLink(link);\n return;\n }\n\n env?.jumpTo(filter(link.to as string, data), link as any);\n }\n\n render() {\n const {loading, config, deferLoad, updateConfig, ...rest} = this.props;\n return (\n <ThemedNavigation\n {...rest}\n loading={loading}\n links={config || []}\n disabled={loading}\n onSelect={this.handleSelect}\n onToggle={this.toggleLink}\n onDragUpdate={this.dragUpdate}\n />\n );\n }\n }\n);\n\nexport default ThemedNavigation;\n@Renderer({\n test: /(^|\\/)(?:nav|navigation)$/,\n name: 'nav'\n})\nexport class NavigationRenderer extends React.Component<RendererProps> {\n static contextType = ScopedContext;\n\n remoteRef:\n | {\n loadConfig: (ctx?: any) => Promise<any> | void;\n setConfig: (value: any) => void;\n }\n | undefined = undefined;\n\n @autobind\n remoteConfigRef(ref: any) {\n this.remoteRef = ref;\n }\n\n constructor(props: RendererProps, 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 }\n\n @autobind\n reload(target?: string, query?: any, values?: object) {\n if (query) {\n return this.receive(query);\n }\n\n const {data, env, source, translate: __} = this.props;\n const finalData = values ? createObject(data, values) : data;\n\n this.remoteRef?.loadConfig(finalData);\n }\n\n @autobind\n receive(values: object) {\n this.reload(undefined, undefined, values);\n }\n\n render() {\n const {...rest} = this.props;\n return (\n <ConditionBuilderWithRemoteOptions\n {...rest}\n reload={this.reload}\n remoteConfigRef={this.remoteConfigRef}\n />\n );\n }\n}\n"
11
+ "import React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {Renderer, RendererEnv, RendererProps} from '../factory';\nimport getExprProperties from '../utils/filter-schema';\nimport {filter, evalExpression} from '../utils/tpl';\nimport {\n guid,\n autobind,\n createObject,\n findTree,\n isUnfolded,\n mapTree,\n someTree,\n spliceTree,\n findTreeIndex\n} from '../utils/helper';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport {themeable, ThemeProps} from '../theme';\nimport {Icon} from '../components/icons';\nimport {\n BaseSchema,\n SchemaApi,\n SchemaIcon,\n SchemaUrlPath,\n SchemaCollection\n} from '../Schema';\nimport {generateIcon} from '../utils/icon';\nimport {\n RemoteOptionsProps,\n withRemoteConfig\n} from '../components/WithRemoteConfig';\nimport {Payload} from '../types';\nimport Spinner from '../components/Spinner';\nimport {isEffectiveApi} from '../utils/api';\nimport {Badge, BadgeSchema} from '../components/Badge';\n\nexport type NavItemSchema = {\n /**\n * 文字说明\n */\n label?: string | SchemaCollection;\n\n /**\n * 图标类名,参考 fontawesome 4。\n */\n icon?: SchemaIcon;\n\n to?: SchemaUrlPath;\n\n target?: string;\n\n unfolded?: boolean;\n active?: boolean;\n\n defer?: boolean;\n deferApi?: SchemaApi;\n\n children?: Array<NavItemSchema>;\n} & Omit<BaseSchema, 'type'>;\n\n/**\n * Nav 导航渲染器\n * 文档:https://baidu.gitee.io/amis/docs/components/nav\n */\nexport interface NavSchema extends BaseSchema {\n /**\n * 指定为 Nav 导航渲染器\n */\n type: 'nav';\n\n /**\n * 链接地址集合\n */\n links?: Array<NavItemSchema>;\n\n /**\n * @default 24\n */\n indentSize: number;\n\n /**\n * 可以通过 API 拉取。\n */\n source?: SchemaApi;\n\n /**\n * 懒加载 api,如果不配置复用 source 接口。\n */\n deferApi?: SchemaApi;\n\n /**\n * true 为垂直排列,false 为水平排列类似如 tabs。\n */\n stacked?: boolean;\n\n /**\n * 更多操作菜单列表\n */\n itemActions?: SchemaCollection;\n\n /**\n * 可拖拽\n */\n draggable?: boolean;\n\n /**\n * 保存排序的 api\n */\n saveOrderApi?: SchemaApi;\n\n /**\n * 角标\n */\n itemBadge?: BadgeSchema;\n\n /**\n * 仅允许同层级拖拽\n */\n dragOnSameLevel?: boolean;\n}\n\nexport interface Link {\n className?: string;\n label?: string | SchemaCollection;\n to?: string;\n target?: string;\n icon?: string;\n active?: boolean;\n activeOn?: string;\n unfolded?: boolean;\n children?: Links;\n defer?: boolean;\n loading?: boolean;\n loaded?: boolean;\n [propName: string]: any;\n itemBadge?: BadgeSchema;\n}\nexport interface Links extends Array<Link> {}\n\nexport interface NavigationState {\n links?: Links;\n error?: string;\n dropIndicator?: {\n top: number;\n left: number;\n width: number;\n height?: number;\n opacity?: number;\n };\n}\n\nexport interface NavigationProps\n extends ThemeProps,\n Omit<NavSchema, 'type' | 'className'> {\n onSelect?: (item: Link) => void | false;\n onToggle?: (item: Link, forceFold?: boolean) => void;\n onDragUpdate?: (dropInfo: IDropInfo) => void;\n togglerClassName?: string;\n links?: Array<Link>;\n loading?: boolean;\n render: RendererProps['render'];\n env: RendererEnv;\n data: Object;\n reload?: any;\n}\n\nexport interface IDropInfo {\n dragLink: Link | null;\n nodeId: string;\n position: string;\n rect: DOMRect;\n height: number;\n left: number;\n}\n\nexport class Navigation extends React.Component<\n NavigationProps,\n NavigationState\n> {\n static defaultProps = {\n indentSize: 24\n };\n\n dragNode: {\n node: HTMLElement;\n link: Link | null;\n } | null;\n dropInfo: IDropInfo | null;\n startPoint: {\n y: number;\n x: number;\n } = {\n y: 0,\n x: 0\n };\n state: NavigationState = {};\n\n @autobind\n handleClick(link: Link) {\n const {env, onSelect} = this.props;\n // 和 action 里命名一致方便分析\n if (link && link.to) {\n env?.tracker({\n eventType: 'link',\n eventData: {\n label: link.label,\n link: link.to\n }\n });\n }\n\n onSelect?.(link);\n }\n\n @autobind\n toggleLink(target: Link, forceFold?: boolean) {\n this.props.onToggle?.(target, forceFold);\n }\n\n @autobind\n getDropInfo(e: DragEvent, id: string, depth: number): IDropInfo {\n const {dragOnSameLevel, indentSize} = this.props;\n let rect = (e.target as HTMLElement).getBoundingClientRect();\n const dragLink = this.dragNode?.link as Link;\n const {top, height, width} = rect;\n let {clientY, clientX} = e;\n const left = depth * (parseInt(indentSize as any, 10) ?? 24);\n const deltaX = left + width * 0.2;\n let position;\n if (clientY >= top + height / 2) {\n position = 'bottom';\n } else {\n position = 'top';\n }\n if (\n !dragOnSameLevel &&\n position === 'bottom' &&\n clientX >= this.startPoint.x + deltaX\n ) {\n position = 'self';\n }\n return {\n nodeId: id,\n dragLink,\n position,\n rect,\n height,\n left\n };\n }\n @autobind\n updateDropIndicator(e: DragEvent) {\n const {dragOnSameLevel} = this.props;\n const target = e.target as HTMLElement; // a标签\n const targetId = target.getAttribute('data-id') as string;\n const targetDepth = Number(target.getAttribute('data-depth'));\n if (\n dragOnSameLevel &&\n this.dragNode?.node.parentElement !== target.parentElement?.parentElement\n ) {\n this.setState({dropIndicator: undefined});\n this.dropInfo = null;\n return;\n }\n this.dropInfo = this.getDropInfo(e, targetId, targetDepth);\n let {position, rect, dragLink, height, left} = this.dropInfo;\n if (targetId === dragLink?.__id) {\n this.setState({dropIndicator: undefined});\n this.dropInfo = null;\n return;\n }\n const ul = (findDOMNode(this) as HTMLElement).firstChild as HTMLElement;\n if (position === 'self') {\n this.setState({\n dropIndicator: {\n top: rect.top - ul.getBoundingClientRect().top,\n left,\n width: ul.getBoundingClientRect().width - left,\n height,\n opacity: 0.2\n }\n });\n } else {\n this.setState({\n dropIndicator: {\n top:\n (position === 'bottom' ? rect.top + rect.height : rect.top) -\n ul.getBoundingClientRect().top,\n left,\n width: ul.getBoundingClientRect().width - left\n }\n });\n }\n }\n\n @autobind\n handleDragStart(link: Link) {\n return (e: React.DragEvent) => {\n e.stopPropagation();\n const currentTarget = e.currentTarget as HTMLElement;\n e.dataTransfer.effectAllowed = 'copyMove';\n e.dataTransfer.setDragImage(currentTarget, 0, 0);\n this.dragNode = {\n node: currentTarget,\n link: link\n };\n this.dropInfo = null;\n this.startPoint = {\n x: e.clientX,\n y: e.clientY\n };\n currentTarget.addEventListener('dragend', this.handleDragEnd);\n document.body.addEventListener('dragover', this.handleDragOver);\n };\n }\n\n @autobind\n handleDragOver(e: DragEvent) {\n e.preventDefault();\n e.stopPropagation();\n if (!this.dragNode) {\n return;\n }\n const target = e.target as HTMLElement;\n const id = target.getAttribute('data-id');\n if (!id) {\n return;\n }\n this.updateDropIndicator(e);\n }\n\n @autobind\n handleDragEnd(e: DragEvent) {\n e.preventDefault();\n e.stopPropagation();\n this.setState({\n dropIndicator: undefined\n });\n const currentTarget = e.currentTarget as HTMLElement;\n const id = currentTarget.getAttribute('data-id');\n let nodeId = this.dropInfo?.nodeId;\n if (!this.dropInfo || !nodeId || id === nodeId) {\n return;\n }\n currentTarget.removeEventListener('dragend', this.handleDragEnd);\n document.body.removeEventListener('dragover', this.handleDragOver);\n\n this.props.onDragUpdate?.(this.dropInfo);\n this.dragNode = null;\n this.dropInfo = null;\n }\n\n renderItem(link: Link, index: number, depth = 1) {\n if (link.hidden === true || link.visible === false) {\n return null;\n }\n const isActive: boolean = !!link.active;\n const {\n disabled,\n togglerClassName,\n classnames: cx,\n indentSize,\n render,\n itemActions,\n draggable,\n links,\n itemBadge,\n data: defaultData\n } = this.props;\n const hasSub =\n (link.defer && !link.loaded) || (link.children && link.children.length);\n return (\n <li\n key={link.__id}\n data-id={link.__id}\n className={cx('Nav-item', link.className, {\n 'is-disabled': disabled || link.disabled || link.loading,\n 'is-active': isActive,\n 'is-unfolded': link.unfolded,\n 'has-sub': hasSub\n })}\n onDragStart={this.handleDragStart(link)}\n >\n <Badge\n classnames={cx}\n badge={itemBadge}\n data={createObject(defaultData, link)}\n >\n <a\n data-id={link.__id}\n data-depth={depth}\n onClick={this.handleClick.bind(this, link)}\n style={{\n paddingLeft: depth * (parseInt(indentSize as any, 10) ?? 24)\n }}\n >\n {!disabled && draggable ? (\n <div\n className={cx('Nav-itemDrager')}\n draggable\n onMouseDown={e => {\n this.toggleLink(link, true);\n e.stopPropagation();\n }}\n >\n <Icon icon=\"drag-bar\" className=\"icon\" />\n </div>\n ) : null}\n {link.loading ? (\n <Spinner\n size=\"sm\"\n show\n icon=\"reload\"\n spinnerClassName={cx('Nav-spinner')}\n />\n ) : hasSub ? (\n <span\n onClick={e => {\n this.toggleLink(link);\n e.stopPropagation();\n }}\n className={cx('Nav-itemToggler', togglerClassName)}\n >\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n {generateIcon(cx, link.icon, 'Nav-itemIcon')}\n {link.label &&\n (typeof link.label === 'string'\n ? link.label\n : render('inline', link.label as SchemaCollection))}\n </a>\n {\n // 更多操作\n itemActions ? (\n <div className={cx('Nav-item-atcions')}>\n {render('inline', itemActions, {\n data: createObject(defaultData, link)\n })}\n </div>\n ) : null\n }\n {Array.isArray(link.children) && link.children.length ? (\n <ul className={cx('Nav-subItems')}>\n {link.children.map((link, index) =>\n this.renderItem(link, index, depth + 1)\n )}\n </ul>\n ) : null}\n </Badge>\n </li>\n );\n }\n\n render(): JSX.Element {\n const {className, stacked, classnames: cx, links, loading} = this.props;\n const {dropIndicator} = this.state;\n return (\n <div className={cx('Nav')}>\n <ul\n className={cx(\n 'Nav-list',\n className,\n stacked ? 'Nav-list--stacked' : 'Nav-list--tabs'\n )}\n >\n {Array.isArray(links)\n ? links.map((item, index) => this.renderItem(item, index))\n : null}\n\n <Spinner show={!!loading} overlay icon=\"reload\" />\n </ul>\n {dropIndicator ? (\n <div className={cx('Nav-dropIndicator')} style={dropIndicator} />\n ) : null}\n </div>\n );\n }\n}\n\nconst ThemedNavigation = themeable(Navigation);\n\nconst ConditionBuilderWithRemoteOptions = withRemoteConfig({\n adaptor: (config: any, props: any) => {\n const links = Array.isArray(config)\n ? config\n : config.links || config.options || config.items || config.rows;\n\n if (!Array.isArray(links)) {\n throw new Error('payload.data.options is not array.');\n }\n\n return links;\n },\n afterLoad: (response: any, config: any, props: any) => {\n if (response.value && !someTree(config, item => item.active)) {\n const {env} = props;\n\n env.jumpTo(filter(response.value as string, props.data));\n }\n },\n normalizeConfig(\n links: Array<Link>,\n origin: Array<Link> | undefined,\n props: any,\n motivation?: string\n ) {\n if (Array.isArray(links) && motivation !== 'toggle') {\n const {data, env, unfoldedField, foldedField} = props;\n\n links = mapTree(\n links,\n (link: Link) => {\n const item: any = {\n ...link,\n ...getExprProperties(link, data as object),\n active:\n (motivation !== 'location-change' && link.active) ||\n (link.activeOn\n ? evalExpression(link.activeOn as string, data)\n : !!(\n link.hasOwnProperty('to') &&\n env &&\n env.isCurrentUrl(filter(link.to as string, data))\n )),\n __id: link.__id ?? guid()\n };\n\n item.unfolded =\n isUnfolded(item, {unfoldedField, foldedField}) ||\n (link.children && link.children.some(link => !!link.active));\n\n return item;\n },\n 1,\n true\n );\n }\n\n return links;\n },\n\n beforeDeferLoad(item: Link, indexes: Array<number>, links: Array<Link>) {\n return spliceTree(links, indexes, 1, {\n ...item,\n loading: true\n });\n },\n\n afterDeferLoad(\n item: Link,\n indexes: Array<number>,\n ret: Payload,\n links: Array<Link>\n ) {\n const newItem = {\n ...item,\n loading: false,\n loaded: true,\n error: ret.ok ? undefined : ret.msg\n };\n\n const children = Array.isArray(ret.data)\n ? ret.data\n : ret.data.links || ret.data.options || ret.data.items || ret.data.rows;\n\n if (Array.isArray(children)) {\n newItem.children = children.concat();\n newItem.unfolded = true;\n }\n\n return spliceTree(links, indexes, 1, newItem);\n }\n})(\n class extends React.Component<\n RemoteOptionsProps &\n React.ComponentProps<typeof ThemedNavigation> & {\n location?: any;\n env?: RendererEnv;\n data?: any;\n unfoldedField?: string;\n foldedField?: string;\n reload?: any;\n }\n > {\n constructor(props: any) {\n super(props);\n this.toggleLink = this.toggleLink.bind(this);\n this.handleSelect = this.handleSelect.bind(this);\n this.dragUpdate = this.dragUpdate.bind(this);\n }\n\n componentDidMount() {\n if (Array.isArray(this.props.links)) {\n this.props.updateConfig(this.props.links, 'mount');\n }\n }\n\n componentDidUpdate(prevProps: any) {\n if (this.props.location !== prevProps.location) {\n this.props.updateConfig(this.props.config, 'location-change');\n } else if (this.props.links !== prevProps.links) {\n this.props.updateConfig(this.props.links, 'update');\n }\n }\n\n toggleLink(target: Link, forceFold?: boolean) {\n const {config, updateConfig, deferLoad} = this.props;\n\n if (target.defer && !target.loaded) {\n deferLoad(target);\n } else {\n updateConfig(\n mapTree(config, (link: Link) =>\n target === link\n ? {\n ...link,\n unfolded: forceFold ? false : !link.unfolded\n }\n : link\n ),\n 'toggle'\n );\n }\n }\n\n async dragUpdate(dropInfo: IDropInfo) {\n let links = this.props.config;\n const {nodeId, dragLink, position} = dropInfo;\n if (dragLink) {\n // 删除原节点\n const sourceIdx = findTreeIndex(\n links,\n link => link.__id === dragLink.__id\n ) as number[];\n links = spliceTree(links, sourceIdx, 1);\n\n if (position === 'self') {\n // 插入到对应节点的children中\n mapTree(links, link => {\n if (link.__id === nodeId) {\n if (!link.children) {\n link.children = [];\n }\n link.children.push(dragLink);\n }\n return link;\n });\n } else {\n // 找到需要插入的节点\n const idx = findTreeIndex(\n links,\n link => link.__id === nodeId\n ) as number[];\n // 插入节点之后\n if (position === 'bottom') {\n idx.push((idx.pop() as number) + 1);\n }\n links = spliceTree(links, idx, 0, dragLink);\n }\n }\n this.props.updateConfig(links, 'update');\n await this.saveOrder(\n mapTree(links, (link: Link) => {\n // 清除内部加的字段\n for (let key in link) {\n if (/^__.*$/.test(key)) {\n delete link[key];\n }\n }\n return link;\n })\n );\n }\n\n async saveOrder(links: Links) {\n const {saveOrderApi, env, data, reload} = this.props;\n if (saveOrderApi && isEffectiveApi(saveOrderApi)) {\n await env.fetcher(\n saveOrderApi as SchemaApi,\n createObject(data, {data: links}),\n {method: 'post'}\n );\n reload();\n } else {\n env.alert('NAV saveOrderApi is required!');\n }\n }\n\n handleSelect(link: Link) {\n const {onSelect, env, data} = this.props;\n if (onSelect && onSelect(link) === false) {\n return;\n }\n\n if (\n !link.to &&\n ((link.children && link.children.length) ||\n (link.defer && !link.loaded))\n ) {\n this.toggleLink(link);\n return;\n }\n\n env?.jumpTo(filter(link.to as string, data), link as any);\n }\n\n render() {\n const {loading, config, deferLoad, updateConfig, ...rest} = this.props;\n return (\n <ThemedNavigation\n {...rest}\n loading={loading}\n links={config || []}\n disabled={loading}\n onSelect={this.handleSelect}\n onToggle={this.toggleLink}\n onDragUpdate={this.dragUpdate}\n />\n );\n }\n }\n);\n\nexport default ThemedNavigation;\n@Renderer({\n test: /(^|\\/)(?:nav|navigation)$/,\n name: 'nav'\n})\nexport class NavigationRenderer extends React.Component<RendererProps> {\n static contextType = ScopedContext;\n\n remoteRef:\n | {\n loadConfig: (ctx?: any) => Promise<any> | void;\n setConfig: (value: any) => void;\n }\n | undefined = undefined;\n\n @autobind\n remoteConfigRef(ref: any) {\n this.remoteRef = ref;\n }\n\n constructor(props: RendererProps, 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 }\n\n @autobind\n reload(target?: string, query?: any, values?: object) {\n if (query) {\n return this.receive(query);\n }\n\n const {data, env, source, translate: __} = this.props;\n const finalData = values ? createObject(data, values) : data;\n\n this.remoteRef?.loadConfig(finalData);\n }\n\n @autobind\n receive(values: object) {\n this.reload(undefined, undefined, values);\n }\n\n render() {\n const {...rest} = this.props;\n return (\n <ConditionBuilderWithRemoteOptions\n {...rest}\n reload={this.reload}\n remoteConfigRef={this.remoteConfigRef}\n />\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -473,7 +473,7 @@ var PageRenderer = /** @class */ (function (_super) {
473
473
  };
474
474
  PageRenderer.prototype.handleAction = function (e, action, ctx, throwErrors, delegate) {
475
475
  if (throwErrors === void 0) { throwErrors = false; }
476
- var scoped = this.context;
476
+ var scoped = delegate || this.context;
477
477
  if (action.actionType === 'reload') {
478
478
  action.target && scoped.reload(action.target, ctx);
479
479
  }
@@ -489,8 +489,7 @@ var PageRenderer = /** @class */ (function (_super) {
489
489
  _super.prototype.handleAction.call(this, e, action, ctx, throwErrors, delegate);
490
490
  if (action.reload &&
491
491
  ~['url', 'link', 'jump'].indexOf(action.actionType)) {
492
- var scoped_1 = delegate || this.context;
493
- scoped_1.reload(action.reload, ctx);
492
+ scoped.reload(action.reload, ctx);
494
493
  }
495
494
  }
496
495
  };