seat-editor 3.0.2 → 3.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/dist/app/constant.d.ts +1 -1
  2. package/dist/app/layout.d.ts +1 -1
  3. package/dist/app/{layout.jsx → layout.js} +2 -7
  4. package/dist/app/new-board/page.d.ts +1 -1
  5. package/dist/app/new-board/page.js +33 -0
  6. package/dist/app/old-board/page.d.ts +1 -2
  7. package/dist/app/old-board/{page.jsx → page.js} +82 -215
  8. package/dist/app/only-view/chair.d.ts +1 -1
  9. package/dist/app/only-view/chair.js +2 -10
  10. package/dist/app/only-view/page.d.ts +1 -1
  11. package/dist/app/only-view/page.js +78 -0
  12. package/dist/app/only-view/user.d.ts +1 -1
  13. package/dist/app/only-view/user.js +2 -10
  14. package/dist/app/page.d.ts +1 -1
  15. package/dist/app/page.js +8 -0
  16. package/dist/app/test/page.d.ts +1 -2
  17. package/dist/app/test/{page.jsx → page.js} +3 -5
  18. package/dist/app/v2/page.d.ts +1 -1
  19. package/dist/app/v2/page.js +8 -0
  20. package/dist/components/button-tools/index.d.ts +1 -1
  21. package/dist/components/button-tools/index.js +11 -0
  22. package/dist/components/form-tools/label.d.ts +1 -1
  23. package/dist/components/form-tools/label.js +7 -0
  24. package/dist/components/form-tools/shape.d.ts +1 -1
  25. package/dist/components/form-tools/shape.js +25 -0
  26. package/dist/components/input/number-indicator.d.ts +1 -1
  27. package/dist/components/input/{number-indicator.jsx → number-indicator.js} +2 -11
  28. package/dist/components/joystick/index.d.ts +1 -2
  29. package/dist/components/joystick/{index.jsx → index.js} +13 -14
  30. package/dist/components/layer/index.d.ts +1 -1
  31. package/dist/components/layer/index.js +295 -0
  32. package/dist/components/layer-v2/index.d.ts +1 -1
  33. package/dist/components/layer-v2/index.js +282 -0
  34. package/dist/components/layer-v3/index.d.ts +1 -1
  35. package/dist/components/layer-v3/{index.jsx → index.js} +102 -242
  36. package/dist/components/layer-v4/index.d.ts +3 -3
  37. package/dist/components/layer-v4/{index.jsx → index.js} +81 -158
  38. package/dist/components/lib/index.d.ts +1 -1
  39. package/dist/components/lib/{index.jsx → index.js} +2 -7
  40. package/dist/components/modal-preview/index.d.ts +1 -1
  41. package/dist/components/modal-preview/index.js +10 -0
  42. package/dist/features/board/index.d.ts +1 -1
  43. package/dist/features/board/{index.jsx → index.js} +31 -90
  44. package/dist/features/board-v2/index.d.ts +1 -2
  45. package/dist/features/board-v2/{index.jsx → index.js} +39 -101
  46. package/dist/features/board-v3/index copy.d.ts +1 -2
  47. package/dist/features/board-v3/{index copy.jsx → index copy.js } +50 -128
  48. package/dist/features/board-v3/index.d.ts +1 -2
  49. package/dist/features/board-v3/{index.jsx → index.js} +32 -110
  50. package/dist/features/navbar/index.d.ts +1 -1
  51. package/dist/features/navbar/index.js +6 -0
  52. package/dist/features/package/index.d.ts +1 -1
  53. package/dist/features/package/{index.jsx → index.js} +6 -16
  54. package/dist/features/panel/index.d.ts +1 -1
  55. package/dist/features/panel/{index.jsx → index.js} +7 -25
  56. package/dist/features/panel/select-tool.d.ts +1 -1
  57. package/dist/features/panel/{select-tool.jsx → select-tool.js} +10 -23
  58. package/dist/features/panel/selected-group.d.ts +1 -1
  59. package/dist/features/panel/selected-group.js +7 -0
  60. package/dist/features/panel/square-circle-tool.d.ts +1 -1
  61. package/dist/features/panel/{square-circle-tool.jsx → square-circle-tool.js} +2 -4
  62. package/dist/features/panel/table-seat-circle.d.ts +1 -1
  63. package/dist/features/panel/table-seat-circle.js +9 -0
  64. package/dist/features/panel/table-seat-square.d.ts +1 -1
  65. package/dist/features/panel/table-seat-square.js +9 -0
  66. package/dist/features/panel/text-tool.d.ts +1 -1
  67. package/dist/features/panel/text-tool.js +7 -0
  68. package/dist/features/panel/upload-tool.d.ts +1 -1
  69. package/dist/features/panel/{upload-tool.jsx → upload-tool.js} +2 -24
  70. package/dist/features/side-tool/index.d.ts +1 -1
  71. package/dist/features/side-tool/{index.jsx → index.js} +98 -120
  72. package/dist/features/view-only/index.d.ts +1 -1
  73. package/dist/features/view-only/{index.jsx → index.js} +31 -38
  74. package/dist/features/view-only-2/index.d.ts +1 -1
  75. package/dist/features/view-only-2/{index.jsx → index.js} +13 -16
  76. package/dist/features/view-only-3/index.d.ts +3 -3
  77. package/dist/features/view-only-3/{index.jsx → index.js} +27 -46
  78. package/dist/provider/antd-provider.js +43 -0
  79. package/dist/provider/redux-provider.d.ts +1 -1
  80. package/dist/provider/{redux-provider.jsx → redux-provider.js} +2 -1
  81. package/dist/provider/store-provider.d.ts +1 -1
  82. package/dist/provider/{store-provider.jsx → store-provider.js} +2 -3
  83. package/package.json +1 -1
  84. package/dist/app/new-board/page.jsx +0 -55
  85. package/dist/app/only-view/page.jsx +0 -101
  86. package/dist/app/page.jsx +0 -13
  87. package/dist/app/v2/page.jsx +0 -13
  88. package/dist/components/button-tools/index.jsx +0 -17
  89. package/dist/components/form-tools/label.jsx +0 -44
  90. package/dist/components/form-tools/shape.jsx +0 -66
  91. package/dist/components/layer/index.jsx +0 -383
  92. package/dist/components/layer-v2/index.jsx +0 -370
  93. package/dist/components/modal-preview/index.jsx +0 -11
  94. package/dist/features/navbar/index.jsx +0 -5
  95. package/dist/features/panel/selected-group.jsx +0 -47
  96. package/dist/features/panel/table-seat-circle.jsx +0 -31
  97. package/dist/features/panel/table-seat-square.jsx +0 -46
  98. package/dist/features/panel/text-tool.jsx +0 -26
  99. package/dist/provider/antd-provider.jsx +0 -46
