@next-bricks/visual-builder 1.39.9 → 1.39.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +1 -1
- package/dist/chunks/2475.34e54f88.js.map +1 -1
- package/dist/chunks/{4837.74a58a37.js → 4837.69df2655.js} +2 -2
- package/dist/chunks/{7218.e0a312fb.js.map → 4837.69df2655.js.map} +1 -1
- package/dist/chunks/{5522.a511ccf6.js → 5522.4d152e93.js} +3 -3
- package/dist/chunks/{5522.a511ccf6.js.map → 5522.4d152e93.js.map} +1 -1
- package/dist/chunks/{7218.e0a312fb.js → 7218.a19700c5.js} +2 -2
- package/dist/chunks/{4837.74a58a37.js.map → 7218.a19700c5.js.map} +1 -1
- package/dist/chunks/7250.5712832d.js +2 -0
- package/dist/chunks/7250.5712832d.js.map +1 -0
- package/dist/chunks/8734.21313ad6.js +2 -0
- package/dist/chunks/8734.21313ad6.js.map +1 -0
- package/dist/chunks/9057.dc9ef655.js +2 -0
- package/dist/chunks/9057.dc9ef655.js.map +1 -0
- package/dist/chunks/9653.4649f558.js +2 -0
- package/dist/chunks/9653.4649f558.js.map +1 -0
- package/dist/chunks/{batch-update-raw-data-generated-view.d031fa7c.js → batch-update-raw-data-generated-view.5bf6f18e.js} +3 -3
- package/dist/chunks/{batch-update-raw-data-generated-view.d031fa7c.js.map → batch-update-raw-data-generated-view.5bf6f18e.js.map} +1 -1
- package/dist/chunks/chat-conversation.c9d27c2f.js +3 -0
- package/dist/chunks/chat-conversation.c9d27c2f.js.map +1 -0
- package/dist/chunks/chat-preview.abac0331.js +3 -0
- package/dist/chunks/chat-preview.abac0331.js.map +1 -0
- package/dist/chunks/{check-editor-by-name.6e2dbb64.js → check-editor-by-name.6b7206de.js} +2 -2
- package/dist/chunks/{check-editor-by-name.6e2dbb64.js.map → check-editor-by-name.6b7206de.js.map} +1 -1
- package/dist/chunks/contract-select.838a3175.js +3 -0
- package/dist/chunks/contract-select.838a3175.js.map +1 -0
- package/dist/chunks/generate-snippets-context-menu.1cae90d2.js +2 -0
- package/dist/chunks/generate-snippets-context-menu.1cae90d2.js.map +1 -0
- package/dist/chunks/get-config-by-data-for-ai.276b2176.js +3 -0
- package/dist/chunks/get-config-by-data-for-ai.276b2176.js.map +1 -0
- package/dist/chunks/get-data-deps.b5325f79.js +2 -0
- package/dist/chunks/{get-data-deps.84dd8d22.js.map → get-data-deps.b5325f79.js.map} +1 -1
- package/dist/chunks/get-dependency-tree.d1fa5313.js +2 -0
- package/dist/chunks/get-dependency-tree.d1fa5313.js.map +1 -0
- package/dist/chunks/{get-raw-data-system-prompts.b114707f.js → get-raw-data-system-prompts.478855b9.js} +2 -2
- package/dist/chunks/{get-raw-data-system-prompts.b114707f.js.map → get-raw-data-system-prompts.478855b9.js.map} +1 -1
- package/dist/chunks/{get-usage-member-statistics.4be301d2.js → get-usage-member-statistics.41a79a4a.js} +2 -2
- package/dist/chunks/{get-usage-member-statistics.4be301d2.js.map → get-usage-member-statistics.41a79a4a.js.map} +1 -1
- package/dist/chunks/{inject-chat-preview-agent.c2d213c2.js → inject-chat-preview-agent.e458ca21.js} +2 -2
- package/dist/chunks/{inject-chat-preview-agent.c2d213c2.js.map → inject-chat-preview-agent.e458ca21.js.map} +1 -1
- package/dist/chunks/{main.d1103202.js → main.a7e8b5d9.js} +2 -2
- package/dist/chunks/{main.d1103202.js.map → main.a7e8b5d9.js.map} +1 -1
- package/dist/chunks/{page-arch-node.57481be9.js → page-arch-node.974674c0.js} +3 -3
- package/dist/chunks/page-arch-node.974674c0.js.map +1 -0
- package/dist/chunks/parse-path.a91243e3.js +2 -0
- package/dist/chunks/parse-path.a91243e3.js.map +1 -0
- package/dist/chunks/{pre-generated-config-preview.ec5b2d6d.js → pre-generated-config-preview.4a615c87.js} +2 -2
- package/dist/chunks/pre-generated-config-preview.4a615c87.js.map +1 -0
- package/dist/chunks/pre-generated-config.0b56cc00.js +2 -0
- package/dist/chunks/pre-generated-config.0b56cc00.js.map +1 -0
- package/dist/chunks/pre-generated-container.a1823efe.js +2 -0
- package/dist/chunks/pre-generated-container.a1823efe.js.map +1 -0
- package/dist/chunks/pre-generated-preview.e9ee3513.js +3 -0
- package/dist/chunks/pre-generated-preview.e9ee3513.js.map +1 -0
- package/dist/chunks/pre-generated-table-view.8a9d5527.js +2 -0
- package/dist/chunks/pre-generated-table-view.8a9d5527.js.map +1 -0
- package/dist/chunks/{property-editor.6c93e52f.js → property-editor.c6f914ae.js} +2 -2
- package/dist/chunks/{property-editor.6c93e52f.js.map → property-editor.c6f914ae.js.map} +1 -1
- package/dist/chunks/raw-data-preview.28b47947.js +3 -0
- package/dist/chunks/raw-data-preview.28b47947.js.map +1 -0
- package/dist/chunks/raw-metric-preview.a1d28670.js +3 -0
- package/dist/chunks/raw-metric-preview.a1d28670.js.map +1 -0
- package/dist/chunks/workbench-action-list.3405f55e.js +2 -0
- package/dist/chunks/workbench-action-list.3405f55e.js.map +1 -0
- package/dist/chunks/workbench-action.5b993227.js +3 -0
- package/dist/chunks/workbench-action.5b993227.js.map +1 -0
- package/dist/chunks/workbench-history-action.dead9994.js +3 -0
- package/dist/chunks/workbench-history-action.dead9994.js.map +1 -0
- package/dist/chunks/{workbench-pane.1cb1ad53.js → workbench-pane.7e85de42.js} +3 -3
- package/dist/chunks/{workbench-pane.1cb1ad53.js.map → workbench-pane.7e85de42.js.map} +1 -1
- package/dist/chunks/workbench-sidebar.01731e99.js +2 -0
- package/dist/chunks/workbench-sidebar.01731e99.js.map +1 -0
- package/dist/chunks/workbench-tree.e71a583f.js +3 -0
- package/dist/chunks/{workbench-tree.636b214f.js.map → workbench-tree.e71a583f.js.map} +1 -1
- package/dist/index.34986c58.js +2 -0
- package/dist/{index.b7e2292c.js.map → index.34986c58.js.map} +1 -1
- package/package.json +3 -3
- package/dist/chunks/1304.9f954ce8.js +0 -2
- package/dist/chunks/1304.9f954ce8.js.map +0 -1
- package/dist/chunks/2980.fa224d07.js +0 -2
- package/dist/chunks/2980.fa224d07.js.map +0 -1
- package/dist/chunks/3623.9c58c964.js +0 -2
- package/dist/chunks/3623.9c58c964.js.map +0 -1
- package/dist/chunks/9080.0b863051.js +0 -2
- package/dist/chunks/9080.0b863051.js.map +0 -1
- package/dist/chunks/chat-conversation.f2e17e56.js +0 -3
- package/dist/chunks/chat-conversation.f2e17e56.js.map +0 -1
- package/dist/chunks/chat-preview.fee87267.js +0 -3
- package/dist/chunks/chat-preview.fee87267.js.map +0 -1
- package/dist/chunks/contract-select.12a96d54.js +0 -3
- package/dist/chunks/contract-select.12a96d54.js.map +0 -1
- package/dist/chunks/generate-snippets-context-menu.b7dad236.js +0 -2
- package/dist/chunks/generate-snippets-context-menu.b7dad236.js.map +0 -1
- package/dist/chunks/get-config-by-data-for-ai.c97aaf83.js +0 -3
- package/dist/chunks/get-config-by-data-for-ai.c97aaf83.js.map +0 -1
- package/dist/chunks/get-data-deps.84dd8d22.js +0 -2
- package/dist/chunks/get-dependency-tree.8f7e6c4f.js +0 -2
- package/dist/chunks/get-dependency-tree.8f7e6c4f.js.map +0 -1
- package/dist/chunks/page-arch-node.57481be9.js.map +0 -1
- package/dist/chunks/parse-path.2c755de8.js +0 -2
- package/dist/chunks/parse-path.2c755de8.js.map +0 -1
- package/dist/chunks/pre-generated-config-preview.ec5b2d6d.js.map +0 -1
- package/dist/chunks/pre-generated-config.0f0b72a4.js +0 -2
- package/dist/chunks/pre-generated-config.0f0b72a4.js.map +0 -1
- package/dist/chunks/pre-generated-container.48467dfe.js +0 -2
- package/dist/chunks/pre-generated-container.48467dfe.js.map +0 -1
- package/dist/chunks/pre-generated-preview.8827e523.js +0 -3
- package/dist/chunks/pre-generated-preview.8827e523.js.map +0 -1
- package/dist/chunks/pre-generated-table-view.aebbc5c2.js +0 -2
- package/dist/chunks/pre-generated-table-view.aebbc5c2.js.map +0 -1
- package/dist/chunks/raw-data-preview.6f1b6613.js +0 -3
- package/dist/chunks/raw-data-preview.6f1b6613.js.map +0 -1
- package/dist/chunks/raw-metric-preview.4b3c31d2.js +0 -3
- package/dist/chunks/raw-metric-preview.4b3c31d2.js.map +0 -1
- package/dist/chunks/workbench-action-list.4957b2ff.js +0 -2
- package/dist/chunks/workbench-action-list.4957b2ff.js.map +0 -1
- package/dist/chunks/workbench-action.005f76b5.js +0 -3
- package/dist/chunks/workbench-action.005f76b5.js.map +0 -1
- package/dist/chunks/workbench-history-action.7137d177.js +0 -3
- package/dist/chunks/workbench-history-action.7137d177.js.map +0 -1
- package/dist/chunks/workbench-sidebar.d0076cb0.js +0 -2
- package/dist/chunks/workbench-sidebar.d0076cb0.js.map +0 -1
- package/dist/chunks/workbench-tree.636b214f.js +0 -3
- package/dist/index.b7e2292c.js +0 -2
- /package/dist/chunks/{5522.a511ccf6.js.LICENSE.txt → 5522.4d152e93.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{batch-update-raw-data-generated-view.d031fa7c.js.LICENSE.txt → batch-update-raw-data-generated-view.5bf6f18e.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{chat-conversation.f2e17e56.js.LICENSE.txt → chat-conversation.c9d27c2f.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{chat-preview.fee87267.js.LICENSE.txt → chat-preview.abac0331.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{contract-select.12a96d54.js.LICENSE.txt → contract-select.838a3175.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{get-config-by-data-for-ai.c97aaf83.js.LICENSE.txt → get-config-by-data-for-ai.276b2176.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{page-arch-node.57481be9.js.LICENSE.txt → page-arch-node.974674c0.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{pre-generated-preview.8827e523.js.LICENSE.txt → pre-generated-preview.e9ee3513.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{raw-data-preview.6f1b6613.js.LICENSE.txt → raw-data-preview.28b47947.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{raw-metric-preview.4b3c31d2.js.LICENSE.txt → raw-metric-preview.a1d28670.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-action.005f76b5.js.LICENSE.txt → workbench-action.5b993227.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-history-action.7137d177.js.LICENSE.txt → workbench-history-action.dead9994.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-pane.1cb1ad53.js.LICENSE.txt → workbench-pane.7e85de42.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-tree.636b214f.js.LICENSE.txt → workbench-tree.e71a583f.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/8734.21313ad6.js","mappings":"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","sources":["webpack:///./src/shared/workbench/WorkbenchTreeDndContext.ts","webpack:///./src/shared/workbench-mini-action-bar/WorkbenchMiniActionBar.tsx","webpack:///./src/shared/workbench/WorkbenchTree.tsx","webpack:///./src/utils/normalizeTreeNodeWithPath.ts","webpack:///./src/utils/setDragImage.ts","webpack:///./src/shared/workbench/WorkbenchTreeContext.ts","webpack:///./src/workbench-tree/WorkbenchTree.shadow.css","webpack:///./src/utils/deepMatch.ts","webpack:///./src/shared/workbench-mini-action-bar/WorkbenchMiniActionBar.shadow.css","webpack:///./src/shared/workbench/WorkbenchActionsContext.ts"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport { WorkbenchNodeData } from \"../../interfaces.js\";\n\nexport enum dragStatusEnum {\n inside = \"inside\",\n top = \"top\",\n bottom = \"bottom\",\n}\n\ninterface WorkbenchTreeDndContext {\n allow?: boolean;\n allowDragToRoot?: boolean;\n dragElement?: HTMLElement;\n dragOverElement?: HTMLElement;\n dragStatus?: dragStatusEnum;\n onDragStart?: (\n e: React.DragEvent<HTMLElement>,\n node: WorkbenchNodeData\n ) => void;\n onDragOver?: (e: React.DragEvent<HTMLElement>) => void;\n onDrop?: (e: React.DragEvent<HTMLElement>) => void;\n}\n\nexport const WorkbenchTreeDndContext = createContext<WorkbenchTreeDndContext>(\n {} as WorkbenchTreeDndContext\n);\n\nexport function useWorkbenchTreeDndContext(): WorkbenchTreeDndContext {\n return useContext(WorkbenchTreeDndContext);\n}\n","import React, { useCallback, useMemo } from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport classNames from \"classnames\";\nimport { checkIfByTransform } from \"@next-core/runtime\";\nimport { WorkbenchTreeAction, ActionClickDetail } from \"../../interfaces.js\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\n\nexport const WrappedGeneralIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\n \"eo-icon\"\n);\n\nexport interface WorkbenchSubActionBarProps {\n data?: unknown;\n className?: string;\n gap?: number;\n isFirst?: boolean;\n isLast?: boolean;\n actions?: WorkbenchTreeAction[];\n actionsHidden?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nexport function WorkbenchMiniActionBar({\n data,\n className,\n gap,\n isFirst,\n isLast,\n actions,\n actionsHidden,\n onActionClick,\n}: WorkbenchSubActionBarProps): React.ReactElement {\n const enabledActions = useMemo(\n () => actions?.filter((item) => checkIfByTransform(item, data)),\n [actions, data]\n );\n\n if (actionsHidden || !enabledActions?.length) {\n return null;\n }\n\n return (\n <div className={classNames(\"actionsBar\", className)} style={{ gap }}>\n {enabledActions.map((item) => (\n <WorkbenchSubAction\n key={item.action}\n action={item}\n data={data}\n isFirst={isFirst}\n isLast={isLast}\n onActionClick={onActionClick}\n />\n ))}\n </div>\n );\n}\n\ninterface WorkbenchSubActionProps {\n action: WorkbenchTreeAction;\n data?: unknown;\n isFirst?: boolean;\n isLast?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nfunction WorkbenchSubAction({\n action,\n data,\n isFirst,\n isLast,\n onActionClick,\n}: WorkbenchSubActionProps): React.ReactElement {\n const disabled =\n (isFirst && action.action === \"move-up\") ||\n (isLast && action.action === \"move-down\");\n\n const handleActionClick = useCallback(\n (event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n disabled ||\n onActionClick?.({\n action: action.action,\n data: data,\n });\n },\n [action.action, data, disabled, onActionClick]\n );\n\n const preventMouseEvent = useCallback((event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n }, []);\n\n return (\n <a\n className={classNames(\"action\", { disabled: disabled })}\n title={action.title}\n role=\"button\"\n onClick={handleActionClick}\n onContextMenu={preventMouseEvent}\n onMouseDown={preventMouseEvent}\n >\n <WrappedGeneralIcon {...action.icon} />\n </a>\n );\n}\n","import React, {\n type ChangeEvent,\n useCallback,\n useMemo,\n useState,\n type ReactElement,\n createContext,\n useContext,\n useEffect,\n} from \"react\";\n// import { Input } from \"antd\";\nimport { get, isMatch, pick } from \"lodash\";\nimport classNames from \"classnames\";\nimport { useWorkbenchTreeContext } from \"./WorkbenchTreeContext.js\";\nimport { useWorkbenchActionsContext } from \"./WorkbenchActionsContext.js\";\nimport {\n useWorkbenchTreeDndContext,\n dragStatusEnum,\n} from \"./WorkbenchTreeDndContext.js\";\nimport type { WorkbenchNodeData } from \"../../interfaces.js\";\nimport { WorkbenchMiniActionBar } from \"../workbench-mini-action-bar/WorkbenchMiniActionBar.js\";\nimport { checkIfOfComputed } from \"@next-core/runtime\";\nimport { WorkbenchTreeDndContext } from \"./WorkbenchTreeDndContext.js\";\nimport { setDragImage } from \"../../utils/setDragImage.js\";\nimport classnames from \"classnames\";\nimport {\n getNodesByPathTree,\n getNodeTreeByPath,\n} from \"../../utils/normalizeTreeNodeWithPath.js\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\n\nexport const WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nexport const WrappedGeneralIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\n \"eo-icon\"\n);\n\nconst treeLevelPadding = 10;\nconst borderStyle = \"0 0 0 1px #ba6d30\";\n\nexport interface dropEmitProps {\n nodes: WorkbenchNodeData[];\n curNode: WorkbenchNodeData;\n overNode: WorkbenchNodeData;\n status: dragStatusEnum;\n}\n\nexport interface WorkbenchTreeProps {\n nodes: WorkbenchNodeData[];\n placeholder?: string;\n searchPlaceholder?: string;\n noSearch?: boolean;\n isDrag?: boolean;\n allowDrag?: boolean;\n allowDragToRoot?: boolean;\n allowDragToInside?: boolean;\n dropEmit?: (detail: dropEmitProps) => void;\n}\n\nexport interface TreeListProps {\n nodes: WorkbenchNodeData[];\n level: number;\n}\n\nconst SearchingContext = createContext(false);\n\nexport function WorkbenchTree({\n nodes: originNode,\n placeholder,\n searchPlaceholder,\n isDrag,\n noSearch,\n allowDrag,\n allowDragToRoot,\n allowDragToInside,\n dropEmit,\n}: WorkbenchTreeProps): ReactElement {\n const [q, setQ] = useState<string>(\"\");\n const [isDragging, setIsDragging] = useState<boolean>(isDrag);\n const [curNode, setCurNode] = useState<WorkbenchNodeData>();\n const [curElement, setCurElement] = useState<HTMLElement>();\n const [overNode, setOverNode] = useState<WorkbenchNodeData>();\n const [overElement, setOverElement] = useState<HTMLElement>();\n const [overStatus, setOverStatus] = useState<dragStatusEnum>();\n const [isFocus, setIsFocus] = useState<boolean>();\n const { nodeKey, onBrickDrop, contextMenuFactory, matchNode } =\n useWorkbenchTreeContext();\n const nodes = useMemo(\n () => getNodeTreeByPath(originNode?.slice() ?? [], nodeKey),\n [originNode, nodeKey]\n );\n\n const handleSearchChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setQ(event.target.value);\n },\n []\n );\n\n const handleClearInput = () => {\n setQ(\"\");\n };\n\n const onContextMenu = useMemo(\n () => contextMenuFactory?.(),\n [contextMenuFactory]\n );\n\n const trimmedLowerQ = q?.trim().toLowerCase();\n const filteredNodes = useMemo(() => {\n if (noSearch || !trimmedLowerQ || !nodes) {\n return nodes;\n }\n const walk = (node: WorkbenchNodeData): boolean => {\n node.matchedSelf = matchNode(node, trimmedLowerQ);\n const hasMatchedChildren = node.children?.map(walk).includes(true);\n node.matched = node.matchedSelf || hasMatchedChildren;\n return node.matched;\n };\n nodes.forEach(walk);\n return nodes.slice();\n }, [noSearch, trimmedLowerQ, nodes, matchNode]);\n\n const findDragParent = (element: HTMLElement, equal = true): HTMLElement => {\n let node = element;\n while (node) {\n if (\n node.draggable &&\n (equal || node !== element) &&\n node.tagName !== \"A\"\n ) {\n return node;\n }\n node = node.parentElement;\n }\n };\n\n const findNode = (\n nodes: WorkbenchNodeData[],\n id: string,\n nodeKey: string,\n node: WorkbenchNodeData = null\n ): WorkbenchNodeData => {\n for (const item of nodes) {\n if ((item.data as Record<string, unknown>)[nodeKey] === id) {\n node = item;\n }\n if (item.children) {\n node = findNode(item.children, id, nodeKey, node);\n }\n if (node) break;\n }\n return node;\n };\n\n const getDragState = (\n e: React.DragEvent<HTMLElement>\n ): {\n element: HTMLElement;\n node: WorkbenchNodeData;\n status: dragStatusEnum;\n } => {\n const element = findDragParent(e.target as HTMLElement);\n const id = element.dataset.uid;\n if (element === curElement || id?.includes(\":\")) {\n return;\n }\n const { top, bottom } = element.getBoundingClientRect();\n let status: dragStatusEnum;\n const repair = allowDragToInside ? 5 : 10;\n if (e.clientY < top + repair) {\n status = dragStatusEnum.top;\n } else if (e.clientY > bottom - repair) {\n status = dragStatusEnum.bottom;\n } else {\n status = allowDragToInside ? dragStatusEnum.inside : overStatus;\n }\n\n return {\n element,\n node: findNode(nodes, id, nodeKey),\n status,\n };\n };\n\n const handleOnDragStart = (\n e: React.DragEvent,\n node: WorkbenchNodeData\n ): void => {\n e.stopPropagation();\n if (!allowDrag) return;\n const element = e.target as HTMLElement;\n if (element.dataset?.container) return;\n setIsDragging(true);\n setDragImage(e, element.innerText);\n setCurElement(element);\n setCurNode(node);\n };\n\n const handleOnDragOver = (e: React.DragEvent<HTMLElement>): void => {\n e.preventDefault();\n if (!isDragging) return;\n if ((e.target as HTMLElement).className === \"workbenchTree-placeholder-dom\")\n return;\n const dom = getDragState(e);\n if (dom && !curElement?.contains(dom.element)) {\n setOverElement(dom.element);\n setOverNode(dom.node);\n setOverStatus(dom.status);\n }\n };\n\n const handleOnDragEnd = (): void => {\n setCurElement(null);\n setOverElement(null);\n setOverNode(null);\n setOverStatus(null);\n setIsDragging(false);\n };\n\n const handleOnDrop = (e: React.DragEvent<HTMLElement>): void => {\n if (!isDragging) return;\n if (onBrickDrop) {\n let parentElement = overElement;\n if ([dragStatusEnum.top, dragStatusEnum.bottom].includes(overStatus)) {\n parentElement = findDragParent(parentElement, false);\n }\n onBrickDrop(e, {\n curElement,\n overElement,\n parentElement,\n overStatus,\n });\n } else {\n if (allowDragToRoot || Number(overElement.dataset.level) !== 1) {\n let realOverNode = overNode;\n const findRealNode = (\n nodes: WorkbenchNodeData[],\n key: string\n ): void => {\n for (let i = 0; i < nodes.length; i++) {\n if (nodes[i].key === key) {\n realOverNode = nodes[i];\n break;\n }\n if (nodes[i].children) {\n findRealNode(nodes[i].children, key);\n }\n }\n };\n const overUid = overElement.dataset.uid;\n findRealNode(nodes, overUid);\n const filterNodes = (\n nodes: WorkbenchNodeData[]\n ): WorkbenchNodeData[] => {\n let flag = false;\n const { container, uid } = overElement.dataset;\n const realOverKey = container ? realOverNode.originKey : uid;\n const newNodes = nodes.filter((node) => {\n if (node.children) {\n node.children = filterNodes(node.children);\n }\n if (node.key === realOverKey) flag = true;\n return node.key !== curNode.key;\n });\n if (flag) {\n newNodes.splice(\n newNodes.findIndex((item) => item.key === realOverKey) +\n (overStatus === \"bottom\" ? 1 : 0),\n 0,\n curNode\n );\n }\n return newNodes;\n };\n\n const normalizeNode = getNodesByPathTree(nodes);\n const realCurNode = curNode.isContainer\n ? normalizeNode.find((item) => item.key === curNode.originKey)\n : curNode;\n const curNodeData = realCurNode.data as Record<string, unknown>;\n curNodeData.path = realOverNode.parentPath || realOverNode.path;\n\n dropEmit({\n nodes: filterNodes(normalizeNode),\n curNode: realCurNode,\n overNode: realOverNode,\n status: overStatus,\n });\n }\n }\n handleOnDragEnd();\n };\n\n useEffect(() => {\n setIsDragging(isDrag);\n }, [isDrag]);\n\n useEffect(() => {\n window.addEventListener(\"dragend\", handleOnDragEnd);\n return () => {\n window.removeEventListener(\"dragend\", handleOnDragEnd);\n };\n }, []);\n\n return (\n <div\n style={{\n height: \"100%\",\n }}\n className=\"tree-wrapper\"\n onContextMenu={onContextMenu}\n >\n {nodes?.length ? (\n <div>\n {!noSearch && (\n <div\n className=\"searchBox\"\n onContextMenu={(e) => e.stopPropagation()}\n >\n <span\n className={classNames(\"filter-input-wrapper\", {\n focus: isFocus,\n })}\n >\n <span className=\"prefix\">\n <WrappedGeneralIcon\n icon=\"search\"\n lib=\"antd\"\n theme=\"outlined\"\n />\n </span>\n <input\n value={q}\n onChange={handleSearchChange}\n onFocus={() => setIsFocus(true)}\n onBlur={() => setIsFocus(false)}\n autoComplete=\"off\"\n placeholder={searchPlaceholder}\n />\n <span className=\"suffix\">\n {q ? (\n <WrappedGeneralIcon\n className=\"clear-button\"\n icon=\"close-circle\"\n lib=\"antd\"\n theme=\"filled\"\n onClick={handleClearInput}\n />\n ) : null}\n </span>\n </span>\n </div>\n )}\n <SearchingContext.Provider value={!!q}>\n <WorkbenchTreeDndContext.Provider\n value={{\n allow: allowDrag,\n allowDragToRoot: allowDragToRoot,\n dragElement: curElement,\n dragOverElement: overElement,\n dragStatus: overStatus,\n onDragStart: handleOnDragStart,\n }}\n >\n <div\n className={classnames({\n hightlight: isDrag,\n })}\n onDragOver={handleOnDragOver}\n onDrop={handleOnDrop}\n >\n <TreeList nodes={filteredNodes} level={1} />\n </div>\n </WorkbenchTreeDndContext.Provider>\n </SearchingContext.Provider>\n </div>\n ) : (\n <div className=\"placeholder\">{placeholder}</div>\n )}\n </div>\n );\n}\n\nfunction TreeList({ nodes, level }: TreeListProps): ReactElement {\n const lastIndex = nodes.length - 1;\n return (\n <ul className=\"tree\">\n {nodes\n .filter((item) => checkIfOfComputed(item))\n .map((node, index) => (\n <TreeNode\n key={node.key}\n node={node}\n level={level}\n isFirst={index === 0}\n isLast={index === lastIndex}\n />\n ))}\n </ul>\n );\n}\n\nfunction PlaceholderDOM({\n style,\n}: {\n style: React.CSSProperties;\n}): React.ReactElement {\n const { dragStatus } = useWorkbenchTreeDndContext();\n const styles: React.CSSProperties = {\n height: 22,\n border: \"1px dashed goldenrod\",\n opacity: dragStatus === dragStatusEnum.inside ? \"0\" : \"1\",\n ...style,\n };\n\n return <li className=\"workbenchTree-placeholder-dom\" style={styles} />;\n}\nexport interface TreeNodeProps {\n node: WorkbenchNodeData;\n level: number;\n isFirst?: boolean;\n isLast?: boolean;\n skipNotify?: boolean;\n}\n\nfunction TreeNode({\n node,\n level,\n isFirst,\n isLast,\n}: TreeNodeProps): ReactElement {\n const isLeaf = !node.children?.length;\n const isContainer = node.isContainer;\n const {\n hoverKey,\n activeKey,\n basePaddingLeft,\n showMatchedNodeOnly,\n fixedActionsFor,\n collapsible,\n collapsedNodes,\n nodeKey,\n clickFactory,\n mouseEnterFactory,\n mouseLeaveFactory,\n contextMenuFactory,\n onNodeToggle,\n getCollapsedId,\n skipNotify,\n } = useWorkbenchTreeContext();\n const {\n allow,\n allowDragToRoot,\n onDragStart,\n dragElement,\n dragOverElement,\n dragStatus,\n } = useWorkbenchTreeDndContext();\n\n const { actions, actionsHidden, onActionClick } =\n useWorkbenchActionsContext();\n\n const nodePaddingLeft = level * treeLevelPadding + basePaddingLeft - 2;\n const searching = useContext(SearchingContext);\n const [cacheDragStatus, setCacheDragStatus] = useState(null);\n const [collapseClicked, setCollapseClicked] = useState(false);\n const [collapsed, setCollapsed] = useState(\n collapsedNodes?.includes(getCollapsedId?.(node)) ?? false\n );\n\n const onMouseEnter = useMemo(\n () => mouseEnterFactory?.(node),\n [mouseEnterFactory, node]\n );\n const onMouseLeave = useMemo(\n () => mouseLeaveFactory?.(node),\n [mouseLeaveFactory, node]\n );\n\n const onContextMenu = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n contextMenuFactory?.(node)?.(e);\n },\n [contextMenuFactory, node]\n );\n\n const isActive = activeKey && node.key === activeKey;\n\n const nodeLabelCallback = useMemo(\n () =>\n isActive\n ? (element: HTMLElement) => {\n element?.scrollIntoView?.({\n block: \"center\",\n inline: \"center\",\n // behavior: \"smooth\",\n });\n }\n : null,\n // Only for initial active node.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n );\n\n const nodeUid = useMemo(() => {\n if (isContainer) {\n return node.key;\n }\n if (node.data) {\n const getNodeUid = (data: Record<string, any>): number | string => {\n return data.type === \"mount-point\"\n ? data.parent[nodeKey] || `${data.parent.$$uid}:${data.mountPoint}`\n : data[nodeKey] || data.$$uid;\n };\n return getNodeUid(node.data);\n }\n }, [nodeKey, node, isContainer]);\n\n useEffect(() => {\n if (dragStatus === dragStatusEnum.inside) {\n return;\n }\n if ([dragStatusEnum.top, dragStatusEnum.bottom].includes(dragStatus)) {\n setCacheDragStatus(dragStatus);\n }\n }, [dragStatus]);\n\n const isDragElement = useMemo(() => {\n if (dragElement) {\n const dragUid = dragElement.dataset.uid;\n return dragUid === String(nodeUid);\n }\n return false;\n }, [dragElement, nodeUid]);\n\n const isDragActive = useMemo(() => {\n if (dragOverElement) {\n const dragUid = dragOverElement.dataset.uid;\n return dragUid === String(nodeUid);\n }\n return false;\n }, [dragOverElement, nodeUid]);\n\n const nodeStyle = useMemo((): React.CSSProperties => {\n const commomStyle: React.CSSProperties = {};\n let style: React.CSSProperties = {\n opacity: isDragElement ? 0.2 : 1,\n };\n if (isDragActive) {\n if (dragStatus === dragStatusEnum.inside) {\n style = {\n boxShadow: borderStyle,\n background: \"rgba(255, 255, 255, 0.1)\",\n };\n }\n }\n return Object.assign(commomStyle, style);\n }, [isDragActive, isDragElement, dragStatus]);\n\n const handleCollapse = useCallback((event: React.MouseEvent | MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n setCollapseClicked(true);\n setCollapsed((prev) => !prev);\n }, []);\n\n const preventMouseEvent = useCallback((event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n }, []);\n\n const onLinkClick = useCallback(\n (e: MouseEvent | React.MouseEvent) => {\n if (isContainer) {\n handleCollapse(e);\n } else {\n return clickFactory?.(node)?.();\n }\n },\n [clickFactory, handleCollapse, isContainer, node]\n );\n\n useEffect(() => {\n if (collapseClicked) {\n onNodeToggle?.(getCollapsedId?.(node), collapsed);\n }\n }, [collapseClicked, collapsed, getCollapsedId, node, onNodeToggle]);\n\n // Disallow collapse leaf nodes, or any nodes when searching.\n const allowCollapse = collapsible && !isLeaf && !searching;\n\n if (searching && showMatchedNodeOnly && !node.matched) {\n return null;\n }\n\n return (\n <>\n {isDragActive &&\n (allowDragToRoot || level !== 1) &&\n cacheDragStatus === dragStatusEnum.top && (\n <PlaceholderDOM\n style={{\n marginLeft: nodePaddingLeft,\n }}\n />\n )}\n <li\n draggable={allow}\n onDragStart={(e) => onDragStart(e, node)}\n data-uid={nodeUid}\n data-level={level}\n style={nodeStyle}\n {...(isContainer\n ? {\n \"data-container\": isContainer,\n }\n : {})}\n >\n <WrappedLink\n className=\"nodeLabelLink\"\n tabIndex={0}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onContextMenu={onContextMenu}\n // noEmptyHref={true}\n onClick={onLinkClick}\n {...(skipNotify\n ? {\n // TODO: link should support\n url: {\n pathname: get(node.link, \"url\", \"href\"),\n state: {\n notify: false,\n },\n } as any,\n }\n : { ...pick(node.link, [\"url\", \"href\"]) })}\n >\n <span\n className={classNames(\"nodeLabelRow\", {\n active: isActive,\n hover: hoverKey && node.key === hoverKey,\n matched: searching && node.matchedSelf && !showMatchedNodeOnly,\n fixedActions:\n fixedActionsFor &&\n []\n .concat(fixedActionsFor)\n .some((source) =>\n isMatch(node.data as Record<string, unknown>, source)\n ),\n collapsed: allowCollapse && collapsed,\n collapsible: allowCollapse,\n })}\n >\n <span\n className={classNames(\"nodeLabel\", {\n unreachable: node.unreachable,\n })}\n style={{\n paddingLeft: nodePaddingLeft,\n color: node.labelColor,\n }}\n ref={nodeLabelCallback}\n >\n <span className=\"nodeIconWrapper\">\n {allowCollapse && (\n <span\n className=\"collapseIcon\"\n onClick={handleCollapse}\n onMouseDown={preventMouseEvent}\n title={collapsed ? \"Expand\" : \"Collapse\"}\n role=\"button\"\n >\n <WrappedGeneralIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon={collapsed ? \"right\" : \"down\"}\n />\n </span>\n )}\n <span className=\"nodeIcon\">\n <WrappedGeneralIcon\n {...node.icon}\n style={{\n fontSize: (node.icon as unknown as Record<string, string>)\n ?.imgSrc\n ? 14\n : null,\n color: node.icon?.color,\n }}\n />\n </span>\n </span>\n <span className=\"nodeName\">\n {node.labelPrefix && (\n <span style={node.labelPrefix.style}>\n {node.labelPrefix.text}\n </span>\n )}\n {/* {isTransformName\n ? smartDisplayForEvaluableString(node.name)\n : node.name} */}\n {node.name}\n </span>\n </span>\n <WorkbenchMiniActionBar\n className=\"nodeActionsBar\"\n data={node.data}\n isFirst={isFirst}\n isLast={isLast}\n actions={actions}\n onActionClick={onActionClick}\n actionsHidden={actionsHidden}\n />\n {node.badge && (\n <span className=\"badge\">\n <WrappedGeneralIcon\n {...node.badge}\n style={{ color: node.badge.color }}\n />\n </span>\n )}\n </span>\n </WrappedLink>\n {isLeaf || <TreeList nodes={node.children} level={level + 1} />}\n </li>\n {isDragActive &&\n (allowDragToRoot || level !== 1) &&\n cacheDragStatus === dragStatusEnum.bottom && (\n <PlaceholderDOM\n style={{\n marginLeft: nodePaddingLeft,\n }}\n />\n )}\n </>\n );\n}\n","import _ from \"lodash\";\nimport { WorkbenchNodeData } from \"../interfaces.js\";\n\nexport function getNodeTreeByPath(\n nodes: WorkbenchNodeData[],\n nodeKey: string\n): Array<WorkbenchNodeData> {\n const createNodeByPath = (\n pathList: string[],\n nodes: Array<WorkbenchNodeData>,\n node: WorkbenchNodeData,\n index?: number\n ): void => {\n const path = pathList.shift();\n if (path) {\n pathList.length > 0\n ? pathList.splice(0, 1, `${path}/${pathList[0]}`)\n : pathList;\n const folder = nodes.find(\n (node) => node && node.key === path && node.isContainer\n );\n if (folder) {\n nodes[index] = null;\n createNodeByPath(pathList, folder.children, node);\n } else {\n const newPathList = path.split(\"/\");\n const newNode = {\n name: newPathList.pop(),\n key: path,\n parentPath: newPathList ? newPathList.join(\"/\") : newPathList,\n originKey: node.key,\n data: {\n [nodeKey]: path,\n isContainer: true,\n },\n children: [],\n icon: {\n icon: \"folder\",\n lib: \"antd\",\n theme: \"filled\",\n color: \"orange\",\n },\n isContainer: true,\n } as WorkbenchNodeData;\n if (typeof index === \"number\") {\n nodes[index] = newNode;\n } else {\n nodes.push(newNode);\n }\n createNodeByPath(pathList, newNode.children, node);\n }\n } else {\n nodes.push(node);\n }\n };\n\n nodes.forEach((node, index) => {\n if (node.path) {\n const pathList = node.path.split(\"/\").filter(Boolean);\n createNodeByPath(pathList, nodes, node, index);\n }\n });\n return nodes.filter(Boolean);\n}\n\nexport function getNodesByPathTree(\n nodes: Array<WorkbenchNodeData>\n): Array<WorkbenchNodeData> {\n const result: Array<WorkbenchNodeData> = [];\n const walk = (nodes: Array<WorkbenchNodeData>): void => {\n nodes.forEach((item) => {\n if (item.isContainer) {\n walk(item.children);\n } else {\n result.push(_.omit(item, [\"path\", \"icon\"]) as WorkbenchNodeData);\n }\n });\n };\n walk(nodes);\n return result;\n}\n","export function setDragImage(\n e: DragEvent | React.DragEvent,\n title: string\n): void {\n const canvas = document.createElement(\"canvas\");\n document.body.append(canvas);\n const context = canvas.getContext(\"2d\");\n canvas.width = context.measureText(title).width + 60;\n canvas.height = 20;\n canvas.style.position = \"absolute\";\n canvas.style.left = \"-100%\";\n canvas.style.zIndex = \"-100\";\n\n context.fillStyle = \"#333333\";\n context.fillRect(0, 0, canvas.width, canvas.height);\n\n context.fillStyle = \"#999999\";\n context.font = \"bold 14px Arial\";\n context.fillText(title, 20, 15);\n\n e.dataTransfer.setDragImage(canvas, 0, 0);\n}\n","import { createContext, useContext } from \"react\";\nimport type { WorkbenchNodeData } from \"../../interfaces.js\";\nimport { dragStatusEnum } from \"./WorkbenchTreeDndContext.js\";\n\nexport interface dropOptions {\n curElement: HTMLElement;\n overElement: HTMLElement;\n parentElement: HTMLElement;\n overStatus: dragStatusEnum;\n}\n\nexport interface ContextOfWorkbenchTree {\n hoverKey?: string | number;\n activeKey?: string | number;\n basePaddingLeft?: number;\n showMatchedNodeOnly?: boolean;\n isTransformName?: boolean;\n fixedActionsFor?: Record<string, unknown> | Record<string, unknown>[];\n collapsible?: boolean;\n collapsedNodes?: (string | number)[];\n nodeKey?: string;\n clickFactory?(node: WorkbenchNodeData): () => void;\n mouseEnterFactory?(node: WorkbenchNodeData): () => void;\n mouseLeaveFactory?(node: WorkbenchNodeData): () => void;\n contextMenuFactory?(\n node?: WorkbenchNodeData\n ): (event: React.MouseEvent) => void;\n matchNode?(node: WorkbenchNodeData, lowerTrimmedQuery?: string): boolean;\n onNodeToggle?(nodeId: string | number, collapsed: boolean): void;\n getCollapsedId?(node: WorkbenchNodeData): string | number;\n onBrickDrop?(e: React.DragEvent<HTMLElement>, options: dropOptions): void;\n skipNotify?: boolean;\n}\n\nexport const WorkbenchTreeContext = createContext<ContextOfWorkbenchTree>({});\n\nexport function useWorkbenchTreeContext(): ContextOfWorkbenchTree {\n return useContext(WorkbenchTreeContext);\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host,\n:host-context(html[data-override-theme=\"light\"]){--search-box-background:#fff;--node-color:#595959;--node-color-focus:#595959;--node-background-active:#e0eeff;--node-background-focus:#e0eeff;--node-icon-background-hover:#fff}:host-context(html[data-theme=\"dark-v2\"]),\n:host-context(html[data-override-theme=\"dark-v2\"]){--search-box-background:#181818;--node-color:#c5c5c5;--node-color-focus:#fff;--node-background-active:rgba(255,255,255,0.08);--node-background-focus:#1a7aff;--node-icon-background-hover:rgba(90,93,94,0.31)}.searchBox{position:sticky;top:0;background-color:var(--search-box-background);padding:5px 10px 10px;z-index:1}.searchBox .filter-input-wrapper{background-color:var(--search-box-background);border:1px solid rgba(255,255,255,0.2);position:relative;width:100%;min-width:0;padding:2px 7px;color:var(--antd-input-color);font-size:14px;line-height:1.5715;display:inline-flex;border-radius:3px;transition:all 0.3s;box-sizing:border-box}.searchBox .filter-input-wrapper.focus{background-color:var(--search-box-background);border:1px solid rgba(255,255,255,0.2);border-right-width:1px!important;outline:0;box-shadow:0 0 0 2px rgba(0,113,235,0.2)}.searchBox .filter-input-wrapper input{text-overflow:ellipsis;border:none;outline:none;border-radius:3px;background-color:var(--search-box-background);box-sizing:border-box;margin:0;padding:0;color:var(--antd-text-color);font-variant:tabular-nums;list-style:none;font-feature-settings:\"tnum\";position:relative;display:inline-block;width:100%;min-width:0;color:var(--antd-input-color);font-size:14px;line-height:1.5715;background-image:none;transition:all 0.3s}.prefix{margin-right:4px}.suffix{margin-left:4px}.searchBox .prefix,\n.searchBox .suffix{display:flex;flex:none;align-items:center}.clear-button{cursor:pointer}.tree{list-style:none;margin:0;padding:0}.placeholder{color:var(--antd-input-placeholder-color);padding:0 15px}.nodeLabelLink{display:block}.nodeLabelLink::part(link){display:flex}.nodeLabelRow{display:flex;cursor:pointer;height:22px;padding-right:10px;flex:1;min-width:0}.nodeLabelRow:hover,\n.nodeLabelRow.hover{background-color:rgba(255,255,255,0.12)}.nodeLabelLink:focus .nodeLabelRow.active{background-color:var(--node-background-focus)}.nodeLabel{display:flex;align-items:center;min-width:0;flex:1}.unreachable{opacity:0.3}.nodeAction,\n.nodeAction:hover,\n.nodeLabelRow .nodeLabel{color:var(--node-color)}.nodeLabelLink:focus .nodeLabel{color:var(--node-color-focus)}.nodeLabelRow.matched .nodeLabel{color:var(--palette-orange-6)}.nodeLabelRow.active{background-color:var(--node-background-active)}.nodeIconWrapper{display:flex;width:24px;flex-shrink:0}.nodeIcon,\n.collapseIcon{display:flex;justify-content:center;align-items:center;width:20px;height:20px;border-radius:5px;font-size:13px}.collapseIcon{display:none}.nodeLabelRow.collapsed .nodeIcon,\n.nodeLabelRow.collapsible .nodeIconWrapper:hover .nodeIcon{display:none}.nodeLabelRow.collapsed .collapseIcon,\n.nodeLabelRow.collapsible .nodeIconWrapper:hover .collapseIcon{display:flex}.nodeLabelRow.collapsible .nodeIcon:hover,\n.nodeLabelRow.collapsible .collapseIcon:hover{background-color:var(--node-icon-background-hover)}.nodeName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nodeLabelRow:not(:hover):not(.fixedActions) .nodeActionsBar{display:none}.badge{margin:0 3px}.collapsed + .tree{display:none}.hightlight{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:#fcd93f}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","export function deepFilter<T>(data: Array<T>, q: string): Array<T> {\n const trimmedQuery = q?.trim();\n if (!trimmedQuery) {\n return data.slice();\n }\n return data.filter((item) => deepMatch(item, trimmedQuery.toLowerCase()));\n}\n\nexport function deepMatch(data: unknown, lowerTrimmedQuery: string): boolean {\n switch (typeof data) {\n case \"string\":\n return data.toLowerCase().includes(lowerTrimmedQuery);\n case \"boolean\":\n case \"number\":\n return String(data).includes(lowerTrimmedQuery);\n case \"object\":\n return data === null\n ? \"null\".includes(lowerTrimmedQuery)\n : (Array.isArray(data) ? data : Object.entries(data).flat()).some(\n (item) => deepMatch(item, lowerTrimmedQuery)\n );\n default:\n return false;\n }\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.actionsBar{display:flex;align-items:center;padding:0 3px}.action{display:flex;justify-content:center;align-items:center;width:20px;height:20px;border-radius:5px}.action:hover{color:#fff;background-color:rgba(90,93,94,0.31)}.action{color:#c5c5c5}.disabled,\n.disabled:hover{color:var(--color-disabled-text);cursor:not-allowed;background-color:initial}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { createContext, useContext } from \"react\";\nimport type {\n ActionClickDetail,\n WorkbenchTreeAction,\n} from \"../../interfaces.js\";\n\nexport interface ContextOfWorkbenchActions {\n actions?: WorkbenchTreeAction[];\n actionsHidden?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nexport const WorkbenchActionsContext = createContext<ContextOfWorkbenchActions>(\n {}\n);\n\nexport function useWorkbenchActionsContext(): ContextOfWorkbenchActions {\n return useContext(WorkbenchActionsContext);\n}\n"],"names":["dragStatusEnum","WorkbenchTreeDndContext","createContext","useWorkbenchTreeDndContext","useContext","WrappedGeneralIcon","wrapBrick","WorkbenchMiniActionBar","_ref","data","className","gap","isFirst","isLast","actions","actionsHidden","onActionClick","enabledActions","useMemo","filter","item","checkIfByTransform","length","React","classNames","style","map","WorkbenchSubAction","key","action","_ref2","disabled","handleActionClick","useCallback","event","preventDefault","stopPropagation","preventMouseEvent","title","role","onClick","onContextMenu","onMouseDown","icon","WrappedLink","treeLevelPadding","borderStyle","SearchingContext","WorkbenchTree","nodes","originNode","placeholder","searchPlaceholder","isDrag","noSearch","allowDrag","allowDragToRoot","allowDragToInside","dropEmit","q","setQ","useState","isDragging","setIsDragging","curNode","setCurNode","curElement","setCurElement","overNode","setOverNode","overElement","setOverElement","overStatus","setOverStatus","isFocus","setIsFocus","nodeKey","onBrickDrop","contextMenuFactory","matchNode","useWorkbenchTreeContext","_originNode$slice","createNodeByPath","pathList","node","index","path","shift","splice","folder","find","isContainer","children","newPathList","split","newNode","name","pop","parentPath","join","originKey","lib","theme","color","push","forEach","Boolean","getNodeTreeByPath","slice","handleSearchChange","target","value","trimmedLowerQ","trim","toLowerCase","filteredNodes","walk","_node$children","matchedSelf","hasMatchedChildren","includes","matched","findDragParent","element","equal","arguments","undefined","draggable","tagName","parentElement","findNode","id","handleOnDragEnd","useEffect","window","addEventListener","removeEventListener","height","e","focus","onChange","onFocus","onBlur","autoComplete","handleClearInput","Provider","allow","dragElement","dragOverElement","dragStatus","onDragStart","handleOnDragStart","_element$dataset","dataset","container","canvas","document","createElement","body","append","context","getContext","width","measureText","position","left","zIndex","fillStyle","fillRect","font","fillText","dataTransfer","setDragImage","innerText","classnames","hightlight","onDragOver","dom","uid","top","bottom","getBoundingClientRect","status","repair","clientY","inside","getDragState","contains","onDrop","Number","level","realOverNode","findRealNode","i","overUid","filterNodes","flag","realOverKey","newNodes","findIndex","normalizeNode","result","_","getNodesByPathTree","realCurNode","TreeList","lastIndex","checkIfOfComputed","TreeNode","PlaceholderDOM","_ref3","styles","border","opacity","_ref4","_node$children2","_collapsedNodes$inclu","_node$icon","_node$icon2","isLeaf","hoverKey","activeKey","basePaddingLeft","showMatchedNodeOnly","fixedActionsFor","collapsible","collapsedNodes","clickFactory","mouseEnterFactory","mouseLeaveFactory","onNodeToggle","getCollapsedId","skipNotify","useWorkbenchActionsContext","nodePaddingLeft","searching","cacheDragStatus","setCacheDragStatus","collapseClicked","setCollapseClicked","collapsed","setCollapsed","onMouseEnter","onMouseLeave","_contextMenuFactory","isActive","nodeLabelCallback","_element$scrollIntoVi","scrollIntoView","call","block","inline","nodeUid","type","parent","$$uid","mountPoint","isDragElement","String","isDragActive","nodeStyle","boxShadow","background","Object","assign","handleCollapse","prev","onLinkClick","_clickFactory","allowCollapse","marginLeft","_extends","tabIndex","url","pathname","get","link","state","notify","pick","active","hover","fixedActions","concat","some","source","isMatch","unreachable","paddingLeft","labelColor","ref","fontSize","imgSrc","labelPrefix","text","badge","WorkbenchTreeContext","___CSS_LOADER_EXPORT___","module","toString","deepMatch","lowerTrimmedQuery","Array","isArray","entries","flat","WorkbenchActionsContext"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(globalThis.webpackChunk_next_bricks_visual_builder=globalThis.webpackChunk_next_bricks_visual_builder||[]).push([[9057],{8514:(u,A,F)=>{F.d(A,{_:()=>E});const D=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10140}-\u{10174}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{10300}-\u{1031F}\u{1032D}-\u{1034A}\u{10350}-\u{10375}\u{10380}-\u{1039D}\u{103A0}-\u{103C3}\u{103C8}-\u{103CF}\u{103D1}-\u{103D5}\u{10400}-\u{1049D}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{10570}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{105C0}-\u{105F3}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10860}-\u{10876}\u{10880}-\u{1089E}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{10900}-\u{10915}\u{10920}-\u{10939}\u{10980}-\u{109B7}\u{109BE}\u{109BF}\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A60}-\u{10A7C}\u{10A80}-\u{10A9C}\u{10AC0}-\u{10AC7}\u{10AC9}-\u{10AE4}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B60}-\u{10B72}\u{10B80}-\u{10B91}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10D00}-\u{10D23}\u{10D4A}-\u{10D65}\u{10D6F}-\u{10D85}\u{10E80}-\u{10EA9}\u{10EB0}\u{10EB1}\u{10EC2}-\u{10EC4}\u{10F00}-\u{10F1C}\u{10F27}\u{10F30}-\u{10F45}\u{10F70}-\u{10F81}\u{10FB0}-\u{10FC4}\u{10FE0}-\u{10FF6}\u{11003}-\u{11037}\u{11071}\u{11072}\u{11075}\u{11083}-\u{110AF}\u{110D0}-\u{110E8}\u{11103}-\u{11126}\u{11144}\u{11147}\u{11150}-\u{11172}\u{11176}\u{11183}-\u{111B2}\u{111C1}-\u{111C4}\u{111DA}\u{111DC}\u{11200}-\u{11211}\u{11213}-\u{1122B}\u{1123F}\u{11240}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A8}\u{112B0}-\u{112DE}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133D}\u{11350}\u{1135D}-\u{11361}\u{11380}-\u{11389}\u{1138B}\u{1138E}\u{11390}-\u{113B5}\u{113B7}\u{113D1}\u{113D3}\u{11400}-\u{11434}\u{11447}-\u{1144A}\u{1145F}-\u{11461}\u{11480}-\u{114AF}\u{114C4}\u{114C5}\u{114C7}\u{11580}-\u{115AE}\u{115D8}-\u{115DB}\u{11600}-\u{1162F}\u{11644}\u{11680}-\u{116AA}\u{116B8}\u{11700}-\u{1171A}\u{11740}-\u{11746}\u{11800}-\u{1182B}\u{118A0}-\u{118DF}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{1192F}\u{1193F}\u{11941}\u{119A0}-\u{119A7}\u{119AA}-\u{119D0}\u{119E1}\u{119E3}\u{11A00}\u{11A0B}-\u{11A32}\u{11A3A}\u{11A50}\u{11A5C}-\u{11A89}\u{11A9D}\u{11AB0}-\u{11AF8}\u{11BC0}-\u{11BE0}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C2E}\u{11C40}\u{11C72}-\u{11C8F}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D30}\u{11D46}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D89}\u{11D98}\u{11EE0}-\u{11EF2}\u{11F02}\u{11F04}-\u{11F10}\u{11F12}-\u{11F33}\u{11FB0}\u{12000}-\u{12399}\u{12400}-\u{1246E}\u{12480}-\u{12543}\u{12F90}-\u{12FF0}\u{13000}-\u{1342F}\u{13441}-\u{13446}\u{13460}-\u{143FA}\u{14400}-\u{14646}\u{16100}-\u{1611D}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A70}-\u{16ABE}\u{16AD0}-\u{16AED}\u{16B00}-\u{16B2F}\u{16B40}-\u{16B43}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16D40}-\u{16D6C}\u{16E40}-\u{16E7F}\u{16F00}-\u{16F4A}\u{16F50}\u{16F93}-\u{16F9F}\u{16FE0}\u{16FE1}\u{16FE3}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18CFF}-\u{18D08}\u{1AFF0}-\u{1AFF3}\u{1AFF5}-\u{1AFFB}\u{1AFFD}\u{1AFFE}\u{1B000}-\u{1B122}\u{1B132}\u{1B150}-\u{1B152}\u{1B155}\u{1B164}-\u{1B167}\u{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D6C0}\u{1D6C2}-\u{1D6DA}\u{1D6DC}-\u{1D6FA}\u{1D6FC}-\u{1D714}\u{1D716}-\u{1D734}\u{1D736}-\u{1D74E}\u{1D750}-\u{1D76E}\u{1D770}-\u{1D788}\u{1D78A}-\u{1D7A8}\u{1D7AA}-\u{1D7C2}\u{1D7C4}-\u{1D7CB}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E030}-\u{1E06D}\u{1E100}-\u{1E12C}\u{1E137}-\u{1E13D}\u{1E14E}\u{1E290}-\u{1E2AD}\u{1E2C0}-\u{1E2EB}\u{1E4D0}-\u{1E4EB}\u{1E5D0}-\u{1E5ED}\u{1E5F0}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1E800}-\u{1E8C4}\u{1E900}-\u{1E943}\u{1E94B}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}\u{20000}-\u{2A6DF}\u{2A700}-\u{2B739}\u{2B740}-\u{2B81D}\u{2B820}-\u{2CEA1}\u{2CEB0}-\u{2EBE0}\u{2EBF0}-\u{2EE5D}\u{2F800}-\u{2FA1D}\u{30000}-\u{3134A}\u{31350}-\u{323AF}][\$0-9A-Z_a-z\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u07FD\u0800-\u082D\u0840-\u085B\u0860-\u086A\u0870-\u0887\u0889-\u088E\u0897-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u09FE\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3C-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C5D\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECE\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1715\u171F-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B4C\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CD0-\u1CD2\u1CD4-\u1CFA\u1D00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA827\uA82C\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF65-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10140}-\u{10174}\u{101FD}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{102E0}\u{10300}-\u{1031F}\u{1032D}-\u{1034A}\u{10350}-\u{1037A}\u{10380}-\u{1039D}\u{103A0}-\u{103C3}\u{103C8}-\u{103CF}\u{103D1}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{10570}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{105C0}-\u{105F3}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10860}-\u{10876}\u{10880}-\u{1089E}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{10900}-\u{10915}\u{10920}-\u{10939}\u{10980}-\u{109B7}\u{109BE}\u{109BF}\u{10A00}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A38}-\u{10A3A}\u{10A3F}\u{10A60}-\u{10A7C}\u{10A80}-\u{10A9C}\u{10AC0}-\u{10AC7}\u{10AC9}-\u{10AE6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B60}-\u{10B72}\u{10B80}-\u{10B91}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10D00}-\u{10D27}\u{10D30}-\u{10D39}\u{10D40}-\u{10D65}\u{10D69}-\u{10D6D}\u{10D6F}-\u{10D85}\u{10E80}-\u{10EA9}\u{10EAB}\u{10EAC}\u{10EB0}\u{10EB1}\u{10EC2}-\u{10EC4}\u{10EFC}-\u{10F1C}\u{10F27}\u{10F30}-\u{10F50}\u{10F70}-\u{10F85}\u{10FB0}-\u{10FC4}\u{10FE0}-\u{10FF6}\u{11000}-\u{11046}\u{11066}-\u{11075}\u{1107F}-\u{110BA}\u{110C2}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11100}-\u{11134}\u{11136}-\u{1113F}\u{11144}-\u{11147}\u{11150}-\u{11173}\u{11176}\u{11180}-\u{111C4}\u{111C9}-\u{111CC}\u{111CE}-\u{111DA}\u{111DC}\u{11200}-\u{11211}\u{11213}-\u{11237}\u{1123E}-\u{11241}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A8}\u{112B0}-\u{112EA}\u{112F0}-\u{112F9}\u{11300}-\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133B}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11380}-\u{11389}\u{1138B}\u{1138E}\u{11390}-\u{113B5}\u{113B7}-\u{113C0}\u{113C2}\u{113C5}\u{113C7}-\u{113CA}\u{113CC}-\u{113D3}\u{113E1}\u{113E2}\u{11400}-\u{1144A}\u{11450}-\u{11459}\u{1145E}-\u{11461}\u{11480}-\u{114C5}\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B5}\u{115B8}-\u{115C0}\u{115D8}-\u{115DD}\u{11600}-\u{11640}\u{11644}\u{11650}-\u{11659}\u{11680}-\u{116B8}\u{116C0}-\u{116C9}\u{116D0}-\u{116E3}\u{11700}-\u{1171A}\u{1171D}-\u{1172B}\u{11730}-\u{11739}\u{11740}-\u{11746}\u{11800}-\u{1183A}\u{118A0}-\u{118E9}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193B}-\u{11943}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D7}\u{119DA}-\u{119E1}\u{119E3}\u{119E4}\u{11A00}-\u{11A3E}\u{11A47}\u{11A50}-\u{11A99}\u{11A9D}\u{11AB0}-\u{11AF8}\u{11BC0}-\u{11BE0}\u{11BF0}-\u{11BF9}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C36}\u{11C38}-\u{11C40}\u{11C50}-\u{11C59}\u{11C72}-\u{11C8F}\u{11C92}-\u{11CA7}\u{11CA9}-\u{11CB6}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D47}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D90}\u{11D91}\u{11D93}-\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF6}\u{11F00}-\u{11F10}\u{11F12}-\u{11F3A}\u{11F3E}-\u{11F42}\u{11F50}-\u{11F5A}\u{11FB0}\u{12000}-\u{12399}\u{12400}-\u{1246E}\u{12480}-\u{12543}\u{12F90}-\u{12FF0}\u{13000}-\u{1342F}\u{13440}-\u{13455}\u{13460}-\u{143FA}\u{14400}-\u{14646}\u{16100}-\u{16139}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A70}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF0}-\u{16AF4}\u{16B00}-\u{16B36}\u{16B40}-\u{16B43}\u{16B50}-\u{16B59}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16D40}-\u{16D6C}\u{16D70}-\u{16D79}\u{16E40}-\u{16E7F}\u{16F00}-\u{16F4A}\u{16F4F}-\u{16F87}\u{16F8F}-\u{16F9F}\u{16FE0}\u{16FE1}\u{16FE3}\u{16FE4}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18CFF}-\u{18D08}\u{1AFF0}-\u{1AFF3}\u{1AFF5}-\u{1AFFB}\u{1AFFD}\u{1AFFE}\u{1B000}-\u{1B122}\u{1B132}\u{1B150}-\u{1B152}\u{1B155}\u{1B164}-\u{1B167}\u{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9D}\u{1BC9E}\u{1CCF0}-\u{1CCF9}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D165}-\u{1D169}\u{1D16D}-\u{1D172}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D6C0}\u{1D6C2}-\u{1D6DA}\u{1D6DC}-\u{1D6FA}\u{1D6FC}-\u{1D714}\u{1D716}-\u{1D734}\u{1D736}-\u{1D74E}\u{1D750}-\u{1D76E}\u{1D770}-\u{1D788}\u{1D78A}-\u{1D7A8}\u{1D7AA}-\u{1D7C2}\u{1D7C4}-\u{1D7CB}\u{1D7CE}-\u{1D7FF}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E030}-\u{1E06D}\u{1E08F}\u{1E100}-\u{1E12C}\u{1E130}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E290}-\u{1E2AE}\u{1E2C0}-\u{1E2F9}\u{1E4D0}-\u{1E4F9}\u{1E5D0}-\u{1E5FA}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1E800}-\u{1E8C4}\u{1E8D0}-\u{1E8D6}\u{1E900}-\u{1E94B}\u{1E950}-\u{1E959}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}\u{1FBF0}-\u{1FBF9}\u{20000}-\u{2A6DF}\u{2A700}-\u{2B739}\u{2B740}-\u{2B81D}\u{2B820}-\u{2CEA1}\u{2CEB0}-\u{2EBE0}\u{2EBF0}-\u{2EE5D}\u{2F800}-\u{2FA1D}\u{30000}-\u{3134A}\u{31350}-\u{323AF}\u{E0100}-\u{E01EF}]*$/u;function E(u){const A=String(u);return D.test(A)?`.${A}`:`[${JSON.stringify(A)}]`}},19057:(u,A,F)=>{F.d(A,{m:()=>C,w:()=>B});var D=F(41030),E=F(8514);function B(u,A){return C(u,(0,E._)(A))}function C(u,A){let F;switch(u.display){case"link":case"text":F=t(u,A),"struct-list"!==u.type||u.countOnly?"link"===u.display&&(F={brick:"eo-link",errorBoundary:!0,children:[F]}):F={brick:"eo-tag",errorBoundary:!0,children:[F]};break;case"tag":{var D,E,B,C,n;const e="background"===(null===(D=u.style)||void 0===D?void 0:D.variant)?"-inverse":"",t=r(u,A);F={brick:"eo-tag",errorBoundary:!0,properties:{textContent:`<% ${t} %>`,size:i(null===(E=u.style)||void 0===E?void 0:E.size),color:null!==(B=u.style)&&void 0!==B&&B.background?`${u.style.background}${e}`:null!==(C=u.style)&&void 0!==C&&C.palette?`<%\n \`\${new Map(Object.entries(${JSON.stringify(u.style.palette,null,2).replaceAll("\n","\n ")})).get(${t}) ?? "gray"}${e}\`\n%>`:`gray${e}`,outline:"outline"===(null===(n=u.style)||void 0===n?void 0:n.variant)}};break}case"icon":F=e(u,A);break;case"icon+text":F={brick:"span",errorBoundary:!0,properties:{style:{display:"inline-flex",alignItems:"center",gap:"0.5em"}},children:[e(u,A),t(u,A)]};break;default:return null}if("struct-list"!==u.type||u.countOnly)return F;const o=Number(u.maxItems)||3;return{brick:"span",errorBoundary:!0,properties:{style:{display:"inline-flex",alignItems:"center",gap:"0.5em"}},children:[{brick:":forEach",dataSource:`<% DATA${A}.slice(0, ${o}) %>`,children:[F]},{brick:"eo-link",if:`<% DATA${A}.length > ${o} %>`,properties:{textContent:`<% \`+ \${DATA${A}.length - ${o}}\` %>`}}]}}function e(u,A){if("boolean"===u.type){var F,D,E,B,C,e;const t=r(u,A),i=null!==(F=null===(D=u.true)||void 0===D?void 0:D.icon)&&void 0!==F?F:"check",o=null!==(E=null===(B=u.false)||void 0===B?void 0:B.icon)&&void 0!==E?E:"xmark",l=n(null===(C=u.true)||void 0===C?void 0:C.style),s=n(null===(e=u.false)||void 0===e?void 0:e.style);return{brick:"eo-icon",errorBoundary:!0,properties:{lib:"fa",prefix:"fas",icon:`<% ${t} ? ${JSON.stringify(i)} : ${JSON.stringify(o)} %>`,style:`<% ${t} ? ${JSON.stringify(l)} : ${JSON.stringify(s)} %>`}}}if("json"===u.type){const F=r(u,A);return{brick:"eo-icon",errorBoundary:!0,properties:{lib:`<% ${F}?.lib %>`,prefix:`<% ${F}?.prefix %>`,category:`<% ${F}?.category %>`,theme:`<% ${F}?.theme %>`,icon:`<% ${F}?.icon %>`,style:n(u.style)}}}return{brick:"eo-icon",errorBoundary:!0,properties:{lib:"fa",prefix:"fas",icon:u.icon,style:n(u.style)}}}function t(u,A){var F;if("struct-list"===u.type&&u.countOnly)return{brick:"span",properties:{textContent:`<% \`\${DATA${A}.length}\` %>`}};const E=r(u,A),B=`<% ${E} %>`;switch(null===(F=u.formatter)||void 0===F?void 0:F.type){case"number":return{brick:"eo-formatter-number",errorBoundary:!0,properties:{value:B,type:u.formatter.format,...(0,D.pick)(u.formatter,["currency","originalUnit","decimals","thousandsSeparator"]),style:n(u.style)}};case"date":case"date-time":return{brick:"eo-humanize-time",errorBoundary:!0,properties:{value:B,type:"date"===u.type?"date":void 0,formatter:u.formatter.format,style:n(u.style)}};case"cost-time":return{brick:"eo-humanize-time",errorBoundary:!0,properties:{value:B,isCostTime:!0,style:n(u.style)}};default:{let A,F,D="span";if("boolean"===u.type){var C,e,t,i,o,l;const D=null!==(C=null===(e=u.true)||void 0===e?void 0:e.text)&&void 0!==C?C:"Yes",B=null!==(t=null===(i=u.false)||void 0===i?void 0:i.text)&&void 0!==t?t:"No",r=n(null===(o=u.true)||void 0===o?void 0:o.style),s=n(null===(l=u.false)||void 0===l?void 0:l.style);A=`<% ${E} ? ${JSON.stringify(D)} : ${JSON.stringify(B)} %>`,F=`<% ${E} ? ${JSON.stringify(r)} : ${JSON.stringify(s)} %>`}else F=n(u.style),"json"===u.type?"link"===u.display?A='<% I18N("VIEW", "查看") %>':(D="pre",A=`<% PIPES.jsonStringify(${E}) %>`):A=B;return{brick:D,errorBoundary:!0,properties:{textContent:A,style:F}}}}}function r(u,A){return"struct"!==u.type&&"struct-list"!==u.type||!u.field?`DATA${A}`:`${"struct"===u.type?`DATA${A}`:"ITEM"}${(0,E._)(u.field)}`}function i(u){switch(u){case"large":case"medium":case"small":return u;case"x-large":return"large"}}function n(u){if(!u)return;const A={};switch(u.size){case"small":A.fontSize="var(--sub-title-font-size-small)";break;case"medium":A.fontSize="var(--normal-font-size)";break;case"large":A.fontSize="var(--card-title-font-size)";break;case"x-large":A.fontSize="var(--title-font-size-larger)"}switch(u.fontWeight){case"bold":case"normal":A.fontWeight=u.fontWeight}return u.color&&(A.color=u.color),A}}}]);
|
|
2
|
+
//# sourceMappingURL=9057.dc9ef655.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/9057.dc9ef655.js","mappings":"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","sources":["webpack:///./src/shared/getMemberAccessor.ts","webpack:///./src/raw-data-preview/convert.ts"],"sourcesContent":["const VALID_IDENTIFIER_REG = /^[$_\\p{ID_Start}][$\\p{ID_Continue}]*$/u;\n\nexport function getMemberAccessor(property: unknown): string {\n const propertyStr = String(property);\n return VALID_IDENTIFIER_REG.test(propertyStr)\n ? `.${propertyStr}`\n : `[${JSON.stringify(propertyStr)}]`;\n}\n","import type { BrickConf } from \"@next-core/types\";\nimport { pick } from \"lodash\";\nimport type { CSSProperties } from \"react\";\nimport type { VisualConfig, VisualStyle } from \"./raw-data-interfaces\";\nimport { getMemberAccessor } from \"../shared/getMemberAccessor\";\n\nexport function convertToStoryboard(\n config: VisualConfig,\n attr: string\n): BrickConf | null {\n return lowLevelConvertToStoryboard(config, getMemberAccessor(attr));\n}\n\nexport function lowLevelConvertToStoryboard(\n config: VisualConfig,\n attrAccessor: string\n): BrickConf | null {\n let brickItem: BrickConf;\n\n switch (config.display) {\n case \"link\":\n case \"text\": {\n brickItem = getPlainBrick(config, attrAccessor);\n if (config.type === \"struct-list\" && !config.countOnly) {\n brickItem = {\n brick: \"eo-tag\",\n errorBoundary: true,\n children: [brickItem],\n };\n } else if (config.display === \"link\") {\n brickItem = {\n brick: \"eo-link\",\n errorBoundary: true,\n children: [brickItem],\n };\n }\n break;\n }\n case \"tag\": {\n const colorSuffix =\n config.style?.variant === \"background\" ? \"-inverse\" : \"\";\n const valueAccessor = getValueAccessor(config, attrAccessor);\n brickItem = {\n brick: \"eo-tag\",\n errorBoundary: true,\n properties: {\n textContent: `<% ${valueAccessor} %>`,\n size: getTagSize(config.style?.size),\n color: config.style?.background\n ? `${config.style.background}${colorSuffix}`\n : config.style?.palette\n ? `<%\n \\`\\${new Map(Object.entries(${JSON.stringify(\n config.style.palette,\n null,\n 2\n ).replaceAll(\"\\n\", \"\\n \")})).get(${valueAccessor}) ?? \"gray\"}${colorSuffix}\\`\n%>`\n : `gray${colorSuffix}`,\n outline: config.style?.variant === \"outline\",\n },\n };\n break;\n }\n case \"icon\": {\n brickItem = getIconBrick(config, attrAccessor);\n break;\n }\n case \"icon+text\": {\n const iconBrick = getIconBrick(config, attrAccessor);\n const textBrick = getPlainBrick(config, attrAccessor);\n brickItem = {\n brick: \"span\",\n errorBoundary: true,\n properties: {\n style: {\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: \"0.5em\",\n },\n },\n children: [iconBrick, textBrick],\n };\n break;\n }\n default:\n return null;\n }\n\n if (config.type !== \"struct-list\" || config.countOnly) {\n return brickItem;\n }\n\n const maxItems = Number(config.maxItems) || 3;\n return {\n brick: \"span\",\n errorBoundary: true,\n properties: {\n style: {\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: \"0.5em\",\n },\n },\n children: [\n {\n brick: \":forEach\",\n dataSource: `<% DATA${attrAccessor}.slice(0, ${maxItems}) %>`,\n children: [brickItem],\n },\n {\n brick: \"eo-link\",\n if: `<% DATA${attrAccessor}.length > ${maxItems} %>`,\n properties: {\n textContent: `<% \\`+ \\${DATA${attrAccessor}.length - ${maxItems}}\\` %>`,\n },\n },\n ],\n };\n}\n\nfunction getIconBrick(config: VisualConfig, attrAccessor: string): BrickConf {\n if (config.type === \"boolean\") {\n const valueAccessor = getValueAccessor(config, attrAccessor);\n const trueIcon = config.true?.icon ?? \"check\";\n const falseIcon = config.false?.icon ?? \"xmark\";\n const trueStyle = getPlainStyle(config.true?.style);\n const falseStyle = getPlainStyle(config.false?.style);\n return {\n brick: \"eo-icon\",\n errorBoundary: true,\n properties: {\n lib: \"fa\",\n prefix: \"fas\",\n icon: `<% ${valueAccessor} ? ${JSON.stringify(trueIcon)} : ${JSON.stringify(falseIcon)} %>`,\n style: `<% ${valueAccessor} ? ${JSON.stringify(trueStyle)} : ${JSON.stringify(falseStyle)} %>`,\n },\n };\n }\n\n if (config.type === \"json\") {\n const valueAccessor = getValueAccessor(config, attrAccessor);\n return {\n brick: \"eo-icon\",\n errorBoundary: true,\n properties: {\n lib: `<% ${valueAccessor}?.lib %>`,\n prefix: `<% ${valueAccessor}?.prefix %>`,\n category: `<% ${valueAccessor}?.category %>`,\n theme: `<% ${valueAccessor}?.theme %>`,\n icon: `<% ${valueAccessor}?.icon %>`,\n style: getPlainStyle(config.style),\n },\n };\n }\n\n return {\n brick: \"eo-icon\",\n errorBoundary: true,\n properties: {\n lib: \"fa\",\n prefix: \"fas\",\n icon: config.icon,\n style: getPlainStyle(config.style),\n },\n };\n}\n\nfunction getPlainBrick(config: VisualConfig, attrAccessor: string): BrickConf {\n if (config.type === \"struct-list\" && config.countOnly) {\n return {\n brick: \"span\",\n properties: {\n textContent: `<% \\`\\${DATA${attrAccessor}.length}\\` %>`,\n },\n };\n }\n\n const valueAccessor = getValueAccessor(config, attrAccessor);\n const value = `<% ${valueAccessor} %>`;\n switch (config.formatter?.type) {\n case \"number\":\n return {\n brick: \"eo-formatter-number\",\n errorBoundary: true,\n properties: {\n value,\n type: config.formatter.format,\n ...pick(config.formatter, [\n \"currency\",\n // \"unit\",\n \"originalUnit\",\n \"decimals\",\n \"thousandsSeparator\",\n ]),\n style: getPlainStyle(config.style),\n },\n };\n case \"date\":\n case \"date-time\":\n return {\n brick: \"eo-humanize-time\",\n errorBoundary: true,\n properties: {\n value,\n type: config.type === \"date\" ? \"date\" : undefined,\n formatter: config.formatter.format,\n style: getPlainStyle(config.style),\n },\n };\n case \"cost-time\":\n return {\n brick: \"eo-humanize-time\",\n errorBoundary: true,\n properties: {\n value,\n isCostTime: true,\n style: getPlainStyle(config.style),\n },\n };\n default: {\n let textContent: string | undefined;\n let style: CSSProperties | string | undefined;\n let tag = \"span\";\n if (config.type === \"boolean\") {\n const trueContent = config.true?.text ?? \"Yes\";\n const falseContent = config.false?.text ?? \"No\";\n const trueStyle = getPlainStyle(config.true?.style);\n const falseStyle = getPlainStyle(config.false?.style);\n textContent = `<% ${valueAccessor} ? ${JSON.stringify(trueContent)} : ${JSON.stringify(falseContent)} %>`;\n style = `<% ${valueAccessor} ? ${JSON.stringify(trueStyle)} : ${JSON.stringify(falseStyle)} %>`;\n } else {\n style = getPlainStyle(config.style);\n if (config.type === \"json\") {\n if (config.display === \"link\") {\n textContent = `<% I18N(\"VIEW\", \"查看\") %>`;\n } else {\n tag = \"pre\";\n textContent = `<% PIPES.jsonStringify(${valueAccessor}) %>`;\n }\n } else {\n textContent = value;\n }\n }\n return {\n brick: tag,\n errorBoundary: true,\n properties: {\n textContent,\n style,\n },\n };\n }\n }\n}\n\nfunction getValueAccessor(config: VisualConfig, attrAccessor: string): string {\n if (\n (config.type === \"struct\" || config.type === \"struct-list\") &&\n config.field\n ) {\n return `${config.type === \"struct\" ? `DATA${attrAccessor}` : \"ITEM\"}${getMemberAccessor(config.field)}`;\n }\n return `DATA${attrAccessor}`;\n}\n\nfunction getTagSize(size: VisualStyle[\"size\"]): string | undefined {\n switch (size) {\n case \"large\":\n case \"medium\":\n case \"small\":\n return size;\n case \"x-large\":\n return \"large\";\n // case \"x-small\":\n // return \"xs\";\n }\n}\n\nfunction getPlainStyle(\n configStyle: VisualStyle | undefined\n): CSSProperties | undefined {\n if (!configStyle) {\n return;\n }\n const style: CSSProperties = {};\n switch (configStyle.size) {\n // case \"x-small\":\n case \"small\":\n style.fontSize = \"var(--sub-title-font-size-small)\";\n break;\n case \"medium\":\n style.fontSize = \"var(--normal-font-size)\";\n break;\n case \"large\":\n style.fontSize = \"var(--card-title-font-size)\";\n break;\n case \"x-large\":\n style.fontSize = \"var(--title-font-size-larger)\";\n break;\n }\n switch (configStyle.fontWeight) {\n case \"bold\":\n case \"normal\":\n style.fontWeight = configStyle.fontWeight;\n }\n if (configStyle.color) {\n style.color = configStyle.color;\n }\n return style;\n}\n"],"names":["VALID_IDENTIFIER_REG","getMemberAccessor","property","propertyStr","String","test","JSON","stringify","convertToStoryboard","config","attr","lowLevelConvertToStoryboard","attrAccessor","brickItem","display","getPlainBrick","type","countOnly","brick","errorBoundary","children","_config$style","_config$style2","_config$style3","_config$style4","_config$style5","colorSuffix","style","variant","valueAccessor","getValueAccessor","properties","textContent","size","getTagSize","color","background","palette","replaceAll","outline","getIconBrick","alignItems","gap","maxItems","Number","dataSource","if","_config$true$icon","_config$true","_config$false$icon","_config$false","_config$true2","_config$false2","trueIcon","true","icon","falseIcon","false","trueStyle","getPlainStyle","falseStyle","lib","prefix","category","theme","_config$formatter","value","formatter","format","pick","undefined","isCostTime","tag","_config$true$text","_config$true3","_config$false$text","_config$false3","_config$true4","_config$false4","trueContent","text","falseContent","field","configStyle","fontSize","fontWeight"],"sourceRoot":""}
|