amis 1.4.2-beta.1 → 1.4.2-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/ListGroup.d.ts +21 -21
- package/lib/components/ResultBox.d.ts +84 -84
- package/lib/components/SearchBox.js +4 -4
- package/lib/components/SearchBox.js.map +2 -2
- package/lib/components/WithRemoteConfig.js +1 -1
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/index.js +1 -1
- package/lib/renderers/CRUD.d.ts +4 -0
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Chart.js +1 -1
- package/lib/renderers/Chart.js.map +2 -2
- package/lib/renderers/DropDownButton.js +1 -1
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Link.js +4 -2
- package/lib/renderers/Link.js.map +2 -2
- package/lib/renderers/Mapping.d.ts +9 -2
- package/lib/renderers/Mapping.js +18 -6
- package/lib/renderers/Mapping.js.map +2 -2
- package/lib/renderers/Nav.js +3 -3
- package/lib/renderers/Nav.js.map +2 -2
- package/lib/renderers/SearchBox.d.ts +6 -1
- package/lib/renderers/SearchBox.js +19 -5
- package/lib/renderers/SearchBox.js.map +2 -2
- package/lib/store/combo.d.ts +0 -14
- package/lib/store/crud.js +3 -7
- package/lib/store/crud.js.map +2 -2
- package/lib/store/form.js +2 -1
- package/lib/store/form.js.map +2 -2
- package/lib/store/service.js +5 -4
- package/lib/store/service.js.map +2 -2
- package/lib/themes/ang-ie11.css +8 -1
- package/lib/themes/ang.css +8 -1
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +8 -1
- package/lib/themes/antd.css +8 -1
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +8 -1
- package/lib/themes/cxd.css +8 -1
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +8 -1
- package/lib/themes/dark.css +8 -1
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +8 -1
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/api.d.ts +1 -0
- package/lib/utils/api.js +15 -1
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/icon.js +3 -0
- package/lib/utils/icon.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +8 -0
- package/scss/components/_mapping.scss +6 -0
- package/scss/components/_nav.scss +1 -1
- package/scss/themes/_common.scss +1 -0
- package/sdk/ang-ie11.css +9 -1
- package/sdk/ang.css +9 -1
- package/sdk/antd-ie11.css +9 -1
- package/sdk/antd.css +9 -1
- package/sdk/charts.js +15 -15
- package/sdk/color-picker.js +67 -67
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +9 -1
- package/sdk/cxd.css +9 -1
- package/sdk/dark-ie11.css +9 -1
- package/sdk/dark.css +9 -1
- package/sdk/exceljs.js +1 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +22 -22
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +9 -1
- package/sdk/sdk.css +9 -1
- package/sdk/sdk.js +1128 -1128
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/components/SearchBox.tsx +4 -5
- package/src/components/WithRemoteConfig.tsx +7 -2
- package/src/renderers/CRUD.tsx +5 -0
- package/src/renderers/Chart.tsx +6 -2
- package/src/renderers/DropDownButton.tsx +1 -1
- package/src/renderers/Link.tsx +5 -4
- package/src/renderers/Mapping.tsx +27 -11
- package/src/renderers/Nav.tsx +3 -4
- package/src/renderers/SearchBox.tsx +23 -4
- package/src/store/crud.ts +3 -8
- package/src/store/form.ts +2 -1
- package/src/store/service.ts +5 -4
- package/src/utils/api.ts +13 -0
- package/src/utils/icon.tsx +4 -0
package/lib/renderers/Nav.js.map
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Nav.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 {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 {BaseSchema, SchemaApi, SchemaIcon, SchemaUrlPath, SchemaCollection} 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 this.props.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 * .2;\n let position;\n if (clientY >= top + height / 2 ) {\n position = 'bottom';\n } else {\n position = 'top';\n }\n if (!dragOnSameLevel && position === 'bottom' && clientX >= this.startPoint.x + deltaX) {\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 (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: .2\n }\n });\n } else {\n this.setState({\n dropIndicator: {\n top: (position === 'bottom' ? rect.top + rect.height : rect.top) - 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 classnames={cx} badge={itemBadge} data={createObject(defaultData, link)}>\n <a\n data-id={link.__id}\n data-depth={depth}\n onClick={this.handleClick.bind(this, link)}\n style={{paddingLeft: depth * (parseInt(indentSize as any, 10) ?? 24)}}\n >\n {!disabled && draggable && links && links.length > 1 ? (\n <div className={cx('Nav-itemDrager')}\n draggable\n onMouseDown={e => {this.toggleLink(link, true); e.stopPropagation()}}\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={() => this.toggleLink(link)}\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 {\n link.label && (typeof link.label === 'string'\n ? link.label\n : render('inline', link.label as SchemaCollection))\n }\n </a>\n {\n // 更多操作\n itemActions\n ? <div className={cx('Nav-item-atcions')}>\n {\n render('inline', itemActions, {data: createObject(defaultData, link)})\n }\n </div> : 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 className={cx('Nav-list', className, stacked ? 'Nav-list--stacked' : 'Nav-list--tabs')}>\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 )}\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('\bpayload.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: 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(links, link => link.__id === dragLink.__id) 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(links, link => link.__id === nodeId) 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(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 async saveOrder(links: Links) {\n const {saveOrderApi, env, data, reload} = this.props;\n if (saveOrderApi && isEffectiveApi(saveOrderApi)) {\n await env.fetcher(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 || rest.links || []}\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\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 {BaseSchema, SchemaApi, SchemaIcon, SchemaUrlPath, SchemaCollection} 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 this.props.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 * .2;\n let position;\n if (clientY >= top + height / 2 ) {\n position = 'bottom';\n } else {\n position = 'top';\n }\n if (!dragOnSameLevel && position === 'bottom' && clientX >= this.startPoint.x + deltaX) {\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 (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: .2\n }\n });\n } else {\n this.setState({\n dropIndicator: {\n top: (position === 'bottom' ? rect.top + rect.height : rect.top) - 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 classnames={cx} badge={itemBadge} data={createObject(defaultData, link)}>\n <a\n data-id={link.__id}\n data-depth={depth}\n onClick={this.handleClick.bind(this, link)}\n style={{paddingLeft: depth * (parseInt(indentSize as any, 10) ?? 24)}}\n >\n {!disabled && draggable ? (\n <div className={cx('Nav-itemDrager')}\n draggable\n onMouseDown={e => {this.toggleLink(link, true); e.stopPropagation()}}\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={() => this.toggleLink(link)}\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 {\n link.label && (typeof link.label === 'string'\n ? link.label\n : render('inline', link.label as SchemaCollection))\n }\n </a>\n {\n // 更多操作\n itemActions\n ? <div className={cx('Nav-item-atcions')}>\n {\n render('inline', itemActions, {data: createObject(defaultData, link)})\n }\n </div> : 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 className={cx('Nav-list', className, stacked ? 'Nav-list--stacked' : 'Nav-list--tabs')}>\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 )}\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('\bpayload.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(links, link => link.__id === dragLink.__id) 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(links, link => link.__id === nodeId) 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(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 async saveOrder(links: Links) {\n const {saveOrderApi, env, data, reload} = this.props;\n if (saveOrderApi && isEffectiveApi(saveOrderApi)) {\n await env.fetcher(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
|
}
|
@@ -40,13 +40,18 @@ interface SearchBoxProps extends RendererProps, Omit<SearchBoxSchema, 'type' | '
|
|
40
40
|
[propName: string]: string;
|
41
41
|
}) => void;
|
42
42
|
}
|
43
|
-
export
|
43
|
+
export interface SearchBoxState {
|
44
|
+
value: string;
|
45
|
+
}
|
46
|
+
export declare class SearchBoxRenderer extends React.Component<SearchBoxProps, SearchBoxState> {
|
44
47
|
static defaultProps: {
|
45
48
|
name: string;
|
46
49
|
mini: boolean;
|
47
50
|
searchImediately: boolean;
|
48
51
|
};
|
49
52
|
static propsList: Array<string>;
|
53
|
+
constructor(props: SearchBoxProps);
|
54
|
+
handleChange(value: string): void;
|
50
55
|
handleCancel(): void;
|
51
56
|
handleSearch(text: string): void;
|
52
57
|
render(): JSX.Element;
|
@@ -8,9 +8,16 @@ var SearchBox_1 = (0, tslib_1.__importDefault)(require("../components/SearchBox"
|
|
8
8
|
var helper_1 = require("../utils/helper");
|
9
9
|
var SearchBoxRenderer = /** @class */ (function (_super) {
|
10
10
|
(0, tslib_1.__extends)(SearchBoxRenderer, _super);
|
11
|
-
function SearchBoxRenderer() {
|
12
|
-
|
11
|
+
function SearchBoxRenderer(props) {
|
12
|
+
var _this = _super.call(this, props) || this;
|
13
|
+
_this.state = {
|
14
|
+
value: (0, helper_1.getPropValue)(props) || ''
|
15
|
+
};
|
16
|
+
return _this;
|
13
17
|
}
|
18
|
+
SearchBoxRenderer.prototype.handleChange = function (value) {
|
19
|
+
this.setState({ value: value });
|
20
|
+
};
|
14
21
|
SearchBoxRenderer.prototype.handleCancel = function () {
|
15
22
|
var name = this.props.name;
|
16
23
|
var onQuery = this.props.onQuery;
|
@@ -29,8 +36,8 @@ var SearchBoxRenderer = /** @class */ (function (_super) {
|
|
29
36
|
};
|
30
37
|
SearchBoxRenderer.prototype.render = function () {
|
31
38
|
var _a = this.props, data = _a.data, name = _a.name, onQuery = _a.onQuery, mini = _a.mini, searchImediately = _a.searchImediately, placeholder = _a.placeholder, onChange = _a.onChange, className = _a.className;
|
32
|
-
var value =
|
33
|
-
return (react_1.default.createElement(SearchBox_1.default, { className: className, name: name, disabled: !onQuery, defaultActive: !!value, defaultValue: onChange ? undefined : value, value:
|
39
|
+
var value = this.state.value;
|
40
|
+
return (react_1.default.createElement(SearchBox_1.default, { className: className, name: name, disabled: !onQuery, defaultActive: !!value, defaultValue: onChange ? undefined : value, value: value, mini: mini, searchImediately: searchImediately, onSearch: this.handleSearch, onCancel: this.handleCancel, placeholder: placeholder, onChange: this.handleChange }));
|
34
41
|
};
|
35
42
|
SearchBoxRenderer.defaultProps = {
|
36
43
|
name: 'keywords',
|
@@ -38,6 +45,12 @@ var SearchBoxRenderer = /** @class */ (function (_super) {
|
|
38
45
|
searchImediately: false
|
39
46
|
};
|
40
47
|
SearchBoxRenderer.propsList = ['mini', 'searchImediately'];
|
48
|
+
(0, tslib_1.__decorate)([
|
49
|
+
helper_1.autobind,
|
50
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
51
|
+
(0, tslib_1.__metadata)("design:paramtypes", [String]),
|
52
|
+
(0, tslib_1.__metadata)("design:returntype", void 0)
|
53
|
+
], SearchBoxRenderer.prototype, "handleChange", null);
|
41
54
|
(0, tslib_1.__decorate)([
|
42
55
|
helper_1.autobind,
|
43
56
|
(0, tslib_1.__metadata)("design:type", Function),
|
@@ -53,7 +66,8 @@ var SearchBoxRenderer = /** @class */ (function (_super) {
|
|
53
66
|
SearchBoxRenderer = (0, tslib_1.__decorate)([
|
54
67
|
(0, factory_1.Renderer)({
|
55
68
|
type: 'search-box'
|
56
|
-
})
|
69
|
+
}),
|
70
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Object])
|
57
71
|
], SearchBoxRenderer);
|
58
72
|
return SearchBoxRenderer;
|
59
73
|
}(react_1.default.Component));
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/SearchBox.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AACA,sCAAmD;AACnD,6DAA0B;AAE1B,mFAAgD;AAChD,0CAKyB;
|
9
|
+
"mappings": ";;;;AACA,sCAAmD;AACnD,6DAA0B;AAE1B,mFAAgD;AAChD,0CAKyB;AAuDzB;IAAuC,kDAGtC;IASC,2BAAY,KAAqB;QAAjC,YACE,kBAAM,KAAK,CAAC,SAIb;QAHC,KAAI,CAAC,KAAK,GAAG;YACX,KAAK,EAAE,IAAA,qBAAY,EAAC,KAAK,CAAC,IAAI,EAAE;SACjC,CAAC;;IACJ,CAAC;IAGD,wCAAY,GAAZ,UAAa,KAAa;QACxB,IAAI,CAAC,QAAQ,CAAC,EAAC,KAAK,OAAA,EAAC,CAAC,CAAC;IACzB,CAAC;IAGD,wCAAY,GAAZ;QACE,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B,IAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACnC,IAAM,KAAK,GAAG,IAAA,qBAAY,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,EAAE,EAAE;YAChB,IAAM,IAAI,GAAQ,EAAE,CAAC;YACrB,IAAA,oBAAW,EAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5B,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,IAAI,CAAC,CAAC;SACjB;IACH,CAAC;IAGD,wCAAY,GAAZ,UAAa,IAAY;QACjB,IAAA,KAA2B,IAAI,CAAC,KAAK,EAApC,IAAI,UAAA,EAAW,OAAO,aAAc,CAAC;QAC5C,IAAM,IAAI,GAAQ,EAAE,CAAC;QACrB,IAAA,oBAAW,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,kCAAM,GAAN;QACQ,IAAA,KASF,IAAI,CAAC,KAAK,EARZ,IAAI,UAAA,EACJ,IAAI,UAAA,EACK,OAAO,aAAA,EAChB,IAAI,UAAA,EACJ,gBAAgB,sBAAA,EAChB,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,SAAS,eACG,CAAC;QAEf,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAE/B,OAAO,CACL,8BAAC,mBAAS,IACR,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,OAAO,EAClB,aAAa,EAAE,CAAC,CAAC,KAAK,EACtB,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAC1C,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,IAAI,CAAC,YAAY,GAC3B,CACH,CAAC;IACJ,CAAC;IAtEM,8BAAY,GAAG;QACpB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,KAAK;QACX,gBAAgB,EAAE,KAAK;KACxB,CAAC;IAEK,2BAAS,GAAkB,CAAC,MAAM,EAAE,kBAAkB,CAAE,CAAA;IAU/D;QADC,iBAAQ;;;;yDAGR;IAGD;QADC,iBAAQ;;;;yDAUR;IAGD;QADC,iBAAQ;;;;yDAMR;IA1CU,iBAAiB;QAH7B,IAAA,kBAAQ,EAAC;YACR,IAAI,EAAE,YAAY;SACnB,CAAC;;OACW,iBAAiB,CA2E7B;IAAD,wBAAC;CAAA,AA3ED,CAAuC,eAAK,CAAC,SAAS,GA2ErD;AA3EY,8CAAiB",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import Spinner from '../components/Spinner';\nimport {Renderer, RendererProps} from '../factory';\nimport React from 'react';\nimport {BaseSchema, SchemaClassName} from '../Schema';\nimport SearchBox from '../components/SearchBox';\nimport {\n autobind,\n getPropValue,\n getVariable,\n setVariable\n} from '../utils/helper';\n\n/**\n * 搜索框渲染器\n */\nexport interface SearchBoxSchema extends BaseSchema {\n /**\n * 指定为搜索框。\n *\n * 文档:https://baidu.gitee.io/amis/docs/components/search-box\n */\n type: 'search-box';\n\n /**\n * 外层 css 类名\n */\n className?: SchemaClassName;\n\n /**\n * 关键字名字。\n *\n * @default keywords\n */\n name?: string;\n\n /**\n * 占位符\n */\n placeholder?: string;\n\n /**\n * 是否为 Mini 样式。\n */\n mini?: boolean;\n\n /**\n * 是否立马搜索。\n */\n searchImediately?: boolean;\n}\n\ninterface SearchBoxProps\n extends RendererProps,\n Omit<SearchBoxSchema, 'type' | 'className'> {\n name: string;\n onQuery?: (query: {[propName: string]: string}) => void;\n}\n\n@Renderer({\n type: 'search-box'\n})\nexport class SearchBoxRenderer extends React.Component
|
11
|
+
"import Spinner from '../components/Spinner';\nimport {Renderer, RendererProps} from '../factory';\nimport React from 'react';\nimport {BaseSchema, SchemaClassName} from '../Schema';\nimport SearchBox from '../components/SearchBox';\nimport {\n autobind,\n getPropValue,\n getVariable,\n setVariable\n} from '../utils/helper';\n\n/**\n * 搜索框渲染器\n */\nexport interface SearchBoxSchema extends BaseSchema {\n /**\n * 指定为搜索框。\n *\n * 文档:https://baidu.gitee.io/amis/docs/components/search-box\n */\n type: 'search-box';\n\n /**\n * 外层 css 类名\n */\n className?: SchemaClassName;\n\n /**\n * 关键字名字。\n *\n * @default keywords\n */\n name?: string;\n\n /**\n * 占位符\n */\n placeholder?: string;\n\n /**\n * 是否为 Mini 样式。\n */\n mini?: boolean;\n\n /**\n * 是否立马搜索。\n */\n searchImediately?: boolean;\n}\n\ninterface SearchBoxProps\n extends RendererProps,\n Omit<SearchBoxSchema, 'type' | 'className'> {\n name: string;\n onQuery?: (query: {[propName: string]: string}) => void;\n}\n\nexport interface SearchBoxState {\n value: string;\n}\n\n@Renderer({\n type: 'search-box'\n})\nexport class SearchBoxRenderer extends React.Component<\n SearchBoxProps,\n SearchBoxState\n> {\n static defaultProps = {\n name: 'keywords',\n mini: false,\n searchImediately: false\n };\n\n static propsList: Array<string> = ['mini', 'searchImediately'];\n\n constructor(props: SearchBoxProps) {\n super(props);\n this.state = {\n value: getPropValue(props) || ''\n };\n }\n\n @autobind\n handleChange(value: string) {\n this.setState({value});\n }\n\n @autobind\n handleCancel() {\n const name = this.props.name;\n const onQuery = this.props.onQuery;\n const value = getPropValue(this.props);\n if (value !== '') {\n const data: any = {};\n setVariable(data, name, '');\n onQuery?.(data);\n }\n }\n\n @autobind\n handleSearch(text: string) {\n const {name, onQuery: onQuery} = this.props;\n const data: any = {};\n setVariable(data, name, text);\n onQuery?.(data);\n }\n\n render() {\n const {\n data,\n name,\n onQuery: onQuery,\n mini,\n searchImediately,\n placeholder,\n onChange,\n className\n } = this.props;\n\n const value = this.state.value;\n\n return (\n <SearchBox\n className={className}\n name={name}\n disabled={!onQuery}\n defaultActive={!!value}\n defaultValue={onChange ? undefined : value}\n value={value}\n mini={mini}\n searchImediately={searchImediately}\n onSearch={this.handleSearch}\n onCancel={this.handleCancel}\n placeholder={placeholder}\n onChange={this.handleChange}\n />\n );\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/store/combo.d.ts
CHANGED
@@ -2516,13 +2516,6 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
|
|
2516
2516
|
readonly errors: {
|
2517
2517
|
[propName: string]: string[];
|
2518
2518
|
};
|
2519
|
-
/**
|
2520
|
-
* name 值有两种类型:
|
2521
|
-
* 1. 数字索引,出现在多条模式下,这个时候,需要返回当前索引下的form,并且用于下一层的遍历搜索
|
2522
|
-
* 2. 普通的表单项 name 值,出现在单条模式下,当前这层查找已经结束,所以要返回当前找到的items,而不能返回form
|
2523
|
-
*
|
2524
|
-
* @param name 查找的name
|
2525
|
-
*/
|
2526
2519
|
getValueByName(name: string, canAccessSuperData?: boolean): any;
|
2527
2520
|
getPristineValueByName(name: string): any;
|
2528
2521
|
getItemById(id: string): ({
|
@@ -5799,13 +5792,6 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
|
|
5799
5792
|
readonly errors: {
|
5800
5793
|
[propName: string]: string[];
|
5801
5794
|
};
|
5802
|
-
/**
|
5803
|
-
* name 值有两种类型:
|
5804
|
-
* 1. 数字索引,出现在多条模式下,这个时候,需要返回当前索引下的form,并且用于下一层的遍历搜索
|
5805
|
-
* 2. 普通的表单项 name 值,出现在单条模式下,当前这层查找已经结束,所以要返回当前找到的items,而不能返回form
|
5806
|
-
*
|
5807
|
-
* @param name 查找的name
|
5808
|
-
*/
|
5809
5795
|
getValueByName(name: string, canAccessSuperData?: boolean): any;
|
5810
5796
|
getPristineValueByName(name: string): any;
|
5811
5797
|
getItemById(id: string): ({
|
package/lib/store/crud.js
CHANGED
@@ -8,6 +8,7 @@ var service_1 = require("./service");
|
|
8
8
|
var helper_1 = require("../utils/helper");
|
9
9
|
var pick_1 = (0, tslib_1.__importDefault)(require("lodash/pick"));
|
10
10
|
var tpl_builtin_1 = require("../utils/tpl-builtin");
|
11
|
+
var api_1 = require("../utils/api");
|
11
12
|
var ServerError = /** @class */ (function (_super) {
|
12
13
|
(0, tslib_1.__extends)(ServerError, _super);
|
13
14
|
function ServerError() {
|
@@ -133,12 +134,7 @@ exports.CRUDStore = service_1.ServiceStore.named('CRUDStore')
|
|
133
134
|
throw new Error(self.__('CRUD.invalidData'));
|
134
135
|
}
|
135
136
|
self.updatedAt = Date.now();
|
136
|
-
result = json.data;
|
137
|
-
if (Array.isArray(result)) {
|
138
|
-
result = {
|
139
|
-
items: result
|
140
|
-
};
|
141
|
-
}
|
137
|
+
result = (0, api_1.normalizeApiResponseData)(json.data);
|
142
138
|
total = result.total, count = result.count, page = result.page, hasNext = result.hasNext, oItems = result.items, oRows = result.rows, columns = result.columns, rest = (0, tslib_1.__rest)(result, ["total", "count", "page", "hasNext", "items", "rows", "columns"]);
|
143
139
|
items = void 0;
|
144
140
|
if (options.source) {
|
@@ -240,7 +236,7 @@ exports.CRUDStore = service_1.ServiceStore.named('CRUDStore')
|
|
240
236
|
json = _d.sent();
|
241
237
|
self.markSaving(false);
|
242
238
|
if (!(0, helper_1.isEmpty)(json.data) || json.ok) {
|
243
|
-
self.updateData(json.data, {
|
239
|
+
self.updateData((0, api_1.normalizeApiResponseData)(json.data), {
|
244
240
|
__saved: Date.now()
|
245
241
|
}, !!api && api.replaceData);
|
246
242
|
self.updatedAt = Date.now();
|
package/lib/store/crud.js.map
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/store/crud.ts"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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",
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import {saveAs} from 'file-saver';\nimport {\n types,\n getParent,\n flow,\n getEnv,\n getRoot,\n isAlive,\n Instance\n} from 'mobx-state-tree';\nimport {IRendererStore} from './index';\nimport {ServiceStore} from './service';\nimport {\n extendObject,\n createObject,\n isObjectShallowModified,\n sortArray,\n isEmpty,\n qsstringify\n} from '../utils/helper';\nimport {Api, Payload, fetchOptions, Action, ApiObject} from '../types';\nimport pick from 'lodash/pick';\nimport {resolveVariableAndFilter} from '../utils/tpl-builtin';\n\nclass ServerError extends Error {\n type = 'ServerError';\n}\n\nexport const CRUDStore = ServiceStore.named('CRUDStore')\n .props({\n pristineQuery: types.optional(types.frozen(), {}),\n query: types.optional(types.frozen(), {}),\n prevPage: 1,\n page: 1,\n perPage: 10,\n total: 0,\n mode: 'normal',\n hasNext: false,\n selectedAction: types.frozen(),\n columns: types.frozen(),\n items: types.optional(types.array(types.frozen()), []),\n selectedItems: types.optional(types.array(types.frozen()), []),\n unSelectedItems: types.optional(types.array(types.frozen()), []),\n filterTogggable: false,\n filterVisible: true,\n hasInnerModalOpen: false\n })\n .views(self => ({\n get lastPage() {\n return Math.max(\n Math.ceil(self.total / (self.perPage < 1 ? 10 : self.perPage)),\n 1\n );\n },\n\n get filterData() {\n return createObject(self.data, {\n ...self.query\n });\n },\n\n get mergedData() {\n return extendObject(self.data, {\n ...self.query,\n ...self.data,\n selectedItems: self.selectedItems,\n unSelectedItems: self.unSelectedItems\n });\n },\n\n get hasModalOpened() {\n return self.dialogOpen || self.drawerOpen || self.hasInnerModalOpen;\n },\n\n get selectedItemsAsArray() {\n return self.selectedItems.concat();\n },\n\n fetchCtxOf(\n data: any,\n options: {\n pageField?: string;\n perPageField?: string;\n }\n ) {\n return createObject(data, {\n ...self.query,\n [options.pageField || 'page']: self.page,\n [options.perPageField || 'perPage']: self.perPage,\n ...data\n });\n }\n }))\n .actions(self => {\n let fetchCancel: Function | null = null;\n\n function setPristineQuery() {\n self.pristineQuery = self.query;\n }\n\n function updateQuery(\n values: object,\n updater?: Function,\n pageField: string = 'page',\n perPageField: string = 'perPage',\n replace: boolean = false\n ) {\n const originQuery = self.query;\n self.query = replace\n ? {\n ...values\n }\n : {\n ...self.query,\n ...values\n };\n\n if (self.query[pageField || 'page']) {\n self.page = parseInt(self.query[pageField || 'page'], 10);\n }\n\n if (self.query[perPageField || 'perPage']) {\n self.perPage = parseInt(self.query[perPageField || 'perPage'], 10);\n }\n\n updater &&\n isObjectShallowModified(originQuery, self.query, false) &&\n setTimeout(updater.bind(null, `?${qsstringify(self.query)}`), 4);\n }\n\n const fetchInitData: (\n api: Api,\n data?: object,\n options?: fetchOptions & {\n forceReload?: boolean;\n loadDataOnce?: boolean; // 配置数据是否一次性加载,如果是这样,由前端来完成分页,排序等功能。\n loadDataOnceFetchOnFilter?: boolean; // 在开启loadDataOnce时,filter时是否去重新请求api\n source?: string; // 支持自定义属于映射,默认不配置,读取 rows 或者 items\n loadDataMode?: boolean;\n syncResponse2Query?: boolean;\n }\n ) => Promise<any> = flow(function* getInitData(\n api: Api,\n data: object,\n options: fetchOptions & {\n forceReload?: boolean;\n loadDataOnce?: boolean; // 配置数据是否一次性加载,如果是这样,由前端来完成分页,排序等功能。\n loadDataOnceFetchOnFilter?: boolean; // 在开启loadDataOnce时,filter时是否去重新请求api\n source?: string; // 支持自定义属于映射,默认不配置,读取 rows 或者 items\n loadDataMode?: boolean;\n syncResponse2Query?: boolean;\n } = {}\n ) {\n try {\n if (!options.forceReload && options.loadDataOnce && self.total) {\n let items = options.source\n ? resolveVariableAndFilter(\n options.source,\n createObject(self.mergedData, {\n items: self.data.itemsRaw,\n rows: self.data.itemsRaw\n }),\n '| raw'\n )\n : self.items.concat();\n\n if (self.query.orderBy) {\n const dir = /desc/i.test(self.query.orderDir) ? -1 : 1;\n items = sortArray(items, self.query.orderBy, dir);\n }\n\n const data = {\n ...self.data,\n total: items.length,\n items: items.slice(\n (self.page - 1) * self.perPage,\n self.page * self.perPage\n )\n };\n self.total = parseInt(data.total ?? data.count, 10) || 0;\n self.reInitData(data);\n return;\n }\n\n if (fetchCancel) {\n fetchCancel();\n fetchCancel = null;\n self.fetching = false;\n }\n\n options.silent || self.markFetching(true);\n const ctx: any = createObject(self.data, {\n ...self.query,\n ...data,\n [options.pageField || 'page']: self.page,\n [options.perPageField || 'perPage']: self.perPage\n });\n\n // 一次性加载不要发送 perPage 属性\n if (options.loadDataOnce) {\n delete ctx[options.perPageField || 'perPage'];\n }\n\n const json: Payload = yield getEnv(self).fetcher(api, ctx, {\n ...options,\n cancelExecutor: (executor: Function) => (fetchCancel = executor)\n });\n fetchCancel = null;\n\n if (!json.ok) {\n self.updateMessage(\n json.msg ?? options.errorMessage ?? self.__('CRUD.fetchFailed'),\n true\n );\n getEnv(self).notify(\n 'error',\n json.msg,\n json.msgTimeout !== undefined\n ? {\n closeButton: true,\n timeout: json.msgTimeout\n }\n : undefined\n );\n } else {\n if (!json.data) {\n throw new Error(self.__('CRUD.invalidData'));\n }\n\n self.updatedAt = Date.now();\n let result = json.data;\n\n if (Array.isArray(result)) {\n result = {\n items: result\n };\n }\n\n const {\n total,\n count,\n page,\n hasNext,\n items: oItems,\n rows: oRows,\n columns,\n ...rest\n } = result;\n\n let items: Array<any>;\n if (options.source) {\n items = resolveVariableAndFilter(\n options.source,\n createObject(self.filterData, result),\n '| raw'\n );\n } else {\n items = result.items || result.rows;\n }\n\n if (!Array.isArray(items)) {\n throw new Error(self.__('CRUD.invalidArray'));\n } else {\n // 确保成员是对象。\n items.map((item: any) =>\n typeof item === 'string' ? {text: item} : item\n );\n }\n\n // 点击加载更多数据\n let rowsData = [];\n if (options.loadDataMode && Array.isArray(self.data.items)) {\n rowsData = self.data.items.concat(items);\n } else {\n // 第一次的时候就是直接加载请求的数据\n rowsData = items;\n }\n\n const data = {\n ...((api as ApiObject).replaceData ? {} : self.pristine),\n items: rowsData,\n count: count,\n total: total,\n ...rest\n };\n\n if (options.loadDataOnce) {\n // 记录原始集合,后续可能基于原始数据做排序查找。\n data.itemsRaw = oItems || oRows;\n\n if (self.query.orderBy) {\n const dir = /desc/i.test(self.query.orderDir) ? -1 : 1;\n rowsData = sortArray(rowsData, self.query.orderBy, dir);\n }\n data.items = rowsData.slice(\n (self.page - 1) * self.perPage,\n self.page * self.perPage\n );\n data.count = data.total = rowsData.length;\n }\n\n if (Array.isArray(columns)) {\n self.columns = columns.concat();\n } else {\n self.columns = undefined;\n }\n\n self.items.replace(rowsData);\n self.reInitData(data, !!(api as ApiObject).replaceData);\n options.syncResponse2Query !== false &&\n updateQuery(\n pick(rest, Object.keys(self.query)),\n undefined,\n options.pageField || 'page',\n options.perPageField || 'perPage'\n );\n\n self.total = parseInt(data.total ?? data.count, 10) || 0;\n typeof page !== 'undefined' && (self.page = parseInt(page, 10));\n\n // 分页情况不清楚,只能知道有没有下一页。\n if (typeof hasNext !== 'undefined') {\n self.mode = 'simple';\n self.total = 0;\n self.hasNext = !!hasNext;\n }\n\n self.updateMessage(json.msg ?? options.successMessage);\n\n // 配置了获取成功提示后提示,默认是空不会提示。\n options &&\n options.successMessage &&\n getEnv(self).notify('success', self.msg);\n }\n\n self.markFetching(false);\n return json;\n } catch (e) {\n const env = getEnv(self) as IRendererStore;\n\n if (!isAlive(self) || self.disposed) {\n return;\n }\n\n self.markFetching(false);\n\n if (env.isCancel(e)) {\n return;\n }\n\n console.error(e.stack);\n env.notify('error', e.message);\n return;\n }\n });\n\n function changePage(page: number, perPage?: number | string) {\n self.page = page;\n perPage && (self.perPage = parseInt(perPage as string, 10));\n }\n\n function selectAction(action: Action) {\n self.selectedAction = action;\n }\n\n const saveRemote: (\n api: Api,\n data?: object,\n options?: fetchOptions\n ) => Promise<any> = flow(function* saveRemote(\n api: Api,\n data: object,\n options: fetchOptions = {}\n ) {\n try {\n options = {\n method: 'post', // 默认走 post\n ...options\n };\n\n self.markSaving(true);\n const json: Payload = yield getEnv(self).fetcher(api, data, options);\n self.markSaving(false);\n\n if (!isEmpty(json.data) || json.ok) {\n self.updateData(\n json.data,\n {\n __saved: Date.now()\n },\n !!api && (api as ApiObject).replaceData\n );\n self.updatedAt = Date.now();\n }\n\n if (!json.ok) {\n self.updateMessage(\n json.msg ?? options.errorMessage ?? self.__('saveFailed'),\n true\n );\n getEnv(self).notify(\n 'error',\n self.msg,\n json.msgTimeout !== undefined\n ? {\n closeButton: true,\n timeout: json.msgTimeout\n }\n : undefined\n );\n throw new ServerError(self.msg);\n } else {\n self.updateMessage(json.msg ?? options.successMessage);\n self.msg &&\n getEnv(self).notify(\n 'success',\n self.msg,\n json.msgTimeout !== undefined\n ? {\n closeButton: true,\n timeout: json.msgTimeout\n }\n : undefined\n );\n }\n return json.data;\n } catch (e) {\n self.markSaving(false);\n\n if (!isAlive(self) || self.disposed) {\n return;\n }\n\n e.type !== 'ServerError' && getEnv(self).notify('error', e.message);\n throw e;\n }\n });\n\n const setFilterTogglable = (toggable: boolean, filterVisible?: boolean) => {\n self.filterTogggable = toggable;\n\n filterVisible !== void 0 && (self.filterVisible = filterVisible);\n };\n\n const setFilterVisible = (visible: boolean) => {\n self.filterVisible = visible;\n };\n\n const setSelectedItems = (items: Array<any>) => {\n self.selectedItems.replace(items);\n };\n\n const setUnSelectedItems = (items: Array<any>) => {\n self.unSelectedItems.replace(items);\n };\n\n const setInnerModalOpened = (value: boolean) => {\n self.hasInnerModalOpen = value;\n };\n\n const initFromScope = function (scope: any, source: string) {\n let rowsData: Array<any> = resolveVariableAndFilter(\n source,\n scope,\n '| raw'\n );\n\n if (!Array.isArray(rowsData) && !self.items.length) {\n return;\n }\n\n rowsData = Array.isArray(rowsData) ? rowsData : [];\n\n const data = {\n ...self.pristine,\n items: rowsData,\n count: 0,\n total: 0\n };\n\n self.items.replace(rowsData);\n self.reInitData(data);\n };\n\n const exportAsCSV = async (\n options: {loadDataOnce?: boolean; api?: Api; data?: any} = {}\n ) => {\n let items = options.loadDataOnce ? self.data.itemsRaw : self.data.items;\n\n if (options.api) {\n const env = getEnv(self);\n const res = await env.fetcher(options.api, options.data);\n if (!res.data) {\n return;\n }\n if (Array.isArray(res.data)) {\n items = res.data;\n } else {\n items = res.data.rows || res.data.items;\n }\n }\n\n import('papaparse').then((papaparse: any) => {\n const csvText = papaparse.unparse(items);\n if (csvText) {\n const blob = new Blob(\n // 加上 BOM 这样 Excel 打开的时候就不会乱码\n [new Uint8Array([0xef, 0xbb, 0xbf]), csvText],\n {\n type: 'text/plain;charset=utf-8'\n }\n );\n saveAs(blob, 'data.csv');\n }\n });\n };\n\n return {\n setPristineQuery,\n updateQuery,\n fetchInitData,\n changePage,\n selectAction,\n saveRemote,\n setFilterTogglable,\n setFilterVisible,\n setSelectedItems,\n setUnSelectedItems,\n setInnerModalOpened,\n initFromScope,\n exportAsCSV\n };\n });\n\nexport type ICRUDStore = Instance<typeof CRUDStore>;\n"
|
11
|
+
"import {saveAs} from 'file-saver';\nimport {\n types,\n getParent,\n flow,\n getEnv,\n getRoot,\n isAlive,\n Instance\n} from 'mobx-state-tree';\nimport {IRendererStore} from './index';\nimport {ServiceStore} from './service';\nimport {\n extendObject,\n createObject,\n isObjectShallowModified,\n sortArray,\n isEmpty,\n qsstringify\n} from '../utils/helper';\nimport {Api, Payload, fetchOptions, Action, ApiObject} from '../types';\nimport pick from 'lodash/pick';\nimport {resolveVariableAndFilter} from '../utils/tpl-builtin';\nimport {normalizeApiResponseData} from '../utils/api';\n\nclass ServerError extends Error {\n type = 'ServerError';\n}\n\nexport const CRUDStore = ServiceStore.named('CRUDStore')\n .props({\n pristineQuery: types.optional(types.frozen(), {}),\n query: types.optional(types.frozen(), {}),\n prevPage: 1,\n page: 1,\n perPage: 10,\n total: 0,\n mode: 'normal',\n hasNext: false,\n selectedAction: types.frozen(),\n columns: types.frozen(),\n items: types.optional(types.array(types.frozen()), []),\n selectedItems: types.optional(types.array(types.frozen()), []),\n unSelectedItems: types.optional(types.array(types.frozen()), []),\n filterTogggable: false,\n filterVisible: true,\n hasInnerModalOpen: false\n })\n .views(self => ({\n get lastPage() {\n return Math.max(\n Math.ceil(self.total / (self.perPage < 1 ? 10 : self.perPage)),\n 1\n );\n },\n\n get filterData() {\n return createObject(self.data, {\n ...self.query\n });\n },\n\n get mergedData() {\n return extendObject(self.data, {\n ...self.query,\n ...self.data,\n selectedItems: self.selectedItems,\n unSelectedItems: self.unSelectedItems\n });\n },\n\n get hasModalOpened() {\n return self.dialogOpen || self.drawerOpen || self.hasInnerModalOpen;\n },\n\n get selectedItemsAsArray() {\n return self.selectedItems.concat();\n },\n\n fetchCtxOf(\n data: any,\n options: {\n pageField?: string;\n perPageField?: string;\n }\n ) {\n return createObject(data, {\n ...self.query,\n [options.pageField || 'page']: self.page,\n [options.perPageField || 'perPage']: self.perPage,\n ...data\n });\n }\n }))\n .actions(self => {\n let fetchCancel: Function | null = null;\n\n function setPristineQuery() {\n self.pristineQuery = self.query;\n }\n\n function updateQuery(\n values: object,\n updater?: Function,\n pageField: string = 'page',\n perPageField: string = 'perPage',\n replace: boolean = false\n ) {\n const originQuery = self.query;\n self.query = replace\n ? {\n ...values\n }\n : {\n ...self.query,\n ...values\n };\n\n if (self.query[pageField || 'page']) {\n self.page = parseInt(self.query[pageField || 'page'], 10);\n }\n\n if (self.query[perPageField || 'perPage']) {\n self.perPage = parseInt(self.query[perPageField || 'perPage'], 10);\n }\n\n updater &&\n isObjectShallowModified(originQuery, self.query, false) &&\n setTimeout(updater.bind(null, `?${qsstringify(self.query)}`), 4);\n }\n\n const fetchInitData: (\n api: Api,\n data?: object,\n options?: fetchOptions & {\n forceReload?: boolean;\n loadDataOnce?: boolean; // 配置数据是否一次性加载,如果是这样,由前端来完成分页,排序等功能。\n loadDataOnceFetchOnFilter?: boolean; // 在开启loadDataOnce时,filter时是否去重新请求api\n source?: string; // 支持自定义属于映射,默认不配置,读取 rows 或者 items\n loadDataMode?: boolean;\n syncResponse2Query?: boolean;\n }\n ) => Promise<any> = flow(function* getInitData(\n api: Api,\n data: object,\n options: fetchOptions & {\n forceReload?: boolean;\n loadDataOnce?: boolean; // 配置数据是否一次性加载,如果是这样,由前端来完成分页,排序等功能。\n loadDataOnceFetchOnFilter?: boolean; // 在开启loadDataOnce时,filter时是否去重新请求api\n source?: string; // 支持自定义属于映射,默认不配置,读取 rows 或者 items\n loadDataMode?: boolean;\n syncResponse2Query?: boolean;\n } = {}\n ) {\n try {\n if (!options.forceReload && options.loadDataOnce && self.total) {\n let items = options.source\n ? resolveVariableAndFilter(\n options.source,\n createObject(self.mergedData, {\n items: self.data.itemsRaw,\n rows: self.data.itemsRaw\n }),\n '| raw'\n )\n : self.items.concat();\n\n if (self.query.orderBy) {\n const dir = /desc/i.test(self.query.orderDir) ? -1 : 1;\n items = sortArray(items, self.query.orderBy, dir);\n }\n\n const data = {\n ...self.data,\n total: items.length,\n items: items.slice(\n (self.page - 1) * self.perPage,\n self.page * self.perPage\n )\n };\n self.total = parseInt(data.total ?? data.count, 10) || 0;\n self.reInitData(data);\n return;\n }\n\n if (fetchCancel) {\n fetchCancel();\n fetchCancel = null;\n self.fetching = false;\n }\n\n options.silent || self.markFetching(true);\n const ctx: any = createObject(self.data, {\n ...self.query,\n ...data,\n [options.pageField || 'page']: self.page,\n [options.perPageField || 'perPage']: self.perPage\n });\n\n // 一次性加载不要发送 perPage 属性\n if (options.loadDataOnce) {\n delete ctx[options.perPageField || 'perPage'];\n }\n\n const json: Payload = yield getEnv(self).fetcher(api, ctx, {\n ...options,\n cancelExecutor: (executor: Function) => (fetchCancel = executor)\n });\n fetchCancel = null;\n\n if (!json.ok) {\n self.updateMessage(\n json.msg ?? options.errorMessage ?? self.__('CRUD.fetchFailed'),\n true\n );\n getEnv(self).notify(\n 'error',\n json.msg,\n json.msgTimeout !== undefined\n ? {\n closeButton: true,\n timeout: json.msgTimeout\n }\n : undefined\n );\n } else {\n if (!json.data) {\n throw new Error(self.__('CRUD.invalidData'));\n }\n\n self.updatedAt = Date.now();\n let result = normalizeApiResponseData(json.data);\n\n const {\n total,\n count,\n page,\n hasNext,\n items: oItems,\n rows: oRows,\n columns,\n ...rest\n } = result;\n\n let items: Array<any>;\n if (options.source) {\n items = resolveVariableAndFilter(\n options.source,\n createObject(self.filterData, result),\n '| raw'\n );\n } else {\n items = result.items || result.rows;\n }\n\n if (!Array.isArray(items)) {\n throw new Error(self.__('CRUD.invalidArray'));\n } else {\n // 确保成员是对象。\n items.map((item: any) =>\n typeof item === 'string' ? {text: item} : item\n );\n }\n\n // 点击加载更多数据\n let rowsData = [];\n if (options.loadDataMode && Array.isArray(self.data.items)) {\n rowsData = self.data.items.concat(items);\n } else {\n // 第一次的时候就是直接加载请求的数据\n rowsData = items;\n }\n\n const data = {\n ...((api as ApiObject).replaceData ? {} : self.pristine),\n items: rowsData,\n count: count,\n total: total,\n ...rest\n };\n\n if (options.loadDataOnce) {\n // 记录原始集合,后续可能基于原始数据做排序查找。\n data.itemsRaw = oItems || oRows;\n\n if (self.query.orderBy) {\n const dir = /desc/i.test(self.query.orderDir) ? -1 : 1;\n rowsData = sortArray(rowsData, self.query.orderBy, dir);\n }\n data.items = rowsData.slice(\n (self.page - 1) * self.perPage,\n self.page * self.perPage\n );\n data.count = data.total = rowsData.length;\n }\n\n if (Array.isArray(columns)) {\n self.columns = columns.concat();\n } else {\n self.columns = undefined;\n }\n\n self.items.replace(rowsData);\n self.reInitData(data, !!(api as ApiObject).replaceData);\n options.syncResponse2Query !== false &&\n updateQuery(\n pick(rest, Object.keys(self.query)),\n undefined,\n options.pageField || 'page',\n options.perPageField || 'perPage'\n );\n\n self.total = parseInt(data.total ?? data.count, 10) || 0;\n typeof page !== 'undefined' && (self.page = parseInt(page, 10));\n\n // 分页情况不清楚,只能知道有没有下一页。\n if (typeof hasNext !== 'undefined') {\n self.mode = 'simple';\n self.total = 0;\n self.hasNext = !!hasNext;\n }\n\n self.updateMessage(json.msg ?? options.successMessage);\n\n // 配置了获取成功提示后提示,默认是空不会提示。\n options &&\n options.successMessage &&\n getEnv(self).notify('success', self.msg);\n }\n\n self.markFetching(false);\n return json;\n } catch (e) {\n const env = getEnv(self) as IRendererStore;\n\n if (!isAlive(self) || self.disposed) {\n return;\n }\n\n self.markFetching(false);\n\n if (env.isCancel(e)) {\n return;\n }\n\n console.error(e.stack);\n env.notify('error', e.message);\n return;\n }\n });\n\n function changePage(page: number, perPage?: number | string) {\n self.page = page;\n perPage && (self.perPage = parseInt(perPage as string, 10));\n }\n\n function selectAction(action: Action) {\n self.selectedAction = action;\n }\n\n const saveRemote: (\n api: Api,\n data?: object,\n options?: fetchOptions\n ) => Promise<any> = flow(function* saveRemote(\n api: Api,\n data: object,\n options: fetchOptions = {}\n ) {\n try {\n options = {\n method: 'post', // 默认走 post\n ...options\n };\n\n self.markSaving(true);\n const json: Payload = yield getEnv(self).fetcher(api, data, options);\n self.markSaving(false);\n\n if (!isEmpty(json.data) || json.ok) {\n self.updateData(\n normalizeApiResponseData(json.data),\n {\n __saved: Date.now()\n },\n !!api && (api as ApiObject).replaceData\n );\n self.updatedAt = Date.now();\n }\n\n if (!json.ok) {\n self.updateMessage(\n json.msg ?? options.errorMessage ?? self.__('saveFailed'),\n true\n );\n getEnv(self).notify(\n 'error',\n self.msg,\n json.msgTimeout !== undefined\n ? {\n closeButton: true,\n timeout: json.msgTimeout\n }\n : undefined\n );\n throw new ServerError(self.msg);\n } else {\n self.updateMessage(json.msg ?? options.successMessage);\n self.msg &&\n getEnv(self).notify(\n 'success',\n self.msg,\n json.msgTimeout !== undefined\n ? {\n closeButton: true,\n timeout: json.msgTimeout\n }\n : undefined\n );\n }\n return json.data;\n } catch (e) {\n self.markSaving(false);\n\n if (!isAlive(self) || self.disposed) {\n return;\n }\n\n e.type !== 'ServerError' && getEnv(self).notify('error', e.message);\n throw e;\n }\n });\n\n const setFilterTogglable = (toggable: boolean, filterVisible?: boolean) => {\n self.filterTogggable = toggable;\n\n filterVisible !== void 0 && (self.filterVisible = filterVisible);\n };\n\n const setFilterVisible = (visible: boolean) => {\n self.filterVisible = visible;\n };\n\n const setSelectedItems = (items: Array<any>) => {\n self.selectedItems.replace(items);\n };\n\n const setUnSelectedItems = (items: Array<any>) => {\n self.unSelectedItems.replace(items);\n };\n\n const setInnerModalOpened = (value: boolean) => {\n self.hasInnerModalOpen = value;\n };\n\n const initFromScope = function (scope: any, source: string) {\n let rowsData: Array<any> = resolveVariableAndFilter(\n source,\n scope,\n '| raw'\n );\n\n if (!Array.isArray(rowsData) && !self.items.length) {\n return;\n }\n\n rowsData = Array.isArray(rowsData) ? rowsData : [];\n\n const data = {\n ...self.pristine,\n items: rowsData,\n count: 0,\n total: 0\n };\n\n self.items.replace(rowsData);\n self.reInitData(data);\n };\n\n const exportAsCSV = async (\n options: {loadDataOnce?: boolean; api?: Api; data?: any} = {}\n ) => {\n let items = options.loadDataOnce ? self.data.itemsRaw : self.data.items;\n\n if (options.api) {\n const env = getEnv(self);\n const res = await env.fetcher(options.api, options.data);\n if (!res.data) {\n return;\n }\n if (Array.isArray(res.data)) {\n items = res.data;\n } else {\n items = res.data.rows || res.data.items;\n }\n }\n\n import('papaparse').then((papaparse: any) => {\n const csvText = papaparse.unparse(items);\n if (csvText) {\n const blob = new Blob(\n // 加上 BOM 这样 Excel 打开的时候就不会乱码\n [new Uint8Array([0xef, 0xbb, 0xbf]), csvText],\n {\n type: 'text/plain;charset=utf-8'\n }\n );\n saveAs(blob, 'data.csv');\n }\n });\n };\n\n return {\n setPristineQuery,\n updateQuery,\n fetchInitData,\n changePage,\n selectAction,\n saveRemote,\n setFilterTogglable,\n setFilterVisible,\n setSelectedItems,\n setUnSelectedItems,\n setInnerModalOpened,\n initFromScope,\n exportAsCSV\n };\n });\n\nexport type ICRUDStore = Instance<typeof CRUDStore>;\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/store/form.js
CHANGED
@@ -12,6 +12,7 @@ var helper_1 = require("../utils/helper");
|
|
12
12
|
var isEqual_1 = (0, tslib_1.__importDefault)(require("lodash/isEqual"));
|
13
13
|
var flatten_1 = (0, tslib_1.__importDefault)(require("lodash/flatten"));
|
14
14
|
var tpl_1 = require("../utils/tpl");
|
15
|
+
var api_1 = require("../utils/api");
|
15
16
|
exports.FormStore = service_1.ServiceStore.named('FormStore')
|
16
17
|
.props({
|
17
18
|
inited: false,
|
@@ -233,7 +234,7 @@ exports.FormStore = service_1.ServiceStore.named('FormStore')
|
|
233
234
|
// 失败也同样修改数据,如果有数据的话。
|
234
235
|
if (!(0, helper_1.isEmpty)(json.data) || json.ok) {
|
235
236
|
self.updatedAt = Date.now();
|
236
|
-
setValues(json.data, json.ok
|
237
|
+
setValues((0, api_1.normalizeApiResponseData)(json.data), json.ok
|
237
238
|
? {
|
238
239
|
__saved: Date.now()
|
239
240
|
}
|