@@ -1,8 +1,7 @@
1
- import React from "react";
2
1
  interface BoardTemplateProps {
3
2
  onSelectComponent?: (items: any) => void;
4
3
  mappingKey?: string;
5
4
  viewOnly?: boolean;
6
5
  }
7
- declare const BoardTemplate: ({ onSelectComponent, viewOnly }: BoardTemplateProps) => React.JSX.Element;
6
+ declare const BoardTemplate: ({ onSelectComponent, viewOnly }: BoardTemplateProps) => import("react/jsx-runtime").JSX.Element;
8
7
  export default BoardTemplate;
@@ -1,5 +1,6 @@
1
1
  "use client";
2
- import React, { useCallback, useEffect, useRef, useState } from "react";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useCallback, useEffect, useRef, useState } from "react";
3
4
  import { TransformWrapper, TransformComponent, MiniMap, } from "react-zoom-pan-pinch";
4
5
  import { useAppSelector, useAppDispatch } from "../../hooks/use-redux";
5
6
  import Layers from "../../components/layer-v2";
@@ -695,21 +696,15 @@ const BoardTemplate = ({ onSelectComponent, viewOnly }) => {
695
696
  }
696
697
  };
697
698
  const renderMiniMap = () => {
698
- return (<MiniMap width={250} height={250}>
699
- <div className="w-full h-full">
700
- <svg id="workspace" width="100%" height="100%" viewBox={`0 0 ${widthBoard} ${heightBoard}`} className="h-screen w-full" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" style={{
701
- background: "#f5f5f5",
702
- display: "block",
703
- }}>
704
- <Layers shadowShape={shadowShape} components={[...extraComponentsState, ...componentsState]} activeTool={activeTool}
705
- // onClick={handleSelectComponent}
706
- // onMouseDown={handleMouseDown}
707
- // onMouseUp={handleMouseUp}
708
- // onBlur={handleUnSelectComponent}
709
- selectedComponent={selectedComponent}/>
710
- </svg>
711
- </div>
712
- </MiniMap>);
699
+ return (_jsx(MiniMap, { width: 250, height: 250, children: _jsx("div", { className: "w-full h-full", children: _jsx("svg", { id: "workspace", width: "100%", height: "100%", viewBox: `0 0 ${widthBoard} ${heightBoard}`, className: "h-screen w-full", xmlns: "http://www.w3.org/2000/svg", preserveAspectRatio: "xMidYMid meet", style: {
700
+ background: "#f5f5f5",
701
+ display: "block",
702
+ }, children: _jsx(Layers, { shadowShape: shadowShape, components: [...extraComponentsState, ...componentsState], activeTool: activeTool,
703
+ // onClick={handleSelectComponent}
704
+ // onMouseDown={handleMouseDown}
705
+ // onMouseUp={handleMouseUp}
706
+ // onBlur={handleUnSelectComponent}
707
+ selectedComponent: selectedComponent }) }) }) }));
713
708
  };
714
709
  const handelZoomIn = () => {
715
710
  var _a;
@@ -780,90 +775,33 @@ const BoardTemplate = ({ onSelectComponent, viewOnly }) => {
780
775
  setNodes(newNodes);
781
776
  }
782
777
  };
