@next-libs/visual-builder 1.12.9 → 1.12.10
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/cjs/interfaces/workbench-mini-action-bar.js.map +1 -1
- package/dist/cjs/workbench-mini-action-bar/WorkbenchMiniActionBar.js +3 -1
- package/dist/cjs/workbench-mini-action-bar/WorkbenchMiniActionBar.js.map +1 -1
- package/dist/esm/interfaces/workbench-mini-action-bar.js.map +1 -1
- package/dist/esm/workbench-mini-action-bar/WorkbenchMiniActionBar.js +3 -1
- package/dist/esm/workbench-mini-action-bar/WorkbenchMiniActionBar.js.map +1 -1
- package/dist/types/interfaces/workbench-mini-action-bar.d.ts +2 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbench-mini-action-bar.js","names":[],"sources":["../../../src/interfaces/workbench-mini-action-bar.ts"],"sourcesContent":["import { MenuIcon, UseBrickConf } from \"@next-core/brick-types\";\n\nexport interface WorkbenchTreeAction {\n action: string;\n icon: MenuIcon;\n title?: string;\n if?: string | boolean;\n iconUseBrick?: {\n useBrick: UseBrickConf;\n };\n}\n\nexport interface ActionClickDetail {\n action: string;\n data?: unknown;\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"workbench-mini-action-bar.js","names":[],"sources":["../../../src/interfaces/workbench-mini-action-bar.ts"],"sourcesContent":["import { MenuIcon, UseBrickConf } from \"@next-core/brick-types\";\n\nexport interface WorkbenchTreeAction {\n action: string;\n icon: MenuIcon;\n title?: string;\n if?: string | boolean;\n iconUseBrick?: {\n useBrick: UseBrickConf;\n };\n}\n\nexport interface ActionClickDetail {\n action: string;\n data?: unknown;\n clientX: number;\n clientY?: number;\n}\n"],"mappings":""}
|
|
@@ -57,7 +57,9 @@ function WorkbenchSubAction({
|
|
|
57
57
|
event.stopPropagation();
|
|
58
58
|
disabled || (onActionClick === null || onActionClick === void 0 ? void 0 : onActionClick({
|
|
59
59
|
action: action.action,
|
|
60
|
-
data: data
|
|
60
|
+
data: data,
|
|
61
|
+
clientX: event.clientX,
|
|
62
|
+
clientY: event.clientY
|
|
61
63
|
}));
|
|
62
64
|
}, [action.action, data, disabled, onActionClick]);
|
|
63
65
|
(0, _react.useEffect)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkbenchMiniActionBar.js","names":["WorkbenchMiniActionBar","data","className","gap","isFirst","isLast","actions","actionsHidden","useNativeEvent","onActionClick","enabledActions","useMemo","filter","item","looseCheckIfByTransform","length","classNames","styles","actionsBar","map","action","WorkbenchSubAction","disabled","linkRef","useRef","handleActionClick","useCallback","event","preventDefault","stopPropagation","useEffect","link","current","addEventListener","removeEventListener","preventMouseEvent","title","iconUseBrick","useBrick","icon"],"sources":["../../../src/workbench-mini-action-bar/WorkbenchMiniActionBar.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport {\n BrickAsComponent,\n looseCheckIfByTransform,\n} from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { WorkbenchTreeAction, ActionClickDetail } from \"../interfaces\";\n\nimport styles from \"./WorkbenchMiniActionBar.module.css\";\n\nexport interface WorkbenchSubActionBarProps {\n data?: unknown;\n className?: string;\n gap?: number;\n isFirst?: boolean;\n isLast?: boolean;\n actions?: WorkbenchTreeAction[];\n actionsHidden?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nexport function WorkbenchMiniActionBar({\n data,\n className,\n gap,\n isFirst,\n isLast,\n actions,\n actionsHidden,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionBarProps): React.ReactElement {\n const enabledActions = useMemo(\n () => actions?.filter((item) => looseCheckIfByTransform(item, data)),\n [actions, data]\n );\n\n if (actionsHidden || !enabledActions?.length) {\n return null;\n }\n\n return (\n <div className={classNames(styles.actionsBar, className)} style={{ gap }}>\n {enabledActions.map((item) => (\n <WorkbenchSubAction\n key={item.action}\n action={item}\n data={data}\n isFirst={isFirst}\n isLast={isLast}\n useNativeEvent={useNativeEvent}\n onActionClick={onActionClick}\n />\n ))}\n </div>\n );\n}\n\ninterface WorkbenchSubActionProps {\n action: WorkbenchTreeAction;\n data?: unknown;\n isFirst?: boolean;\n isLast?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nfunction WorkbenchSubAction({\n action,\n data,\n isFirst,\n isLast,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionProps): React.ReactElement {\n const disabled =\n (isFirst && action.action === \"move-up\") ||\n (isLast && action.action === \"move-down\");\n const linkRef = useRef<HTMLAnchorElement>();\n\n const handleActionClick = useCallback(\n (event: MouseEvent | React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n disabled ||\n onActionClick?.({\n action: action.action,\n data: data,\n });\n },\n [action.action, data, disabled, onActionClick]\n );\n\n useEffect(() => {\n const link = linkRef.current;\n if (!link || !useNativeEvent) {\n return;\n }\n link.addEventListener(\"click\", handleActionClick);\n return () => {\n link.removeEventListener(\"click\", handleActionClick);\n };\n }, [handleActionClick, useNativeEvent]);\n\n const preventMouseEvent = useCallback((event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n }, []);\n\n return (\n <a\n className={classNames(styles.action, { [styles.disabled]: disabled })}\n title={action.title}\n role=\"button\"\n ref={linkRef}\n onClick={handleActionClick}\n onContextMenu={preventMouseEvent}\n onMouseDown={preventMouseEvent}\n >\n {action.iconUseBrick?.useBrick ? (\n <BrickAsComponent useBrick={action.iconUseBrick.useBrick} data={data} />\n ) : (\n <GeneralIcon icon={action.icon} />\n )}\n </a>\n );\n}\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AAIA;AAGA;AAcO,SAASA,sBAAsB,CAAC;EACrCC,IAAI;EACJC,SAAS;EACTC,GAAG;EACHC,OAAO;EACPC,MAAM;EACNC,OAAO;EACPC,aAAa;EACbC,cAAc;EACdC;AAC0B,CAAC,EAAsB;EACjD,MAAMC,cAAc,GAAG,IAAAC,cAAO,EAC5B,MAAML,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEM,MAAM,CAAEC,IAAI,IAAK,IAAAC,iCAAuB,EAACD,IAAI,EAAEZ,IAAI,CAAC,CAAC,EACpE,CAACK,OAAO,EAAEL,IAAI,CAAC,CAChB;EAED,IAAIM,aAAa,IAAI,EAACG,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAEK,MAAM,GAAE;IAC5C,OAAO,IAAI;EACb;EAEA,oBACE;IAAK,SAAS,EAAE,IAAAC,mBAAU,EAACC,qCAAM,CAACC,UAAU,EAAEhB,SAAS,CAAE;IAAC,KAAK,EAAE;MAAEC;IAAI;EAAE,GACtEO,cAAc,CAACS,GAAG,CAAEN,IAAI,iBACvB,6BAAC,kBAAkB;IACjB,GAAG,EAAEA,IAAI,CAACO,MAAO;IACjB,MAAM,EAAEP,IAAK;IACb,IAAI,EAAEZ,IAAK;IACX,OAAO,EAAEG,OAAQ;IACjB,MAAM,EAAEC,MAAO;IACf,cAAc,EAAEG,cAAe;IAC/B,aAAa,EAAEC;EAAc,EAEhC,CAAC,CACE;AAEV;AAWA,SAASY,kBAAkB,CAAC;EAC1BD,MAAM;EACNnB,IAAI;EACJG,OAAO;EACPC,MAAM;EACNG,cAAc;EACdC;AACuB,CAAC,EAAsB;EAAA;EAC9C,MAAMa,QAAQ,GACXlB,OAAO,IAAIgB,MAAM,CAACA,MAAM,KAAK,SAAS,IACtCf,MAAM,IAAIe,MAAM,CAACA,MAAM,KAAK,WAAY;EAC3C,MAAMG,OAAO,GAAG,IAAAC,aAAM,GAAqB;EAE3C,MAAMC,iBAAiB,GAAG,IAAAC,kBAAW,EAClCC,KAAoC,IAAK;IACxCA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACE,eAAe,EAAE;IACvBP,QAAQ,KACNb,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAG;MACdW,MAAM,EAAEA,MAAM,CAACA,MAAM;MACrBnB,IAAI,EAAEA;
|
|
1
|
+
{"version":3,"file":"WorkbenchMiniActionBar.js","names":["WorkbenchMiniActionBar","data","className","gap","isFirst","isLast","actions","actionsHidden","useNativeEvent","onActionClick","enabledActions","useMemo","filter","item","looseCheckIfByTransform","length","classNames","styles","actionsBar","map","action","WorkbenchSubAction","disabled","linkRef","useRef","handleActionClick","useCallback","event","preventDefault","stopPropagation","clientX","clientY","useEffect","link","current","addEventListener","removeEventListener","preventMouseEvent","title","iconUseBrick","useBrick","icon"],"sources":["../../../src/workbench-mini-action-bar/WorkbenchMiniActionBar.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport {\n BrickAsComponent,\n looseCheckIfByTransform,\n} from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { WorkbenchTreeAction, ActionClickDetail } from \"../interfaces\";\n\nimport styles from \"./WorkbenchMiniActionBar.module.css\";\n\nexport interface WorkbenchSubActionBarProps {\n data?: unknown;\n className?: string;\n gap?: number;\n isFirst?: boolean;\n isLast?: boolean;\n actions?: WorkbenchTreeAction[];\n actionsHidden?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nexport function WorkbenchMiniActionBar({\n data,\n className,\n gap,\n isFirst,\n isLast,\n actions,\n actionsHidden,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionBarProps): React.ReactElement {\n const enabledActions = useMemo(\n () => actions?.filter((item) => looseCheckIfByTransform(item, data)),\n [actions, data]\n );\n\n if (actionsHidden || !enabledActions?.length) {\n return null;\n }\n\n return (\n <div className={classNames(styles.actionsBar, className)} style={{ gap }}>\n {enabledActions.map((item) => (\n <WorkbenchSubAction\n key={item.action}\n action={item}\n data={data}\n isFirst={isFirst}\n isLast={isLast}\n useNativeEvent={useNativeEvent}\n onActionClick={onActionClick}\n />\n ))}\n </div>\n );\n}\n\ninterface WorkbenchSubActionProps {\n action: WorkbenchTreeAction;\n data?: unknown;\n isFirst?: boolean;\n isLast?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nfunction WorkbenchSubAction({\n action,\n data,\n isFirst,\n isLast,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionProps): React.ReactElement {\n const disabled =\n (isFirst && action.action === \"move-up\") ||\n (isLast && action.action === \"move-down\");\n const linkRef = useRef<HTMLAnchorElement>();\n\n const handleActionClick = useCallback(\n (event: MouseEvent | React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n disabled ||\n onActionClick?.({\n action: action.action,\n data: data,\n clientX: event.clientX,\n clientY: event.clientY,\n });\n },\n [action.action, data, disabled, onActionClick]\n );\n\n useEffect(() => {\n const link = linkRef.current;\n if (!link || !useNativeEvent) {\n return;\n }\n link.addEventListener(\"click\", handleActionClick);\n return () => {\n link.removeEventListener(\"click\", handleActionClick);\n };\n }, [handleActionClick, useNativeEvent]);\n\n const preventMouseEvent = useCallback((event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n }, []);\n\n return (\n <a\n className={classNames(styles.action, { [styles.disabled]: disabled })}\n title={action.title}\n role=\"button\"\n ref={linkRef}\n onClick={handleActionClick}\n onContextMenu={preventMouseEvent}\n onMouseDown={preventMouseEvent}\n >\n {action.iconUseBrick?.useBrick ? (\n <BrickAsComponent useBrick={action.iconUseBrick.useBrick} data={data} />\n ) : (\n <GeneralIcon icon={action.icon} />\n )}\n </a>\n );\n}\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AAIA;AAGA;AAcO,SAASA,sBAAsB,CAAC;EACrCC,IAAI;EACJC,SAAS;EACTC,GAAG;EACHC,OAAO;EACPC,MAAM;EACNC,OAAO;EACPC,aAAa;EACbC,cAAc;EACdC;AAC0B,CAAC,EAAsB;EACjD,MAAMC,cAAc,GAAG,IAAAC,cAAO,EAC5B,MAAML,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEM,MAAM,CAAEC,IAAI,IAAK,IAAAC,iCAAuB,EAACD,IAAI,EAAEZ,IAAI,CAAC,CAAC,EACpE,CAACK,OAAO,EAAEL,IAAI,CAAC,CAChB;EAED,IAAIM,aAAa,IAAI,EAACG,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAEK,MAAM,GAAE;IAC5C,OAAO,IAAI;EACb;EAEA,oBACE;IAAK,SAAS,EAAE,IAAAC,mBAAU,EAACC,qCAAM,CAACC,UAAU,EAAEhB,SAAS,CAAE;IAAC,KAAK,EAAE;MAAEC;IAAI;EAAE,GACtEO,cAAc,CAACS,GAAG,CAAEN,IAAI,iBACvB,6BAAC,kBAAkB;IACjB,GAAG,EAAEA,IAAI,CAACO,MAAO;IACjB,MAAM,EAAEP,IAAK;IACb,IAAI,EAAEZ,IAAK;IACX,OAAO,EAAEG,OAAQ;IACjB,MAAM,EAAEC,MAAO;IACf,cAAc,EAAEG,cAAe;IAC/B,aAAa,EAAEC;EAAc,EAEhC,CAAC,CACE;AAEV;AAWA,SAASY,kBAAkB,CAAC;EAC1BD,MAAM;EACNnB,IAAI;EACJG,OAAO;EACPC,MAAM;EACNG,cAAc;EACdC;AACuB,CAAC,EAAsB;EAAA;EAC9C,MAAMa,QAAQ,GACXlB,OAAO,IAAIgB,MAAM,CAACA,MAAM,KAAK,SAAS,IACtCf,MAAM,IAAIe,MAAM,CAACA,MAAM,KAAK,WAAY;EAC3C,MAAMG,OAAO,GAAG,IAAAC,aAAM,GAAqB;EAE3C,MAAMC,iBAAiB,GAAG,IAAAC,kBAAW,EAClCC,KAAoC,IAAK;IACxCA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACE,eAAe,EAAE;IACvBP,QAAQ,KACNb,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAG;MACdW,MAAM,EAAEA,MAAM,CAACA,MAAM;MACrBnB,IAAI,EAAEA,IAAI;MACV6B,OAAO,EAAEH,KAAK,CAACG,OAAO;MACtBC,OAAO,EAAEJ,KAAK,CAACI;IACjB,CAAC,CAAC;EACN,CAAC,EACD,CAACX,MAAM,CAACA,MAAM,EAAEnB,IAAI,EAAEqB,QAAQ,EAAEb,aAAa,CAAC,CAC/C;EAED,IAAAuB,gBAAS,EAAC,MAAM;IACd,MAAMC,IAAI,GAAGV,OAAO,CAACW,OAAO;IAC5B,IAAI,CAACD,IAAI,IAAI,CAACzB,cAAc,EAAE;MAC5B;IACF;IACAyB,IAAI,CAACE,gBAAgB,CAAC,OAAO,EAAEV,iBAAiB,CAAC;IACjD,OAAO,MAAM;MACXQ,IAAI,CAACG,mBAAmB,CAAC,OAAO,EAAEX,iBAAiB,CAAC;IACtD,CAAC;EACH,CAAC,EAAE,CAACA,iBAAiB,EAAEjB,cAAc,CAAC,CAAC;EAEvC,MAAM6B,iBAAiB,GAAG,IAAAX,kBAAW,EAAEC,KAAuB,IAAK;IACjEA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACE,eAAe,EAAE;EACzB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE;IACE,SAAS,EAAE,IAAAb,mBAAU,EAACC,qCAAM,CAACG,MAAM,EAAE;MAAE,CAACH,qCAAM,CAACK,QAAQ,GAAGA;IAAS,CAAC,CAAE;IACtE,KAAK,EAAEF,MAAM,CAACkB,KAAM;IACpB,IAAI,EAAC,QAAQ;IACb,GAAG,EAAEf,OAAQ;IACb,OAAO,EAAEE,iBAAkB;IAC3B,aAAa,EAAEY,iBAAkB;IACjC,WAAW,EAAEA;EAAkB,GAE9B,wBAAAjB,MAAM,CAACmB,YAAY,iDAAnB,qBAAqBC,QAAQ,gBAC5B,6BAAC,0BAAgB;IAAC,QAAQ,EAAEpB,MAAM,CAACmB,YAAY,CAACC,QAAS;IAAC,IAAI,EAAEvC;EAAK,EAAG,gBAExE,6BAAC,4BAAW;IAAC,IAAI,EAAEmB,MAAM,CAACqB;EAAK,EAChC,CACC;AAER"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbench-mini-action-bar.js","names":[],"sources":["../../../src/interfaces/workbench-mini-action-bar.ts"],"sourcesContent":["import { MenuIcon, UseBrickConf } from \"@next-core/brick-types\";\n\nexport interface WorkbenchTreeAction {\n action: string;\n icon: MenuIcon;\n title?: string;\n if?: string | boolean;\n iconUseBrick?: {\n useBrick: UseBrickConf;\n };\n}\n\nexport interface ActionClickDetail {\n action: string;\n data?: unknown;\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"workbench-mini-action-bar.js","names":[],"sources":["../../../src/interfaces/workbench-mini-action-bar.ts"],"sourcesContent":["import { MenuIcon, UseBrickConf } from \"@next-core/brick-types\";\n\nexport interface WorkbenchTreeAction {\n action: string;\n icon: MenuIcon;\n title?: string;\n if?: string | boolean;\n iconUseBrick?: {\n useBrick: UseBrickConf;\n };\n}\n\nexport interface ActionClickDetail {\n action: string;\n data?: unknown;\n clientX: number;\n clientY?: number;\n}\n"],"mappings":""}
|
|
@@ -51,7 +51,9 @@ function WorkbenchSubAction(_ref2) {
|
|
|
51
51
|
event.stopPropagation();
|
|
52
52
|
disabled || (onActionClick === null || onActionClick === void 0 ? void 0 : onActionClick({
|
|
53
53
|
action: action.action,
|
|
54
|
-
data: data
|
|
54
|
+
data: data,
|
|
55
|
+
clientX: event.clientX,
|
|
56
|
+
clientY: event.clientY
|
|
55
57
|
}));
|
|
56
58
|
}, [action.action, data, disabled, onActionClick]);
|
|
57
59
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkbenchMiniActionBar.js","names":["React","useCallback","useEffect","useMemo","useRef","classNames","BrickAsComponent","looseCheckIfByTransform","GeneralIcon","styles","WorkbenchMiniActionBar","data","className","gap","isFirst","isLast","actions","actionsHidden","useNativeEvent","onActionClick","enabledActions","filter","item","length","actionsBar","map","action","WorkbenchSubAction","disabled","linkRef","handleActionClick","event","preventDefault","stopPropagation","link","current","addEventListener","removeEventListener","preventMouseEvent","title","iconUseBrick","useBrick","icon"],"sources":["../../../src/workbench-mini-action-bar/WorkbenchMiniActionBar.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport {\n BrickAsComponent,\n looseCheckIfByTransform,\n} from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { WorkbenchTreeAction, ActionClickDetail } from \"../interfaces\";\n\nimport styles from \"./WorkbenchMiniActionBar.module.css\";\n\nexport interface WorkbenchSubActionBarProps {\n data?: unknown;\n className?: string;\n gap?: number;\n isFirst?: boolean;\n isLast?: boolean;\n actions?: WorkbenchTreeAction[];\n actionsHidden?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nexport function WorkbenchMiniActionBar({\n data,\n className,\n gap,\n isFirst,\n isLast,\n actions,\n actionsHidden,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionBarProps): React.ReactElement {\n const enabledActions = useMemo(\n () => actions?.filter((item) => looseCheckIfByTransform(item, data)),\n [actions, data]\n );\n\n if (actionsHidden || !enabledActions?.length) {\n return null;\n }\n\n return (\n <div className={classNames(styles.actionsBar, className)} style={{ gap }}>\n {enabledActions.map((item) => (\n <WorkbenchSubAction\n key={item.action}\n action={item}\n data={data}\n isFirst={isFirst}\n isLast={isLast}\n useNativeEvent={useNativeEvent}\n onActionClick={onActionClick}\n />\n ))}\n </div>\n );\n}\n\ninterface WorkbenchSubActionProps {\n action: WorkbenchTreeAction;\n data?: unknown;\n isFirst?: boolean;\n isLast?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nfunction WorkbenchSubAction({\n action,\n data,\n isFirst,\n isLast,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionProps): React.ReactElement {\n const disabled =\n (isFirst && action.action === \"move-up\") ||\n (isLast && action.action === \"move-down\");\n const linkRef = useRef<HTMLAnchorElement>();\n\n const handleActionClick = useCallback(\n (event: MouseEvent | React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n disabled ||\n onActionClick?.({\n action: action.action,\n data: data,\n });\n },\n [action.action, data, disabled, onActionClick]\n );\n\n useEffect(() => {\n const link = linkRef.current;\n if (!link || !useNativeEvent) {\n return;\n }\n link.addEventListener(\"click\", handleActionClick);\n return () => {\n link.removeEventListener(\"click\", handleActionClick);\n };\n }, [handleActionClick, useNativeEvent]);\n\n const preventMouseEvent = useCallback((event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n }, []);\n\n return (\n <a\n className={classNames(styles.action, { [styles.disabled]: disabled })}\n title={action.title}\n role=\"button\"\n ref={linkRef}\n onClick={handleActionClick}\n onContextMenu={preventMouseEvent}\n onMouseDown={preventMouseEvent}\n >\n {action.iconUseBrick?.useBrick ? (\n <BrickAsComponent useBrick={action.iconUseBrick.useBrick} data={data} />\n ) : (\n <GeneralIcon icon={action.icon} />\n )}\n </a>\n );\n}\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AACtE,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,gBAAgB,EAChBC,uBAAuB,QAClB,sBAAsB;AAC7B,SAASC,WAAW,QAAQ,6BAA6B;AAGzD,OAAOC,MAAM,MAAM,qCAAqC;AAcxD,OAAO,SAASC,sBAAsB,OAUa;EAAA,IAVZ;IACrCC,IAAI;IACJC,SAAS;IACTC,GAAG;IACHC,OAAO;IACPC,MAAM;IACNC,OAAO;IACPC,aAAa;IACbC,cAAc;IACdC;EAC0B,CAAC;EAC3B,IAAMC,cAAc,GAAGjB,OAAO,CAC5B,MAAMa,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,MAAM,CAAEC,IAAI,IAAKf,uBAAuB,CAACe,IAAI,EAAEX,IAAI,CAAC,CAAC,EACpE,CAACK,OAAO,EAAEL,IAAI,CAAC,CAChB;EAED,IAAIM,aAAa,IAAI,EAACG,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAEG,MAAM,GAAE;IAC5C,OAAO,IAAI;EACb;EAEA,oBACE;IAAK,SAAS,EAAElB,UAAU,CAACI,MAAM,CAACe,UAAU,EAAEZ,SAAS,CAAE;IAAC,KAAK,EAAE;MAAEC;IAAI;EAAE,GACtEO,cAAc,CAACK,GAAG,CAAEH,IAAI,iBACvB,oBAAC,kBAAkB;IACjB,GAAG,EAAEA,IAAI,CAACI,MAAO;IACjB,MAAM,EAAEJ,IAAK;IACb,IAAI,EAAEX,IAAK;IACX,OAAO,EAAEG,OAAQ;IACjB,MAAM,EAAEC,MAAO;IACf,cAAc,EAAEG,cAAe;IAC/B,aAAa,EAAEC;EAAc,EAEhC,CAAC,CACE;AAEV;AAWA,SAASQ,kBAAkB,QAOqB;EAAA;EAAA,IAPpB;IAC1BD,MAAM;IACNf,IAAI;IACJG,OAAO;IACPC,MAAM;IACNG,cAAc;IACdC;EACuB,CAAC;EACxB,IAAMS,QAAQ,GACXd,OAAO,IAAIY,MAAM,CAACA,MAAM,KAAK,SAAS,IACtCX,MAAM,IAAIW,MAAM,CAACA,MAAM,KAAK,WAAY;EAC3C,IAAMG,OAAO,GAAGzB,MAAM,EAAqB;EAE3C,IAAM0B,iBAAiB,GAAG7B,WAAW,CAClC8B,KAAoC,IAAK;IACxCA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACE,eAAe,EAAE;IACvBL,QAAQ,KACNT,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAG;MACdO,MAAM,EAAEA,MAAM,CAACA,MAAM;MACrBf,IAAI,EAAEA;
|
|
1
|
+
{"version":3,"file":"WorkbenchMiniActionBar.js","names":["React","useCallback","useEffect","useMemo","useRef","classNames","BrickAsComponent","looseCheckIfByTransform","GeneralIcon","styles","WorkbenchMiniActionBar","data","className","gap","isFirst","isLast","actions","actionsHidden","useNativeEvent","onActionClick","enabledActions","filter","item","length","actionsBar","map","action","WorkbenchSubAction","disabled","linkRef","handleActionClick","event","preventDefault","stopPropagation","clientX","clientY","link","current","addEventListener","removeEventListener","preventMouseEvent","title","iconUseBrick","useBrick","icon"],"sources":["../../../src/workbench-mini-action-bar/WorkbenchMiniActionBar.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport {\n BrickAsComponent,\n looseCheckIfByTransform,\n} from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { WorkbenchTreeAction, ActionClickDetail } from \"../interfaces\";\n\nimport styles from \"./WorkbenchMiniActionBar.module.css\";\n\nexport interface WorkbenchSubActionBarProps {\n data?: unknown;\n className?: string;\n gap?: number;\n isFirst?: boolean;\n isLast?: boolean;\n actions?: WorkbenchTreeAction[];\n actionsHidden?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nexport function WorkbenchMiniActionBar({\n data,\n className,\n gap,\n isFirst,\n isLast,\n actions,\n actionsHidden,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionBarProps): React.ReactElement {\n const enabledActions = useMemo(\n () => actions?.filter((item) => looseCheckIfByTransform(item, data)),\n [actions, data]\n );\n\n if (actionsHidden || !enabledActions?.length) {\n return null;\n }\n\n return (\n <div className={classNames(styles.actionsBar, className)} style={{ gap }}>\n {enabledActions.map((item) => (\n <WorkbenchSubAction\n key={item.action}\n action={item}\n data={data}\n isFirst={isFirst}\n isLast={isLast}\n useNativeEvent={useNativeEvent}\n onActionClick={onActionClick}\n />\n ))}\n </div>\n );\n}\n\ninterface WorkbenchSubActionProps {\n action: WorkbenchTreeAction;\n data?: unknown;\n isFirst?: boolean;\n isLast?: boolean;\n useNativeEvent?: boolean;\n onActionClick?(detail: ActionClickDetail): void;\n}\n\nfunction WorkbenchSubAction({\n action,\n data,\n isFirst,\n isLast,\n useNativeEvent,\n onActionClick,\n}: WorkbenchSubActionProps): React.ReactElement {\n const disabled =\n (isFirst && action.action === \"move-up\") ||\n (isLast && action.action === \"move-down\");\n const linkRef = useRef<HTMLAnchorElement>();\n\n const handleActionClick = useCallback(\n (event: MouseEvent | React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n disabled ||\n onActionClick?.({\n action: action.action,\n data: data,\n clientX: event.clientX,\n clientY: event.clientY,\n });\n },\n [action.action, data, disabled, onActionClick]\n );\n\n useEffect(() => {\n const link = linkRef.current;\n if (!link || !useNativeEvent) {\n return;\n }\n link.addEventListener(\"click\", handleActionClick);\n return () => {\n link.removeEventListener(\"click\", handleActionClick);\n };\n }, [handleActionClick, useNativeEvent]);\n\n const preventMouseEvent = useCallback((event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n }, []);\n\n return (\n <a\n className={classNames(styles.action, { [styles.disabled]: disabled })}\n title={action.title}\n role=\"button\"\n ref={linkRef}\n onClick={handleActionClick}\n onContextMenu={preventMouseEvent}\n onMouseDown={preventMouseEvent}\n >\n {action.iconUseBrick?.useBrick ? (\n <BrickAsComponent useBrick={action.iconUseBrick.useBrick} data={data} />\n ) : (\n <GeneralIcon icon={action.icon} />\n )}\n </a>\n );\n}\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AACtE,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,gBAAgB,EAChBC,uBAAuB,QAClB,sBAAsB;AAC7B,SAASC,WAAW,QAAQ,6BAA6B;AAGzD,OAAOC,MAAM,MAAM,qCAAqC;AAcxD,OAAO,SAASC,sBAAsB,OAUa;EAAA,IAVZ;IACrCC,IAAI;IACJC,SAAS;IACTC,GAAG;IACHC,OAAO;IACPC,MAAM;IACNC,OAAO;IACPC,aAAa;IACbC,cAAc;IACdC;EAC0B,CAAC;EAC3B,IAAMC,cAAc,GAAGjB,OAAO,CAC5B,MAAMa,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,MAAM,CAAEC,IAAI,IAAKf,uBAAuB,CAACe,IAAI,EAAEX,IAAI,CAAC,CAAC,EACpE,CAACK,OAAO,EAAEL,IAAI,CAAC,CAChB;EAED,IAAIM,aAAa,IAAI,EAACG,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAEG,MAAM,GAAE;IAC5C,OAAO,IAAI;EACb;EAEA,oBACE;IAAK,SAAS,EAAElB,UAAU,CAACI,MAAM,CAACe,UAAU,EAAEZ,SAAS,CAAE;IAAC,KAAK,EAAE;MAAEC;IAAI;EAAE,GACtEO,cAAc,CAACK,GAAG,CAAEH,IAAI,iBACvB,oBAAC,kBAAkB;IACjB,GAAG,EAAEA,IAAI,CAACI,MAAO;IACjB,MAAM,EAAEJ,IAAK;IACb,IAAI,EAAEX,IAAK;IACX,OAAO,EAAEG,OAAQ;IACjB,MAAM,EAAEC,MAAO;IACf,cAAc,EAAEG,cAAe;IAC/B,aAAa,EAAEC;EAAc,EAEhC,CAAC,CACE;AAEV;AAWA,SAASQ,kBAAkB,QAOqB;EAAA;EAAA,IAPpB;IAC1BD,MAAM;IACNf,IAAI;IACJG,OAAO;IACPC,MAAM;IACNG,cAAc;IACdC;EACuB,CAAC;EACxB,IAAMS,QAAQ,GACXd,OAAO,IAAIY,MAAM,CAACA,MAAM,KAAK,SAAS,IACtCX,MAAM,IAAIW,MAAM,CAACA,MAAM,KAAK,WAAY;EAC3C,IAAMG,OAAO,GAAGzB,MAAM,EAAqB;EAE3C,IAAM0B,iBAAiB,GAAG7B,WAAW,CAClC8B,KAAoC,IAAK;IACxCA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACE,eAAe,EAAE;IACvBL,QAAQ,KACNT,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAG;MACdO,MAAM,EAAEA,MAAM,CAACA,MAAM;MACrBf,IAAI,EAAEA,IAAI;MACVuB,OAAO,EAAEH,KAAK,CAACG,OAAO;MACtBC,OAAO,EAAEJ,KAAK,CAACI;IACjB,CAAC,CAAC;EACN,CAAC,EACD,CAACT,MAAM,CAACA,MAAM,EAAEf,IAAI,EAAEiB,QAAQ,EAAET,aAAa,CAAC,CAC/C;EAEDjB,SAAS,CAAC,MAAM;IACd,IAAMkC,IAAI,GAAGP,OAAO,CAACQ,OAAO;IAC5B,IAAI,CAACD,IAAI,IAAI,CAAClB,cAAc,EAAE;MAC5B;IACF;IACAkB,IAAI,CAACE,gBAAgB,CAAC,OAAO,EAAER,iBAAiB,CAAC;IACjD,OAAO,MAAM;MACXM,IAAI,CAACG,mBAAmB,CAAC,OAAO,EAAET,iBAAiB,CAAC;IACtD,CAAC;EACH,CAAC,EAAE,CAACA,iBAAiB,EAAEZ,cAAc,CAAC,CAAC;EAEvC,IAAMsB,iBAAiB,GAAGvC,WAAW,CAAE8B,KAAuB,IAAK;IACjEA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACE,eAAe,EAAE;EACzB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE;IACE,SAAS,EAAE5B,UAAU,CAACI,MAAM,CAACiB,MAAM,EAAE;MAAE,CAACjB,MAAM,CAACmB,QAAQ,GAAGA;IAAS,CAAC,CAAE;IACtE,KAAK,EAAEF,MAAM,CAACe,KAAM;IACpB,IAAI,EAAC,QAAQ;IACb,GAAG,EAAEZ,OAAQ;IACb,OAAO,EAAEC,iBAAkB;IAC3B,aAAa,EAAEU,iBAAkB;IACjC,WAAW,EAAEA;EAAkB,GAE9B,wBAAAd,MAAM,CAACgB,YAAY,iDAAnB,qBAAqBC,QAAQ,gBAC5B,oBAAC,gBAAgB;IAAC,QAAQ,EAAEjB,MAAM,CAACgB,YAAY,CAACC,QAAS;IAAC,IAAI,EAAEhC;EAAK,EAAG,gBAExE,oBAAC,WAAW;IAAC,IAAI,EAAEe,MAAM,CAACkB;EAAK,EAChC,CACC;AAER"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@next-libs/visual-builder",
|
|
3
|
-
"version": "1.12.
|
|
3
|
+
"version": "1.12.10",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"homepage": "https://github.com/easyops-cn/next-libs/tree/master/libs/visual-builder",
|
|
6
6
|
"license": "GPL-3.0",
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"@types/react-color": "^3.0.6",
|
|
36
36
|
"react-color": "^2.19.3"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "94863eb5f8b55d00e0f6ca072b0a2c0c151394e7"
|
|
39
39
|
}
|