@metastringfoundation/map-list 0.1.0

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 (158) hide show
  1. package/dist/card.d.ts +7 -0
  2. package/dist/card.d.ts.map +1 -0
  3. package/dist/card.js +7 -0
  4. package/dist/components/core/button.d.ts +7 -0
  5. package/dist/components/core/button.d.ts.map +1 -0
  6. package/dist/components/core/button.js +21 -0
  7. package/dist/components/core/highlighter.d.ts +5 -0
  8. package/dist/components/core/highlighter.d.ts.map +1 -0
  9. package/dist/components/core/highlighter.js +15 -0
  10. package/dist/components/core/icons.d.ts +17 -0
  11. package/dist/components/core/icons.d.ts.map +1 -0
  12. package/dist/components/core/icons.js +60 -0
  13. package/dist/components/core/iconts.d.ts +2 -0
  14. package/dist/components/core/iconts.d.ts.map +1 -0
  15. package/dist/components/core/iconts.js +2 -0
  16. package/dist/components/core/index.d.ts +5 -0
  17. package/dist/components/core/index.d.ts.map +1 -0
  18. package/dist/components/core/index.js +20 -0
  19. package/dist/components/core/input.d.ts +14 -0
  20. package/dist/components/core/input.d.ts.map +1 -0
  21. package/dist/components/core/input.js +18 -0
  22. package/dist/components/core/popup.d.ts +5 -0
  23. package/dist/components/core/popup.d.ts.map +1 -0
  24. package/dist/components/core/popup.js +11 -0
  25. package/dist/components/core/tabs.d.ts +46 -0
  26. package/dist/components/core/tabs.d.ts.map +1 -0
  27. package/dist/components/core/tabs.js +147 -0
  28. package/dist/components/infobar/content.d.ts +4 -0
  29. package/dist/components/infobar/content.d.ts.map +1 -0
  30. package/dist/components/infobar/content.js +22 -0
  31. package/dist/components/infobar/index.d.ts +2 -0
  32. package/dist/components/infobar/index.d.ts.map +1 -0
  33. package/dist/components/infobar/index.js +17 -0
  34. package/dist/components/infobar/infobar-panel.d.ts +4 -0
  35. package/dist/components/infobar/infobar-panel.d.ts.map +1 -0
  36. package/dist/components/infobar/infobar-panel.js +52 -0
  37. package/dist/components/map/index.d.ts +2 -0
  38. package/dist/components/map/index.d.ts.map +1 -0
  39. package/dist/components/map/index.js +66 -0
  40. package/dist/components/map/layers/grid/index.d.ts +6 -0
  41. package/dist/components/map/layers/grid/index.d.ts.map +1 -0
  42. package/dist/components/map/layers/grid/index.js +31 -0
  43. package/dist/components/map/layers/highlight/index.d.ts +2 -0
  44. package/dist/components/map/layers/highlight/index.d.ts.map +1 -0
  45. package/dist/components/map/layers/highlight/index.js +7 -0
  46. package/dist/components/map/layers/index.d.ts +6 -0
  47. package/dist/components/map/layers/index.d.ts.map +1 -0
  48. package/dist/components/map/layers/index.js +27 -0
  49. package/dist/components/map/layers/raster/index.d.ts +6 -0
  50. package/dist/components/map/layers/raster/index.d.ts.map +1 -0
  51. package/dist/components/map/layers/raster/index.js +19 -0
  52. package/dist/components/map/layers/vector/index.d.ts +5 -0
  53. package/dist/components/map/layers/vector/index.d.ts.map +1 -0
  54. package/dist/components/map/layers/vector/index.js +29 -0
  55. package/dist/components/map/marker-list/index.d.ts +3 -0
  56. package/dist/components/map/marker-list/index.d.ts.map +1 -0
  57. package/dist/components/map/marker-list/index.js +16 -0
  58. package/dist/components/map/markers-list/index.d.ts +3 -0
  59. package/dist/components/map/markers-list/index.d.ts.map +1 -0
  60. package/dist/components/map/markers-list/index.js +16 -0
  61. package/dist/components/map/popup/index.d.ts +4 -0
  62. package/dist/components/map/popup/index.d.ts.map +1 -0
  63. package/dist/components/map/popup/index.js +17 -0
  64. package/dist/components/sidebar/common/grid-legend.d.ts +4 -0
  65. package/dist/components/sidebar/common/grid-legend.d.ts.map +1 -0
  66. package/dist/components/sidebar/common/grid-legend.js +22 -0
  67. package/dist/components/sidebar/common/info-popover.d.ts +10 -0
  68. package/dist/components/sidebar/common/info-popover.d.ts.map +1 -0
  69. package/dist/components/sidebar/common/info-popover.js +32 -0
  70. package/dist/components/sidebar/common/layer-item-style.d.ts +4 -0
  71. package/dist/components/sidebar/common/layer-item-style.d.ts.map +1 -0
  72. package/dist/components/sidebar/common/layer-item-style.js +21 -0
  73. package/dist/components/sidebar/common/layer-item.d.ts +11 -0
  74. package/dist/components/sidebar/common/layer-item.d.ts.map +1 -0
  75. package/dist/components/sidebar/common/layer-item.js +59 -0
  76. package/dist/components/sidebar/common/moreless.d.ts +4 -0
  77. package/dist/components/sidebar/common/moreless.d.ts.map +1 -0
  78. package/dist/components/sidebar/common/moreless.js +10 -0
  79. package/dist/components/sidebar/common/opacity-handler-addon.d.ts +3 -0
  80. package/dist/components/sidebar/common/opacity-handler-addon.d.ts.map +1 -0
  81. package/dist/components/sidebar/common/opacity-handler-addon.js +9 -0
  82. package/dist/components/sidebar/common/style-legend.d.ts +4 -0
  83. package/dist/components/sidebar/common/style-legend.d.ts.map +1 -0
  84. package/dist/components/sidebar/common/style-legend.js +23 -0
  85. package/dist/components/sidebar/common.d.ts +2 -0
  86. package/dist/components/sidebar/common.d.ts.map +1 -0
  87. package/dist/components/sidebar/common.js +2 -0
  88. package/dist/components/sidebar/index.d.ts +2 -0
  89. package/dist/components/sidebar/index.d.ts.map +1 -0
  90. package/dist/components/sidebar/index.js +38 -0
  91. package/dist/components/sidebar/layers/index.d.ts +2 -0
  92. package/dist/components/sidebar/layers/index.d.ts.map +1 -0
  93. package/dist/components/sidebar/layers/index.js +12 -0
  94. package/dist/components/sidebar/layers/layer-list.d.ts +2 -0
  95. package/dist/components/sidebar/layers/layer-list.d.ts.map +1 -0
  96. package/dist/components/sidebar/layers/layer-list.js +64 -0
  97. package/dist/components/sidebar/layers/search.d.ts +2 -0
  98. package/dist/components/sidebar/layers/search.d.ts.map +1 -0
  99. package/dist/components/sidebar/layers/search.js +16 -0
  100. package/dist/components/sidebar/layers.d.ts +2 -0
  101. package/dist/components/sidebar/layers.d.ts.map +1 -0
  102. package/dist/components/sidebar/layers.js +2 -0
  103. package/dist/components/sidebar/selected/extended.d.ts +3 -0
  104. package/dist/components/sidebar/selected/extended.d.ts.map +1 -0
  105. package/dist/components/sidebar/selected/extended.js +7 -0
  106. package/dist/components/sidebar/selected/index.d.ts +2 -0
  107. package/dist/components/sidebar/selected/index.d.ts.map +1 -0
  108. package/dist/components/sidebar/selected/index.js +20 -0
  109. package/dist/components/sidebar/selected/selected-item-list.d.ts +10 -0
  110. package/dist/components/sidebar/selected/selected-item-list.d.ts.map +1 -0
  111. package/dist/components/sidebar/selected/selected-item-list.js +36 -0
  112. package/dist/components/sidebar/settings/index.d.ts +2 -0
  113. package/dist/components/sidebar/settings/index.d.ts.map +1 -0
  114. package/dist/components/sidebar/settings/index.js +16 -0
  115. package/dist/components/sidebar/settings/layer-selection.d.ts +6 -0
  116. package/dist/components/sidebar/settings/layer-selection.d.ts.map +1 -0
  117. package/dist/components/sidebar/settings/layer-selection.js +17 -0
  118. package/dist/components/sidebar/tabs.d.ts +4 -0
  119. package/dist/components/sidebar/tabs.d.ts.map +1 -0
  120. package/dist/components/sidebar/tabs.js +15 -0
  121. package/dist/gradient.d.ts +6 -0
  122. package/dist/gradient.d.ts.map +1 -0
  123. package/dist/gradient.js +9 -0
  124. package/dist/hooks/use-layers.d.ts +55 -0
  125. package/dist/hooks/use-layers.d.ts.map +1 -0
  126. package/dist/hooks/use-layers.js +298 -0
  127. package/dist/index.css +1129 -0
  128. package/dist/index.d.ts +4 -0
  129. package/dist/index.d.ts.map +1 -0
  130. package/dist/index.js +18 -0
  131. package/dist/interfaces/index.d.ts +103 -0
  132. package/dist/interfaces/index.d.ts.map +1 -0
  133. package/dist/interfaces/index.js +2 -0
  134. package/dist/services/naksha.d.ts +62 -0
  135. package/dist/services/naksha.d.ts.map +1 -0
  136. package/dist/services/naksha.js +420 -0
  137. package/dist/static/constant.d.ts +16 -0
  138. package/dist/static/constant.d.ts.map +1 -0
  139. package/dist/static/constant.js +34 -0
  140. package/dist/static/constants.d.ts +16 -0
  141. package/dist/static/constants.d.ts.map +1 -0
  142. package/dist/static/constants.js +34 -0
  143. package/dist/test.d.ts +2 -0
  144. package/dist/test.d.ts.map +1 -0
  145. package/dist/test.js +9 -0
  146. package/dist/turborepo-logo.d.ts +2 -0
  147. package/dist/turborepo-logo.d.ts.map +1 -0
  148. package/dist/turborepo-logo.js +8 -0
  149. package/dist/utils/array-move.d.ts +3 -0
  150. package/dist/utils/array-move.d.ts.map +1 -0
  151. package/dist/utils/array-move.js +19 -0
  152. package/dist/utils/grid.d.ts +22 -0
  153. package/dist/utils/grid.d.ts.map +1 -0
  154. package/dist/utils/grid.js +116 -0
  155. package/dist/utils/naksha.d.ts +32 -0
  156. package/dist/utils/naksha.d.ts.map +1 -0
  157. package/dist/utils/naksha.js +141 -0
  158. package/package.json +57 -0
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ export default function Sidebar(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/index.tsx"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,UAAU,OAAO,4CAsC9B"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = Sidebar;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = require("react");
9
+ const maplibre_1 = require("react-map-gl/maplibre");
10
+ const use_layers_1 = __importDefault(require("../../hooks/use-layers"));
11
+ const naksha_1 = require("../../services/naksha");
12
+ const core_1 = require("../core");
13
+ const tabs_1 = __importDefault(require("./tabs"));
14
+ function Sidebar() {
15
+ const { mp, layer } = (0, use_layers_1.default)();
16
+ const [isOpen, setIsOpen] = (0, react_1.useState)(mp.showToC);
17
+ const { mapl } = (0, maplibre_1.useMap)();
18
+ const toggleOpen = () => setIsOpen(!isOpen);
19
+ async function loadToC() {
20
+ const _layers = await (0, naksha_1.axGetGeoserverLayers)(mp.nakshaEndpointToken,
21
+ // @ts-ignore
22
+ mp.nakshaApiEndpoint, mp.geoserver, mp.selectedLayers);
23
+ const _newLayers = [...(mp.layers || []), ..._layers];
24
+ layer.setAll(_newLayers);
25
+ // if any layer is selected at first it will try to zoom to bounds
26
+ if (layer.selectedIds.length) {
27
+ const _layer = _newLayers.find((l) => l.id === layer.selectedIds[0]);
28
+ _layer?.bbox &&
29
+ mapl?.fitBounds(_layer.bbox, { padding: 40, duration: 1000 });
30
+ }
31
+ }
32
+ (0, react_1.useEffect)(() => {
33
+ if (mapl && mp.loadToC) {
34
+ loadToC();
35
+ }
36
+ }, [mapl]);
37
+ return isOpen ? ((0, jsx_runtime_1.jsx)(tabs_1.default, { onClose: toggleOpen })) : ((0, jsx_runtime_1.jsx)(core_1.LayersButton, { onClick: toggleOpen }));
38
+ }
@@ -0,0 +1,2 @@
1
+ export default function LayersTabPanel(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/layers/index.tsx"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,cAAc,4CAWrC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = LayersTabPanel;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const layer_list_1 = require("./layer-list");
9
+ const search_1 = __importDefault(require("./search"));
10
+ function LayersTabPanel() {
11
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col flex-1 min-h-0 w-full", children: [(0, jsx_runtime_1.jsx)("div", { className: "shrink-0", children: (0, jsx_runtime_1.jsx)(search_1.default, {}) }), (0, jsx_runtime_1.jsx)("div", { className: "flex-1 min-h-0 overflow-y-auto", children: (0, jsx_runtime_1.jsx)(layer_list_1.LayerList, {}) })] }));
12
+ }
@@ -0,0 +1,2 @@
1
+ export declare function LayerList(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=layer-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer-list.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/layers/layer-list.tsx"],"names":[],"mappings":"AASA,wBAAgB,SAAS,4CAwExB"}
@@ -0,0 +1,64 @@
1
+ "use client";
2
+ "use strict";
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.LayerList = LayerList;
41
+ const jsx_runtime_1 = require("react/jsx-runtime");
42
+ const react_1 = __importStar(require("react"));
43
+ // changed import:
44
+ const react_virtual_1 = require("@tanstack/react-virtual");
45
+ const use_layers_1 = __importDefault(require("../../../hooks/use-layers"));
46
+ const layer_item_1 = __importDefault(require("../common/layer-item"));
47
+ function LayerList() {
48
+ const { layer, query } = (0, use_layers_1.default)();
49
+ const filteredLayers = (0, react_1.useMemo)(() => query.term
50
+ ? layer.all.filter((_l) => _l.title.toLowerCase().includes(query.term.toLowerCase()))
51
+ : layer.all, [layer.all, query.term]);
52
+ // parentRef is the scrolling element
53
+ const parentRef = react_1.default.useRef(null);
54
+ // Use tanstack virtualizer. We have a fixed row height of 146 (keeps your layout logic).
55
+ const rowVirtualizer = (0, react_virtual_1.useVirtualizer)({
56
+ count: filteredLayers.length,
57
+ getScrollElement: () => parentRef.current,
58
+ estimateSize: () => 146, // same as your inner div height
59
+ overscan: 5,
60
+ });
61
+ const virtualItems = rowVirtualizer.getVirtualItems();
62
+ const totalSize = rowVirtualizer.getTotalSize();
63
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex flex-col h-full", children: (0, jsx_runtime_1.jsx)("div", { className: "flex-1 min-h-0 overflow-y-auto", children: filteredLayers.map((item, idx) => ((0, jsx_runtime_1.jsx)("div", { style: { height: 146, boxSizing: "border-box", padding: 8 }, children: (0, jsx_runtime_1.jsx)(layer_item_1.default, { item: item }) }, item?.id ?? idx))) }) }));
64
+ }
@@ -0,0 +1,2 @@
1
+ export default function LayerSearch(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/layers/search.tsx"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,WAAW,4CAgBlC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = LayerSearch;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const use_layers_1 = __importDefault(require("../../../hooks/use-layers"));
9
+ const core_1 = require("../../core");
10
+ function LayerSearch() {
11
+ const { query } = (0, use_layers_1.default)();
12
+ const handleOnSearchChange = (e) => {
13
+ query.setTerm(e.target.value);
14
+ };
15
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex-1 shrink-0 border-b-2 p-4", children: (0, jsx_runtime_1.jsx)(core_1.SearchInput, { name: "lyr_search", placeholder: "Find layer by name", onChange: handleOnSearchChange }) }));
16
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=layers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/layers.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ declare const Extended: () => import("react/jsx-runtime").JSX.Element;
2
+ export default Extended;
3
+ //# sourceMappingURL=extended.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extended.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/selected/extended.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,QAAQ,+CAIb,CAAA;AAED,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const Extended = () => {
5
+ return ((0, jsx_runtime_1.jsx)("div", { children: "Extended" }));
6
+ };
7
+ exports.default = Extended;
@@ -0,0 +1,2 @@
1
+ export default function SelectedTabPanel(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/selected/index.tsx"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,gBAAgB,4CAwBvC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = SelectedTabPanel;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const array_move_1 = require("../../../utils/array-move");
9
+ const use_layers_1 = __importDefault(require("../../../hooks/use-layers"));
10
+ const selected_item_list_1 = require("./selected-item-list");
11
+ const core_1 = require("../../core");
12
+ function SelectedTabPanel() {
13
+ const { layer } = (0, use_layers_1.default)();
14
+ const onSortEnd = ({ oldIndex, newIndex }) => {
15
+ layer.setSelectedIds((0, array_move_1.arrayMoveImmutable)(layer.selectedIds, oldIndex, newIndex));
16
+ };
17
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `flex flex-col gap-3 w-full`, children: [layer.selectedIds.length > 0 && ((0, jsx_runtime_1.jsx)("div", { className: `p-3 pb-0`, children: (0, jsx_runtime_1.jsxs)(core_1.Button, { onClick: () => layer.clearAll(), children: ["\u2715 ", ("clear")] }) })), (0, jsx_runtime_1.jsx)(selected_item_list_1.SelectedItemList, { layerList: layer.selectedLayers,
18
+ // @ts-ignore
19
+ useDragHandle: true, onSortEnd: onSortEnd })] }));
20
+ }
@@ -0,0 +1,10 @@
1
+ export declare const SelectedItem: ({ id, item, extended }: {
2
+ id: any;
3
+ item: any;
4
+ extended: any;
5
+ }) => import("react/jsx-runtime").JSX.Element;
6
+ export declare const SelectedItemList: ({ layerList, onSort }: {
7
+ layerList: any;
8
+ onSort: any;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=selected-item-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-item-list.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/selected/selected-item-list.tsx"],"names":[],"mappings":"AAaA,eAAO,MAAM,YAAY,GAAI;;;;CAAsB,4CA0BlD,CAAC;AAGF,eAAO,MAAM,gBAAgB,GAAI;;;CAAqB,4CA6BrD,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SelectedItemList = exports.SelectedItem = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const core_1 = require("@dnd-kit/core");
9
+ const sortable_1 = require("@dnd-kit/sortable");
10
+ const utilities_1 = require("@dnd-kit/utilities");
11
+ const layer_item_1 = __importDefault(require("../common/layer-item"));
12
+ /* ---------------- SelectedItem (SortableElement) ---------------- */
13
+ const SelectedItem = ({ id, item, extended }) => {
14
+ const { setNodeRef, attributes, listeners, transform, transition, isDragging } = (0, sortable_1.useSortable)({ id });
15
+ const style = {
16
+ transform: utilities_1.CSS.Transform.toString(transform),
17
+ transition,
18
+ zIndex: isDragging ? 999 : undefined
19
+ };
20
+ return ((0, jsx_runtime_1.jsx)("div", { ref: setNodeRef, style: style, children: (0, jsx_runtime_1.jsx)(layer_item_1.default, { item: item, extended: extended, dragHandleProps: listeners, dragHandleRef: attributes.ref }) }));
21
+ };
22
+ exports.SelectedItem = SelectedItem;
23
+ /* ---------------- SelectedItemList (SortableContainer) ---------------- */
24
+ const SelectedItemList = ({ layerList, onSort }) => {
25
+ const ids = layerList.map((l) => l.id);
26
+ const handleDragEnd = (event) => {
27
+ const { active, over } = event;
28
+ if (!over || active.id === over.id)
29
+ return;
30
+ const oldIndex = ids.indexOf(active.id);
31
+ const newIndex = ids.indexOf(over.id);
32
+ onSort((0, sortable_1.arrayMove)(layerList, oldIndex, newIndex));
33
+ };
34
+ return ((0, jsx_runtime_1.jsx)(core_1.DndContext, { onDragEnd: handleDragEnd, children: (0, jsx_runtime_1.jsx)(sortable_1.SortableContext, { items: ids, strategy: sortable_1.verticalListSortingStrategy, children: (0, jsx_runtime_1.jsx)("div", { children: layerList.map((item) => ((0, jsx_runtime_1.jsx)(exports.SelectedItem, { id: item.id, item: item, extended: true }, item.id))) }) }) }));
35
+ };
36
+ exports.SelectedItemList = SelectedItemList;
@@ -0,0 +1,2 @@
1
+ export default function SettingsTabPanel(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/settings/index.tsx"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,gBAAgB,4CAwBvC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = SettingsTabPanel;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const map_common_1 = require("@metastringfoundation/map-common");
9
+ const use_layers_1 = __importDefault(require("../../../hooks/use-layers"));
10
+ const core_1 = require("../../core");
11
+ const layer_selection_1 = __importDefault(require("./layer-selection"));
12
+ function SettingsTabPanel() {
13
+ const { layer } = (0, use_layers_1.default)();
14
+ const handleOnStyleChange = (e) => layer.setMapStyle(e.target.value);
15
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `w-full p-4 flex flex-col gap-4`, children: [(0, jsx_runtime_1.jsx)(core_1.SelectInput, { name: "base_style", label: ("base_style"), defaultValue: layer.mapStyle, onChange: handleOnStyleChange, children: map_common_1.defaultMapStyles.map((ms) => ((0, jsx_runtime_1.jsx)("option", { value: ms.style, children: ms.text }, ms.key))) }), (0, jsx_runtime_1.jsx)(layer_selection_1.default, {})] }));
16
+ }
@@ -0,0 +1,6 @@
1
+ interface LayerSelectionProps {
2
+ hideLabel?: boolean;
3
+ }
4
+ export default function LayerSelection({ hideLabel }: LayerSelectionProps): import("react/jsx-runtime").JSX.Element;
5
+ export {};
6
+ //# sourceMappingURL=layer-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer-selection.d.ts","sourceRoot":"","sources":["../../../../src/components/sidebar/settings/layer-selection.tsx"],"names":[],"mappings":"AAOA,UAAU,mBAAmB;IAC3B,SAAS,CAAC,EAAC,OAAO,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAuBxE"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = LayerSelection;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const use_layers_1 = __importDefault(require("../../../hooks/use-layers"));
9
+ const constants_1 = require("../../../static/constants");
10
+ const core_1 = require("../../core");
11
+ function LayerSelection({ hideLabel }) {
12
+ const { layer: { selectionStyle, handleSelectStyle }, } = (0, use_layers_1.default)();
13
+ const handleOnSelectionStyleChange = (e) => {
14
+ handleSelectStyle(e.target.value);
15
+ };
16
+ return ((0, jsx_runtime_1.jsx)(core_1.SelectInput, { name: "layer_selection", label: hideLabel ? undefined : ("layer_selection"), defaultValue: selectionStyle, onChange: handleOnSelectionStyleChange, children: Object.values(constants_1.SELECTION_STYLE).map((ss) => ((0, jsx_runtime_1.jsx)("option", { value: ss, children: (ss) }, ss))) }));
17
+ }
@@ -0,0 +1,4 @@
1
+ export default function SidebarTabs({ onClose }: {
2
+ onClose: any;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/tabs.tsx"],"names":[],"mappings":"AAeA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAE,OAAO,EAAE;;CAAA,2CA4B9C"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = SidebarTabs;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const core_1 = require("../core");
9
+ const index_1 = __importDefault(require("./layers/index"));
10
+ const selected_1 = __importDefault(require("./selected"));
11
+ const settings_1 = __importDefault(require("./settings"));
12
+ // @ts-ignore
13
+ function SidebarTabs({ onClose }) {
14
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "absolute top-0 right-0 bottom-0 left-0 md:right-auto md:top-4 md:left-4 md:bottom-4 bg-white rounded-lg shadow-md md:max-w-sm w-full z-20 overflow-hidden", children: [(0, jsx_runtime_1.jsx)(core_1.CloseButton, { onClick: onClose }), (0, jsx_runtime_1.jsx)("div", { className: "flex flex-col h-full", children: (0, jsx_runtime_1.jsxs)(core_1.Tabs, { className: "flex flex-col h-full", children: [(0, jsx_runtime_1.jsxs)(core_1.TabHeader, { children: [(0, jsx_runtime_1.jsx)(core_1.IconTab, { icon: (0, jsx_runtime_1.jsx)(core_1.LayersIcon, {}), children: ("layers") }), (0, jsx_runtime_1.jsx)(core_1.IconTab, { icon: (0, jsx_runtime_1.jsx)(core_1.LayersIcon, {}), children: ("selected") }), (0, jsx_runtime_1.jsx)(core_1.IconTab, { icon: (0, jsx_runtime_1.jsx)(core_1.SlidersIcon, {}), children: ("settings") })] }), (0, jsx_runtime_1.jsx)(core_1.Panel, { children: (0, jsx_runtime_1.jsx)(index_1.default, {}) }), (0, jsx_runtime_1.jsx)(core_1.Panel, { children: (0, jsx_runtime_1.jsx)(selected_1.default, {}) }), (0, jsx_runtime_1.jsx)(core_1.Panel, { children: (0, jsx_runtime_1.jsx)(settings_1.default, {}) })] }) })] }));
15
+ }
@@ -0,0 +1,6 @@
1
+ export declare function Gradient({ conic, className, small, }: {
2
+ small?: boolean;
3
+ conic?: boolean;
4
+ className?: string;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ //# sourceMappingURL=gradient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradient.d.ts","sourceRoot":"","sources":["../src/gradient.tsx"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,SAAS,EACT,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAYA"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Gradient = Gradient;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ function Gradient({ conic, className, small, }) {
6
+ return ((0, jsx_runtime_1.jsx)("span", { className: `ui:absolute ui:mix-blend-normal ui:will-change-[filter] ui:rounded-[100%] ${small ? "ui:blur-[32px]" : "ui:blur-[75px]"} ${conic
7
+ ? "ui:bg-gradient-to-r ui:bg-red-1000 ui:from-10% ui:via-purple-1000 ui:via-30% ui:to-blue-1000 ui:to-100%"
8
+ : ""} ${className ?? ""}` }));
9
+ }
@@ -0,0 +1,55 @@
1
+ import React from "react";
2
+ import { GeoserverLayer, NakshaMapboxListProps } from "../interfaces";
3
+ interface LayersContextProps {
4
+ mp: NakshaMapboxListProps;
5
+ updateMP: (key: string, value: any) => void;
6
+ isInfoBarOpen: boolean;
7
+ setIsInfoBarOpen: (v: boolean) => void;
8
+ layer: {
9
+ mapStyle?: any;
10
+ setMapStyle: (s: any) => void;
11
+ featuresAtLatLng: (value?: any) => void;
12
+ all: GeoserverLayer[];
13
+ setAll: (layers: GeoserverLayer[]) => void;
14
+ selectedIds: string[];
15
+ setSelectedIds: (ids: string[]) => void;
16
+ selectedLayers: GeoserverLayer[];
17
+ clearAll: () => void;
18
+ toggle: (args: {
19
+ layerId: string;
20
+ add: boolean;
21
+ styleIndex?: number;
22
+ focus?: boolean;
23
+ }) => Promise<void> | void;
24
+ updateStyle: (layerId: string, styleIndex: number) => Promise<void> | void;
25
+ selectedFeatures: any;
26
+ selectedFeaturesId: any;
27
+ setSelectedFeatures: (f: any) => void;
28
+ togglePublish: (layerId: string, layerStatus: string) => void;
29
+ delete: (layerId: string, message?: string) => void;
30
+ handleSelectStyle: (value: string) => void;
31
+ selectionStyle: string;
32
+ setSelectionStyle: (v: string) => void;
33
+ zoomToExtent: (layerId: string) => void;
34
+ gridLegends: Record<string, any>;
35
+ setGridLegends: (g: Record<string, any>) => void;
36
+ };
37
+ query: {
38
+ term: string;
39
+ setTerm: (t: string) => void;
40
+ clickedLngLat: any;
41
+ setClickedLngLat: (v: any) => void;
42
+ };
43
+ hover: {
44
+ onHover: (e: any) => void;
45
+ features: any;
46
+ };
47
+ }
48
+ interface LayersProviderProps {
49
+ mp: NakshaMapboxListProps;
50
+ children: React.ReactNode;
51
+ }
52
+ export declare const LayersProvider: ({ mp: _mp, children }: LayersProviderProps) => import("react/jsx-runtime").JSX.Element;
53
+ export default function useLayers(): LayersContextProps;
54
+ export {};
55
+ //# sourceMappingURL=use-layers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-layers.d.ts","sourceRoot":"","sources":["../../src/hooks/use-layers.tsx"],"names":[],"mappings":"AACA,OAAO,KAMN,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAStE,UAAU,kBAAkB;IAC1B,EAAE,EAAE,qBAAqB,CAAC;IAC1B,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE;QACL,QAAQ,CAAC,EAAE,GAAG,CAAC;QACf,WAAW,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC9B,gBAAgB,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QACxC,GAAG,EAAE,cAAc,EAAE,CAAC;QACtB,MAAM,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;QAC3C,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;QACxC,cAAc,EAAE,cAAc,EAAE,CAAC;QAEjC,QAAQ,EAAE,MAAM,IAAI,CAAC;QACrB,MAAM,EAAE,CAAC,IAAI,EAAE;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,GAAG,EAAE,OAAO,CAAC;YACb,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,KAAK,CAAC,EAAE,OAAO,CAAC;SACjB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3B,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3E,gBAAgB,EAAE,GAAG,CAAC;QACtB,kBAAkB,EAAE,GAAG,CAAC;QACxB,mBAAmB,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QACtC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;QAC9D,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QACpD,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QAC3C,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QAEvC,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QAExC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;KAClD,CAAC;IACF,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QAC7B,aAAa,EAAE,GAAG,CAAC;QACnB,gBAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KACpC,CAAC;IACF,KAAK,EAAE;QACL,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC1B,QAAQ,EAAE,GAAG,CAAC;KACf,CAAC;CACH;AAED,UAAU,mBAAmB;IAC3B,EAAE,EAAE,qBAAqB,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAMD,eAAO,MAAM,cAAc,GAAI,uBAAuB,mBAAmB,4CA8UxE,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,SAAS,uBAEhC"}