783
- return (<>
784
- <ModalPreview>
785
- <LayerView statusKey="status"/>
786
- </ModalPreview>
787
- <div className="relative w-full h-screen flex-1 overflow-hidden" ref={containerRef}>
788
- <div className="absolute bottom-5 left-1/2 transform -translate-x-1/2 z-10">
789
- <div className="flex gap-2">
790
- <Button icon={<ZoomIn />} onClick={handelZoomIn}/>
791
- <Button icon={<ZoomOut />} onClick={handleZoomOut}/>
792
- <Button onClick={addNode}>Add Node</Button>
793
- <Button onClick={removeNode}>Remove Node</Button>
794
- </div>
795
- </div>
796
- <TransformWrapper ref={transformRef} panning={{ disabled: ["node", "select"].includes(activeTool) }} centerZoomedOut={true} onTransformed={({ state: { scale } }) => setScale(scale)} minScale={1} // sangat kecil = bisa zoom out jauh
797
- maxScale={1000} initialScale={1} pinch={{ step: 1 }} smooth={true} doubleClick={{ step: 1, disabled: activeTool === "select" }} disablePadding>
798
- {scale > 1 && (<div className="absolute bottom-[60px] left-1/2 transform -translate-x-1/2 z-10">
799
- {renderMiniMap()}
800
- </div>)}
801
- <TransformComponent wrapperStyle={{
802
- width: "100%",
803
- height: "100%",
804
- overflow: "hidden",
805
- }} contentStyle={{
806
- width: "100%",
807
- height: "100%",
808
- }}>
809
- <svg id="workspace" ref={svgRef} width="100%" height="100%" viewBox={`0 0 ${widthBoard} ${heightBoard}`} className="h-screen" onMouseUp={handleMouseUp} onMouseMove={handleMouseMove}
810
- // onMouseEnter={handleMouseEnter}
811
- // onMouseUp={handleEnd}
812
- onTouchMove={handleMouseMove} onTouchEnd={handleMouseUp} onClick={(e) => {
813
- e.stopPropagation();
814
- handleMouseClick(e);
815
- }}
816
- // onMouseLeave={handleMouseLeave}
817
- xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" style={{
818
- background: backgroundColor,
819
- display: "block",
820
- cursor: activeTool === "ruler" ? "crosshair" : "auto",
821
- touchAction: "none",
822
- }}>
823
- <Layers shadowShape={shadowShape} components={[...extraComponentsState, ...componentsState]} style={{
824
- cursor: getCursorStyle(),
825
- }}
826
- // onClick={handleSelectComponent}
827
- onMouseDown={handleMouseDown}
828
- // onMouseUp={handleMouseUp}
829
- // onBlur={handleUnSelectComponent}
830
- selectedComponent={selectedComponent} activeTool={activeTool} onTouchStart={handleMouseDown}/>
831
-
832
- {activeTool === "ruler" && (<>
833
- <g id="horizontal-ruler">
834
- <rect x="0" y="0" width={window.innerWidth} height="30" fill="#e0e0e0"/>
835
- <g stroke="#888" font-size="10" text-anchor="middle">
836
- {Array.from({ length: window.innerWidth / 50 }, (_, i) => (<g key={i}>
837
- <line x1={i * 50} y1="0" x2={i * 50} y2="10"/>
838
- <text x={i * 50} y="15">
839
- {i * 50}
840
- </text>
841
- </g>))}
842
- </g>
843
- </g>
844
- <g id="vertical-ruler">
845
- <rect x="0" y="0" width="30" height={window.innerHeight} fill="#e0e0e0"/>
846
- <g stroke="#888" font-size="10" text-anchor="middle">
847
- {Array.from({ length: window.innerHeight / 10 }, (_, i) => (<g key={i}>
848
- <line x1="0" y1={i * 50} x2="10" y2={i * 50}/>
849
- <text x="15" y={i * 50}>
850
- {i * 50}
851
- </text>
852
- </g>))}
853
- </g>
854
- </g>
855
- </>)}
856
- {grid && (<g stroke="#ddd" strokeWidth={0.5}>
857
- {/* Vertical lines */}
858
- {Array.from({ length: widthBoard / 10 }, (_, i) => (<line key={`v-${i}`} x1={i * 10} y1={0} x2={i * 10} y2={heightBoard}/>))}
859
-
860
- {/* Horizontal lines */}
861
- {Array.from({ length: heightBoard / 10 }, (_, i) => (<line key={`h-${i}`} x1={0} y1={i * 10} x2={widthBoard} y2={i * 10}/>))}
862
- </g>)}
863
- </svg>
864
- </TransformComponent>
865
- </TransformWrapper>
866
- </div>
867
- </>);
778
+ return (_jsxs(_Fragment, { children: [_jsx(ModalPreview, { children: _jsx(LayerView, { statusKey: "status" }) }), _jsxs("div", { className: "relative w-full h-screen flex-1 overflow-hidden", ref: containerRef, children: [_jsx("div", { className: "absolute bottom-5 left-1/2 transform -translate-x-1/2 z-10", children: _jsxs("div", { className: "flex gap-2", children: [_jsx(Button, { icon: _jsx(ZoomIn, {}), onClick: handelZoomIn }), _jsx(Button, { icon: _jsx(ZoomOut, {}), onClick: handleZoomOut }), _jsx(Button, { onClick: addNode, children: "Add Node" }), _jsx(Button, { onClick: removeNode, children: "Remove Node" })] }) }), _jsxs(TransformWrapper, { ref: transformRef, panning: { disabled: ["node", "select"].includes(activeTool) }, centerZoomedOut: true, onTransformed: ({ state: { scale } }) => setScale(scale), minScale: 1, maxScale: 1000, initialScale: 1, pinch: { step: 1 }, smooth: true, doubleClick: { step: 1, disabled: activeTool === "select" }, disablePadding: true, children: [scale > 1 && (_jsx("div", { className: "absolute bottom-[60px] left-1/2 transform -translate-x-1/2 z-10", children: renderMiniMap() })), _jsx(TransformComponent, { wrapperStyle: {
779
+ width: "100%",
780
+ height: "100%",
781
+ overflow: "hidden",
782
+ }, contentStyle: {
783
+ width: "100%",
784
+ height: "100%",
785
+ }, children: _jsxs("svg", { id: "workspace", ref: svgRef, width: "100%", height: "100%", viewBox: `0 0 ${widthBoard} ${heightBoard}`, className: "h-screen", onMouseUp: handleMouseUp, onMouseMove: handleMouseMove,
786
+ // onMouseEnter={handleMouseEnter}
787
+ // onMouseUp={handleEnd}
788
+ onTouchMove: handleMouseMove, onTouchEnd: handleMouseUp, onClick: (e) => {
789
+ e.stopPropagation();
790
+ handleMouseClick(e);
791
+ },
792
+ // onMouseLeave={handleMouseLeave}
793
+ xmlns: "http://www.w3.org/2000/svg", preserveAspectRatio: "xMidYMid meet", style: {
794
+ background: backgroundColor,
795
+ display: "block",
796
+ cursor: activeTool === "ruler" ? "crosshair" : "auto",
797
+ touchAction: "none",
798
+ }, children: [_jsx(Layers, { shadowShape: shadowShape, components: [...extraComponentsState, ...componentsState], style: {
799
+ cursor: getCursorStyle(),
800
+ },
801
+ // onClick={handleSelectComponent}
802
+ onMouseDown: handleMouseDown,
803
+ // onMouseUp={handleMouseUp}
804
+ // onBlur={handleUnSelectComponent}
805
+ selectedComponent: selectedComponent, activeTool: activeTool, onTouchStart: handleMouseDown }), activeTool === "ruler" && (_jsxs(_Fragment, { children: [_jsxs("g", { id: "horizontal-ruler", children: [_jsx("rect", { x: "0", y: "0", width: window.innerWidth, height: "30", fill: "#e0e0e0" }), _jsx("g", { stroke: "#888", "font-size": "10", "text-anchor": "middle", children: Array.from({ length: window.innerWidth / 50 }, (_, i) => (_jsxs("g", { children: [_jsx("line", { x1: i * 50, y1: "0", x2: i * 50, y2: "10" }), _jsx("text", { x: i * 50, y: "15", children: i * 50 })] }, i))) })] }), _jsxs("g", { id: "vertical-ruler", children: [_jsx("rect", { x: "0", y: "0", width: "30", height: window.innerHeight, fill: "#e0e0e0" }), _jsx("g", { stroke: "#888", "font-size": "10", "text-anchor": "middle", children: Array.from({ length: window.innerHeight / 10 }, (_, i) => (_jsxs("g", { children: [_jsx("line", { x1: "0", y1: i * 50, x2: "10", y2: i * 50 }), _jsx("text", { x: "15", y: i * 50, children: i * 50 })] }, i))) })] })] })), grid && (_jsxs("g", { stroke: "#ddd", strokeWidth: 0.5, children: [Array.from({ length: widthBoard / 10 }, (_, i) => (_jsx("line", { x1: i * 10, y1: 0, x2: i * 10, y2: heightBoard }, `v-${i}`))), Array.from({ length: heightBoard / 10 }, (_, i) => (_jsx("line", { x1: 0, y1: i * 10, x2: widthBoard, y2: i * 10 }, `h-${i}`)))] }))] }) })] })] })] }));
868
806
  };
