@macrostrat/feedback-components 1.1.2 → 1.1.4

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 (76) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/esm/{feedback-components.95dbe7d7.js → feedback-components.00434ff7.js} +10 -1
  3. package/dist/esm/feedback-components.00434ff7.js.map +1 -0
  4. package/dist/esm/{feedback-components.46a7a347.js → feedback-components.1c15f37f.js} +101 -12
  5. package/dist/esm/feedback-components.1c15f37f.js.map +1 -0
  6. package/dist/esm/{feedback-components.586103e8.js → feedback-components.204f7d2b.js} +27 -276
  7. package/dist/esm/feedback-components.204f7d2b.js.map +1 -0
  8. package/dist/esm/{feedback-components.3b3a5357.js → feedback-components.28ba71be.js} +19 -8
  9. package/dist/esm/feedback-components.28ba71be.js.map +1 -0
  10. package/dist/esm/{feedback-components.5df2a926.js → feedback-components.707e3490.js} +5 -7
  11. package/dist/esm/feedback-components.707e3490.js.map +1 -0
  12. package/dist/esm/feedback-components.7e879290.js +286 -0
  13. package/dist/esm/feedback-components.7e879290.js.map +1 -0
  14. package/dist/esm/{feedback-components.5509fab3.js → feedback-components.d55a1d18.js} +6 -6
  15. package/dist/esm/{feedback-components.5509fab3.js.map → feedback-components.d55a1d18.js.map} +1 -1
  16. package/dist/esm/{feedback-components.fb60c70d.css → feedback-components.d591ffec.css} +20 -1
  17. package/dist/esm/feedback-components.d591ffec.css.map +1 -0
  18. package/dist/esm/{feedback-components.fa1d3641.js → feedback-components.f6605b83.js} +49 -7
  19. package/dist/esm/feedback-components.f6605b83.js.map +1 -0
  20. package/dist/esm/feedback-components.fd8ac9ca.js +230 -0
  21. package/dist/esm/feedback-components.fd8ac9ca.js.map +1 -0
  22. package/dist/esm/index.d.ts +5 -2
  23. package/dist/esm/index.d.ts.map +1 -1
  24. package/dist/esm/index.js +2 -2
  25. package/dist/node/feedback-components.0eef8d0c.js +2 -0
  26. package/dist/node/feedback-components.0eef8d0c.js.map +1 -0
  27. package/dist/node/{feedback-components.a39f7653.js → feedback-components.2f740fc7.js} +2 -2
  28. package/dist/node/{feedback-components.a39f7653.js.map → feedback-components.2f740fc7.js.map} +1 -1
  29. package/dist/node/feedback-components.41db283a.js +2 -0
  30. package/dist/node/feedback-components.41db283a.js.map +1 -0
  31. package/dist/node/feedback-components.69d0ccd0.js +2 -0
  32. package/dist/node/feedback-components.69d0ccd0.js.map +1 -0
  33. package/dist/node/feedback-components.a7b43cfa.js +2 -0
  34. package/dist/node/feedback-components.a7b43cfa.js.map +1 -0
  35. package/dist/node/feedback-components.b22d37d1.js +2 -0
  36. package/dist/node/feedback-components.b22d37d1.js.map +1 -0
  37. package/dist/node/feedback-components.b9317f9c.js +2 -0
  38. package/dist/node/feedback-components.b9317f9c.js.map +1 -0
  39. package/dist/node/{feedback-components.c88cb37f.css → feedback-components.e096504e.css} +2 -2
  40. package/dist/node/feedback-components.e096504e.css.map +1 -0
  41. package/dist/node/feedback-components.e140ac86.js +2 -0
  42. package/dist/node/feedback-components.e140ac86.js.map +1 -0
  43. package/dist/node/feedback-components.f8373b58.js +2 -0
  44. package/dist/node/feedback-components.f8373b58.js.map +1 -0
  45. package/dist/node/index.js +1 -1
  46. package/dist/node/index.js.map +1 -1
  47. package/package.json +3 -2
  48. package/src/extractions/index.ts +7 -2
  49. package/src/extractions/types.ts +1 -0
  50. package/src/feedback/edit-state.ts +52 -3
  51. package/src/feedback/feedback.module.sass +17 -1
  52. package/src/feedback/graph.ts +17 -4
  53. package/src/feedback/index.ts +14 -309
  54. package/src/feedback/matches.ts +241 -0
  55. package/src/feedback/text-visualizer.ts +114 -4
  56. package/src/feedback/typelist.ts +312 -0
  57. package/dist/esm/feedback-components.3b3a5357.js.map +0 -1
  58. package/dist/esm/feedback-components.46a7a347.js.map +0 -1
  59. package/dist/esm/feedback-components.586103e8.js.map +0 -1
  60. package/dist/esm/feedback-components.5df2a926.js.map +0 -1
  61. package/dist/esm/feedback-components.95dbe7d7.js.map +0 -1
  62. package/dist/esm/feedback-components.fa1d3641.js.map +0 -1
  63. package/dist/esm/feedback-components.fb60c70d.css.map +0 -1
  64. package/dist/node/feedback-components.561466ac.js +0 -2
  65. package/dist/node/feedback-components.561466ac.js.map +0 -1
  66. package/dist/node/feedback-components.571ee23c.js +0 -2
  67. package/dist/node/feedback-components.571ee23c.js.map +0 -1
  68. package/dist/node/feedback-components.8b03e8be.js +0 -2
  69. package/dist/node/feedback-components.8b03e8be.js.map +0 -1
  70. package/dist/node/feedback-components.b7946db4.js +0 -2
  71. package/dist/node/feedback-components.b7946db4.js.map +0 -1
  72. package/dist/node/feedback-components.c459cc27.js +0 -2
  73. package/dist/node/feedback-components.c459cc27.js.map +0 -1
  74. package/dist/node/feedback-components.c88cb37f.css.map +0 -1
  75. package/dist/node/feedback-components.ec54a1e7.js +0 -2
  76. package/dist/node/feedback-components.ec54a1e7.js.map +0 -1
@@ -132,7 +132,7 @@ function $b79bf29960412ca7$var$treeReducer(state, action) {
132
132
  };
133
133
  case "select-node":
134
134
  const { ids: ids } = action.payload;
