@next-bricks/visual-builder 0.9.6 → 0.9.7
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/206.81caee53.js +2 -0
- package/dist/chunks/{206.c10e004f.js.map → 206.81caee53.js.map} +1 -1
- package/dist/chunks/2108.8e8e2b74.js +2 -0
- package/dist/chunks/2108.8e8e2b74.js.map +1 -0
- package/dist/chunks/{2179.3938928f.js → 2179.57b01819.js} +2 -2
- package/dist/chunks/{2179.3938928f.js.map → 2179.57b01819.js.map} +1 -1
- package/dist/chunks/{3458.448f8d3e.js → 3458.7cfe1074.js} +2 -2
- package/dist/chunks/{3458.448f8d3e.js.map → 3458.7cfe1074.js.map} +1 -1
- package/dist/chunks/4231.c893788e.js +3 -0
- package/dist/chunks/{4231.a0a85116.js.map → 4231.c893788e.js.map} +1 -1
- package/dist/chunks/541.b19b39e2.js +3 -0
- package/dist/chunks/{541.68bf2743.js.map → 541.b19b39e2.js.map} +1 -1
- package/dist/chunks/6051.f47e3330.js +2 -0
- package/dist/chunks/6051.f47e3330.js.map +1 -0
- package/dist/chunks/{6205.064d6bcc.js → 6205.6a4b4937.js} +2 -2
- package/dist/chunks/{6205.064d6bcc.js.map → 6205.6a4b4937.js.map} +1 -1
- package/dist/chunks/7110.97d8cd70.js +2 -0
- package/dist/chunks/7110.97d8cd70.js.map +1 -0
- package/dist/chunks/{7164.8bcb0c32.js → 7164.4e67859d.js} +2 -2
- package/dist/chunks/{7164.8bcb0c32.js.map → 7164.4e67859d.js.map} +1 -1
- package/dist/chunks/{8691.6a55f729.js → 8691.685f0c21.js} +2 -2
- package/dist/chunks/{8691.6a55f729.js.map → 8691.685f0c21.js.map} +1 -1
- package/dist/chunks/{inject-preview-agent.16049fb9.js → inject-preview-agent.986a093e.js} +2 -2
- package/dist/chunks/{inject-preview-agent.16049fb9.js.map → inject-preview-agent.986a093e.js.map} +1 -1
- package/dist/chunks/main.18284f81.js +2 -0
- package/dist/chunks/{main.ea72cded.js.map → main.18284f81.js.map} +1 -1
- package/dist/chunks/workbench-action-list.5d9a696b.js +2 -0
- package/dist/chunks/{workbench-action-list.f8ebc0a8.js.map → workbench-action-list.5d9a696b.js.map} +1 -1
- package/dist/chunks/workbench-history-action.6ad14c6a.js +3 -0
- package/dist/chunks/{workbench-history-action.3e18edf8.js.map → workbench-history-action.6ad14c6a.js.map} +1 -1
- package/dist/chunks/{workbench-tree.127076b4.js → workbench-tree.32099990.js} +2 -2
- package/dist/chunks/{workbench-tree.127076b4.js.map → workbench-tree.32099990.js.map} +1 -1
- package/dist/index.9b201cde.js +2 -0
- package/dist/{index.2aaad71b.js.map → index.9b201cde.js.map} +1 -1
- package/package.json +7 -3
- package/dist/chunks/206.c10e004f.js +0 -2
- package/dist/chunks/2108.89b99a52.js +0 -2
- package/dist/chunks/2108.89b99a52.js.map +0 -1
- package/dist/chunks/4231.a0a85116.js +0 -3
- package/dist/chunks/541.68bf2743.js +0 -3
- package/dist/chunks/6051.f788465a.js +0 -2
- package/dist/chunks/6051.f788465a.js.map +0 -1
- package/dist/chunks/7110.47509cab.js +0 -2
- package/dist/chunks/7110.47509cab.js.map +0 -1
- package/dist/chunks/main.ea72cded.js +0 -2
- package/dist/chunks/workbench-action-list.f8ebc0a8.js +0 -2
- package/dist/chunks/workbench-history-action.3e18edf8.js +0 -3
- package/dist/index.2aaad71b.js +0 -2
- /package/dist/chunks/{4231.a0a85116.js.LICENSE.txt → 4231.c893788e.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{541.68bf2743.js.LICENSE.txt → 541.b19b39e2.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-history-action.3e18edf8.js.LICENSE.txt → workbench-history-action.6ad14c6a.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/4231.a0a85116.js","mappings":"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","sources":["webpack:///./src/workbench-pane/index.tsx","webpack:///../../src/debounceByAnimationFrame.ts","webpack:///./src/workbench-sidebar/index.tsx","webpack:///./src/workbench-action/index.tsx","webpack:///../../src/menu.ts","webpack:///./src/workbench-action-list/index.tsx","webpack:///./src/workbench-tree/index.tsx","webpack:///./src/data-providers/inject-preview-agent.ts","webpack:///./src/workbench-history-action/i18n.ts","webpack:///../../node_modules/@next-api-sdk/next-builder-sdk/dist/esm/api/next_builder/workspace/getChangeHistory.js","webpack:///./src/workbench-history-action/utils.ts","webpack:///./src/workbench-history-action/index.tsx","webpack:///./src/shared/scrollbar.shadow.css","webpack:///./src/workbench-action-list/workbench-action-list.shadow.css","webpack:///./src/workbench-action/workbench-action.shadow.css","webpack:///./src/workbench-history-action/styles.shadow.css","webpack:///./src/workbench-pane/workbench-pane.shadow.css","webpack:///./src/workbench-sidebar/workbench-sidebar.shadow.css"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useState,\n useCallback,\n useMemo,\n} from \"react\";\nimport { createDecorators, EventEmitter } from \"@next-core/element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./workbench-pane.shadow.css\";\nimport sharedStyle from \"../shared/scrollbar.shadow.css\";\nimport { debounceByAnimationFrame } from \"@next-shared/general/debounceByAnimationFrame\";\nimport classNames from \"classnames\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\n \"icons.general-icon\"\n);\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface WorkbenchPaneProps {\n titleLabel?: string;\n active?: boolean;\n badge?: number;\n onActiveChange?(active: boolean): void;\n onFirstActivated?(): void;\n}\n\n@defineElement(\"visual-builder.workbench-pane\", {\n styleTexts: [styleText, sharedStyle],\n})\nclass WorkbenchPane extends ReactNextElement {\n @property() accessor titleLabel: string | undefined;\n\n @property({ type: Boolean }) accessor active: boolean | undefined;\n\n @property({ type: Number }) accessor badge: number | undefined;\n\n @event({ type: \"active.change\" })\n accessor #activeChangeEvent: EventEmitter<boolean>;\n #handleActiveChange = (active: boolean): void => {\n if (active !== this.active) {\n this.active = active;\n this.#activeChangeEvent.emit(active);\n }\n };\n\n @event({ type: \"active.firstActivated\" })\n accessor #activeFirstActivatedEvent: EventEmitter<void>;\n\n #handleActiveFirstActivated = (): void => {\n this.#activeFirstActivatedEvent.emit();\n };\n\n render() {\n return (\n <WorkbenchPaneComponent\n titleLabel={this.titleLabel}\n active={this.active}\n badge={this.badge}\n onActiveChange={this.#handleActiveChange}\n onFirstActivated={this.#handleActiveFirstActivated}\n />\n );\n }\n}\n\nfunction WorkbenchPaneComponent({\n titleLabel,\n active,\n badge,\n onActiveChange,\n onFirstActivated,\n}: WorkbenchPaneProps) {\n const [internalActive, setInternalActive] = useState<boolean>(active);\n const [activatedOnce, setActivatedOnce] = useState(false);\n\n useEffect(() => {\n setInternalActive(active);\n }, [active]);\n\n useEffect(() => {\n onActiveChange?.(internalActive);\n }, [internalActive, onActiveChange]);\n\n const handleClick = useCallback(() => {\n setInternalActive((previousActive) => !previousActive);\n if (!activatedOnce && !internalActive) {\n setActivatedOnce(true);\n onFirstActivated?.();\n }\n }, [activatedOnce, internalActive, onFirstActivated]);\n\n const scrollBodyRef = useRef<HTMLDivElement>();\n\n const [scrolled, setScrolled] = useState(false);\n\n const handleScroll = useMemo(\n () =>\n debounceByAnimationFrame((): void => {\n setScrolled(scrollBodyRef.current.scrollTop > 0);\n }),\n []\n );\n\n return (\n <div\n className={classNames(\"pane\", {\n scrolled,\n })}\n >\n <div className=\"pane-header\" tabIndex={0} onClick={handleClick}>\n <div className=\"pane-title\">\n <span className=\"title-icon\">\n {internalActive ? (\n <WrappedIcon lib=\"antd\" theme=\"outlined\" icon=\"down\" />\n ) : (\n <WrappedIcon lib=\"antd\" theme=\"outlined\" icon=\"right\" />\n )}\n </span>\n <div className=\"title-label\">{titleLabel}</div>\n <slot name=\"title\" />\n </div>\n <slot name=\"actions\" />\n {badge && <div className=\"badge\">{badge}</div>}\n <div className=\"pane-scroll-shadow\"></div>\n </div>\n <div\n className=\"pane-body custom-scrollbar-container\"\n onScroll={handleScroll}\n ref={scrollBodyRef}\n >\n <slot>\n <div\n style={{\n padding: \"10px 20px\",\n color: \"var(--text-color-secondary)\",\n }}\n >\n No content\n </div>\n </slot>\n </div>\n </div>\n );\n}\n\nexport { WorkbenchPane };\n","export type SimpleFunction<P extends unknown[] = unknown[], R = unknown> = (\n ...args: P\n) => R;\n\n// The debounce function receives our function as a parameter\nexport function debounceByAnimationFrame<P extends unknown[]>(\n fn: SimpleFunction<P, void>\n): SimpleFunction<P, void> & { cancel: () => void } {\n // This holds the requestAnimationFrame reference, so we can cancel it if we wish\n let frame: number;\n\n const cancel = () => cancelAnimationFrame(frame);\n\n // The debounce function returns a new function that can receive a variable number of arguments\n const func = (...params: P) => {\n // If the frame variable has been defined, clear it now, and queue for next frame\n if (frame) {\n cancel();\n }\n\n // Queue our function call for the next frame\n frame = requestAnimationFrame(() => {\n // Call our function and pass any params we received\n fn(...params);\n });\n };\n\n func.cancel = cancel;\n\n return func;\n}\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport styleText from \"./workbench-sidebar.shadow.css\";\n\ninterface WorkbenchSidebarProps {\n titleLabel: string;\n refCallback: (element: HTMLDivElement) => void;\n}\ninterface WorkbenchSidebarChildElement extends HTMLElement {\n active?: boolean;\n activeFlex?: string;\n}\n\nconst { defineElement, property } = createDecorators();\n\n@defineElement(\"visual-builder.workbench-sidebar\", {\n styleTexts: [styleText],\n})\nclass WorkbenchSidebar extends ReactNextElement {\n @property() accessor titleLabel: string | undefined;\n\n #getPaneSlot = (): HTMLSlotElement => {\n return this.shadowRoot?.querySelector(\"slot:not([name])\");\n };\n\n #reflowPanes = (): void => {\n const slot = this.#getPaneSlot();\n const panes = slot.assignedNodes() as WorkbenchSidebarChildElement[];\n\n for (const pane of panes) {\n if (pane.active) {\n pane.style.flex = String(pane.activeFlex ?? \"1\");\n } else {\n pane.style.flex = \"initial\";\n }\n }\n };\n\n #onPanesSlotChange = (event: Event): void => {\n const slot = event.target as HTMLSlotElement;\n const panes = slot.assignedNodes();\n for (const pane of panes) {\n pane.addEventListener(\"active.change\", this.#reflowPanes);\n }\n };\n\n refCallback = () => {\n this.#reflowPanes();\n const panesSlots = this.#getPaneSlot();\n\n panesSlots?.addEventListener(\"slotchange\", (e) => {\n this.#onPanesSlotChange(e);\n });\n };\n\n render() {\n return (\n <WorkbenchSidebarComponent\n titleLabel={this.titleLabel}\n refCallback={this.refCallback}\n />\n );\n }\n}\n\nfunction WorkbenchSidebarComponent({\n titleLabel,\n refCallback,\n}: WorkbenchSidebarProps) {\n return (\n <div className=\"sidebar\" ref={refCallback}>\n <div className=\"title-container\">\n <div className=\"title-label\">{titleLabel}</div>\n <slot name=\"titleToolbar\" />\n </div>\n <div className=\"pane-container\">\n <slot />\n </div>\n </div>\n );\n}\n\nexport { WorkbenchSidebar };\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./workbench-action.shadow.css\";\nimport classNames from \"classnames\";\n\nconst { defineElement, property } = createDecorators();\n\nconst WrapLink = wrapBrick<Link, LinkProps>(\"basic.general-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\n \"icons.general-icon\"\n);\n\nexport interface WorkbenchActionProps {\n icon?: GeneralIconProps;\n to?: string;\n target?: string;\n active?: boolean;\n href?: string;\n}\n\n@defineElement(\"visual-builder.workbench-action\", {\n styleTexts: [styleText],\n})\nclass WorkbenchAction extends ReactNextElement {\n @property({\n attribute: false,\n })\n accessor icon: GeneralIconProps | undefined;\n\n @property() accessor to: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor active: boolean | undefined;\n\n @property() accessor href: string | undefined;\n\n @property() accessor target: string | undefined;\n\n render(): React.ReactNode {\n return (\n <WorkbenchActionComponent\n to={this.to}\n icon={this.icon}\n active={this.active}\n href={this.href}\n target={this.target}\n />\n );\n }\n}\n\nfunction WorkbenchActionComponent({\n icon,\n to,\n active,\n href,\n target,\n}: WorkbenchActionProps) {\n return (\n <WrapLink\n className={classNames(\"action\", { active })}\n url={to}\n href={href}\n target={target as LinkProps[\"target\"]}\n >\n <WrappedIcon {...icon} />\n </WrapLink>\n );\n}\n\nexport { WorkbenchAction };\n","import { Location, parsePath } from \"history\";\nimport { matchPath } from \"@next-core/runtime\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n SidebarMenuGroup,\n} from \"./types.js\";\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuItem,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function initMenuItemAndMatchCurrentPathKeys(\n menuItems: SidebarMenuItem[],\n pathname: string,\n search: string,\n parentCursor: string\n): {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n} {\n const selectedKeys: string[] = [];\n const openedKeys: string[] = [];\n const matchedKeys: string[] = [];\n\n let cursor = 0;\n menuItems.forEach((item) => {\n // key的格式最终为0,1,2,0.1,0.2,0.1.1,0.1.2\n item.key = parentCursor === \"\" ? `${cursor}` : `${parentCursor}.${cursor}`;\n if (isGroup(item) || isSubMenu(item)) {\n const tmp = initMenuItemAndMatchCurrentPathKeys(\n item.items,\n pathname,\n search,\n item.key\n );\n selectedKeys.push(...tmp.selectedKeys);\n if (tmp.selectedKeys.length || item.defaultExpanded) {\n openedKeys.push(item.key);\n }\n openedKeys.push(...tmp.openedKeys);\n matchedKeys.push(...tmp.matchedKeys);\n } else {\n if (matchMenuItem(item, pathname, search)) {\n selectedKeys.push(String(item.key));\n\n const keyPath = item.key.split(\".\");\n\n for (let i = 0; i < keyPath.length; i++) {\n matchedKeys.push(keyPath.slice(0, i + 1).join(\".\"));\n }\n }\n }\n cursor += 1;\n });\n if (selectedKeys.length && parentCursor !== \"\") {\n openedKeys.push(parentCursor);\n }\n return {\n selectedKeys: selectedKeys,\n openedKeys: openedKeys,\n matchedKeys: matchedKeys,\n };\n}\n\nfunction getMatchOfSearch(\n currentSearch: string,\n toSearch: string | undefined\n): boolean {\n const current = new URLSearchParams(currentSearch);\n const to = new URLSearchParams(toSearch);\n for (const [key, value] of to.entries()) {\n if (current.get(key) !== value) {\n return false;\n }\n }\n return true;\n}\n\nexport function matchMenuItem(\n item: SidebarMenuSimpleItem,\n pathname: string,\n search: string\n): boolean {\n if (!item.to) return false;\n const to = typeof item.to === \"object\" ? item.to : parsePath(item.to);\n\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath = to.pathname!.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n let match = !!matchPath(pathname, {\n path: escapedPath,\n exact: item.exact,\n });\n\n if (!match && Array.isArray(item.activeIncludes)) {\n for (const include of item.activeIncludes) {\n let parseInclude: Location | undefined;\n const hasSearch = include.includes(\"?\");\n\n if (hasSearch) {\n parseInclude = parsePath(include);\n }\n match = !!matchPath(pathname, {\n path: hasSearch ? parseInclude!.pathname : include,\n exact: true,\n });\n\n if (match && parseInclude?.search) {\n match = getMatchOfSearch(search, parseInclude.search);\n }\n\n if (match) {\n break;\n }\n }\n }\n\n if (match && Array.isArray(item.activeExcludes)) {\n for (const include of item.activeExcludes) {\n match = !matchPath(pathname, {\n path: include,\n exact: true,\n });\n if (!match) {\n break;\n }\n }\n }\n\n if (match && (item as any).activeMatchSearch) {\n match = getMatchOfSearch(search, to.search);\n }\n\n return match;\n}\n","import React, { useState, useEffect } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport {\n WorkbenchAction,\n WorkbenchActionProps,\n} from \"../workbench-action/index.js\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n} from \"@next-shared/general/types\";\nimport { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport styleText from \"./workbench-action-list.shadow.css\";\n\nexport interface SidebarMenu {\n title?: string;\n icon?: GeneralIconProps;\n menuItems?: SidebarMenuItem[];\n}\n\nconst WrapperWorkbenchAction = wrapBrick<WorkbenchAction, WorkbenchActionProps>(\n \"visual-builder.workbench-action\"\n);\n\nconst { defineElement, property } = createDecorators();\n\ninterface WorkbenchActionListProps {\n appId?: string;\n menu: SidebarMenu;\n}\n\n@defineElement(\"visual-builder.workbench-action-list\", {\n styleTexts: [styleText],\n})\nclass WorkbenchActionList extends ReactNextElement {\n @property() accessor appId: string | undefined;\n\n @property({\n attribute: false,\n })\n accessor menu!: SidebarMenu;\n\n render(): React.ReactNode {\n return <WorkbenchActionListComponent appId={this.appId} menu={this.menu} />;\n }\n}\n\nlet currentAppId: string;\nconst historyMap = new Map<number, string>();\n\nexport function WorkbenchActionListComponent({\n appId,\n menu,\n}: WorkbenchActionListProps) {\n const history = getHistory();\n const [activeIndex, setActiveIndex] = useState<number>();\n const [location, setLocation] = useState(history.location);\n\n useEffect(() => {\n const unlisten = history.listen((location) => {\n setLocation(location);\n });\n return unlisten;\n }, [history]);\n\n useEffect(() => {\n if (!currentAppId) currentAppId = appId;\n if (currentAppId !== appId) {\n historyMap.clear();\n currentAppId = appId;\n }\n }, [appId]);\n\n useEffect(() => {\n const { pathname, search } = location;\n\n const { selectedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n setActiveIndex(Number(selectedKeys[0]));\n }, [menu, location]);\n\n const handleLinkClick = (item: SidebarMenuItem): void => {\n if ((item as SidebarMenuSimpleItem).href) return;\n historyMap.set(activeIndex, `${location.pathname}${location.search}`);\n };\n\n const isSimpleMenuItem = (\n item: SidebarMenuItem\n ): item is SidebarMenuSimpleItem => {\n return item.type === \"default\" || !item.type;\n };\n\n return (\n <div className=\"workBenchActionList\">\n {menu?.menuItems\n ?.map((item, index) => {\n if (isSimpleMenuItem(item)) {\n let url = item.to;\n if (activeIndex !== index && historyMap.has(index)) {\n url = historyMap.get(index);\n }\n return (\n <WrapperWorkbenchAction\n key={index}\n icon={item.icon}\n to={url as string}\n href={item.href}\n target={item.target}\n active={activeIndex === index}\n onClick={() => handleLinkClick(item)}\n />\n );\n }\n })\n .filter(Boolean)}\n </div>\n );\n}\n\nexport { WorkbenchActionList };\n","import React from \"react\";\nimport { pick } from \"lodash\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type {\n ActionClickDetail,\n WorkbenchNodeData,\n WorkbenchTreeAction,\n} from \"../interfaces.js\";\nimport { WorkbenchActionsContext } from \"../shared/workbench/WorkbenchActionsContext.js\";\nimport {\n WorkbenchTree,\n dropEmitProps,\n} from \"../shared/workbench/WorkbenchTree.js\";\nimport { WorkbenchTreeContext } from \"../shared/workbench/WorkbenchTreeContext.js\";\nimport { deepMatch } from \"../utils/deepMatch.js\";\nimport treeStyleText from \"./WorkbenchTree.shadow.css\";\nimport actionStyleText from \"../shared/workbench-mini-action-bar/WorkbenchMiniActionBar.shadow.css\";\nimport \"@next-core/theme\";\n\nfunction defaultGetCollapsedId(node: WorkbenchNodeData): string | number {\n return node.key;\n}\n\nconst { defineElement, property, event } = createDecorators();\n\n/**\n * @id next-builder.workbench-tree\n * @author steve\n * @history\n * 1.x.0: 新增构件 `next-builder.workbench-tree`\n * @docKind brick\n * @noInheritDoc\n */\n@defineElement(\"visual-builder.workbench-tree\", {\n styleTexts: [treeStyleText, actionStyleText],\n})\nclass WorkbenchTreeElement extends ReactNextElement {\n @property({ attribute: false })\n accessor nodes: WorkbenchNodeData[];\n\n @property({ attribute: false })\n accessor actions: WorkbenchTreeAction[];\n\n @property({ type: Boolean })\n accessor actionsHidden: boolean;\n\n @property()\n accessor placeholder: string;\n\n @property({ type: Boolean })\n accessor isTransformName: boolean;\n\n @property()\n accessor searchPlaceholder: string;\n\n @property({ type: Boolean })\n accessor noSearch: boolean;\n\n @property({ attribute: false })\n accessor activeKey: string | number;\n\n @property({ type: Boolean })\n accessor showMatchedNodeOnly: boolean;\n\n @property({ attribute: false })\n accessor matchNodeDataFields: string | string[];\n\n @property({ attribute: false })\n accessor fixedActionsFor: Record<string, unknown> | Record<string, unknown>[];\n\n @property({ type: Boolean })\n accessor collapsible: boolean;\n\n @property({ attribute: false })\n accessor collapsedNodes: string[];\n\n @property({ type: Boolean })\n accessor allowDrag: boolean;\n\n @property({ type: Boolean })\n accessor allowDragToRoot: boolean;\n\n @property({ type: Boolean })\n accessor allowDragToInside: boolean;\n\n @property({ type: String })\n accessor nodeKey: string;\n\n @property({ type: Boolean })\n accessor skipNotify: boolean;\n\n @event({ type: \"action.click\" })\n accessor #actionClickEvent!: EventEmitter<ActionClickDetail>;\n\n #handleActionClick = (detail: ActionClickDetail): void => {\n this.#actionClickEvent.emit(detail);\n };\n\n @event({ type: \"node.click\" })\n accessor #nodeClickEvent: EventEmitter<unknown>;\n\n #nodeClickFactory = (node: WorkbenchNodeData) => () => {\n this.#nodeClickEvent.emit(node.data);\n };\n\n @event({ type: \"node.drop\" })\n accessor #nodeDropEvent: EventEmitter<any>;\n\n #handleNodeDrop = (detail: dropEmitProps): void => {\n this.#nodeDropEvent.emit(detail);\n };\n\n @event({ type: \"context.menu\" })\n accessor #nodeContextMenuEvent: EventEmitter<unknown>;\n\n #contextMenuFactory = (node: WorkbenchNodeData) => (e: React.MouseEvent) => {\n e.preventDefault();\n this.#nodeContextMenuEvent.emit({\n active: true,\n node: node?.data,\n x: e.clientX,\n y: e.clientY,\n });\n };\n\n @event({ type: \"node.toggle\" })\n accessor #nodeToggleEvent: EventEmitter<{\n nodeId: string;\n collapsed: boolean;\n }>;\n\n #handleNodeToggle = (nodeId: string, collapsed: boolean): void => {\n this.#nodeToggleEvent.emit({ nodeId, collapsed });\n };\n\n render() {\n return (\n <WorkbenchActionsContext.Provider\n value={{\n actions: this.actions,\n actionsHidden: this.actionsHidden,\n onActionClick: this.#handleActionClick,\n }}\n >\n <WorkbenchTreeContext.Provider\n value={{\n activeKey: this.activeKey,\n basePaddingLeft: 5,\n showMatchedNodeOnly: this.showMatchedNodeOnly,\n isTransformName: this.isTransformName,\n fixedActionsFor: this.fixedActionsFor,\n nodeKey: this.nodeKey,\n collapsible: this.collapsible,\n collapsedNodes: this.collapsedNodes,\n getCollapsedId: defaultGetCollapsedId,\n onNodeToggle: this.#handleNodeToggle,\n skipNotify: this.skipNotify,\n clickFactory: this.#nodeClickFactory,\n contextMenuFactory: this.#contextMenuFactory,\n matchNode: (node, lowerTrimmedQuery) =>\n deepMatch(node.name, lowerTrimmedQuery) ||\n (!!this.matchNodeDataFields?.length &&\n deepMatch(\n this.matchNodeDataFields === \"*\"\n ? node.data\n : pick(node.data, this.matchNodeDataFields),\n lowerTrimmedQuery\n )),\n }}\n >\n <WorkbenchTree\n nodes={this.nodes}\n placeholder={this.placeholder}\n searchPlaceholder={this.searchPlaceholder}\n noSearch={this.noSearch}\n dropEmit={this.#handleNodeDrop}\n allowDrag={this.allowDrag}\n allowDragToInside={this.allowDragToInside}\n allowDragToRoot={this.allowDragToRoot}\n />\n </WorkbenchTreeContext.Provider>\n </WorkbenchActionsContext.Provider>\n );\n }\n}\n\nexport { WorkbenchTreeElement };\n","// Merge bricks\n// istanbul ignore file\nimport { createProviderClass } from \"@next-core/utils/general\";\nimport connect from \"./preview/connect.js\";\nimport type { PreviewStartOptions } from \"./preview/interfaces.js\";\n// Todo: remove unnecessary provider below\nimport \"./collect-used-contracts.js\";\n\nexport function injectPreviewAgent(\n previewFromOrigin: string,\n options: PreviewStartOptions\n): Promise<unknown> {\n return connect(previewFromOrigin, options);\n}\n\ncustomElements.define(\n \"visual-builder.inject-preview-agent\",\n createProviderClass(injectPreviewAgent)\n);\n","export enum K {\n LOAD_MORE = \"LOAD_MORE\",\n LOADING = \"LOADING\",\n NO_DATA = \"NO_DATA\",\n NODE = \"NODE\",\n // action\n ADD = \"ADD\",\n EDIT = \"EDIT\",\n DELETE = \"DELETE\",\n IMPORT = \"IMPORT\",\n CLONE = \"CLONE\",\n APPEND_RELATION = \"APPEND_RELATION\",\n UPDATE_RELATION = \"UPDATE_RELATION\",\n REMOVE_RELATION = \"REMOVE_RELATION\",\n ROLLBACK = \"ROLLBACK\",\n ROLLBACK_ALL = \"ROLLBACK_ALL\",\n ADD_FULL = \"ADD_FULL\",\n EDIT_FULL = \"EDIT_FULL\",\n DELETE_FULL = \"DELETE_FULL\",\n IMPORT_FULL = \"IMPORT_FULL\",\n CLONE_FULL = \"CLONE_FULL\",\n APPEND_RELATION_FULL = \"APPEND_RELATION_FULL\",\n UPDATE_RELATION_FULL = \"UPDATE_RELATION_FULL\",\n REMOVE_RELATION_FULL = \"REMOVE_RELATION_FULL\",\n ROLLBACK_FULL = \"ROLLBACK_FULL\",\n ROLLBACK_ALL_FULL = \"ROLLBACK_ALL_FULL\",\n // category\n PROJECT = \"PROJECT\",\n USER = \"USER\",\n PERMISSION = \"PERMISSION\",\n BRICK = \"BRICK\",\n ROUTE = \"ROUTE\",\n TEMPLATE = \"TEMPLATE\",\n SNIPPET = \"SNIPPET\",\n I18N = \"I18N\",\n IMAGE = \"IMAGE\",\n FUNCTION = \"FUNCTION\",\n MENU = \"MENU\",\n MENU_ITEM = \"MENU_ITEM\",\n WORKFLOW = \"WORKFLOW\",\n}\n\nconst en: Locale = {\n LOAD_MORE: \"Load more\",\n LOADING: \"Loading\",\n NO_DATA: \"No data\",\n NODE: \"{{ nodes }}\",\n NODE_ellipsis: \"{{ nodes }} etc., a total of {{ count }} items\",\n // action\n ADD: \"Add node\",\n EDIT: \"Edit node\",\n DELETE: \"Delete node\",\n IMPORT: \"Batch import node\",\n CLONE: \"Clone node\",\n APPEND_RELATION: \"Append Relation\",\n UPDATE_RELATION: \"Update Relation\",\n REMOVE_RELATION: \"Remove Relation\",\n ROLLBACK: \"Rollback\",\n ROLLBACK_ALL: \"Rollback all operations\",\n ADD_FULL: \"Add {{ category }} ({{ nodes }})\",\n EDIT_FULL: \"Edit {{ nodeChanges }} of {{ category }} ({{ nodes }})\",\n DELETE_FULL: \"Delete {{ category }} ({{ nodes }})\",\n IMPORT_FULL: \"Batch Import {{ category }} ({{ nodes }})\",\n CLONE_FULL: \"Clone {{ category }} ({{ nodes }})\",\n APPEND_RELATION_FULL:\n \"Append the relation between {{ leftObjectId }} ({{ leftNodes }}) and {{ rightObjectId }} ({{ rightNodes }})\",\n UPDATE_RELATION_FULL:\n \"Update the relation between {{ leftObjectId }} ({{ leftNodes }}) and {{ rightObjectId }} ({{ rightNodes }})\",\n REMOVE_RELATION_FULL:\n \"Remove the relation between {{ leftObjectId }} ({{ leftNodes }}) and {{ rightObjectId }} ({{ rightNodes }})\",\n ROLLBACK_FULL: \"Rollback to [{{ rollbackAbstract }}]\",\n ROLLBACK_ALL_FULL: \"Rollback all operations\",\n // category\n PROJECT: \"Project\",\n USER: \"User Group\",\n PERMISSION: \"Permission\",\n BRICK: \"Brick\",\n ROUTE: \"Route\",\n TEMPLATE: \"Template\",\n SNIPPET: \"Snippet\",\n I18N: \"I18N\",\n IMAGE: \"Image\",\n FUNCTION: \"Function\",\n MENU: \"Menu\",\n MENU_ITEM: \"Menu item\",\n WORKFLOW: \"Workflow\",\n};\n\nconst zh: Locale = {\n LOAD_MORE: \"加载更多\",\n LOADING: \"加载中\",\n NO_DATA: \"没有数据\",\n NODE: \"{{ nodes }}\",\n NODE_ellipsis: \"{{ nodes }}等共{{ count }}项\",\n // action\n ADD: \"新增节点\",\n EDIT: \"编辑节点\",\n DELETE: \"删除节点\",\n IMPORT: \"批量导入节点\",\n CLONE: \"克隆节点\",\n APPEND_RELATION: \"添加关系\",\n UPDATE_RELATION: \"更新关系\",\n REMOVE_RELATION: \"移除关系\",\n ROLLBACK: \"回滚\",\n ROLLBACK_ALL: \"回滚全部操作\",\n ADD_FULL: \"新增{{ category }}({{ nodes }})\",\n EDIT_FULL: \"编辑{{ category }}({{ nodes }})的 {{ nodeChanges }}\",\n DELETE_FULL: \"删除{{ category }}({{ nodes }})\",\n IMPORT_FULL: \"批量导入{{ category }}({{ nodes }})\",\n CLONE_FULL: \"克隆{{ category }}({{ nodes }})\",\n APPEND_RELATION_FULL:\n \"添加{{ leftObjectId }}({{ leftNodes }})和{{ rightObjectId }}({{ rightNodes }})的关系\",\n UPDATE_RELATION_FULL:\n \"更新{{ leftObjectId }}({{ leftNodes }})和{{ rightObjectId }}({{ rightNodes }})的关系\",\n REMOVE_RELATION_FULL:\n \"移除{{ leftObjectId }}({{ leftNodes }})和{{ rightObjectId }}({{ rightNodes }})的关系\",\n ROLLBACK_FULL: \"回滚到【{{ rollbackAbstract }}】\",\n ROLLBACK_ALL_FULL: \"回滚全部操作\",\n // category\n PROJECT: \"项目\",\n USER: \"用户组\",\n PERMISSION: \"权限点\",\n BRICK: \"构件\",\n ROUTE: \"路由\",\n TEMPLATE: \"模版\",\n SNIPPET: \"片段\",\n I18N: \"国际化\",\n IMAGE: \"图片\",\n FUNCTION: \"函数\",\n MENU: \"菜单\",\n MENU_ITEM: \"菜单项\",\n WORKFLOW: \"工作流\",\n};\n\nexport const NS = \"bricks/visual-builder/workbench-history-action\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n} & { NODE_ellipsis: string };\n","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取变更历史(从上一次commit开始)\n * @endpoint GET /api/v1/next-builder/workspace/:appId/changes\n */\nexport var WorkspaceApi_getChangeHistory = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (appId, params, options) {\n return (/**! @contract easyops.api.next_builder.workspace.GetChangeHistory@1.0.0 */(yield http.get(\"api/gateway/next_builder.workspace.GetChangeHistory/api/v1/next-builder/workspace/\".concat(appId, \"/changes\"), _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function WorkspaceApi_getChangeHistory(_x, _x2, _x3) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=getChangeHistory.js.map","import { NS, K } from \"./i18n.js\";\nimport { i18n } from \"@next-core/i18n\";\nimport { NextBuilderModels } from \"@next-api-sdk/next-builder-sdk\";\n\nconst actionI18nKeyMap: Record<string, string> = {\n add: `${NS}:${K.ADD}`,\n edit: `${NS}:${K.EDIT}`,\n delete: `${NS}:${K.DELETE}`,\n batch_delete: `${NS}:${K.DELETE}`,\n import: `${NS}:${K.IMPORT}`,\n clone: `${NS}:${K.CLONE}`,\n append_relation: `${NS}:${K.APPEND_RELATION}`,\n update_relation: `${NS}:${K.UPDATE_RELATION}`,\n remove_relation: `${NS}:${K.REMOVE_RELATION}`,\n rollback: `${NS}:${K.ROLLBACK}`,\n rollback_all: `${NS}:${K.ROLLBACK_ALL}`,\n};\n\nconst fullActionI18nKeyMap: Record<string, string> = {\n add: `${NS}:${K.ADD_FULL}`,\n edit: `${NS}:${K.EDIT_FULL}`,\n delete: `${NS}:${K.DELETE_FULL}`,\n batch_delete: `${NS}:${K.DELETE_FULL}`,\n import: `${NS}:${K.IMPORT_FULL}`,\n clone: `${NS}:${K.CLONE_FULL}`,\n append_relation: `${NS}:${K.APPEND_RELATION_FULL}`,\n update_relation: `${NS}:${K.UPDATE_RELATION_FULL}`,\n remove_relation: `${NS}:${K.REMOVE_RELATION_FULL}`,\n rollback: `${NS}:${K.ROLLBACK_FULL}`,\n rollback_all: `${NS}:${K.ROLLBACK_ALL_FULL}`,\n};\n\nconst categoryI18nKeyMap: Record<string, string> = {\n project: `${NS}:${K.PROJECT}`,\n userGroup: `${NS}:${K.USER}`,\n permission: `${NS}:${K.PERMISSION}`,\n brick: `${NS}:${K.BRICK}`,\n route: `${NS}:${K.ROUTE}`,\n template: `${NS}:${K.TEMPLATE}`,\n snippet: `${NS}:${K.SNIPPET}`,\n i18n: `${NS}:${K.I18N}`,\n image: `${NS}:${K.IMAGE}`,\n function: `${NS}:${K.FUNCTION}`,\n menu: `${NS}:${K.MENU}`,\n menuItem: `${NS}:${K.MENU_ITEM}`,\n workflow: `${NS}:${K.WORKFLOW}`,\n};\n\nconst modelI18nKeyMap: Record<string, string> = {\n PROJECT_MICRO_APP: `${NS}:${K.PROJECT}`,\n \"MICRO_APP_USER_GROUP@EASYOPS\": `${NS}:${K.USER}`,\n MICRO_APP_RESOURCE_PERMISSION: `${NS}:${K.PERMISSION}`,\n STORYBOARD_BRICK: `${NS}:${K.BRICK}`,\n STORYBOARD_ROUTE: `${NS}:${K.ROUTE}`,\n STORYBOARD_TEMPLATE: `${NS}:${K.TEMPLATE}`,\n STORYBOARD_SNIPPET: `${NS}:${K.SNIPPET}`,\n STORYBOARD_I18N: `${NS}:${K.I18N}`,\n MICRO_APP_RESOURCE_IMAGE: `${NS}:${K.IMAGE}`,\n STORYBOARD_FUNCTION: `${NS}:${K.FUNCTION}`,\n MICRO_APP_RESOURCE_MENU: `${NS}:${K.MENU}`,\n MICRO_APP_RESOURCE_MENU_ITEM: `${NS}:${K.MENU_ITEM}`,\n \"WORKFLOW_DEF@EASYOPS\": `${NS}:${K.WORKFLOW}`,\n};\n\nexport function translateHistory(\n history: Partial<NextBuilderModels.ModelWorkspaceChangeHistory>\n): Record<string, string> {\n const historyAction =\n history.action === \"rollback\" && !history.rollBackIdInfo\n ? \"rollback_all\"\n : history.action;\n\n const category = i18n.t(\n categoryI18nKeyMap[history.category] ?? history.category\n );\n const action = i18n.t(actionI18nKeyMap[historyAction] ?? historyAction);\n const leftObjectId = i18n.t(\n modelI18nKeyMap[history.abstract?.leftObjectId] ??\n history.abstract?.leftObjectId\n );\n const rightObjectId = i18n.t(\n modelI18nKeyMap[history.abstract?.rightObjectId] ??\n history.abstract?.rightObjectId\n );\n const nodes = translateNodes(\n history.abstract?.nodes,\n history.abstract?.nodesCount\n );\n const leftNodes = translateNodes(\n history.abstract?.leftNodes,\n history.abstract?.leftNodesCount\n );\n const rightNodes = translateNodes(\n history.abstract?.rightNodes,\n history.abstract?.rightNodesCount\n );\n const rollbackAbstract =\n historyAction === \"rollback\"\n ? translateHistory(history.rollBackIdInfo).abstract\n : null;\n\n const abstract = i18n.t(\n fullActionI18nKeyMap[historyAction] ?? historyAction,\n {\n category,\n nodes,\n leftNodes,\n rightNodes,\n nodeChanges: history.abstract?.nodeChanges?.join(\", \"),\n relationChanges: history.abstract?.relationChanges?.join(\", \"),\n leftObjectId,\n rightObjectId,\n rollbackAbstract,\n }\n );\n\n return {\n category,\n action,\n leftObjectId,\n rightObjectId,\n nodes,\n leftNodes,\n rightNodes,\n abstract,\n rollbackAbstract,\n };\n}\n\nfunction translateNodes(nodes: string[] = [], total: number, separator = \", \") {\n return i18n.t(`${NS}:${K.NODE}`, {\n nodes: nodes.join(separator),\n context: total > nodes.length ? \"ellipsis\" : undefined,\n count: total,\n });\n}\n","import React, { useRef, useState } from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { handleHttpError } from \"@next-core/runtime\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport type {\n EoEasyopsAvatar,\n EoEasyopsAvatarProps,\n} from \"@next-bricks/basic/easyops-avatar\";\nimport type {\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping,\n} from \"@next-bricks/basic/popover\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport \"@next-core/theme\";\nimport moment from \"moment\";\nimport styleText from \"./styles.shadow.css\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport {\n WorkspaceApi_getChangeHistory,\n NextBuilderModels,\n} from \"@next-api-sdk/next-builder-sdk\";\nimport { translateHistory } from \"./utils.js\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedEasyopsAvatar = wrapBrick<EoEasyopsAvatar, EoEasyopsAvatarProps>(\n \"eo-easyops-avatar\"\n);\nconst WrappedPopover = wrapBrick<\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping\n>(\"eo-popover\", {\n onVisibleChange: \"visible.change\",\n beforeVisibleChange: \"before.visible.change\",\n});\n\ninterface HistoryData\n extends Partial<NextBuilderModels.ModelWorkspaceChangeHistory> {\n translation: Record<string, string>;\n}\n\nexport interface WorkbenchHistoryActionProps {\n appId: string;\n projectId: string;\n}\n\n/**\n * 项目变更历史\n */\nexport\n@defineElement(\"visual-builder.workbench-history-action\", {\n styleTexts: [styleText],\n})\nclass WorkbenchHistoryAction\n extends ReactNextElement\n implements WorkbenchHistoryActionProps\n{\n @property()\n accessor appId: string;\n\n @property()\n accessor projectId: string;\n\n /**\n * 点击历史项标题触发\n */\n @event({ type: \"history.item.click\" })\n accessor #historyItemClickEvent!: EventEmitter<\n HistoryData & { enableRollback: boolean }\n >;\n #handleHistoryItemClick = (\n data: HistoryData & { enableRollback: boolean }\n ): void => {\n this.#historyItemClickEvent.emit(data);\n };\n\n /**\n * 点击回滚触发\n */\n @event({ type: \"rollback\" })\n accessor #rollbackEvent!: EventEmitter<HistoryData>;\n #handleRollback = (data: HistoryData): void => {\n this.#rollbackEvent.emit(data);\n };\n\n /**\n * 回滚全部\n */\n @event({ type: \"rollback.all\" })\n accessor #rollbackAllEvent!: EventEmitter<void>;\n #handleRollbackAll = (): void => {\n this.#rollbackAllEvent.emit();\n };\n\n render() {\n return (\n <WorkbenchHistoryActionComponent\n appId={this.appId}\n projectId={this.projectId}\n onHistoryItemClick={this.#handleHistoryItemClick}\n onRollback={this.#handleRollback}\n onRollbackAll={this.#handleRollbackAll}\n />\n );\n }\n}\n\ninterface WorkbenchHistoryActionComponentProps\n extends WorkbenchHistoryActionProps {\n onHistoryItemClick?: (\n data: HistoryData & { enableRollback: boolean }\n ) => void;\n onRollback?: (data: HistoryData) => void;\n onRollbackAll?: () => void;\n}\n\nexport function WorkbenchHistoryActionComponent(\n props: WorkbenchHistoryActionComponentProps\n) {\n const { appId, projectId, onHistoryItemClick, onRollback, onRollbackAll } =\n props;\n const { t } = useTranslation(NS);\n\n const [loading, setLoading] = useState(false);\n const [hideLoadMore, setHideLoadMore] = useState(true);\n const [allLoaded, setAllLoaded] = useState(false);\n const [historyList, setHistoryList] = useState<HistoryData[]>([]);\n const lastTs = useRef<string>(\"\");\n\n const handleLoadList = (isFirst?: boolean) => {\n setLoading(true);\n WorkspaceApi_getChangeHistory(appId, { ts: lastTs.current, limit: 20 })\n .then((result) => {\n setHistoryList((pre) => {\n const list = result.list.map((v) => ({\n ...v,\n translation: translateHistory(v),\n }));\n return isFirst ? list : pre.concat(list);\n });\n lastTs.current = result.ts;\n setAllLoaded(result.list.length < 20);\n setHideLoadMore(result.list.length < 20);\n })\n .catch((error) => {\n handleHttpError(error);\n })\n .finally(() => {\n setLoading(false);\n });\n };\n\n const handleBeforeVisibleChange = (e: CustomEvent<boolean>) => {\n if (e.detail) {\n setHideLoadMore(true);\n setAllLoaded(false);\n setHistoryList([]);\n lastTs.current = \"\";\n handleLoadList(true);\n }\n };\n\n return (\n <WrappedPopover\n placement=\"bottom\"\n trigger=\"click\"\n arrow={true}\n arrowColor=\"var(--color-fill-bg-container-4)\"\n beforeVisibleChange={handleBeforeVisibleChange}\n >\n <WrappedButton\n slot=\"anchor\"\n shape=\"circle\"\n className=\"history-action\"\n icon={{\n lib: \"antd\",\n icon: \"history\",\n theme: \"outlined\",\n }}\n />\n <div>\n <div className=\"history-title\">History</div>\n <div className=\"history-list\">\n {historyList.length ? (\n <>\n {historyList.map((v, i) => {\n return (\n <HistoryItem\n key={`${v.uniqueKey}-${v.ts}`}\n data={v}\n enableRollback={i !== 0 && v.action !== \"rollback\"}\n current={i === 0}\n onHistoryItemClick={onHistoryItemClick}\n onRollback={onRollback}\n />\n );\n })}\n {!hideLoadMore && (\n <span className=\"load-more-container\">\n <WrappedLink\n className=\"load-more\"\n disabled={loading}\n onClick={(e) => handleLoadList()}\n >\n {t(K.LOAD_MORE)}\n </WrappedLink>\n </span>\n )}\n {allLoaded && (\n <span className=\"end-container\">\n The End\n <WrappedIcon\n className=\"rollback-all\"\n lib=\"antd\"\n icon=\"rollback\"\n theme=\"outlined\"\n onClick={(e) => onRollbackAll()}\n />\n </span>\n )}\n </>\n ) : (\n <div className=\"empty\">{loading ? t(K.LOADING) : t(K.NO_DATA)}</div>\n )}\n </div>\n {/* 点击历史详情会打开 modal 来展示,这里提供一个 slot,编排将 modal 放置在这里,使其成为 popover 的 children,才能防止用户在操作 modal 过程中意外关闭 popover */}\n <slot />\n </div>\n </WrappedPopover>\n );\n}\n\ninterface HistoryItemProps {\n data: HistoryData;\n enableRollback?: boolean;\n current?: boolean;\n onHistoryItemClick?: (\n data: HistoryData & { enableRollback: boolean }\n ) => void;\n onRollback?: (data: HistoryData) => void;\n}\n\nfunction HistoryItem(props: HistoryItemProps) {\n const { data, enableRollback, current, onHistoryItemClick, onRollback } =\n props;\n\n const ts = moment(Number(data.ts) / 1000000);\n const duration = moment.duration(ts.diff(moment()));\n const humanizedTime =\n duration.days() <= -1\n ? ts.format(\"YYYY-MM-DD HH:mm:ss\")\n : duration.humanize(true, { ss: 0, s: 60, m: 60, h: 24 });\n\n return (\n <div className=\"item-container\">\n <div className=\"item-title\">\n <div\n className=\"title-left\"\n onClick={(e) => onHistoryItemClick({ ...data, enableRollback })}\n >\n <div className=\"topic\" title={data.translation.abstract}>\n {data.translation.abstract}\n </div>\n {current && <div className=\"branch\">(current)</div>}\n </div>\n <div className=\"title-right\">\n {enableRollback && (\n <WrappedIcon\n className=\"rollback\"\n lib=\"antd\"\n icon=\"rollback\"\n theme=\"outlined\"\n onClick={(e) => onRollback(data)}\n />\n )}\n </div>\n </div>\n <div className=\"item-info\">\n <WrappedEasyopsAvatar\n className=\"avatar\"\n nameOrInstanceId={data.user}\n size=\"xs\"\n />\n <div className=\"time\">{humanizedTime}</div>\n <div className=\"operator\">{data.user}</div>\n </div>\n </div>\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, `.custom-scrollbar-container{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.15) rgba(255,255,255,0.03)}.custom-scrollbar-container::-webkit-scrollbar{width:8px;height:8px;background-color:transparent;position:absolute}.custom-scrollbar-container::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,0);border-radius:4px}.custom-scrollbar-container:hover::-webkit-scrollbar-track{background-color:rgba(255,255,255,0.03)}.custom-scrollbar-container:hover::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,0.15)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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, `.workBenchActionList{display:flex;flex-direction:column;width:-webkit-min-content;width:-moz-min-content;width:min-content;height:100%;background-color:#4297ff}:host-context(html[data-theme=\"dark-v2\"]) .workBenchActionList,\n:host-context([data-override-theme=\"dark-v2\"]) .workBenchActionList{background-color:#323237}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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, `.action::part(link){display:flex;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;color:rgba(255,255,255,0.4);position:relative;transition:none}.action.active::part(link)::before{content:\"\";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:white}.action.active::part(link),\n.action::part(link):hover{color:white}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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{display:inline-block}:host([hidden]){display:none}eo-popover::part(popup){width:800px;max-width:60vw;padding:10px;background:var(--color-fill-bg-container-4);border-radius:var(--medius-border-radius);box-shadow:var(--feedback-container-shadow);z-index:1000}.history-title{font-size:var(--title-font-size);font-weight:var(--font-weight-500);color:var(--color-strong-text);margin-bottom:5px}.history-list{max-height:500px;overflow-y:auto}.item-container{padding:10px 0;display:flex;flex-direction:column;gap:5px}.empty{padding:5px 0 10px 0;font-size:14px;color:var(--text-color-secondary);text-align:center}.item-container:not(:last-of-type){border-bottom:1px solid var(--color-border-divider-line)}.item-title{display:flex;align-items:center;justify-content:space-between;gap:5px}.title-left,\n.title-right{display:flex;align-items:center}.title-left{cursor:pointer;overflow:hidden;gap:5px}.topic{font-size:14px;color:var(--text-color-title);font-weight:var(--font-weight-500);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.branch{font-size:14px;color:var(--text-color-secondary)}.rollback{margin-right:5px;font-size:14px;color:var(--text-color-secondary);cursor:pointer}.rollback:hover{color:var(--color-brand)}.item-info{display:flex;align-items:center;gap:5px}.time,\n.operator{font-size:14px;color:var(--text-color-secondary)}.load-more-container{display:block;text-align:center}.end-container{display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;color:var(--color-brand)}.rollback-all{cursor:pointer}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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{display:block;--pane-color:#595959}:host-context(html[data-theme=\"dark-v2\"]),\n:host-context([data-override-theme=\"dark-v2\"]){--pane-color:#ccc}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.pane{display:flex;flex-direction:column;color:var(--pane-color);height:100%}.pane-header{display:flex;align-items:center;cursor:pointer;border-top:1px solid transparent;position:relative}.pane-header:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:#007fd4}:host(:not(:first-child)) .pane-header{border-top-color:rgba(204,204,204,0.2)}.pane-scroll-shadow{display:none;position:absolute;bottom:-3px;left:0;right:0;height:3px;box-shadow:#000000 0 6px 6px -6px inset;z-index:1}.scrolled .pane-scroll-shadow{display:block}.pane-title{display:flex;align-items:center;font-size:13px;line-height:24px;height:25px;min-width:0;flex:1}.title-icon{display:flex;justify-content:center;align-items:center;width:24px;padding-right:2px;line-height:1;flex-shrink:0}.title-label{text-transform:uppercase;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pane-body{flex-grow:1;min-height:0;display:none;overflow:hidden;overflow-y:auto;overflow-y:overlay}:host([active]) .pane-body{display:initial}:host(:not(:hover)) ::slotted([slot=\"actions\"]){display:none}.badge{background-color:rgb(77,77,77);color:rgb(255,255,255);border-radius:11px;height:18px;padding:3px 6px;line-height:13px;margin:0 3px;font-size:12px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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{--sidebar-background:#fff;--title-container-background:#fff;--title-container-color:#595959;display:block;outline-color:rgba(83,89,93,0.5);background-color:var(--sidebar-background);height:100%}:host-context(html[data-theme=\"dark-v2\"]),\n:host-context([data-override-theme=\"dark-v2\"]){--sidebar-background:#181818;--title-container-background:#181818;--title-container-color:rgb(187,187,187);background-color:var(--sidebar-background)}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.sidebar{display:flex;flex-direction:column;height:100%}.title-container{display:flex;padding:0 8px 8px 8px;color:var(--title-container-color);background:var(--title-container-background)}.title-label{font-weight:300;line-height:44px;padding-left:12px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pane-container{flex-grow:1;min-height:0;display:flex;flex-direction:column}::slotted([slot=\"panes\"]){transition:flex 0.2s;min-height:25px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["_WorkbenchPane","WrappedIcon","wrapBrick","defineElement","property","event","createDecorators","_dec","styleTexts","styleText","sharedStyle","_dec2","_dec3","type","Boolean","_dec4","Number","_dec5","_dec6","_A","WeakMap","_B","_C","_D","_activeChangeEvent","_handleActiveChange","_E","_activeFirstActivatedEvent","_handleActiveFirstActivated","WorkbenchPane","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_activeFirstActivatedEvent2","set","_set_activeFirstActivatedEvent2","_get_activeChangeEvent2","_set_activeChangeEvent2","writable","value","_initProto","_init_titleLabel","_init_active","_init_badge","_init_activeChangeEvent","active","this","_classPrivateFieldGet","emit","_init_activeFirstActivatedEvent","titleLabel","v","_classPrivateFieldSet","badge","render","React","WorkbenchPaneComponent","onActiveChange","onFirstActivated","_set_activeChangeEvent","_get_activeChangeEvent","_set_activeFirstActivatedEvent","_get_activeFirstActivatedEvent","_ref","internalActive","setInternalActive","useState","activatedOnce","setActivatedOnce","useEffect","handleClick","useCallback","previousActive","scrollBodyRef","useRef","scrolled","setScrolled","handleScroll","useMemo","debounceByAnimationFrame","fn","current","scrollTop","func","_len","length","params","Array","_key","frame","cancel","requestAnimationFrame","cancelAnimationFrame","className","classNames","tabIndex","onClick","lib","theme","icon","name","onScroll","ref","style","padding","color","_class","e","c","_initClass","_applyDecs","o","_","has","_checkInRHS","_WorkbenchSidebar","_getPaneSlot","_reflowPanes","_onPanesSlotChange","WorkbenchSidebar","_this$shadowRoot","shadowRoot","querySelector","panes","call","assignedNodes","pane","_pane$activeFlex","flex","String","activeFlex","target","addEventListener","_defineProperty","panesSlots","WorkbenchSidebarComponent","refCallback","_WorkbenchAction","WrapLink","attribute","WorkbenchAction","_init_icon","_init_to","_init_href","_init_target","to","href","WorkbenchActionComponent","url","initMenuItemAndMatchCurrentPathKeys","menuItems","pathname","search","parentCursor","selectedKeys","openedKeys","matchedKeys","cursor","forEach","item","key","concat","isGroup","groupAsSubMenu","isSubMenu","tmp","items","push","defaultExpanded","parsePath","escapedPath","replace","match","matchPath","path","exact","isArray","activeIncludes","include","_parseInclude","parseInclude","hasSearch","includes","getMatchOfSearch","activeExcludes","_include","activeMatchSearch","matchMenuItem","keyPath","split","i","slice","join","currentSearch","toSearch","URLSearchParams","entries","_WorkbenchActionList","WrapperWorkbenchAction","currentAppId","WorkbenchActionList","_init_appId","_init_menu","appId","menu","WorkbenchActionListComponent","historyMap","Map","_menu$menuItems2","history","getHistory","activeIndex","setActiveIndex","location","setLocation","unlisten","listen","clear","_menu$menuItems","map","index","isSimpleMenuItem","handleLinkClick","filter","defaultGetCollapsedId","node","_WorkbenchTreeElement","treeStyleText","actionStyleText","_dec7","_dec8","_dec9","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_dec21","_dec22","_dec23","_dec24","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_R","_S","_actionClickEvent","_handleActionClick","_T","_nodeClickEvent","_nodeClickFactory","_U","_nodeDropEvent","_handleNodeDrop","_V","_nodeContextMenuEvent","_contextMenuFactory","_W","_nodeToggleEvent","_handleNodeToggle","WorkbenchTreeElement","_get_nodeToggleEvent2","_set_nodeToggleEvent2","_get_nodeContextMenuEvent2","_set_nodeContextMenuEvent2","_get_nodeDropEvent2","_set_nodeDropEvent2","_get_nodeClickEvent2","_set_nodeClickEvent2","_get_actionClickEvent2","_set_actionClickEvent2","_init_nodes","_init_actions","_init_actionsHidden","_init_placeholder","_init_isTransformName","_init_searchPlaceholder","_init_noSearch","_init_activeKey","_init_showMatchedNodeOnly","_init_matchNodeDataFields","_init_fixedActionsFor","_init_collapsible","_init_collapsedNodes","_init_allowDrag","_init_allowDragToRoot","_init_allowDragToInside","_init_nodeKey","_init_skipNotify","_init_actionClickEvent","detail","_init_nodeClickEvent","data","_init_nodeDropEvent","_init_nodeContextMenuEvent","preventDefault","x","clientX","y","clientY","_init_nodeToggleEvent","nodeId","collapsed","nodes","actions","actionsHidden","placeholder","isTransformName","searchPlaceholder","noSearch","activeKey","showMatchedNodeOnly","matchNodeDataFields","fixedActionsFor","collapsible","collapsedNodes","allowDrag","allowDragToRoot","allowDragToInside","nodeKey","skipNotify","WorkbenchActionsContext","Provider","onActionClick","WorkbenchTreeContext","basePaddingLeft","getCollapsedId","onNodeToggle","clickFactory","contextMenuFactory","matchNode","lowerTrimmedQuery","_this$matchNodeDataFi","deepMatch","pick","WorkbenchTree","dropEmit","_set_actionClickEvent","_get_actionClickEvent","_set_nodeClickEvent","_get_nodeClickEvent","_set_nodeDropEvent","_get_nodeDropEvent","_set_nodeContextMenuEvent","_get_nodeContextMenuEvent","_set_nodeToggleEvent","_get_nodeToggleEvent","customElements","define","createProviderClass","previewFromOrigin","options","connect","K","NS","WorkspaceApi_getChangeHistory","http","_x","_x2","_x3","apply","actionI18nKeyMap","add","ADD","edit","EDIT","delete","DELETE","batch_delete","import","IMPORT","clone","CLONE","append_relation","APPEND_RELATION","update_relation","UPDATE_RELATION","remove_relation","REMOVE_RELATION","rollback","ROLLBACK","rollback_all","ROLLBACK_ALL","fullActionI18nKeyMap","ADD_FULL","EDIT_FULL","DELETE_FULL","IMPORT_FULL","CLONE_FULL","APPEND_RELATION_FULL","UPDATE_RELATION_FULL","REMOVE_RELATION_FULL","ROLLBACK_FULL","ROLLBACK_ALL_FULL","categoryI18nKeyMap","project","PROJECT","userGroup","USER","permission","PERMISSION","brick","BRICK","route","ROUTE","template","TEMPLATE","snippet","SNIPPET","i18n","I18N","image","IMAGE","function","FUNCTION","MENU","menuItem","MENU_ITEM","workflow","WORKFLOW","modelI18nKeyMap","PROJECT_MICRO_APP","MICRO_APP_RESOURCE_PERMISSION","STORYBOARD_BRICK","STORYBOARD_ROUTE","STORYBOARD_TEMPLATE","STORYBOARD_SNIPPET","STORYBOARD_I18N","MICRO_APP_RESOURCE_IMAGE","STORYBOARD_FUNCTION","MICRO_APP_RESOURCE_MENU","MICRO_APP_RESOURCE_MENU_ITEM","translateHistory","_categoryI18nKeyMap$h","_actionI18nKeyMap$his","_modelI18nKeyMap$hist","_history$abstract","_history$abstract2","_modelI18nKeyMap$hist2","_history$abstract3","_history$abstract4","_history$abstract5","_history$abstract6","_history$abstract7","_history$abstract8","_history$abstract9","_history$abstract10","_fullActionI18nKeyMap","_history$abstract11","_history$abstract12","historyAction","action","rollBackIdInfo","category","t","leftObjectId","abstract","rightObjectId","translateNodes","nodesCount","leftNodes","leftNodesCount","rightNodes","rightNodesCount","rollbackAbstract","nodeChanges","relationChanges","undefined","total","separator","NODE","context","count","initializeReactI18n","en","LOAD_MORE","LOADING","NO_DATA","NODE_ellipsis","zh","_WorkbenchHistoryActi","WrappedButton","WrappedLink","WrappedEasyopsAvatar","WrappedPopover","onVisibleChange","beforeVisibleChange","_historyItemClickEvent","_handleHistoryItemClick","_rollbackEvent","_handleRollback","_rollbackAllEvent","_handleRollbackAll","WorkbenchHistoryAction","_get_rollbackAllEvent2","_set_rollbackAllEvent2","_get_rollbackEvent2","_set_rollbackEvent2","_get_historyItemClickEvent2","_set_historyItemClickEvent2","_init_projectId","_init_historyItemClickEvent","_init_rollbackEvent","_init_rollbackAllEvent","projectId","WorkbenchHistoryActionComponent","onHistoryItemClick","onRollback","onRollbackAll","_set_historyItemClickEvent","_get_historyItemClickEvent","_set_rollbackEvent","_get_rollbackEvent","_set_rollbackAllEvent","_get_rollbackAllEvent","props","useTranslation","loading","setLoading","hideLoadMore","setHideLoadMore","allLoaded","setAllLoaded","historyList","setHistoryList","lastTs","handleLoadList","isFirst","ts","limit","then","result","pre","list","_objectSpread","translation","catch","error","handleHttpError","finally","placement","trigger","arrow","arrowColor","slot","shape","HistoryItem","uniqueKey","enableRollback","disabled","moment","duration","diff","humanizedTime","days","format","humanize","ss","s","m","h","title","nameOrInstanceId","user","size","___CSS_LOADER_EXPORT___","module","id","toString"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/4231.c893788e.js","mappings":"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","sources":["webpack:///./src/workbench-pane/index.tsx","webpack:///../../src/debounceByAnimationFrame.ts","webpack:///./src/workbench-sidebar/index.tsx","webpack:///./src/workbench-action/index.tsx","webpack:///../../src/menu.ts","webpack:///./src/workbench-action-list/index.tsx","webpack:///./src/workbench-tree/index.tsx","webpack:///./src/data-providers/inject-preview-agent.ts","webpack:///./src/workbench-history-action/i18n.ts","webpack:///../../node_modules/@next-api-sdk/next-builder-sdk/dist/esm/api/next_builder/workspace/getChangeHistory.js","webpack:///./src/workbench-history-action/utils.ts","webpack:///./src/workbench-history-action/index.tsx","webpack:///./src/shared/scrollbar.shadow.css","webpack:///./src/workbench-action-list/workbench-action-list.shadow.css","webpack:///./src/workbench-action/workbench-action.shadow.css","webpack:///./src/workbench-history-action/styles.shadow.css","webpack:///./src/workbench-pane/workbench-pane.shadow.css","webpack:///./src/workbench-sidebar/workbench-sidebar.shadow.css"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useState,\n useCallback,\n useMemo,\n} from \"react\";\nimport { createDecorators, EventEmitter } from \"@next-core/element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./workbench-pane.shadow.css\";\nimport sharedStyle from \"../shared/scrollbar.shadow.css\";\nimport { debounceByAnimationFrame } from \"@next-shared/general/debounceByAnimationFrame\";\nimport classNames from \"classnames\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\n \"icons.general-icon\"\n);\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface WorkbenchPaneProps {\n titleLabel?: string;\n active?: boolean;\n badge?: number;\n onActiveChange?(active: boolean): void;\n onFirstActivated?(): void;\n}\n\n@defineElement(\"visual-builder.workbench-pane\", {\n styleTexts: [styleText, sharedStyle],\n})\nclass WorkbenchPane extends ReactNextElement {\n @property() accessor titleLabel: string | undefined;\n\n @property({ type: Boolean }) accessor active: boolean | undefined;\n\n @property({ type: Number }) accessor badge: number | undefined;\n\n @event({ type: \"active.change\" })\n accessor #activeChangeEvent: EventEmitter<boolean>;\n #handleActiveChange = (active: boolean): void => {\n if (active !== this.active) {\n this.active = active;\n this.#activeChangeEvent.emit(active);\n }\n };\n\n @event({ type: \"active.firstActivated\" })\n accessor #activeFirstActivatedEvent: EventEmitter<void>;\n\n #handleActiveFirstActivated = (): void => {\n this.#activeFirstActivatedEvent.emit();\n };\n\n render() {\n return (\n <WorkbenchPaneComponent\n titleLabel={this.titleLabel}\n active={this.active}\n badge={this.badge}\n onActiveChange={this.#handleActiveChange}\n onFirstActivated={this.#handleActiveFirstActivated}\n />\n );\n }\n}\n\nfunction WorkbenchPaneComponent({\n titleLabel,\n active,\n badge,\n onActiveChange,\n onFirstActivated,\n}: WorkbenchPaneProps) {\n const [internalActive, setInternalActive] = useState<boolean>(active);\n const [activatedOnce, setActivatedOnce] = useState(false);\n\n useEffect(() => {\n setInternalActive(active);\n }, [active]);\n\n useEffect(() => {\n onActiveChange?.(internalActive);\n }, [internalActive, onActiveChange]);\n\n const handleClick = useCallback(() => {\n setInternalActive((previousActive) => !previousActive);\n if (!activatedOnce && !internalActive) {\n setActivatedOnce(true);\n onFirstActivated?.();\n }\n }, [activatedOnce, internalActive, onFirstActivated]);\n\n const scrollBodyRef = useRef<HTMLDivElement>();\n\n const [scrolled, setScrolled] = useState(false);\n\n const handleScroll = useMemo(\n () =>\n debounceByAnimationFrame((): void => {\n setScrolled(scrollBodyRef.current.scrollTop > 0);\n }),\n []\n );\n\n return (\n <div\n className={classNames(\"pane\", {\n scrolled,\n })}\n >\n <div className=\"pane-header\" tabIndex={0} onClick={handleClick}>\n <div className=\"pane-title\">\n <span className=\"title-icon\">\n {internalActive ? (\n <WrappedIcon lib=\"antd\" theme=\"outlined\" icon=\"down\" />\n ) : (\n <WrappedIcon lib=\"antd\" theme=\"outlined\" icon=\"right\" />\n )}\n </span>\n <div className=\"title-label\">{titleLabel}</div>\n <slot name=\"title\" />\n </div>\n <slot name=\"actions\" />\n {badge && <div className=\"badge\">{badge}</div>}\n <div className=\"pane-scroll-shadow\"></div>\n </div>\n <div\n className=\"pane-body custom-scrollbar-container\"\n onScroll={handleScroll}\n ref={scrollBodyRef}\n >\n <slot>\n <div\n style={{\n padding: \"10px 20px\",\n color: \"var(--text-color-secondary)\",\n }}\n >\n No content\n </div>\n </slot>\n </div>\n </div>\n );\n}\n\nexport { WorkbenchPane };\n","export type SimpleFunction<P extends unknown[] = unknown[], R = unknown> = (\n ...args: P\n) => R;\n\n// The debounce function receives our function as a parameter\nexport function debounceByAnimationFrame<P extends unknown[]>(\n fn: SimpleFunction<P, void>\n): SimpleFunction<P, void> & { cancel: () => void } {\n // This holds the requestAnimationFrame reference, so we can cancel it if we wish\n let frame: number;\n\n const cancel = () => cancelAnimationFrame(frame);\n\n // The debounce function returns a new function that can receive a variable number of arguments\n const func = (...params: P) => {\n // If the frame variable has been defined, clear it now, and queue for next frame\n if (frame) {\n cancel();\n }\n\n // Queue our function call for the next frame\n frame = requestAnimationFrame(() => {\n // Call our function and pass any params we received\n fn(...params);\n });\n };\n\n func.cancel = cancel;\n\n return func;\n}\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport styleText from \"./workbench-sidebar.shadow.css\";\n\ninterface WorkbenchSidebarProps {\n titleLabel: string;\n refCallback: (element: HTMLDivElement) => void;\n}\ninterface WorkbenchSidebarChildElement extends HTMLElement {\n active?: boolean;\n activeFlex?: string;\n}\n\nconst { defineElement, property } = createDecorators();\n\n@defineElement(\"visual-builder.workbench-sidebar\", {\n styleTexts: [styleText],\n})\nclass WorkbenchSidebar extends ReactNextElement {\n @property() accessor titleLabel: string | undefined;\n\n #getPaneSlot = (): HTMLSlotElement => {\n return this.shadowRoot?.querySelector(\"slot:not([name])\");\n };\n\n #reflowPanes = (): void => {\n const slot = this.#getPaneSlot();\n const panes = slot.assignedNodes() as WorkbenchSidebarChildElement[];\n\n for (const pane of panes) {\n if (pane.active) {\n pane.style.flex = String(pane.activeFlex ?? \"1\");\n } else {\n pane.style.flex = \"initial\";\n }\n }\n };\n\n #onPanesSlotChange = (event: Event): void => {\n const slot = event.target as HTMLSlotElement;\n const panes = slot.assignedNodes();\n for (const pane of panes) {\n pane.addEventListener(\"active.change\", this.#reflowPanes);\n }\n };\n\n refCallback = () => {\n this.#reflowPanes();\n const panesSlots = this.#getPaneSlot();\n\n panesSlots?.addEventListener(\"slotchange\", (e) => {\n this.#onPanesSlotChange(e);\n });\n };\n\n render() {\n return (\n <WorkbenchSidebarComponent\n titleLabel={this.titleLabel}\n refCallback={this.refCallback}\n />\n );\n }\n}\n\nfunction WorkbenchSidebarComponent({\n titleLabel,\n refCallback,\n}: WorkbenchSidebarProps) {\n return (\n <div className=\"sidebar\" ref={refCallback}>\n <div className=\"title-container\">\n <div className=\"title-label\">{titleLabel}</div>\n <slot name=\"titleToolbar\" />\n </div>\n <div className=\"pane-container\">\n <slot />\n </div>\n </div>\n );\n}\n\nexport { WorkbenchSidebar };\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./workbench-action.shadow.css\";\nimport classNames from \"classnames\";\n\nconst { defineElement, property } = createDecorators();\n\nconst WrapLink = wrapBrick<Link, LinkProps>(\"basic.general-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\n \"icons.general-icon\"\n);\n\nexport interface WorkbenchActionProps {\n icon?: GeneralIconProps;\n to?: string;\n target?: string;\n active?: boolean;\n href?: string;\n}\n\n@defineElement(\"visual-builder.workbench-action\", {\n styleTexts: [styleText],\n})\nclass WorkbenchAction extends ReactNextElement {\n @property({\n attribute: false,\n })\n accessor icon: GeneralIconProps | undefined;\n\n @property() accessor to: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor active: boolean | undefined;\n\n @property() accessor href: string | undefined;\n\n @property() accessor target: string | undefined;\n\n render(): React.ReactNode {\n return (\n <WorkbenchActionComponent\n to={this.to}\n icon={this.icon}\n active={this.active}\n href={this.href}\n target={this.target}\n />\n );\n }\n}\n\nfunction WorkbenchActionComponent({\n icon,\n to,\n active,\n href,\n target,\n}: WorkbenchActionProps) {\n return (\n <WrapLink\n className={classNames(\"action\", { active })}\n url={to}\n href={href}\n target={target as LinkProps[\"target\"]}\n >\n <WrappedIcon {...icon} />\n </WrapLink>\n );\n}\n\nexport { WorkbenchAction };\n","import { Location, parsePath } from \"history\";\nimport { matchPath } from \"@next-core/runtime\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n SidebarMenuGroup,\n} from \"./types.js\";\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuItem,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function initMenuItemAndMatchCurrentPathKeys(\n menuItems: SidebarMenuItem[],\n pathname: string,\n search: string,\n parentCursor: string\n): {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n} {\n const selectedKeys: string[] = [];\n const openedKeys: string[] = [];\n const matchedKeys: string[] = [];\n\n let cursor = 0;\n menuItems.forEach((item) => {\n // key的格式最终为0,1,2,0.1,0.2,0.1.1,0.1.2\n item.key = parentCursor === \"\" ? `${cursor}` : `${parentCursor}.${cursor}`;\n if (isGroup(item) || isSubMenu(item)) {\n const tmp = initMenuItemAndMatchCurrentPathKeys(\n item.items,\n pathname,\n search,\n item.key\n );\n selectedKeys.push(...tmp.selectedKeys);\n if (tmp.selectedKeys.length || item.defaultExpanded) {\n openedKeys.push(item.key);\n }\n openedKeys.push(...tmp.openedKeys);\n matchedKeys.push(...tmp.matchedKeys);\n } else {\n if (matchMenuItem(item, pathname, search)) {\n selectedKeys.push(String(item.key));\n\n const keyPath = item.key.split(\".\");\n\n for (let i = 0; i < keyPath.length; i++) {\n matchedKeys.push(keyPath.slice(0, i + 1).join(\".\"));\n }\n }\n }\n cursor += 1;\n });\n if (selectedKeys.length && parentCursor !== \"\") {\n openedKeys.push(parentCursor);\n }\n return {\n selectedKeys: selectedKeys,\n openedKeys: openedKeys,\n matchedKeys: matchedKeys,\n };\n}\n\nfunction getMatchOfSearch(\n currentSearch: string,\n toSearch: string | undefined\n): boolean {\n const current = new URLSearchParams(currentSearch);\n const to = new URLSearchParams(toSearch);\n for (const [key, value] of to.entries()) {\n if (current.get(key) !== value) {\n return false;\n }\n }\n return true;\n}\n\nexport function matchMenuItem(\n item: SidebarMenuSimpleItem,\n pathname: string,\n search: string\n): boolean {\n if (!item.to) return false;\n const to = typeof item.to === \"object\" ? item.to : parsePath(item.to);\n\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath = to.pathname!.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n let match = !!matchPath(pathname, {\n path: escapedPath,\n exact: item.exact,\n });\n\n if (!match && Array.isArray(item.activeIncludes)) {\n for (const include of item.activeIncludes) {\n let parseInclude: Location | undefined;\n const hasSearch = include.includes(\"?\");\n\n if (hasSearch) {\n parseInclude = parsePath(include);\n }\n match = !!matchPath(pathname, {\n path: hasSearch ? parseInclude!.pathname : include,\n exact: true,\n });\n\n if (match && parseInclude?.search) {\n match = getMatchOfSearch(search, parseInclude.search);\n }\n\n if (match) {\n break;\n }\n }\n }\n\n if (match && Array.isArray(item.activeExcludes)) {\n for (const include of item.activeExcludes) {\n match = !matchPath(pathname, {\n path: include,\n exact: true,\n });\n if (!match) {\n break;\n }\n }\n }\n\n if (match && (item as any).activeMatchSearch) {\n match = getMatchOfSearch(search, to.search);\n }\n\n return match;\n}\n","import React, { useState, useEffect } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport {\n WorkbenchAction,\n WorkbenchActionProps,\n} from \"../workbench-action/index.js\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n} from \"@next-shared/general/types\";\nimport { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport styleText from \"./workbench-action-list.shadow.css\";\n\nexport interface SidebarMenu {\n title?: string;\n icon?: GeneralIconProps;\n menuItems?: SidebarMenuItem[];\n}\n\nconst WrapperWorkbenchAction = wrapBrick<WorkbenchAction, WorkbenchActionProps>(\n \"visual-builder.workbench-action\"\n);\n\nconst { defineElement, property } = createDecorators();\n\ninterface WorkbenchActionListProps {\n appId?: string;\n menu: SidebarMenu;\n}\n\n@defineElement(\"visual-builder.workbench-action-list\", {\n styleTexts: [styleText],\n})\nclass WorkbenchActionList extends ReactNextElement {\n @property() accessor appId: string | undefined;\n\n @property({\n attribute: false,\n })\n accessor menu!: SidebarMenu;\n\n render(): React.ReactNode {\n return <WorkbenchActionListComponent appId={this.appId} menu={this.menu} />;\n }\n}\n\nlet currentAppId: string;\nconst historyMap = new Map<number, string>();\n\nexport function WorkbenchActionListComponent({\n appId,\n menu,\n}: WorkbenchActionListProps) {\n const history = getHistory();\n const [activeIndex, setActiveIndex] = useState<number>();\n const [location, setLocation] = useState(history.location);\n\n useEffect(() => {\n const unlisten = history.listen((location) => {\n setLocation(location);\n });\n return unlisten;\n }, [history]);\n\n useEffect(() => {\n if (!currentAppId) currentAppId = appId;\n if (currentAppId !== appId) {\n historyMap.clear();\n currentAppId = appId;\n }\n }, [appId]);\n\n useEffect(() => {\n const { pathname, search } = location;\n\n const { selectedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n setActiveIndex(Number(selectedKeys[0]));\n }, [menu, location]);\n\n const handleLinkClick = (item: SidebarMenuItem): void => {\n if ((item as SidebarMenuSimpleItem).href) return;\n historyMap.set(activeIndex, `${location.pathname}${location.search}`);\n };\n\n const isSimpleMenuItem = (\n item: SidebarMenuItem\n ): item is SidebarMenuSimpleItem => {\n return item.type === \"default\" || !item.type;\n };\n\n return (\n <div className=\"workBenchActionList\">\n {menu?.menuItems\n ?.map((item, index) => {\n if (isSimpleMenuItem(item)) {\n let url = item.to;\n if (activeIndex !== index && historyMap.has(index)) {\n url = historyMap.get(index);\n }\n return (\n <WrapperWorkbenchAction\n key={index}\n icon={item.icon}\n to={url as string}\n href={item.href}\n target={item.target}\n active={activeIndex === index}\n onClick={() => handleLinkClick(item)}\n />\n );\n }\n })\n .filter(Boolean)}\n </div>\n );\n}\n\nexport { WorkbenchActionList };\n","import React from \"react\";\nimport { pick } from \"lodash\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type {\n ActionClickDetail,\n WorkbenchNodeData,\n WorkbenchTreeAction,\n} from \"../interfaces.js\";\nimport { WorkbenchActionsContext } from \"../shared/workbench/WorkbenchActionsContext.js\";\nimport {\n WorkbenchTree,\n dropEmitProps,\n} from \"../shared/workbench/WorkbenchTree.js\";\nimport { WorkbenchTreeContext } from \"../shared/workbench/WorkbenchTreeContext.js\";\nimport { deepMatch } from \"../utils/deepMatch.js\";\nimport treeStyleText from \"./WorkbenchTree.shadow.css\";\nimport actionStyleText from \"../shared/workbench-mini-action-bar/WorkbenchMiniActionBar.shadow.css\";\nimport \"@next-core/theme\";\n\nfunction defaultGetCollapsedId(node: WorkbenchNodeData): string | number {\n return node.key;\n}\n\nconst { defineElement, property, event } = createDecorators();\n\n/**\n * @id next-builder.workbench-tree\n * @author steve\n * @history\n * 1.x.0: 新增构件 `next-builder.workbench-tree`\n * @docKind brick\n * @noInheritDoc\n */\n@defineElement(\"visual-builder.workbench-tree\", {\n styleTexts: [treeStyleText, actionStyleText],\n})\nclass WorkbenchTreeElement extends ReactNextElement {\n @property({ attribute: false })\n accessor nodes: WorkbenchNodeData[];\n\n @property({ attribute: false })\n accessor actions: WorkbenchTreeAction[];\n\n @property({ type: Boolean })\n accessor actionsHidden: boolean;\n\n @property()\n accessor placeholder: string;\n\n @property({ type: Boolean })\n accessor isTransformName: boolean;\n\n @property()\n accessor searchPlaceholder: string;\n\n @property({ type: Boolean })\n accessor noSearch: boolean;\n\n @property({ attribute: false })\n accessor activeKey: string | number;\n\n @property({ type: Boolean })\n accessor showMatchedNodeOnly: boolean;\n\n @property({ attribute: false })\n accessor matchNodeDataFields: string | string[];\n\n @property({ attribute: false })\n accessor fixedActionsFor: Record<string, unknown> | Record<string, unknown>[];\n\n @property({ type: Boolean })\n accessor collapsible: boolean;\n\n @property({ attribute: false })\n accessor collapsedNodes: string[];\n\n @property({ type: Boolean })\n accessor allowDrag: boolean;\n\n @property({ type: Boolean })\n accessor allowDragToRoot: boolean;\n\n @property({ type: Boolean })\n accessor allowDragToInside: boolean;\n\n @property({ type: String })\n accessor nodeKey: string;\n\n @property({ type: Boolean })\n accessor skipNotify: boolean;\n\n @event({ type: \"action.click\" })\n accessor #actionClickEvent!: EventEmitter<ActionClickDetail>;\n\n #handleActionClick = (detail: ActionClickDetail): void => {\n this.#actionClickEvent.emit(detail);\n };\n\n @event({ type: \"node.click\" })\n accessor #nodeClickEvent: EventEmitter<unknown>;\n\n #nodeClickFactory = (node: WorkbenchNodeData) => () => {\n this.#nodeClickEvent.emit(node.data);\n };\n\n @event({ type: \"node.drop\" })\n accessor #nodeDropEvent: EventEmitter<any>;\n\n #handleNodeDrop = (detail: dropEmitProps): void => {\n this.#nodeDropEvent.emit(detail);\n };\n\n @event({ type: \"context.menu\" })\n accessor #nodeContextMenuEvent: EventEmitter<unknown>;\n\n #contextMenuFactory = (node: WorkbenchNodeData) => (e: React.MouseEvent) => {\n e.preventDefault();\n this.#nodeContextMenuEvent.emit({\n active: true,\n node: node?.data,\n x: e.clientX,\n y: e.clientY,\n });\n };\n\n @event({ type: \"node.toggle\" })\n accessor #nodeToggleEvent: EventEmitter<{\n nodeId: string;\n collapsed: boolean;\n }>;\n\n #handleNodeToggle = (nodeId: string, collapsed: boolean): void => {\n this.#nodeToggleEvent.emit({ nodeId, collapsed });\n };\n\n render() {\n return (\n <WorkbenchActionsContext.Provider\n value={{\n actions: this.actions,\n actionsHidden: this.actionsHidden,\n onActionClick: this.#handleActionClick,\n }}\n >\n <WorkbenchTreeContext.Provider\n value={{\n activeKey: this.activeKey,\n basePaddingLeft: 5,\n showMatchedNodeOnly: this.showMatchedNodeOnly,\n isTransformName: this.isTransformName,\n fixedActionsFor: this.fixedActionsFor,\n nodeKey: this.nodeKey,\n collapsible: this.collapsible,\n collapsedNodes: this.collapsedNodes,\n getCollapsedId: defaultGetCollapsedId,\n onNodeToggle: this.#handleNodeToggle,\n skipNotify: this.skipNotify,\n clickFactory: this.#nodeClickFactory,\n contextMenuFactory: this.#contextMenuFactory,\n matchNode: (node, lowerTrimmedQuery) =>\n deepMatch(node.name, lowerTrimmedQuery) ||\n (!!this.matchNodeDataFields?.length &&\n deepMatch(\n this.matchNodeDataFields === \"*\"\n ? node.data\n : pick(node.data, this.matchNodeDataFields),\n lowerTrimmedQuery\n )),\n }}\n >\n <WorkbenchTree\n nodes={this.nodes}\n placeholder={this.placeholder}\n searchPlaceholder={this.searchPlaceholder}\n noSearch={this.noSearch}\n dropEmit={this.#handleNodeDrop}\n allowDrag={this.allowDrag}\n allowDragToInside={this.allowDragToInside}\n allowDragToRoot={this.allowDragToRoot}\n />\n </WorkbenchTreeContext.Provider>\n </WorkbenchActionsContext.Provider>\n );\n }\n}\n\nexport { WorkbenchTreeElement };\n","// Merge bricks\n// istanbul ignore file\nimport { createProviderClass } from \"@next-core/utils/general\";\nimport connect from \"./preview/connect.js\";\nimport type { PreviewStartOptions } from \"./preview/interfaces.js\";\n// Todo: remove unnecessary provider below\nimport \"./collect-used-contracts.js\";\n\nexport function injectPreviewAgent(\n previewFromOrigin: string,\n options: PreviewStartOptions\n): Promise<unknown> {\n return connect(previewFromOrigin, options);\n}\n\ncustomElements.define(\n \"visual-builder.inject-preview-agent\",\n createProviderClass(injectPreviewAgent)\n);\n","export enum K {\n LOAD_MORE = \"LOAD_MORE\",\n LOADING = \"LOADING\",\n NO_DATA = \"NO_DATA\",\n NODE = \"NODE\",\n // action\n ADD = \"ADD\",\n EDIT = \"EDIT\",\n DELETE = \"DELETE\",\n IMPORT = \"IMPORT\",\n CLONE = \"CLONE\",\n APPEND_RELATION = \"APPEND_RELATION\",\n UPDATE_RELATION = \"UPDATE_RELATION\",\n REMOVE_RELATION = \"REMOVE_RELATION\",\n ROLLBACK = \"ROLLBACK\",\n ROLLBACK_ALL = \"ROLLBACK_ALL\",\n ADD_FULL = \"ADD_FULL\",\n EDIT_FULL = \"EDIT_FULL\",\n DELETE_FULL = \"DELETE_FULL\",\n IMPORT_FULL = \"IMPORT_FULL\",\n CLONE_FULL = \"CLONE_FULL\",\n APPEND_RELATION_FULL = \"APPEND_RELATION_FULL\",\n UPDATE_RELATION_FULL = \"UPDATE_RELATION_FULL\",\n REMOVE_RELATION_FULL = \"REMOVE_RELATION_FULL\",\n ROLLBACK_FULL = \"ROLLBACK_FULL\",\n ROLLBACK_ALL_FULL = \"ROLLBACK_ALL_FULL\",\n // category\n PROJECT = \"PROJECT\",\n USER = \"USER\",\n PERMISSION = \"PERMISSION\",\n BRICK = \"BRICK\",\n ROUTE = \"ROUTE\",\n TEMPLATE = \"TEMPLATE\",\n SNIPPET = \"SNIPPET\",\n I18N = \"I18N\",\n IMAGE = \"IMAGE\",\n FUNCTION = \"FUNCTION\",\n MENU = \"MENU\",\n MENU_ITEM = \"MENU_ITEM\",\n WORKFLOW = \"WORKFLOW\",\n}\n\nconst en: Locale = {\n LOAD_MORE: \"Load more\",\n LOADING: \"Loading\",\n NO_DATA: \"No data\",\n NODE: \"{{ nodes }}\",\n NODE_ellipsis: \"{{ nodes }} etc., a total of {{ count }} items\",\n // action\n ADD: \"Add node\",\n EDIT: \"Edit node\",\n DELETE: \"Delete node\",\n IMPORT: \"Batch import node\",\n CLONE: \"Clone node\",\n APPEND_RELATION: \"Append Relation\",\n UPDATE_RELATION: \"Update Relation\",\n REMOVE_RELATION: \"Remove Relation\",\n ROLLBACK: \"Rollback\",\n ROLLBACK_ALL: \"Rollback all operations\",\n ADD_FULL: \"Add {{ category }} ({{ nodes }})\",\n EDIT_FULL: \"Edit {{ nodeChanges }} of {{ category }} ({{ nodes }})\",\n DELETE_FULL: \"Delete {{ category }} ({{ nodes }})\",\n IMPORT_FULL: \"Batch Import {{ category }} ({{ nodes }})\",\n CLONE_FULL: \"Clone {{ category }} ({{ nodes }})\",\n APPEND_RELATION_FULL:\n \"Append the relation between {{ leftObjectId }} ({{ leftNodes }}) and {{ rightObjectId }} ({{ rightNodes }})\",\n UPDATE_RELATION_FULL:\n \"Update the relation between {{ leftObjectId }} ({{ leftNodes }}) and {{ rightObjectId }} ({{ rightNodes }})\",\n REMOVE_RELATION_FULL:\n \"Remove the relation between {{ leftObjectId }} ({{ leftNodes }}) and {{ rightObjectId }} ({{ rightNodes }})\",\n ROLLBACK_FULL: \"Rollback to [{{ rollbackAbstract }}]\",\n ROLLBACK_ALL_FULL: \"Rollback all operations\",\n // category\n PROJECT: \"Project\",\n USER: \"User Group\",\n PERMISSION: \"Permission\",\n BRICK: \"Brick\",\n ROUTE: \"Route\",\n TEMPLATE: \"Template\",\n SNIPPET: \"Snippet\",\n I18N: \"I18N\",\n IMAGE: \"Image\",\n FUNCTION: \"Function\",\n MENU: \"Menu\",\n MENU_ITEM: \"Menu item\",\n WORKFLOW: \"Workflow\",\n};\n\nconst zh: Locale = {\n LOAD_MORE: \"加载更多\",\n LOADING: \"加载中\",\n NO_DATA: \"没有数据\",\n NODE: \"{{ nodes }}\",\n NODE_ellipsis: \"{{ nodes }}等共{{ count }}项\",\n // action\n ADD: \"新增节点\",\n EDIT: \"编辑节点\",\n DELETE: \"删除节点\",\n IMPORT: \"批量导入节点\",\n CLONE: \"克隆节点\",\n APPEND_RELATION: \"添加关系\",\n UPDATE_RELATION: \"更新关系\",\n REMOVE_RELATION: \"移除关系\",\n ROLLBACK: \"回滚\",\n ROLLBACK_ALL: \"回滚全部操作\",\n ADD_FULL: \"新增{{ category }}({{ nodes }})\",\n EDIT_FULL: \"编辑{{ category }}({{ nodes }})的 {{ nodeChanges }}\",\n DELETE_FULL: \"删除{{ category }}({{ nodes }})\",\n IMPORT_FULL: \"批量导入{{ category }}({{ nodes }})\",\n CLONE_FULL: \"克隆{{ category }}({{ nodes }})\",\n APPEND_RELATION_FULL:\n \"添加{{ leftObjectId }}({{ leftNodes }})和{{ rightObjectId }}({{ rightNodes }})的关系\",\n UPDATE_RELATION_FULL:\n \"更新{{ leftObjectId }}({{ leftNodes }})和{{ rightObjectId }}({{ rightNodes }})的关系\",\n REMOVE_RELATION_FULL:\n \"移除{{ leftObjectId }}({{ leftNodes }})和{{ rightObjectId }}({{ rightNodes }})的关系\",\n ROLLBACK_FULL: \"回滚到【{{ rollbackAbstract }}】\",\n ROLLBACK_ALL_FULL: \"回滚全部操作\",\n // category\n PROJECT: \"项目\",\n USER: \"用户组\",\n PERMISSION: \"权限点\",\n BRICK: \"构件\",\n ROUTE: \"路由\",\n TEMPLATE: \"模版\",\n SNIPPET: \"片段\",\n I18N: \"国际化\",\n IMAGE: \"图片\",\n FUNCTION: \"函数\",\n MENU: \"菜单\",\n MENU_ITEM: \"菜单项\",\n WORKFLOW: \"工作流\",\n};\n\nexport const NS = \"bricks/visual-builder/workbench-history-action\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n} & { NODE_ellipsis: string };\n","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取变更历史(从上一次commit开始)\n * @endpoint GET /api/v1/next-builder/workspace/:appId/changes\n */\nexport var WorkspaceApi_getChangeHistory = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (appId, params, options) {\n return (/**! @contract easyops.api.next_builder.workspace.GetChangeHistory@1.0.0 */(yield http.get(\"api/gateway/next_builder.workspace.GetChangeHistory/api/v1/next-builder/workspace/\".concat(appId, \"/changes\"), _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function WorkspaceApi_getChangeHistory(_x, _x2, _x3) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=getChangeHistory.js.map","import { NS, K } from \"./i18n.js\";\nimport { i18n } from \"@next-core/i18n\";\nimport { NextBuilderModels } from \"@next-api-sdk/next-builder-sdk\";\n\nconst actionI18nKeyMap: Record<string, string> = {\n add: `${NS}:${K.ADD}`,\n edit: `${NS}:${K.EDIT}`,\n delete: `${NS}:${K.DELETE}`,\n batch_delete: `${NS}:${K.DELETE}`,\n import: `${NS}:${K.IMPORT}`,\n clone: `${NS}:${K.CLONE}`,\n append_relation: `${NS}:${K.APPEND_RELATION}`,\n update_relation: `${NS}:${K.UPDATE_RELATION}`,\n remove_relation: `${NS}:${K.REMOVE_RELATION}`,\n rollback: `${NS}:${K.ROLLBACK}`,\n rollback_all: `${NS}:${K.ROLLBACK_ALL}`,\n};\n\nconst fullActionI18nKeyMap: Record<string, string> = {\n add: `${NS}:${K.ADD_FULL}`,\n edit: `${NS}:${K.EDIT_FULL}`,\n delete: `${NS}:${K.DELETE_FULL}`,\n batch_delete: `${NS}:${K.DELETE_FULL}`,\n import: `${NS}:${K.IMPORT_FULL}`,\n clone: `${NS}:${K.CLONE_FULL}`,\n append_relation: `${NS}:${K.APPEND_RELATION_FULL}`,\n update_relation: `${NS}:${K.UPDATE_RELATION_FULL}`,\n remove_relation: `${NS}:${K.REMOVE_RELATION_FULL}`,\n rollback: `${NS}:${K.ROLLBACK_FULL}`,\n rollback_all: `${NS}:${K.ROLLBACK_ALL_FULL}`,\n};\n\nconst categoryI18nKeyMap: Record<string, string> = {\n project: `${NS}:${K.PROJECT}`,\n userGroup: `${NS}:${K.USER}`,\n permission: `${NS}:${K.PERMISSION}`,\n brick: `${NS}:${K.BRICK}`,\n route: `${NS}:${K.ROUTE}`,\n template: `${NS}:${K.TEMPLATE}`,\n snippet: `${NS}:${K.SNIPPET}`,\n i18n: `${NS}:${K.I18N}`,\n image: `${NS}:${K.IMAGE}`,\n function: `${NS}:${K.FUNCTION}`,\n menu: `${NS}:${K.MENU}`,\n menuItem: `${NS}:${K.MENU_ITEM}`,\n workflow: `${NS}:${K.WORKFLOW}`,\n};\n\nconst modelI18nKeyMap: Record<string, string> = {\n PROJECT_MICRO_APP: `${NS}:${K.PROJECT}`,\n \"MICRO_APP_USER_GROUP@EASYOPS\": `${NS}:${K.USER}`,\n MICRO_APP_RESOURCE_PERMISSION: `${NS}:${K.PERMISSION}`,\n STORYBOARD_BRICK: `${NS}:${K.BRICK}`,\n STORYBOARD_ROUTE: `${NS}:${K.ROUTE}`,\n STORYBOARD_TEMPLATE: `${NS}:${K.TEMPLATE}`,\n STORYBOARD_SNIPPET: `${NS}:${K.SNIPPET}`,\n STORYBOARD_I18N: `${NS}:${K.I18N}`,\n MICRO_APP_RESOURCE_IMAGE: `${NS}:${K.IMAGE}`,\n STORYBOARD_FUNCTION: `${NS}:${K.FUNCTION}`,\n MICRO_APP_RESOURCE_MENU: `${NS}:${K.MENU}`,\n MICRO_APP_RESOURCE_MENU_ITEM: `${NS}:${K.MENU_ITEM}`,\n \"WORKFLOW_DEF@EASYOPS\": `${NS}:${K.WORKFLOW}`,\n};\n\nexport function translateHistory(\n history: Partial<NextBuilderModels.ModelWorkspaceChangeHistory>\n): Record<string, string> {\n const historyAction =\n history.action === \"rollback\" && !history.rollBackIdInfo\n ? \"rollback_all\"\n : history.action;\n\n const category = i18n.t(\n categoryI18nKeyMap[history.category] ?? history.category\n );\n const action = i18n.t(actionI18nKeyMap[historyAction] ?? historyAction);\n const leftObjectId = i18n.t(\n modelI18nKeyMap[history.abstract?.leftObjectId] ??\n history.abstract?.leftObjectId\n );\n const rightObjectId = i18n.t(\n modelI18nKeyMap[history.abstract?.rightObjectId] ??\n history.abstract?.rightObjectId\n );\n const nodes = translateNodes(\n history.abstract?.nodes,\n history.abstract?.nodesCount\n );\n const leftNodes = translateNodes(\n history.abstract?.leftNodes,\n history.abstract?.leftNodesCount\n );\n const rightNodes = translateNodes(\n history.abstract?.rightNodes,\n history.abstract?.rightNodesCount\n );\n const rollbackAbstract =\n historyAction === \"rollback\"\n ? translateHistory(history.rollBackIdInfo).abstract\n : null;\n\n const abstract = i18n.t(\n fullActionI18nKeyMap[historyAction] ?? historyAction,\n {\n category,\n nodes,\n leftNodes,\n rightNodes,\n nodeChanges: history.abstract?.nodeChanges?.join(\", \"),\n relationChanges: history.abstract?.relationChanges?.join(\", \"),\n leftObjectId,\n rightObjectId,\n rollbackAbstract,\n }\n );\n\n return {\n category,\n action,\n leftObjectId,\n rightObjectId,\n nodes,\n leftNodes,\n rightNodes,\n abstract,\n rollbackAbstract,\n };\n}\n\nfunction translateNodes(nodes: string[] = [], total: number, separator = \", \") {\n return i18n.t(`${NS}:${K.NODE}`, {\n nodes: nodes.join(separator),\n context: total > nodes.length ? \"ellipsis\" : undefined,\n count: total,\n });\n}\n","import React, { useRef, useState } from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { handleHttpError } from \"@next-core/runtime\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport type {\n EoEasyopsAvatar,\n EoEasyopsAvatarProps,\n} from \"@next-bricks/basic/easyops-avatar\";\nimport type {\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping,\n} from \"@next-bricks/basic/popover\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport \"@next-core/theme\";\nimport moment from \"moment\";\nimport styleText from \"./styles.shadow.css\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport {\n WorkspaceApi_getChangeHistory,\n NextBuilderModels,\n} from \"@next-api-sdk/next-builder-sdk\";\nimport { translateHistory } from \"./utils.js\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedEasyopsAvatar = wrapBrick<EoEasyopsAvatar, EoEasyopsAvatarProps>(\n \"eo-easyops-avatar\"\n);\nconst WrappedPopover = wrapBrick<\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping\n>(\"eo-popover\", {\n onVisibleChange: \"visible.change\",\n beforeVisibleChange: \"before.visible.change\",\n});\n\ninterface HistoryData\n extends Partial<NextBuilderModels.ModelWorkspaceChangeHistory> {\n translation: Record<string, string>;\n}\n\nexport interface WorkbenchHistoryActionProps {\n appId: string;\n projectId: string;\n}\n\n/**\n * 项目变更历史\n */\nexport\n@defineElement(\"visual-builder.workbench-history-action\", {\n styleTexts: [styleText],\n})\nclass WorkbenchHistoryAction\n extends ReactNextElement\n implements WorkbenchHistoryActionProps\n{\n @property()\n accessor appId: string;\n\n @property()\n accessor projectId: string;\n\n /**\n * 点击历史项标题触发\n */\n @event({ type: \"history.item.click\" })\n accessor #historyItemClickEvent!: EventEmitter<\n HistoryData & { enableRollback: boolean }\n >;\n #handleHistoryItemClick = (\n data: HistoryData & { enableRollback: boolean }\n ): void => {\n this.#historyItemClickEvent.emit(data);\n };\n\n /**\n * 点击回滚触发\n */\n @event({ type: \"rollback\" })\n accessor #rollbackEvent!: EventEmitter<HistoryData>;\n #handleRollback = (data: HistoryData): void => {\n this.#rollbackEvent.emit(data);\n };\n\n /**\n * 回滚全部\n */\n @event({ type: \"rollback.all\" })\n accessor #rollbackAllEvent!: EventEmitter<void>;\n #handleRollbackAll = (): void => {\n this.#rollbackAllEvent.emit();\n };\n\n render() {\n return (\n <WorkbenchHistoryActionComponent\n appId={this.appId}\n projectId={this.projectId}\n onHistoryItemClick={this.#handleHistoryItemClick}\n onRollback={this.#handleRollback}\n onRollbackAll={this.#handleRollbackAll}\n />\n );\n }\n}\n\ninterface WorkbenchHistoryActionComponentProps\n extends WorkbenchHistoryActionProps {\n onHistoryItemClick?: (\n data: HistoryData & { enableRollback: boolean }\n ) => void;\n onRollback?: (data: HistoryData) => void;\n onRollbackAll?: () => void;\n}\n\nexport function WorkbenchHistoryActionComponent(\n props: WorkbenchHistoryActionComponentProps\n) {\n const { appId, projectId, onHistoryItemClick, onRollback, onRollbackAll } =\n props;\n const { t } = useTranslation(NS);\n\n const [loading, setLoading] = useState(false);\n const [hideLoadMore, setHideLoadMore] = useState(true);\n const [allLoaded, setAllLoaded] = useState(false);\n const [historyList, setHistoryList] = useState<HistoryData[]>([]);\n const lastTs = useRef<string>(\"\");\n\n const handleLoadList = (isFirst?: boolean) => {\n setLoading(true);\n WorkspaceApi_getChangeHistory(appId, { ts: lastTs.current, limit: 20 })\n .then((result) => {\n setHistoryList((pre) => {\n const list = result.list.map((v) => ({\n ...v,\n translation: translateHistory(v),\n }));\n return isFirst ? list : pre.concat(list);\n });\n lastTs.current = result.ts;\n setAllLoaded(result.list.length < 20);\n setHideLoadMore(result.list.length < 20);\n })\n .catch((error) => {\n handleHttpError(error);\n })\n .finally(() => {\n setLoading(false);\n });\n };\n\n const handleBeforeVisibleChange = (e: CustomEvent<boolean>) => {\n if (e.detail) {\n setHideLoadMore(true);\n setAllLoaded(false);\n setHistoryList([]);\n lastTs.current = \"\";\n handleLoadList(true);\n }\n };\n\n return (\n <WrappedPopover\n placement=\"bottom\"\n trigger=\"click\"\n arrow={true}\n arrowColor=\"var(--color-fill-bg-container-4)\"\n beforeVisibleChange={handleBeforeVisibleChange}\n >\n <WrappedButton\n slot=\"anchor\"\n shape=\"circle\"\n className=\"history-action\"\n icon={{\n lib: \"antd\",\n icon: \"history\",\n theme: \"outlined\",\n }}\n />\n <div>\n <div className=\"history-title\">History</div>\n <div className=\"history-list\">\n {historyList.length ? (\n <>\n {historyList.map((v, i) => {\n return (\n <HistoryItem\n key={`${v.uniqueKey}-${v.ts}`}\n data={v}\n enableRollback={i !== 0 && v.action !== \"rollback\"}\n current={i === 0}\n onHistoryItemClick={onHistoryItemClick}\n onRollback={onRollback}\n />\n );\n })}\n {!hideLoadMore && (\n <span className=\"load-more-container\">\n <WrappedLink\n className=\"load-more\"\n disabled={loading}\n onClick={(e) => handleLoadList()}\n >\n {t(K.LOAD_MORE)}\n </WrappedLink>\n </span>\n )}\n {allLoaded && (\n <span className=\"end-container\">\n The End\n <WrappedIcon\n className=\"rollback-all\"\n lib=\"antd\"\n icon=\"rollback\"\n theme=\"outlined\"\n onClick={(e) => onRollbackAll()}\n />\n </span>\n )}\n </>\n ) : (\n <div className=\"empty\">{loading ? t(K.LOADING) : t(K.NO_DATA)}</div>\n )}\n </div>\n {/* 点击历史详情会打开 modal 来展示,这里提供一个 slot,编排将 modal 放置在这里,使其成为 popover 的 children,才能防止用户在操作 modal 过程中意外关闭 popover */}\n <slot />\n </div>\n </WrappedPopover>\n );\n}\n\ninterface HistoryItemProps {\n data: HistoryData;\n enableRollback?: boolean;\n current?: boolean;\n onHistoryItemClick?: (\n data: HistoryData & { enableRollback: boolean }\n ) => void;\n onRollback?: (data: HistoryData) => void;\n}\n\nfunction HistoryItem(props: HistoryItemProps) {\n const { data, enableRollback, current, onHistoryItemClick, onRollback } =\n props;\n\n const ts = moment(Number(data.ts) / 1000000);\n const duration = moment.duration(ts.diff(moment()));\n const humanizedTime =\n duration.days() <= -1\n ? ts.format(\"YYYY-MM-DD HH:mm:ss\")\n : duration.humanize(true, { ss: 0, s: 60, m: 60, h: 24 });\n\n return (\n <div className=\"item-container\">\n <div className=\"item-title\">\n <div\n className=\"title-left\"\n onClick={(e) => onHistoryItemClick({ ...data, enableRollback })}\n >\n <div className=\"topic\" title={data.translation.abstract}>\n {data.translation.abstract}\n </div>\n {current && <div className=\"branch\">(current)</div>}\n </div>\n <div className=\"title-right\">\n {enableRollback && (\n <WrappedIcon\n className=\"rollback\"\n lib=\"antd\"\n icon=\"rollback\"\n theme=\"outlined\"\n onClick={(e) => onRollback(data)}\n />\n )}\n </div>\n </div>\n <div className=\"item-info\">\n <WrappedEasyopsAvatar\n className=\"avatar\"\n nameOrInstanceId={data.user}\n size=\"xs\"\n />\n <div className=\"time\">{humanizedTime}</div>\n <div className=\"operator\">{data.user}</div>\n </div>\n </div>\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, `.custom-scrollbar-container{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.15) rgba(255,255,255,0.03)}.custom-scrollbar-container::-webkit-scrollbar{width:8px;height:8px;background-color:transparent;position:absolute}.custom-scrollbar-container::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,0);border-radius:4px}.custom-scrollbar-container:hover::-webkit-scrollbar-track{background-color:rgba(255,255,255,0.03)}.custom-scrollbar-container:hover::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,0.15)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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, `.workBenchActionList{display:flex;flex-direction:column;width:-webkit-min-content;width:-moz-min-content;width:min-content;height:100%;background-color:#4297ff}:host-context(html[data-theme=\"dark-v2\"]) .workBenchActionList,\n:host-context([data-override-theme=\"dark-v2\"]) .workBenchActionList{background-color:#323237}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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, `.action::part(link){display:flex;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;color:rgba(255,255,255,0.4);position:relative;transition:none}.action.active::part(link)::before{content:\"\";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:white}.action.active::part(link),\n.action::part(link):hover{color:white}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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{display:inline-block}:host([hidden]){display:none}eo-popover::part(popup){width:800px;max-width:60vw;padding:10px;background:var(--color-fill-bg-container-4);border-radius:var(--medius-border-radius);box-shadow:var(--feedback-container-shadow);z-index:1000}.history-title{font-size:var(--title-font-size);font-weight:var(--font-weight-500);color:var(--color-strong-text);margin-bottom:5px}.history-list{max-height:500px;overflow-y:auto}.item-container{padding:10px 0;display:flex;flex-direction:column;gap:5px}.empty{padding:5px 0 10px 0;font-size:14px;color:var(--text-color-secondary);text-align:center}.item-container:not(:last-of-type){border-bottom:1px solid var(--color-border-divider-line)}.item-title{display:flex;align-items:center;justify-content:space-between;gap:5px}.title-left,\n.title-right{display:flex;align-items:center}.title-left{cursor:pointer;overflow:hidden;gap:5px}.topic{font-size:14px;color:var(--text-color-title);font-weight:var(--font-weight-500);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.branch{font-size:14px;color:var(--text-color-secondary)}.rollback{margin-right:5px;font-size:14px;color:var(--text-color-secondary);cursor:pointer}.rollback:hover{color:var(--color-brand)}.item-info{display:flex;align-items:center;gap:5px}.time,\n.operator{font-size:14px;color:var(--text-color-secondary)}.load-more-container{display:block;text-align:center}.end-container{display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;color:var(--color-brand)}.rollback-all{cursor:pointer}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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{display:block;--pane-color:#595959}:host-context(html[data-theme=\"dark-v2\"]),\n:host-context([data-override-theme=\"dark-v2\"]){--pane-color:#ccc}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.pane{display:flex;flex-direction:column;color:var(--pane-color);height:100%}.pane-header{display:flex;align-items:center;cursor:pointer;border-top:1px solid transparent;position:relative}.pane-header:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:#007fd4}:host(:not(:first-child)) .pane-header{border-top-color:rgba(204,204,204,0.2)}.pane-scroll-shadow{display:none;position:absolute;bottom:-3px;left:0;right:0;height:3px;box-shadow:#000000 0 6px 6px -6px inset;z-index:1}.scrolled .pane-scroll-shadow{display:block}.pane-title{display:flex;align-items:center;font-size:13px;line-height:24px;height:25px;min-width:0;flex:1}.title-icon{display:flex;justify-content:center;align-items:center;width:24px;padding-right:2px;line-height:1;flex-shrink:0}.title-label{text-transform:uppercase;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pane-body{flex-grow:1;min-height:0;display:none;overflow:hidden;overflow-y:auto;overflow-y:overlay}:host([active]) .pane-body{display:initial}:host(:not(:hover)) ::slotted([slot=\"actions\"]){display:none}.badge{background-color:rgb(77,77,77);color:rgb(255,255,255);border-radius:11px;height:18px;padding:3px 6px;line-height:13px;margin:0 3px;font-size:12px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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{--sidebar-background:#fff;--title-container-background:#fff;--title-container-color:#595959;display:block;outline-color:rgba(83,89,93,0.5);background-color:var(--sidebar-background);height:100%}:host-context(html[data-theme=\"dark-v2\"]),\n:host-context([data-override-theme=\"dark-v2\"]){--sidebar-background:#181818;--title-container-background:#181818;--title-container-color:rgb(187,187,187);background-color:var(--sidebar-background)}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.sidebar{display:flex;flex-direction:column;height:100%}.title-container{display:flex;padding:0 8px 8px 8px;color:var(--title-container-color);background:var(--title-container-background)}.title-label{font-weight:300;line-height:44px;padding-left:12px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pane-container{flex-grow:1;min-height:0;display:flex;flex-direction:column}::slotted([slot=\"panes\"]){transition:flex 0.2s;min-height:25px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["_WorkbenchPane","WrappedIcon","wrapBrick","defineElement","property","event","createDecorators","_dec","styleTexts","styleText","sharedStyle","_dec2","_dec3","type","Boolean","_dec4","Number","_dec5","_dec6","_A","WeakMap","_B","_C","_D","_activeChangeEvent","_handleActiveChange","_E","_activeFirstActivatedEvent","_handleActiveFirstActivated","WorkbenchPane","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_activeFirstActivatedEvent2","set","_set_activeFirstActivatedEvent2","_get_activeChangeEvent2","_set_activeChangeEvent2","writable","value","_initProto","_init_titleLabel","_init_active","_init_badge","_init_activeChangeEvent","active","this","_classPrivateFieldGet","emit","_init_activeFirstActivatedEvent","titleLabel","v","_classPrivateFieldSet","badge","render","React","WorkbenchPaneComponent","onActiveChange","onFirstActivated","_set_activeChangeEvent","_get_activeChangeEvent","_set_activeFirstActivatedEvent","_get_activeFirstActivatedEvent","_ref","internalActive","setInternalActive","useState","activatedOnce","setActivatedOnce","useEffect","handleClick","useCallback","previousActive","scrollBodyRef","useRef","scrolled","setScrolled","handleScroll","useMemo","debounceByAnimationFrame","fn","current","scrollTop","func","_len","length","params","Array","_key","frame","cancel","requestAnimationFrame","cancelAnimationFrame","className","classNames","tabIndex","onClick","lib","theme","icon","name","onScroll","ref","style","padding","color","_class","e","c","_initClass","_applyDecs","o","_","has","_checkInRHS","_WorkbenchSidebar","_getPaneSlot","_reflowPanes","_onPanesSlotChange","WorkbenchSidebar","_this$shadowRoot","shadowRoot","querySelector","panes","call","assignedNodes","pane","_pane$activeFlex","flex","String","activeFlex","target","addEventListener","_defineProperty","panesSlots","WorkbenchSidebarComponent","refCallback","_WorkbenchAction","WrapLink","attribute","WorkbenchAction","_init_icon","_init_to","_init_href","_init_target","to","href","WorkbenchActionComponent","url","initMenuItemAndMatchCurrentPathKeys","menuItems","pathname","search","parentCursor","selectedKeys","openedKeys","matchedKeys","cursor","forEach","item","key","concat","isGroup","groupAsSubMenu","isSubMenu","tmp","items","push","defaultExpanded","parsePath","escapedPath","replace","match","matchPath","path","exact","isArray","activeIncludes","include","_parseInclude","parseInclude","hasSearch","includes","getMatchOfSearch","activeExcludes","_include","activeMatchSearch","matchMenuItem","keyPath","split","i","slice","join","currentSearch","toSearch","URLSearchParams","entries","_WorkbenchActionList","WrapperWorkbenchAction","currentAppId","WorkbenchActionList","_init_appId","_init_menu","appId","menu","WorkbenchActionListComponent","historyMap","Map","_menu$menuItems2","history","getHistory","activeIndex","setActiveIndex","location","setLocation","unlisten","listen","clear","_menu$menuItems","map","index","isSimpleMenuItem","handleLinkClick","filter","defaultGetCollapsedId","node","_WorkbenchTreeElement","treeStyleText","actionStyleText","_dec7","_dec8","_dec9","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_dec21","_dec22","_dec23","_dec24","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_R","_S","_actionClickEvent","_handleActionClick","_T","_nodeClickEvent","_nodeClickFactory","_U","_nodeDropEvent","_handleNodeDrop","_V","_nodeContextMenuEvent","_contextMenuFactory","_W","_nodeToggleEvent","_handleNodeToggle","WorkbenchTreeElement","_get_nodeToggleEvent2","_set_nodeToggleEvent2","_get_nodeContextMenuEvent2","_set_nodeContextMenuEvent2","_get_nodeDropEvent2","_set_nodeDropEvent2","_get_nodeClickEvent2","_set_nodeClickEvent2","_get_actionClickEvent2","_set_actionClickEvent2","_init_nodes","_init_actions","_init_actionsHidden","_init_placeholder","_init_isTransformName","_init_searchPlaceholder","_init_noSearch","_init_activeKey","_init_showMatchedNodeOnly","_init_matchNodeDataFields","_init_fixedActionsFor","_init_collapsible","_init_collapsedNodes","_init_allowDrag","_init_allowDragToRoot","_init_allowDragToInside","_init_nodeKey","_init_skipNotify","_init_actionClickEvent","detail","_init_nodeClickEvent","data","_init_nodeDropEvent","_init_nodeContextMenuEvent","preventDefault","x","clientX","y","clientY","_init_nodeToggleEvent","nodeId","collapsed","nodes","actions","actionsHidden","placeholder","isTransformName","searchPlaceholder","noSearch","activeKey","showMatchedNodeOnly","matchNodeDataFields","fixedActionsFor","collapsible","collapsedNodes","allowDrag","allowDragToRoot","allowDragToInside","nodeKey","skipNotify","WorkbenchActionsContext","Provider","onActionClick","WorkbenchTreeContext","basePaddingLeft","getCollapsedId","onNodeToggle","clickFactory","contextMenuFactory","matchNode","lowerTrimmedQuery","_this$matchNodeDataFi","deepMatch","pick","WorkbenchTree","dropEmit","_set_actionClickEvent","_get_actionClickEvent","_set_nodeClickEvent","_get_nodeClickEvent","_set_nodeDropEvent","_get_nodeDropEvent","_set_nodeContextMenuEvent","_get_nodeContextMenuEvent","_set_nodeToggleEvent","_get_nodeToggleEvent","customElements","define","createProviderClass","previewFromOrigin","options","connect","K","NS","WorkspaceApi_getChangeHistory","http","_x","_x2","_x3","apply","actionI18nKeyMap","add","ADD","edit","EDIT","delete","DELETE","batch_delete","import","IMPORT","clone","CLONE","append_relation","APPEND_RELATION","update_relation","UPDATE_RELATION","remove_relation","REMOVE_RELATION","rollback","ROLLBACK","rollback_all","ROLLBACK_ALL","fullActionI18nKeyMap","ADD_FULL","EDIT_FULL","DELETE_FULL","IMPORT_FULL","CLONE_FULL","APPEND_RELATION_FULL","UPDATE_RELATION_FULL","REMOVE_RELATION_FULL","ROLLBACK_FULL","ROLLBACK_ALL_FULL","categoryI18nKeyMap","project","PROJECT","userGroup","USER","permission","PERMISSION","brick","BRICK","route","ROUTE","template","TEMPLATE","snippet","SNIPPET","i18n","I18N","image","IMAGE","function","FUNCTION","MENU","menuItem","MENU_ITEM","workflow","WORKFLOW","modelI18nKeyMap","PROJECT_MICRO_APP","MICRO_APP_RESOURCE_PERMISSION","STORYBOARD_BRICK","STORYBOARD_ROUTE","STORYBOARD_TEMPLATE","STORYBOARD_SNIPPET","STORYBOARD_I18N","MICRO_APP_RESOURCE_IMAGE","STORYBOARD_FUNCTION","MICRO_APP_RESOURCE_MENU","MICRO_APP_RESOURCE_MENU_ITEM","translateHistory","_categoryI18nKeyMap$h","_actionI18nKeyMap$his","_modelI18nKeyMap$hist","_history$abstract","_history$abstract2","_modelI18nKeyMap$hist2","_history$abstract3","_history$abstract4","_history$abstract5","_history$abstract6","_history$abstract7","_history$abstract8","_history$abstract9","_history$abstract10","_fullActionI18nKeyMap","_history$abstract11","_history$abstract12","historyAction","action","rollBackIdInfo","category","t","leftObjectId","abstract","rightObjectId","translateNodes","nodesCount","leftNodes","leftNodesCount","rightNodes","rightNodesCount","rollbackAbstract","nodeChanges","relationChanges","undefined","total","separator","NODE","context","count","initializeReactI18n","en","LOAD_MORE","LOADING","NO_DATA","NODE_ellipsis","zh","_WorkbenchHistoryActi","WrappedButton","WrappedLink","WrappedEasyopsAvatar","WrappedPopover","onVisibleChange","beforeVisibleChange","_historyItemClickEvent","_handleHistoryItemClick","_rollbackEvent","_handleRollback","_rollbackAllEvent","_handleRollbackAll","WorkbenchHistoryAction","_get_rollbackAllEvent2","_set_rollbackAllEvent2","_get_rollbackEvent2","_set_rollbackEvent2","_get_historyItemClickEvent2","_set_historyItemClickEvent2","_init_projectId","_init_historyItemClickEvent","_init_rollbackEvent","_init_rollbackAllEvent","projectId","WorkbenchHistoryActionComponent","onHistoryItemClick","onRollback","onRollbackAll","_set_historyItemClickEvent","_get_historyItemClickEvent","_set_rollbackEvent","_get_rollbackEvent","_set_rollbackAllEvent","_get_rollbackAllEvent","props","useTranslation","loading","setLoading","hideLoadMore","setHideLoadMore","allLoaded","setAllLoaded","historyList","setHistoryList","lastTs","handleLoadList","isFirst","ts","limit","then","result","pre","list","_objectSpread","translation","catch","error","handleHttpError","finally","placement","trigger","arrow","arrowColor","slot","shape","HistoryItem","uniqueKey","enableRollback","disabled","moment","duration","diff","humanizedTime","days","format","humanize","ss","s","m","h","title","nameOrInstanceId","user","size","___CSS_LOADER_EXPORT___","module","id","toString"],"sourceRoot":""}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! For license information please see 541.b19b39e2.js.LICENSE.txt */
|
|
2
|
+
(self.webpackChunk_next_bricks_visual_builder=self.webpackChunk_next_bricks_visual_builder||[]).push([[541,5628],{8486:(e,t,n)=>{"use strict";n.d(t,{L:()=>r,r:()=>a});var o=n(8657),r=(0,o.createContext)({});function a(){return(0,o.useContext)(r)}},1732:(e,t,n)=>{"use strict";n.d(t,{ME:()=>S});var o=n(7896),r=n(3028),a=n(8657),i=n.n(a),l=n(5178),c=n.n(l),s=n(2779),d=n.n(s),u=n(3321),p=n(8486),f=function(e){return e.inside="inside",e.top="top",e.bottom="bottom",e}({}),h=(0,a.createContext)({});function v(){return(0,a.useContext)(h)}var g=n(4511),m=n(7217),b=(0,g.wrapBrick)("icons.general-icon");function y(e){var{data:t,className:n,gap:o,isFirst:r,isLast:l,actions:c,actionsHidden:s,onActionClick:u}=e,p=(0,a.useMemo)((()=>null==c?void 0:c.filter((e=>(0,m.checkIfByTransform)(e,t)))),[c,t]);return s||null==p||!p.length?null:i().createElement("div",{className:d()("actionsBar",n),style:{gap:o}},p.map((e=>i().createElement(x,{key:e.action,action:e,data:t,isFirst:r,isLast:l,onActionClick:u}))))}function x(e){var{action:t,data:n,isFirst:o,isLast:r,onActionClick:l}=e,c=o&&"move-up"===t.action||r&&"move-down"===t.action,s=(0,a.useCallback)((e=>{e.preventDefault(),e.stopPropagation(),c||null==l||l({action:t.action,data:n})}),[t.action,n,c,l]),u=(0,a.useCallback)((e=>{e.preventDefault(),e.stopPropagation()}),[]);return i().createElement("a",{className:d()("action",{disabled:c}),title:t.title,role:"button",onClick:s,onContextMenu:u,onMouseDown:u},i().createElement(b,t.icon))}var w=(0,g.wrapBrick)("basic.general-link"),k=(0,g.wrapBrick)("icons.general-icon"),E=10,C="0 0 0 1px #ba6d30",L=(0,a.createContext)(!1);function S(e){var{nodes:t,placeholder:n,searchPlaceholder:o,isDrag:r,noSearch:l,allowDrag:s,allowDragToRoot:p,allowDragToInside:v,dropEmit:g}=e,[m,b]=(0,a.useState)(null),[y,x]=(0,a.useState)(r),[w,E]=(0,a.useState)(),[C,S]=(0,a.useState)(),[I,M]=(0,a.useState)(),[A,R]=(0,a.useState)(),[T,D]=(0,a.useState)(),[Z,j]=(0,a.useState)(),{nodeKey:B,onBrickDrop:P,contextMenuFactory:O,matchNode:F}=(0,u.h)(),z=(0,a.useMemo)((()=>{var e;return function(e,t){var n=(e,o,r,a)=>{var i=e.shift();if(i){e.length>0&&e.splice(0,1,"".concat(i,"/").concat(e[0]));var l=o.find((e=>e&&e.key===i&&e.isContainer));if(l)o[a]=null,n(e,l.children,r);else{var c=i.split("/"),s={name:c.pop(),key:i,parentPath:c?c.join("/"):c,originKey:r.key,data:{[t]:i,isContainer:!0},children:[],icon:{icon:"folder",lib:"antd",theme:"filled",color:"orange"},isContainer:!0};"number"==typeof a?o[a]=s:o.push(s),n(e,s.children,r)}}else o.push(r)};return e.forEach(((t,o)=>{if(t.path){var r=t.path.split("/").filter(Boolean);n(r,e,t,o)}})),e.filter(Boolean)}(null!==(e=null==t?void 0:t.slice())&&void 0!==e?e:[],B)}),[t,B]),_=(0,a.useCallback)((e=>{b(e.target.value)}),[]),K=(0,a.useMemo)((()=>null==O?void 0:O()),[O]),$=null==m?void 0:m.trim().toLowerCase(),W=(0,a.useMemo)((()=>{if(l||!$||!z)return z;var e=t=>{var n;t.matchedSelf=F(t,$);var o=null===(n=t.children)||void 0===n?void 0:n.map(e).includes(!0);return t.matched=t.matchedSelf||o,t.matched};return z.forEach(e),z.slice()}),[l,$,z,F]),H=function(e){for(var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=e;n;){if(n.draggable&&(t||n!==e)&&"A"!==n.tagName)return n;n=n.parentElement}},Y=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;for(var r of e)if(r.data[n]===t&&(o=r),r.children&&(o=Y(r.children,t,n,o)),o)break;return o},V=()=>{S(null),R(null),M(null),D(null),x(!1)};return(0,a.useEffect)((()=>{x(r)}),[r]),(0,a.useEffect)((()=>(window.addEventListener("dragend",V),()=>{window.removeEventListener("dragend",V)})),[]),i().createElement("div",{style:{height:"100%"},className:"tree-wrapper",onContextMenu:K},null!=z&&z.length?i().createElement("div",null,!l&&i().createElement("div",{className:"searchBox",onContextMenu:e=>e.stopPropagation()},i().createElement("span",{className:d()("filter-input-wrapper",{focus:Z})},i().createElement("span",{className:"prefix"},i().createElement(k,{icon:"search",lib:"antd",theme:"outlined"})),i().createElement("input",{value:m,onChange:_,onFocus:()=>j(!0),onBlur:()=>j(!1),autoComplete:"off",placeholder:o}),i().createElement("span",{className:"suffix"},m?i().createElement(k,{className:"clear-button",icon:"close-circle",lib:"antd",theme:"filled",onClick:()=>{b("")}}):null))),i().createElement(L.Provider,{value:!!m},i().createElement(h.Provider,{value:{allow:s,allowDragToRoot:p,dragElement:C,dragOverElement:A,dragStatus:T,onDragStart:(e,t)=>{var n;if(e.stopPropagation(),s){var o=e.target;null!==(n=o.dataset)&&void 0!==n&&n.container||(x(!0),function(e,t){var n=document.createElement("canvas");document.body.append(n);var o=n.getContext("2d");n.width=o.measureText(t).width+60,n.height=20,n.style.position="absolute",n.style.left="-100%",n.style.zIndex="-100",o.fillStyle="#333333",o.fillRect(0,0,n.width,n.height),o.fillStyle="#999999",o.font="bold 14px Arial",o.fillText(t,20,15),e.dataTransfer.setDragImage(n,0,0)}(e,o.innerText),S(o),E(t))}}}},i().createElement("div",{className:d()({hightlight:r}),onDragOver:e=>{if(e.preventDefault(),y&&"workbenchTree-placeholder-dom"!==e.target.className){var t=(e=>{var t=H(e.target),n=t.dataset.uid;if(!(t===C||null!=n&&n.includes(":"))){var o,{top:r,bottom:a}=t.getBoundingClientRect(),i=v?5:10;return o=e.clientY<r+i?f.top:e.clientY>a-i?f.bottom:v?f.inside:T,{element:t,node:Y(z,n,B),status:o}}})(e);!t||null!=C&&C.contains(t.element)||(R(t.element),M(t.node),D(t.status))}},onDrop:e=>{if(y){if(P){var t=A;[f.top,f.bottom].includes(T)&&(t=H(t,!1)),P(e,{curElement:C,overElement:A,parentElement:t,overStatus:T})}else if(p||1!==Number(A.dataset.level)){var n=I,o=(e,t)=>{for(var r=0;r<e.length;r++){if(e[r].key===t){n=e[r];break}e[r].children&&o(e[r].children,t)}},r=A.dataset.uid;o(z,r);var a=e=>{var t=!1,{container:o,uid:r}=A.dataset,i=o?n.originKey:r,l=e.filter((e=>(e.children&&(e.children=a(e.children)),e.key===i&&(t=!0),e.key!==w.key)));return t&&l.splice(l.findIndex((e=>e.key===i))+("bottom"===T?1:0),0,w),l},i=function(e){var t=[],n=e=>{e.forEach((e=>{e.isContainer?n(e.children):t.push(c().omit(e,["path","icon"]))}))};return n(e),t}(z),l=w.isContainer?i.find((e=>e.key===w.originKey)):w;l.data.path=n.parentPath||n.path,g({nodes:a(i),curNode:l,overNode:n,status:T})}V()}}},i().createElement(N,{nodes:W,level:1}))))):i().createElement("div",{className:"placeholder"},n))}function N(e){var{nodes:t,level:n}=e,o=t.length-1;return i().createElement("ul",{className:"tree"},t.filter((e=>(0,m.checkIfOfComputed)(e))).map(((e,t)=>i().createElement(M,{key:e.key,node:e,level:n,isFirst:0===t,isLast:t===o}))))}function I(e){var{style:t}=e,{dragStatus:n}=v(),o=(0,r.Z)({height:22,border:"1px dashed goldenrod",opacity:n===f.inside?"0":"1"},t);return i().createElement("li",{className:"workbenchTree-placeholder-dom",style:o})}function M(e){var t,n,c,{node:s,level:h,isFirst:g,isLast:m}=e,b=!(null!==(t=s.children)&&void 0!==t&&t.length),x=s.isContainer,{hoverKey:S,activeKey:M,isTransformName:A,basePaddingLeft:R,showMatchedNodeOnly:T,fixedActionsFor:D,collapsible:Z,collapsedNodes:j,nodeKey:B,clickFactory:P,mouseEnterFactory:O,mouseLeaveFactory:F,contextMenuFactory:z,onNodeToggle:_,getCollapsedId:K,skipNotify:$}=(0,u.h)(),{allow:W,allowDragToRoot:H,onDragStart:Y,dragElement:V,dragOverElement:q,dragStatus:G}=v(),{actions:J,actionsHidden:Q,onActionClick:U}=(0,p.r)(),X=h*E+R-2,ee=(0,a.useContext)(L),[te,ne]=(0,a.useState)(null),[oe,re]=(0,a.useState)(!1),[ae,ie]=(0,a.useState)(null!==(n=null==j?void 0:j.includes(null==K?void 0:K(s)))&&void 0!==n&&n),le=(0,a.useMemo)((()=>null==O?void 0:O(s)),[O,s]),ce=(0,a.useMemo)((()=>null==F?void 0:F(s)),[F,s]),se=(0,a.useCallback)((e=>{var t;e.stopPropagation(),null==z||null===(t=z(s))||void 0===t||t(e)}),[z,s]),de=M&&s.key===M,ue=(0,a.useMemo)((()=>de?e=>{var t;null==e||null===(t=e.scrollIntoView)||void 0===t||t.call(e,{block:"center",inline:"center"})}:null),[]),pe=(0,a.useMemo)((()=>{return x?s.key:s.data?"mount-point"===(e=s.data).type?e.parent[B]||"".concat(e.parent.$$uid,":").concat(e.mountPoint):e[B]||e.$$uid:void 0;var e}),[B,s,x]);(0,a.useEffect)((()=>{G!==f.inside&&[f.top,f.bottom].includes(G)&&ne(G)}),[G]);var fe=(0,a.useMemo)((()=>!!V&&V.dataset.uid===String(pe)),[V,pe]),he=(0,a.useMemo)((()=>!!q&&q.dataset.uid===String(pe)),[q,pe]),ve=(0,a.useMemo)((()=>{var e={opacity:fe?.2:1};return he&&G===f.inside&&(e={boxShadow:C,background:"rgba(255, 255, 255, 0.1)"}),Object.assign({},e)}),[he,fe,G]),ge=(0,a.useCallback)((e=>{e.preventDefault(),e.stopPropagation(),re(!0),ie((e=>!e))}),[]),me=(0,a.useCallback)((e=>{e.preventDefault(),e.stopPropagation()}),[]),be=(0,a.useCallback)((e=>{var t;if(!x)return null==P||null===(t=P(s))||void 0===t?void 0:t();ge(e)}),[P,ge,x,s]);(0,a.useEffect)((()=>{oe&&(null==_||_(null==K?void 0:K(s),ae))}),[oe,ae,K,s,_]);var ye=Z&&!b&&!ee;return ee&&T&&!s.matched?null:i().createElement(i().Fragment,null,he&&(H||1!==h)&&te===f.top&&i().createElement(I,{style:{marginLeft:X}}),i().createElement("li",(0,o.Z)({draggable:W,onDragStart:e=>Y(e,s),"data-uid":pe,"data-level":h,style:ve},x?{"data-container":x}:{}),i().createElement(w,(0,o.Z)({tabIndex:0,onMouseEnter:le,onMouseLeave:ce,onContextMenu:se,onClick:be},$?{url:{pathname:(0,l.get)(s.link,"url","href"),state:{notify:!1}}}:(0,r.Z)({},(0,l.pick)(s.link,["url","href"]))),i().createElement("span",{className:d()("nodeLabelRow",{active:de,hover:S&&s.key===S,matched:ee&&s.matchedSelf&&!T,fixedActions:D&&[].concat(D).some((e=>(0,l.isMatch)(s.data,e))),collapsed:ye&&ae,collapsible:ye})},i().createElement("span",{className:d()("nodeLabel",{unreachable:s.unreachable}),style:{paddingLeft:X,color:s.labelColor},ref:ue},i().createElement("span",{className:"nodeIconWrapper"},ye&&i().createElement("span",{className:"collapseIcon",onClick:ge,onMouseDown:me,title:ae?"Expand":"Collapse",role:"button"},i().createElement(k,{lib:"antd",theme:"outlined",icon:ae?"right":"down"})),i().createElement("span",{className:"nodeIcon"},i().createElement(k,(0,o.Z)({},s.icon,{style:{fontSize:null!==(c=s.icon)&&void 0!==c&&c.imgSrc?14:null}})))),i().createElement("span",{className:"nodeName"},s.name)),i().createElement(y,{className:"nodeActionsBar",data:s.data,isFirst:g,isLast:m,actions:J,onActionClick:U,actionsHidden:Q}),s.badge&&i().createElement("span",{className:"badge"},i().createElement(k,s.badge)))),b||i().createElement(N,{nodes:s.children,level:h+1})),he&&(H||1!==h)&&te===f.bottom&&i().createElement(I,{style:{marginLeft:X}}))}},3321:(e,t,n)=>{"use strict";n.d(t,{f:()=>r,h:()=>a});var o=n(8657),r=(0,o.createContext)({});function a(){return(0,o.useContext)(r)}},8401:(e,t,n)=>{"use strict";function o(e,t){switch(typeof e){case"string":return e.toLowerCase().includes(t);case"boolean":case"number":return String(e).includes(t);case"object":return null===e?"null".includes(t):(Array.isArray(e)?e:Object.entries(e).flat()).some((e=>o(e,t)));default:return!1}}n.d(t,{$:()=>o})},2779:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var a=typeof n;if("string"===a||"number"===a)e.push(n);else if(Array.isArray(n)){if(n.length){var i=r.apply(null,n);i&&e.push(i)}}else if("object"===a){if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]")){e.push(n.toString());continue}for(var l in n)o.call(n,l)&&n[l]&&e.push(l)}}}return e.join(" ")}e.exports?(r.default=r,e.exports=r):void 0===(n=function(){return r}.apply(t,[]))||(e.exports=n)}()},1674:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var o=n(9601),r=n.n(o),a=n(2609),i=n.n(a)()(r());i.push([e.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}",""]);const l=i.toString()},89:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var o=n(9601),r=n.n(o),a=n(2609),i=n.n(a)()(r());i.push([e.id,':host-context(html[data-theme="light"]),\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:-webkit-sticky;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}.nodeLabelRow{display:flex;cursor:pointer;height:22px;padding-right:10px}.nodeLabelRow:hover,\n.nodeLabelRow.hover{background-color:rgba(255,255,255,0.12)}.nodeLabelRow:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--node-background-focus)}.nodeLabelRow.active:focus{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)}.nodeLabelRow: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, .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}',""]);const l=i.toString()},2609:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",o=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),o&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),o&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,o,r,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(o)for(var l=0;l<this.length;l++){var c=this[l][0];null!=c&&(i[c]=!0)}for(var s=0;s<e.length;s++){var d=[].concat(e[s]);o&&i[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),n&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=n):d[2]=n),r&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=r):d[4]="".concat(r)),t.push(d))}},t}},9601:e=>{"use strict";e.exports=function(e){return e[1]}},2604:(e,t,n)=>{"use strict";n.d(t,{Z:()=>v});var o=n(6522),r=n(1815);function a(e,t){return function(n){(function(e,t){if(e.v)throw new Error("attempted to call addInitializer after decoration was finished")})(t),c(n,"An initializer"),e.push(n)}}function i(e,t){if(!e(t))throw new TypeError("Attempted to access private element on non-instance")}function l(e,t,n,o,r,l,c,s,d,u){var p;switch(l){case 1:p="accessor";break;case 2:p="method";break;case 3:p="getter";break;case 4:p="setter";break;default:p="field"}var f,h,v={kind:p,name:s?"#"+n:n,static:c,private:s},g={v:!1};if(0!==l&&(v.addInitializer=a(r,g)),s||0!==l&&2!==l)if(2===l)f=function(e){return i(u,e),o.value};else{var m=0===l||1===l;(m||3===l)&&(f=s?function(e){return i(u,e),o.get.call(e)}:function(e){return o.get.call(e)}),(m||4===l)&&(h=s?function(e,t){i(u,e),o.set.call(e,t)}:function(e,t){o.set.call(e,t)})}else f=function(e){return e[n]},0===l&&(h=function(e,t){e[n]=t});var b=s?u.bind():function(e){return n in e};v.access=f&&h?{get:f,set:h,has:b}:f?{get:f,has:b}:{set:h,has:b};try{return e.call(t,d,v)}finally{g.v=!0}}function c(e,t){if("function"!=typeof e)throw new TypeError(t+" must be a function")}function s(e,t){var n=(0,o.Z)(t);if(1===e){if("object"!==n||null===t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");void 0!==t.get&&c(t.get,"accessor.get"),void 0!==t.set&&c(t.set,"accessor.set"),void 0!==t.init&&c(t.init,"accessor.init")}else if("function"!==n)throw new TypeError((0===e?"field":5===e?"class":"method")+" decorators must return a function or void 0")}function d(e){return function(){return e(this)}}function u(e){return function(t){e(this,t)}}function p(e,t,n,o,r,a,i,c,p,f){var h,v,g,m,b,y,x=n[0];o||Array.isArray(x)||(x=[x]),c?h=0===a||1===a?{get:d(n[3]),set:u(n[4])}:3===a?{get:n[3]}:4===a?{set:n[3]}:{value:n[3]}:0!==a&&(h=Object.getOwnPropertyDescriptor(t,r)),1===a?g={get:h.get,set:h.set}:2===a?g=h.value:3===a?g=h.get:4===a&&(g=h.set);for(var w=o?2:1,k=x.length-1;k>=0;k-=w){var E;void 0!==(m=l(x[k],o?x[k-1]:void 0,r,h,p,a,i,c,g,f))&&(s(a,m),0===a?E=m:1===a?(E=m.init,b=m.get||g.get,y=m.set||g.set,g={get:b,set:y}):g=m,void 0!==E&&(void 0===v?v=E:"function"==typeof v?v=[v,E]:v.push(E)))}if(0===a||1===a){if(void 0===v)v=function(e,t){return t};else if("function"!=typeof v){var C=v;v=function(e,t){for(var n=t,o=C.length-1;o>=0;o--)n=C[o].call(e,n);return n}}else{var L=v;v=function(e,t){return L.call(e,t)}}e.push(v)}0!==a&&(1===a?(h.get=g.get,h.set=g.set):2===a?h.value=g:3===a?h.get=g:4===a&&(h.set=g),c?1===a?(e.push((function(e,t){return g.get.call(e,t)})),e.push((function(e,t){return g.set.call(e,t)}))):2===a?e.push(g):e.push((function(e,t){return g.call(e,t)})):Object.defineProperty(t,r,h))}function f(e,t,n){for(var o,a,i,l=[],c=new Map,s=new Map,d=0;d<t.length;d++){var u=t[d];if(Array.isArray(u)){var f,v,g=u[1],m=u[2],b=u.length>3,y=16&g,x=!!(8&g),w=n;if(g&=7,x?(f=e,0!==g&&(v=a=a||[]),b&&!i&&(i=function(t){return(0,r.Z)(t)===e}),w=i):(f=e.prototype,0!==g&&(v=o=o||[])),0!==g&&!b){var k=x?s:c,E=k.get(m)||0;if(!0===E||3===E&&4!==g||4===E&&3!==g)throw new Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+m);k.set(m,!(!E&&g>2)||g)}p(l,f,u,y,m,g,x,b,v,w)}}return h(l,o),h(l,a),l}function h(e,t){t&&e.push((function(e){for(var n=0;n<t.length;n++)t[n].call(e);return e}))}function v(e,t,n,o,r){return{e:f(e,t,r),get c(){return function(e,t,n){if(t.length){for(var o=[],r=e,i=e.name,l=n?2:1,c=t.length-1;c>=0;c-=l){var d={v:!1};try{var u=t[c].call(n?t[c-1]:void 0,r,{kind:"class",name:i,addInitializer:a(o,d)})}finally{d.v=!0}void 0!==u&&(s(5,u),r=u)}return[r,function(){for(var e=0;e<o.length;e++)o[e].call(r)}]}}(e,n,o)}}}},1815:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});var o=n(6522);function r(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,o.Z)(e):"null"));return e}},5863:(e,t,n)=>{"use strict";function o(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{Z:()=>o})},175:(e,t,n)=>{"use strict";function o(e,t,n){if(!t.has(e))throw new TypeError("attempted to "+n+" private field on non-instance");return t.get(e)}n.d(t,{Z:()=>o})},687:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});var o=n(175);function r(e,t){return function(e,t){return t.get?t.get.call(e):t.value}(e,(0,o.Z)(e,t,"get"))}},3395:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});var o=n(5863);function r(e,t,n){(0,o.Z)(e,t),t.set(e,n)}},381:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});var o=n(175);function r(e,t,n){return function(e,t,n){if(t.set)t.set.call(e,n);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=n}}(e,(0,o.Z)(e,t,"set"),n),n}},7896:(e,t,n)=>{"use strict";function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},o.apply(this,arguments)}n.d(t,{Z:()=>o})}}]);
|
|
3
|
+
//# sourceMappingURL=541.b19b39e2.js.map
|