869
807
  export default BoardTemplate;
@@ -1,10 +1,9 @@
1
- import React from "react";
2
1
  interface BoardTemplateProps {
3
2
  onSelectComponent?: (items: any) => void;
4
3
  mappingKey?: string;
5
4
  viewOnly?: boolean;
6
5
  }
7
- declare const BoardTemplate: ({ onSelectComponent, viewOnly }: BoardTemplateProps) => React.JSX.Element;
6
+ declare const BoardTemplate: ({ onSelectComponent, viewOnly }: BoardTemplateProps) => import("react/jsx-runtime").JSX.Element;
8
7
  export default BoardTemplate;
9
8
  export declare function getTranslate(el: any): {
10
9
  x: number;
@@ -1,5 +1,6 @@
1
1
  "use client";
2
- import React, { useCallback, useEffect, useMemo, useRef, useState, } from "react";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
3
4
  import { TransformWrapper, TransformComponent, } from "react-zoom-pan-pinch";
4
5
  import { useAppSelector, useAppDispatch } from "../../hooks/use-redux";
5
6
  import Layers from "../../components/layer-v3";
@@ -1550,133 +1551,54 @@ const BoardTemplate = ({ onSelectComponent, viewOnly }) => {
1550
1551
  //lin helper from start to move
1551
1552
  }
1552
1553
  };
