@deck.gl-community/graph-layers 9.1.0-beta.8 → 9.2.0-beta.2

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 (252) hide show
  1. package/LICENSE +1 -1
  2. package/dist/_deprecated/old-constants.d.ts +107 -0
  3. package/dist/_deprecated/old-constants.d.ts.map +1 -0
  4. package/dist/_deprecated/old-constants.js +111 -0
  5. package/dist/_deprecated/old-constants.js.map +1 -0
  6. package/dist/core/cache.d.ts +0 -1
  7. package/dist/core/cache.js +0 -1
  8. package/dist/core/constants.d.ts +12 -100
  9. package/dist/core/constants.d.ts.map +1 -1
  10. package/dist/core/constants.js +3 -44
  11. package/dist/core/constants.js.map +1 -1
  12. package/dist/core/graph-engine.d.ts +12 -11
  13. package/dist/core/graph-engine.d.ts.map +1 -1
  14. package/dist/core/graph-engine.js +22 -11
  15. package/dist/core/graph-engine.js.map +1 -1
  16. package/dist/core/graph-layout.d.ts +48 -21
  17. package/dist/core/graph-layout.d.ts.map +1 -1
  18. package/dist/core/graph-layout.js +91 -24
  19. package/dist/core/graph-layout.js.map +1 -1
  20. package/dist/core/interaction-manager.d.ts +6 -4
  21. package/dist/core/interaction-manager.d.ts.map +1 -1
  22. package/dist/core/interaction-manager.js +59 -17
  23. package/dist/core/interaction-manager.js.map +1 -1
  24. package/dist/graph/edge.d.ts +7 -7
  25. package/dist/graph/edge.d.ts.map +1 -1
  26. package/dist/graph/edge.js +3 -6
  27. package/dist/graph/edge.js.map +1 -1
  28. package/dist/graph/graph.d.ts +2 -3
  29. package/dist/graph/graph.js +8 -9
  30. package/dist/graph/graph.js.map +1 -1
  31. package/dist/graph/node.d.ts +7 -8
  32. package/dist/graph/node.d.ts.map +1 -1
  33. package/dist/graph/node.js +3 -5
  34. package/dist/graph/node.js.map +1 -1
  35. package/dist/graph-style-schema.cdn.d.ts +2 -0
  36. package/dist/graph-style-schema.cdn.js +2 -0
  37. package/dist/graph-style-schema.json +12 -0
  38. package/dist/index.cjs +2821 -549
  39. package/dist/index.cjs.map +4 -4
  40. package/dist/index.d.ts +28 -22
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +25 -21
  43. package/dist/index.js.map +1 -1
  44. package/dist/layers/common-layers/flow-path-layer/flow-path-layer-fragment.glsl.d.ts +0 -1
  45. package/dist/layers/common-layers/flow-path-layer/flow-path-layer-fragment.glsl.js +0 -1
  46. package/dist/layers/common-layers/flow-path-layer/flow-path-layer-vertex-tf.glsl.d.ts +0 -1
  47. package/dist/layers/common-layers/flow-path-layer/flow-path-layer-vertex-tf.glsl.js +0 -1
  48. package/dist/layers/common-layers/flow-path-layer/flow-path-layer-vertex.glsl.d.ts +0 -1
  49. package/dist/layers/common-layers/flow-path-layer/flow-path-layer-vertex.glsl.js +0 -1
  50. package/dist/layers/common-layers/flow-path-layer/flow-path-layer.d.ts +0 -1
  51. package/dist/layers/common-layers/flow-path-layer/flow-path-layer.js +0 -1
  52. package/dist/layers/common-layers/marker-layer/atlas-data-url.d.ts +0 -1
  53. package/dist/layers/common-layers/marker-layer/atlas-data-url.js +0 -1
  54. package/dist/layers/common-layers/marker-layer/marker-layer.d.ts +0 -1
  55. package/dist/layers/common-layers/marker-layer/marker-layer.js +2 -3
  56. package/dist/layers/common-layers/marker-layer/marker-list.d.ts +2 -63
  57. package/dist/layers/common-layers/marker-layer/marker-list.d.ts.map +1 -1
  58. package/dist/layers/common-layers/marker-layer/marker-list.js +1 -65
  59. package/dist/layers/common-layers/marker-layer/marker-list.js.map +1 -1
  60. package/dist/layers/common-layers/marker-layer/marker-mapping.d.ts +0 -1
  61. package/dist/layers/common-layers/marker-layer/marker-mapping.js +0 -1
  62. package/dist/layers/common-layers/spline-layer/spline-layer.d.ts +0 -1
  63. package/dist/layers/common-layers/spline-layer/spline-layer.js +0 -1
  64. package/dist/layers/common-layers/zoomable-text-layer/zoomable-text-layer.d.ts +0 -1
  65. package/dist/layers/common-layers/zoomable-text-layer/zoomable-text-layer.js +0 -1
  66. package/dist/layers/edge-attachment-helper.d.ts +15 -0
  67. package/dist/layers/edge-attachment-helper.d.ts.map +1 -0
  68. package/dist/layers/edge-attachment-helper.js +230 -0
  69. package/dist/layers/edge-attachment-helper.js.map +1 -0
  70. package/dist/layers/edge-layer.d.ts +1 -5
  71. package/dist/layers/edge-layer.d.ts.map +1 -1
  72. package/dist/layers/edge-layer.js +9 -11
  73. package/dist/layers/edge-layer.js.map +1 -1
  74. package/dist/layers/edge-layers/arrow-2d-geometry.d.ts +4 -0
  75. package/dist/layers/edge-layers/arrow-2d-geometry.d.ts.map +1 -0
  76. package/dist/layers/edge-layers/arrow-2d-geometry.js +42 -0
  77. package/dist/layers/edge-layers/arrow-2d-geometry.js.map +1 -0
  78. package/dist/layers/edge-layers/curved-edge-layer.d.ts +1 -2
  79. package/dist/layers/edge-layers/curved-edge-layer.js +1 -2
  80. package/dist/layers/edge-layers/edge-arrow-layer.d.ts +21 -0
  81. package/dist/layers/edge-layers/edge-arrow-layer.d.ts.map +1 -0
  82. package/dist/layers/edge-layers/edge-arrow-layer.js +131 -0
  83. package/dist/layers/edge-layers/edge-arrow-layer.js.map +1 -0
  84. package/dist/layers/edge-layers/edge-label-layer.d.ts +1 -2
  85. package/dist/layers/edge-layers/edge-label-layer.js +1 -2
  86. package/dist/layers/edge-layers/flow-layer.d.ts +1 -2
  87. package/dist/layers/edge-layers/flow-layer.js +1 -2
  88. package/dist/layers/edge-layers/path-edge-layer.d.ts +0 -1
  89. package/dist/layers/edge-layers/path-edge-layer.js +0 -1
  90. package/dist/layers/edge-layers/straight-line-edge-layer.d.ts +0 -1
  91. package/dist/layers/edge-layers/straight-line-edge-layer.js +0 -1
  92. package/dist/layers/graph-layer.d.ts +22 -23
  93. package/dist/layers/graph-layer.d.ts.map +1 -1
  94. package/dist/layers/graph-layer.js +218 -62
  95. package/dist/layers/graph-layer.js.map +1 -1
  96. package/dist/layers/node-layers/circle-layer.d.ts +0 -1
  97. package/dist/layers/node-layers/circle-layer.js +0 -1
  98. package/dist/layers/node-layers/image-layer.d.ts +0 -1
  99. package/dist/layers/node-layers/image-layer.js +0 -1
  100. package/dist/layers/node-layers/label-layer.d.ts +1 -2
  101. package/dist/layers/node-layers/label-layer.js +1 -2
  102. package/dist/layers/node-layers/path-rounded-rectangle-layer.d.ts +0 -1
  103. package/dist/layers/node-layers/path-rounded-rectangle-layer.js +1 -2
  104. package/dist/layers/node-layers/rectangle-layer.d.ts +0 -1
  105. package/dist/layers/node-layers/rectangle-layer.js +0 -1
  106. package/dist/layers/node-layers/rounded-rectangle-layer-fragment.d.ts +0 -1
  107. package/dist/layers/node-layers/rounded-rectangle-layer-fragment.js +0 -1
  108. package/dist/layers/node-layers/rounded-rectangle-layer.d.ts +1 -2
  109. package/dist/layers/node-layers/rounded-rectangle-layer.js +2 -3
  110. package/dist/layers/node-layers/zoomable-marker-layer.d.ts +1 -2
  111. package/dist/layers/node-layers/zoomable-marker-layer.js +1 -2
  112. package/dist/layouts/d3-dag/d3-dag-layout.d.ts +117 -0
  113. package/dist/layouts/d3-dag/d3-dag-layout.d.ts.map +1 -0
  114. package/dist/layouts/d3-dag/d3-dag-layout.js +716 -0
  115. package/dist/layouts/d3-dag/d3-dag-layout.js.map +1 -0
  116. package/dist/layouts/d3-force/d3-force-layout.d.ts +4 -4
  117. package/dist/layouts/d3-force/d3-force-layout.d.ts.map +1 -1
  118. package/dist/layouts/d3-force/d3-force-layout.js +25 -10
  119. package/dist/layouts/d3-force/d3-force-layout.js.map +1 -1
  120. package/dist/layouts/d3-force/worker.d.ts +0 -1
  121. package/dist/layouts/d3-force/worker.js +0 -1
  122. package/dist/layouts/experimental/force-multi-graph-layout.d.ts +9 -8
  123. package/dist/layouts/experimental/force-multi-graph-layout.d.ts.map +1 -1
  124. package/dist/layouts/experimental/force-multi-graph-layout.js +15 -11
  125. package/dist/layouts/experimental/force-multi-graph-layout.js.map +1 -1
  126. package/dist/layouts/experimental/hive-plot-layout.d.ts +11 -8
  127. package/dist/layouts/experimental/hive-plot-layout.d.ts.map +1 -1
  128. package/dist/layouts/experimental/hive-plot-layout.js +12 -7
  129. package/dist/layouts/experimental/hive-plot-layout.js.map +1 -1
  130. package/dist/layouts/experimental/radial-layout.d.ts +10 -7
  131. package/dist/layouts/experimental/radial-layout.d.ts.map +1 -1
  132. package/dist/layouts/experimental/radial-layout.js +11 -6
  133. package/dist/layouts/experimental/radial-layout.js.map +1 -1
  134. package/dist/layouts/gpu-force/gpu-force-layout.d.ts +4 -4
  135. package/dist/layouts/gpu-force/gpu-force-layout.d.ts.map +1 -1
  136. package/dist/layouts/gpu-force/gpu-force-layout.js +18 -9
  137. package/dist/layouts/gpu-force/gpu-force-layout.js.map +1 -1
  138. package/dist/layouts/gpu-force/worker.d.ts +0 -1
  139. package/dist/layouts/gpu-force/worker.js +0 -1
  140. package/dist/layouts/simple-layout.d.ts +19 -12
  141. package/dist/layouts/simple-layout.d.ts.map +1 -1
  142. package/dist/layouts/simple-layout.js +26 -15
  143. package/dist/layouts/simple-layout.js.map +1 -1
  144. package/dist/loaders/create-graph.d.ts +1 -2
  145. package/dist/loaders/create-graph.js +3 -4
  146. package/dist/loaders/edge-parsers.d.ts +1 -2
  147. package/dist/loaders/edge-parsers.js +2 -3
  148. package/dist/loaders/edge-parsers.js.map +1 -1
  149. package/dist/loaders/json-loader.d.ts +2 -3
  150. package/dist/loaders/json-loader.d.ts.map +1 -1
  151. package/dist/loaders/json-loader.js +5 -6
  152. package/dist/loaders/json-loader.js.map +1 -1
  153. package/dist/loaders/node-parsers.d.ts +1 -2
  154. package/dist/loaders/node-parsers.js +2 -3
  155. package/dist/loaders/node-parsers.js.map +1 -1
  156. package/dist/loaders/simple-json-graph-loader.d.ts +0 -1
  157. package/dist/loaders/simple-json-graph-loader.d.ts.map +1 -1
  158. package/dist/loaders/simple-json-graph-loader.js +5 -6
  159. package/dist/loaders/simple-json-graph-loader.js.map +1 -1
  160. package/dist/loaders/table-graph-loader.d.ts +3 -4
  161. package/dist/loaders/table-graph-loader.js +5 -6
  162. package/dist/loaders/table-graph-loader.js.map +1 -1
  163. package/dist/style/graph-layer-stylesheet.d.ts +34 -0
  164. package/dist/style/graph-layer-stylesheet.d.ts.map +1 -0
  165. package/dist/style/graph-layer-stylesheet.js +39 -0
  166. package/dist/style/graph-layer-stylesheet.js.map +1 -0
  167. package/dist/style/graph-style-accessor-map.d.ts +93 -0
  168. package/dist/style/graph-style-accessor-map.d.ts.map +1 -0
  169. package/dist/style/graph-style-accessor-map.js +93 -0
  170. package/dist/style/graph-style-accessor-map.js.map +1 -0
  171. package/dist/style/graph-style-engine.d.ts +10 -0
  172. package/dist/style/graph-style-engine.d.ts.map +1 -0
  173. package/dist/style/graph-style-engine.js +163 -0
  174. package/dist/style/graph-style-engine.js.map +1 -0
  175. package/dist/style/graph-stylesheet.schema.d.ts +310 -0
  176. package/dist/style/graph-stylesheet.schema.d.ts.map +1 -0
  177. package/dist/style/graph-stylesheet.schema.js +237 -0
  178. package/dist/style/graph-stylesheet.schema.js.map +1 -0
  179. package/dist/style/style-engine.d.ts +33 -0
  180. package/dist/style/style-engine.d.ts.map +1 -0
  181. package/dist/style/style-engine.js +121 -0
  182. package/dist/style/style-engine.js.map +1 -0
  183. package/dist/style/style-property.d.ts +2 -3
  184. package/dist/style/style-property.d.ts.map +1 -1
  185. package/dist/style/style-property.js +224 -48
  186. package/dist/style/style-property.js.map +1 -1
  187. package/dist/utils/collapsed-chains.d.ts +17 -0
  188. package/dist/utils/collapsed-chains.d.ts.map +1 -0
  189. package/dist/utils/collapsed-chains.js +197 -0
  190. package/dist/utils/collapsed-chains.js.map +1 -0
  191. package/dist/utils/layer-utils.d.ts +0 -1
  192. package/dist/utils/layer-utils.d.ts.map +1 -1
  193. package/dist/utils/layer-utils.js +0 -1
  194. package/dist/utils/log.d.ts +2 -1
  195. package/dist/utils/log.d.ts.map +1 -1
  196. package/dist/utils/log.js +12 -2
  197. package/dist/utils/log.js.map +1 -1
  198. package/dist/utils/node-boundary.d.ts +10 -0
  199. package/dist/utils/node-boundary.d.ts.map +1 -0
  200. package/dist/utils/node-boundary.js +130 -0
  201. package/dist/utils/node-boundary.js.map +1 -0
  202. package/dist/utils/polygon-calculations.d.ts +0 -1
  203. package/dist/utils/polygon-calculations.js +0 -1
  204. package/dist/widgets/long-press-button.d.ts +0 -1
  205. package/dist/widgets/long-press-button.js +0 -1
  206. package/dist/widgets/view-control-widget.d.ts +4 -5
  207. package/dist/widgets/view-control-widget.d.ts.map +1 -1
  208. package/dist/widgets/view-control-widget.js +10 -8
  209. package/dist/widgets/view-control-widget.js.map +1 -1
  210. package/package.json +23 -7
  211. package/src/_deprecated/old-constants.ts +122 -0
  212. package/src/core/constants.ts +21 -43
  213. package/src/core/graph-engine.ts +24 -9
  214. package/src/core/graph-layout.ts +133 -28
  215. package/src/core/interaction-manager.ts +80 -20
  216. package/src/graph/edge.ts +6 -6
  217. package/src/graph/graph.ts +7 -7
  218. package/src/graph/node.ts +6 -6
  219. package/src/index.ts +31 -6
  220. package/src/layers/common-layers/marker-layer/marker-list.ts +62 -64
  221. package/src/layers/edge-attachment-helper.ts +355 -0
  222. package/src/layers/edge-layer.ts +6 -7
  223. package/src/layers/edge-layers/arrow-2d-geometry.ts +51 -0
  224. package/src/layers/edge-layers/edge-arrow-layer.ts +171 -0
  225. package/src/layers/graph-layer.ts +304 -86
  226. package/src/layouts/d3-dag/d3-dag-layout.ts +969 -0
  227. package/src/layouts/d3-force/d3-force-layout.ts +33 -11
  228. package/src/layouts/experimental/force-multi-graph-layout.ts +22 -13
  229. package/src/layouts/experimental/hive-plot-layout.ts +22 -10
  230. package/src/layouts/experimental/radial-layout.ts +20 -8
  231. package/src/layouts/gpu-force/gpu-force-layout.ts +22 -10
  232. package/src/layouts/simple-layout.ts +48 -25
  233. package/src/loaders/edge-parsers.ts +2 -2
  234. package/src/loaders/json-loader.ts +2 -2
  235. package/src/loaders/node-parsers.ts +2 -2
  236. package/src/loaders/simple-json-graph-loader.ts +2 -2
  237. package/src/loaders/table-graph-loader.ts +2 -2
  238. package/src/style/graph-layer-stylesheet.ts +99 -0
  239. package/src/style/graph-style-accessor-map.ts +103 -0
  240. package/src/style/graph-style-engine.ts +229 -0
  241. package/src/style/graph-stylesheet.schema.ts +344 -0
  242. package/src/style/style-engine.ts +168 -0
  243. package/src/style/style-property.ts +314 -51
  244. package/src/utils/collapsed-chains.ts +261 -0
  245. package/src/utils/log.ts +15 -1
  246. package/src/utils/node-boundary.ts +238 -0
  247. package/src/widgets/view-control-widget.tsx +15 -13
  248. package/dist/style/style-sheet.d.ts +0 -11
  249. package/dist/style/style-sheet.d.ts.map +0 -1
  250. package/dist/style/style-sheet.js +0 -253
  251. package/dist/style/style-sheet.js.map +0 -1
  252. package/src/style/style-sheet.ts +0 -277
