@mijalowcode/materials 1.1.2 → 1.1.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.
@@ -0,0 +1,3 @@
1
+ export { ButtonWrapper_default as default } from './chunk-HKJUEMT3.js';
2
+ //# sourceMappingURL=ButtonWrapper-OHOHZQJP.js.map
3
+ //# sourceMappingURL=ButtonWrapper-OHOHZQJP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"ButtonWrapper-HJIWAEIJ.js"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"ButtonWrapper-OHOHZQJP.js"}
@@ -0,0 +1,5 @@
1
+ export { buildProTableSlotRuntimeContext, ProTableWrapper_default as default } from './chunk-GRH5DVD3.js';
2
+ import './chunk-VNMO5V4F.js';
3
+ import './chunk-CTF6CVK3.js';
4
+ //# sourceMappingURL=ProTableWrapper-66V3DHFS.js.map
5
+ //# sourceMappingURL=ProTableWrapper-66V3DHFS.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"ProTableWrapper-2VRYHYZG.js"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"ProTableWrapper-66V3DHFS.js"}
@@ -72,7 +72,22 @@ function resolveColumnSlotAreaNames(col) {
72
72
  }
73
73
  return areaNames;
74
74
  }
75
- function convertColumns(columns = [], getAreaNodes, areaMap = {}, hasExternalRenderSlot = false) {
75
+ function isPlainObject(value) {
76
+ return Boolean(value) && typeof value === "object" && !Array.isArray(value);
77
+ }
78
+ function buildProTableSlotRuntimeContext(runtimeContext, slotRuntimeContext) {
79
+ const baseData = isPlainObject(runtimeContext?.data) ? runtimeContext.data : {};
80
+ const slotData = isPlainObject(slotRuntimeContext.data) ? slotRuntimeContext.data : {};
81
+ return {
82
+ ...runtimeContext || {},
83
+ ...slotRuntimeContext,
84
+ data: {
85
+ ...baseData,
86
+ ...slotData
87
+ }
88
+ };
89
+ }
90
+ function convertColumns(columns = [], getAreaNodes, areaMap = {}, hasExternalRenderSlot = false, runtimeContext) {
76
91
  return columns.map((col) => {
77
92
  const extendedCol = col;
78
93
  const areaNames = resolveColumnSlotAreaNames(col);
@@ -119,9 +134,9 @@ function convertColumns(columns = [], getAreaNodes, areaMap = {}, hasExternalRen
119
134
  if (matchedNodes !== void 0) {
120
135
  return matchedNodes;
121
136
  }
122
- return getAreaNodes?.(areaName, {
123
- ...slotPayload,
124
- runtimeContext: {
137
+ const slotRuntimeContext = buildProTableSlotRuntimeContext(
138
+ runtimeContext,
139
+ {
125
140
  scope: "table.cell",
126
141
  area: areaName,
127
142
  container: {
@@ -138,6 +153,10 @@ function convertColumns(columns = [], getAreaNodes, areaMap = {}, hasExternalRen
138
153
  status: enumMatch?.status
139
154
  }
140
155
  }
156
+ );
157
+ return getAreaNodes?.(areaName, {
158
+ ...slotPayload,
159
+ runtimeContext: slotRuntimeContext
141
160
  });
142
161
  },
143
162
  void 0
@@ -209,14 +228,22 @@ function ProTableWrapper({
209
228
  });
210
229
  return Array.from(areaSet).map((name) => ({ name }));
211
230
  }, [columns, toolbarSlotName]);
231
+ const runtimeContext = runtime?.context;
212
232
  const { getAreaNodes, areaMap } = useSlotRuntime({
213
233
  renderSlot,
214
234
  children,
215
- areas: slotAreas
235
+ areas: slotAreas,
236
+ context: runtimeContext ? { runtimeContext } : void 0
216
237
  });
217
238
  const proColumns = useMemo(
218
- () => convertColumns(columns, getAreaNodes, areaMap, Boolean(renderSlot)),
219
- [columns, getAreaNodes, areaMap, renderSlot]
239
+ () => convertColumns(
240
+ columns,
241
+ getAreaNodes,
242
+ areaMap,
243
+ Boolean(renderSlot),
244
+ runtimeContext
245
+ ),
246
+ [columns, getAreaNodes, areaMap, renderSlot, runtimeContext]
220
247
  );
221
248
  const toolbarNodes = useMemo(() => {
222
249
  return getAreaNodes(toolbarSlotName, { actionRef: actionRef.current });
@@ -363,7 +390,7 @@ function ProTableWrapper({
363
390
  headerTitle,
364
391
  size,
365
392
  tableStyle: {
366
- padding: toolbarNodes ? 0 : 24
393
+ padding: toolbarNodes || !searchConfig ? 0 : 24
367
394
  },
368
395
  bordered,
369
396
  showHeader,
@@ -382,6 +409,6 @@ function ProTableWrapper({
382
409
  }
383
410
  var ProTableWrapper_default = ProTableWrapper;
384
411
 
385
- export { ProTableWrapper_default };
386
- //# sourceMappingURL=chunk-URB3CLYQ.js.map
387
- //# sourceMappingURL=chunk-URB3CLYQ.js.map
412
+ export { ProTableWrapper_default, buildProTableSlotRuntimeContext };
413
+ //# sourceMappingURL=chunk-GRH5DVD3.js.map
414
+ //# sourceMappingURL=chunk-GRH5DVD3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/antdPro/ProTable/data-source.ts","../src/antdPro/ProTable/ProTableWrapper.tsx"],"names":["size","AntdProTable"],"mappings":"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","file":"chunk-GRH5DVD3.js","sourcesContent":["export type TableRowRecord = Record<string, unknown>;\n\nexport function normalizeProTableDataSource(\n dataSource: unknown,\n): TableRowRecord[] {\n return Array.isArray(dataSource)\n ? dataSource.filter(\n (item): item is TableRowRecord =>\n Boolean(item) && typeof item === \"object\" && !Array.isArray(item),\n )\n : [];\n}\n\nexport function hasTableRequestBinding(\n eventMap: Record<string, unknown> | undefined,\n): boolean {\n const binding = eventMap?.[\"table.request\"];\n if (!binding || typeof binding !== \"object\" || Array.isArray(binding)) {\n return false;\n }\n const current = binding as {\n enabled?: unknown;\n handlerName?: unknown;\n handlerCode?: unknown;\n actions?: unknown;\n };\n if (current.enabled === false) return false;\n if (typeof current.handlerName === \"string\" && current.handlerName.trim()) {\n return true;\n }\n if (typeof current.handlerCode === \"string\" && current.handlerCode.trim()) {\n return true;\n }\n return Array.isArray(current.actions) && current.actions.length > 0;\n}\n","import {\r\n useCallback,\r\n useRef,\r\n useState,\r\n useEffect,\r\n useMemo,\r\n type ReactNode,\r\n type ComponentProps,\r\n} from \"react\";\r\nimport { ProTable as AntdProTable } from \"@ant-design/pro-components\";\r\nimport type { ProColumns, ActionType } from \"@ant-design/pro-components\";\r\nimport type { TableColumnConfig, FieldPropsConfig } from \"@mijalowcode/types\";\r\nimport { useSlotRuntime, type SlotArea } from \"../../slot-runtime\";\r\nimport { useEventEmitter, type EventEmitter } from \"../../event-runtime\";\r\nimport * as AntdIcons from \"@ant-design/icons\";\r\nimport {\r\n hasTableRequestBinding,\r\n normalizeProTableDataSource,\r\n} from \"./data-source\";\r\n\r\ntype TableRequestResult = {\r\n data: Record<string, unknown>[];\r\n success: boolean;\r\n total: number;\r\n};\r\n\r\ntype RegisterCapabilities = (\r\n componentId: string,\r\n capabilities: Record<string, (...args: unknown[]) => unknown>,\r\n) => () => void;\r\n\r\ntype MaterialRuntime = {\n nodeId: string;\n context?: Record<string, unknown>;\n registerComponentCapabilities?: RegisterCapabilities;\n};\n\r\ninterface ProTableWrapperProps {\r\n columns?: TableColumnConfig[];\r\n dataSource?: unknown;\r\n type?: \"\" | \"form\" | \"list\" | \"descriptions\" | \"table\" | \"cardList\";\r\n rowKey?: string;\r\n headerTitle?: string;\r\n size?: \"large\" | \"middle\" | \"small\";\r\n bordered?: boolean;\r\n showHeader?: boolean;\r\n search?: boolean;\r\n rowSelectionEnabled?: boolean;\r\n rowSelectionType?: \"checkbox\" | \"radio\";\r\n paginationEnabled?: boolean;\r\n pageSize?: number;\r\n showSizeChanger?: boolean;\r\n showQuickJumper?: boolean;\r\n scrollX?: number;\r\n scrollY?: number;\r\n autoHeight?: boolean;\r\n autoHeightOffset?: number;\r\n autoHeightMinY?: number;\r\n style?: React.CSSProperties;\r\n onEvent?: EventEmitter;\r\n renderSlot?: (\r\n slotName: string,\r\n payload?: Record<string, unknown>,\r\n ) => ReactNode;\r\n children?: ReactNode;\r\n toolbarSlotName?: string;\r\n runtime?: MaterialRuntime;\r\n __nodeId?: string;\r\n __registerCapabilities?: RegisterCapabilities;\r\n __events?: Record<string, unknown>;\r\n}\r\n\r\ntype ProTableSearchProp = ComponentProps<typeof AntdProTable>[\"search\"];\r\n\r\nfunction buildTableRequestSortPayload(sort: Record<string, unknown>) {\r\n const [sortField, sortOrder] = Object.entries(sort).find(([, value]) => {\r\n return value === \"ascend\" || value === \"descend\";\r\n }) || [undefined, undefined];\r\n\r\n if (!sortField || typeof sortOrder !== \"string\") return {};\r\n\r\n return {\r\n sortField,\r\n sortMode: sortOrder === \"ascend\" ? \"ASC\" : \"DESC\",\r\n };\r\n}\r\n\r\nfunction isBindValue(value: unknown): value is {\r\n __bind: {\r\n fallback?: unknown;\r\n };\r\n} {\r\n return (\r\n Boolean(value) &&\r\n typeof value === \"object\" &&\r\n !Array.isArray(value) &&\r\n typeof (value as Record<string, unknown>).__bind === \"object\"\r\n );\r\n}\r\n\r\nfunction renderFieldPropsPrefixSuffix(\r\n fieldProps: FieldPropsConfig | undefined,\r\n) {\r\n if (!fieldProps) return undefined;\r\n\r\n const result: FieldPropsConfig = { ...fieldProps };\r\n\r\n if (fieldProps.prefixType === \"icon\" && fieldProps.prefixIcon) {\r\n const icons = AntdIcons as unknown as Record<\r\n string,\r\n React.ComponentType<unknown>\r\n >;\r\n const IconComponent = icons[fieldProps.prefixIcon];\r\n result.prefix = IconComponent ? <IconComponent /> : undefined;\r\n } else if (fieldProps.prefixText) {\r\n result.prefix = fieldProps.prefixText as React.ReactNode;\r\n }\r\n\r\n if (fieldProps.suffixType === \"icon\" && fieldProps.suffixIcon) {\r\n const icons = AntdIcons as unknown as Record<\r\n string,\r\n React.ComponentType<unknown>\r\n >;\r\n const IconComponent = icons[fieldProps.suffixIcon];\r\n result.suffix = IconComponent ? <IconComponent /> : undefined;\r\n } else if (fieldProps.suffixText) {\r\n result.suffix = fieldProps.suffixText as React.ReactNode;\r\n }\r\n\r\n return result;\r\n}\r\n\r\nfunction resolveColumnValueEnum(\r\n col: TableColumnConfig,\r\n): ProColumns[\"valueEnum\"] {\r\n if (isBindValue(col.valueEnum)) {\r\n return col.valueEnum.__bind.fallback as ProColumns[\"valueEnum\"];\r\n }\r\n return col.valueEnum as ProColumns[\"valueEnum\"];\r\n}\r\n\r\nfunction resolveColumnSlotAreaNames(col: TableColumnConfig) {\n const areaNames: string[] = [];\n const columnId = String(col.columnId || \"\").trim();\n if (columnId) {\n areaNames.push(`columnId:${columnId}`);\n }\r\n return areaNames;\n}\n\nfunction isPlainObject(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === \"object\" && !Array.isArray(value);\n}\n\nexport function buildProTableSlotRuntimeContext(\n runtimeContext: Record<string, unknown> | undefined,\n slotRuntimeContext: Record<string, unknown>,\n): Record<string, unknown> {\n const baseData = isPlainObject(runtimeContext?.data)\n ? (runtimeContext.data as Record<string, unknown>)\n : {};\n const slotData = isPlainObject(slotRuntimeContext.data)\n ? (slotRuntimeContext.data as Record<string, unknown>)\n : {};\n\n return {\n ...(runtimeContext || {}),\n ...slotRuntimeContext,\n data: {\n ...baseData,\n ...slotData,\n },\n };\n}\n\n// 将低代码列配置转换为 ProTable 列配置,并按约定挂载列级插槽渲染\nfunction convertColumns(\n columns: TableColumnConfig[] = [],\n getAreaNodes?: (\n areaName: string,\n payload?: Record<string, unknown>,\n ) => ReactNode[] | undefined,\n areaMap: Record<string, ReactNode[]> = {},\n hasExternalRenderSlot = false,\n runtimeContext?: Record<string, unknown>,\n): ProColumns[] {\n return columns.map((col) => {\r\n const extendedCol = col as TableColumnConfig & {\r\n slotName?: string;\r\n request?: ProColumns[\"request\"];\r\n };\r\n const areaNames = resolveColumnSlotAreaNames(col);\r\n const hasSchemaSlot = areaNames.some(\r\n (areaName) => areaMap[areaName]?.length,\r\n );\r\n\r\n const proColumn: ProColumns = {\r\n key: col.key || col.dataIndex,\r\n title: col.title,\r\n dataIndex: col.dataIndex,\r\n width: col.width,\r\n align: col.align,\r\n fixed: col.fixed || undefined,\r\n ellipsis: col.ellipsis,\r\n copyable: col.copyable,\r\n sorter: col.sorter,\r\n valueType: col.valueType as any,\r\n valueEnum: resolveColumnValueEnum(col),\r\n request: extendedCol.request,\r\n hideInSearch: col.hideInSearch,\r\n hideInTable: col.hideInTable,\r\n formItemProps: col.formItemProps,\r\n fieldProps: renderFieldPropsPrefixSuffix(col.fieldProps) as any,\r\n };\r\n\r\n if (!areaNames.length || (!hasExternalRenderSlot && !hasSchemaSlot)) {\r\n return proColumn;\r\n }\r\n\r\n proColumn.render = (_, record: Record<string, unknown>, index: number) => {\r\n const rawValue = record[col.dataIndex];\r\n const valueEnum = resolveColumnValueEnum(col) as\r\n | Record<string, { text?: unknown; status?: unknown }>\r\n | undefined;\r\n const enumMatch =\r\n valueEnum && rawValue !== undefined && rawValue !== null\r\n ? valueEnum[String(rawValue)]\r\n : undefined;\r\n const slotPayload = {\n record,\n index,\n column: col,\n value: rawValue,\n valueEnum,\r\n valueEnumItem: enumMatch,\r\n enumText: enumMatch?.text,\r\n enumStatus: enumMatch?.status,\r\n };\r\n const slotNodes = areaNames.reduce<ReactNode[] | undefined>(\n (matchedNodes, areaName) => {\n if (matchedNodes !== undefined) {\n return matchedNodes;\n }\n const slotRuntimeContext = buildProTableSlotRuntimeContext(\n runtimeContext,\n {\n scope: \"table.cell\",\n area: areaName,\n container: {\n type: \"table\",\n area: areaName,\n index,\r\n column: col,\r\n record,\r\n },\r\n data: {\r\n ...slotPayload,\r\n rawValue: rawValue,\r\n displayValue:\r\n enumMatch?.text !== undefined && enumMatch?.text !== null\r\n ? enumMatch.text\r\n : rawValue,\r\n status: enumMatch?.status,\n },\n },\n );\n return getAreaNodes?.(areaName, {\n ...slotPayload,\n runtimeContext: slotRuntimeContext,\n });\n },\n undefined,\n );\n if (slotNodes !== undefined) {\r\n return slotNodes.length === 1 ? slotNodes[0] : slotNodes;\r\n }\r\n return String(record[col.dataIndex] ?? \"\");\r\n };\r\n\r\n return proColumn;\r\n });\r\n}\r\n\r\nfunction ProTableWrapper({\r\n columns = [],\r\n dataSource = [],\r\n rowKey = \"key\",\r\n headerTitle,\r\n size = \"middle\",\r\n bordered = false,\r\n showHeader = true,\r\n search = true,\r\n paginationEnabled = true,\r\n pageSize = 10,\r\n showSizeChanger = true,\r\n showQuickJumper = false,\r\n scrollX,\r\n scrollY,\r\n autoHeight = true,\r\n autoHeightOffset = 0,\r\n autoHeightMinY = 240,\r\n style,\r\n onEvent,\r\n renderSlot,\r\n children,\r\n toolbarSlotName = \"toolbar\",\r\n runtime,\r\n __nodeId,\r\n __registerCapabilities,\r\n __events,\r\n}: ProTableWrapperProps) {\r\n const actionRef = useRef<ActionType>();\r\n const componentNodeId = runtime?.nodeId || __nodeId;\r\n const registerCapabilities =\r\n runtime?.registerComponentCapabilities || __registerCapabilities;\r\n\r\n const tableContainerRef = useRef<HTMLDivElement>(null);\r\n const [searchAreaHeight, setSearchAreaHeight] = useState(0);\r\n const [viewportHeight, setViewportHeight] = useState(\r\n typeof window !== \"undefined\" ? window.innerHeight : 900,\r\n );\r\n const [tablePageSize, setTablePageSize] = useState(pageSize);\r\n const emitEvent = useEventEmitter(onEvent);\r\n\r\n useEffect(() => {\r\n setTablePageSize(pageSize);\r\n }, [pageSize]);\r\n\r\n useEffect(() => {\r\n if (!componentNodeId || !registerCapabilities) return;\r\n return registerCapabilities(componentNodeId, {\r\n reload: () => actionRef.current?.reload?.(),\r\n reloadAndRest: () => actionRef.current?.reloadAndRest?.(),\r\n reset: () => actionRef.current?.reset?.(),\r\n clearSelected: () => actionRef.current?.clearSelected?.(),\r\n });\r\n }, [componentNodeId, registerCapabilities]);\r\n\r\n const slotAreas = useMemo<SlotArea[]>(() => {\n const areaSet = new Set<string>([toolbarSlotName]);\r\n columns.forEach((col) => {\r\n resolveColumnSlotAreaNames(col).forEach((areaName) => {\r\n areaSet.add(areaName);\r\n });\r\n });\r\n return Array.from(areaSet).map((name) => ({ name }));\n }, [columns, toolbarSlotName]);\n const runtimeContext = runtime?.context;\n\n const { getAreaNodes, areaMap } = useSlotRuntime({\n renderSlot,\n children,\n areas: slotAreas,\n context: runtimeContext ? { runtimeContext } : undefined,\n });\n\n const proColumns = useMemo(\n () =>\n convertColumns(\n columns,\n getAreaNodes,\n areaMap,\n Boolean(renderSlot),\n runtimeContext,\n ),\n [columns, getAreaNodes, areaMap, renderSlot, runtimeContext],\n );\n\r\n const toolbarNodes = useMemo(() => {\r\n return getAreaNodes(toolbarSlotName, { actionRef: actionRef.current });\r\n }, [getAreaNodes, toolbarSlotName, actionRef]);\r\n\r\n // 统一获取搜索区节点,用于计算自动高度\r\n const getSearchNode = useCallback(() => {\r\n const container = tableContainerRef.current;\r\n if (!container) return null;\r\n return container.querySelector(\r\n \".ant-pro-table-search\",\r\n ) as HTMLElement | null;\r\n }, []);\r\n\r\n // 同步视口高度与搜索区高度,供表格滚动区高度计算使用\r\n const updateAutoHeightMetrics = useCallback(() => {\r\n setViewportHeight(window.innerHeight);\r\n const searchNode = getSearchNode();\r\n const next = searchNode\r\n ? Math.ceil(searchNode.getBoundingClientRect().height)\r\n : 0;\r\n setSearchAreaHeight(next);\r\n }, [getSearchNode]);\r\n\r\n // autoHeight 开启时监听窗口与搜索区尺寸变化;关闭时清空搜索区高度\r\n useEffect(() => {\r\n if (!autoHeight) {\r\n setSearchAreaHeight(0);\r\n return;\r\n }\r\n\r\n updateAutoHeightMetrics();\r\n\r\n const searchNode = getSearchNode();\r\n const resizeObserver =\r\n searchNode && typeof ResizeObserver !== \"undefined\"\r\n ? new ResizeObserver(updateAutoHeightMetrics)\r\n : null;\r\n\r\n if (resizeObserver && searchNode) {\r\n resizeObserver.observe(searchNode);\r\n }\r\n\r\n window.addEventListener(\"resize\", updateAutoHeightMetrics);\r\n\r\n return () => {\r\n if (resizeObserver) resizeObserver.disconnect();\r\n window.removeEventListener(\"resize\", updateAutoHeightMetrics);\r\n };\r\n }, [autoHeight, search, getSearchNode, updateAutoHeightMetrics]);\r\n\r\n const finalScrollY = useMemo(() => {\r\n if (!autoHeight) return scrollY;\r\n const headerOffset = 47;\r\n const paginationOffset = paginationEnabled ? 40 : 0;\r\n const toolbarOffset = toolbarNodes && toolbarNodes.length > 0 ? 64 : 0;\r\n const dynamic =\r\n viewportHeight -\r\n searchAreaHeight -\r\n autoHeightOffset -\r\n headerOffset -\r\n paginationOffset -\r\n toolbarOffset;\r\n return Math.max(autoHeightMinY, dynamic);\r\n }, [\r\n autoHeight,\r\n scrollY,\r\n viewportHeight,\r\n searchAreaHeight,\r\n autoHeightOffset,\r\n autoHeightMinY,\r\n paginationEnabled,\r\n toolbarNodes,\r\n ]);\r\n\r\n const tableDataSource = useMemo(\r\n () => normalizeProTableDataSource(dataSource),\r\n [dataSource],\r\n );\r\n const hasRequestBinding = useMemo(\r\n () => hasTableRequestBinding(__events),\r\n [__events],\r\n );\r\n\r\n // 配置了 table.request 时完全交给 request 驱动;未配置时使用 dataSource。\r\n const request = useCallback(\r\n async (\r\n params: Record<string, unknown>,\r\n sort: Record<string, unknown>,\r\n filter: Record<string, unknown>,\r\n ): Promise<TableRequestResult> => {\r\n const result = await emitEvent<TableRequestResult>(\"table.request\", {\r\n ...params,\r\n ...buildTableRequestSortPayload(sort),\r\n ...filter,\r\n });\r\n if (result) return result;\r\n return {\r\n data: [],\r\n success: true,\r\n total: 0,\r\n };\r\n },\r\n [emitEvent],\r\n );\r\n\r\n // 统一分页事件载荷,避免 onShowSizeChange / onChange 重复拼装参数\r\n const emitPaginationChange = useCallback(\r\n (current: number, size?: number) => {\r\n emitEvent(\"table.pagination.change\", {\r\n current,\r\n pageSize: size,\r\n pagination: {\r\n current,\r\n pageSize: size,\r\n },\r\n });\r\n },\r\n [emitEvent],\r\n );\r\n\r\n const handlePageSizeChange = useCallback(\r\n (current: number, size: number) => {\r\n setTablePageSize(size);\r\n emitPaginationChange(current, size);\r\n },\r\n [emitPaginationChange],\r\n );\r\n\r\n const handlePaginationChange = useCallback(\r\n (current: number, size?: number) => {\r\n if (typeof size === \"number\") setTablePageSize(size);\r\n emitPaginationChange(current, size);\r\n },\r\n [emitPaginationChange],\r\n );\r\n\r\n const paginationConfig = useMemo(\r\n () =>\r\n paginationEnabled\r\n ? {\r\n pageSize: tablePageSize,\r\n size: \"default\",\r\n showSizeChanger,\r\n showQuickJumper,\r\n showTotal: (total: number) => `共 ${total} 条`,\r\n onShowSizeChange: handlePageSizeChange,\r\n onChange: handlePaginationChange,\r\n }\r\n : false,\r\n [\r\n paginationEnabled,\r\n tablePageSize,\r\n showSizeChanger,\r\n showQuickJumper,\r\n handlePageSizeChange,\r\n handlePaginationChange,\r\n ],\r\n );\r\n\r\n const handleRowClick = useCallback(\r\n (record: Record<string, unknown>) => {\r\n emitEvent(\"table.row.click\", { record });\r\n },\r\n [emitEvent],\r\n );\r\n\r\n const tableScroll = useMemo(\r\n () =>\r\n scrollX || finalScrollY ? { x: scrollX, y: finalScrollY } : undefined,\r\n [scrollX, finalScrollY],\r\n );\r\n\r\n const searchConfig = useMemo<ProTableSearchProp>(\r\n () => (search ? ({ colon: false } as ProTableSearchProp) : false),\r\n [search],\r\n );\r\n\r\n return (\r\n <div ref={tableContainerRef}>\r\n <AntdProTable\r\n actionRef={actionRef}\r\n columns={proColumns}\r\n request={hasRequestBinding ? request : undefined}\r\n dataSource={hasRequestBinding ? undefined : tableDataSource}\r\n rowKey={rowKey}\r\n headerTitle={headerTitle}\r\n size={size}\r\n tableStyle={{\r\n padding: toolbarNodes || !searchConfig ? 0 : 24,\r\n }}\r\n bordered={bordered}\r\n showHeader={showHeader}\r\n search={searchConfig}\r\n options={false}\r\n dateFormatter=\"string\"\r\n toolBarRender={toolbarNodes ? () => toolbarNodes : undefined}\r\n pagination={\r\n paginationConfig as ComponentProps<typeof AntdProTable>[\"pagination\"]\r\n }\r\n onRow={(record) => ({\r\n onClick: () => handleRowClick(record as Record<string, unknown>),\r\n })}\r\n scroll={tableScroll}\r\n style={style}\r\n />\r\n </div>\r\n );\r\n}\r\n\r\nexport default ProTableWrapper;\r\n"]}
@@ -0,0 +1,12 @@
1
+ import { Button } from '@mijadesign/web';
2
+ import { jsx } from 'react/jsx-runtime';
3
+
4
+ // src/antd/Button/ButtonWrapper.tsx
5
+ function ButtonWrapper({ children, ...props }) {
6
+ return /* @__PURE__ */ jsx(Button, { ...props, children });
7
+ }
8
+ var ButtonWrapper_default = ButtonWrapper;
9
+
10
+ export { ButtonWrapper_default };
11
+ //# sourceMappingURL=chunk-HKJUEMT3.js.map
12
+ //# sourceMappingURL=chunk-HKJUEMT3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/antd/Button/ButtonWrapper.tsx"],"names":["AntdButton"],"mappings":";;;;AAQA,SAAS,aAAA,CAAc,EAAE,QAAA,EAAU,GAAG,OAAM,EAAuB;AACjE,EAAA,uBACE,GAAA,CAACA,MAAA,EAAA,EAAY,GAAG,KAAA,EACb,QAAA,EACH,CAAA;AAEJ;AAEA,IAAO,qBAAA,GAAQ","file":"chunk-HKJUEMT3.js","sourcesContent":["import { Button as AntdButton } from \"@mijadesign/web\";\nimport type { ButtonProps as AntdButtonProps } from \"@mijadesign/web\";\n\ninterface ButtonWrapperProps extends AntdButtonProps {\n /** 子元素 */\n children?: React.ReactNode;\n}\n\nfunction ButtonWrapper({ children, ...props }: ButtonWrapperProps) {\n return (\n <AntdButton {...props}>\n {children}\n </AntdButton>\n );\n}\n\r\nexport default ButtonWrapper;\r\n"]}
@@ -288,7 +288,7 @@ function clearMaterialLoadCache(manifest) {
288
288
  }
289
289
  var materialManifest = {
290
290
  Button: () => loadDefault(
291
- () => import('./ButtonWrapper-HJIWAEIJ.js'),
291
+ () => import('./ButtonWrapper-OHOHZQJP.js'),
292
292
  async () => (await import('./meta-OHMNHBQR.js')).ButtonMeta
293
293
  ),
294
294
  Space: () => loadDefault(
@@ -470,7 +470,7 @@ var materialManifest = {
470
470
  async () => (await import('./meta-EGL3GQVA.js')).TypographyTextMeta
471
471
  ),
472
472
  ProTable: () => loadDefault(
473
- () => import('./ProTableWrapper-2VRYHYZG.js'),
473
+ () => import('./ProTableWrapper-66V3DHFS.js'),
474
474
  async () => (await import('./meta-H4O7NLPL.js')).ProTableMeta,
475
475
  loadColumnsAdapter()
476
476
  ),
@@ -585,5 +585,5 @@ async function loadMaterialModules(componentNames, manifest = materialManifest,
585
585
  }
586
586
 
587
587
  export { clearMaterialLoadCache, columnsRequestAdapter, defaultComponentAdapterRegistry, listTemplateAdapter, loadMaterialModules, materialManifest };
588
- //# sourceMappingURL=chunk-TGKZYAXR.js.map
589
- //# sourceMappingURL=chunk-TGKZYAXR.js.map
588
+ //# sourceMappingURL=chunk-XD2EF4AB.js.map
589
+ //# sourceMappingURL=chunk-XD2EF4AB.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/runtime-adapters/columns-request.ts","../src/runtime-adapters/list-template.ts","../src/runtime-adapters/index.ts","../src/material-manifest.ts"],"names":[],"mappings":"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","file":"chunk-TGKZYAXR.js","sourcesContent":["import dayjs from \"dayjs\";\n\ntype ComponentAdapter = {\n adaptProps: (\n props: Record<string, unknown>,\n context: {\n runRequestEvent: (\n requestEvent: string,\n payload: Record<string, unknown>,\n ) => Promise<unknown>;\n },\n ) => Record<string, unknown>;\n};\n\ntype InitialValuePreset =\n | \"currentMonth\"\n | \"lastMonth\"\n | \"last7Days\"\n | \"last30Days\"\n | \"currentWeek\";\n\nfunction getValueByPath(source: unknown, path: string): unknown {\n const finalPath = String(path || \"\").trim();\n if (!finalPath) return undefined;\n return finalPath.split(\".\").reduce<unknown>((acc, segment) => {\n if (!segment) return acc;\n if (acc && typeof acc === \"object\") {\n return (acc as Record<string, unknown>)[segment];\n }\n return undefined;\n }, source);\n}\n\nfunction normalizeSelectOptionsFromResult(\n result: unknown,\n): Array<{ label: string; value: string | number }> {\n const source = getValueByPath(result, \"data\");\n const list = Array.isArray(source)\n ? source\n : Array.isArray(result)\n ? result\n : [];\n return list.reduce<Array<{ label: string; value: string | number }>>(\n (acc, item) => {\n const record =\n item && typeof item === \"object\"\n ? (item as Record<string, unknown>)\n : {};\n const value = record.value ?? record.id ?? record.code;\n if (value === undefined || value === null) return acc;\n const text = record.label ?? record.name ?? record.text ?? value;\n acc.push({\n label: String(text),\n value: value as string | number,\n });\n return acc;\n },\n [],\n );\n}\n\nfunction resolveColumnRequestEvent(column: Record<string, unknown>): string {\n const direct = String(column._requestEvent || \"\").trim();\n if (direct) return direct;\n return \"\";\n}\n\nfunction buildColumnRequestPayload(\n requestEvent: string,\n params: Record<string, unknown>,\n column: Record<string, unknown>,\n): Record<string, unknown> {\n const requestParams =\n params && typeof params === \"object\" && !Array.isArray(params)\n ? params\n : {};\n const field = String(column.dataIndex || column.key || \"\").trim();\n return {\n ...requestParams,\n requestEvent,\n params: requestParams,\n field,\n column,\n };\n}\n\nfunction resolveDateRangePresetInitialValue(\n preset: InitialValuePreset,\n): [unknown, unknown] | undefined {\n const now = dayjs();\n switch (preset) {\n case \"currentMonth\":\n return [now.startOf(\"month\"), now.endOf(\"month\")];\n case \"lastMonth\": {\n const base = now.subtract(1, \"month\");\n return [base.startOf(\"month\"), base.endOf(\"month\")];\n }\n case \"last7Days\":\n return [now.subtract(6, \"day\").startOf(\"day\"), now.endOf(\"day\")];\n case \"last30Days\":\n return [now.subtract(1, \"month\").startOf(\"day\"), now.endOf(\"day\")];\n case \"currentWeek\":\n return [now.startOf(\"week\"), now.endOf(\"week\")];\n default:\n return undefined;\n }\n}\n\nfunction normalizeColumnFormItemProps(column: Record<string, unknown>) {\n const valueType = String(column.valueType || \"\");\n if (![\"dateRange\", \"dateTimeRange\"].includes(valueType)) {\n return column.formItemProps;\n }\n const raw =\n column.formItemProps &&\n typeof column.formItemProps === \"object\" &&\n !Array.isArray(column.formItemProps)\n ? (column.formItemProps as Record<string, unknown>)\n : undefined;\n if (!raw) return column.formItemProps;\n if (String(raw.initialValueMode || \"\") !== \"preset\") return raw;\n const preset = String(raw.initialValuePreset || \"\") as InitialValuePreset;\n if (!preset) return raw;\n const rangeValue = resolveDateRangePresetInitialValue(preset);\n if (!rangeValue) return raw;\n return {\n ...raw,\n initialValue: rangeValue,\n };\n}\n\nfunction attachColumnsRequestByEvent(\n columns: unknown,\n runRequestEvent: (\n requestEvent: string,\n payload: Record<string, unknown>,\n ) => Promise<unknown>,\n): unknown {\n if (!Array.isArray(columns)) return columns;\n return columns.map((column) => {\n if (!column || typeof column !== \"object\") return column;\n const current = column as Record<string, unknown>;\n const normalizedFormItemProps = normalizeColumnFormItemProps(current);\n const normalizedColumn =\n normalizedFormItemProps === current.formItemProps\n ? current\n : {\n ...current,\n formItemProps: normalizedFormItemProps,\n };\n const requestEvent = resolveColumnRequestEvent(current);\n if (!requestEvent) return normalizedColumn;\n return {\n ...normalizedColumn,\n request: async (params: Record<string, unknown>) => {\n const payload = buildColumnRequestPayload(\n requestEvent,\n params,\n current,\n );\n const result = await runRequestEvent(requestEvent, payload);\n return normalizeSelectOptionsFromResult(result);\n },\n };\n });\n}\n\nexport const columnsRequestAdapter: ComponentAdapter = {\n adaptProps: (props, context) => {\n if (!(\"columns\" in props)) return props;\n return {\n ...props,\n columns: attachColumnsRequestByEvent(props.columns, context.runRequestEvent),\n };\n },\n};\n","import { List } from \"antd\";\nimport { createElement, type ReactNode } from \"react\";\n\r\ntype ComponentAdapterContext = {\r\n mode?: \"edit\" | \"preview\";\r\n runtimeContext?: Record<string, unknown>;\r\n hasChildren?: boolean;\r\n renderChildren?: (runtimeContext?: Record<string, unknown>) => ReactNode;\r\n runRequestEvent: (\r\n requestEvent: string,\r\n payload: Record<string, unknown>,\r\n ) => Promise<unknown>;\r\n};\r\n\r\ntype ComponentAdapter = {\r\n adaptProps: (\r\n props: Record<string, unknown>,\r\n context: ComponentAdapterContext,\r\n ) => Record<string, unknown>;\r\n};\r\n\r\nexport type ListItemRecord = unknown;\r\n\r\nexport function normalizeListDataSource(dataSource: unknown): ListItemRecord[] {\r\n return Array.isArray(dataSource) ? dataSource : [];\r\n}\r\n\r\nfunction isPlainObject(value: unknown): value is Record<string, unknown> {\r\n return Boolean(value) && typeof value === \"object\" && !Array.isArray(value);\r\n}\r\n\r\nfunction normalizeGridNumber(value: unknown): number | undefined {\r\n if (typeof value !== \"number\") return undefined;\r\n if (!Number.isFinite(value)) return undefined;\r\n return value;\r\n}\r\n\r\nexport function normalizeListGrid(\r\n grid: unknown,\r\n): Record<string, unknown> | undefined {\r\n if (!isPlainObject(grid)) return undefined;\r\n const nextGrid = Object.entries(grid).reduce<Record<string, unknown>>(\r\n (acc, [key, value]) => {\r\n const nextValue = normalizeGridNumber(value);\r\n if (nextValue !== undefined) {\r\n acc[key] = nextValue;\r\n }\r\n return acc;\r\n },\r\n {},\r\n );\r\n return Object.keys(nextGrid).length > 0 ? nextGrid : undefined;\r\n}\r\n\r\nexport function getListItemKey(\r\n record: ListItemRecord,\r\n index: number,\r\n rowKey?: unknown,\r\n): string {\r\n const keyField = String(rowKey || \"\").trim();\r\n if (\r\n keyField &&\r\n record &&\r\n typeof record === \"object\" &&\r\n !Array.isArray(record)\r\n ) {\r\n const value = (record as Record<string, unknown>)[keyField];\r\n if (value !== undefined && value !== null && value !== \"\") {\r\n return String(value);\r\n }\r\n }\r\n return String(index);\r\n}\r\n\r\nexport function buildListItemRuntimeContext(\r\n runtimeContext: Record<string, unknown> | undefined,\r\n record: ListItemRecord,\r\n index: number,\r\n rowKey: string,\r\n list: ListItemRecord[],\r\n): Record<string, unknown> {\r\n const baseData =\r\n runtimeContext?.data &&\r\n typeof runtimeContext.data === \"object\" &&\r\n !Array.isArray(runtimeContext.data)\r\n ? (runtimeContext.data as Record<string, unknown>)\r\n : {};\r\n\r\n return {\r\n ...(runtimeContext || {}),\r\n data: {\r\n ...baseData,\r\n record,\r\n item: record,\r\n index,\r\n rowKey,\r\n list,\r\n },\r\n };\r\n}\r\n\r\nexport const listTemplateAdapter: ComponentAdapter = {\r\n adaptProps: (props, context) => {\r\n const {\r\n children: _children,\r\n rowKey,\r\n previewCount,\r\n grid,\r\n ...restProps\r\n } = props;\r\n const safeGrid = normalizeListGrid(grid);\r\n const normalizedProps = safeGrid\r\n ? { ...restProps, grid: safeGrid }\r\n : restProps;\r\n if (!context.hasChildren || !context.renderChildren) {\r\n return normalizedProps;\r\n }\r\n\r\n void previewCount;\r\n const rows = normalizeListDataSource(props.dataSource);\r\n const rowKeyField = String(rowKey || \"\").trim();\r\n\r\n return {\r\n ...normalizedProps,\r\n dataSource: rows,\r\n renderItem: (record: unknown, rowIndex: number) => {\r\n const itemKey = getListItemKey(record, rowIndex, rowKeyField);\r\n const nextRuntimeContext = buildListItemRuntimeContext(\r\n context.runtimeContext,\r\n record,\r\n rowIndex,\r\n itemKey,\r\n rows,\r\n );\r\n return createElement(\n List.Item,\n { key: itemKey },\n context.renderChildren?.(nextRuntimeContext),\n );\n },\n };\n },\n};\n","import { columnsRequestAdapter } from \"./columns-request\";\nimport { listTemplateAdapter } from \"./list-template\";\nimport type { ReactNode } from \"react\";\n\ntype ComponentAdapter = {\n adaptProps: (\n props: Record<string, unknown>,\n context: {\n mode?: \"edit\" | \"preview\";\n runtimeContext?: Record<string, unknown>;\n hasChildren?: boolean;\n renderChildren?: (\n runtimeContext?: Record<string, unknown>,\n ) => ReactNode;\n runRequestEvent: (\n requestEvent: string,\n payload: Record<string, unknown>,\n ) => Promise<unknown>;\n },\n ) => Record<string, unknown>;\n};\n\ntype ComponentAdapterRegistry = {\n get: (componentName: string) => ComponentAdapter | null;\n};\n\nconst columnsAdapterComponentNames = new Set([\n \"ProTable\",\n \"SchemaForm\",\n \"Table\",\n]);\n\nexport const defaultComponentAdapterRegistry: ComponentAdapterRegistry = {\n get: (componentName: string) => {\n if (componentName === \"List\") {\n return listTemplateAdapter;\n }\n if (columnsAdapterComponentNames.has(componentName)) {\n return columnsRequestAdapter;\n }\n return null;\n },\n};\n","import type { ComponentType } from \"react\";\r\nimport type { ComponentMeta } from \"@mijalowcode/types\";\r\nimport { columnsRequestAdapter } from \"./runtime-adapters/columns-request\";\nimport { listTemplateAdapter } from \"./runtime-adapters/list-template\";\n\r\ntype ComponentAdapter = {\r\n adaptProps: (\r\n props: Record<string, unknown>,\r\n context: {\r\n runRequestEvent: (\r\n requestEvent: string,\r\n payload: Record<string, unknown>,\r\n ) => Promise<unknown>;\r\n },\r\n ) => Record<string, unknown>;\r\n};\r\n\r\nexport type MaterialRuntimeModule = {\r\n component: ComponentType<any>;\r\n adapter?: ComponentAdapter;\r\n meta?: ComponentMeta;\r\n};\r\n\r\nexport type MaterialLoadOptions = {\r\n includeMeta?: boolean;\r\n};\r\n\r\nexport type LoadMaterialModulesOptions = MaterialLoadOptions;\r\n\r\nexport type MaterialLoader = (\r\n options?: MaterialLoadOptions,\r\n) => Promise<MaterialRuntimeModule>;\r\n\r\nexport type MaterialManifestEntry = MaterialLoader;\r\n\r\nexport type MaterialManifest = Record<string, MaterialManifestEntry>;\r\n\r\nexport type LoadedMaterialModules = {\r\n components: Record<string, ComponentType<any>>;\r\n adapters: Record<string, ComponentAdapter>;\r\n metas: Record<string, ComponentMeta>;\r\n missing: string[];\r\n};\r\n\r\nconst defaultMaterialLoadOptions: MaterialLoadOptions = {\r\n includeMeta: false,\r\n};\r\n\r\nfunction shouldLoadMeta(options?: MaterialLoadOptions) {\r\n return Boolean(options?.includeMeta);\r\n}\r\n\r\nfunction pick(source: unknown, path: string): ComponentType<any> {\r\n return path.split(\".\").reduce<unknown>((acc, segment) => {\r\n if (!acc || typeof acc !== \"object\") return undefined;\r\n return (acc as Record<string, unknown>)[segment];\r\n }, source) as ComponentType<any>;\r\n}\r\n\r\nasync function loadWeb(\r\n exportPath: string,\r\n metaLoader?: () => Promise<ComponentMeta>,\r\n options: MaterialLoadOptions = defaultMaterialLoadOptions,\r\n): Promise<MaterialRuntimeModule> {\r\n const [web, meta] = await Promise.all([\r\n import(\"@mijadesign/web\"),\r\n shouldLoadMeta(options) ? metaLoader?.() : undefined,\r\n ]);\r\n return { component: pick(web, exportPath), meta };\r\n}\r\n\r\nasync function loadAntdLayout(\r\n exportPath: string,\r\n metaLoader?: () => Promise<ComponentMeta>,\r\n options: MaterialLoadOptions = defaultMaterialLoadOptions,\r\n): Promise<MaterialRuntimeModule> {\r\n const [antd, meta] = await Promise.all([\r\n import(\"antd\"),\r\n shouldLoadMeta(options) ? metaLoader?.() : undefined,\r\n ]);\r\n return { component: pick(antd, exportPath), meta };\r\n}\r\n\r\nasync function loadDefault(\r\n componentLoader: () => Promise<{ default: ComponentType<any> }>,\r\n metaLoader?: () => Promise<ComponentMeta>,\r\n adapter?: ComponentAdapter,\r\n options: MaterialLoadOptions = defaultMaterialLoadOptions,\r\n): Promise<MaterialRuntimeModule> {\r\n const [componentModule, meta] = await Promise.all([\r\n componentLoader(),\r\n shouldLoadMeta(options) ? metaLoader?.() : undefined,\r\n ]);\r\n return { component: componentModule.default, adapter, meta };\r\n}\r\n\r\nconst loadColumnsAdapter = () => columnsRequestAdapter;\r\n\r\nconst manifestLoadCache = new WeakMap<\r\n MaterialManifest,\r\n Map<string, Promise<MaterialRuntimeModule>>\r\n>();\r\n\r\nfunction getManifestCache(manifest: MaterialManifest) {\r\n const existing = manifestLoadCache.get(manifest);\r\n if (existing) return existing;\r\n const next = new Map<string, Promise<MaterialRuntimeModule>>();\r\n manifestLoadCache.set(manifest, next);\r\n return next;\r\n}\r\n\r\nfunction loadCachedMaterial(\r\n componentName: string,\r\n entry: MaterialManifestEntry,\r\n manifest: MaterialManifest,\r\n options: MaterialLoadOptions,\r\n) {\r\n const cache = getManifestCache(manifest);\r\n const cacheKey = `${componentName}:${shouldLoadMeta(options) ? \"meta\" : \"runtime\"}`;\r\n const cached = cache.get(cacheKey);\r\n if (cached) return cached;\r\n const loading = entry(options).catch((error: unknown) => {\r\n cache.delete(cacheKey);\r\n throw error;\r\n });\r\n cache.set(cacheKey, loading);\r\n return loading;\r\n}\r\n\r\nexport function clearMaterialLoadCache(manifest?: MaterialManifest) {\r\n if (manifest) {\r\n manifestLoadCache.delete(manifest);\r\n return;\r\n }\r\n manifestLoadCache.delete(materialManifest);\r\n}\r\n\r\nexport const materialManifest: MaterialManifest = {\r\n Button: () =>\r\n loadDefault(\r\n () => import(\"./antd/Button/ButtonWrapper\"),\r\n async () => (await import(\"./antd/Button/meta\")).ButtonMeta,\r\n ),\r\n Space: () =>\r\n loadDefault(\r\n () => import(\"./antd/Space/SpaceWrapper\"),\r\n async () => (await import(\"./antd/Space/meta\")).SpaceMeta,\r\n ),\r\n DesensitizationDisplay: () =>\r\n loadDefault(\r\n () => import(\"./custom/DesensitizationDisplay\"),\r\n async () =>\r\n (await import(\"./custom/DesensitizationDisplay/meta\"))\r\n .DesensitizationDisplayMeta,\r\n ),\r\n\r\n Layout: () =>\r\n loadAntdLayout(\"Layout\", async () =>\r\n (await import(\"./antd/Layout/meta\")).LayoutMeta\r\n ),\r\n \"Layout.Header\": () => loadAntdLayout(\"Layout.Header\"),\r\n \"Layout.Sider\": () => loadAntdLayout(\"Layout.Sider\"),\r\n \"Layout.Content\": () => loadAntdLayout(\"Layout.Content\"),\r\n \"Layout.Footer\": () => loadAntdLayout(\"Layout.Footer\"),\r\n Header: () =>\r\n loadAntdLayout(\"Layout.Header\", async () =>\r\n (await import(\"./antd/Layout/meta\")).HeaderMeta\r\n ),\r\n Sider: () =>\r\n loadAntdLayout(\"Layout.Sider\", async () =>\r\n (await import(\"./antd/Layout/meta\")).SiderMeta\r\n ),\r\n Content: () =>\r\n loadAntdLayout(\"Layout.Content\", async () =>\r\n (await import(\"./antd/Layout/meta\")).ContentMeta\r\n ),\r\n Footer: () =>\r\n loadAntdLayout(\"Layout.Footer\", async () =>\r\n (await import(\"./antd/Layout/meta\")).FooterMeta\r\n ),\r\n Row: () =>\r\n loadWeb(\"Row\", async () => (await import(\"./antd/Layout/meta\")).RowMeta),\r\n Col: () =>\r\n loadWeb(\"Col\", async () => (await import(\"./antd/Layout/meta\")).ColMeta),\r\n Card: () =>\r\n loadWeb(\"Card\", async () => (await import(\"./antd/Card/meta\")).CardMeta),\r\n\r\n Input: () =>\r\n loadWeb(\"Input\", async () => (await import(\"./antd/Input/meta\")).InputMeta),\r\n \"Input.TextArea\": () =>\r\n loadWeb(\"Input.TextArea\", async () =>\r\n (await import(\"./antd/Input/meta\")).InputTextAreaMeta\r\n ),\r\n \"Input.Search\": () => loadWeb(\"Input.Search\"),\r\n \"Input.Password\": () => loadWeb(\"Input.Password\"),\r\n Form: () =>\r\n loadWeb(\"Form\", async () => (await import(\"./antd/Form/meta\")).FormMeta),\r\n \"Form.Item\": () =>\r\n loadWeb(\"Form.Item\", async () =>\r\n (await import(\"./antd/Form/meta\")).FormItemMeta\r\n ),\r\n \"Form.List\": () =>\r\n loadWeb(\"Form.List\", async () =>\r\n (await import(\"./antd/Form/meta\")).FormListMeta\r\n ),\r\n Select: () =>\r\n loadWeb(\"Select\", async () =>\r\n (await import(\"./antd/Select/meta\")).SelectMeta\r\n ),\r\n InputNumber: () =>\r\n loadWeb(\"InputNumber\", async () =>\r\n (await import(\"./antd/InputNumber/meta\")).InputNumberMeta\r\n ),\r\n\r\n DatePicker: () =>\r\n loadWeb(\"DatePicker\", async () =>\r\n (await import(\"./antd/DatePicker/meta\")).DatePickerMeta\r\n ),\r\n \"DatePicker.RangePicker\": () =>\r\n loadWeb(\"DatePicker.RangePicker\", async () =>\r\n (await import(\"./antd/DatePicker/meta\")).RangePickerMeta\r\n ),\r\n TimePicker: () =>\r\n loadWeb(\"TimePicker\", async () =>\r\n (await import(\"./antd/DatePicker/meta\")).TimePickerMeta\r\n ),\r\n Upload: () =>\r\n loadWeb(\"Upload\", async () =>\r\n (await import(\"./antd/Upload/meta\")).UploadMeta\r\n ),\r\n Tree: () =>\r\n loadWeb(\"Tree\", async () => (await import(\"./antd/Tree/meta\")).TreeMeta),\r\n TreeSelect: () =>\r\n loadWeb(\"TreeSelect\", async () =>\r\n (await import(\"./antd/Tree/meta\")).TreeSelectMeta\r\n ),\r\n Tabs: () =>\r\n loadWeb(\"Tabs\", async () => (await import(\"./antd/Tabs/meta\")).TabsMeta),\r\n \"Tabs.TabPane\": () =>\r\n loadWeb(\"Tabs.TabPane\", async () =>\r\n (await import(\"./antd/Tabs/meta\")).TabPaneMeta\r\n ),\r\n Steps: () =>\r\n loadWeb(\"Steps\", async () => (await import(\"./antd/Steps/meta\")).StepsMeta),\r\n \"Steps.Step\": () =>\r\n loadWeb(\"Steps.Step\", async () =>\r\n (await import(\"./antd/Steps/meta\")).StepMeta\r\n ),\r\n Tag: () =>\r\n loadDefault(\r\n () => import(\"./antd/Tag/TagWrapper\"),\r\n async () => (await import(\"./antd/Tag/meta\")).TagMeta,\r\n ),\r\n \"Tag.CheckableTag\": () =>\r\n loadWeb(\"Tag.CheckableTag\", async () =>\r\n (await import(\"./antd/Tag/meta\")).CheckableTagMeta\r\n ),\r\n ScenarioFlowBoard: () =>\r\n loadDefault(\r\n () => import(\"./custom/scenario/ScenarioFlowBoard\"),\r\n async () =>\r\n (await import(\"./custom/scenario/ScenarioFlowBoard/meta\"))\r\n .ScenarioFlowBoardMeta,\r\n ),\r\n ScenarioFlowScene: () =>\r\n loadDefault(\r\n () => import(\"./custom/scenario/ScenarioFlowScene\"),\r\n async () =>\r\n (await import(\"./custom/scenario/ScenarioFlowScene/meta\"))\r\n .ScenarioFlowSceneMeta,\r\n ),\r\n ScenarioFlowStep: () =>\r\n loadDefault(\r\n () => import(\"./custom/scenario/ScenarioFlowStep\"),\r\n async () =>\r\n (await import(\"./custom/scenario/ScenarioFlowStep/meta\"))\r\n .ScenarioFlowStepMeta,\r\n ),\r\n\r\n Badge: () =>\r\n loadWeb(\"Badge\", async () => (await import(\"./antd/Badge/meta\")).BadgeMeta),\r\n \"Badge.Ribbon\": () =>\r\n loadWeb(\"Badge.Ribbon\", async () =>\r\n (await import(\"./antd/Badge/meta\")).BadgeRibbonMeta\r\n ),\r\n Avatar: () =>\r\n loadWeb(\"Avatar\", async () =>\r\n (await import(\"./antd/Avatar/meta\")).AvatarMeta\r\n ),\r\n \"Avatar.Group\": () =>\r\n loadWeb(\"Avatar.Group\", async () =>\r\n (await import(\"./antd/Avatar/meta\")).AvatarGroupMeta\r\n ),\r\n Dropdown: () =>\n loadWeb(\"Dropdown\", async () =>\n (await import(\"./antd/Dropdown/meta\")).DropdownMeta\n ),\n Breadcrumb: () =>\n loadWeb(\"Breadcrumb\", async () =>\n (await import(\"./antd/Breadcrumb/meta\")).BreadcrumbMeta\n ),\n \"Dropdown.Button\": () =>\n loadWeb(\"Dropdown.Button\", async () =>\n (await import(\"./antd/Dropdown/meta\")).DropdownButtonMeta\n ),\n Pagination: () =>\r\n loadWeb(\"Pagination\", async () =>\r\n (await import(\"./antd/Pagination/meta\")).PaginationMeta\r\n ),\r\n Switch: () =>\r\n loadWeb(\"Switch\", async () =>\r\n (await import(\"./antd/Switch/meta\")).SwitchMeta\r\n ),\r\n Radio: () =>\r\n loadWeb(\"Radio\", async () => (await import(\"./antd/Radio/meta\")).RadioMeta),\r\n \"Radio.Group\": () =>\r\n loadWeb(\"Radio.Group\", async () =>\r\n (await import(\"./antd/Radio/meta\")).RadioGroupMeta\r\n ),\r\n RadioButton: () => loadWeb(\"Radio.Button\"),\r\n Checkbox: () =>\r\n loadWeb(\"Checkbox\", async () =>\r\n (await import(\"./antd/Checkbox/meta\")).CheckboxMeta\r\n ),\r\n \"Checkbox.Group\": () =>\r\n loadWeb(\"Checkbox.Group\", async () =>\r\n (await import(\"./antd/Checkbox/meta\")).CheckboxGroupMeta\r\n ),\r\n Cascader: () =>\r\n loadWeb(\"Cascader\", async () =>\r\n (await import(\"./antd/Cascader/meta\")).CascaderMeta\r\n ),\r\n Table: () =>\r\n loadWeb(\r\n \"Table\",\r\n async () => (await import(\"./antd/Table/meta\")).TableMeta,\r\n ).then((module) => ({ ...module, adapter: loadColumnsAdapter() })),\r\n\r\n Typography: () => loadWeb(\"Typography\"),\r\n \"Typography.Title\": () =>\r\n loadWeb(\"Typography.Title\", async () =>\r\n (await import(\"./antd/Typography/meta\")).TypographyTitleMeta\r\n ),\r\n \"Typography.Paragraph\": () =>\r\n loadWeb(\"Typography.Paragraph\", async () =>\r\n (await import(\"./antd/Typography/meta\")).TypographyParagraphMeta\r\n ),\r\n \"Typography.Text\": () =>\r\n loadWeb(\"Typography.Text\", async () =>\r\n (await import(\"./antd/Typography/meta\")).TypographyTextMeta\r\n ),\r\n\r\n ProTable: () =>\r\n loadDefault(\r\n () => import(\"./antdPro/ProTable/ProTableWrapper\"),\r\n async () => (await import(\"./antdPro/ProTable/meta\")).ProTableMeta,\r\n loadColumnsAdapter(),\r\n ),\r\n SchemaForm: () =>\r\n loadDefault(\r\n () => import(\"./antdPro/SchemaForm/SchemaFormWrapper\"),\r\n async () => (await import(\"./antdPro/SchemaForm/meta\")).SchemaFormMeta,\r\n loadColumnsAdapter(),\r\n ),\r\n FilterColumns: () =>\r\n loadDefault(\r\n () => import(\"./antdPro/FilterColumns/FilterColumnsWrapper\"),\r\n async () =>\r\n (await import(\"./antdPro/FilterColumns/meta\")).FilterColumnsMeta,\r\n ),\r\n\r\n Modal: () =>\r\n loadWeb(\"Modal\", async () => (await import(\"./antd/Modal/meta\")).ModalMeta),\r\n Drawer: () =>\r\n loadDefault(\r\n () => import(\"./antd/Drawer/DrawerWrapper\"),\r\n async () => (await import(\"./antd/Drawer/meta\")).DrawerMeta,\r\n ),\r\n Descriptions: () =>\r\n loadWeb(\"Descriptions\", async () =>\r\n (await import(\"./antd/Descriptions/meta\")).DescriptionsMeta\r\n ),\r\n \"Descriptions.Item\": () => loadWeb(\"Descriptions.Item\"),\r\n List: () =>\n loadWeb(\"List\", async () => (await import(\"./antd/List/meta\")).ListMeta)\n .then((module) => ({ ...module, adapter: listTemplateAdapter })),\n \"List.Item\": () =>\r\n loadWeb(\"List.Item\", async () =>\r\n (await import(\"./antd/List/meta\")).ListItemMeta\r\n ),\r\n Empty: () =>\r\n loadDefault(\r\n () => import(\"./antd/Empty/EmptyWrapper\"),\r\n async () => (await import(\"./antd/Empty/meta\")).EmptyMeta,\r\n ),\r\n Spin: () =>\r\n loadWeb(\"Spin\", async () => (await import(\"./antd/Spin/meta\")).SpinMeta),\r\n Alert: () =>\r\n loadWeb(\"Alert\", async () => (await import(\"./antd/Alert/meta\")).AlertMeta),\r\n Progress: () =>\r\n loadWeb(\"Progress\", async () =>\r\n (await import(\"./antd/Progress/meta\")).ProgressMeta\r\n ),\r\n Skeleton: () =>\r\n loadWeb(\"Skeleton\", async () =>\r\n (await import(\"./antd/Tooltip/meta\")).SkeletonMeta\r\n ),\r\n Tooltip: () =>\r\n loadWeb(\"Tooltip\", async () =>\r\n (await import(\"./antd/Tooltip/meta\")).TooltipMeta\r\n ),\r\n Popconfirm: () =>\r\n loadWeb(\"Popconfirm\", async () =>\r\n (await import(\"./antd/Tooltip/meta\")).PopconfirmMeta\r\n ),\r\n Popover: () =>\r\n loadDefault(\r\n () => import(\"./antd/Popover/PopoverWrapper\"),\r\n async () => (await import(\"./antd/Popover/meta\")).PopoverMeta\r\n ),\r\n Divider: () =>\r\n loadWeb(\"Divider\", async () =>\r\n (await import(\"./antd/Divider/meta\")).DividerMeta\r\n ),\r\n Statistic: () =>\r\n loadWeb(\"Statistic\", async () =>\r\n (await import(\"./antd/Statistic/meta\")).StatisticMeta\r\n ),\r\n Timeline: () =>\r\n loadWeb(\"Timeline\", async () =>\r\n (await import(\"./antd/Timeline/meta\")).TimelineMeta\r\n ),\r\n \"Timeline.Item\": () =>\r\n loadWeb(\"Timeline.Item\", async () =>\r\n (await import(\"./antd/Timeline/meta\")).TimelineItemMeta\r\n ),\r\n Result: () =>\r\n loadWeb(\"Result\", async () => (await import(\"./antd/Result/meta\")).ResultMeta),\r\n};\r\n\r\nexport async function loadMaterialModules(\r\n componentNames: Iterable<string>,\r\n manifest: MaterialManifest = materialManifest,\r\n options: LoadMaterialModulesOptions = defaultMaterialLoadOptions,\r\n): Promise<LoadedMaterialModules> {\r\n const components: Record<string, ComponentType<any>> = {};\r\n const adapters: Record<string, ComponentAdapter> = {};\r\n const metas: Record<string, ComponentMeta> = {};\r\n const missing: string[] = [];\r\n const names = Array.from(new Set(Array.from(componentNames).filter(Boolean)));\r\n const pending = [...names];\r\n const visited = new Set<string>();\r\n\r\n while (pending.length > 0) {\r\n const componentName = pending.shift();\r\n if (!componentName || visited.has(componentName)) continue;\r\n visited.add(componentName);\r\n\r\n const entry = manifest[componentName];\r\n if (!entry) {\r\n missing.push(componentName);\r\n continue;\r\n }\r\n\r\n // 运行时只加载 schema 实际收集到的物料,避免复杂物料的历史显式依赖拉入未使用组件。\r\n }\r\n\r\n await Promise.all(\r\n Array.from(visited).map(async (componentName) => {\r\n const loader = manifest[componentName];\r\n if (!loader) {\r\n return;\r\n }\r\n const module = await loadCachedMaterial(\r\n componentName,\r\n loader,\r\n manifest,\r\n options,\r\n );\r\n if (!module.component) {\r\n missing.push(componentName);\r\n return;\r\n }\r\n components[componentName] = module.component;\r\n if (module.adapter) adapters[componentName] = module.adapter;\r\n if (module.meta) metas[componentName] = module.meta;\r\n }),\r\n );\r\n\r\n return { components, adapters, metas, missing };\r\n}\r\n"]}
1
+ {"version":3,"sources":["../src/runtime-adapters/columns-request.ts","../src/runtime-adapters/list-template.ts","../src/runtime-adapters/index.ts","../src/material-manifest.ts"],"names":[],"mappings":"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","file":"chunk-XD2EF4AB.js","sourcesContent":["import dayjs from \"dayjs\";\n\ntype ComponentAdapter = {\n adaptProps: (\n props: Record<string, unknown>,\n context: {\n runRequestEvent: (\n requestEvent: string,\n payload: Record<string, unknown>,\n ) => Promise<unknown>;\n },\n ) => Record<string, unknown>;\n};\n\ntype InitialValuePreset =\n | \"currentMonth\"\n | \"lastMonth\"\n | \"last7Days\"\n | \"last30Days\"\n | \"currentWeek\";\n\nfunction getValueByPath(source: unknown, path: string): unknown {\n const finalPath = String(path || \"\").trim();\n if (!finalPath) return undefined;\n return finalPath.split(\".\").reduce<unknown>((acc, segment) => {\n if (!segment) return acc;\n if (acc && typeof acc === \"object\") {\n return (acc as Record<string, unknown>)[segment];\n }\n return undefined;\n }, source);\n}\n\nfunction normalizeSelectOptionsFromResult(\n result: unknown,\n): Array<{ label: string; value: string | number }> {\n const source = getValueByPath(result, \"data\");\n const list = Array.isArray(source)\n ? source\n : Array.isArray(result)\n ? result\n : [];\n return list.reduce<Array<{ label: string; value: string | number }>>(\n (acc, item) => {\n const record =\n item && typeof item === \"object\"\n ? (item as Record<string, unknown>)\n : {};\n const value = record.value ?? record.id ?? record.code;\n if (value === undefined || value === null) return acc;\n const text = record.label ?? record.name ?? record.text ?? value;\n acc.push({\n label: String(text),\n value: value as string | number,\n });\n return acc;\n },\n [],\n );\n}\n\nfunction resolveColumnRequestEvent(column: Record<string, unknown>): string {\n const direct = String(column._requestEvent || \"\").trim();\n if (direct) return direct;\n return \"\";\n}\n\nfunction buildColumnRequestPayload(\n requestEvent: string,\n params: Record<string, unknown>,\n column: Record<string, unknown>,\n): Record<string, unknown> {\n const requestParams =\n params && typeof params === \"object\" && !Array.isArray(params)\n ? params\n : {};\n const field = String(column.dataIndex || column.key || \"\").trim();\n return {\n ...requestParams,\n requestEvent,\n params: requestParams,\n field,\n column,\n };\n}\n\nfunction resolveDateRangePresetInitialValue(\n preset: InitialValuePreset,\n): [unknown, unknown] | undefined {\n const now = dayjs();\n switch (preset) {\n case \"currentMonth\":\n return [now.startOf(\"month\"), now.endOf(\"month\")];\n case \"lastMonth\": {\n const base = now.subtract(1, \"month\");\n return [base.startOf(\"month\"), base.endOf(\"month\")];\n }\n case \"last7Days\":\n return [now.subtract(6, \"day\").startOf(\"day\"), now.endOf(\"day\")];\n case \"last30Days\":\n return [now.subtract(1, \"month\").startOf(\"day\"), now.endOf(\"day\")];\n case \"currentWeek\":\n return [now.startOf(\"week\"), now.endOf(\"week\")];\n default:\n return undefined;\n }\n}\n\nfunction normalizeColumnFormItemProps(column: Record<string, unknown>) {\n const valueType = String(column.valueType || \"\");\n if (![\"dateRange\", \"dateTimeRange\"].includes(valueType)) {\n return column.formItemProps;\n }\n const raw =\n column.formItemProps &&\n typeof column.formItemProps === \"object\" &&\n !Array.isArray(column.formItemProps)\n ? (column.formItemProps as Record<string, unknown>)\n : undefined;\n if (!raw) return column.formItemProps;\n if (String(raw.initialValueMode || \"\") !== \"preset\") return raw;\n const preset = String(raw.initialValuePreset || \"\") as InitialValuePreset;\n if (!preset) return raw;\n const rangeValue = resolveDateRangePresetInitialValue(preset);\n if (!rangeValue) return raw;\n return {\n ...raw,\n initialValue: rangeValue,\n };\n}\n\nfunction attachColumnsRequestByEvent(\n columns: unknown,\n runRequestEvent: (\n requestEvent: string,\n payload: Record<string, unknown>,\n ) => Promise<unknown>,\n): unknown {\n if (!Array.isArray(columns)) return columns;\n return columns.map((column) => {\n if (!column || typeof column !== \"object\") return column;\n const current = column as Record<string, unknown>;\n const normalizedFormItemProps = normalizeColumnFormItemProps(current);\n const normalizedColumn =\n normalizedFormItemProps === current.formItemProps\n ? current\n : {\n ...current,\n formItemProps: normalizedFormItemProps,\n };\n const requestEvent = resolveColumnRequestEvent(current);\n if (!requestEvent) return normalizedColumn;\n return {\n ...normalizedColumn,\n request: async (params: Record<string, unknown>) => {\n const payload = buildColumnRequestPayload(\n requestEvent,\n params,\n current,\n );\n const result = await runRequestEvent(requestEvent, payload);\n return normalizeSelectOptionsFromResult(result);\n },\n };\n });\n}\n\nexport const columnsRequestAdapter: ComponentAdapter = {\n adaptProps: (props, context) => {\n if (!(\"columns\" in props)) return props;\n return {\n ...props,\n columns: attachColumnsRequestByEvent(props.columns, context.runRequestEvent),\n };\n },\n};\n","import { List } from \"antd\";\nimport { createElement, type ReactNode } from \"react\";\n\r\ntype ComponentAdapterContext = {\r\n mode?: \"edit\" | \"preview\";\r\n runtimeContext?: Record<string, unknown>;\r\n hasChildren?: boolean;\r\n renderChildren?: (runtimeContext?: Record<string, unknown>) => ReactNode;\r\n runRequestEvent: (\r\n requestEvent: string,\r\n payload: Record<string, unknown>,\r\n ) => Promise<unknown>;\r\n};\r\n\r\ntype ComponentAdapter = {\r\n adaptProps: (\r\n props: Record<string, unknown>,\r\n context: ComponentAdapterContext,\r\n ) => Record<string, unknown>;\r\n};\r\n\r\nexport type ListItemRecord = unknown;\r\n\r\nexport function normalizeListDataSource(dataSource: unknown): ListItemRecord[] {\r\n return Array.isArray(dataSource) ? dataSource : [];\r\n}\r\n\r\nfunction isPlainObject(value: unknown): value is Record<string, unknown> {\r\n return Boolean(value) && typeof value === \"object\" && !Array.isArray(value);\r\n}\r\n\r\nfunction normalizeGridNumber(value: unknown): number | undefined {\r\n if (typeof value !== \"number\") return undefined;\r\n if (!Number.isFinite(value)) return undefined;\r\n return value;\r\n}\r\n\r\nexport function normalizeListGrid(\r\n grid: unknown,\r\n): Record<string, unknown> | undefined {\r\n if (!isPlainObject(grid)) return undefined;\r\n const nextGrid = Object.entries(grid).reduce<Record<string, unknown>>(\r\n (acc, [key, value]) => {\r\n const nextValue = normalizeGridNumber(value);\r\n if (nextValue !== undefined) {\r\n acc[key] = nextValue;\r\n }\r\n return acc;\r\n },\r\n {},\r\n );\r\n return Object.keys(nextGrid).length > 0 ? nextGrid : undefined;\r\n}\r\n\r\nexport function getListItemKey(\r\n record: ListItemRecord,\r\n index: number,\r\n rowKey?: unknown,\r\n): string {\r\n const keyField = String(rowKey || \"\").trim();\r\n if (\r\n keyField &&\r\n record &&\r\n typeof record === \"object\" &&\r\n !Array.isArray(record)\r\n ) {\r\n const value = (record as Record<string, unknown>)[keyField];\r\n if (value !== undefined && value !== null && value !== \"\") {\r\n return String(value);\r\n }\r\n }\r\n return String(index);\r\n}\r\n\r\nexport function buildListItemRuntimeContext(\r\n runtimeContext: Record<string, unknown> | undefined,\r\n record: ListItemRecord,\r\n index: number,\r\n rowKey: string,\r\n list: ListItemRecord[],\r\n): Record<string, unknown> {\r\n const baseData =\r\n runtimeContext?.data &&\r\n typeof runtimeContext.data === \"object\" &&\r\n !Array.isArray(runtimeContext.data)\r\n ? (runtimeContext.data as Record<string, unknown>)\r\n : {};\r\n\r\n return {\r\n ...(runtimeContext || {}),\r\n data: {\r\n ...baseData,\r\n record,\r\n item: record,\r\n index,\r\n rowKey,\r\n list,\r\n },\r\n };\r\n}\r\n\r\nexport const listTemplateAdapter: ComponentAdapter = {\r\n adaptProps: (props, context) => {\r\n const {\r\n children: _children,\r\n rowKey,\r\n previewCount,\r\n grid,\r\n ...restProps\r\n } = props;\r\n const safeGrid = normalizeListGrid(grid);\r\n const normalizedProps = safeGrid\r\n ? { ...restProps, grid: safeGrid }\r\n : restProps;\r\n if (!context.hasChildren || !context.renderChildren) {\r\n return normalizedProps;\r\n }\r\n\r\n void previewCount;\r\n const rows = normalizeListDataSource(props.dataSource);\r\n const rowKeyField = String(rowKey || \"\").trim();\r\n\r\n return {\r\n ...normalizedProps,\r\n dataSource: rows,\r\n renderItem: (record: unknown, rowIndex: number) => {\r\n const itemKey = getListItemKey(record, rowIndex, rowKeyField);\r\n const nextRuntimeContext = buildListItemRuntimeContext(\r\n context.runtimeContext,\r\n record,\r\n rowIndex,\r\n itemKey,\r\n rows,\r\n );\r\n return createElement(\n List.Item,\n { key: itemKey },\n context.renderChildren?.(nextRuntimeContext),\n );\n },\n };\n },\n};\n","import { columnsRequestAdapter } from \"./columns-request\";\nimport { listTemplateAdapter } from \"./list-template\";\nimport type { ReactNode } from \"react\";\n\ntype ComponentAdapter = {\n adaptProps: (\n props: Record<string, unknown>,\n context: {\n mode?: \"edit\" | \"preview\";\n runtimeContext?: Record<string, unknown>;\n hasChildren?: boolean;\n renderChildren?: (\n runtimeContext?: Record<string, unknown>,\n ) => ReactNode;\n runRequestEvent: (\n requestEvent: string,\n payload: Record<string, unknown>,\n ) => Promise<unknown>;\n },\n ) => Record<string, unknown>;\n};\n\ntype ComponentAdapterRegistry = {\n get: (componentName: string) => ComponentAdapter | null;\n};\n\nconst columnsAdapterComponentNames = new Set([\n \"ProTable\",\n \"SchemaForm\",\n \"Table\",\n]);\n\nexport const defaultComponentAdapterRegistry: ComponentAdapterRegistry = {\n get: (componentName: string) => {\n if (componentName === \"List\") {\n return listTemplateAdapter;\n }\n if (columnsAdapterComponentNames.has(componentName)) {\n return columnsRequestAdapter;\n }\n return null;\n },\n};\n","import type { ComponentType } from \"react\";\r\nimport type { ComponentMeta } from \"@mijalowcode/types\";\r\nimport { columnsRequestAdapter } from \"./runtime-adapters/columns-request\";\nimport { listTemplateAdapter } from \"./runtime-adapters/list-template\";\n\r\ntype ComponentAdapter = {\r\n adaptProps: (\r\n props: Record<string, unknown>,\r\n context: {\r\n runRequestEvent: (\r\n requestEvent: string,\r\n payload: Record<string, unknown>,\r\n ) => Promise<unknown>;\r\n },\r\n ) => Record<string, unknown>;\r\n};\r\n\r\nexport type MaterialRuntimeModule = {\r\n component: ComponentType<any>;\r\n adapter?: ComponentAdapter;\r\n meta?: ComponentMeta;\r\n};\r\n\r\nexport type MaterialLoadOptions = {\r\n includeMeta?: boolean;\r\n};\r\n\r\nexport type LoadMaterialModulesOptions = MaterialLoadOptions;\r\n\r\nexport type MaterialLoader = (\r\n options?: MaterialLoadOptions,\r\n) => Promise<MaterialRuntimeModule>;\r\n\r\nexport type MaterialManifestEntry = MaterialLoader;\r\n\r\nexport type MaterialManifest = Record<string, MaterialManifestEntry>;\r\n\r\nexport type LoadedMaterialModules = {\r\n components: Record<string, ComponentType<any>>;\r\n adapters: Record<string, ComponentAdapter>;\r\n metas: Record<string, ComponentMeta>;\r\n missing: string[];\r\n};\r\n\r\nconst defaultMaterialLoadOptions: MaterialLoadOptions = {\r\n includeMeta: false,\r\n};\r\n\r\nfunction shouldLoadMeta(options?: MaterialLoadOptions) {\r\n return Boolean(options?.includeMeta);\r\n}\r\n\r\nfunction pick(source: unknown, path: string): ComponentType<any> {\r\n return path.split(\".\").reduce<unknown>((acc, segment) => {\r\n if (!acc || typeof acc !== \"object\") return undefined;\r\n return (acc as Record<string, unknown>)[segment];\r\n }, source) as ComponentType<any>;\r\n}\r\n\r\nasync function loadWeb(\r\n exportPath: string,\r\n metaLoader?: () => Promise<ComponentMeta>,\r\n options: MaterialLoadOptions = defaultMaterialLoadOptions,\r\n): Promise<MaterialRuntimeModule> {\r\n const [web, meta] = await Promise.all([\r\n import(\"@mijadesign/web\"),\r\n shouldLoadMeta(options) ? metaLoader?.() : undefined,\r\n ]);\r\n return { component: pick(web, exportPath), meta };\r\n}\r\n\r\nasync function loadAntdLayout(\r\n exportPath: string,\r\n metaLoader?: () => Promise<ComponentMeta>,\r\n options: MaterialLoadOptions = defaultMaterialLoadOptions,\r\n): Promise<MaterialRuntimeModule> {\r\n const [antd, meta] = await Promise.all([\r\n import(\"antd\"),\r\n shouldLoadMeta(options) ? metaLoader?.() : undefined,\r\n ]);\r\n return { component: pick(antd, exportPath), meta };\r\n}\r\n\r\nasync function loadDefault(\r\n componentLoader: () => Promise<{ default: ComponentType<any> }>,\r\n metaLoader?: () => Promise<ComponentMeta>,\r\n adapter?: ComponentAdapter,\r\n options: MaterialLoadOptions = defaultMaterialLoadOptions,\r\n): Promise<MaterialRuntimeModule> {\r\n const [componentModule, meta] = await Promise.all([\r\n componentLoader(),\r\n shouldLoadMeta(options) ? metaLoader?.() : undefined,\r\n ]);\r\n return { component: componentModule.default, adapter, meta };\r\n}\r\n\r\nconst loadColumnsAdapter = () => columnsRequestAdapter;\r\n\r\nconst manifestLoadCache = new WeakMap<\r\n MaterialManifest,\r\n Map<string, Promise<MaterialRuntimeModule>>\r\n>();\r\n\r\nfunction getManifestCache(manifest: MaterialManifest) {\r\n const existing = manifestLoadCache.get(manifest);\r\n if (existing) return existing;\r\n const next = new Map<string, Promise<MaterialRuntimeModule>>();\r\n manifestLoadCache.set(manifest, next);\r\n return next;\r\n}\r\n\r\nfunction loadCachedMaterial(\r\n componentName: string,\r\n entry: MaterialManifestEntry,\r\n manifest: MaterialManifest,\r\n options: MaterialLoadOptions,\r\n) {\r\n const cache = getManifestCache(manifest);\r\n const cacheKey = `${componentName}:${shouldLoadMeta(options) ? \"meta\" : \"runtime\"}`;\r\n const cached = cache.get(cacheKey);\r\n if (cached) return cached;\r\n const loading = entry(options).catch((error: unknown) => {\r\n cache.delete(cacheKey);\r\n throw error;\r\n });\r\n cache.set(cacheKey, loading);\r\n return loading;\r\n}\r\n\r\nexport function clearMaterialLoadCache(manifest?: MaterialManifest) {\r\n if (manifest) {\r\n manifestLoadCache.delete(manifest);\r\n return;\r\n }\r\n manifestLoadCache.delete(materialManifest);\r\n}\r\n\r\nexport const materialManifest: MaterialManifest = {\r\n Button: () =>\r\n loadDefault(\r\n () => import(\"./antd/Button/ButtonWrapper\"),\r\n async () => (await import(\"./antd/Button/meta\")).ButtonMeta,\r\n ),\r\n Space: () =>\r\n loadDefault(\r\n () => import(\"./antd/Space/SpaceWrapper\"),\r\n async () => (await import(\"./antd/Space/meta\")).SpaceMeta,\r\n ),\r\n DesensitizationDisplay: () =>\r\n loadDefault(\r\n () => import(\"./custom/DesensitizationDisplay\"),\r\n async () =>\r\n (await import(\"./custom/DesensitizationDisplay/meta\"))\r\n .DesensitizationDisplayMeta,\r\n ),\r\n\r\n Layout: () =>\r\n loadAntdLayout(\"Layout\", async () =>\r\n (await import(\"./antd/Layout/meta\")).LayoutMeta\r\n ),\r\n \"Layout.Header\": () => loadAntdLayout(\"Layout.Header\"),\r\n \"Layout.Sider\": () => loadAntdLayout(\"Layout.Sider\"),\r\n \"Layout.Content\": () => loadAntdLayout(\"Layout.Content\"),\r\n \"Layout.Footer\": () => loadAntdLayout(\"Layout.Footer\"),\r\n Header: () =>\r\n loadAntdLayout(\"Layout.Header\", async () =>\r\n (await import(\"./antd/Layout/meta\")).HeaderMeta\r\n ),\r\n Sider: () =>\r\n loadAntdLayout(\"Layout.Sider\", async () =>\r\n (await import(\"./antd/Layout/meta\")).SiderMeta\r\n ),\r\n Content: () =>\r\n loadAntdLayout(\"Layout.Content\", async () =>\r\n (await import(\"./antd/Layout/meta\")).ContentMeta\r\n ),\r\n Footer: () =>\r\n loadAntdLayout(\"Layout.Footer\", async () =>\r\n (await import(\"./antd/Layout/meta\")).FooterMeta\r\n ),\r\n Row: () =>\r\n loadWeb(\"Row\", async () => (await import(\"./antd/Layout/meta\")).RowMeta),\r\n Col: () =>\r\n loadWeb(\"Col\", async () => (await import(\"./antd/Layout/meta\")).ColMeta),\r\n Card: () =>\r\n loadWeb(\"Card\", async () => (await import(\"./antd/Card/meta\")).CardMeta),\r\n\r\n Input: () =>\r\n loadWeb(\"Input\", async () => (await import(\"./antd/Input/meta\")).InputMeta),\r\n \"Input.TextArea\": () =>\r\n loadWeb(\"Input.TextArea\", async () =>\r\n (await import(\"./antd/Input/meta\")).InputTextAreaMeta\r\n ),\r\n \"Input.Search\": () => loadWeb(\"Input.Search\"),\r\n \"Input.Password\": () => loadWeb(\"Input.Password\"),\r\n Form: () =>\r\n loadWeb(\"Form\", async () => (await import(\"./antd/Form/meta\")).FormMeta),\r\n \"Form.Item\": () =>\r\n loadWeb(\"Form.Item\", async () =>\r\n (await import(\"./antd/Form/meta\")).FormItemMeta\r\n ),\r\n \"Form.List\": () =>\r\n loadWeb(\"Form.List\", async () =>\r\n (await import(\"./antd/Form/meta\")).FormListMeta\r\n ),\r\n Select: () =>\r\n loadWeb(\"Select\", async () =>\r\n (await import(\"./antd/Select/meta\")).SelectMeta\r\n ),\r\n InputNumber: () =>\r\n loadWeb(\"InputNumber\", async () =>\r\n (await import(\"./antd/InputNumber/meta\")).InputNumberMeta\r\n ),\r\n\r\n DatePicker: () =>\r\n loadWeb(\"DatePicker\", async () =>\r\n (await import(\"./antd/DatePicker/meta\")).DatePickerMeta\r\n ),\r\n \"DatePicker.RangePicker\": () =>\r\n loadWeb(\"DatePicker.RangePicker\", async () =>\r\n (await import(\"./antd/DatePicker/meta\")).RangePickerMeta\r\n ),\r\n TimePicker: () =>\r\n loadWeb(\"TimePicker\", async () =>\r\n (await import(\"./antd/DatePicker/meta\")).TimePickerMeta\r\n ),\r\n Upload: () =>\r\n loadWeb(\"Upload\", async () =>\r\n (await import(\"./antd/Upload/meta\")).UploadMeta\r\n ),\r\n Tree: () =>\r\n loadWeb(\"Tree\", async () => (await import(\"./antd/Tree/meta\")).TreeMeta),\r\n TreeSelect: () =>\r\n loadWeb(\"TreeSelect\", async () =>\r\n (await import(\"./antd/Tree/meta\")).TreeSelectMeta\r\n ),\r\n Tabs: () =>\r\n loadWeb(\"Tabs\", async () => (await import(\"./antd/Tabs/meta\")).TabsMeta),\r\n \"Tabs.TabPane\": () =>\r\n loadWeb(\"Tabs.TabPane\", async () =>\r\n (await import(\"./antd/Tabs/meta\")).TabPaneMeta\r\n ),\r\n Steps: () =>\r\n loadWeb(\"Steps\", async () => (await import(\"./antd/Steps/meta\")).StepsMeta),\r\n \"Steps.Step\": () =>\r\n loadWeb(\"Steps.Step\", async () =>\r\n (await import(\"./antd/Steps/meta\")).StepMeta\r\n ),\r\n Tag: () =>\r\n loadDefault(\r\n () => import(\"./antd/Tag/TagWrapper\"),\r\n async () => (await import(\"./antd/Tag/meta\")).TagMeta,\r\n ),\r\n \"Tag.CheckableTag\": () =>\r\n loadWeb(\"Tag.CheckableTag\", async () =>\r\n (await import(\"./antd/Tag/meta\")).CheckableTagMeta\r\n ),\r\n ScenarioFlowBoard: () =>\r\n loadDefault(\r\n () => import(\"./custom/scenario/ScenarioFlowBoard\"),\r\n async () =>\r\n (await import(\"./custom/scenario/ScenarioFlowBoard/meta\"))\r\n .ScenarioFlowBoardMeta,\r\n ),\r\n ScenarioFlowScene: () =>\r\n loadDefault(\r\n () => import(\"./custom/scenario/ScenarioFlowScene\"),\r\n async () =>\r\n (await import(\"./custom/scenario/ScenarioFlowScene/meta\"))\r\n .ScenarioFlowSceneMeta,\r\n ),\r\n ScenarioFlowStep: () =>\r\n loadDefault(\r\n () => import(\"./custom/scenario/ScenarioFlowStep\"),\r\n async () =>\r\n (await import(\"./custom/scenario/ScenarioFlowStep/meta\"))\r\n .ScenarioFlowStepMeta,\r\n ),\r\n\r\n Badge: () =>\r\n loadWeb(\"Badge\", async () => (await import(\"./antd/Badge/meta\")).BadgeMeta),\r\n \"Badge.Ribbon\": () =>\r\n loadWeb(\"Badge.Ribbon\", async () =>\r\n (await import(\"./antd/Badge/meta\")).BadgeRibbonMeta\r\n ),\r\n Avatar: () =>\r\n loadWeb(\"Avatar\", async () =>\r\n (await import(\"./antd/Avatar/meta\")).AvatarMeta\r\n ),\r\n \"Avatar.Group\": () =>\r\n loadWeb(\"Avatar.Group\", async () =>\r\n (await import(\"./antd/Avatar/meta\")).AvatarGroupMeta\r\n ),\r\n Dropdown: () =>\n loadWeb(\"Dropdown\", async () =>\n (await import(\"./antd/Dropdown/meta\")).DropdownMeta\n ),\n Breadcrumb: () =>\n loadWeb(\"Breadcrumb\", async () =>\n (await import(\"./antd/Breadcrumb/meta\")).BreadcrumbMeta\n ),\n \"Dropdown.Button\": () =>\n loadWeb(\"Dropdown.Button\", async () =>\n (await import(\"./antd/Dropdown/meta\")).DropdownButtonMeta\n ),\n Pagination: () =>\r\n loadWeb(\"Pagination\", async () =>\r\n (await import(\"./antd/Pagination/meta\")).PaginationMeta\r\n ),\r\n Switch: () =>\r\n loadWeb(\"Switch\", async () =>\r\n (await import(\"./antd/Switch/meta\")).SwitchMeta\r\n ),\r\n Radio: () =>\r\n loadWeb(\"Radio\", async () => (await import(\"./antd/Radio/meta\")).RadioMeta),\r\n \"Radio.Group\": () =>\r\n loadWeb(\"Radio.Group\", async () =>\r\n (await import(\"./antd/Radio/meta\")).RadioGroupMeta\r\n ),\r\n RadioButton: () => loadWeb(\"Radio.Button\"),\r\n Checkbox: () =>\r\n loadWeb(\"Checkbox\", async () =>\r\n (await import(\"./antd/Checkbox/meta\")).CheckboxMeta\r\n ),\r\n \"Checkbox.Group\": () =>\r\n loadWeb(\"Checkbox.Group\", async () =>\r\n (await import(\"./antd/Checkbox/meta\")).CheckboxGroupMeta\r\n ),\r\n Cascader: () =>\r\n loadWeb(\"Cascader\", async () =>\r\n (await import(\"./antd/Cascader/meta\")).CascaderMeta\r\n ),\r\n Table: () =>\r\n loadWeb(\r\n \"Table\",\r\n async () => (await import(\"./antd/Table/meta\")).TableMeta,\r\n ).then((module) => ({ ...module, adapter: loadColumnsAdapter() })),\r\n\r\n Typography: () => loadWeb(\"Typography\"),\r\n \"Typography.Title\": () =>\r\n loadWeb(\"Typography.Title\", async () =>\r\n (await import(\"./antd/Typography/meta\")).TypographyTitleMeta\r\n ),\r\n \"Typography.Paragraph\": () =>\r\n loadWeb(\"Typography.Paragraph\", async () =>\r\n (await import(\"./antd/Typography/meta\")).TypographyParagraphMeta\r\n ),\r\n \"Typography.Text\": () =>\r\n loadWeb(\"Typography.Text\", async () =>\r\n (await import(\"./antd/Typography/meta\")).TypographyTextMeta\r\n ),\r\n\r\n ProTable: () =>\r\n loadDefault(\r\n () => import(\"./antdPro/ProTable/ProTableWrapper\"),\r\n async () => (await import(\"./antdPro/ProTable/meta\")).ProTableMeta,\r\n loadColumnsAdapter(),\r\n ),\r\n SchemaForm: () =>\r\n loadDefault(\r\n () => import(\"./antdPro/SchemaForm/SchemaFormWrapper\"),\r\n async () => (await import(\"./antdPro/SchemaForm/meta\")).SchemaFormMeta,\r\n loadColumnsAdapter(),\r\n ),\r\n FilterColumns: () =>\r\n loadDefault(\r\n () => import(\"./antdPro/FilterColumns/FilterColumnsWrapper\"),\r\n async () =>\r\n (await import(\"./antdPro/FilterColumns/meta\")).FilterColumnsMeta,\r\n ),\r\n\r\n Modal: () =>\r\n loadWeb(\"Modal\", async () => (await import(\"./antd/Modal/meta\")).ModalMeta),\r\n Drawer: () =>\r\n loadDefault(\r\n () => import(\"./antd/Drawer/DrawerWrapper\"),\r\n async () => (await import(\"./antd/Drawer/meta\")).DrawerMeta,\r\n ),\r\n Descriptions: () =>\r\n loadWeb(\"Descriptions\", async () =>\r\n (await import(\"./antd/Descriptions/meta\")).DescriptionsMeta\r\n ),\r\n \"Descriptions.Item\": () => loadWeb(\"Descriptions.Item\"),\r\n List: () =>\n loadWeb(\"List\", async () => (await import(\"./antd/List/meta\")).ListMeta)\n .then((module) => ({ ...module, adapter: listTemplateAdapter })),\n \"List.Item\": () =>\r\n loadWeb(\"List.Item\", async () =>\r\n (await import(\"./antd/List/meta\")).ListItemMeta\r\n ),\r\n Empty: () =>\r\n loadDefault(\r\n () => import(\"./antd/Empty/EmptyWrapper\"),\r\n async () => (await import(\"./antd/Empty/meta\")).EmptyMeta,\r\n ),\r\n Spin: () =>\r\n loadWeb(\"Spin\", async () => (await import(\"./antd/Spin/meta\")).SpinMeta),\r\n Alert: () =>\r\n loadWeb(\"Alert\", async () => (await import(\"./antd/Alert/meta\")).AlertMeta),\r\n Progress: () =>\r\n loadWeb(\"Progress\", async () =>\r\n (await import(\"./antd/Progress/meta\")).ProgressMeta\r\n ),\r\n Skeleton: () =>\r\n loadWeb(\"Skeleton\", async () =>\r\n (await import(\"./antd/Tooltip/meta\")).SkeletonMeta\r\n ),\r\n Tooltip: () =>\r\n loadWeb(\"Tooltip\", async () =>\r\n (await import(\"./antd/Tooltip/meta\")).TooltipMeta\r\n ),\r\n Popconfirm: () =>\r\n loadWeb(\"Popconfirm\", async () =>\r\n (await import(\"./antd/Tooltip/meta\")).PopconfirmMeta\r\n ),\r\n Popover: () =>\r\n loadDefault(\r\n () => import(\"./antd/Popover/PopoverWrapper\"),\r\n async () => (await import(\"./antd/Popover/meta\")).PopoverMeta\r\n ),\r\n Divider: () =>\r\n loadWeb(\"Divider\", async () =>\r\n (await import(\"./antd/Divider/meta\")).DividerMeta\r\n ),\r\n Statistic: () =>\r\n loadWeb(\"Statistic\", async () =>\r\n (await import(\"./antd/Statistic/meta\")).StatisticMeta\r\n ),\r\n Timeline: () =>\r\n loadWeb(\"Timeline\", async () =>\r\n (await import(\"./antd/Timeline/meta\")).TimelineMeta\r\n ),\r\n \"Timeline.Item\": () =>\r\n loadWeb(\"Timeline.Item\", async () =>\r\n (await import(\"./antd/Timeline/meta\")).TimelineItemMeta\r\n ),\r\n Result: () =>\r\n loadWeb(\"Result\", async () => (await import(\"./antd/Result/meta\")).ResultMeta),\r\n};\r\n\r\nexport async function loadMaterialModules(\r\n componentNames: Iterable<string>,\r\n manifest: MaterialManifest = materialManifest,\r\n options: LoadMaterialModulesOptions = defaultMaterialLoadOptions,\r\n): Promise<LoadedMaterialModules> {\r\n const components: Record<string, ComponentType<any>> = {};\r\n const adapters: Record<string, ComponentAdapter> = {};\r\n const metas: Record<string, ComponentMeta> = {};\r\n const missing: string[] = [];\r\n const names = Array.from(new Set(Array.from(componentNames).filter(Boolean)));\r\n const pending = [...names];\r\n const visited = new Set<string>();\r\n\r\n while (pending.length > 0) {\r\n const componentName = pending.shift();\r\n if (!componentName || visited.has(componentName)) continue;\r\n visited.add(componentName);\r\n\r\n const entry = manifest[componentName];\r\n if (!entry) {\r\n missing.push(componentName);\r\n continue;\r\n }\r\n\r\n // 运行时只加载 schema 实际收集到的物料,避免复杂物料的历史显式依赖拉入未使用组件。\r\n }\r\n\r\n await Promise.all(\r\n Array.from(visited).map(async (componentName) => {\r\n const loader = manifest[componentName];\r\n if (!loader) {\r\n return;\r\n }\r\n const module = await loadCachedMaterial(\r\n componentName,\r\n loader,\r\n manifest,\r\n options,\r\n );\r\n if (!module.component) {\r\n missing.push(componentName);\r\n return;\r\n }\r\n components[componentName] = module.component;\r\n if (module.adapter) adapters[componentName] = module.adapter;\r\n if (module.meta) metas[componentName] = module.meta;\r\n }),\r\n );\r\n\r\n return { components, adapters, metas, missing };\r\n}\r\n"]}
package/dist/index.js CHANGED
@@ -51,15 +51,15 @@ import { ScenarioFlowBoard_default } from './chunk-PT743TKA.js';
51
51
  import { ScenarioFlowScene_default } from './chunk-UXX4ALHV.js';
52
52
  import { ScenarioFlowStep_default } from './chunk-3TQXWQJ2.js';
53
53
  import { ButtonMeta } from './chunk-O4ZVLA57.js';
54
- export { clearMaterialLoadCache, columnsRequestAdapter, defaultComponentAdapterRegistry, listTemplateAdapter, loadMaterialModules, materialManifest } from './chunk-TGKZYAXR.js';
55
- import { ProTableWrapper_default } from './chunk-URB3CLYQ.js';
54
+ export { clearMaterialLoadCache, columnsRequestAdapter, defaultComponentAdapterRegistry, listTemplateAdapter, loadMaterialModules, materialManifest } from './chunk-XD2EF4AB.js';
55
+ import { ProTableWrapper_default } from './chunk-GRH5DVD3.js';
56
56
  export { collectSlotChildren, renderSlotArea, resolveSlot, useSlotRuntime } from './chunk-VNMO5V4F.js';
57
57
  import { SchemaFormWrapper_default } from './chunk-BQQZHRIP.js';
58
58
  import { FilterColumnsWrapper_default } from './chunk-5YP2QX7V.js';
59
59
  export { useEventEmitter } from './chunk-CTF6CVK3.js';
60
60
  import { DrawerWrapper_default } from './chunk-HSEAHONQ.js';
61
61
  import { EmptyWrapper_default } from './chunk-A5OVLNVD.js';
62
- import { ButtonWrapper_default } from './chunk-X5Y3TOZ6.js';
62
+ import { ButtonWrapper_default } from './chunk-HKJUEMT3.js';
63
63
  import { Timeline, List, Descriptions, Typography, Checkbox, Radio, Dropdown, Avatar, Badge, DatePicker, Form, Input, Result, Statistic, Divider, Popconfirm, Tooltip, Skeleton, Progress, Alert, Spin, Modal, Table, Cascader, Switch, Pagination, Breadcrumb, Steps, Tabs, Tree, Upload, TimePicker, InputNumber, Select, Card, Col, Row } from '@mijadesign/web';
64
64
  import { Layout } from 'antd';
65
65
 
package/dist/runtime.js CHANGED
@@ -1,3 +1,3 @@
1
- export { clearMaterialLoadCache, columnsRequestAdapter, defaultComponentAdapterRegistry, listTemplateAdapter, loadMaterialModules, materialManifest } from './chunk-TGKZYAXR.js';
1
+ export { clearMaterialLoadCache, columnsRequestAdapter, defaultComponentAdapterRegistry, listTemplateAdapter, loadMaterialModules, materialManifest } from './chunk-XD2EF4AB.js';
2
2
  //# sourceMappingURL=runtime.js.map
3
3
  //# sourceMappingURL=runtime.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mijalowcode/materials",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
4
4
  "description": "Mija Lowcode materials library",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -28,9 +28,9 @@
28
28
  "access": "public"
29
29
  },
30
30
  "dependencies": {
31
- "@mijalowcode/store": "^1.0.3",
31
+ "@mijalowcode/request": "^1.0.4",
32
32
  "@mijalowcode/types": "^1.0.5",
33
- "@mijalowcode/request": "^1.0.4"
33
+ "@mijalowcode/store": "^1.0.3"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "antd": "~5.21.6",
@@ -1,3 +0,0 @@
1
- export { ButtonWrapper_default as default } from './chunk-X5Y3TOZ6.js';
2
- //# sourceMappingURL=ButtonWrapper-HJIWAEIJ.js.map
3
- //# sourceMappingURL=ButtonWrapper-HJIWAEIJ.js.map
@@ -1,5 +0,0 @@
1
- export { ProTableWrapper_default as default } from './chunk-URB3CLYQ.js';
2
- import './chunk-VNMO5V4F.js';
3
- import './chunk-CTF6CVK3.js';
4
- //# sourceMappingURL=ProTableWrapper-2VRYHYZG.js.map
5
- //# sourceMappingURL=ProTableWrapper-2VRYHYZG.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/antdPro/ProTable/data-source.ts","../src/antdPro/ProTable/ProTableWrapper.tsx"],"names":["size","AntdProTable"],"mappings":"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","file":"chunk-URB3CLYQ.js","sourcesContent":["export type TableRowRecord = Record<string, unknown>;\n\nexport function normalizeProTableDataSource(\n dataSource: unknown,\n): TableRowRecord[] {\n return Array.isArray(dataSource)\n ? dataSource.filter(\n (item): item is TableRowRecord =>\n Boolean(item) && typeof item === \"object\" && !Array.isArray(item),\n )\n : [];\n}\n\nexport function hasTableRequestBinding(\n eventMap: Record<string, unknown> | undefined,\n): boolean {\n const binding = eventMap?.[\"table.request\"];\n if (!binding || typeof binding !== \"object\" || Array.isArray(binding)) {\n return false;\n }\n const current = binding as {\n enabled?: unknown;\n handlerName?: unknown;\n handlerCode?: unknown;\n actions?: unknown;\n };\n if (current.enabled === false) return false;\n if (typeof current.handlerName === \"string\" && current.handlerName.trim()) {\n return true;\n }\n if (typeof current.handlerCode === \"string\" && current.handlerCode.trim()) {\n return true;\n }\n return Array.isArray(current.actions) && current.actions.length > 0;\n}\n","import {\r\n useCallback,\r\n useRef,\r\n useState,\r\n useEffect,\r\n useMemo,\r\n type ReactNode,\r\n type ComponentProps,\r\n} from \"react\";\r\nimport { ProTable as AntdProTable } from \"@ant-design/pro-components\";\r\nimport type { ProColumns, ActionType } from \"@ant-design/pro-components\";\r\nimport type { TableColumnConfig, FieldPropsConfig } from \"@mijalowcode/types\";\r\nimport { useSlotRuntime, type SlotArea } from \"../../slot-runtime\";\r\nimport { useEventEmitter, type EventEmitter } from \"../../event-runtime\";\r\nimport * as AntdIcons from \"@ant-design/icons\";\r\nimport {\r\n hasTableRequestBinding,\r\n normalizeProTableDataSource,\r\n} from \"./data-source\";\r\n\r\ntype TableRequestResult = {\r\n data: Record<string, unknown>[];\r\n success: boolean;\r\n total: number;\r\n};\r\n\r\ntype RegisterCapabilities = (\r\n componentId: string,\r\n capabilities: Record<string, (...args: unknown[]) => unknown>,\r\n) => () => void;\r\n\r\ntype MaterialRuntime = {\r\n nodeId: string;\r\n registerComponentCapabilities?: RegisterCapabilities;\r\n};\r\n\r\ninterface ProTableWrapperProps {\r\n columns?: TableColumnConfig[];\r\n dataSource?: unknown;\r\n type?: \"\" | \"form\" | \"list\" | \"descriptions\" | \"table\" | \"cardList\";\r\n rowKey?: string;\r\n headerTitle?: string;\r\n size?: \"large\" | \"middle\" | \"small\";\r\n bordered?: boolean;\r\n showHeader?: boolean;\r\n search?: boolean;\r\n rowSelectionEnabled?: boolean;\r\n rowSelectionType?: \"checkbox\" | \"radio\";\r\n paginationEnabled?: boolean;\r\n pageSize?: number;\r\n showSizeChanger?: boolean;\r\n showQuickJumper?: boolean;\r\n scrollX?: number;\r\n scrollY?: number;\r\n autoHeight?: boolean;\r\n autoHeightOffset?: number;\r\n autoHeightMinY?: number;\r\n style?: React.CSSProperties;\r\n onEvent?: EventEmitter;\r\n renderSlot?: (\r\n slotName: string,\r\n payload?: Record<string, unknown>,\r\n ) => ReactNode;\r\n children?: ReactNode;\r\n toolbarSlotName?: string;\r\n runtime?: MaterialRuntime;\r\n __nodeId?: string;\r\n __registerCapabilities?: RegisterCapabilities;\r\n __events?: Record<string, unknown>;\r\n}\r\n\r\ntype ProTableSearchProp = ComponentProps<typeof AntdProTable>[\"search\"];\r\n\r\nfunction buildTableRequestSortPayload(sort: Record<string, unknown>) {\r\n const [sortField, sortOrder] = Object.entries(sort).find(([, value]) => {\r\n return value === \"ascend\" || value === \"descend\";\r\n }) || [undefined, undefined];\r\n\r\n if (!sortField || typeof sortOrder !== \"string\") return {};\r\n\r\n return {\r\n sortField,\r\n sortMode: sortOrder === \"ascend\" ? \"ASC\" : \"DESC\",\r\n };\r\n}\r\n\r\nfunction isBindValue(value: unknown): value is {\r\n __bind: {\r\n fallback?: unknown;\r\n };\r\n} {\r\n return (\r\n Boolean(value) &&\r\n typeof value === \"object\" &&\r\n !Array.isArray(value) &&\r\n typeof (value as Record<string, unknown>).__bind === \"object\"\r\n );\r\n}\r\n\r\nfunction renderFieldPropsPrefixSuffix(\r\n fieldProps: FieldPropsConfig | undefined,\r\n) {\r\n if (!fieldProps) return undefined;\r\n\r\n const result: FieldPropsConfig = { ...fieldProps };\r\n\r\n if (fieldProps.prefixType === \"icon\" && fieldProps.prefixIcon) {\r\n const icons = AntdIcons as unknown as Record<\r\n string,\r\n React.ComponentType<unknown>\r\n >;\r\n const IconComponent = icons[fieldProps.prefixIcon];\r\n result.prefix = IconComponent ? <IconComponent /> : undefined;\r\n } else if (fieldProps.prefixText) {\r\n result.prefix = fieldProps.prefixText as React.ReactNode;\r\n }\r\n\r\n if (fieldProps.suffixType === \"icon\" && fieldProps.suffixIcon) {\r\n const icons = AntdIcons as unknown as Record<\r\n string,\r\n React.ComponentType<unknown>\r\n >;\r\n const IconComponent = icons[fieldProps.suffixIcon];\r\n result.suffix = IconComponent ? <IconComponent /> : undefined;\r\n } else if (fieldProps.suffixText) {\r\n result.suffix = fieldProps.suffixText as React.ReactNode;\r\n }\r\n\r\n return result;\r\n}\r\n\r\nfunction resolveColumnValueEnum(\r\n col: TableColumnConfig,\r\n): ProColumns[\"valueEnum\"] {\r\n if (isBindValue(col.valueEnum)) {\r\n return col.valueEnum.__bind.fallback as ProColumns[\"valueEnum\"];\r\n }\r\n return col.valueEnum as ProColumns[\"valueEnum\"];\r\n}\r\n\r\nfunction resolveColumnSlotAreaNames(col: TableColumnConfig) {\r\n const areaNames: string[] = [];\r\n const columnId = String(col.columnId || \"\").trim();\r\n if (columnId) {\r\n areaNames.push(`columnId:${columnId}`);\r\n }\r\n return areaNames;\r\n}\r\n\r\n// 将低代码列配置转换为 ProTable 列配置,并按约定挂载列级插槽渲染\r\nfunction convertColumns(\r\n columns: TableColumnConfig[] = [],\r\n getAreaNodes?: (\r\n areaName: string,\r\n payload?: Record<string, unknown>,\r\n ) => ReactNode[] | undefined,\r\n areaMap: Record<string, ReactNode[]> = {},\r\n hasExternalRenderSlot = false,\r\n): ProColumns[] {\r\n return columns.map((col) => {\r\n const extendedCol = col as TableColumnConfig & {\r\n slotName?: string;\r\n request?: ProColumns[\"request\"];\r\n };\r\n const areaNames = resolveColumnSlotAreaNames(col);\r\n const hasSchemaSlot = areaNames.some(\r\n (areaName) => areaMap[areaName]?.length,\r\n );\r\n\r\n const proColumn: ProColumns = {\r\n key: col.key || col.dataIndex,\r\n title: col.title,\r\n dataIndex: col.dataIndex,\r\n width: col.width,\r\n align: col.align,\r\n fixed: col.fixed || undefined,\r\n ellipsis: col.ellipsis,\r\n copyable: col.copyable,\r\n sorter: col.sorter,\r\n valueType: col.valueType as any,\r\n valueEnum: resolveColumnValueEnum(col),\r\n request: extendedCol.request,\r\n hideInSearch: col.hideInSearch,\r\n hideInTable: col.hideInTable,\r\n formItemProps: col.formItemProps,\r\n fieldProps: renderFieldPropsPrefixSuffix(col.fieldProps) as any,\r\n };\r\n\r\n if (!areaNames.length || (!hasExternalRenderSlot && !hasSchemaSlot)) {\r\n return proColumn;\r\n }\r\n\r\n proColumn.render = (_, record: Record<string, unknown>, index: number) => {\r\n const rawValue = record[col.dataIndex];\r\n const valueEnum = resolveColumnValueEnum(col) as\r\n | Record<string, { text?: unknown; status?: unknown }>\r\n | undefined;\r\n const enumMatch =\r\n valueEnum && rawValue !== undefined && rawValue !== null\r\n ? valueEnum[String(rawValue)]\r\n : undefined;\r\n const slotPayload = {\r\n record,\r\n index,\r\n column: col,\r\n value: rawValue,\r\n valueEnum,\r\n valueEnumItem: enumMatch,\r\n enumText: enumMatch?.text,\r\n enumStatus: enumMatch?.status,\r\n };\r\n const slotNodes = areaNames.reduce<ReactNode[] | undefined>(\r\n (matchedNodes, areaName) => {\r\n if (matchedNodes !== undefined) {\r\n return matchedNodes;\r\n }\r\n return getAreaNodes?.(areaName, {\r\n ...slotPayload,\r\n runtimeContext: {\r\n scope: \"table.cell\",\r\n area: areaName,\r\n container: {\r\n type: \"table\",\r\n area: areaName,\r\n index,\r\n column: col,\r\n record,\r\n },\r\n data: {\r\n ...slotPayload,\r\n rawValue: rawValue,\r\n displayValue:\r\n enumMatch?.text !== undefined && enumMatch?.text !== null\r\n ? enumMatch.text\r\n : rawValue,\r\n status: enumMatch?.status,\r\n },\r\n },\r\n });\r\n },\r\n undefined,\r\n );\r\n if (slotNodes !== undefined) {\r\n return slotNodes.length === 1 ? slotNodes[0] : slotNodes;\r\n }\r\n return String(record[col.dataIndex] ?? \"\");\r\n };\r\n\r\n return proColumn;\r\n });\r\n}\r\n\r\nfunction ProTableWrapper({\r\n columns = [],\r\n dataSource = [],\r\n rowKey = \"key\",\r\n headerTitle,\r\n size = \"middle\",\r\n bordered = false,\r\n showHeader = true,\r\n search = true,\r\n paginationEnabled = true,\r\n pageSize = 10,\r\n showSizeChanger = true,\r\n showQuickJumper = false,\r\n scrollX,\r\n scrollY,\r\n autoHeight = true,\r\n autoHeightOffset = 0,\r\n autoHeightMinY = 240,\r\n style,\r\n onEvent,\r\n renderSlot,\r\n children,\r\n toolbarSlotName = \"toolbar\",\r\n runtime,\r\n __nodeId,\r\n __registerCapabilities,\r\n __events,\r\n}: ProTableWrapperProps) {\r\n const actionRef = useRef<ActionType>();\r\n const componentNodeId = runtime?.nodeId || __nodeId;\r\n const registerCapabilities =\r\n runtime?.registerComponentCapabilities || __registerCapabilities;\r\n\r\n const tableContainerRef = useRef<HTMLDivElement>(null);\r\n const [searchAreaHeight, setSearchAreaHeight] = useState(0);\r\n const [viewportHeight, setViewportHeight] = useState(\r\n typeof window !== \"undefined\" ? window.innerHeight : 900,\r\n );\r\n const [tablePageSize, setTablePageSize] = useState(pageSize);\r\n const emitEvent = useEventEmitter(onEvent);\r\n\r\n useEffect(() => {\r\n setTablePageSize(pageSize);\r\n }, [pageSize]);\r\n\r\n useEffect(() => {\r\n if (!componentNodeId || !registerCapabilities) return;\r\n return registerCapabilities(componentNodeId, {\r\n reload: () => actionRef.current?.reload?.(),\r\n reloadAndRest: () => actionRef.current?.reloadAndRest?.(),\r\n reset: () => actionRef.current?.reset?.(),\r\n clearSelected: () => actionRef.current?.clearSelected?.(),\r\n });\r\n }, [componentNodeId, registerCapabilities]);\r\n\r\n const slotAreas = useMemo<SlotArea[]>(() => {\r\n const areaSet = new Set<string>([toolbarSlotName]);\r\n columns.forEach((col) => {\r\n resolveColumnSlotAreaNames(col).forEach((areaName) => {\r\n areaSet.add(areaName);\r\n });\r\n });\r\n return Array.from(areaSet).map((name) => ({ name }));\r\n }, [columns, toolbarSlotName]);\r\n\r\n const { getAreaNodes, areaMap } = useSlotRuntime({\r\n renderSlot,\r\n children,\r\n areas: slotAreas,\r\n });\r\n\r\n const proColumns = useMemo(\r\n () => convertColumns(columns, getAreaNodes, areaMap, Boolean(renderSlot)),\r\n [columns, getAreaNodes, areaMap, renderSlot],\r\n );\r\n\r\n const toolbarNodes = useMemo(() => {\r\n return getAreaNodes(toolbarSlotName, { actionRef: actionRef.current });\r\n }, [getAreaNodes, toolbarSlotName, actionRef]);\r\n\r\n // 统一获取搜索区节点,用于计算自动高度\r\n const getSearchNode = useCallback(() => {\r\n const container = tableContainerRef.current;\r\n if (!container) return null;\r\n return container.querySelector(\r\n \".ant-pro-table-search\",\r\n ) as HTMLElement | null;\r\n }, []);\r\n\r\n // 同步视口高度与搜索区高度,供表格滚动区高度计算使用\r\n const updateAutoHeightMetrics = useCallback(() => {\r\n setViewportHeight(window.innerHeight);\r\n const searchNode = getSearchNode();\r\n const next = searchNode\r\n ? Math.ceil(searchNode.getBoundingClientRect().height)\r\n : 0;\r\n setSearchAreaHeight(next);\r\n }, [getSearchNode]);\r\n\r\n // autoHeight 开启时监听窗口与搜索区尺寸变化;关闭时清空搜索区高度\r\n useEffect(() => {\r\n if (!autoHeight) {\r\n setSearchAreaHeight(0);\r\n return;\r\n }\r\n\r\n updateAutoHeightMetrics();\r\n\r\n const searchNode = getSearchNode();\r\n const resizeObserver =\r\n searchNode && typeof ResizeObserver !== \"undefined\"\r\n ? new ResizeObserver(updateAutoHeightMetrics)\r\n : null;\r\n\r\n if (resizeObserver && searchNode) {\r\n resizeObserver.observe(searchNode);\r\n }\r\n\r\n window.addEventListener(\"resize\", updateAutoHeightMetrics);\r\n\r\n return () => {\r\n if (resizeObserver) resizeObserver.disconnect();\r\n window.removeEventListener(\"resize\", updateAutoHeightMetrics);\r\n };\r\n }, [autoHeight, search, getSearchNode, updateAutoHeightMetrics]);\r\n\r\n const finalScrollY = useMemo(() => {\r\n if (!autoHeight) return scrollY;\r\n const headerOffset = 47;\r\n const paginationOffset = paginationEnabled ? 40 : 0;\r\n const toolbarOffset = toolbarNodes && toolbarNodes.length > 0 ? 64 : 0;\r\n const dynamic =\r\n viewportHeight -\r\n searchAreaHeight -\r\n autoHeightOffset -\r\n headerOffset -\r\n paginationOffset -\r\n toolbarOffset;\r\n return Math.max(autoHeightMinY, dynamic);\r\n }, [\r\n autoHeight,\r\n scrollY,\r\n viewportHeight,\r\n searchAreaHeight,\r\n autoHeightOffset,\r\n autoHeightMinY,\r\n paginationEnabled,\r\n toolbarNodes,\r\n ]);\r\n\r\n const tableDataSource = useMemo(\r\n () => normalizeProTableDataSource(dataSource),\r\n [dataSource],\r\n );\r\n const hasRequestBinding = useMemo(\r\n () => hasTableRequestBinding(__events),\r\n [__events],\r\n );\r\n\r\n // 配置了 table.request 时完全交给 request 驱动;未配置时使用 dataSource。\r\n const request = useCallback(\r\n async (\r\n params: Record<string, unknown>,\r\n sort: Record<string, unknown>,\r\n filter: Record<string, unknown>,\r\n ): Promise<TableRequestResult> => {\r\n const result = await emitEvent<TableRequestResult>(\"table.request\", {\r\n ...params,\r\n ...buildTableRequestSortPayload(sort),\r\n ...filter,\r\n });\r\n if (result) return result;\r\n return {\r\n data: [],\r\n success: true,\r\n total: 0,\r\n };\r\n },\r\n [emitEvent],\r\n );\r\n\r\n // 统一分页事件载荷,避免 onShowSizeChange / onChange 重复拼装参数\r\n const emitPaginationChange = useCallback(\r\n (current: number, size?: number) => {\r\n emitEvent(\"table.pagination.change\", {\r\n current,\r\n pageSize: size,\r\n pagination: {\r\n current,\r\n pageSize: size,\r\n },\r\n });\r\n },\r\n [emitEvent],\r\n );\r\n\r\n const handlePageSizeChange = useCallback(\r\n (current: number, size: number) => {\r\n setTablePageSize(size);\r\n emitPaginationChange(current, size);\r\n },\r\n [emitPaginationChange],\r\n );\r\n\r\n const handlePaginationChange = useCallback(\r\n (current: number, size?: number) => {\r\n if (typeof size === \"number\") setTablePageSize(size);\r\n emitPaginationChange(current, size);\r\n },\r\n [emitPaginationChange],\r\n );\r\n\r\n const paginationConfig = useMemo(\r\n () =>\r\n paginationEnabled\r\n ? {\r\n pageSize: tablePageSize,\r\n size: \"default\",\r\n showSizeChanger,\r\n showQuickJumper,\r\n showTotal: (total: number) => `共 ${total} 条`,\r\n onShowSizeChange: handlePageSizeChange,\r\n onChange: handlePaginationChange,\r\n }\r\n : false,\r\n [\r\n paginationEnabled,\r\n tablePageSize,\r\n showSizeChanger,\r\n showQuickJumper,\r\n handlePageSizeChange,\r\n handlePaginationChange,\r\n ],\r\n );\r\n\r\n const handleRowClick = useCallback(\r\n (record: Record<string, unknown>) => {\r\n emitEvent(\"table.row.click\", { record });\r\n },\r\n [emitEvent],\r\n );\r\n\r\n const tableScroll = useMemo(\r\n () =>\r\n scrollX || finalScrollY ? { x: scrollX, y: finalScrollY } : undefined,\r\n [scrollX, finalScrollY],\r\n );\r\n\r\n const searchConfig = useMemo<ProTableSearchProp>(\r\n () => (search ? ({ colon: false } as ProTableSearchProp) : false),\r\n [search],\r\n );\r\n\r\n return (\r\n <div ref={tableContainerRef}>\r\n <AntdProTable\r\n actionRef={actionRef}\r\n columns={proColumns}\r\n request={hasRequestBinding ? request : undefined}\r\n dataSource={hasRequestBinding ? undefined : tableDataSource}\r\n rowKey={rowKey}\r\n headerTitle={headerTitle}\r\n size={size}\r\n tableStyle={{\r\n padding: toolbarNodes ? 0 : 24,\r\n }}\r\n bordered={bordered}\r\n showHeader={showHeader}\r\n search={searchConfig}\r\n options={false}\r\n dateFormatter=\"string\"\r\n toolBarRender={toolbarNodes ? () => toolbarNodes : undefined}\r\n pagination={\r\n paginationConfig as ComponentProps<typeof AntdProTable>[\"pagination\"]\r\n }\r\n onRow={(record) => ({\r\n onClick: () => handleRowClick(record as Record<string, unknown>),\r\n })}\r\n scroll={tableScroll}\r\n style={style}\r\n />\r\n </div>\r\n );\r\n}\r\n\r\nexport default ProTableWrapper;\r\n"]}
@@ -1,109 +0,0 @@
1
- import { Button, message } from '@mijadesign/web';
2
- import { Modal } from 'antd';
3
- import { useDrawerStore } from '@mijalowcode/store';
4
- import { jsx } from 'react/jsx-runtime';
5
-
6
- // src/antd/Button/ButtonWrapper.tsx
7
- function resolveTemplate(template, record) {
8
- let result = template;
9
- Object.keys({}).forEach((key) => {
10
- result = result.replace(
11
- new RegExp(`\\{${key}\\}`, "g"),
12
- String("")
13
- );
14
- });
15
- return result;
16
- }
17
- function createActionHandler(action) {
18
- return () => {
19
- switch (action.handlerType) {
20
- case "navigate": {
21
- if (!action.navigateUrl) return;
22
- const url = resolveTemplate(action.navigateUrl);
23
- if (action.navigateTarget === "_blank") {
24
- window.open(url, "_blank");
25
- } else {
26
- window.location.href = url;
27
- }
28
- break;
29
- }
30
- case "apiRequest": {
31
- if (!action.apiUrl) return;
32
- const url = resolveTemplate(action.apiUrl);
33
- const method = action.apiMethod || "POST";
34
- const doRequest = () => {
35
- fetch(url, { method }).then((res) => res.json()).then((data) => {
36
- if (data.code === 200 || data.success) {
37
- message.success("\u64CD\u4F5C\u6210\u529F");
38
- } else {
39
- message.error(data.message || "\u64CD\u4F5C\u5931\u8D25");
40
- }
41
- }).catch(() => {
42
- message.error("\u8BF7\u6C42\u5931\u8D25");
43
- });
44
- };
45
- if (action.apiConfirm) {
46
- Modal.confirm({
47
- title: "\u64CD\u4F5C\u786E\u8BA4",
48
- content: action.apiConfirmText || "\u786E\u5B9A\u8981\u6267\u884C\u6B64\u64CD\u4F5C\u5417\uFF1F",
49
- onOk: doRequest
50
- });
51
- } else {
52
- doRequest();
53
- }
54
- break;
55
- }
56
- case "openModal": {
57
- const title = action.modalTitle || "\u63D0\u793A";
58
- const content = action.modalContent ? resolveTemplate(action.modalContent) : "";
59
- const modalType = action.modalType || "confirm";
60
- Modal[modalType]({ title, content });
61
- break;
62
- }
63
- case "openDrawer": {
64
- const config = {
65
- title: action.drawerTitle || "\u8BE6\u60C5",
66
- placement: action.drawerPlacement || "right",
67
- width: action.drawerWidth || 378,
68
- height: action.drawerHeight,
69
- closable: action.drawerClosable,
70
- maskClosable: action.drawerMaskClosable,
71
- fields: action.drawerFields,
72
- drawerId: action.drawerId,
73
- drawerContentType: action.drawerContentType || "fields"
74
- };
75
- useDrawerStore.getState().openDrawer({}, config);
76
- break;
77
- }
78
- case "router": {
79
- if (!action.navigateUrl) return;
80
- const url = resolveTemplate(action.navigateUrl);
81
- window.history.pushState(null, "", url);
82
- window.dispatchEvent(new PopStateEvent("popstate"));
83
- break;
84
- }
85
- case "custom": {
86
- if (!action.eventName) return;
87
- const event = new CustomEvent(action.eventName, {
88
- detail: { action }
89
- });
90
- window.dispatchEvent(event);
91
- break;
92
- }
93
- }
94
- };
95
- }
96
- function ButtonWrapper({
97
- btnType,
98
- action,
99
- children,
100
- ...props
101
- }) {
102
- const handleClick = action ? createActionHandler(action) : void 0;
103
- return /* @__PURE__ */ jsx(Button, { type: btnType, onClick: handleClick, ...props, children });
104
- }
105
- var ButtonWrapper_default = ButtonWrapper;
106
-
107
- export { ButtonWrapper_default };
108
- //# sourceMappingURL=chunk-X5Y3TOZ6.js.map
109
- //# sourceMappingURL=chunk-X5Y3TOZ6.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/antd/Button/ButtonWrapper.tsx"],"names":["AntdButton"],"mappings":"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","file":"chunk-X5Y3TOZ6.js","sourcesContent":["import { Button as AntdButton, message } from \"@mijadesign/web\";\r\nimport { Modal } from \"antd\";\r\nimport type { ButtonProps as AntdButtonProps } from \"@mijadesign/web\";\r\nimport { useDrawerStore } from \"@mijalowcode/store\";\r\nimport { ActionButtonConfig } from \"@mijalowcode/types\";\r\n\r\n// 将 URL 模板中的 {field} 替换为实际值\r\nfunction resolveTemplate(\r\n template: string,\r\n record?: Record<string, unknown>,\r\n): string {\r\n let result = template;\r\n Object.keys(record || {}).forEach((key) => {\r\n result = result.replace(\r\n new RegExp(`\\\\{${key}\\\\}`, \"g\"),\r\n String(record?.[key] ?? \"\"),\r\n );\r\n });\r\n return result;\r\n}\r\n\r\n// 创建操作处理函数\r\nfunction createActionHandler(action: ActionButtonConfig) {\r\n return () => {\r\n switch (action.handlerType) {\r\n case \"navigate\": {\r\n if (!action.navigateUrl) return;\r\n const url = resolveTemplate(action.navigateUrl);\r\n if (action.navigateTarget === \"_blank\") {\r\n window.open(url, \"_blank\");\r\n } else {\r\n window.location.href = url;\r\n }\r\n break;\r\n }\r\n\r\n case \"apiRequest\": {\r\n if (!action.apiUrl) return;\r\n const url = resolveTemplate(action.apiUrl);\r\n const method = action.apiMethod || \"POST\";\r\n\r\n const doRequest = () => {\r\n fetch(url, { method })\r\n .then((res) => res.json())\r\n .then((data) => {\r\n if (data.code === 200 || data.success) {\r\n message.success(\"操作成功\");\r\n } else {\r\n message.error(data.message || \"操作失败\");\r\n }\r\n })\r\n .catch(() => {\r\n message.error(\"请求失败\");\r\n });\r\n };\r\n\r\n if (action.apiConfirm) {\r\n Modal.confirm({\r\n title: \"操作确认\",\r\n content: action.apiConfirmText || \"确定要执行此操作吗?\",\r\n onOk: doRequest,\r\n });\r\n } else {\r\n doRequest();\r\n }\r\n break;\r\n }\r\n\r\n case \"openModal\": {\r\n const title = action.modalTitle || \"提示\";\r\n const content = action.modalContent\r\n ? resolveTemplate(action.modalContent)\r\n : \"\";\r\n const modalType = action.modalType || \"confirm\";\r\n Modal[modalType]({ title, content });\r\n break;\r\n }\r\n\r\n case \"openDrawer\": {\r\n const config = {\r\n title: action.drawerTitle || \"详情\",\r\n placement: action.drawerPlacement || (\"right\" as const),\r\n width: action.drawerWidth || 378,\r\n height: action.drawerHeight,\r\n closable: action.drawerClosable,\r\n maskClosable: action.drawerMaskClosable,\r\n fields: action.drawerFields,\r\n drawerId: action.drawerId,\r\n drawerContentType: action.drawerContentType || \"fields\",\r\n };\r\n // 打开抽屉时传入空 record,抽屉内容可由用户自定义\r\n useDrawerStore.getState().openDrawer({}, config);\r\n break;\r\n }\r\n\r\n case \"router\": {\r\n if (!action.navigateUrl) return;\r\n const url = resolveTemplate(action.navigateUrl);\r\n window.history.pushState(null, \"\", url);\r\n window.dispatchEvent(new PopStateEvent(\"popstate\"));\r\n break;\r\n }\r\n\r\n case \"custom\": {\r\n if (!action.eventName) return;\r\n const event = new CustomEvent(action.eventName, {\r\n detail: { action },\r\n });\r\n window.dispatchEvent(event);\r\n break;\r\n }\r\n\r\n default:\r\n break;\r\n }\r\n };\r\n}\r\n\r\ninterface ButtonWrapperProps extends AntdButtonProps {\r\n /** 按钮类型覆盖 */\r\n btnType?: \"default\" | \"primary\" | \"dashed\" | \"text\" | \"link\";\r\n /** 行动方法配置 */\r\n action?: ActionButtonConfig;\r\n /** 子元素 */\r\n children?: React.ReactNode;\r\n}\r\n\r\nfunction ButtonWrapper({\r\n btnType,\r\n action,\r\n children,\r\n ...props\r\n}: ButtonWrapperProps) {\r\n // 如果配置了 action,绑定点击事件\r\n const handleClick = action ? createActionHandler(action) : undefined;\r\n\r\n return (\r\n <AntdButton type={btnType} onClick={handleClick} {...props}>\r\n {children}\r\n </AntdButton>\r\n );\r\n}\r\n\r\nexport default ButtonWrapper;\r\n"]}