1553
- return (<>
1554
- <ModalPreview>
1555
- <LayerView statusKey="status"/>
1556
- </ModalPreview>
1557
- {touch && <Button onClick={() => setTouch(false)}>Stop Touch</Button>}
1558
- <div className="relative w-full h-screen flex-1 overflow-hidden" ref={containerRef}>
1559
- <div className="absolute bottom-5 left-1/2 transform -translate-x-1/2 z-10">
1560
- <div className="flex gap-2">
1561
- <Button icon={<ZoomIn />} onClick={handelZoomIn}/>
1562
- <Button icon={<ZoomOut />} onClick={handleZoomOut}/>
1563
- </div>
1564
- </div>
1565
- <TransformWrapper ref={transformRef} panning={{
1566
- disabled: [
1567
- "node",
1568
- "select",
1569
- "square",
1570
- "circle",
1571
- "table-seat-circle",
1572
- ].includes(activeTool),
1573
- }} centerZoomedOut={true}
1574
- // onTransformed={handleTransformed}
1575
- minScale={0.1} // sangat kecil = bisa zoom out jauh
1576
- maxScale={1000} initialScale={scale} pinch={{ step: 1 }} wheel={{ disabled: true }} smooth={true} doubleClick={{ step: 1, disabled: activeTool === "select" }} disablePadding centerOnInit>
1577
- {/* {scale !== 1 && ( */}
1578
- <div className="absolute bottom-[60px] left-1/2 transform -translate-x-1/2 z-10">
1579
- {/* {renderMiniMap()} */}
1580
- </div>
1581
- {/* )} */}
1582
- <TransformComponent wrapperStyle={{
1583
- width: "100%",
1584
- height: "100%",
1585
- }} contentStyle={{ width: boardSize.width, height: boardSize.height }}>
1586
- {isLoading && (<div className="absolute z-20 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
1587
- Loading...
1588
- </div>)}
1589
- <svg id="workspace" ref={svgRef} width={boardSize.width} height={boardSize.height} viewBox={`${minCoords.x} ${minCoords.y} ${boardSize.width} ${boardSize.height}`}
1590
- // viewBox={`0 0 ${widthBoard} ${heightBoard}`}
1591
- // className="h-screen"
1592
- // onMouseUp={handleMouseUp}
1593
- // onPointerMove={handleMouseMove}
1594
- onPointerDown={handlePointerDown} onPointerMove={handlePointerMove}
1595
- // onMouseEnter={handleMouseEnter}
1596
- // onMouseUp={handleEnd}
1597
- // onTouchMove={handleMouseMove}
1598
- // onTouchEnd={handleMouseUp}
1599
- // onClick={(e) => {
1600
- // e.stopPropagation();
1601
- // handleMouseClick(e);
1602
- // }}
1603
- // onMouseLeave={handleMouseLeave}
1604
- xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" style={{
1605
- // background: backgroundColor,
1606
- background: "black",
1607
- display: "block",
1608
- cursor: activeTool === "ruler" ? "crosshair" : "auto",
1609
- touchAction: "none",
1610
- pointerEvents: "all",
1611
- userSelect: "none",
1612
- }}>
1613
- <Layers shadowShape={shadowShape} components={[
1614
- ...extraComponentsState,
1615
- ...componentsState,
1616
- polygonElementRef === null || polygonElementRef === void 0 ? void 0 : polygonElementRef.current,
1617
- ]} style={{
1618
- cursor: getCursorStyle(),
1619
- }}
1620
- // onClick={handleSelectComponent}
1621
- // onMouseDown={handleMouseDown}
1622
- // onMouseUp={handleMouseUp}
1623
- // onBlur={handleUnSelectComponent}
1624
- selectedComponent={selectedComponent} selectionLines={selectedLines} activeTool={activeTool}/>
1625
- {/* <polygon
1626
- points={nodes.map((n) => `${n.x},${n.y}`).join(" ")}
1627
- fill="transparent"
1628
- stroke="blue"
1629
- /> */}
1630
- {/* Nodes */}
1631
- {/* {nodes.map((node, index) => (
1632
- <circle
1633
- key={index}
1634
- cx={node.x}
1635
- cy={node.y}
1636
- r={10}
1637
- fill="red"
1638
- onMouseDown={onTouchStartLine}
1639
- onTouchStart={onTouchStartLine}
1640
- onTouchEnd={onTouchEndLine}
1641
- />
1642
- ))} */}
1643
- {activeTool === "polygon" && (<polyline id="polyline-helper" stroke="white" fill="transparent" strokeWidth={2}/>)}
1644
- {activeTool === "ruler" && (<>
1645
- <g id="horizontal-ruler">
1646
- <rect x="0" y="0" width={window.innerWidth} height="30" fill="#e0e0e0"/>
1647
- <g stroke="#888" font-size="10" text-anchor="middle">
1648
- {Array.from({ length: window.innerWidth / 50 }, (_, i) => (<g key={i}>
1649
- <line x1={i * 50} y1="0" x2={i * 50} y2="10"/>
1650
- <text x={i * 50} y="15">
1651
- {i * 50}
1652
- </text>
1653
- </g>))}
1654
- </g>
1655
- </g>
1656
- <g id="vertical-ruler">
1657
- <rect x="0" y="0" width="30" height={window.innerHeight} fill="#e0e0e0"/>
1658
- <g stroke="#888" font-size="10" text-anchor="middle">
1659
- {Array.from({ length: window.innerHeight / 10 }, (_, i) => (<g key={i}>
1660
- <line x1="0" y1={i * 50} x2="10" y2={i * 50}/>
1661
- <text x="15" y={i * 50}>
1662
- {i * 50}
1663
- </text>
1664
- </g>))}
1665
- </g>
1666
- </g>
1667
- </>)}
1668
- {grid && (<g stroke="#ddd" strokeWidth={0.5}>
1669
- {/* Vertical lines */}
1670
- {Array.from({ length: widthBoard / (10 * scale) }, (_, i) => (<line key={`v-${i}`} x1={i * 10 * scale} y1={0} x2={i * 10 * scale} y2={heightBoard}/>))}
1671
-
1672
- {/* Horizontal lines */}
1673
- {Array.from({ length: heightBoard / (10 * scale) }, (_, i) => (<line key={`h-${i}`} x1={0} y1={i * 10 * scale} x2={widthBoard} y2={i * 10 * scale}/>))}
1674
- </g>)}
1675
- </svg>
1676
- </TransformComponent>
1677
- </TransformWrapper>
1678
- </div>
1679
- </>);
1554
+ return (_jsxs(_Fragment, { children: [_jsx(ModalPreview, { children: _jsx(LayerView, { statusKey: "status" }) }), touch && _jsx(Button, { onClick: () => setTouch(false), children: "Stop Touch" }), _jsxs("div", { className: "relative w-full h-screen flex-1 overflow-hidden", ref: containerRef, children: [_jsx("div", { className: "absolute bottom-5 left-1/2 transform -translate-x-1/2 z-10", children: _jsxs("div", { className: "flex gap-2", children: [_jsx(Button, { icon: _jsx(ZoomIn, {}), onClick: handelZoomIn }), _jsx(Button, { icon: _jsx(ZoomOut, {}), onClick: handleZoomOut })] }) }), _jsxs(TransformWrapper, { ref: transformRef, panning: {
1555
+ disabled: [
1556
+ "node",
1557
+ "select",
1558
+ "square",
1559
+ "circle",
1560
+ "table-seat-circle",
1561
+ ].includes(activeTool),
1562
+ }, centerZoomedOut: true,
1563
+ // onTransformed={handleTransformed}
1564
+ minScale: 0.1, maxScale: 1000, initialScale: scale, pinch: { step: 1 }, wheel: { disabled: true }, smooth: true, doubleClick: { step: 1, disabled: activeTool === "select" }, disablePadding: true, centerOnInit: true, children: [_jsx("div", { className: "absolute bottom-[60px] left-1/2 transform -translate-x-1/2 z-10" }), _jsxs(TransformComponent, { wrapperStyle: {
1565
+ width: "100%",
1566
+ height: "100%",
1567
+ }, contentStyle: { width: boardSize.width, height: boardSize.height }, children: [isLoading && (_jsx("div", { className: "absolute z-20 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2", children: "Loading..." })), _jsxs("svg", { id: "workspace", ref: svgRef, width: boardSize.width, height: boardSize.height, viewBox: `${minCoords.x} ${minCoords.y} ${boardSize.width} ${boardSize.height}`,
1568
+ // viewBox={`0 0 ${widthBoard} ${heightBoard}`}
1569
+ // className="h-screen"
1570
+ // onMouseUp={handleMouseUp}
1571
+ // onPointerMove={handleMouseMove}
1572
+ onPointerDown: handlePointerDown, onPointerMove: handlePointerMove,
1573
+ // onMouseEnter={handleMouseEnter}
1574
+ // onMouseUp={handleEnd}
1575
+ // onTouchMove={handleMouseMove}
1576
+ // onTouchEnd={handleMouseUp}
1577
+ // onClick={(e) => {
1578
+ // e.stopPropagation();
1579
+ // handleMouseClick(e);
1580
+ // }}
1581
+ // onMouseLeave={handleMouseLeave}
1582
+ xmlns: "http://www.w3.org/2000/svg", preserveAspectRatio: "xMidYMid meet", style: {
1583
+ // background: backgroundColor,
1584
+ background: "black",
1585
+ display: "block",
1586
+ cursor: activeTool === "ruler" ? "crosshair" : "auto",
1587
+ touchAction: "none",
1588
+ pointerEvents: "all",
1589
+ userSelect: "none",
1590
+ }, children: [_jsx(Layers, { shadowShape: shadowShape, components: [
1591
+ ...extraComponentsState,
1592
+ ...componentsState,
1593
+ polygonElementRef === null || polygonElementRef === void 0 ? void 0 : polygonElementRef.current,
1594
+ ], style: {
1595
+ cursor: getCursorStyle(),
1596
+ },
1597
+ // onClick={handleSelectComponent}
1598
+ // onMouseDown={handleMouseDown}
1599
+ // onMouseUp={handleMouseUp}
1600
+ // onBlur={handleUnSelectComponent}
1601
+ selectedComponent: selectedComponent, selectionLines: selectedLines, activeTool: activeTool }), activeTool === "polygon" && (_jsx("polyline", { id: "polyline-helper", stroke: "white", fill: "transparent", strokeWidth: 2 })), activeTool === "ruler" && (_jsxs(_Fragment, { children: [_jsxs("g", { id: "horizontal-ruler", children: [_jsx("rect", { x: "0", y: "0", width: window.innerWidth, height: "30", fill: "#e0e0e0" }), _jsx("g", { stroke: "#888", "font-size": "10", "text-anchor": "middle", children: Array.from({ length: window.innerWidth / 50 }, (_, i) => (_jsxs("g", { children: [_jsx("line", { x1: i * 50, y1: "0", x2: i * 50, y2: "10" }), _jsx("text", { x: i * 50, y: "15", children: i * 50 })] }, i))) })] }), _jsxs("g", { id: "vertical-ruler", children: [_jsx("rect", { x: "0", y: "0", width: "30", height: window.innerHeight, fill: "#e0e0e0" }), _jsx("g", { stroke: "#888", "font-size": "10", "text-anchor": "middle", children: Array.from({ length: window.innerHeight / 10 }, (_, i) => (_jsxs("g", { children: [_jsx("line", { x1: "0", y1: i * 50, x2: "10", y2: i * 50 }), _jsx("text", { x: "15", y: i * 50, children: i * 50 })] }, i))) })] })] })), grid && (_jsxs("g", { stroke: "#ddd", strokeWidth: 0.5, children: [Array.from({ length: widthBoard / (10 * scale) }, (_, i) => (_jsx("line", { x1: i * 10 * scale, y1: 0, x2: i * 10 * scale, y2: heightBoard }, `v-${i}`))), Array.from({ length: heightBoard / (10 * scale) }, (_, i) => (_jsx("line", { x1: 0, y1: i * 10 * scale, x2: widthBoard, y2: i * 10 * scale }, `h-${i}`)))] }))] })] })] })] })] }));
1680
1602
  };