@@ -1,10 +1,10 @@
1
1
  // deck.gl-community
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
- import { Edge } from "../graph/edge.js";
5
- import { Node } from "../graph/node.js";
6
- import { Graph } from "../graph/graph.js";
7
- import { log } from "../utils/log.js";
4
+ import { Edge } from '../graph/edge';
5
+ import { Node } from '../graph/node';
6
+ import { Graph } from '../graph/graph';
7
+ import { error } from '../utils/log';
8
8
  const defaultParseGraphOptions = {
9
9
  nodeIdField: 'id',
10
10
  edgeSourceField: 'sourceId',
@@ -47,7 +47,7 @@ export function tableGraphLoader(tables, options) {
47
47
  const edgeParser = options.edgeParser || defaultEdgeParser;
48
48
  // add nodes
49
49
  if (!nodes) {
50
- log.error('Invalid graph: nodes is missing.')();
50
+ error('Invalid graph: nodes is missing.');
51
51
  return null;
52
52
  }
53
53
  const glNodes = nodes.map((node) => {
@@ -89,4 +89,3 @@ export function tableGraphLoader(tables, options) {
89
89
  // targetId
90
90
  // };
91
91
  // }
92
- //# sourceMappingURL=table-graph-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-graph-loader.js","sourceRoot":"","sources":["../../src/loaders/table-graph-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-graph-loader.js","sourceRoot":"","sources":["../../src/loaders/table-graph-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { GraphStylesheet, GraphStyleType } from './graph-style-engine';
2
+ export type GraphNodeStyleType = Exclude<GraphStyleType, 'Edge' | 'edge' | 'edge-label' | 'flow' | 'arrow'>;
3
+ export type GraphEdgeDecoratorType = Extract<GraphStyleType, 'edge-label' | 'flow' | 'arrow'>;
4
+ export type GraphLayerNodeStyle = GraphStylesheet<GraphNodeStyleType> & {
5
+ pickable?: boolean;
6
+ visible?: boolean;
7
+ data?: (nodes: any[]) => any;
8
+ };
9
+ export type GraphLayerEdgeDecoratorStyle = GraphStylesheet<GraphEdgeDecoratorType>;
10
+ type EdgeStyleType = Extract<GraphStyleType, 'Edge' | 'edge'>;
11
+ export type GraphLayerEdgeStyle = (GraphStylesheet<EdgeStyleType> | (Omit<GraphStylesheet<EdgeStyleType>, 'type'> & {
12
+ type?: EdgeStyleType;
13
+ })) & {
14
+ decorators?: GraphLayerEdgeDecoratorStyle[];
15
+ data?: (edges: any[]) => any;
16
+ visible?: boolean;
17
+ };
18
+ export type GraphLayerStylesheet = {
19
+ nodes?: GraphLayerNodeStyle[];
20
+ edges?: GraphLayerEdgeStyle | GraphLayerEdgeStyle[];
21
+ };
22
+ export type GraphLayerStylesheetInput = GraphLayerStylesheet | null | undefined;
23
+ export type NormalizedGraphLayerStylesheet = {
24
+ nodes: GraphLayerNodeStyle[];
25
+ edges: GraphLayerEdgeStyle[];
26
+ };
27
+ export declare const DEFAULT_GRAPH_LAYER_STYLESHEET: NormalizedGraphLayerStylesheet;
28
+ export type GraphLayerStylesheetSources = {
29
+ stylesheet?: GraphLayerStylesheetInput;
30
+ nodeStyle?: GraphLayerNodeStyle[];
31
+ edgeStyle?: GraphLayerEdgeStyle | GraphLayerEdgeStyle[];
32
+ };
33
+ export declare function normalizeGraphLayerStylesheet({ stylesheet, nodeStyle, edgeStyle }: GraphLayerStylesheetSources): NormalizedGraphLayerStylesheet;
34
+ export type { GraphStyleValue, GraphStylesheet, GraphStyleType } from './graph-style-engine';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-layer-stylesheet.d.ts","sourceRoot":"","sources":["../../src/style/graph-layer-stylesheet.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,eAAe,EAAE,cAAc,EAAC,gCAA6B;AAE1E,MAAM,MAAM,kBAAkB,GAAG,OAAO,CACtC,cAAc,EACd,MAAM,GAAG,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAClD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC,cAAc,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;AAE9F,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC,kBAAkB,CAAC,GAAG;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAC;AAEnF,KAAK,aAAa,GAAG,OAAO,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAE9D,MAAM,MAAM,mBAAmB,GAAG,CAC9B,eAAe,CAAC,aAAa,CAAC,GAC9B,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,GAAG;IAAC,IAAI,CAAC,EAAE,aAAa,CAAA;CAAC,CAAC,CAC1E,GAAG;IACF,UAAU,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,GAAG,IAAI,GAAG,SAAS,CAAC;AAEhF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B,CAAC;AASF,eAAO,MAAM,8BAA8B,EAAE,8BAG5C,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,CAAC;CACzD,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,EAC5C,UAAU,EACV,SAAS,EACT,SAAS,EACV,EAAE,2BAA2B,GAAG,8BAA8B,CA8B9D;AAED,YAAY,EAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAC,gCAA6B"}
@@ -0,0 +1,39 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ const DEFAULT_EDGE_STYLE = {
5
+ type: 'edge',
6
+ stroke: 'black',
7
+ strokeWidth: 1,
8
+ decorators: []
9
+ };
10
+ export const DEFAULT_GRAPH_LAYER_STYLESHEET = {
11
+ nodes: [],
12
+ edges: [DEFAULT_EDGE_STYLE]
13
+ };
14
+ export function normalizeGraphLayerStylesheet({ stylesheet, nodeStyle, edgeStyle }) {
15
+ const resolvedStylesheet = stylesheet ?? {};
16
+ const resolvedNodeStyles = Array.isArray(resolvedStylesheet.nodes)
17
+ ? resolvedStylesheet.nodes
18
+ : nodeStyle;
19
+ const resolvedEdgeStyles = resolvedStylesheet.edges ?? edgeStyle;
20
+ const nodes = Array.isArray(resolvedNodeStyles)
21
+ ? resolvedNodeStyles.filter(Boolean)
22
+ : [...DEFAULT_GRAPH_LAYER_STYLESHEET.nodes];
23
+ const edgeEntries = Array.isArray(resolvedEdgeStyles)
24
+ ? resolvedEdgeStyles
25
+ : resolvedEdgeStyles
26
+ ? [resolvedEdgeStyles]
27
+ : DEFAULT_GRAPH_LAYER_STYLESHEET.edges;
28
+ const edges = (edgeEntries)
29
+ .filter(Boolean)
30
+ .map((edgeStyleEntry) => ({
31
+ ...edgeStyleEntry,
32
+ type: ((edgeStyleEntry).type ?? 'edge'),
33
+ decorators: (edgeStyleEntry).decorators ?? []
34
+ }));
35
+ return {
36
+ nodes,
37
+ edges
38
+ };
39
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-layer-stylesheet.js","sourceRoot":"","sources":["../../src/style/graph-layer-stylesheet.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AA0CpC,MAAM,kBAAkB,GAAwB;IAC9C,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,OAAO;IACf,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,EAAE;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAmC;IAC5E,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC,kBAAkB,CAAC;CAC5B,CAAC;AAQF,MAAM,UAAU,6BAA6B,CAAC,EAC5C,UAAU,EACV,SAAS,EACT,SAAS,EACmB;IAC5B,MAAM,kBAAkB,GAAG,UAAU,IAAI,EAAE,CAAC;IAC5C,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC;QAChE,CAAC,CAAC,kBAAkB,CAAC,KAAK;QAC1B,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,IAAI,SAAS,CAAC;IAEjE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7C,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC;QACpC,CAAC,CAAC,CAAC,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACnD,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,CAAC,kBAAkB,CAAC;YACtB,CAAC,CAAC,8BAA8B,CAAC,KAAK,CAAC;IAEzC,MAAM,KAAK,GAA0B,CAAC,WAAW,CAAC;SAC/C,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QACxB,GAAG,cAAc;QACjB,IAAI,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC;QACvC,UAAU,EAAE,CAAC,cAAc,CAAC,CAAC,UAAU,IAAI,EAAE;KAC9C,CAAC,CAA0B,CAAC;IAE/B,OAAO;QACL,KAAK;QACL,KAAK;KACN,CAAC;AACJ,CAAC"}
@@ -0,0 +1,93 @@
1
+ export declare const GRAPH_DECKGL_ACCESSOR_MAP: {
2
+ readonly circle: {
3
+ readonly getFillColor: "fill";
4
+ readonly getLineColor: "stroke";
5
+ readonly getLineWidth: "strokeWidth";
6
+ readonly getRadius: "radius";
7
+ readonly getOffset: "offset";
8
+ readonly opacity: "opacity";
9
+ };
10
+ readonly rectangle: {
11
+ readonly getWidth: "width";
12
+ readonly getHeight: "height";
13
+ readonly getFillColor: "fill";
14
+ readonly getLineColor: "stroke";
15
+ readonly getLineWidth: "strokeWidth";
16
+ readonly getOffset: "offset";
17
+ readonly opacity: "opacity";
18
+ };
19
+ readonly 'rounded-rectangle': {
20
+ readonly getCornerRadius: "cornerRadius";
21
+ readonly getRadius: "radius";
22
+ readonly getWidth: "width";
23
+ readonly getHeight: "height";
24
+ readonly getFillColor: "fill";
25
+ readonly getLineColor: "stroke";
26
+ readonly getLineWidth: "strokeWidth";
27
+ readonly getOffset: "offset";
28
+ readonly opacity: "opacity";
29
+ };
30
+ readonly 'path-rounded-rectangle': {
31
+ readonly getWidth: "width";
32
+ readonly getHeight: "height";
33
+ readonly getFillColor: "fill";
34
+ readonly getLineColor: "stroke";
35
+ readonly getLineWidth: "strokeWidth";
36
+ readonly getCornerRadius: "cornerRadius";
37
+ readonly getOffset: "offset";
38
+ readonly opacity: "opacity";
39
+ };
40
+ readonly label: {
41
+ readonly getColor: "color";
42
+ readonly getText: "text";
43
+ readonly getSize: "fontSize";
44
+ readonly getTextAnchor: "textAnchor";
45
+ readonly getAlignmentBaseline: "alignmentBaseline";
46
+ readonly getAngle: "angle";
47
+ readonly scaleWithZoom: "scaleWithZoom";
48
+ readonly textMaxWidth: "textMaxWidth";
49
+ readonly textWordBreak: "textWordBreak";
50
+ readonly textSizeMinPixels: "textSizeMinPixels";
51
+ readonly getOffset: "offset";
52
+ readonly opacity: "opacity";
53
+ };
54
+ readonly marker: {
55
+ readonly getColor: "fill";
56
+ readonly getSize: "size";
57
+ readonly getMarker: "marker";
58
+ readonly scaleWithZoom: "scaleWithZoom";
59
+ readonly getOffset: "offset";
60
+ readonly opacity: "opacity";
61
+ };
62
+ readonly Edge: {
63
+ readonly getColor: "stroke";
64
+ readonly getWidth: "strokeWidth";
65
+ };
66
+ readonly edge: {
67
+ readonly getColor: "stroke";
68
+ readonly getWidth: "strokeWidth";
69
+ };
70
+ readonly 'edge-label': {
71
+ readonly getColor: "color";
72
+ readonly getText: "text";
73
+ readonly getSize: "fontSize";
74
+ readonly getTextAnchor: "textAnchor";
75
+ readonly getAlignmentBaseline: "alignmentBaseline";
76
+ readonly scaleWithZoom: "scaleWithZoom";
77
+ readonly textMaxWidth: "textMaxWidth";
78
+ readonly textWordBreak: "textWordBreak";
79
+ readonly textSizeMinPixels: "textSizeMinPixels";
80
+ };
81
+ readonly flow: {
82
+ readonly getColor: "color";
83
+ readonly getWidth: "width";
84
+ readonly getSpeed: "speed";
85
+ readonly getTailLength: "tailLength";
86
+ };
87
+ readonly arrow: {
88
+ readonly getColor: "color";
89
+ readonly getSize: "size";
90
+ readonly getOffset: "offset";
91
+ };
92
+ };
93
+ export type GraphDeckGLAccessorMap = typeof GRAPH_DECKGL_ACCESSOR_MAP;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-style-accessor-map.d.ts","sourceRoot":"","sources":["../../src/style/graph-style-accessor-map.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2F5B,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAAG,OAAO,yBAAyB,CAAC"}
@@ -0,0 +1,93 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ const COMMON_DECKGL_PROPS = {
5
+ getOffset: 'offset',
6
+ opacity: 'opacity'
7
+ };
8
+ export const GRAPH_DECKGL_ACCESSOR_MAP = {
9
+ circle: {
10
+ ...COMMON_DECKGL_PROPS,
11
+ getFillColor: 'fill',
12
+ getLineColor: 'stroke',
13
+ getLineWidth: 'strokeWidth',
14
+ getRadius: 'radius'
15
+ },
16
+ rectangle: {
17
+ ...COMMON_DECKGL_PROPS,
18
+ getWidth: 'width',
19
+ getHeight: 'height',
20
+ getFillColor: 'fill',
21
+ getLineColor: 'stroke',
22
+ getLineWidth: 'strokeWidth'
23
+ },
24
+ 'rounded-rectangle': {
25
+ ...COMMON_DECKGL_PROPS,
26
+ getCornerRadius: 'cornerRadius',
27
+ getRadius: 'radius',
28
+ getWidth: 'width',
29
+ getHeight: 'height',
30
+ getFillColor: 'fill',
31
+ getLineColor: 'stroke',
32
+ getLineWidth: 'strokeWidth'
33
+ },
34
+ 'path-rounded-rectangle': {
35
+ ...COMMON_DECKGL_PROPS,
36
+ getWidth: 'width',
37
+ getHeight: 'height',
38
+ getFillColor: 'fill',
39
+ getLineColor: 'stroke',
40
+ getLineWidth: 'strokeWidth',
41
+ getCornerRadius: 'cornerRadius'
42
+ },
43
+ label: {
44
+ ...COMMON_DECKGL_PROPS,
45
+ getColor: 'color',
46
+ getText: 'text',
47
+ getSize: 'fontSize',
48
+ getTextAnchor: 'textAnchor',
49
+ getAlignmentBaseline: 'alignmentBaseline',
50
+ getAngle: 'angle',
51
+ scaleWithZoom: 'scaleWithZoom',
52
+ textMaxWidth: 'textMaxWidth',
53
+ textWordBreak: 'textWordBreak',
54
+ textSizeMinPixels: 'textSizeMinPixels'
55
+ },
56
+ marker: {
57
+ ...COMMON_DECKGL_PROPS,
58
+ getColor: 'fill',
59
+ getSize: 'size',
60
+ getMarker: 'marker',
61
+ scaleWithZoom: 'scaleWithZoom'
62
+ },
63
+ Edge: {
64
+ getColor: 'stroke',
65
+ getWidth: 'strokeWidth'
66
+ },
67
+ edge: {
68
+ getColor: 'stroke',
69
+ getWidth: 'strokeWidth'
70
+ },
71
+ 'edge-label': {
72
+ getColor: 'color',
73
+ getText: 'text',
74
+ getSize: 'fontSize',
75
+ getTextAnchor: 'textAnchor',
76
+ getAlignmentBaseline: 'alignmentBaseline',
77
+ scaleWithZoom: 'scaleWithZoom',
78
+ textMaxWidth: 'textMaxWidth',
79
+ textWordBreak: 'textWordBreak',
80
+ textSizeMinPixels: 'textSizeMinPixels'
81
+ },
82
+ flow: {
83
+ getColor: 'color',
84
+ getWidth: 'width',
85
+ getSpeed: 'speed',
86
+ getTailLength: 'tailLength'
87
+ },
88
+ arrow: {
89
+ getColor: 'color',
90
+ getSize: 'size',
91
+ getOffset: 'offset'
92
+ }
93
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-style-accessor-map.js","sourceRoot":"","sources":["../../src/style/graph-style-accessor-map.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AAEpC,MAAM,mBAAmB,GAAG;IAC1B,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,SAAS;CACV,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE;QACN,GAAG,mBAAmB;QACtB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,aAAa;QAC3B,SAAS,EAAE,QAAQ;KACpB;IAED,SAAS,EAAE;QACT,GAAG,mBAAmB;QACtB,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,aAAa;KAC5B;IAED,mBAAmB,EAAE;QACnB,GAAG,mBAAmB;QACtB,eAAe,EAAE,cAAc;QAC/B,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,aAAa;KAC5B;IAED,wBAAwB,EAAE;QACxB,GAAG,mBAAmB;QACtB,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,aAAa;QAC3B,eAAe,EAAE,cAAc;KAChC;IAED,KAAK,EAAE;QACL,GAAG,mBAAmB;QACtB,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,UAAU;QACnB,aAAa,EAAE,YAAY;QAC3B,oBAAoB,EAAE,mBAAmB;QACzC,QAAQ,EAAE,OAAO;QACjB,aAAa,EAAE,eAAe;QAC9B,YAAY,EAAE,cAAc;QAC5B,aAAa,EAAE,eAAe;QAC9B,iBAAiB,EAAE,mBAAmB;KACvC;IAED,MAAM,EAAE;QACN,GAAG,mBAAmB;QACtB,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,QAAQ;QACnB,aAAa,EAAE,eAAe;KAC/B;IAED,IAAI,EAAE;QACJ,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,aAAa;KACxB;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,aAAa;KACxB;IACD,YAAY,EAAE;QACZ,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,UAAU;QACnB,aAAa,EAAE,YAAY;QAC3B,oBAAoB,EAAE,mBAAmB;QACzC,aAAa,EAAE,eAAe;QAC9B,YAAY,EAAE,cAAc;QAC5B,aAAa,EAAE,eAAe;QAC9B,iBAAiB,EAAE,mBAAmB;KACvC;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,OAAO;QACjB,aAAa,EAAE,YAAY;KAC5B;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,QAAQ;KACpB;CACO,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { StyleEngine } from './style-engine';
2
+ import { type GraphStylesheet } from './graph-stylesheet.schema';
3
+ export declare class GraphStyleEngine extends StyleEngine {
4
+ constructor(style: GraphStylesheet, { stateUpdateTrigger }?: {
5
+ stateUpdateTrigger?: unknown;
6
+ });
7
+ }
8
+ export { GraphStyleScaleTypeEnum, GraphStyleScaleSchema, GraphStyleAttributeReferenceSchema, GraphStyleLeafValueSchema, GraphStyleStateMapSchema, GraphStyleValueSchema, GraphStylesheetSchema } from './graph-stylesheet.schema';
9
+ export type { GraphStylesheet, GraphStylesheetInput, GraphStylesheetParsed, GraphStyleSelector, GraphStyleType, GraphStyleAttributeReference, GraphStyleLeafValue, GraphStyleScale, GraphStyleScaleType, GraphStyleValue } from './graph-stylesheet.schema';
10
+ export { GRAPH_DECKGL_ACCESSOR_MAP } from './graph-style-accessor-map';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-style-engine.d.ts","sourceRoot":"","sources":["../../src/style/graph-style-engine.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,WAAW,EAA4B,0BAAuB;AACtE,OAAO,EAEL,KAAK,eAAe,EAErB,MAAM,2BAA2B,CAAC;AA4BnC,qBAAa,gBAAiB,SAAQ,WAAW;gBACnC,KAAK,EAAE,eAAe,EAAE,EAAC,kBAAkB,EAAC,GAAE;QAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAM;CAY9F;AAED,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,kCAAkC,EAClC,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,4BAA4B,EAC5B,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,eAAe,EAChB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAC,yBAAyB,EAAC,sCAAmC"}
@@ -0,0 +1,163 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /* eslint-disable no-continue */
5
+ import { ZodError } from 'zod';
6
+ import { StyleEngine } from './style-engine';
7
+ import { GraphStylesheetSchema } from './graph-stylesheet.schema';
8
+ import { GRAPH_DECKGL_ACCESSOR_MAP } from './graph-style-accessor-map';
9
+ import { warn } from '../utils/log';
10
+ const GRAPH_DECKGL_UPDATE_TRIGGERS = {
11
+ circle: ['getFillColor', 'getRadius', 'getLineColor', 'getLineWidth'],
12
+ rectangle: ['getFillColor', 'getLineColor', 'getLineWidth'],
13
+ 'rounded-rectangle': ['getFillColor', 'getLineColor', 'getLineWidth', 'getCornerRadius'],
14
+ 'path-rounded-rectangle': ['getFillColor', 'getLineColor', 'getLineWidth', 'getCornerRadius'],
15
+ label: ['getColor', 'getText', 'getSize', 'getTextAnchor', 'getAlignmentBaseline', 'getAngle'],
16
+ marker: ['getColor', 'getSize', 'getMarker'],
17
+ Edge: ['getColor', 'getWidth'],
18
+ edge: ['getColor', 'getWidth'],
19
+ 'edge-label': ['getColor', 'getText', 'getSize', 'getTextAnchor', 'getAlignmentBaseline'],
20
+ flow: ['getColor', 'getWidth', 'getSpeed', 'getTailLength'],
21
+ arrow: ['getColor', 'getSize', 'getOffset']
22
+ };
23
+ function formatStylesheetError(error) {
24
+ const details = error.issues
25
+ .map((issue) => {
26
+ const path = issue.path.length ? issue.path.join('.') : 'root';
27
+ return ` • ${path}: ${issue.message}`;
28
+ })
29
+ .join('\n');
30
+ return `Invalid graph stylesheet:\n${details}`;
31
+ }
32
+ export class GraphStyleEngine extends StyleEngine {
33
+ constructor(style, { stateUpdateTrigger } = {}) {
34
+ const result = GraphStylesheetSchema.safeParse(style);
35
+ const parsedStyle = result.success
36
+ ? result.data
37
+ : sanitizeStylesheet(style, result.error.issues);
38
+ super(parsedStyle, {
39
+ deckglAccessorMap: GRAPH_DECKGL_ACCESSOR_MAP,
40
+ deckglUpdateTriggers: GRAPH_DECKGL_UPDATE_TRIGGERS,
41
+ stateUpdateTrigger
42
+ });
43
+ }
44
+ }
45
+ export { GraphStyleScaleTypeEnum, GraphStyleScaleSchema, GraphStyleAttributeReferenceSchema, GraphStyleLeafValueSchema, GraphStyleStateMapSchema, GraphStyleValueSchema, GraphStylesheetSchema } from './graph-stylesheet.schema';
46
+ export { GRAPH_DECKGL_ACCESSOR_MAP } from './graph-style-accessor-map';
47
+ // eslint-disable-next-line max-statements, complexity
48
+ function sanitizeStylesheet(style, issues) {
49
+ if (issues.length) {
50
+ const details = issues
51
+ .map((issue) => {
52
+ const path = issue.path.length ? issue.path.join('.') : 'root';
53
+ return `${path}: ${issue.message}`;
54
+ })
55
+ .join('\n • ');
56
+ warn(`GraphStyleEngine: stylesheet issues detected:\n • ${details}`);
57
+ }
58
+ const fallbackTypeCandidate = typeof style.type === 'string' ? style.type : undefined;
59
+ const fallbackCandidates = Array.from(new Set([fallbackTypeCandidate, 'edge'].filter((value) => typeof value === 'string' && value.length > 0)));
60
+ for (const candidate of fallbackCandidates) {
61
+ const sanitized = cloneValue(style);
62
+ sanitized.type = candidate;
63
+ for (const issue of issues) {
64
+ if (!Array.isArray(issue.path) || issue.path.length === 0) {
65
+ continue;
66
+ }
67
+ const path = issue.path.filter((segment) => typeof segment === 'string' || typeof segment === 'number');
68
+ if (path.length === 0) {
69
+ continue;
70
+ }
71
+ const [rootKey] = path;
72
+ if (rootKey === undefined || rootKey === 'type') {
73
+ continue;
74
+ }
75
+ if (typeof rootKey === 'string' && rootKey.startsWith(':')) {
76
+ removeNestedProperty(sanitized, path);
77
+ continue;
78
+ }
79
+ if (typeof rootKey !== 'string') {
80
+ continue;
81
+ }
82
+ delete sanitized[rootKey];
83
+ }
84
+ const result = GraphStylesheetSchema.safeParse(sanitized);
85
+ if (result.success) {
86
+ return result.data;
87
+ }
88
+ }
89
+ // If every fallback failed, rethrow the detailed error so callers know parsing was impossible.
90
+ throw new Error(formatStylesheetError(new ZodError(issues)));
91
+ }
92
+ function cloneValue(value) {
93
+ if (Array.isArray(value)) {
94
+ return value.map((item) => cloneValue(item));
95
+ }
96
+ if (value && typeof value === 'object') {
97
+ if (value instanceof Date) {
98
+ return new Date(value);
99
+ }
100
+ if (value instanceof RegExp) {
101
+ return new RegExp(value.source, value.flags);
102
+ }
103
+ const cloned = {};
104
+ for (const [key, entryValue] of Object.entries(value)) {
105
+ cloned[key] = cloneValue(entryValue);
106
+ }
107
+ return cloned;
108
+ }
109
+ return value;
110
+ }
111
+ // eslint-disable-next-line max-statements, complexity
112
+ function removeNestedProperty(target, path) {
113
+ if (path.length === 0) {
114
+ return;
115
+ }
116
+ const [head, ...rest] = path;
117
+ if (head === undefined) {
118
+ return;
119
+ }
120
+ if (Array.isArray(target)) {
121
+ const index = typeof head === 'number' ? head : Number(head);
122
+ if (!Number.isInteger(index) || index < 0 || index >= target.length) {
123
+ return;
124
+ }
125
+ if (rest.length === 0) {
126
+ target.splice(index, 1);
127
+ return;
128
+ }
129
+ const child = target[index];
130
+ if (!child || typeof child !== 'object') {
131
+ target.splice(index, 1);
132
+ return;
133
+ }
134
+ removeNestedProperty(child, rest);
135
+ if (isEmptyObject(child)) {
136
+ target.splice(index, 1);
137
+ }
138
+ return;
139
+ }
140
+ const recordTarget = target;
141
+ if (rest.length === 0) {
142
+ delete recordTarget[head];
143
+ return;
144
+ }
145
+ const child = recordTarget[head];
146
+ if (!child || typeof child !== 'object') {
147
+ delete recordTarget[head];
148
+ return;
149
+ }
150
+ removeNestedProperty(child, rest);
151
+ if (isEmptyObject(child)) {
152
+ delete recordTarget[head];
153
+ }
154
+ }
155
+ function isEmptyObject(value) {
156
+ if (Array.isArray(value)) {
157
+ return value.length === 0;
158
+ }
159
+ if (!value || typeof value !== 'object') {
160
+ return false;
161
+ }
162
+ return Object.keys(value).length === 0;
163
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-style-engine.js","sourceRoot":"","sources":["../../src/style/graph-style-engine.ts"],"names":[],"mappings":"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"}