135
- const type = action.payload.ids.length > 0 ? $b79bf29960412ca7$var$findNodeById(state.tree, ids[0])?.type : null;
135
+ const type = action.payload.ids.length > 0 ? $b79bf29960412ca7$export$e64eb58334357825(state.tree, ids[0])?.type : null;
136
136
  return {
137
137
  ...state,
138
138
  selectedNodes: ids,
@@ -142,7 +142,7 @@ function $b79bf29960412ca7$var$treeReducer(state, action) {
142
142
  case "toggle-node-selected":
143
143
  const nodesToAdd = action.payload.ids.filter((id)=>!state.selectedNodes.includes(id));
144
144
  const nodesToKeep = state.selectedNodes.filter((id)=>!action.payload.ids.includes(id));
145
- const newType = action.payload.ids.length > 0 ? $b79bf29960412ca7$var$findNodeById(state.tree, action.payload.ids[0])?.type : null;
145
+ const newType = action.payload.ids.length > 0 ? $b79bf29960412ca7$export$e64eb58334357825(state.tree, action.payload.ids[0])?.type : null;
146
146
  return {
147
147
  ...state,
148
148
  selectedNodes: [
@@ -178,7 +178,6 @@ function $b79bf29960412ca7$var$treeReducer(state, action) {
178
178
  case "delete-entity-type":
179
179
  {
180
180
  // Remove the entity type from the map
181
- console.log("Deleting entity type:", action.payload.id);
182
181
  const { id: id } = action.payload;
183
182
  const newEntityTypesMap = new Map(state.entityTypesMap);
184
183
  const oldType = newEntityTypesMap.get(id);
@@ -192,6 +191,49 @@ function $b79bf29960412ca7$var$treeReducer(state, action) {
192
191
  selectedNodes: []
193
192
  };
194
193
  }
194
+ case "add-match":
195
+ {
196
+ const { id: id } = action.payload;
197
+ // Find the node path
198
+ const keyPath = $b79bf29960412ca7$var$findNode(state.tree, id);
199
+ if (!keyPath) {
200
+ console.warn(`Node with id ${id} not found`);
201
+ return state;
202
+ }
203
+ // Build update spec to set the `match` property
204
+ const matchUpdateSpec = $b79bf29960412ca7$var$buildNestedSpec(keyPath, {
205
+ match: {
206
+ $set: action.payload.payload
207
+ }
208
+ });
209
+ const updatedTree = (0, $abOVY$immutabilityhelper)(state.tree, matchUpdateSpec);
210
+ return {
211
+ ...state,
212
+ tree: updatedTree
213
+ };
214
+ }
215
+ case "remove-match":
216
+ {
217
+ const { id: id } = action.payload;
218
+ console.log("Removing match for node with id:", id);
219
+ // Find the node path
220
+ const keyPath = $b79bf29960412ca7$var$findNode(state.tree, id);
221
+ if (!keyPath) {
222
+ console.warn(`Node with id ${id} not found`);
223
+ return state;
224
+ }
225
+ // Build update spec to unset the `match` property
226
+ const matchUpdateSpec = $b79bf29960412ca7$var$buildNestedSpec(keyPath, {
227
+ match: {
228
+ $set: null
229
+ }
230
+ });
231
+ const updatedTree = (0, $abOVY$immutabilityhelper)(state.tree, matchUpdateSpec);
232
+ return {
233
+ ...state,
234
+ tree: updatedTree
235
+ };
236
+ }
195
237
  /** Entity type selection */ case "toggle-entity-type-selector":
196
238
  return {
197
239
  ...state,
@@ -330,11 +372,11 @@ function $b79bf29960412ca7$export$8d9dbb7a64bf2a5e(tree) {
330
372
  edges: edges
331
373
  };
332
374
  }
333
- function $b79bf29960412ca7$var$findNodeById(tree, id) {
375
+ function $b79bf29960412ca7$export$e64eb58334357825(tree, id) {
334
376
  for (const node of tree){
335
377
  if (node.id === id) return node;
336
378
  if (node.children) {
337
- const found = $b79bf29960412ca7$var$findNodeById(node.children, id);
379
+ const found = $b79bf29960412ca7$export$e64eb58334357825(node.children, id);
338
380
  if (found) return found;
339
381
  }
340
382
  }
@@ -365,5 +407,5 @@ function $b79bf29960412ca7$var$flattenAndSort(nodes) {
365
407
  }
366
408
 
367
409
 
368
- export {$b79bf29960412ca7$export$53ec42062883b2d4 as ViewMode, $b79bf29960412ca7$export$911bb4b9c8065d3d as useUpdatableTree, $b79bf29960412ca7$export$e5ce04c5b3f58533 as TreeDispatchContext, $b79bf29960412ca7$export$e1068f2d1c68f87e as useTreeDispatch, $b79bf29960412ca7$export$8d9dbb7a64bf2a5e as treeToGraph};
369
- //# sourceMappingURL=feedback-components.fa1d3641.js.map
410
+ export {$b79bf29960412ca7$export$53ec42062883b2d4 as ViewMode, $b79bf29960412ca7$export$911bb4b9c8065d3d as useUpdatableTree, $b79bf29960412ca7$export$e5ce04c5b3f58533 as TreeDispatchContext, $b79bf29960412ca7$export$e1068f2d1c68f87e as useTreeDispatch, $b79bf29960412ca7$export$e64eb58334357825 as findNodeById, $b79bf29960412ca7$export$8d9dbb7a64bf2a5e as treeToGraph};
411
+ //# sourceMappingURL=feedback-components.f6605b83.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/feedback-components/src/feedback/edit-state.ts"],"sourcesContent":["import { TreeData } from \"./types\";\nimport { createContext, Dispatch, useContext, useReducer } from \"react\";\nimport update, { Spec } from \"immutability-helper\";\nimport { EntityType } from \"../extractions/types\";\n\nexport enum ViewMode {\n Tree = \"tree\",\n Graph = \"graph\",\n}\n\ninterface TreeState {\n initialTree: TreeData[];\n tree: TreeData[];\n selectedNodes: number[];\n entityTypesMap: Map<number, EntityType>;\n selectedEntityType: EntityType;\n lastInternalId: number;\n isSelectingEntityType: boolean;\n viewMode: ViewMode;\n}\n\ntype TextRange = {\n start: number;\n end: number;\n text: string;\n};\n\ntype TreeAction =\n | {\n type: \"move-node\";\n payload: { dragIds: number[]; parentId: number; index: number };\n }\n | { type: \"delete-node\"; payload: { ids: number[] } }\n | { type: \"select-node\"; payload: { ids: number[] } }\n | { type: \"toggle-node-selected\"; payload: { ids: number[] } }\n | { type: \"set-view-mode\"; payload: ViewMode }\n | { type: \"create-node\"; payload: TextRange }\n | { type: \"select-entity-type\"; payload: EntityType }\n | { type: \"toggle-entity-type-selector\"; payload?: boolean | null }\n | { type: \"deselect\" }\n | { type: \"reset\" }\n | { type: \"delete-entity-type\"; payload: { id: number } }\n | {\n type: \"add-entity-type\";\n payload: { name: string; description: string; color: string };\n }\n | {\n type: \"update-entity-type\";\n payload: { id: number; name: string; description: string; color: string };\n }\n | { type: \"select-range\"; payload: { ids: number[] } }\n | { type: \"add-match\"; payload: { id: number; payload: any } }\n | { type: \"remove-match\"; payload: { id: number } };\n\nexport type TreeDispatch = Dispatch<TreeAction>;\n\nexport function useUpdatableTree(\n initialTree: TreeData[],\n entityTypes: Map<number, EntityType>,\n): [TreeState, TreeDispatch] {\n // Get the first entity type\n // issue: grabs second entity instead of selected one\n const type = entityTypes.values().next().value;\n\n return useReducer(treeReducer, {\n initialTree,\n tree: initialTree,\n selectedNodes: [],\n entityTypesMap: entityTypes,\n selectedEntityType: type,\n lastInternalId: 0,\n isSelectingEntityType: false,\n viewMode: ViewMode.Tree,\n });\n}\n\nexport const TreeDispatchContext = createContext<TreeDispatch | null>(null);\n\nexport function useTreeDispatch() {\n const dispatch = useContext(TreeDispatchContext);\n if (dispatch == null) {\n throw new Error(\"No dispatch context available\");\n }\n return dispatch;\n}\n\nfunction treeReducer(state: TreeState, action: TreeAction) {\n switch (action.type) {\n case \"add-entity-type\": {\n // Add a new entity type to the map\n const { name, description, color } = action.payload;\n const newId = state.lastInternalId - 1;\n const newType: EntityType = {\n id: newId,\n name,\n description: description === \"\" ? null : description,\n color,\n };\n\n const newEntityTypesMap = new Map(state.entityTypesMap);\n newEntityTypesMap.set(newId, newType);\n\n return {\n ...state,\n entityTypesMap: newEntityTypesMap,\n selectedEntityType: newType,\n lastInternalId: newId,\n };\n }\n case \"update-entity-type\": {\n // Update an existing entity type in the map\n const { id, name, description, color } = action.payload;\n const newEntityTypesMap = new Map(state.entityTypesMap);\n const oldType = newEntityTypesMap.get(id);\n\n if (!oldType) {\n console.warn(`Entity type with id ${id} not found`);\n return state;\n }\n\n const updatedType: EntityType = {\n ...oldType,\n name,\n description: description === \"\" ? null : description,\n color,\n };\n\n newEntityTypesMap.set(id, updatedType);\n\n // Update the tree to reflect the new type\n const newTree = updateTreeTypes(state.tree, oldType, updatedType);\n\n return {\n ...state,\n tree: newTree,\n entityTypesMap: newEntityTypesMap,\n selectedEntityType: updatedType,\n };\n }\n case \"select-range\":\n // Select a range of nodes by their IDs\n const payloadIds = action.payload.ids;\n const node1 = payloadIds[0];\n const node2 = payloadIds[1];\n\n // make list of nodes in order\n const allNodes = flattenAndSort(state.tree);\n\n // select all nodes between node1 and node2\n const startIndex = allNodes.findIndex((node) => node.id === node1);\n const endIndex = allNodes.findIndex((node) => node.id === node2);\n\n const selectedNodes = allNodes.slice(startIndex, endIndex + 1);\n\n console.log(\"Selecting range:\", selectedNodes);\n return {\n ...state,\n selectedNodes: selectedNodes.map((node) => node.id),\n };\n\n case \"move-node\":\n // For each node in the tree, if the node is in the dragIds, remove it from the tree and collect it\n const [newTree, removedNodes] = removeNodes(\n state.tree,\n action.payload.dragIds,\n );\n\n let keyPath: (number | \"children\")[] = [];\n if (action.payload.parentId) {\n keyPath = findNode(newTree, action.payload.parentId);\n keyPath.push(\"children\");\n }\n\n // Add removed nodes to the new tree at the correct location\n let updateSpec = buildNestedSpec(keyPath, {\n $splice: [[action.payload.index, 0, ...removedNodes]],\n });\n\n return { ...state, tree: update(newTree, updateSpec) };\n case \"delete-node\":\n // For each node in the tree, if the node is in the ids, remove it from the tree\n const [newTree2, _removedNodes] = removeNodes(\n state.tree,\n action.payload.ids,\n );\n // Get children of the removed nodes\n // If children are not present elsewhere in the tree, insert them\n\n const children = _removedNodes\n .flatMap((node) => node.children ?? [])\n .filter((child) => !nodeIsInTree(newTree2, child.id));\n\n // Reset the selection\n\n return {\n ...state,\n tree: [...newTree2, ...children],\n selectedNodes: state.selectedNodes.filter(\n (id) => !action.payload.ids.includes(id),\n ),\n };\n case \"select-node\":\n const { ids } = action.payload;\n\n const type =\n action.payload.ids.length > 0\n ? findNodeById(state.tree, ids[0])?.type\n : null;\n\n return { ...state, selectedNodes: ids, selectedEntityType: type };\n // otherwise fall through to toggle-node-selected for a single ID\n case \"toggle-node-selected\":\n const nodesToAdd = action.payload.ids.filter(\n (id) => !state.selectedNodes.includes(id),\n );\n const nodesToKeep = state.selectedNodes.filter(\n (id) => !action.payload.ids.includes(id),\n );\n\n const newType =\n action.payload.ids.length > 0\n ? findNodeById(state.tree, action.payload.ids[0])?.type\n : null;\n\n return {\n ...state,\n selectedNodes: [...nodesToKeep, ...nodesToAdd],\n selectedEntityType: newType,\n };\n\n case \"create-node\":\n const newId = state.lastInternalId - 1;\n const { text, start, end } = action.payload;\n const node: TreeData = {\n id: newId,\n name: text,\n children: [],\n indices: [start, end],\n type: state.selectedEntityType,\n };\n\n return {\n ...state,\n tree: [...state.tree, node],\n selectedNodes: [newId],\n lastInternalId: newId,\n };\n\n case \"delete-entity-type\": {\n // Remove the entity type from the map\n const { id } = action.payload;\n const newEntityTypesMap = new Map(state.entityTypesMap);\n const oldType = newEntityTypesMap.get(id);\n newEntityTypesMap.delete(id);\n\n const defaultType = newEntityTypesMap.values().next().value;\n const newTree = updateTreeTypes(state.tree, oldType, defaultType);\n\n return {\n ...state,\n tree: newTree,\n entityTypesMap: newEntityTypesMap,\n selectedNodes: [],\n };\n }\n\n case \"add-match\": {\n const { id } = action.payload;\n\n // Find the node path\n const keyPath = findNode(state.tree, id);\n if (!keyPath) {\n console.warn(`Node with id ${id} not found`);\n return state;\n }\n\n // Build update spec to set the `match` property\n const matchUpdateSpec = buildNestedSpec(keyPath, {\n match: { $set: action.payload.payload },\n });\n\n const updatedTree = update(state.tree, matchUpdateSpec);\n\n return {\n ...state,\n tree: updatedTree,\n };\n }\n\n case \"remove-match\": {\n const { id } = action.payload;\n\n console.log(\"Removing match for node with id:\", id);\n\n // Find the node path\n const keyPath = findNode(state.tree, id);\n if (!keyPath) {\n console.warn(`Node with id ${id} not found`);\n return state;\n }\n\n // Build update spec to unset the `match` property\n const matchUpdateSpec = buildNestedSpec(keyPath, {\n match: { $set: null },\n });\n\n const updatedTree = update(state.tree, matchUpdateSpec);\n\n return {\n ...state,\n tree: updatedTree,\n };\n }\n\n /** Entity type selection */\n case \"toggle-entity-type-selector\":\n return {\n ...state,\n isSelectingEntityType: action.payload ?? !state.isSelectingEntityType,\n };\n case \"select-entity-type\": {\n // For each selected node, update the type\n let newTree2 = state.tree;\n for (let id of state.selectedNodes) {\n const keyPath = findNode(state.tree, id);\n const nestedSpec = buildNestedSpec(keyPath, {\n type: { $set: action.payload },\n });\n newTree2 = update(newTree2, nestedSpec);\n }\n\n return {\n ...state,\n tree: newTree2,\n selectedEntityType: action.payload,\n };\n }\n case \"deselect\":\n return { ...state, selectedNodes: [] };\n case \"reset\":\n return {\n ...state,\n tree: state.initialTree,\n selectedNodes: [],\n };\n case \"set-view-mode\":\n return { ...state, viewMode: action.payload };\n }\n}\n\nfunction nodeIsInTree(tree: TreeData[], id: number): boolean {\n for (let node of tree) {\n if (node.id == id) {\n return true;\n } else if (node.children) {\n if (nodeIsInTree(node.children, id)) {\n return true;\n }\n }\n }\n return false;\n}\n\nfunction buildNestedSpec(\n keyPath: (number | \"children\")[],\n innerSpec: Spec<any>,\n): Spec<TreeData[]> {\n // Build a nested object from a key path\n\n let spec = innerSpec;\n for (let i = keyPath.length - 1; i >= 0; i--) {\n spec = { [keyPath[i]]: spec };\n }\n return spec as any;\n // Since we don't have a \"children\" key at the root, we make the top-level spec an array\n}\n\nfunction findNode(\n tree: TreeData[],\n id: number,\n): (number | \"children\")[] | null {\n // Find the index of the node with the given id in the tree, returning the key path\n for (let i = 0; i < tree.length; i++) {\n if (tree[i].id == id) {\n return [i];\n } else if (tree[i].children) {\n let path = findNode(tree[i].children, id);\n if (path != null) {\n return [i, \"children\", ...path];\n }\n }\n }\n return null;\n}\n\nfunction removeNodes(\n tree: TreeData[],\n ids: number[],\n): [TreeData[], TreeData[]] {\n /** Remove nodes with the given ids from the tree and return the new tree and the removed nodes */\n let newTree: TreeData[] = [];\n let removedNodes: TreeData[] = [];\n\n for (let node of tree) {\n if (ids.includes(node.id)) {\n removedNodes.push(node);\n } else {\n // Recurse into children\n if (node.children) {\n let [newChildren, removedChildren] = removeNodes(node.children, ids);\n node = { ...node, children: newChildren };\n removedNodes.push(...removedChildren);\n }\n newTree.push(node);\n }\n }\n\n return [newTree, removedNodes];\n}\n\nexport interface EntityOutput {\n id: number;\n type: number | null;\n txt_range: number[][];\n name: string;\n match: any | null;\n reasoning: string | null;\n color: string | null;\n children: any[] | null;\n}\n\nexport interface GraphData {\n nodes: EntityOutput[];\n edges: { source: number; dest: number }[];\n}\n\nexport function treeToGraph(tree: TreeData[]): GraphData {\n // Convert the tree to a graph\n let nodes: EntityOutput[] = [];\n let edges: { source: number; dest: number }[] = [];\n const nodeMap = new Map<number, TreeData>();\n\n for (let node of tree) {\n // If we've already found an instance of this node, we don't need to record\n // it again\n if (nodeMap.has(node.id)) {\n continue;\n }\n\n const { indices, id, name, type, children } = node;\n\n const nodeData: EntityOutput = {\n id,\n type: type.id,\n color: type.color,\n name,\n txt_range: [indices],\n reasoning: null,\n match: node.match,\n children,\n };\n\n nodeMap.set(node.id, node);\n nodes.push(nodeData);\n\n if (node.children) {\n for (let child of node.children) {\n edges.push({ source: node.id, dest: child.id });\n }\n\n // Now process the children\n const { nodes: childNodes, edges: childEdges } = treeToGraph(\n node.children,\n );\n nodes.push(...childNodes);\n edges.push(...childEdges);\n }\n }\n\n return { nodes, edges };\n}\n\nexport function findNodeById(tree, id) {\n for (const node of tree) {\n if (node.id === id) {\n return node;\n }\n if (node.children) {\n const found = findNodeById(node.children, id);\n if (found) return found;\n }\n }\n return null;\n}\n\nfunction updateTreeTypes(tree, oldType, defaultType) {\n return tree.map((node) => updateNodeType(node, oldType, defaultType));\n}\n\nfunction updateNodeType(node, oldType, defaultType) {\n const type = node.type.id === oldType.id ? defaultType : node.type;\n\n return {\n ...node,\n type,\n children: node.children\n ? updateTreeTypes(node.children, oldType, defaultType)\n : [],\n };\n}\n\nfunction flattenAndSort(nodes) {\n const result = [];\n\n function traverse(nodeList) {\n for (const node of nodeList) {\n result.push(node);\n if (Array.isArray(node.children) && node.children.length > 0) {\n traverse(node.children);\n }\n }\n }\n\n traverse(nodes);\n\n // sort by start\n return result.sort((a, b) => a.indices[0] - b.indices[0]);\n}\n"],"names":[],"version":3,"file":"feedback-components.f6605b83.js.map"}
@@ -0,0 +1,230 @@
1
+ import {Match as $156a3efbc315814c$export$f421feb8fad20413} from "./feedback-components.1c15f37f.js";
2
+ import "./feedback-components.d591ffec.css";
3
+ import $1RKp1$feedbackcomponents00434ff7js from "./feedback-components.00434ff7.js";
4
+ import {Divider as $1RKp1$Divider, Switch as $1RKp1$Switch, Icon as $1RKp1$Icon, Overlay2 as $1RKp1$Overlay2} from "@blueprintjs/core";
5
+ import {Select as $1RKp1$Select} from "@blueprintjs/select";
6
+ import $1RKp1$macrostrathyper from "@macrostrat/hyper";
7
+ import {useState as $1RKp1$useState} from "react";
8
+ import {useAPIResult as $1RKp1$useAPIResult, DataField as $1RKp1$DataField, JSONView as $1RKp1$JSONView, SaveButton as $1RKp1$SaveButton} from "@macrostrat/ui-components";
9
+ import {LithologyTag as $1RKp1$LithologyTag} from "@macrostrat/data-components";
10
+
11
+
12
+ function $parcel$interopDefault(a) {
13
+ return a && a.__esModule ? a.default : a;
14
+ }
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+ const $a878a21b0c10bfdc$var$h = (0, $1RKp1$macrostrathyper).styled((0, ($parcel$interopDefault($1RKp1$feedbackcomponents00434ff7js))));
24
+ function $a878a21b0c10bfdc$export$6479cfcac2b87c0({ match: match, setMatchLinks: setMatchLinks, matchLinks: matchLinks, selectedNodes: selectedNodes, tree: tree, dispatch: dispatch }) {
25
+ const [overlayOpen, setOverlayOpen] = (0, $1RKp1$useState)(false);
26
+ let nodeMatch = null;
27
+ if (selectedNodes.length === 1) nodeMatch = $a878a21b0c10bfdc$var$findMatchingNode(tree, selectedNodes[0]);
28
+ return $a878a21b0c10bfdc$var$h.if(matchLinks)("div", [
29
+ $a878a21b0c10bfdc$var$h((0, $1RKp1$Divider)),
30
+ $a878a21b0c10bfdc$var$h((0, $1RKp1$Switch), {
31
+ label: "Show matches",
32
+ checked: match !== null,
33
+ onChange: (e)=>{
34
+ setMatchLinks(match === null ? matchLinks || {} : null);
35
+ }
36
+ }),
37
+ $a878a21b0c10bfdc$var$h.if(nodeMatch && match)((0, $156a3efbc315814c$export$f421feb8fad20413), {
38
+ data: nodeMatch?.match,
39
+ matchLinks: matchLinks,
40
+ dispatch: dispatch,
41
+ nodeId: nodeMatch?.id
42
+ }),
43
+ $a878a21b0c10bfdc$var$h.if(selectedNodes.length == 1 && !nodeMatch?.match && match)("div.add-match-container", [
44
+ $a878a21b0c10bfdc$var$h("div.add-type", {
45
+ onClick: ()=>{
46
+ setOverlayOpen(true);
47
+ }
48
+ }, [
49
+ $a878a21b0c10bfdc$var$h("p.add-match-text", "Add match"),
50
+ $a878a21b0c10bfdc$var$h((0, $1RKp1$Icon), {
51
+ icon: "plus"
52
+ })
53
+ ]),
54
+ $a878a21b0c10bfdc$var$h($a878a21b0c10bfdc$var$MatchOverlay, {
55
+ isOpen: overlayOpen,
56
+ setOverlayOpen: setOverlayOpen,
57
+ nodeMatch: nodeMatch,
58
+ dispatch: dispatch
59
+ })
60
+ ])
61
+ ]);
62
+ }
63
+ function $a878a21b0c10bfdc$var$findMatchingNode(tree, nodeId) {
64
+ let match = null;
65
+ function traverse(node) {
66
+ if (node.id === nodeId) {
67
+ match = node;
68
+ return true;
69
+ }
70
+ if (Array.isArray(node.children)) for (const child of node.children){
71
+ if (traverse(child)) return true;
72
+ }
73
+ return false;
74
+ }
75
+ tree.forEach(traverse);
76
+ return match;
77
+ }
78
+ function $a878a21b0c10bfdc$var$MatchOverlay({ isOpen: isOpen, setOverlayOpen: setOverlayOpen, nodeMatch: nodeMatch, dispatch: dispatch }) {
79
+ const [inputValue, setInputValue] = (0, $1RKp1$useState)(nodeMatch?.name || "");
80
+ const [selectedItem, setSelectedItem] = (0, $1RKp1$useState)($a878a21b0c10bfdc$var$h("div", "Select a match"));
81
+ const [disabled, setDisabled] = (0, $1RKp1$useState)(true);
82
+ const [payload, setPayload] = (0, $1RKp1$useState)({});
83
+ const data = (0, $1RKp1$useAPIResult)("https://dev.macrostrat.org/api/pg/type_lookup?name=ilike.*" + inputValue + "*");
84
+ const items = data?.map((data)=>{
85
+ const type = data.type || "";
86
+ if (type === "lith") return $a878a21b0c10bfdc$var$h("div", {
87
+ onClick: ()=>{
88
+ setPayload({
89
+ lith_id: data.id,
90
+ name: data.name
91
+ });
92
+ }
93
+ }, $a878a21b0c10bfdc$var$h((0, $1RKp1$DataField), {
94
+ className: "match-item",
95
+ label: "Lithology",
96
+ value: $a878a21b0c10bfdc$var$h((0, $1RKp1$LithologyTag), {
97
+ data: {
98
+ name: data.name,
99
+ id: data.lith_id,
100
+ color: data.color
101
+ }
102
+ })
103
+ }));
104
+ if (type === "strat_name") return $a878a21b0c10bfdc$var$h("div", {
105
+ onClick: ()=>{
106
+ setPayload({
107
+ strat_name_id: data.id,
108
+ name: data.name
109
+ });
110
+ }
111
+ }, $a878a21b0c10bfdc$var$h((0, $1RKp1$DataField), {
112
+ className: "match-item",
113
+ label: "Stratigraphic name",
114
+ value: $a878a21b0c10bfdc$var$h((0, $1RKp1$LithologyTag), {
115
+ data: {
116
+ name: data.name,
117
+ id: data.id,
118
+ color: data.color
119
+ }
120
+ })
121
+ }));
122
+ if (type === "lith_att") return $a878a21b0c10bfdc$var$h("div", {
123
+ onClick: ()=>{
124
+ setPayload({
125
+ lith_att_id: data.lith_att_id,
126
+ name: data.name
127
+ });
128
+ }
129
+ }, $a878a21b0c10bfdc$var$h((0, $1RKp1$DataField), {
130
+ className: "match-item",
131
+ label: "Lithology attribute",
132
+ value: $a878a21b0c10bfdc$var$h((0, $1RKp1$LithologyTag), {
133
+ data: {
134
+ name: data.name,
135
+ id: data.lith_att_id
136
+ }
137
+ }),
138
+ onClick: ()=>{
139
+ setPayload({
140
+ lith_att_id: data.lith_att_id,
141
+ name: data.name
142
+ });
143
+ }
144
+ }));
145
+ if (type === "interval") $a878a21b0c10bfdc$var$h("div", {
146
+ onClick: ()=>{
147
+ setPayload({
148
+ int_id: data.id,
149
+ name: data.name
150
+ });
151
+ }
152
+ }, $a878a21b0c10bfdc$var$h((0, $1RKp1$DataField), {
153
+ label: "Interval",
154
+ className: "match-item",
155
+ value: $a878a21b0c10bfdc$var$h((0, $1RKp1$LithologyTag), {
156
+ data: {
157
+ name: data.name,
158
+ id: data.id
159
+ }
160
+ }),
161
+ onClick: ()=>{
162
+ setPayload({
163
+ int_id: data.id,
164
+ name: data.name
165
+ });
166
+ }
167
+ }));
168
+ return $a878a21b0c10bfdc$var$h((0, $1RKp1$JSONView), {
169
+ data: data
170
+ });
171
+ });
172
+ return $a878a21b0c10bfdc$var$h((0, $1RKp1$Overlay2), {
173
+ isOpen: isOpen
174
+ }, $a878a21b0c10bfdc$var$h("div.overlay-container", $a878a21b0c10bfdc$var$h("div.add-type-overlay", [
175
+ $a878a21b0c10bfdc$var$h("h2.title", [
176
+ "Add match with " + nodeMatch.name,
177
+ $a878a21b0c10bfdc$var$h((0, $1RKp1$Icon), {
178
+ icon: "cross",
179
+ className: "close-icon",
180
+ onClick: ()=>{
181
+ setOverlayOpen(false);
182
+ },
183
+ style: {
184
+ cursor: "pointer",
185
+ color: "red"
186
+ }
187
+ })
188
+ ]),
189
+ $a878a21b0c10bfdc$var$h("div.form-group", [
190
+ $a878a21b0c10bfdc$var$h((0, $1RKp1$Select), {
191
+ items: items || [],
192
+ itemRenderer: (item, { handleClick: handleClick })=>{
193
+ return $a878a21b0c10bfdc$var$h("div.match-item", {
194
+ onClick: handleClick
195
+ }, item);
196
+ },
197
+ onItemSelect: (item)=>{
198
+ setDisabled(false);
199
+ setSelectedItem(item);
200
+ },
201
+ onQueryChange: (query)=>setInputValue(query),
202
+ popoverProps: {
203
+ minimal: true
204
+ },
205
+ query: inputValue,
206
+ placeholder: "Enter match name"
207
+ }, selectedItem)
208
+ ]),
209
+ $a878a21b0c10bfdc$var$h((0, $1RKp1$SaveButton), {
210
+ className: "save-btn",
211
+ small: true,
212
+ onClick: ()=>{
213
+ // Handle save changes
214
+ dispatch({
215
+ type: "add-match",
216
+ payload: {
217
+ id: nodeMatch.id,
218
+ payload: payload
219
+ }
220
+ });
221
+ setOverlayOpen(false);
222
+ },
223
+ disabled: disabled
224
+ }, "Save changes")
225
+ ])));
226
+ }
227
+
228
+
229
+ export {$a878a21b0c10bfdc$export$6479cfcac2b87c0 as Matches};
230
+ //# sourceMappingURL=feedback-components.fd8ac9ca.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/feedback-components/src/feedback/matches.ts"],"sourcesContent":["import { Switch } from \"@blueprintjs/core\";\nimport { Match } from \"./text-visualizer\";\nimport { Select } from \"@blueprintjs/select\";\nimport styles from \"./feedback.module.sass\";\nimport hyper from \"@macrostrat/hyper\";\nimport { useState } from \"react\";\nimport { Icon, Divider, Overlay2 } from \"@blueprintjs/core\";\nimport { JSONView, SaveButton } from \"@macrostrat/ui-components\";\nimport { useAPIResult, DataField } from \"@macrostrat/ui-components\";\nimport { LithologyTag } from \"@macrostrat/data-components\";\n\nconst h = hyper.styled(styles);\n\nexport function Matches({\n match,\n setMatchLinks,\n matchLinks,\n selectedNodes,\n tree,\n dispatch,\n}) {\n const [overlayOpen, setOverlayOpen] = useState(false);\n\n let nodeMatch = null;\n if (selectedNodes.length === 1) {\n nodeMatch = findMatchingNode(tree, selectedNodes[0]);\n }\n\n return h.if(matchLinks)(\"div\", [\n h(Divider),\n h(Switch, {\n label: \"Show matches\",\n checked: match !== null,\n onChange: (e) => {\n setMatchLinks(match === null ? matchLinks || {} : null);\n },\n }),\n h.if(nodeMatch && match)(Match, {\n data: nodeMatch?.match,\n matchLinks: matchLinks,\n dispatch,\n nodeId: nodeMatch?.id,\n }),\n h.if(selectedNodes.length == 1 && !nodeMatch?.match && match)(\n \"div.add-match-container\",\n [\n h(\n \"div.add-type\",\n {\n onClick: () => {\n setOverlayOpen(true);\n },\n },\n [h(\"p.add-match-text\", \"Add match\"), h(Icon, { icon: \"plus\" })],\n ),\n h(MatchOverlay, {\n isOpen: overlayOpen,\n setOverlayOpen,\n nodeMatch,\n dispatch,\n }),\n ],\n ),\n ]);\n}\n\nfunction findMatchingNode(tree, nodeId) {\n let match = null;\n\n function traverse(node) {\n if (node.id === nodeId) {\n match = node;\n return true;\n }\n if (Array.isArray(node.children)) {\n for (const child of node.children) {\n if (traverse(child)) return true;\n }\n }\n return false;\n }\n\n tree.forEach(traverse);\n return match;\n}\n\nfunction MatchOverlay({ isOpen, setOverlayOpen, nodeMatch, dispatch }) {\n const [inputValue, setInputValue] = useState(nodeMatch?.name || \"\");\n const [selectedItem, setSelectedItem] = useState(h(\"div\", \"Select a match\"));\n const [disabled, setDisabled] = useState(true);\n const [payload, setPayload] = useState({});\n\n const data = useAPIResult(\n \"https://dev.macrostrat.org/api/pg/type_lookup?name=ilike.*\" +\n inputValue +\n \"*\",\n );\n const items = data?.map((data) => {\n const type = data.type || \"\";\n\n if (type === \"lith\") {\n return h(\n \"div\",\n {\n onClick: () => {\n setPayload({ lith_id: data.id, name: data.name });\n },\n },\n h(DataField, {\n className: \"match-item\",\n label: \"Lithology\",\n value: h(LithologyTag, {\n data: { name: data.name, id: data.lith_id, color: data.color },\n }),\n }),\n );\n }\n\n if (type === \"strat_name\") {\n return h(\n \"div\",\n {\n onClick: () => {\n setPayload({ strat_name_id: data.id, name: data.name });\n },\n },\n h(DataField, {\n className: \"match-item\",\n label: \"Stratigraphic name\",\n value: h(LithologyTag, {\n data: { name: data.name, id: data.id, color: data.color },\n }),\n }),\n );\n }\n\n if (type === \"lith_att\") {\n return h(\n \"div\",\n {\n onClick: () => {\n setPayload({ lith_att_id: data.lith_att_id, name: data.name });\n },\n },\n h(DataField, {\n className: \"match-item\",\n label: \"Lithology attribute\",\n value: h(LithologyTag, {\n data: { name: data.name, id: data.lith_att_id },\n }),\n onClick: () => {\n setPayload({ lith_att_id: data.lith_att_id, name: data.name });\n },\n }),\n );\n }\n\n if (type === \"interval\") {\n h(\n \"div\",\n {\n onClick: () => {\n setPayload({ int_id: data.id, name: data.name });\n },\n },\n h(DataField, {\n label: \"Interval\",\n className: \"match-item\",\n value: h(LithologyTag, {\n data: { name: data.name, id: data.id },\n }),\n onClick: () => {\n setPayload({ int_id: data.id, name: data.name });\n },\n }),\n );\n }\n\n return h(JSONView, { data });\n });\n\n return h(\n Overlay2,\n {\n isOpen,\n },\n h(\n \"div.overlay-container\",\n h(\"div.add-type-overlay\", [\n h(\"h2.title\", [\n \"Add match with \" + nodeMatch.name,\n h(Icon, {\n icon: \"cross\",\n className: \"close-icon\",\n onClick: () => {\n setOverlayOpen(false);\n },\n style: { cursor: \"pointer\", color: \"red\" },\n }),\n ]),\n h(\"div.form-group\", [\n h(\n Select,\n {\n items: items || [],\n itemRenderer: (item, { handleClick }) => {\n return h(\"div.match-item\", { onClick: handleClick }, item);\n },\n onItemSelect: (item) => {\n setDisabled(false);\n setSelectedItem(item);\n },\n onQueryChange: (query) => setInputValue(query),\n popoverProps: { minimal: true },\n query: inputValue,\n placeholder: \"Enter match name\",\n },\n selectedItem,\n ),\n ]),\n h(\n SaveButton,\n {\n className: \"save-btn\",\n small: true,\n onClick: () => {\n // Handle save changes\n dispatch({\n type: \"add-match\",\n payload: { id: nodeMatch.id, payload },\n });\n setOverlayOpen(false);\n },\n disabled,\n },\n \"Save changes\",\n ),\n ]),\n ),\n );\n}\n"],"names":[],"version":3,"file":"feedback-components.fd8ac9ca.js.map"}
@@ -24,6 +24,7 @@ type Highlight = {
24
24
  borderColor?: string;
25
25
  id: number;
26
26
  parents?: number[];
27
+ match?: Match;
27
28
  };
28
29
  export interface EntityExt extends Omit<Entity, "type" | "children"> {
29
30
  type: EntityType;
@@ -35,10 +36,11 @@ declare namespace ThreeColumnLayout {
35
36
  }
36
37
  export function buildHighlights(entities: EntityExt[], parent: EntityExt | null): Highlight[];
37
38
  export function enhanceData(extractionData: any, models: any, entityTypes: any): any;
38
- export function getTagStyle(baseColor: string, options: {
39
+ export function getTagStyle(baseColor: string, options?: {
39
40
  highlighted?: boolean;
40
41
  inDarkMode?: boolean;
41
42
  active?: boolean;
43
+ showMatches?: boolean;
42
44
  }): CSSProperties;
43
45
  export function ExtractionContext({ data, entityTypes, matchComponent, }: {
44
46
  data: any;
@@ -78,7 +80,7 @@ export interface GraphData {
78
80
  }[];
79
81
  }
80
82
  export function treeToGraph(tree: TreeData[]): GraphData;
81
- export function FeedbackComponent({ entities, text, model, entityTypes, matchComponent, onSave, allowOverlap, }: {
83
+ export function FeedbackComponent({ entities, text, model, entityTypes, matchComponent, onSave, allowOverlap, matchLinks, }: {
82
84
  entities?: any[];
83
85
  text: any;
84
86
  model: any;
@@ -86,6 +88,7 @@ export function FeedbackComponent({ entities, text, model, entityTypes, matchCom
86
88
  matchComponent: any;
87
89
  onSave: any;
88
90
  allowOverlap: any;
91
+ matchLinks: any;
89
92
  }): DOMElement<DOMAttributes<Element>, Element>;
90
93
 
91
94
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/feedback-components/src/src/extractions/types.ts","packages/feedback-components/color-utils/src/index.ts","packages/feedback-components/ui-components/src/api/types.ts","packages/feedback-components/ui-components/src/util/query-string.ts","packages/feedback-components/ui-components/src/util/state-hooks.ts","packages/feedback-components/ui-components/src/util/layout-hooks.ts","packages/feedback-components/ui-components/src/util/local-storage.ts","packages/feedback-components/ui-components/src/util/json-view.ts","packages/feedback-components/ui-components/src/util/scroll-helpers.ts","packages/feedback-components/ui-components/src/util/migration-helpers.ts","packages/feedback-components/ui-components/src/util/box-model.ts","packages/feedback-components/ui-components/src/util/event-hooks.ts","packages/feedback-components/ui-components/src/util/flexbox.ts","packages/feedback-components/ui-components/src/util/size-aware-label.ts","packages/feedback-components/ui-components/src/util/index.ts","packages/feedback-components/ui-components/src/api/provider.ts","packages/feedback-components/ui-components/src/api/data-provider.ts","packages/feedback-components/ui-components/src/api/indexing.ts","packages/feedback-components/ui-components/src/api/frontend.ts","packages/feedback-components/ui-components/src/api/paged.ts","packages/feedback-components/ui-components/src/api/index.ts","packages/feedback-components/ui-components/src/infinite-scroll.ts","packages/feedback-components/ui-components/src/postgrest-infinite-scroll.ts","packages/feedback-components/ui-components/src/buttons/delete-button.ts","packages/feedback-components/ui-components/src/buttons/index.ts","packages/feedback-components/ui-components/src/collapse-panel/index.ts","packages/feedback-components/ui-components/src/link-card.ts","packages/feedback-components/ui-components/src/file-upload/index.ts","packages/feedback-components/ui-components/src/image.ts","packages/feedback-components/ui-components/src/model-editor.ts","packages/feedback-components/ui-components/src/toaster.ts","packages/feedback-components/ui-components/src/citations/author-list.ts","packages/feedback-components/ui-components/src/citations/index.ts","packages/feedback-components/ui-components/src/geodeepdive/reference-card.ts","packages/feedback-components/ui-components/src/geodeepdive/index.ts","packages/feedback-components/ui-components/src/text.ts","packages/feedback-components/ui-components/src/dark-mode.ts","packages/feedback-components/ui-components/src/form-controls/slider.ts","packages/feedback-components/ui-components/src/form-controls/index.ts","packages/feedback-components/ui-components/src/settings/index.ts","packages/feedback-components/ui-components/src/error-boundary.ts","packages/feedback-components/ui-components/src/patterns/composite-image.ts","packages/feedback-components/ui-components/src/patterns/index.ts","packages/feedback-components/ui-components/src/collapse-card.ts","packages/feedback-components/ui-components/src/modal-panel/draggable-overlay.ts","packages/feedback-components/ui-components/src/modal-panel/index.ts","packages/feedback-components/ui-components/src/page-layouts/index.ts","packages/feedback-components/ui-components/src/dev-panel/_inner.ts","packages/feedback-components/ui-components/src/dev-panel/index.ts","packages/feedback-components/ui-components/src/data/index.ts","packages/feedback-components/ui-components/src/index.ts","packages/feedback-components/src/src/extractions/index.ts","packages/feedback-components/src/src/feedback/types.ts","packages/feedback-components/src/src/feedback/edit-state.ts","packages/feedback-components/src/src/feedback/node.ts","packages/feedback-components/src/src/feedback/text-visualizer.ts","packages/feedback-components/src/src/feedback/type-selector/index.ts","packages/feedback-components/src/src/feedback/graph.ts","packages/feedback-components/data-sheet/src/components/editor-popup.ts","packages/.storybook/main.ts","packages/feedback-components/data-sheet/src/components/colors.ts","packages/feedback-components/data-sheet/src/components/text-areas.ts","packages/feedback-components/data-sheet/src/components/actions.ts","packages/feedback-components/data-sheet/src/components/index.ts","packages/feedback-components/data-sheet/src/utils/column-spec.ts","packages/feedback-components/data-sheet/src/utils/index.ts","packages/feedback-components/data-sheet/src/provider.ts","packages/feedback-components/data-sheet/src/core.ts","packages/feedback-components/data-components/src/components/hierarchy/index.ts","packages/feedback-components/data-components/src/components/prevalent-taxa/prevalent-taxa.ts","packages/feedback-components/data-components/src/components/prevalent-taxa/index.ts","packages/feedback-components/data-components/src/components/unit-details/tag.ts","packages/feedback-components/stratigraphy-utils/src/age-ranges.ts","packages/feedback-components/stratigraphy-utils/src/measurements.ts","packages/feedback-components/stratigraphy-utils/src/index.ts","packages/feedback-components/data-components/src/components/unit-details/base.ts","packages/feedback-components/data-components/src/components/unit-details/lithology-tag.ts","packages/feedback-components/data-components/src/components/unit-details/index.ts","packages/feedback-components/data-components/src/components/index.ts","packages/feedback-components/data-components/src/dz-spectrum/gradients.ts","packages/feedback-components/data-components/src/dz-spectrum/kernel-density.ts","packages/feedback-components/data-components/src/dz-spectrum/index.ts","packages/feedback-components/mapbox-utils/src/position.ts","packages/feedback-components/mapbox-utils/src/focus-state.ts","packages/feedback-components/mapbox-utils/src/labels.ts","packages/feedback-components/mapbox-utils/src/preprocess-styles.ts","packages/feedback-components/mapbox-utils/src/utils.ts","packages/feedback-components/mapbox-utils/src/view-info.ts","packages/feedback-components/mapbox-utils/src/style-helpers.ts","packages/feedback-components/mapbox-utils/src/index.ts","packages/feedback-components/data-components/src/field-locations/base.ts","packages/feedback-components/data-components/src/field-locations/checkins.ts","packages/feedback-components/data-components/src/field-locations/spots.ts","packages/feedback-components/mapbox-react/src/context.ts","packages/feedback-components/mapbox-react/src/hooks.ts","packages/feedback-components/mapbox-react/src/controls.ts","packages/feedback-components/mapbox-react/src/terrain.ts","packages/feedback-components/mapbox-react/src/debugger.ts","packages/feedback-components/mapbox-react/src/focus-state.ts","packages/feedback-components/map-styles/src/layer-helpers/symbol-layers.ts","packages/feedback-components/map-styles/src/layer-helpers/geology-layers.ts","packages/feedback-components/map-styles/src/layer-helpers/pattern-fill.ts","packages/feedback-components/map-styles/src/layer-helpers/utils.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/symbols/index.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/icon-image.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/symbol-layer.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/index.ts","packages/feedback-components/map-styles/src/layer-helpers/cross-sections.ts","packages/feedback-components/map-styles/src/layer-helpers/index.ts","packages/feedback-components/map-styles/src/styles/line-symbols.ts","packages/feedback-components/map-styles/src/styles/layers.ts","packages/feedback-components/map-styles/src/styles/index.ts","packages/feedback-components/map-styles/src/index.ts","packages/feedback-components/mapbox-react/src/layer-managers/line-symbols.ts","packages/feedback-components/mapbox-react/src/layer-managers/map-sources.ts","packages/feedback-components/mapbox-react/src/layer-managers/index.ts","packages/feedback-components/mapbox-react/src/index.ts","packages/feedback-components/map-interface/src/context-panel/index.ts","packages/feedback-components/map-interface/src/location-info/utils.ts","packages/feedback-components/map-interface/src/location-info/hash-string.ts","packages/feedback-components/map-interface/src/location-info/index.ts","packages/feedback-components/map-interface/src/location-panel/header.ts","packages/feedback-components/map-interface/src/controls.ts","packages/feedback-components/map-interface/src/container.ts","packages/feedback-components/map-interface/src/location-panel/index.ts","packages/feedback-components/map-interface/src/dev/xray.ts","packages/feedback-components/map-interface/src/utils.ts","packages/feedback-components/map-interface/src/helpers.ts","packages/feedback-components/map-interface/src/map-view.ts","packages/feedback-components/map-interface/src/dev/tile-extent.ts","packages/feedback-components/map-interface/src/expansion-panel/headers.ts","packages/feedback-components/map-interface/src/expansion-panel/index.ts","packages/feedback-components/map-interface/src/dev/vector-tile-features.ts","packages/feedback-components/map-interface/src/dev/map-page.ts","packages/feedback-components/map-interface/src/dev/index.ts","packages/feedback-components/map-interface/src/index.ts","packages/feedback-components/data-components/src/field-locations/rockd-checkins/index.ts","packages/feedback-components/data-components/src/field-locations/index.ts","packages/feedback-components/data-components/src/index.ts","packages/feedback-components/data-sheet/src/postgrest-table/data-loaders.ts","packages/feedback-components/data-sheet/src/postgrest-table/index.ts","packages/feedback-components/data-sheet/src/index.ts","packages/feedback-components/src/src/feedback/index.ts","packages/feedback-components/src/src/index.ts","packages/feedback-components/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"export * from \"./extractions\";\nexport * from \"./feedback\";\n"],"names":[],"version":3,"file":"index.d.ts.map"}
1
+ {"mappings":"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","sources":["packages/feedback-components/src/src/extractions/types.ts","packages/feedback-components/color-utils/src/index.ts","packages/feedback-components/ui-components/src/api/types.ts","packages/feedback-components/ui-components/src/util/query-string.ts","packages/feedback-components/ui-components/src/util/state-hooks.ts","packages/feedback-components/ui-components/src/util/layout-hooks.ts","packages/feedback-components/ui-components/src/util/local-storage.ts","packages/feedback-components/ui-components/src/util/json-view.ts","packages/feedback-components/ui-components/src/util/scroll-helpers.ts","packages/feedback-components/ui-components/src/util/migration-helpers.ts","packages/feedback-components/ui-components/src/util/box-model.ts","packages/feedback-components/ui-components/src/util/event-hooks.ts","packages/feedback-components/ui-components/src/util/flexbox.ts","packages/feedback-components/ui-components/src/util/size-aware-label.ts","packages/feedback-components/ui-components/src/util/index.ts","packages/feedback-components/ui-components/src/api/provider.ts","packages/feedback-components/ui-components/src/api/data-provider.ts","packages/feedback-components/ui-components/src/api/indexing.ts","packages/feedback-components/ui-components/src/api/frontend.ts","packages/feedback-components/ui-components/src/api/paged.ts","packages/feedback-components/ui-components/src/api/index.ts","packages/feedback-components/ui-components/src/infinite-scroll.ts","packages/feedback-components/ui-components/src/postgrest-infinite-scroll.ts","packages/feedback-components/ui-components/src/buttons/delete-button.ts","packages/feedback-components/ui-components/src/buttons/index.ts","packages/feedback-components/ui-components/src/collapse-panel/index.ts","packages/feedback-components/ui-components/src/link-card.ts","packages/feedback-components/ui-components/src/file-upload/index.ts","packages/feedback-components/ui-components/src/image.ts","packages/feedback-components/ui-components/src/model-editor.ts","packages/feedback-components/ui-components/src/toaster.ts","packages/feedback-components/ui-components/src/citations/author-list.ts","packages/feedback-components/ui-components/src/citations/index.ts","packages/feedback-components/ui-components/src/geodeepdive/reference-card.ts","packages/feedback-components/ui-components/src/geodeepdive/index.ts","packages/feedback-components/ui-components/src/text.ts","packages/feedback-components/ui-components/src/dark-mode.ts","packages/feedback-components/ui-components/src/form-controls/slider.ts","packages/feedback-components/ui-components/src/form-controls/index.ts","packages/feedback-components/ui-components/src/settings/index.ts","packages/feedback-components/ui-components/src/error-boundary.ts","packages/feedback-components/ui-components/src/patterns/composite-image.ts","packages/feedback-components/ui-components/src/patterns/index.ts","packages/feedback-components/ui-components/src/collapse-card.ts","packages/feedback-components/ui-components/src/modal-panel/draggable-overlay.ts","packages/feedback-components/ui-components/src/modal-panel/index.ts","packages/feedback-components/ui-components/src/page-layouts/index.ts","packages/feedback-components/ui-components/src/dev-panel/_inner.ts","packages/feedback-components/ui-components/src/dev-panel/index.ts","packages/feedback-components/ui-components/src/data/index.ts","packages/feedback-components/ui-components/src/index.ts","packages/feedback-components/src/src/extractions/index.ts","packages/feedback-components/src/src/feedback/types.ts","packages/feedback-components/src/src/feedback/edit-state.ts","packages/feedback-components/src/src/feedback/node.ts","packages/feedback-components/data-components/src/components/hierarchy/index.ts","packages/feedback-components/data-components/src/components/prevalent-taxa/prevalent-taxa.ts","packages/feedback-components/data-components/src/components/prevalent-taxa/index.ts","packages/feedback-components/data-components/src/components/unit-details/tag.ts","packages/feedback-components/stratigraphy-utils/src/age-ranges.ts","packages/feedback-components/stratigraphy-utils/src/measurements.ts","packages/feedback-components/stratigraphy-utils/src/index.ts","packages/feedback-components/data-components/src/components/unit-details/base.ts","packages/feedback-components/data-components/src/components/unit-details/lithology-tag.ts","packages/feedback-components/data-components/src/components/unit-details/index.ts","packages/feedback-components/data-components/src/components/index.ts","packages/feedback-components/data-components/src/dz-spectrum/gradients.ts","packages/feedback-components/data-components/src/dz-spectrum/kernel-density.ts","packages/feedback-components/data-components/src/dz-spectrum/index.ts","packages/feedback-components/mapbox-utils/src/position.ts","packages/feedback-components/mapbox-utils/src/focus-state.ts","packages/feedback-components/mapbox-utils/src/labels.ts","packages/feedback-components/mapbox-utils/src/preprocess-styles.ts","packages/feedback-components/mapbox-utils/src/utils.ts","packages/feedback-components/mapbox-utils/src/view-info.ts","packages/feedback-components/mapbox-utils/src/style-helpers.ts","packages/feedback-components/mapbox-utils/src/index.ts","packages/feedback-components/data-components/src/field-locations/base.ts","packages/feedback-components/data-components/src/field-locations/checkins.ts","packages/feedback-components/data-components/src/field-locations/spots.ts","packages/feedback-components/mapbox-react/src/context.ts","packages/feedback-components/mapbox-react/src/hooks.ts","packages/feedback-components/mapbox-react/src/controls.ts","packages/feedback-components/mapbox-react/src/terrain.ts","packages/feedback-components/mapbox-react/src/debugger.ts","packages/feedback-components/mapbox-react/src/focus-state.ts","packages/feedback-components/map-styles/src/layer-helpers/symbol-layers.ts","packages/feedback-components/map-styles/src/layer-helpers/geology-layers.ts","packages/feedback-components/map-styles/src/layer-helpers/pattern-fill.ts","packages/feedback-components/map-styles/src/layer-helpers/utils.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/symbols/index.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/icon-image.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/symbol-layer.ts","packages/feedback-components/map-styles/src/layer-helpers/point-features/index.ts","packages/feedback-components/map-styles/src/layer-helpers/cross-sections.ts","packages/feedback-components/map-styles/src/layer-helpers/index.ts","packages/feedback-components/map-styles/src/styles/line-symbols.ts","packages/feedback-components/map-styles/src/styles/layers.ts","packages/feedback-components/map-styles/src/styles/index.ts","packages/feedback-components/map-styles/src/index.ts","packages/feedback-components/mapbox-react/src/layer-managers/line-symbols.ts","packages/feedback-components/mapbox-react/src/layer-managers/map-sources.ts","packages/feedback-components/mapbox-react/src/layer-managers/index.ts","packages/feedback-components/mapbox-react/src/index.ts","packages/feedback-components/map-interface/src/context-panel/index.ts","packages/feedback-components/map-interface/src/location-info/utils.ts","packages/feedback-components/map-interface/src/location-info/hash-string.ts","packages/feedback-components/map-interface/src/location-info/index.ts","packages/feedback-components/map-interface/src/location-panel/header.ts","packages/feedback-components/map-interface/src/controls.ts","packages/feedback-components/map-interface/src/container.ts","packages/feedback-components/map-interface/src/location-panel/index.ts","packages/feedback-components/map-interface/src/dev/xray.ts","packages/feedback-components/map-interface/src/utils.ts","packages/feedback-components/map-interface/src/helpers.ts","packages/feedback-components/map-interface/src/map-view.ts","packages/feedback-components/map-interface/src/dev/tile-extent.ts","packages/feedback-components/map-interface/src/expansion-panel/headers.ts","packages/feedback-components/map-interface/src/expansion-panel/index.ts","packages/feedback-components/map-interface/src/dev/vector-tile-features.ts","packages/feedback-components/map-interface/src/dev/map-page.ts","packages/feedback-components/map-interface/src/dev/index.ts","packages/feedback-components/map-interface/src/map-panel/utils/fossils.ts","packages/feedback-components/map-interface/src/map-panel/utils/formatting.ts","packages/feedback-components/map-interface/src/map-panel/utils/index.ts","packages/feedback-components/map-interface/src/map-panel/components/info-blocks.ts","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/macrostrat-linked.ts","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/physiography.ts","packages/feedback-components/map-interface/src/map-panel/components/transitions/index.ts","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/reg-strat.ts","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/xdd-panel/Article.tsx","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/xdd-panel/Journal.tsx","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/xdd-panel/index.ts","packages/feedback-components/map-interface/src/map-panel/components/info-drawer/index.ts","packages/feedback-components/map-interface/src/map-panel/index.ts","packages/feedback-components/map-interface/src/index.ts","packages/feedback-components/data-components/src/field-locations/rockd-checkins/index.ts","packages/feedback-components/data-components/src/field-locations/index.ts","packages/feedback-components/data-components/src/index.ts","packages/feedback-components/src/src/feedback/text-visualizer.ts","packages/feedback-components/src/src/feedback/type-selector/index.ts","packages/feedback-components/src/src/feedback/graph.ts","packages/feedback-components/src/src/feedback/matches.ts","packages/feedback-components/data-sheet/src/components/editor-popup.ts","packages/.storybook/main.ts","packages/feedback-components/data-sheet/src/components/colors.ts","packages/feedback-components/data-sheet/src/components/text-areas.ts","packages/feedback-components/data-sheet/src/components/actions.ts","packages/feedback-components/data-sheet/src/components/index.ts","packages/feedback-components/data-sheet/src/utils/column-spec.ts","packages/feedback-components/data-sheet/src/utils/index.ts","packages/feedback-components/data-sheet/src/provider.ts","packages/feedback-components/data-sheet/src/core.ts","packages/feedback-components/data-sheet/src/postgrest-table/data-loaders.ts","packages/feedback-components/data-sheet/src/postgrest-table/index.ts","packages/feedback-components/data-sheet/src/index.ts","packages/feedback-components/src/src/feedback/typelist.ts","packages/feedback-components/src/src/feedback/index.ts","packages/feedback-components/src/src/index.ts","packages/feedback-components/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"export * from \"./extractions\";\nexport * from \"./feedback\";\n"],"names":[],"version":3,"file":"index.d.ts.map"}
package/dist/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import {buildHighlights as $03d8811e9c9b360d$export$c4b91360064ad200, enhanceData as $03d8811e9c9b360d$export$d60b563f571177d, getTagStyle as $03d8811e9c9b360d$export$35baa338324d8550, ExtractionContext as $03d8811e9c9b360d$export$2b07158757c249e0, ModelInfo as $03d8811e9c9b360d$export$4eb2a0ce903ce967, EntityTag as $03d8811e9c9b360d$export$117e56c71b172cde} from "./feedback-components.5df2a926.js";
2
- import {FeedbackComponent as $71d20dff35996763$export$a90600c9da52b40c, treeToGraph as $b79bf29960412ca7$export$8d9dbb7a64bf2a5e} from "./feedback-components.586103e8.js";
1
+ import {buildHighlights as $03d8811e9c9b360d$export$c4b91360064ad200, enhanceData as $03d8811e9c9b360d$export$d60b563f571177d, getTagStyle as $03d8811e9c9b360d$export$35baa338324d8550, ExtractionContext as $03d8811e9c9b360d$export$2b07158757c249e0, ModelInfo as $03d8811e9c9b360d$export$4eb2a0ce903ce967, EntityTag as $03d8811e9c9b360d$export$117e56c71b172cde} from "./feedback-components.707e3490.js";
2
+ import {FeedbackComponent as $71d20dff35996763$export$a90600c9da52b40c, treeToGraph as $b79bf29960412ca7$export$8d9dbb7a64bf2a5e} from "./feedback-components.204f7d2b.js";
3
3
 
4
4
 
5
5
 
@@ -0,0 +1,2 @@
1
+ import"./feedback-components.b9317f9c.js";import"./feedback-components.2f740fc7.js";import"./feedback-components.69d0ccd0.js";import"./feedback-components.b22d37d1.js";import"./feedback-components.a7b43cfa.js";import"./feedback-components.acac789b.js";import"./feedback-components.41db283a.js";import"./feedback-components.f8373b58.js";import"./feedback-components.e140ac86.js";import e from"@macrostrat/hyper";import{Tree as t}from"react-arborist";import{useState as n,useRef as r,useCallback as o,useEffect as a}from"react";import{SegmentedControl as i,Card as s,ButtonGroup as d,Divider as c}from"@blueprintjs/core";import{ErrorBoundary as l,FlexRow as p,CancelButton as m,SaveButton as u}from"@macrostrat/ui-components";import f from"use-element-dimensions";function h(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}var y=globalThis,b={},v={},g=y.parcelRequirea149;null==g&&((g=function(e){if(e in b)return b[e].exports;if(e in v){var t=v[e];delete v[e];var n={id:e,exports:{}};return b[e]=n,t.call(n.exports,n,n.exports),n.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,t){v[e]=t},y.parcelRequirea149=g),g.register;var w={};h(w,"FeedbackComponent",()=>j),h(w,"treeToGraph",()=>g("eedTh").treeToGraph);var k=g("9wFEx"),S=g("bQY4Q"),_=g("3OP12"),C=g("edvRb"),T=g("eedTh"),x=g("iKZjQ"),E=g("bK9Of"),H=g("jlqgz"),R=g("aWecs");let F=e.styled(k&&k.__esModule?k.default:k);function j({entities:e=[],text:t,model:r,entityTypes:o,matchComponent:a,onSave:h,allowOverlap:y,matchLinks:b}){let[v,g]=(0,T.useUpdatableTree)(e.map(O),o),[w,k]=n(b||{}),{selectedNodes:S,tree:x,selectedEntityType:R,isSelectingEntityType:j,entityTypesMap:A}=v,[{width:L,height:M},D]=f();return F("div.page-wrapper",[F("div.feedback-container",F(T.TreeDispatchContext.Provider,{value:g},[F(l,{description:"An error occurred while rendering the feedback text component."},F(_.FeedbackText,{text:t,dispatch:g,nodes:x,selectedNodes:S,allowOverlap:y,matchLinks:w})),F(p,{alignItems:"baseline",justifyContent:"space-between"},[F(C.ModelInfo,{data:r}),F(i,{options:[{label:"Tree",value:"tree"},{label:"Graph",value:"graph"}],value:v.viewMode,small:!0,onValueChange(e){console.log("Setting view mode",e),g({type:"set-view-mode",payload:e})}})]),F("div.entity-panel",{ref:D},[F.if("tree"==v.viewMode)(N,{selectedNodes:S,dispatch:g,tree:x,width:L,height:M,matchComponent:a}),F.if("graph"==v.viewMode)(E.GraphView,{tree:x,width:L,height:M,dispatch:g,selectedNodes:S})])])),F(s,{className:"control-panel"},[F("div.control-content",[F(d,{vertical:!0,fill:!0,minimal:!0,alignText:"left"},[F(m,{icon:"trash",disabled:v.initialTree==v.tree,onClick(){g({type:"reset"})}},"Reset"),F(u,{onClick(){h(v.tree)},disabled:v.initialTree==v.tree},"Save")]),F(H.Matches,{match:w,setMatchLinks:k,matchLinks:b,selectedNodes:S,tree:x,dispatch:g}),F(c),F(I,{entityTypes:A,selected:R,onChange(e){g({type:"select-entity-type",payload:e})},dispatch:g,tree:x,selectedNodes:S,isOpen:j,setOpen:e=>g({type:"toggle-entity-type-selector",payload:e})})])])])}function O(e){return{...e,term_type:e.type.name,txt_range:[e.indices],children:e.children?.map(O)??[]}}function I({entityTypes:e,selected:t,isOpen:r,setOpen:o,onChange:a,tree:i,dispatch:s,selectedNodes:d=[]}){let c=null!=t?t:void 0,[l,p]=n(""),m=Array.from(e.values()),u=""!==l?m.filter(e=>e.name.toLowerCase().includes(l.toLowerCase())):m;return F("div.entity-type-selector",[F(R.TypeList,{types:e,selected:c,dispatch:s,selectedNodes:d,tree:i}),F(x.OmniboxSelector,{isOpen:r,items:u,selectedItem:c,onSelectItem(e){o(!1),a(e)},onQueryChange(e){p(e)},onClose(){o(!1)}})])}function N(e){let{selectedNodes:n,dispatch:i,tree:s,height:d,width:c,matchComponent:l}=e,p=r(),m=r(!1),u=o(e=>F(S.default,{...e,matchComponent:l}),[l]);a(()=>{if(null!=p.current)!function(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}(new Set(n.map(e=>e.toString())),p.current.selectedIds)&&p.current.setSelection({ids:n.map(e=>e.toString()),anchor:null,mostRecent:null})},[n]);let f=r(!1);return a(()=>{let e=e=>{(e.ctrlKey||e.metaKey)&&(f.current=!0)},t=()=>f.current=!1;return window.addEventListener("keydown",e),window.addEventListener("keyup",t),()=>{window.removeEventListener("keydown",e),window.removeEventListener("keyup",t)}},[]),F("div.selection-tree-wrapper",{onPointerDown:function(){m.current=!0}},F(t,{className:"selection-tree",height:d,width:c,ref:p,data:s,onMove({dragIds:e,parentId:t,index:n}){i({type:"move-node",payload:{dragIds:e.map(e=>parseInt(e)),parentId:t?parseInt(t):null,index:n}})},onDelete({ids:e}){i({type:"delete-node",payload:{ids:e.map(e=>parseInt(e))}})},onSelect:o(e=>{if(!m.current)return;m.current=!1;let t=f.current,r=e.map(e=>parseInt(e.id));t?i({type:"toggle-node-selected",payload:{ids:r}}):(1===r.length&&r[0]===n[0]&&(r=[]),i({type:"select-node",payload:{ids:r}}))},[n,i]),children:u,idAccessor:e=>e.id.toString()}))}export{j as FeedbackComponent,$330ae695507d96f5$export$8d9dbb7a64bf2a5e as treeToGraph};
2
+ //# sourceMappingURL=feedback-components.0eef8d0c.js.map