1681
1603
  export default BoardTemplate;
1682
1604
  function getGlobalBBox(svg, el) {
@@ -1,8 +1,7 @@
1
- import React from "react";
2
1
  interface BoardTemplateProps {
3
2
  onSelectComponent?: (items: any) => void;
4
3
  mappingKey?: string;
5
4
  viewOnly?: boolean;
6
5
  }
7
- declare const BoardTemplate: ({ onSelectComponent, viewOnly }: BoardTemplateProps) => React.JSX.Element;
6
+ declare const BoardTemplate: ({ onSelectComponent, viewOnly }: BoardTemplateProps) => import("react/jsx-runtime").JSX.Element;
8
7
  export default BoardTemplate;
@@ -1,5 +1,6 @@
1
1
  "use client";
2
- import React, { useCallback, useEffect, useRef, useState } from "react";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useCallback, useEffect, useRef, useState } from "react";
3
4
  import { TransformWrapper, TransformComponent, } from "react-zoom-pan-pinch";
4
5
  import { useAppSelector, useAppDispatch } from "../../hooks/use-redux";
5
6
  import Layers from "../../components/layer-v3";
@@ -1512,114 +1513,35 @@ const BoardTemplate = ({ onSelectComponent, viewOnly }) => {
1512
1513
  //lin helper from start to move
1513
1514
  }
1514
1515
  };
