@neo4j-ndl/react-graph 2.1.23 → 2.2.5

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 (132) hide show
  1. package/lib/cjs/_generated/style-rules/color-utils.js.map +1 -1
  2. package/lib/cjs/_generated/style-rules/date-utils.js +1 -1
  3. package/lib/cjs/_generated/style-rules/date-utils.js.map +1 -1
  4. package/lib/cjs/_generated/style-rules/index.js +1 -1
  5. package/lib/cjs/_generated/style-rules/index.js.map +1 -1
  6. package/lib/cjs/_generated/style-rules/literal-schemas.js +1 -1
  7. package/lib/cjs/_generated/style-rules/literal-schemas.js.map +1 -1
  8. package/lib/cjs/_generated/style-rules/numeric-utils.js.map +1 -1
  9. package/lib/cjs/_generated/style-rules/range-utils.js +1 -1
  10. package/lib/cjs/_generated/style-rules/range-utils.js.map +1 -1
  11. package/lib/cjs/graph-visualization-buttons.js +1 -1
  12. package/lib/cjs/graph-visualization-buttons.js.map +1 -1
  13. package/lib/cjs/graph-visualization-context.js +1 -1
  14. package/lib/cjs/graph-visualization-context.js.map +1 -1
  15. package/lib/cjs/graph-visualization-sidepanel.js +1 -1
  16. package/lib/cjs/graph-visualization-sidepanel.js.map +1 -1
  17. package/lib/cjs/graph-visualization.js +1 -1
  18. package/lib/cjs/graph-visualization.js.map +1 -1
  19. package/lib/cjs/index.js +1 -1
  20. package/lib/cjs/index.js.map +1 -1
  21. package/lib/cjs/sidepanel-components/button-group.js +1 -1
  22. package/lib/cjs/sidepanel-components/button-group.js.map +1 -1
  23. package/lib/cjs/sidepanel-components/clickable-urls.js +1 -1
  24. package/lib/cjs/sidepanel-components/clickable-urls.js.map +1 -1
  25. package/lib/cjs/sidepanel-components/details-panel.js +1 -1
  26. package/lib/cjs/sidepanel-components/details-panel.js.map +1 -1
  27. package/lib/cjs/sidepanel-components/graph-label-wrapper.js +1 -1
  28. package/lib/cjs/sidepanel-components/graph-label-wrapper.js.map +1 -1
  29. package/lib/cjs/sidepanel-components/overview-panel.js +1 -1
  30. package/lib/cjs/sidepanel-components/overview-panel.js.map +1 -1
  31. package/lib/cjs/sidepanel-components/properties-table.js +1 -1
  32. package/lib/cjs/sidepanel-components/properties-table.js.map +1 -1
  33. package/lib/cjs/sidepanel-components/show-all.js +1 -1
  34. package/lib/cjs/sidepanel-components/show-all.js.map +1 -1
  35. package/lib/cjs/sidepanel-components/single-selection-sidepanel-contents.js +1 -1
  36. package/lib/cjs/sidepanel-components/single-selection-sidepanel-contents.js.map +1 -1
  37. package/lib/cjs/styling/compile-graph-styles.js +134 -61
  38. package/lib/cjs/styling/compile-graph-styles.js.map +1 -1
  39. package/lib/cjs/styling/create-vis-data-structures.js +16 -9
  40. package/lib/cjs/styling/create-vis-data-structures.js.map +1 -1
  41. package/lib/cjs/styling/parse-style-rules.js +1 -1
  42. package/lib/cjs/styling/parse-style-rules.js.map +1 -1
  43. package/lib/cjs/styling/style-types.js +30 -30
  44. package/lib/cjs/styling/style-types.js.map +1 -1
  45. package/lib/cjs/styling/use-graph-data.js +1 -1
  46. package/lib/cjs/styling/use-graph-data.js.map +1 -1
  47. package/lib/cjs/use-managed-node-state.js +1 -1
  48. package/lib/cjs/use-managed-node-state.js.map +1 -1
  49. package/lib/cjs/use-semi-controlled-state.js +1 -1
  50. package/lib/cjs/use-semi-controlled-state.js.map +1 -1
  51. package/lib/cjs/utils.js +1 -1
  52. package/lib/cjs/utils.js.map +1 -1
  53. package/lib/esm/_generated/style-rules/color-utils.js.map +1 -1
  54. package/lib/esm/_generated/style-rules/date-utils.js +1 -1
  55. package/lib/esm/_generated/style-rules/date-utils.js.map +1 -1
  56. package/lib/esm/_generated/style-rules/index.js +1 -1
  57. package/lib/esm/_generated/style-rules/index.js.map +1 -1
  58. package/lib/esm/_generated/style-rules/literal-schemas.js +1 -1
  59. package/lib/esm/_generated/style-rules/literal-schemas.js.map +1 -1
  60. package/lib/esm/_generated/style-rules/numeric-utils.js.map +1 -1
  61. package/lib/esm/_generated/style-rules/range-utils.js +1 -1
  62. package/lib/esm/_generated/style-rules/range-utils.js.map +1 -1
  63. package/lib/esm/graph-visualization-buttons.js +1 -1
  64. package/lib/esm/graph-visualization-buttons.js.map +1 -1
  65. package/lib/esm/graph-visualization-context.js +1 -1
  66. package/lib/esm/graph-visualization-context.js.map +1 -1
  67. package/lib/esm/graph-visualization-sidepanel.js +1 -1
  68. package/lib/esm/graph-visualization-sidepanel.js.map +1 -1
  69. package/lib/esm/graph-visualization.js +1 -1
  70. package/lib/esm/graph-visualization.js.map +1 -1
  71. package/lib/esm/index.js +1 -1
  72. package/lib/esm/index.js.map +1 -1
  73. package/lib/esm/sidepanel-components/button-group.js +1 -1
  74. package/lib/esm/sidepanel-components/button-group.js.map +1 -1
  75. package/lib/esm/sidepanel-components/clickable-urls.js +1 -1
  76. package/lib/esm/sidepanel-components/clickable-urls.js.map +1 -1
  77. package/lib/esm/sidepanel-components/details-panel.js +1 -1
  78. package/lib/esm/sidepanel-components/details-panel.js.map +1 -1
  79. package/lib/esm/sidepanel-components/graph-label-wrapper.js +1 -1
  80. package/lib/esm/sidepanel-components/graph-label-wrapper.js.map +1 -1
  81. package/lib/esm/sidepanel-components/overview-panel.js +1 -1
  82. package/lib/esm/sidepanel-components/overview-panel.js.map +1 -1
  83. package/lib/esm/sidepanel-components/properties-table.js +1 -1
  84. package/lib/esm/sidepanel-components/properties-table.js.map +1 -1
  85. package/lib/esm/sidepanel-components/show-all.js +1 -1
  86. package/lib/esm/sidepanel-components/show-all.js.map +1 -1
  87. package/lib/esm/sidepanel-components/single-selection-sidepanel-contents.js +1 -1
  88. package/lib/esm/sidepanel-components/single-selection-sidepanel-contents.js.map +1 -1
  89. package/lib/esm/styling/compile-graph-styles.js +132 -61
  90. package/lib/esm/styling/compile-graph-styles.js.map +1 -1
  91. package/lib/esm/styling/create-vis-data-structures.js +16 -9
  92. package/lib/esm/styling/create-vis-data-structures.js.map +1 -1
  93. package/lib/esm/styling/parse-style-rules.js +1 -1
  94. package/lib/esm/styling/parse-style-rules.js.map +1 -1
  95. package/lib/esm/styling/style-types.js +30 -30
  96. package/lib/esm/styling/style-types.js.map +1 -1
  97. package/lib/esm/styling/use-graph-data.js +1 -1
  98. package/lib/esm/styling/use-graph-data.js.map +1 -1
  99. package/lib/esm/use-managed-node-state.js +1 -1
  100. package/lib/esm/use-managed-node-state.js.map +1 -1
  101. package/lib/esm/use-semi-controlled-state.js +1 -1
  102. package/lib/esm/use-semi-controlled-state.js.map +1 -1
  103. package/lib/esm/utils.js +1 -1
  104. package/lib/esm/utils.js.map +1 -1
  105. package/lib/types/_generated/style-rules/color-utils.d.ts +1 -1
  106. package/lib/types/_generated/style-rules/index.d.ts +1 -1
  107. package/lib/types/_generated/style-rules/literal-schemas.d.ts +1 -1
  108. package/lib/types/_generated/style-rules/numeric-utils.d.ts +1 -1
  109. package/lib/types/graph-visualization-buttons.d.ts +1 -1
  110. package/lib/types/graph-visualization-context.d.ts +1 -1
  111. package/lib/types/graph-visualization-sidepanel.d.ts +1 -1
  112. package/lib/types/graph-visualization.d.ts +1 -1
  113. package/lib/types/index.d.ts +1 -1
  114. package/lib/types/sidepanel-components/button-group.d.ts +1 -1
  115. package/lib/types/sidepanel-components/clickable-urls.d.ts +1 -1
  116. package/lib/types/sidepanel-components/details-panel.d.ts +1 -1
  117. package/lib/types/sidepanel-components/graph-label-wrapper.d.ts +1 -1
  118. package/lib/types/sidepanel-components/overview-panel.d.ts +1 -1
  119. package/lib/types/sidepanel-components/properties-table.d.ts +1 -1
  120. package/lib/types/sidepanel-components/show-all.d.ts +1 -1
  121. package/lib/types/sidepanel-components/single-selection-sidepanel-contents.d.ts +1 -1
  122. package/lib/types/styling/compile-graph-styles.d.ts +29 -2
  123. package/lib/types/styling/compile-graph-styles.d.ts.map +1 -1
  124. package/lib/types/styling/create-vis-data-structures.d.ts +2 -2
  125. package/lib/types/styling/create-vis-data-structures.d.ts.map +1 -1
  126. package/lib/types/styling/parse-style-rules.d.ts +1 -1
  127. package/lib/types/styling/style-types.d.ts +121 -121
  128. package/lib/types/styling/use-graph-data.d.ts +1 -1
  129. package/lib/types/use-managed-node-state.d.ts +1 -1
  130. package/lib/types/use-semi-controlled-state.d.ts +1 -1
  131. package/lib/types/utils.d.ts +1 -1
  132. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n *\n * Copyright (c) \"Neo4j\"\n * Neo4j Sweden AB [http://neo4j.com]\n *\n * This file is part of Neo4j.\n *\n * Neo4j is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nimport { type NvlGraph } from './graph-visualization-context';\n\nexport const isMac = navigator.userAgent.includes('Mac');\n\nconst uniq = (arr: string[]) => [...new Set(arr)];\n\nexport const xor = (firstArray: string[], secondArray: string[]) =>\n uniq(\n [...firstArray, ...secondArray].filter(\n (id) => !firstArray.includes(id) || !secondArray.includes(id),\n ),\n );\n\nexport const mapValues = <T, R>(\n obj: Record<string, T>,\n fn: (value: T) => R,\n): Record<string, R> =>\n Object.fromEntries(\n Object.entries(obj).map(([key, value]) => [key, fn(value)]),\n );\n\nexport const searchProperties = (\n properties: Record<string, { stringified: string }>,\n text: string,\n): boolean => {\n for (const [propName, propValue] of Object.entries(properties)) {\n const isNameMatch = propName.toLowerCase().includes(text);\n const raw = propValue?.stringified ?? '';\n const isValueMatch = raw.toLowerCase().includes(text);\n\n if (isNameMatch || isValueMatch) {\n return true;\n }\n }\n\n return false;\n};\n\nexport const searchNodes = (graph: NvlGraph, text: string): string[] => {\n const searchText = text.toLowerCase();\n\n return graph.nodes\n .filter((node) => {\n const data = graph.nodeData[node.id];\n if (data === undefined) {\n return false;\n }\n\n if (\n data.labelsSorted?.some((label) =>\n label.toLowerCase().includes(searchText),\n )\n ) {\n return true;\n }\n\n return searchProperties(data.properties, searchText);\n })\n .map((node) => node.id);\n};\n\nexport const searchRels = (graph: NvlGraph, text: string): string[] => {\n const searchText = text.toLowerCase();\n\n return graph.rels\n .filter((rel) => {\n const data = graph.relData[rel.id];\n if (data === undefined) {\n return false;\n }\n\n if (data.type.toLowerCase().includes(searchText)) {\n return true;\n }\n\n return searchProperties(data.properties, searchText);\n })\n .map((rel) => rel.id);\n};\n\nexport const removeLicenseHeader = (source: string): string => {\n return source.replace(/^\\/\\*[\\s\\S]*?\\*\\/\\s*/, '');\n};\n\nexport const sortAlphabetically = (first = '', second = '') =>\n first.toLowerCase().localeCompare(second.toLowerCase());\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n *\n * Copyright (c) \"Neo4j\"\n * Neo4j Sweden AB [http://neo4j.com]\n *\n * This file is part of Neo4j.\n *\n * Neo4j is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nimport { type NvlGraph } from './graph-visualization-context';\n\nexport const isMac = navigator.userAgent.includes('Mac');\n\nconst uniq = (arr: string[]) => [...new Set(arr)];\n\nexport const xor = (firstArray: string[], secondArray: string[]) =>\n uniq(\n [...firstArray, ...secondArray].filter(\n (id) => !firstArray.includes(id) || !secondArray.includes(id),\n ),\n );\n\nexport const mapValues = <T, R>(\n obj: Record<string, T>,\n fn: (value: T) => R,\n): Record<string, R> =>\n Object.fromEntries(\n Object.entries(obj).map(([key, value]) => [key, fn(value)]),\n );\n\nexport const searchProperties = (\n properties: Record<string, { stringified: string }>,\n text: string,\n): boolean => {\n for (const [propName, propValue] of Object.entries(properties)) {\n const isNameMatch = propName.toLowerCase().includes(text);\n const raw = propValue?.stringified ?? '';\n const isValueMatch = raw.toLowerCase().includes(text);\n\n if (isNameMatch || isValueMatch) {\n return true;\n }\n }\n\n return false;\n};\n\nexport const searchNodes = (graph: NvlGraph, text: string): string[] => {\n const searchText = text.toLowerCase();\n\n return graph.nodes\n .filter((node) => {\n const data = graph.nodeData[node.id];\n if (data === undefined) {\n return false;\n }\n\n if (\n data.labelsSorted?.some((label) =>\n label.toLowerCase().includes(searchText),\n )\n ) {\n return true;\n }\n\n return searchProperties(data.properties, searchText);\n })\n .map((node) => node.id);\n};\n\nexport const searchRels = (graph: NvlGraph, text: string): string[] => {\n const searchText = text.toLowerCase();\n\n return graph.rels\n .filter((rel) => {\n const data = graph.relData[rel.id];\n if (data === undefined) {\n return false;\n }\n\n if (data.type.toLowerCase().includes(searchText)) {\n return true;\n }\n\n return searchProperties(data.properties, searchText);\n })\n .map((rel) => rel.id);\n};\n\nexport const removeLicenseHeader = (source: string): string => {\n return source.replace(/^\\/\\*[\\s\\S]*?\\*\\/\\s*/, '');\n};\n\nexport const sortAlphabetically = (first = '', second = '') =>\n first.toLowerCase().localeCompare(second.toLowerCase());\n"]}
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -21,7 +21,7 @@
21
21
  import { type NodeData, type RelData } from '../graph-visualization-context';
