@manta-eu/react 0.1.1 → 0.1.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.
- package/README.md +2 -5
- package/dist/components/breadcrumbs/index.d.ts +26 -0
- package/dist/components/breadcrumbs/index.d.ts.map +1 -0
- package/dist/components/breadcrumbs/index.js +36 -0
- package/dist/components/chip/index.d.ts +14 -0
- package/dist/components/chip/index.d.ts.map +1 -0
- package/dist/components/chip/index.js +8 -0
- package/dist/components/editable-text/index.d.ts +13 -0
- package/dist/components/editable-text/index.d.ts.map +1 -0
- package/dist/components/editable-text/index.js +61 -0
- package/dist/components/explain-fact/ExplainFact.d.ts +16 -0
- package/dist/components/explain-fact/ExplainFact.d.ts.map +1 -0
- package/dist/components/{rdfox-explain/RDFoxExplain.js → explain-fact/ExplainFact.js} +12 -12
- package/dist/components/explain-fact/OutdatedFactNotice.d.ts.map +1 -0
- package/dist/components/input/index.d.ts +2 -0
- package/dist/components/input/index.d.ts.map +1 -1
- package/dist/components/input/index.js +2 -0
- package/dist/components/input/input-numeric.d.ts +19 -0
- package/dist/components/input/input-numeric.d.ts.map +1 -0
- package/dist/components/input/input-numeric.js +85 -0
- package/dist/components/input/input-tags.d.ts +17 -0
- package/dist/components/input/input-tags.d.ts.map +1 -0
- package/dist/components/input/input-tags.js +46 -0
- package/dist/components/multi-select/index.d.ts +32 -0
- package/dist/components/multi-select/index.d.ts.map +1 -0
- package/dist/components/multi-select/index.js +33 -0
- package/dist/components/multi-select/toggle-value.d.ts +2 -0
- package/dist/components/multi-select/toggle-value.d.ts.map +1 -0
- package/dist/components/multi-select/toggle-value.js +3 -0
- package/dist/components/sidebar/index.d.ts +4 -1
- package/dist/components/sidebar/index.d.ts.map +1 -1
- package/dist/components/sidebar/index.js +2 -2
- package/dist/components/skeleton/index.js +1 -1
- package/dist/components/tool-invocation-card/ExplainFactResultDisplay.d.ts +9 -0
- package/dist/components/tool-invocation-card/ExplainFactResultDisplay.d.ts.map +1 -0
- package/dist/components/tool-invocation-card/{ExplainRDFoxResultDisplay.js → ExplainFactResultDisplay.js} +3 -3
- package/dist/components/tool-invocation-card/ToolOutputRenderer.js +2 -2
- package/dist/components/tool-invocation-card/types.d.ts +4 -4
- package/dist/components/tool-invocation-card/types.d.ts.map +1 -1
- package/dist/components/tool-invocation-card/types.js +2 -2
- package/dist/components/tree-multi-select/index.d.ts +1 -1
- package/dist/components/tree-multi-select/index.d.ts.map +1 -1
- package/dist/components/tree-multi-select/index.js +1 -1
- package/dist/components/tree-multi-select/tree-multi-select-rows.d.ts +2 -1
- package/dist/components/tree-multi-select/tree-multi-select-rows.d.ts.map +1 -1
- package/dist/components/tree-multi-select/tree-multi-select-rows.js +21 -31
- package/dist/components/tree-multi-select/tree-multi-select.d.ts +2 -0
- package/dist/components/tree-multi-select/tree-multi-select.d.ts.map +1 -1
- package/dist/components/tree-multi-select/tree-multi-select.js +21 -8
- package/dist/explain-fact/DatalogCode.d.ts.map +1 -0
- package/dist/explain-fact/EntityChip.d.ts.map +1 -0
- package/dist/explain-fact/EntityChip.js +17 -0
- package/dist/explain-fact/ExplainCompactView.d.ts.map +1 -0
- package/dist/explain-fact/ExplainFactState.d.ts +7 -0
- package/dist/explain-fact/ExplainFactState.d.ts.map +1 -0
- package/dist/{rdfox-explain/RDFoxExplainState.js → explain-fact/ExplainFactState.js} +1 -1
- package/dist/explain-fact/ExplainFullView.d.ts.map +1 -0
- package/dist/explain-fact/ExplainStates.d.ts.map +1 -0
- package/dist/explain-fact/ExplainTag.d.ts.map +1 -0
- package/dist/explain-fact/FactNotice.d.ts +7 -0
- package/dist/explain-fact/FactNotice.d.ts.map +1 -0
- package/dist/explain-fact/FactNotice.js +25 -0
- package/dist/explain-fact/FactValue.d.ts.map +1 -0
- package/dist/explain-fact/NumDot.d.ts.map +1 -0
- package/dist/explain-fact/PanelLabel.d.ts.map +1 -0
- package/dist/explain-fact/ProofSubjectHeader.d.ts.map +1 -0
- package/dist/explain-fact/ProvenanceBadge.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/ProvenanceBadge.js +2 -1
- package/dist/explain-fact/RuleVariableTypes.d.ts.map +1 -0
- package/dist/explain-fact/SubstitutedFactNotice.d.ts.map +1 -0
- package/dist/explain-fact/ValuePill.d.ts.map +1 -0
- package/dist/explain-fact/conclusion/ConclusionCard.d.ts.map +1 -0
- package/dist/explain-fact/conclusion/ConclusionSubtitle.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/conclusion/ConclusionSubtitle.js +3 -1
- package/dist/explain-fact/conclusion/index.d.ts.map +1 -0
- package/dist/explain-fact/explain-styles.d.ts.map +1 -0
- package/dist/explain-fact/fact-token.d.ts.map +1 -0
- package/dist/explain-fact/formula-hues.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/index.d.ts +2 -3
- package/dist/explain-fact/index.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/index.js +2 -3
- package/dist/explain-fact/inspector/ExplainInspector.d.ts.map +1 -0
- package/dist/explain-fact/inspector/ExplainInspector.js +20 -0
- package/dist/explain-fact/inspector/InspectorBindings.d.ts.map +1 -0
- package/dist/explain-fact/inspector/InspectorFact.d.ts.map +1 -0
- package/dist/explain-fact/inspector/InspectorHeader.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/inspector/InspectorRule.d.ts +3 -0
- package/dist/explain-fact/inspector/InspectorRule.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/inspector/InspectorRule.js +4 -5
- package/dist/explain-fact/inspector/SupportsSection.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/inspector/SupportsSection.js +2 -1
- package/dist/explain-fact/inspector/index.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/ProofFactLabel.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/ProofRowBadge.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/ProofRowContent.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/ProofRowValue.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/ProofTree.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofTree.js +1 -1
- package/dist/explain-fact/proof-tree/ProofTreeFormulaFooter.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/ProofTreeNode.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/SupportsTag.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/SupportsTag.js +6 -0
- package/dist/explain-fact/proof-tree/index.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/proof-tree-navigation.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/proof-tree-root-view.d.ts.map +1 -0
- package/dist/explain-fact/proof-tree/visible-premises.d.ts.map +1 -0
- package/dist/explain-fact/rule-presentation.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/tree-model.d.ts +18 -9
- package/dist/explain-fact/tree-model.d.ts.map +1 -0
- package/dist/{rdfox-explain → explain-fact}/tree-model.js +19 -10
- package/dist/explain-fact/use-fact-measure.d.ts.map +1 -0
- package/dist/globals.css +237 -18
- package/dist/hooks/useValidateActionPlan.d.ts.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/ldo-ui.d.ts +1 -1
- package/dist/ldo-ui.d.ts.map +1 -1
- package/dist/ldo-ui.js +1 -1
- package/dist/lib/datastore-route-paths.d.ts +2 -2
- package/dist/lib/datastore-route-paths.d.ts.map +1 -1
- package/dist/lib/datastore-route-paths.js +2 -2
- package/dist/lib/datastore-route-table.d.ts +36 -0
- package/dist/lib/datastore-route-table.d.ts.map +1 -0
- package/dist/lib/datastore-route-table.js +43 -0
- package/dist/lib/datastore-routes.d.ts +1 -1
- package/dist/lib/datastore-routes.d.ts.map +1 -1
- package/dist/lib/datastore-routes.js +1 -1
- package/dist/lib/spa-routes.d.ts +3 -0
- package/dist/lib/spa-routes.d.ts.map +1 -0
- package/dist/lib/spa-routes.js +5 -0
- package/dist/routes/data-explorer/components/Breadcrumbs.d.ts.map +1 -1
- package/dist/routes/data-explorer/components/Breadcrumbs.js +5 -5
- package/dist/routes/datastores/components/DatastoreFormDialog.d.ts +18 -0
- package/dist/routes/datastores/components/DatastoreFormDialog.d.ts.map +1 -0
- package/dist/routes/datastores/components/DatastoreFormDialog.js +27 -0
- package/dist/routes/datastores/components/DatastoreTableSkeleton.d.ts +2 -0
- package/dist/routes/datastores/components/DatastoreTableSkeleton.d.ts.map +1 -0
- package/dist/routes/datastores/components/DatastoreTableSkeleton.js +7 -0
- package/dist/routes/datastores/components/DatastoresToolbar.d.ts +18 -0
- package/dist/routes/datastores/components/DatastoresToolbar.d.ts.map +1 -0
- package/dist/routes/datastores/components/DatastoresToolbar.js +29 -0
- package/dist/routes/datastores/components/LinkUnlinkedDatastoreDialog.d.ts +14 -0
- package/dist/routes/datastores/components/LinkUnlinkedDatastoreDialog.d.ts.map +1 -0
- package/dist/routes/datastores/components/LinkUnlinkedDatastoreDialog.js +83 -0
- package/dist/routes/datastores/components/RenameDatastoreGroupDialog.d.ts +9 -0
- package/dist/routes/datastores/components/RenameDatastoreGroupDialog.d.ts.map +1 -0
- package/dist/routes/datastores/components/RenameDatastoreGroupDialog.js +21 -0
- package/dist/routes/datastores/components/StatusBadge.d.ts +21 -0
- package/dist/routes/datastores/components/StatusBadge.d.ts.map +1 -0
- package/dist/routes/datastores/components/StatusBadge.js +49 -0
- package/dist/routes/datastores/components/UnlinkedDatastoresPanel.d.ts +20 -0
- package/dist/routes/datastores/components/UnlinkedDatastoresPanel.d.ts.map +1 -0
- package/dist/routes/datastores/components/UnlinkedDatastoresPanel.js +13 -0
- package/dist/routes/datastores/flatten.d.ts +33 -0
- package/dist/routes/datastores/flatten.d.ts.map +1 -0
- package/dist/routes/datastores/flatten.js +86 -0
- package/dist/routes/datastores/hooks/useDatastoreColumns.d.ts +47 -0
- package/dist/routes/datastores/hooks/useDatastoreColumns.d.ts.map +1 -0
- package/dist/routes/datastores/hooks/useDatastoreColumns.js +165 -0
- package/dist/routes/datastores/hooks/useDatastoreTable.d.ts +14 -0
- package/dist/routes/datastores/hooks/useDatastoreTable.d.ts.map +1 -0
- package/dist/routes/datastores/hooks/useDatastoreTable.js +45 -0
- package/dist/routes/datastores/index.d.ts +2 -0
- package/dist/routes/datastores/index.d.ts.map +1 -0
- package/dist/routes/datastores/index.js +467 -0
- package/dist/routes/explain/ExplainEmpty.d.ts +2 -0
- package/dist/routes/explain/ExplainEmpty.d.ts.map +1 -0
- package/dist/routes/explain/ExplainEmpty.js +8 -0
- package/dist/routes/explain/index.d.ts +2 -0
- package/dist/routes/explain/index.d.ts.map +1 -0
- package/dist/routes/explain/index.js +16 -0
- package/dist/routes/explain/url-params.d.ts +9 -0
- package/dist/routes/explain/url-params.d.ts.map +1 -0
- package/dist/routes/explain/url-params.js +21 -0
- package/dist/routes/integrations/components/ConnectionRow.d.ts.map +1 -1
- package/dist/routes/integrations/components/ConnectionRow.js +1 -1
- package/dist/routes/integrations/connection-view.d.ts.map +1 -1
- package/dist/routes/integrations/connection-view.js +17 -1
- package/dist/routes/integrations/types.d.ts +2 -1
- package/dist/routes/integrations/types.d.ts.map +1 -1
- package/dist/routes/rules/components/CreateRuleChatModal.d.ts +10 -0
- package/dist/routes/rules/components/CreateRuleChatModal.d.ts.map +1 -0
- package/dist/routes/rules/components/CreateRuleChatModal.js +52 -0
- package/dist/routes/rules/components/RuleActionabilityBadge.d.ts +8 -0
- package/dist/routes/rules/components/RuleActionabilityBadge.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleActionabilityBadge.js +18 -0
- package/dist/routes/rules/components/RuleAffectedActionPlansSection.d.ts +6 -0
- package/dist/routes/rules/components/RuleAffectedActionPlansSection.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleAffectedActionPlansSection.js +151 -0
- package/dist/routes/rules/components/RuleAst.d.ts +6 -0
- package/dist/routes/rules/components/RuleAst.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleAst.js +23 -0
- package/dist/routes/rules/components/RuleDependentRulesSection.d.ts +6 -0
- package/dist/routes/rules/components/RuleDependentRulesSection.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleDependentRulesSection.js +16 -0
- package/dist/routes/rules/components/RuleDetailsPage.d.ts +14 -0
- package/dist/routes/rules/components/RuleDetailsPage.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleDetailsPage.js +51 -0
- package/dist/routes/rules/components/RuleProducersSection.d.ts +7 -0
- package/dist/routes/rules/components/RuleProducersSection.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleProducersSection.js +10 -0
- package/dist/routes/rules/components/RuleSampleFactsSection.d.ts +7 -0
- package/dist/routes/rules/components/RuleSampleFactsSection.d.ts.map +1 -0
- package/dist/routes/rules/components/RuleSampleFactsSection.js +70 -0
- package/dist/routes/rules/components/RulesOverviewHeaderActions.d.ts +17 -0
- package/dist/routes/rules/components/RulesOverviewHeaderActions.d.ts.map +1 -0
- package/dist/routes/rules/components/RulesOverviewHeaderActions.js +55 -0
- package/dist/routes/rules/components/RulesOverviewPage.d.ts +13 -0
- package/dist/routes/rules/components/RulesOverviewPage.d.ts.map +1 -0
- package/dist/routes/rules/components/RulesOverviewPage.js +236 -0
- package/dist/routes/rules/components/SupportedActionShapesList/SupportedActionShapeDetails.d.ts +7 -0
- package/dist/routes/rules/components/SupportedActionShapesList/SupportedActionShapeDetails.d.ts.map +1 -0
- package/dist/routes/rules/components/SupportedActionShapesList/SupportedActionShapeDetails.js +47 -0
- package/dist/routes/rules/components/SupportedActionShapesList/SupportedActionShapesList.d.ts +8 -0
- package/dist/routes/rules/components/SupportedActionShapesList/SupportedActionShapesList.d.ts.map +1 -0
- package/dist/routes/rules/components/SupportedActionShapesList/SupportedActionShapesList.js +76 -0
- package/dist/routes/rules/components/SupportedActionShapesList/TokenList.d.ts +6 -0
- package/dist/routes/rules/components/SupportedActionShapesList/TokenList.d.ts.map +1 -0
- package/dist/routes/rules/components/SupportedActionShapesList/TokenList.js +9 -0
- package/dist/routes/rules/components/SupportedActionShapesList/index.d.ts +2 -0
- package/dist/routes/rules/components/SupportedActionShapesList/index.d.ts.map +1 -0
- package/dist/routes/rules/components/SupportedActionShapesList/index.js +1 -0
- package/dist/routes/rules/components/SupportedActionShapesList/shacl-shape.d.ts +20 -0
- package/dist/routes/rules/components/SupportedActionShapesList/shacl-shape.d.ts.map +1 -0
- package/dist/routes/rules/components/SupportedActionShapesList/shacl-shape.js +48 -0
- package/dist/routes/rules/components/datalog-editor/BindingsPreview.d.ts +9 -0
- package/dist/routes/rules/components/datalog-editor/BindingsPreview.d.ts.map +1 -0
- package/dist/routes/rules/components/datalog-editor/BindingsPreview.js +38 -0
- package/dist/routes/rules/components/datalog-editor/FactsPreview.d.ts +10 -0
- package/dist/routes/rules/components/datalog-editor/FactsPreview.d.ts.map +1 -0
- package/dist/routes/rules/components/datalog-editor/FactsPreview.js +43 -0
- package/dist/routes/rules/components/datalog-editor/PreviewPanel.d.ts +7 -0
- package/dist/routes/rules/components/datalog-editor/PreviewPanel.d.ts.map +1 -0
- package/dist/routes/rules/components/datalog-editor/PreviewPanel.js +8 -0
- package/dist/routes/rules/components/datalog-editor/QueryResults.d.ts +9 -0
- package/dist/routes/rules/components/datalog-editor/QueryResults.d.ts.map +1 -0
- package/dist/routes/rules/components/datalog-editor/QueryResults.js +22 -0
- package/dist/routes/rules/components/datalog-editor/SparqlQueryPanel.d.ts +11 -0
- package/dist/routes/rules/components/datalog-editor/SparqlQueryPanel.d.ts.map +1 -0
- package/dist/routes/rules/components/datalog-editor/SparqlQueryPanel.js +21 -0
- package/dist/routes/rules/components/rule-producers.d.ts +15 -0
- package/dist/routes/rules/components/rule-producers.d.ts.map +1 -0
- package/dist/routes/rules/components/rule-producers.js +76 -0
- package/dist/routes/rules/components/sample-facts-query.d.ts +9 -0
- package/dist/routes/rules/components/sample-facts-query.d.ts.map +1 -0
- package/dist/routes/rules/components/sample-facts-query.js +71 -0
- package/dist/routes/rules/datalog-editor.d.ts +6 -0
- package/dist/routes/rules/datalog-editor.d.ts.map +1 -0
- package/dist/routes/rules/datalog-editor.js +7 -0
- package/dist/routes/rules/hooks/useRuleFactsPreview.d.ts +53 -0
- package/dist/routes/rules/hooks/useRuleFactsPreview.d.ts.map +1 -0
- package/dist/routes/rules/hooks/useRuleFactsPreview.js +214 -0
- package/dist/routes/rules/hooks/useSparqlQueryExecution.d.ts +14 -0
- package/dist/routes/rules/hooks/useSparqlQueryExecution.d.ts.map +1 -0
- package/dist/routes/rules/hooks/useSparqlQueryExecution.js +77 -0
- package/dist/routes/rules/pages.d.ts +6 -0
- package/dist/routes/rules/pages.d.ts.map +1 -0
- package/dist/routes/rules/pages.js +7 -0
- package/dist/rules/RuleNameLink.d.ts +6 -0
- package/dist/rules/RuleNameLink.d.ts.map +1 -0
- package/dist/rules/RuleNameLink.js +8 -0
- package/package.json +59 -24
- package/src/globals.css +5 -0
- package/src/themes/manta-dark.css +1 -0
- package/src/themes/manta.css +1 -0
- package/src/themes/standard.css +1 -0
- package/dist/components/rdfox-explain/OutdatedFactNotice.d.ts.map +0 -1
- package/dist/components/rdfox-explain/RDFoxExplain.d.ts +0 -16
- package/dist/components/rdfox-explain/RDFoxExplain.d.ts.map +0 -1
- package/dist/components/tool-invocation-card/ExplainRDFoxResultDisplay.d.ts +0 -9
- package/dist/components/tool-invocation-card/ExplainRDFoxResultDisplay.d.ts.map +0 -1
- package/dist/lib/test-utils.d.ts +0 -4
- package/dist/lib/test-utils.d.ts.map +0 -1
- package/dist/lib/test-utils.js +0 -16
- package/dist/rdfox-explain/AbsentFactNotice.d.ts +0 -5
- package/dist/rdfox-explain/AbsentFactNotice.d.ts.map +0 -1
- package/dist/rdfox-explain/AbsentFactNotice.js +0 -6
- package/dist/rdfox-explain/DatalogCode.d.ts.map +0 -1
- package/dist/rdfox-explain/EntityChip.d.ts.map +0 -1
- package/dist/rdfox-explain/EntityChip.js +0 -9
- package/dist/rdfox-explain/ExplainCompactView.d.ts.map +0 -1
- package/dist/rdfox-explain/ExplainFullView.d.ts.map +0 -1
- package/dist/rdfox-explain/ExplainStates.d.ts.map +0 -1
- package/dist/rdfox-explain/ExplainTag.d.ts.map +0 -1
- package/dist/rdfox-explain/FactValue.d.ts.map +0 -1
- package/dist/rdfox-explain/NumDot.d.ts.map +0 -1
- package/dist/rdfox-explain/PanelLabel.d.ts.map +0 -1
- package/dist/rdfox-explain/ProofSubjectHeader.d.ts.map +0 -1
- package/dist/rdfox-explain/ProvenanceBadge.d.ts.map +0 -1
- package/dist/rdfox-explain/RDFoxExplainState.d.ts +0 -7
- package/dist/rdfox-explain/RDFoxExplainState.d.ts.map +0 -1
- package/dist/rdfox-explain/RuleVariableTypes.d.ts.map +0 -1
- package/dist/rdfox-explain/StoredFactNotice.d.ts +0 -5
- package/dist/rdfox-explain/StoredFactNotice.d.ts.map +0 -1
- package/dist/rdfox-explain/StoredFactNotice.js +0 -6
- package/dist/rdfox-explain/SubstitutedFactNotice.d.ts.map +0 -1
- package/dist/rdfox-explain/ValuePill.d.ts.map +0 -1
- package/dist/rdfox-explain/busy-aggregate-fixture.d.ts +0 -7
- package/dist/rdfox-explain/busy-aggregate-fixture.d.ts.map +0 -1
- package/dist/rdfox-explain/busy-aggregate-fixture.js +0 -6
- package/dist/rdfox-explain/conclusion/ConclusionCard.d.ts.map +0 -1
- package/dist/rdfox-explain/conclusion/ConclusionSubtitle.d.ts.map +0 -1
- package/dist/rdfox-explain/conclusion/index.d.ts.map +0 -1
- package/dist/rdfox-explain/explain-styles.d.ts.map +0 -1
- package/dist/rdfox-explain/fact-token.d.ts.map +0 -1
- package/dist/rdfox-explain/formula-hues.d.ts.map +0 -1
- package/dist/rdfox-explain/index.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/ExplainInspector.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/ExplainInspector.js +0 -22
- package/dist/rdfox-explain/inspector/InspectorBindings.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/InspectorFact.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/InspectorHeader.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/InspectorRule.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/SupportsSection.d.ts.map +0 -1
- package/dist/rdfox-explain/inspector/index.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofFactLabel.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofRowBadge.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofRowContent.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofRowValue.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofTree.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofTreeFormulaFooter.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/ProofTreeNode.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/SupportsTag.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/SupportsTag.js +0 -6
- package/dist/rdfox-explain/proof-tree/index.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/proof-tree-navigation.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/proof-tree-root-view.d.ts.map +0 -1
- package/dist/rdfox-explain/proof-tree/visible-premises.d.ts.map +0 -1
- package/dist/rdfox-explain/rule-presentation.d.ts.map +0 -1
- package/dist/rdfox-explain/tree-model.d.ts.map +0 -1
- package/dist/rdfox-explain/use-fact-measure.d.ts.map +0 -1
- package/dist/test-support.d.ts +0 -9
- package/dist/test-support.d.ts.map +0 -1
- package/dist/test-support.js +0 -18
- /package/dist/components/{rdfox-explain → explain-fact}/OutdatedFactNotice.d.ts +0 -0
- /package/dist/components/{rdfox-explain → explain-fact}/OutdatedFactNotice.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/DatalogCode.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/DatalogCode.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/EntityChip.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainCompactView.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainCompactView.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainFullView.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainFullView.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainStates.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainStates.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainTag.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ExplainTag.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/FactValue.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/FactValue.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/NumDot.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/NumDot.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/PanelLabel.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/PanelLabel.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ProofSubjectHeader.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ProofSubjectHeader.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ProvenanceBadge.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/RuleVariableTypes.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/RuleVariableTypes.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/SubstitutedFactNotice.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/SubstitutedFactNotice.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ValuePill.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/ValuePill.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/conclusion/ConclusionCard.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/conclusion/ConclusionCard.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/conclusion/ConclusionSubtitle.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/conclusion/index.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/conclusion/index.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/explain-styles.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/explain-styles.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/fact-token.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/fact-token.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/formula-hues.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/formula-hues.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/ExplainInspector.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/InspectorBindings.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/InspectorBindings.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/InspectorFact.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/InspectorFact.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/InspectorHeader.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/InspectorHeader.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/SupportsSection.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/index.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/inspector/index.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofFactLabel.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofFactLabel.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofRowBadge.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofRowBadge.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofRowContent.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofRowContent.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofRowValue.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofRowValue.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofTree.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofTreeFormulaFooter.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofTreeFormulaFooter.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofTreeNode.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/ProofTreeNode.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/SupportsTag.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/index.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/index.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/proof-tree-navigation.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/proof-tree-navigation.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/proof-tree-root-view.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/proof-tree-root-view.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/visible-premises.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/proof-tree/visible-premises.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/rule-presentation.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/rule-presentation.js +0 -0
- /package/dist/{rdfox-explain → explain-fact}/use-fact-measure.d.ts +0 -0
- /package/dist/{rdfox-explain → explain-fact}/use-fact-measure.js +0 -0
package/dist/ldo-ui.js
CHANGED
|
@@ -80,4 +80,4 @@ export { canPickDatastore, DatastorePicker, datastorePickerRows, DatastoreRowCon
|
|
|
80
80
|
export * from "./lib/measure.js";
|
|
81
81
|
export * from "./ontology/index.js";
|
|
82
82
|
export * from "./rules/index.js";
|
|
83
|
-
export * from "./
|
|
83
|
+
export * from "./explain-fact/index.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { datastoreRoutePaths, notFoundRoutePath } from "
|
|
2
|
-
export type { RouteElements } from "
|
|
1
|
+
export { datastoreRoutePaths, notFoundRoutePath } from "./datastore-route-table.js";
|
|
2
|
+
export type { RouteElements } from "./datastore-route-table.js";
|
|
3
3
|
export declare function isDatastoreRoutePath(pathname: string): boolean;
|
|
4
4
|
export declare function datastoreSwitchFallbackPath(pathname: string): string | undefined;
|
|
5
5
|
//# sourceMappingURL=datastore-route-paths.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datastore-route-paths.d.ts","sourceRoot":"","sources":["../../src/lib/datastore-route-paths.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"datastore-route-paths.d.ts","sourceRoot":"","sources":["../../src/lib/datastore-route-paths.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjF,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,sBAW3D"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { datastoreRoutes, notFoundRoutePath } from "
|
|
1
|
+
import { datastoreRoutes, notFoundRoutePath } from "./datastore-route-table.js";
|
|
2
2
|
import { length, maxBy } from "ramda";
|
|
3
3
|
import { matchRoutes } from "react-router";
|
|
4
|
-
export { datastoreRoutePaths, notFoundRoutePath } from "
|
|
4
|
+
export { datastoreRoutePaths, notFoundRoutePath } from "./datastore-route-table.js";
|
|
5
5
|
// The catch-all matches every path, so landing on it means no real route claims this one.
|
|
6
6
|
export function isDatastoreRoutePath(pathname) {
|
|
7
7
|
const matched = matchRoutes(datastoreRoutes, pathname)?.at(-1)?.route.path;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
export type RouteElements = {
|
|
3
|
+
Chat: ReactNode;
|
|
4
|
+
EnterDatastore?: ReactNode;
|
|
5
|
+
Plans?: ReactNode;
|
|
6
|
+
Rules?: ReactNode;
|
|
7
|
+
Explain?: ReactNode;
|
|
8
|
+
Streams?: ReactNode;
|
|
9
|
+
Datastores?: ReactNode;
|
|
10
|
+
Memories?: ReactNode;
|
|
11
|
+
Activity?: ReactNode;
|
|
12
|
+
ActivityDetail?: ReactNode;
|
|
13
|
+
Integrations?: ReactNode;
|
|
14
|
+
Team?: ReactNode;
|
|
15
|
+
DataExplorerLayout?: ReactNode;
|
|
16
|
+
DataExplorerIndex?: ReactNode;
|
|
17
|
+
DataExplorerRecent?: ReactNode;
|
|
18
|
+
DataExplorerCoverage?: ReactNode;
|
|
19
|
+
DataExplorerPrefix?: ReactNode;
|
|
20
|
+
DataExplorerType?: ReactNode;
|
|
21
|
+
DataEntity?: ReactNode;
|
|
22
|
+
DataDetail?: ReactNode;
|
|
23
|
+
NotFound?: ReactNode;
|
|
24
|
+
};
|
|
25
|
+
export declare function notFoundElement(elements: RouteElements): ReactNode;
|
|
26
|
+
export type RouteDefinition = {
|
|
27
|
+
path: string;
|
|
28
|
+
render: (elements: RouteElements) => ReactNode;
|
|
29
|
+
children?: RouteDefinition[];
|
|
30
|
+
};
|
|
31
|
+
export declare const notFoundRoutePath = "*";
|
|
32
|
+
export declare const globalRoutes: RouteDefinition[];
|
|
33
|
+
export declare const datastoreRoutes: RouteDefinition[];
|
|
34
|
+
export declare const datastoreRoutePaths: string[];
|
|
35
|
+
export declare const globalRoutePaths: string[];
|
|
36
|
+
//# sourceMappingURL=datastore-route-table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datastore-route-table.d.ts","sourceRoot":"","sources":["../../src/lib/datastore-route-table.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAC/B,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAC/B,oBAAoB,CAAC,EAAE,SAAS,CAAC;IACjC,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAC/B,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,aAEtD;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS,CAAC;IAC/C,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,eAAO,MAAM,YAAY,EAAE,eAAe,EAEzC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,eAAe,EA4B5C,CAAC;AAMF,eAAO,MAAM,mBAAmB,EAAE,MAAM,EAEvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,EAA+B,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export function notFoundElement(elements) {
|
|
2
|
+
return elements.NotFound || elements.Chat;
|
|
3
|
+
}
|
|
4
|
+
export const notFoundRoutePath = "*";
|
|
5
|
+
export const globalRoutes = [
|
|
6
|
+
{ path: "/datastores", render: (e) => e.Datastores || notFoundElement(e) },
|
|
7
|
+
];
|
|
8
|
+
export const datastoreRoutes = [
|
|
9
|
+
{ path: "/", render: (e) => e.Chat },
|
|
10
|
+
{ path: "/plans", render: (e) => e.Plans || e.Chat },
|
|
11
|
+
{ path: "/plans/:planName", render: (e) => e.Plans || e.Chat },
|
|
12
|
+
{ path: "/rules", render: (e) => e.Rules || e.Chat },
|
|
13
|
+
{ path: "/rules/:ruleName", render: (e) => e.Rules || e.Chat },
|
|
14
|
+
{ path: "/explain", render: (e) => e.Explain || e.Chat },
|
|
15
|
+
{ path: "/streams", render: (e) => e.Streams || notFoundElement(e) },
|
|
16
|
+
{ path: "/memories", render: (e) => e.Memories || e.Chat },
|
|
17
|
+
{ path: "/activity", render: (e) => e.Activity || notFoundElement(e) },
|
|
18
|
+
{ path: "/activity/:id", render: (e) => e.ActivityDetail || notFoundElement(e) },
|
|
19
|
+
{ path: "/integrations", render: (e) => e.Integrations || e.Chat },
|
|
20
|
+
{ path: "/team", render: (e) => e.Team || notFoundElement(e) },
|
|
21
|
+
{
|
|
22
|
+
path: "/data",
|
|
23
|
+
render: (e) => e.DataExplorerLayout || e.Chat,
|
|
24
|
+
children: [
|
|
25
|
+
{ path: "/data", render: (e) => e.DataExplorerIndex || notFoundElement(e) },
|
|
26
|
+
{ path: "/data/recent", render: (e) => e.DataExplorerRecent || notFoundElement(e) },
|
|
27
|
+
{ path: "/data/coverage", render: (e) => e.DataExplorerCoverage || notFoundElement(e) },
|
|
28
|
+
{ path: "/data/entity/:iri", render: (e) => e.DataEntity || notFoundElement(e) },
|
|
29
|
+
{ path: "/data/:prefix", render: (e) => e.DataExplorerPrefix || notFoundElement(e) },
|
|
30
|
+
{ path: "/data/:prefix/:type", render: (e) => e.DataExplorerType || notFoundElement(e) },
|
|
31
|
+
{ path: "/data/:prefix/:type/:id", render: (e) => e.DataDetail || notFoundElement(e) },
|
|
32
|
+
],
|
|
33
|
+
},
|
|
34
|
+
{ path: "/chat/:chatId", render: (e) => e.Chat },
|
|
35
|
+
{ path: notFoundRoutePath, render: notFoundElement },
|
|
36
|
+
];
|
|
37
|
+
function flattenPaths(routes) {
|
|
38
|
+
return routes.flatMap((route) => [route.path, ...(route.children ? flattenPaths(route.children) : [])]);
|
|
39
|
+
}
|
|
40
|
+
export const datastoreRoutePaths = [
|
|
41
|
+
...new Set(flattenPaths(datastoreRoutes).filter((path) => path !== "/" && path !== notFoundRoutePath)),
|
|
42
|
+
];
|
|
43
|
+
export const globalRoutePaths = flattenPaths(globalRoutes);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type RouteElements } from "
|
|
1
|
+
import { type RouteElements } from "./datastore-route-table.js";
|
|
2
2
|
export declare function getDatastoreRoutes(elements: RouteElements): import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export declare function getGlobalRoutes(elements: RouteElements): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
//# sourceMappingURL=datastore-routes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datastore-routes.d.ts","sourceRoot":"","sources":["../../src/lib/datastore-routes.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EACnB,MAAM
|
|
1
|
+
{"version":3,"file":"datastore-routes.d.ts","sourceRoot":"","sources":["../../src/lib/datastore-routes.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EACnB,MAAM,yBAAyB,CAAC;AAajC,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,2CAEzD;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,2CAOtD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { datastoreRoutes, globalRoutes, notFoundElement, } from "
|
|
2
|
+
import { datastoreRoutes, globalRoutes, notFoundElement, } from "./datastore-route-table.js";
|
|
3
3
|
import { Route, Routes } from "react-router";
|
|
4
4
|
function renderRoute(route, elements) {
|
|
5
5
|
const { path, render, children } = route;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spa-routes.d.ts","sourceRoot":"","sources":["../../src/lib/spa-routes.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe,UAAwC,CAAC;AAErE,eAAO,MAAM,eAAe,UAAoD,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const errorRoutePath = "/error";
|
|
2
|
+
import { datastoreRoutePaths, globalRoutePaths } from "./datastore-route-table.js";
|
|
3
|
+
// A wildcard instead of scopedSpaRoutes would answer /d/<id>/graphql, and every typo, with index.html.
|
|
4
|
+
export const globalSpaRoutes = [errorRoutePath, ...globalRoutePaths];
|
|
5
|
+
export const scopedSpaRoutes = ["", "/", errorRoutePath, ...datastoreRoutePaths];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../src/routes/data-explorer/components/Breadcrumbs.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,KAAK,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,KAAK,gBAAgB,GAAG;IAAE,KAAK,EAAE,KAAK,EAAE,CAAA;CAAE,CAAC;AAE3C,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../src/routes/data-explorer/components/Breadcrumbs.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,KAAK,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,KAAK,gBAAgB,GAAG;IAAE,KAAK,EAAE,KAAK,EAAE,CAAA;CAAE,CAAC;AAE3C,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAclD"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsx as _jsx
|
|
2
|
-
import { ChevronRight } from "lucide-react";
|
|
3
|
-
import { Fragment } from "react";
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
2
|
import { Link } from "react-router";
|
|
3
|
+
import { Breadcrumbs as BreadcrumbsPrimitive } from "#components/breadcrumbs/index";
|
|
4
|
+
import { cn } from "#style";
|
|
5
5
|
export function Breadcrumbs(props) {
|
|
6
|
-
const
|
|
7
|
-
return (_jsx(
|
|
6
|
+
const items = props.trail.map((crumb) => ({ label: crumb.label, href: crumb.to }));
|
|
7
|
+
return (_jsx(BreadcrumbsPrimitive, { items: items, className: "min-w-0", renderLink: ({ href, className, children }) => (_jsx(Link, { to: href, className: cn(className, "capitalize"), children: children })) }));
|
|
8
8
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type DatastoreFormTarget = {
|
|
2
|
+
kind: "organization";
|
|
3
|
+
} | {
|
|
4
|
+
kind: "datastore";
|
|
5
|
+
parentPath: string;
|
|
6
|
+
parentName: string;
|
|
7
|
+
organizationName: string;
|
|
8
|
+
};
|
|
9
|
+
type DatastoreFormDialogProps = {
|
|
10
|
+
target: DatastoreFormTarget;
|
|
11
|
+
onSubmit: (values: {
|
|
12
|
+
name: string;
|
|
13
|
+
}) => void;
|
|
14
|
+
onCancel: () => void;
|
|
15
|
+
};
|
|
16
|
+
export declare function DatastoreFormDialog(props: DatastoreFormDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=DatastoreFormDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatastoreFormDialog.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/DatastoreFormDialog.tsx"],"names":[],"mappings":"AAcA,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEN,KAAK,wBAAwB,GAAG;IAC9B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CA2DlE"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
import { match } from "ts-pattern";
|
|
4
|
+
import { Button } from "#components/button/index";
|
|
5
|
+
import { Input } from "#components/input/index";
|
|
6
|
+
import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "#components/modal/index";
|
|
7
|
+
export function DatastoreFormDialog(props) {
|
|
8
|
+
const { target, onSubmit, onCancel } = props;
|
|
9
|
+
const [name, setName] = useState("");
|
|
10
|
+
const isOrganization = target.kind === "organization";
|
|
11
|
+
const canSubmit = !!name.trim();
|
|
12
|
+
function submit() {
|
|
13
|
+
if (!canSubmit)
|
|
14
|
+
return;
|
|
15
|
+
onSubmit({ name: name.trim() });
|
|
16
|
+
}
|
|
17
|
+
return (_jsx(Dialog, { open: true, onOpenChange: (nextOpen) => !nextOpen && onCancel(), children: _jsxs(DialogContent, { className: "flex flex-col overflow-hidden", children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { text: isOrganization ? "Add organization" : "Add datastore" }), _jsx(DialogDescription, { children: match(target)
|
|
18
|
+
.with({ kind: "organization" }, () => "Sets up a new top-level organization with its own datastore and a fresh Manta you can build on.")
|
|
19
|
+
.with({ kind: "datastore", parentPath: "/" }, (datastore) => `Adds a top-level datastore in ${datastore.organizationName}.`)
|
|
20
|
+
.with({ kind: "datastore" }, (datastore) => `Adds a datastore nested under ${datastore.parentName}, in ${datastore.organizationName}.`)
|
|
21
|
+
.exhaustive() })] }), _jsx(Input, { autoFocus: true, label: isOrganization ? "Organization name" : "Datastore name", placeholder: isOrganization ? "e.g. Other Reseller Co" : "e.g. Acme Corp", value: name, onChange: (event) => setName(event.target.value), onKeyDown: (event) => {
|
|
22
|
+
if (event.key === "Enter")
|
|
23
|
+
submit();
|
|
24
|
+
if (event.key === "Escape")
|
|
25
|
+
onCancel();
|
|
26
|
+
} }), _jsxs(DialogFooter, { children: [_jsx(Button, { variant: "tertiary", onClick: onCancel, children: "Cancel" }), _jsx(Button, { onClick: submit, disabled: !canSubmit, children: isOrganization ? "Add organization" : "Add datastore" })] })] }) }));
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatastoreTableSkeleton.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/DatastoreTableSkeleton.tsx"],"names":[],"mappings":"AAKA,wBAAgB,sBAAsB,4CAkBrC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Skeleton } from "#components/skeleton/index";
|
|
3
|
+
import { TableSkeleton } from "#components/table-skeleton/index";
|
|
4
|
+
const gridColsClassName = "grid-cols-[24fr_16fr_18fr_10fr_14fr_10fr_8fr]";
|
|
5
|
+
export function DatastoreTableSkeleton() {
|
|
6
|
+
return (_jsx(TableSkeleton, { gridColsClassName: gridColsClassName, headerColumnCount: 7, renderRow: () => (_jsxs(_Fragment, { children: [_jsx(Skeleton, { className: "h-4 w-3/4 rounded-md" }), _jsx(Skeleton, { className: "h-4 w-2/3 rounded-md" }), _jsx(Skeleton, { className: "h-4 w-5/6 rounded-md" }), _jsx(Skeleton, { className: "h-5 w-2/3 rounded-full" }), _jsx(Skeleton, { className: "h-4 w-2/3 rounded-md" }), _jsx(Skeleton, { className: "h-4 w-1/2 rounded-md" }), _jsx(Skeleton, { className: "h-7 w-16 rounded-lg ml-auto" })] })) }));
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Table } from "@tanstack/react-table";
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
|
+
import type { DatastoreRow } from "../flatten.js";
|
|
4
|
+
import type { StatusFilter } from "../hooks/useDatastoreTable.js";
|
|
5
|
+
type DatastoresToolbarProps = {
|
|
6
|
+
tabs?: ReactNode;
|
|
7
|
+
searchQuery: string;
|
|
8
|
+
onSearchQueryChange: (query: string) => void;
|
|
9
|
+
searchPlaceholder?: string;
|
|
10
|
+
statusFilter: StatusFilter;
|
|
11
|
+
onStatusFilterChange: (status: StatusFilter) => void;
|
|
12
|
+
table: Table<DatastoreRow>;
|
|
13
|
+
columnLabels?: Record<string, string>;
|
|
14
|
+
columnDefaultOrder?: string[];
|
|
15
|
+
};
|
|
16
|
+
export declare function DatastoresToolbar(props: DatastoresToolbarProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=DatastoresToolbar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatastoresToolbar.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/DatastoresToolbar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAQ/D,KAAK,sBAAsB,GAAG;IAC5B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,oBAAoB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IACrD,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,2CA6F9D"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { isPresent } from "@manta-eu/lib/present";
|
|
3
|
+
import { ChevronDown, X } from "lucide-react";
|
|
4
|
+
import { defaultColumnOrder, datastoreColumnLabels } from "../hooks/useDatastoreColumns.js";
|
|
5
|
+
import { datastoreStatusFilterOptions } from "./StatusBadge.js";
|
|
6
|
+
import { Button } from "#components/button/index";
|
|
7
|
+
import { Dropdown, DropdownContent, DropdownGroup, DropdownItem, DropdownTrigger } from "#components/dropdown/index";
|
|
8
|
+
import { FilterSection, FilterSheet } from "#components/filter-sheet/index";
|
|
9
|
+
import { Input } from "#components/input/index";
|
|
10
|
+
import { TableColumnRearrangePopover } from "#components/table/index";
|
|
11
|
+
export function DatastoresToolbar(props) {
|
|
12
|
+
const { tabs, searchQuery, onSearchQueryChange, searchPlaceholder = "Search by name or ID...", statusFilter, onStatusFilterChange, table, columnLabels = datastoreColumnLabels, columnDefaultOrder = defaultColumnOrder, } = props;
|
|
13
|
+
const allStatusesSelected = statusFilter === "ALL";
|
|
14
|
+
const selectedStatusLabel = datastoreStatusFilterOptions.find((option) => option.id === statusFilter)?.label;
|
|
15
|
+
const hasActiveFilters = isPresent(searchQuery) || !allStatusesSelected;
|
|
16
|
+
const activeFilterCount = (isPresent(searchQuery) ? 1 : 0) + (allStatusesSelected ? 0 : 1);
|
|
17
|
+
function handleClearFilters() {
|
|
18
|
+
onSearchQueryChange("");
|
|
19
|
+
onStatusFilterChange("ALL");
|
|
20
|
+
}
|
|
21
|
+
function statusDropdown(className) {
|
|
22
|
+
return (_jsxs(Dropdown, { children: [_jsx(DropdownTrigger, { asChild: true, children: _jsxs(Button, { variant: "tertiary", size: "base", rounded: "lg", className: className, children: [_jsx("span", { children: allStatusesSelected ? "Status" : selectedStatusLabel }), _jsx(ChevronDown, { className: "size-4" })] }) }), _jsx(DropdownContent, { align: "start", className: "w-48", children: _jsx(DropdownGroup, { label: "Filter by status", children: datastoreStatusFilterOptions.map((option) => (_jsx(DropdownItem, { selected: option.id === statusFilter, onClick: () => onStatusFilterChange(option.id), children: option.label }, option.id))) }) })] }));
|
|
23
|
+
}
|
|
24
|
+
function filterControls() {
|
|
25
|
+
return (_jsxs(_Fragment, { children: [statusDropdown(), hasActiveFilters && (_jsx(Button, { variant: "ghost", size: "base", rounded: "lg", onClick: handleClearFilters, icon: X, children: "Clear filters" }))] }));
|
|
26
|
+
}
|
|
27
|
+
const filterSheetContent = _jsx(FilterSection, { title: "Status", children: statusDropdown("w-full justify-between") });
|
|
28
|
+
return (_jsxs("div", { className: "flex min-w-0 flex-col gap-3 3xl:flex-row 3xl:items-center", children: [isPresent(tabs) && _jsx("div", { className: "min-w-0", children: tabs }), _jsxs("div", { className: "flex flex-wrap items-center gap-2 flex-1 min-w-0", children: [_jsx(Input, { containerClassName: "min-w-0 flex-1 sm:w-64 sm:flex-none", type: "search", variant: "search", placeholder: searchPlaceholder, value: searchQuery, onChange: (event) => onSearchQueryChange(event.target.value) }), _jsx("div", { className: "sm:hidden", children: _jsx(FilterSheet, { activeCount: activeFilterCount, onReset: handleClearFilters, children: filterSheetContent }) }), _jsx("div", { className: "hidden sm:contents", children: filterControls() }), _jsx("div", { className: "ml-auto hidden shrink-0 sm:block", children: _jsx(TableColumnRearrangePopover, { enableReset: true, table: table, columnLabels: columnLabels, defaultOrder: columnDefaultOrder }) })] })] }));
|
|
29
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type SuggestedLinkTarget = {
|
|
2
|
+
organizationName: string;
|
|
3
|
+
parentPath: string[];
|
|
4
|
+
name: string;
|
|
5
|
+
};
|
|
6
|
+
export type LinkUnlinkedDatastoreDialogProps = {
|
|
7
|
+
datastoreId: string;
|
|
8
|
+
organizationNames: string[];
|
|
9
|
+
existingOrganizationNames: Set<string>;
|
|
10
|
+
suggestedMatch?: SuggestedLinkTarget;
|
|
11
|
+
onClose: () => void;
|
|
12
|
+
};
|
|
13
|
+
export declare function LinkUnlinkedDatastoreDialog(props: LinkUnlinkedDatastoreDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
//# sourceMappingURL=LinkUnlinkedDatastoreDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkUnlinkedDatastoreDialog.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/LinkUnlinkedDatastoreDialog.tsx"],"names":[],"mappings":"AAqBA,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,yBAAyB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAIF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,gCAAgC,2CAkIlF"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useLinkUnlinkedDatastoreMutation, useDatastoreTreeQuery, useUnlinkedDatastoresQuery } from "@manta-eu/client";
|
|
3
|
+
import { parseError } from "@manta-eu/client/shared/error-utils";
|
|
4
|
+
import { isPresent } from "@manta-eu/lib/present";
|
|
5
|
+
import { useQueryClient } from "@tanstack/react-query";
|
|
6
|
+
import { useState } from "react";
|
|
7
|
+
import { toast } from "sonner";
|
|
8
|
+
import { organizationNameKey } from "../flatten.js";
|
|
9
|
+
import { Button } from "#components/button/index";
|
|
10
|
+
import { Input } from "#components/input/index";
|
|
11
|
+
import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "#components/modal/index";
|
|
12
|
+
import { RadioGroup, RadioGroupItem } from "#components/radio/index";
|
|
13
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "#components/select/index";
|
|
14
|
+
import { useMantaClient } from "#providers/index";
|
|
15
|
+
export function LinkUnlinkedDatastoreDialog(props) {
|
|
16
|
+
const { datastoreId, organizationNames, existingOrganizationNames, suggestedMatch, onClose } = props;
|
|
17
|
+
const { mantaClient } = useMantaClient();
|
|
18
|
+
const queryClient = useQueryClient();
|
|
19
|
+
const [mode, setMode] = useState(suggestedMatch ? "existing" : "new");
|
|
20
|
+
const [organizationName, setOrganizationName] = useState("");
|
|
21
|
+
const [existingOrganizationName, setExistingOrganizationName] = useState(suggestedMatch?.organizationName ?? "");
|
|
22
|
+
const [name, setName] = useState(suggestedMatch?.name ?? "");
|
|
23
|
+
const linkMutation = useLinkUnlinkedDatastoreMutation(mantaClient, {
|
|
24
|
+
onSuccess: (result) => {
|
|
25
|
+
if (result.linkUnlinkedDatastore.success) {
|
|
26
|
+
void queryClient.invalidateQueries({ queryKey: useDatastoreTreeQuery.getKey() });
|
|
27
|
+
void queryClient.invalidateQueries({ queryKey: useUnlinkedDatastoresQuery.getKey() });
|
|
28
|
+
void queryClient.invalidateQueries({ queryKey: ["DatastoreProvisioningStatuses"] });
|
|
29
|
+
toast.success(`Linked to the existing datastore '${datastoreId}'`);
|
|
30
|
+
onClose();
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
toast.error("Couldn't link the datastore", {
|
|
34
|
+
description: result.linkUnlinkedDatastore.error ?? undefined,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
onError: (error) => {
|
|
39
|
+
const info = parseError(error, "Couldn't link the datastore");
|
|
40
|
+
toast.error(info.message, { description: info.description });
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
const canSubmit = mode === "new" ? !!organizationName.trim() : !!existingOrganizationName;
|
|
44
|
+
const atExistingOrganizationRoot = mode === "existing" && !name.trim();
|
|
45
|
+
const suggestedParentPath = suggestedMatch &&
|
|
46
|
+
existingOrganizationName === suggestedMatch.organizationName &&
|
|
47
|
+
name.trim() === suggestedMatch.name
|
|
48
|
+
? suggestedMatch.parentPath
|
|
49
|
+
: [];
|
|
50
|
+
function submit() {
|
|
51
|
+
if (!canSubmit)
|
|
52
|
+
return;
|
|
53
|
+
if (mode === "new" && existingOrganizationNames.has(organizationNameKey(organizationName))) {
|
|
54
|
+
toast.error(`An organization named "${organizationName.trim()}" already exists`, {
|
|
55
|
+
description: "Choose a different name, or link this datastore under that organization instead.",
|
|
56
|
+
});
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const input = mode === "new"
|
|
60
|
+
? {
|
|
61
|
+
datastoreId,
|
|
62
|
+
organizationName: organizationName.trim(),
|
|
63
|
+
name: organizationName.trim(),
|
|
64
|
+
atOrganizationRoot: true,
|
|
65
|
+
}
|
|
66
|
+
: atExistingOrganizationRoot
|
|
67
|
+
? {
|
|
68
|
+
datastoreId,
|
|
69
|
+
organizationName: existingOrganizationName,
|
|
70
|
+
name: existingOrganizationName,
|
|
71
|
+
atOrganizationRoot: true,
|
|
72
|
+
}
|
|
73
|
+
: {
|
|
74
|
+
datastoreId,
|
|
75
|
+
organizationName: existingOrganizationName,
|
|
76
|
+
...(isPresent(suggestedParentPath) ? { parentPath: suggestedParentPath } : {}),
|
|
77
|
+
name: name.trim(),
|
|
78
|
+
atOrganizationRoot: false,
|
|
79
|
+
};
|
|
80
|
+
linkMutation.mutate({ input });
|
|
81
|
+
}
|
|
82
|
+
return (_jsx(Dialog, { open: true, onOpenChange: (nextOpen) => !nextOpen && onClose(), children: _jsxs(DialogContent, { className: "flex flex-col overflow-hidden", children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { text: "Link datastore" }), _jsx(DialogDescription, { children: `Link the existing datastore '${datastoreId}' to an organization or group.` })] }), _jsxs(RadioGroup, { value: mode, onValueChange: (v) => setMode(v), className: "flex gap-4 items-center", children: [_jsx(RadioGroupItem, { value: "new", label: "New organization" }), _jsx(RadioGroupItem, { value: "existing", label: "Existing organization", disabled: !isPresent(organizationNames) })] }), mode === "new" ? (_jsx(Input, { autoFocus: true, label: "Organization name", placeholder: "e.g. Acme Corp", value: organizationName, onChange: (event) => setOrganizationName(event.target.value) })) : (_jsxs(_Fragment, { children: [_jsxs(Select, { value: existingOrganizationName, onValueChange: setExistingOrganizationName, children: [_jsx(SelectTrigger, { label: "Organization", id: "link-organization", children: _jsx(SelectValue, { placeholder: "Select an organization\u2026" }) }), _jsx(SelectContent, { children: organizationNames.map((orgName) => (_jsx(SelectItem, { value: orgName, children: orgName }, orgName))) })] }), _jsx(Input, { label: "Datastore name", placeholder: "Leave empty to link to the organization root", value: name, onChange: (event) => setName(event.target.value) })] })), _jsxs(DialogFooter, { children: [_jsx(Button, { variant: "tertiary", onClick: onClose, children: "Cancel" }), _jsx(Button, { onClick: submit, disabled: !canSubmit || linkMutation.isPending, children: "Link" })] })] }) }));
|
|
83
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DatastoreRow } from "../flatten.js";
|
|
2
|
+
type RenameDatastoreGroupDialogProps = {
|
|
3
|
+
target: DatastoreRow;
|
|
4
|
+
onSubmit: (name: string) => void;
|
|
5
|
+
onCancel: () => void;
|
|
6
|
+
};
|
|
7
|
+
export declare function RenameDatastoreGroupDialog(props: RenameDatastoreGroupDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=RenameDatastoreGroupDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenameDatastoreGroupDialog.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/RenameDatastoreGroupDialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAY/C,KAAK,+BAA+B,GAAG;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,+BAA+B,2CA2ChF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
import { Button } from "#components/button/index";
|
|
4
|
+
import { Input } from "#components/input/index";
|
|
5
|
+
import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "#components/modal/index";
|
|
6
|
+
export function RenameDatastoreGroupDialog(props) {
|
|
7
|
+
const { target, onSubmit, onCancel } = props;
|
|
8
|
+
const [name, setName] = useState(target.name);
|
|
9
|
+
const canSubmit = !!name.trim() && name.trim() !== target.name;
|
|
10
|
+
function submit() {
|
|
11
|
+
if (!canSubmit)
|
|
12
|
+
return;
|
|
13
|
+
onSubmit(name.trim());
|
|
14
|
+
}
|
|
15
|
+
return (_jsx(Dialog, { open: true, onOpenChange: (nextOpen) => !nextOpen && onCancel(), children: _jsxs(DialogContent, { className: "flex flex-col overflow-hidden", children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { text: target.isOrganization ? "Rename organization" : "Rename datastore" }), _jsx(DialogDescription, { children: "Only changes the display name - the datastore id stays the same, so nothing else needs updating." })] }), _jsx(Input, { autoFocus: true, label: target.isOrganization ? "Organization name" : "Name", value: name, onChange: (event) => setName(event.target.value), onKeyDown: (event) => {
|
|
16
|
+
if (event.key === "Enter")
|
|
17
|
+
submit();
|
|
18
|
+
if (event.key === "Escape")
|
|
19
|
+
onCancel();
|
|
20
|
+
} }), _jsxs(DialogFooter, { children: [_jsx(Button, { variant: "tertiary", onClick: onCancel, children: "Cancel" }), _jsx(Button, { onClick: submit, disabled: !canSubmit, children: "Rename" })] })] }) }));
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type DatastoreStatus, type DatastoreStatusCategory } from "#components/datastore-management/tree";
|
|
2
|
+
export type DatastoreStatusFilterValue = "noDatastore" | "checking" | DatastoreStatusCategory;
|
|
3
|
+
export declare function datastoreStatusFilterValue(node: {
|
|
4
|
+
datastoreId?: string;
|
|
5
|
+
removed: boolean;
|
|
6
|
+
isUnlinked?: boolean;
|
|
7
|
+
}, status?: DatastoreStatus): DatastoreStatusFilterValue;
|
|
8
|
+
export declare const datastoreStatusFilterOptions: {
|
|
9
|
+
id: "ALL" | DatastoreStatusFilterValue;
|
|
10
|
+
label: string;
|
|
11
|
+
}[];
|
|
12
|
+
export type DatastoreStatusBadgeProps = {
|
|
13
|
+
node: {
|
|
14
|
+
datastoreId?: string;
|
|
15
|
+
removed: boolean;
|
|
16
|
+
isUnlinked?: boolean;
|
|
17
|
+
};
|
|
18
|
+
status?: DatastoreStatus;
|
|
19
|
+
};
|
|
20
|
+
export declare function DatastoreStatusBadge(props: DatastoreStatusBadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=StatusBadge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusBadge.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/StatusBadge.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC7B,MAAM,uCAAuC,CAAC;AAE/C,MAAM,MAAM,0BAA0B,GAAG,aAAa,GAAG,UAAU,GAAG,uBAAuB,CAAC;AAE9F,wBAAgB,0BAA0B,CACxC,IAAI,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,EACtE,MAAM,CAAC,EAAE,eAAe,GACvB,0BAA0B,CAG5B;AAkCD,eAAO,MAAM,4BAA4B,EAAE;IAAE,EAAE,EAAE,KAAK,GAAG,0BAA0B,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAGnG,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACvE,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,2CAapE"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { isPresent } from "@manta-eu/lib/present";
|
|
3
|
+
import { LoaderCircle } from "lucide-react";
|
|
4
|
+
import { Badge } from "#components/badge/index";
|
|
5
|
+
import { datastoreStatusCategory, } from "#components/datastore-management/tree";
|
|
6
|
+
export function datastoreStatusFilterValue(node, status) {
|
|
7
|
+
if (!isPresent(node.datastoreId))
|
|
8
|
+
return "noDatastore";
|
|
9
|
+
return datastoreStatusCategory(node, status) ?? "checking";
|
|
10
|
+
}
|
|
11
|
+
// The only place these strings live: the badge and the filter dropdown both read from here.
|
|
12
|
+
const badgeConfigByFilterValue = {
|
|
13
|
+
ready: { label: "Ready", variant: "success" },
|
|
14
|
+
materializing: {
|
|
15
|
+
label: "Materializing",
|
|
16
|
+
variant: "warning",
|
|
17
|
+
spinning: true,
|
|
18
|
+
title: "KGC is creating its knowledge graph. This can take a few minutes.",
|
|
19
|
+
},
|
|
20
|
+
notRegistered: {
|
|
21
|
+
label: "Not registered",
|
|
22
|
+
variant: "destructive",
|
|
23
|
+
title: "This id never reached the datastore registry, so nothing will build it. Provision it again.",
|
|
24
|
+
},
|
|
25
|
+
offline: { label: "Offline", variant: "destructive" },
|
|
26
|
+
unavailable: { label: "Status unavailable", variant: "copy" },
|
|
27
|
+
checking: { label: "Checking…", variant: "copy", spinning: true },
|
|
28
|
+
removed: { label: "Removed", variant: "copy" },
|
|
29
|
+
noDatastore: { label: "No datastore", variant: "copy" },
|
|
30
|
+
};
|
|
31
|
+
const filterOptionOrder = [
|
|
32
|
+
"ready",
|
|
33
|
+
"materializing",
|
|
34
|
+
"notRegistered",
|
|
35
|
+
"offline",
|
|
36
|
+
"unavailable",
|
|
37
|
+
"removed",
|
|
38
|
+
];
|
|
39
|
+
export const datastoreStatusFilterOptions = [
|
|
40
|
+
{ id: "ALL", label: "All statuses" },
|
|
41
|
+
...filterOptionOrder.map((id) => ({ id, label: badgeConfigByFilterValue[id].label })),
|
|
42
|
+
];
|
|
43
|
+
export function DatastoreStatusBadge(props) {
|
|
44
|
+
const { node, status } = props;
|
|
45
|
+
if (!isPresent(node.datastoreId))
|
|
46
|
+
return _jsx("span", { className: "typography-tiny text-muted-foreground", children: "\u2014" });
|
|
47
|
+
const config = badgeConfigByFilterValue[datastoreStatusFilterValue(node, status)];
|
|
48
|
+
return (_jsxs(Badge, { size: "sm", variant: config.variant, className: "cursor-default", title: config.title, children: [config.spinning && _jsx(LoaderCircle, { className: "size-3 animate-spin" }), config.label] }));
|
|
49
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Table } from "@tanstack/react-table";
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
|
+
import type { DatastoreRow } from "../flatten.js";
|
|
4
|
+
import type { StatusFilter } from "../hooks/useDatastoreTable.js";
|
|
5
|
+
type UnlinkedDatastoresPanelProps = {
|
|
6
|
+
tabs: ReactNode;
|
|
7
|
+
table: Table<DatastoreRow>;
|
|
8
|
+
rows: DatastoreRow[];
|
|
9
|
+
searchQuery: string;
|
|
10
|
+
onSearchQueryChange: (query: string) => void;
|
|
11
|
+
statusFilter: StatusFilter;
|
|
12
|
+
onStatusFilterChange: (status: StatusFilter) => void;
|
|
13
|
+
columnLabels: Record<string, string>;
|
|
14
|
+
columnDefaultOrder: string[];
|
|
15
|
+
isLoading: boolean;
|
|
16
|
+
errorMessage: string | null;
|
|
17
|
+
};
|
|
18
|
+
export declare function UnlinkedDatastoresPanel(props: UnlinkedDatastoresPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=UnlinkedDatastoresPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnlinkedDatastoresPanel.d.ts","sourceRoot":"","sources":["../../../../src/routes/datastores/components/UnlinkedDatastoresPanel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAQ/D,KAAK,4BAA4B,GAAG;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,YAAY,EAAE,YAAY,CAAC;IAC3B,oBAAoB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IACrD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,2CAmD1E"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { isPresent } from "@manta-eu/lib/present";
|
|
3
|
+
import { Unlink } from "lucide-react";
|
|
4
|
+
import { DatastoresToolbar } from "./DatastoresToolbar.js";
|
|
5
|
+
import { DatastoreTableSkeleton } from "./DatastoreTableSkeleton.js";
|
|
6
|
+
import { Banner } from "#components/banner/index";
|
|
7
|
+
import { EmptyState } from "#components/empty-state/index";
|
|
8
|
+
import { DataTable } from "#components/table/index";
|
|
9
|
+
import { TablePagination } from "#components/table-pagination/index";
|
|
10
|
+
export function UnlinkedDatastoresPanel(props) {
|
|
11
|
+
const { tabs, table, rows, searchQuery, onSearchQueryChange, statusFilter, onStatusFilterChange, columnLabels, columnDefaultOrder, isLoading, errorMessage, } = props;
|
|
12
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { className: "border-b border-muted-border px-5 py-3 shrink-0", children: _jsx(DatastoresToolbar, { tabs: tabs, searchQuery: searchQuery, onSearchQueryChange: onSearchQueryChange, searchPlaceholder: "Search by datastore ID...", statusFilter: statusFilter, onStatusFilterChange: onStatusFilterChange, table: table, columnLabels: columnLabels, columnDefaultOrder: columnDefaultOrder }) }), _jsxs("div", { className: "flex-1 overflow-auto p-4", children: [isLoading && _jsx(DatastoreTableSkeleton, {}), errorMessage && _jsx(Banner, { label: errorMessage }), !isLoading && !isPresent(rows) && (_jsx(EmptyState, { icon: Unlink, title: "No unlinked datastores", description: "Datastores that exist without an organization or group pointing at them show up here, ready to be linked." })), !isLoading && isPresent(rows) && (_jsxs("div", { className: "flex flex-col gap-3", children: [_jsx("div", { className: "rounded-xl border border-muted-border bg-card overflow-hidden", children: _jsx(DataTable, { table: table, noResultsMessage: "No unlinked datastores match your filters." }) }), _jsx(TablePagination, { table: table, total: rows.length })] }))] })] }));
|
|
13
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { GQLDatastoreTreeNode } from "@manta-eu/client";
|
|
2
|
+
import { type Realm } from "@manta-eu/ldo/realm";
|
|
3
|
+
import type { DatastoreStatusFilterValue } from "./components/StatusBadge.js";
|
|
4
|
+
export type DatastoreRow = {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
depth: number;
|
|
8
|
+
organizationId: string;
|
|
9
|
+
organizationName: string;
|
|
10
|
+
organizationAlias: string;
|
|
11
|
+
path: string;
|
|
12
|
+
datastoreId?: string;
|
|
13
|
+
removed: boolean;
|
|
14
|
+
provisionedAt?: string;
|
|
15
|
+
provisionedBy?: string;
|
|
16
|
+
isOrganization: boolean;
|
|
17
|
+
isRealmDefault?: boolean;
|
|
18
|
+
isUnlinked?: boolean;
|
|
19
|
+
};
|
|
20
|
+
export declare function realmDefaultRow(datastoreId: Realm): DatastoreRow;
|
|
21
|
+
export type DatastoreRowVisibility = {
|
|
22
|
+
showArchived: boolean;
|
|
23
|
+
showUnprovisioned: boolean;
|
|
24
|
+
};
|
|
25
|
+
export declare function visibleDatastoreRows(rows: DatastoreRow[], visibility: DatastoreRowVisibility): DatastoreRow[];
|
|
26
|
+
export declare function hiddenRowCount(rows: DatastoreRow[], visibility: DatastoreRowVisibility, key: keyof DatastoreRowVisibility, shownCount: number): number;
|
|
27
|
+
export declare function organizationNameKey(name: string): string;
|
|
28
|
+
export declare function existingOrganizationNameKeys(rows: DatastoreRow[]): Set<string>;
|
|
29
|
+
export declare function organizationNames(rows: DatastoreRow[]): string[];
|
|
30
|
+
export declare function visibilityForStatusFilter(visibility: DatastoreRowVisibility, status: DatastoreStatusFilterValue | "ALL"): DatastoreRowVisibility;
|
|
31
|
+
export declare function unlinkedDatastoreRow(datastoreId: string): DatastoreRow;
|
|
32
|
+
export declare function toDatastoreRows(nodes: GQLDatastoreTreeNode[]): DatastoreRow[];
|
|
33
|
+
//# sourceMappingURL=flatten.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flatten.d.ts","sourceRoot":"","sources":["../../../src/routes/datastores/flatten.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAmB,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGlE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAG3E,MAAM,MAAM,YAAY,GAAG;IAEzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAE1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,cAAc,EAAE,OAAO,CAAC;IAExB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wBAAgB,eAAe,CAAC,WAAW,EAAE,KAAK,GAAG,YAAY,CAchE;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAcF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,sBAAsB,GAAG,YAAY,EAAE,CAG7G;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,YAAY,EAAE,EACpB,UAAU,EAAE,sBAAsB,EAClC,GAAG,EAAE,MAAM,sBAAsB,EACjC,UAAU,EAAE,MAAM,GACjB,MAAM,CAIR;AAGD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAE9E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAEhE;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,sBAAsB,EAClC,MAAM,EAAE,0BAA0B,GAAG,KAAK,GACzC,sBAAsB,CAMxB;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CActE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE,CAe7E"}
|