1515
- return (<>
1516
- <ModalPreview>
1517
- <LayerView statusKey="status"/>
1518
- </ModalPreview>
1519
- {/* {touch && <Button onClick={() => setTouch(false)}>Stop Touch</Button>} */}
1520
- <div className="relative w-full h-screen flex-1 overflow-hidden" ref={containerRef}>
1521
- <div className="absolute bottom-5 left-1/2 transform -translate-x-1/2 z-10">
1522
- <div className="flex gap-2">
1523
- <Button icon={<ZoomIn />} onClick={handelZoomIn}/>
1524
- <Button icon={<ZoomOut />} onClick={handleZoomOut}/>
1525
- </div>
1526
- </div>
1527
- <TransformWrapper ref={transformRef}
1528
- // limitToBounds={true}
1529
- panning={{
1530
- disabled: [
1531
- "node",
1532
- "select",
1533
- "square",
1534
- "circle",
1535
- "table-seat-circle",
1536
- ].includes(activeTool),
1537
- }}
1538
- // centerZoomedOut={true}
1539
- // onTransformed={handleTransformed}
1540
- minScale={0.1} // sangat kecil = bisa zoom out jauh
1541
- maxScale={1000} initialScale={scale} pinch={{ step: 1 }} wheel={{ disabled: true }} smooth={true} doubleClick={{ step: 1, disabled: activeTool === "select" }} disablePadding centerOnInit>
1542
- {/* {scale !== 1 && ( */}
1543
- {/* <div className="absolute bottom-[60px] left-1/2 transform -translate-x-1/2 z-10"> */}
1544
- {/* {renderMiniMap()} */}
1545
- {/* </div> */}
1546
- {/* )} */}
1547
- <TransformComponent wrapperStyle={{
1548
- width: "100%",
1549
- height: "100%",
1550
- }} contentStyle={{ width: boardSize.width, height: boardSize.height }}>
1551
- {isLoading && (<div className="absolute z-20 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
1552
- Loading...
1553
- </div>)}
1554
- <svg id="workspace" ref={svgRef} width={boardSize.width} height={boardSize.height} viewBox={`${minCoords.x} ${minCoords.y} ${boardSize.width} ${boardSize.height}`} onPointerDown={handlePointerDown} onPointerMove={handlePointerMove} xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" style={{
1555
- background: backgroundColor,
1556
- display: "block",
1557
- cursor: activeTool === "ruler" ? "crosshair" : "auto",
1558
- touchAction: "none",
1559
- pointerEvents: "all",
1560
- userSelect: "none",
1561
- }}>
1562
- <Layers shadowShape={shadowShape} components={[
1563
- ...extraComponentsState,
1564
- ...componentsState,
1565
- polygonElementRef === null || polygonElementRef === void 0 ? void 0 : polygonElementRef.current,
1566
- ]} style={{
1567
- cursor: getCursorStyle(),
1568
- }} selectedComponent={selectedComponent} selectionLines={selectedLines} activeTool={activeTool}/>
1569
- {/* <polygon
1570
- points={nodes.map((n) => `${n.x},${n.y}`).join(" ")}
1571
- fill="transparent"
1572
- stroke="blue"
1573
- /> */}
1574
- {/* Nodes */}
1575
- {/* {nodes.map((node, index) => (
1576
- <circle
1577
- key={index}
1578
- cx={node.x}
1579
- cy={node.y}
1580
- r={10}
1581
- fill="red"
1582
- onMouseDown={onTouchStartLine}
1583
- onTouchStart={onTouchStartLine}
1584
- onTouchEnd={onTouchEndLine}
1585
- />
1586
- ))} */}
1587
- {activeTool === "polygon" && (<polyline id="polyline-helper" stroke="#4a90e2" fill="transparent" strokeWidth={2}/>)}
1588
- {activeTool === "ruler" && (<>
1589
- <g id="horizontal-ruler">
1590
- <rect x="0" y="0" width={window.innerWidth} height="30" fill="#e0e0e0"/>
1591
- <g stroke="#888" font-size="10" text-anchor="middle">
1592
- {Array.from({ length: window.innerWidth / 50 }, (_, i) => (<g key={i}>
1593
- <line x1={i * 50} y1="0" x2={i * 50} y2="10"/>
1594
- <text x={i * 50} y="15">
1595
- {i * 50}
1596
- </text>
1597
- </g>))}
1598
- </g>
1599
- </g>
1600
- <g id="vertical-ruler">
1601
- <rect x="0" y="0" width="30" height={window.innerHeight} fill="#e0e0e0"/>
1602
- <g stroke="#888" font-size="10" text-anchor="middle">
1603
- {Array.from({ length: window.innerHeight / 10 }, (_, i) => (<g key={i}>
1604
- <line x1="0" y1={i * 50} x2="10" y2={i * 50}/>
1605
- <text x="15" y={i * 50}>
1606
- {i * 50}
1607
- </text>
1608
- </g>))}
1609
- </g>
1610
- </g>
1611
- </>)}
1612
- {grid && (<g stroke="#ddd" strokeWidth={0.5}>
1613
- {/* Vertical lines */}
1614
- {Array.from({ length: widthBoard / (10 * scale) }, (_, i) => (<line key={`v-${i}`} x1={i * 10 * scale} y1={0} x2={i * 10 * scale} y2={heightBoard}/>))}
1615
-
1616
- {/* Horizontal lines */}
1617
- {Array.from({ length: heightBoard / (10 * scale) }, (_, i) => (<line key={`h-${i}`} x1={0} y1={i * 10 * scale} x2={widthBoard} y2={i * 10 * scale}/>))}
1618
- </g>)}
1619
- </svg>
1620
- </TransformComponent>
1621
- </TransformWrapper>
1622
- </div>
1623
- </>);
1516
+ return (_jsxs(_Fragment, { children: [_jsx(ModalPreview, { children: _jsx(LayerView, { statusKey: "status" }) }), _jsxs("div", { className: "relative w-full h-screen flex-1 overflow-hidden", ref: containerRef, children: [_jsx("div", { className: "absolute bottom-5 left-1/2 transform -translate-x-1/2 z-10", children: _jsxs("div", { className: "flex gap-2", children: [_jsx(Button, { icon: _jsx(ZoomIn, {}), onClick: handelZoomIn }), _jsx(Button, { icon: _jsx(ZoomOut, {}), onClick: handleZoomOut })] }) }), _jsx(TransformWrapper, { ref: transformRef,
1517
+ // limitToBounds={true}
1518
+ panning: {
1519
+ disabled: [
1520
+ "node",
1521
+ "select",
1522
+ "square",
1523
+ "circle",
1524
+ "table-seat-circle",
1525
+ ].includes(activeTool),
1526
+ },
1527
+ // centerZoomedOut={true}
1528
+ // onTransformed={handleTransformed}
1529
+ minScale: 0.1, maxScale: 1000, initialScale: scale, pinch: { step: 1 }, wheel: { disabled: true }, smooth: true, doubleClick: { step: 1, disabled: activeTool === "select" }, disablePadding: true, centerOnInit: true, children: _jsxs(TransformComponent, { wrapperStyle: {
1530
+ width: "100%",
1531
+ height: "100%",
1532
+ }, contentStyle: { width: boardSize.width, height: boardSize.height }, children: [isLoading && (_jsx("div", { className: "absolute z-20 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2", children: "Loading..." })), _jsxs("svg", { id: "workspace", ref: svgRef, width: boardSize.width, height: boardSize.height, viewBox: `${minCoords.x} ${minCoords.y} ${boardSize.width} ${boardSize.height}`, onPointerDown: handlePointerDown, onPointerMove: handlePointerMove, xmlns: "http://www.w3.org/2000/svg", preserveAspectRatio: "xMidYMid meet", style: {
1533
+ background: backgroundColor,
1534
+ display: "block",
1535
+ cursor: activeTool === "ruler" ? "crosshair" : "auto",
1536
+ touchAction: "none",
1537
+ pointerEvents: "all",
1538
+ userSelect: "none",
1539
+ }, children: [_jsx(Layers, { shadowShape: shadowShape, components: [
1540
+ ...extraComponentsState,
1541
+ ...componentsState,
1542
+ polygonElementRef === null || polygonElementRef === void 0 ? void 0 : polygonElementRef.current,
1543
+ ], style: {
1544
+ cursor: getCursorStyle(),
1545
+ }, selectedComponent: selectedComponent, selectionLines: selectedLines, activeTool: activeTool }), activeTool === "polygon" && (_jsx("polyline", { id: "polyline-helper", stroke: "#4a90e2", fill: "transparent", strokeWidth: 2 })), activeTool === "ruler" && (_jsxs(_Fragment, { children: [_jsxs("g", { id: "horizontal-ruler", children: [_jsx("rect", { x: "0", y: "0", width: window.innerWidth, height: "30", fill: "#e0e0e0" }), _jsx("g", { stroke: "#888", "font-size": "10", "text-anchor": "middle", children: Array.from({ length: window.innerWidth / 50 }, (_, i) => (_jsxs("g", { children: [_jsx("line", { x1: i * 50, y1: "0", x2: i * 50, y2: "10" }), _jsx("text", { x: i * 50, y: "15", children: i * 50 })] }, i))) })] }), _jsxs("g", { id: "vertical-ruler", children: [_jsx("rect", { x: "0", y: "0", width: "30", height: window.innerHeight, fill: "#e0e0e0" }), _jsx("g", { stroke: "#888", "font-size": "10", "text-anchor": "middle", children: Array.from({ length: window.innerHeight / 10 }, (_, i) => (_jsxs("g", { children: [_jsx("line", { x1: "0", y1: i * 50, x2: "10", y2: i * 50 }), _jsx("text", { x: "15", y: i * 50, children: i * 50 })] }, i))) })] })] })), grid && (_jsxs("g", { stroke: "#ddd", strokeWidth: 0.5, children: [Array.from({ length: widthBoard / (10 * scale) }, (_, i) => (_jsx("line", { x1: i * 10 * scale, y1: 0, x2: i * 10 * scale, y2: heightBoard }, `v-${i}`))), Array.from({ length: heightBoard / (10 * scale) }, (_, i) => (_jsx("line", { x1: 0, y1: i * 10 * scale, x2: widthBoard, y2: i * 10 * scale }, `h-${i}`)))] }))] })] }) })] })] }));
1624
1546
  };