22
22
  import { type EvaluatedNvlNodeStyle, type EvaluatedNvlRelationshipStyle, type GraphStyleRule } from './style-types';
23
23
  export declare const DEFAULT_REL_COLOR: string;
24
- export declare const UNIQUE_COLORS_PALETTE: `#${string}`[];
24
+ export declare const UNIQUE_COLORS_PALETTE: string[];
25
25
  type StyleMatchers = {
26
26
  globalLabelRules: GraphStyleRule[];
27
27
  globalReltypeRules: GraphStyleRule[];
@@ -40,11 +40,38 @@ type StyleMatchers = {
40
40
  * cascade of rules.
41
41
  */
42
42
  export declare function doesGraphStyleRuleMatch(item: NodeData | RelData, rule: GraphStyleRule): boolean;
43
+ /**
44
+ * The caption to fall back to when no rule sets caption text: the node's highest-priority property
45
+ * by {@link captionPriorityOrder}, else its first label, else its id.
46
+ *
47
+ */
48
+ export declare function getDefaultNodeCaptions(node: NodeData): NonNullable<EvaluatedNvlNodeStyle['captions']>;
49
+ /**
50
+ * The color to fall back to when no rule sets one: derived from the node's highest-precedence
51
+ * label, or a neutral color when it has no labels.
52
+ */
53
+ export declare function getDefaultNodeColor(node: NodeData): string;
43
54
  export type CompiledGraphStyleRules = {
55
+ /** Evaluates one relationship type's style function; reuse it across rels of that type. */
44
56
  byType: (type: string) => (rel: RelData) => EvaluatedNvlRelationshipStyle;
57
+ /**
58
+ * The rules bucketed by label and reltype. Pair with {@link doesGraphStyleRuleMatch} when you
59
+ * need the matching rules rather than the resulting style — e.g. to check whether any rule
60
+ * targets an item.
61
+ */
45
62
  styleMatchers: StyleMatchers;
63
+ /** Evaluates a node's style from its `labelsSorted`. */
46
64
  byLabelSet: (node: NodeData) => EvaluatedNvlNodeStyle;
47
65
  };
66
+ /**
67
+ * Compiles style rules into the functions used to evaluate a graph item's style.
68
+ *
69
+ * Rules cascade by ascending `priority`, so a higher-priority rule wins. A disabled rule — or a
70
+ * disabled property within one — contributes nothing, leaving the next rule down to apply.
71
+ *
72
+ * An evaluated style contains only the properties a matching rule set; nothing is defaulted. Supply
73
+ * defaults as lowest-priority rules, or apply your own when reading the result.
74
+ */
48
75
  export declare function compileGraphStyleRules(styleRules: GraphStyleRule[] | null | undefined): CompiledGraphStyleRules;
49
76
  export {};
50
77
  //# sourceMappingURL=compile-graph-styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compile-graph-styles.d.ts","sourceRoot":"","sources":["../../../src/styling/compile-graph-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAoBH,OAAO,EACL,KAAK,QAAQ,EAEb,KAAK,OAAO,EACb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,6BAA6B,EAClC,KAAK,cAAc,EAMpB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,iBAAiB,QAA+B,CAAC;AAG9D,eAAO,MAAM,qBAAqB,gBAEjC,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,kBAAkB,EAAE,cAAc,EAAE,CAAC;IACrC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IAC5C,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;CAC5C,CAAC;AAsdF;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,QAAQ,GAAG,OAAO,EACxB,IAAI,EAAE,cAAc,GACnB,OAAO,CA2BT;AAkYD,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,KAAK,6BAA6B,CAAC;IAC1E,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,qBAAqB,CAAC;CACvD,CAAC;AAkFF,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,GAAG,SAAS,GAC9C,uBAAuB,CA6BzB"}
1
+ {"version":3,"file":"compile-graph-styles.d.ts","sourceRoot":"","sources":["../../../src/styling/compile-graph-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAoBH,OAAO,EACL,KAAK,QAAQ,EAEb,KAAK,OAAO,EACb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,6BAA6B,EAClC,KAAK,cAAc,EAMpB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,iBAAiB,QAA+B,CAAC;AAmC9D,eAAO,MAAM,qBAAqB,UAKjC,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,kBAAkB,EAAE,cAAc,EAAE,CAAC;IACrC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IAC5C,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;CAC5C,CAAC;AAsdF;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,QAAQ,GAAG,OAAO,EACxB,IAAI,EAAE,cAAc,GACnB,OAAO,CA2BT;AAqWD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,QAAQ,GACb,WAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAEhD;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAY1D;AAuED,MAAM,MAAM,uBAAuB,GAAG;IACpC,2FAA2F;IAC3F,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,KAAK,6BAA6B,CAAC;IAC1E;;;;OAIG;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B,wDAAwD;IACxD,UAAU,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,qBAAqB,CAAC;CACvD,CAAC;AA0DF;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,GAAG,SAAS,GAC9C,uBAAuB,CAgCzB"}
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]
@@ -19,7 +19,7 @@
19
19
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
20
20
  */
21
21
  import type { MetadataLookupTable, NeoNode, NeoRel, NvlGraph } from '../graph-visualization-context';
22
- import type { CompiledGraphStyleRules } from './compile-graph-styles';
22
+ import { type CompiledGraphStyleRules } from './compile-graph-styles';
23
23
  export declare const NO_LABEL = "(no label)";
24
24
  export declare function createVisualizationDataStructures(rawNodes: NeoNode[], rawRels: NeoRel[], compiledStyleRules: CompiledGraphStyleRules): {
25
25
  styledGraph: NvlGraph;
@@ -1 +1 @@
1
- {"version":3,"file":"create-vis-data-structures.d.ts","sourceRoot":"","sources":["../../../src/styling/create-vis-data-structures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAGV,mBAAmB,EACnB,OAAO,EACP,MAAM,EAEN,QAAQ,EAET,MAAM,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAMtE,eAAO,MAAM,QAAQ,eAAe,CAAC;AAUrC,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,kBAAkB,EAAE,uBAAuB,GAC1C;IACD,WAAW,EAAE,QAAQ,CAAC;IACtB,cAAc,EAAE,mBAAmB,CAAC;CACrC,CA6HA"}
1
+ {"version":3,"file":"create-vis-data-structures.d.ts","sourceRoot":"","sources":["../../../src/styling/create-vis-data-structures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAGV,mBAAmB,EACnB,OAAO,EACP,MAAM,EAEN,QAAQ,EAET,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,KAAK,uBAAuB,EAI7B,MAAM,wBAAwB,CAAC;AAMhC,eAAO,MAAM,QAAQ,eAAe,CAAC;AAUrC,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,kBAAkB,EAAE,uBAAuB,GAC1C;IACD,WAAW,EAAE,QAAQ,CAAC;IACtB,cAAc,EAAE,mBAAmB,CAAC;CACrC,CAqIA"}
@@ -1,4 +1,4 @@
1
- /**
1
+ /*!
2
2
  *
3
3
  * Copyright (c) "Neo4j"
4
4
  * Neo4j Sweden AB [http://neo4j.com]