1625
1547
  export default BoardTemplate;
@@ -1,2 +1,2 @@
1
- declare const Navbar: () => import("react").JSX.Element;
1
+ declare const Navbar: () => import("react/jsx-runtime").JSX.Element;
2
2
  export default Navbar;
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ const Navbar = () => {
4
+ return _jsx("div", { children: "Navbar" });
5
+ };
6
+ export default Navbar;
@@ -27,5 +27,5 @@ export interface TableEditorProps {
27
27
  extraComponent: boolean;
28
28
  };
29
29
  }
30
- declare const TableEditor: (props: TableEditorProps) => import("react").JSX.Element;
30
+ declare const TableEditor: (props: TableEditorProps) => import("react/jsx-runtime").JSX.Element;
31
31
  export default TableEditor;
@@ -1,4 +1,5 @@
1
1
  "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
3
  import { useEffect, useState } from "react";
3
4
  import Board from "../board-v3";
4
5
  import SideTool from "../side-tool";
@@ -94,21 +95,10 @@ const TableEditor = (props) => {
94
95
  dispatch({ type: "board/setFlagChange", payload: true });
95
96
  }
96
97
  }, [componentProps, extraComponentProps, props === null || props === void 0 ? void 0 : props.defaultBackground]);
97
- return (<>
98
- <div className="w-full h-screen flex relative">
99
- <div className="w-full h-full flex relative" style={{
100
- display: !viewOnly ? "none" : "flex",
101
- }}>
102
- <LayerView statusKey="status"/>
103
- </div>
104
- <div className="w-full h-full flex relative" style={{
105
- display: viewOnly ? "none" : "flex",
106
- }}>
107
- <SideTool dragOnly={dragOnly} deleteAutorized={deleteAutorized}/>
108
- <Board onSelectComponent={props.onSelectComponent} viewOnly={viewOnly}/>
109
- <ControlPanels action={props.action} responseMapping={props.responseMapping}/>
110
- </div>
111
- </div>
112
- </>);
98
+ return (_jsx(_Fragment, { children: _jsxs("div", { className: "w-full h-screen flex relative", children: [_jsx("div", { className: "w-full h-full flex relative", style: {
99
+ display: !viewOnly ? "none" : "flex",
100
+ }, children: _jsx(LayerView, { statusKey: "status" }) }), _jsxs("div", { className: "w-full h-full flex relative", style: {
101
+ display: viewOnly ? "none" : "flex",
102
+ }, children: [_jsx(SideTool, { dragOnly: dragOnly, deleteAutorized: deleteAutorized }), _jsx(Board, { onSelectComponent: props.onSelectComponent, viewOnly: viewOnly }), _jsx(ControlPanels, { action: props.action, responseMapping: props.responseMapping })] })] }) }));
113
103
  };
114
104
  export default TableEditor;
@@ -7,5 +7,5 @@ interface ControlPanelsProps {
7
7
  src: string;
8
8
  };
9
9
  }
10
- declare const ControlPanels: (props: ControlPanelsProps) => import("react").JSX.Element;
10
+ declare const ControlPanels: (props: ControlPanelsProps) => import("react/jsx-runtime").JSX.Element;
11
11
  export default ControlPanels;