@flanksource/clicky-ui 0.3.21 → 0.3.22
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/NOTICE.md +14 -0
- package/README.md +8 -1
- package/dist/ai.cjs +10 -0
- package/dist/ai.cjs.map +1 -1
- package/dist/ai.js +10 -0
- package/dist/ai.js.map +1 -1
- package/dist/comments/MentionTextarea.cjs +1 -1
- package/dist/comments/MentionTextarea.cjs.map +1 -1
- package/dist/comments/MentionTextarea.js +1 -1
- package/dist/comments/MentionTextarea.js.map +1 -1
- package/dist/components/AccordionList.cjs +320 -0
- package/dist/components/AccordionList.cjs.map +1 -0
- package/dist/components/AccordionList.d.ts +93 -0
- package/dist/components/AccordionList.d.ts.map +1 -0
- package/dist/components/AccordionList.js +320 -0
- package/dist/components/AccordionList.js.map +1 -0
- package/dist/components/Combobox.cjs +41 -3
- package/dist/components/Combobox.cjs.map +1 -1
- package/dist/components/Combobox.d.ts.map +1 -1
- package/dist/components/Combobox.js +42 -4
- package/dist/components/Combobox.js.map +1 -1
- package/dist/components/ComboboxControl.cjs +6 -0
- package/dist/components/ComboboxControl.cjs.map +1 -1
- package/dist/components/ComboboxControl.d.ts +7 -3
- package/dist/components/ComboboxControl.d.ts.map +1 -1
- package/dist/components/ComboboxControl.js +6 -0
- package/dist/components/ComboboxControl.js.map +1 -1
- package/dist/components/ComboboxMenu.cjs +2 -1
- package/dist/components/ComboboxMenu.cjs.map +1 -1
- package/dist/components/ComboboxMenu.d.ts +3 -1
- package/dist/components/ComboboxMenu.d.ts.map +1 -1
- package/dist/components/ComboboxMenu.js +2 -1
- package/dist/components/ComboboxMenu.js.map +1 -1
- package/dist/components/ComboboxTags.cjs +42 -11
- package/dist/components/ComboboxTags.cjs.map +1 -1
- package/dist/components/ComboboxTags.d.ts +5 -2
- package/dist/components/ComboboxTags.d.ts.map +1 -1
- package/dist/components/ComboboxTags.js +42 -11
- package/dist/components/ComboboxTags.js.map +1 -1
- package/dist/components/ConnectionLoggingPolicy.cjs +268 -0
- package/dist/components/ConnectionLoggingPolicy.cjs.map +1 -0
- package/dist/components/ConnectionLoggingPolicy.d.ts +3 -0
- package/dist/components/ConnectionLoggingPolicy.d.ts.map +1 -0
- package/dist/components/ConnectionLoggingPolicy.js +268 -0
- package/dist/components/ConnectionLoggingPolicy.js.map +1 -0
- package/dist/components/ConnectionLoggingPolicy.model.cjs +52 -0
- package/dist/components/ConnectionLoggingPolicy.model.cjs.map +1 -0
- package/dist/components/ConnectionLoggingPolicy.model.d.ts +35 -0
- package/dist/components/ConnectionLoggingPolicy.model.d.ts.map +1 -0
- package/dist/components/ConnectionLoggingPolicy.model.js +52 -0
- package/dist/components/ConnectionLoggingPolicy.model.js.map +1 -0
- package/dist/components/DaemonSetIcon.cjs +20 -0
- package/dist/components/DaemonSetIcon.cjs.map +1 -0
- package/dist/components/DaemonSetIcon.d.ts +8 -0
- package/dist/components/DaemonSetIcon.d.ts.map +1 -0
- package/dist/components/DaemonSetIcon.js +20 -0
- package/dist/components/DaemonSetIcon.js.map +1 -0
- package/dist/components/DateField.cjs.map +1 -1
- package/dist/components/DateField.d.ts +11 -3
- package/dist/components/DateField.d.ts.map +1 -1
- package/dist/components/DateField.js.map +1 -1
- package/dist/components/DatePicker.cjs +6 -1
- package/dist/components/DatePicker.cjs.map +1 -1
- package/dist/components/DatePicker.d.ts +11 -3
- package/dist/components/DatePicker.d.ts.map +1 -1
- package/dist/components/DatePicker.js +6 -1
- package/dist/components/DatePicker.js.map +1 -1
- package/dist/components/EndpointSelector.cjs +29 -8
- package/dist/components/EndpointSelector.cjs.map +1 -1
- package/dist/components/EndpointSelector.d.ts +1 -1
- package/dist/components/EndpointSelector.d.ts.map +1 -1
- package/dist/components/EndpointSelector.js +29 -8
- package/dist/components/EndpointSelector.js.map +1 -1
- package/dist/components/EndpointSelector.model.cjs.map +1 -1
- package/dist/components/EndpointSelector.model.d.ts +5 -0
- package/dist/components/EndpointSelector.model.d.ts.map +1 -1
- package/dist/components/EndpointSelector.model.js.map +1 -1
- package/dist/components/FilterBar.cjs +43 -19
- package/dist/components/FilterBar.cjs.map +1 -1
- package/dist/components/FilterBar.d.ts +21 -1
- package/dist/components/FilterBar.d.ts.map +1 -1
- package/dist/components/FilterBar.js +41 -17
- package/dist/components/FilterBar.js.map +1 -1
- package/dist/components/InputField.cjs +14 -2
- package/dist/components/InputField.cjs.map +1 -1
- package/dist/components/InputField.d.ts +6 -0
- package/dist/components/InputField.d.ts.map +1 -1
- package/dist/components/InputField.js +14 -2
- package/dist/components/InputField.js.map +1 -1
- package/dist/components/ItemActions.cjs +87 -0
- package/dist/components/ItemActions.cjs.map +1 -0
- package/dist/components/ItemActions.d.ts +33 -0
- package/dist/components/ItemActions.d.ts.map +1 -0
- package/dist/components/ItemActions.js +87 -0
- package/dist/components/ItemActions.js.map +1 -0
- package/dist/components/JsonSchemaForm.cjs +1 -1
- package/dist/components/JsonSchemaForm.cjs.map +1 -1
- package/dist/components/JsonSchemaForm.js +1 -1
- package/dist/components/JsonSchemaForm.js.map +1 -1
- package/dist/components/MdxEditorCallout.cjs +108 -0
- package/dist/components/MdxEditorCallout.cjs.map +1 -0
- package/dist/components/MdxEditorCallout.d.ts +27 -0
- package/dist/components/MdxEditorCallout.d.ts.map +1 -0
- package/dist/components/MdxEditorCallout.js +108 -0
- package/dist/components/MdxEditorCallout.js.map +1 -0
- package/dist/components/MdxEditorField.cjs.map +1 -1
- package/dist/components/MdxEditorField.d.ts +1 -1
- package/dist/components/MdxEditorField.d.ts.map +1 -1
- package/dist/components/MdxEditorField.js.map +1 -1
- package/dist/components/MdxEditorToolbar.cjs +10 -2
- package/dist/components/MdxEditorToolbar.cjs.map +1 -1
- package/dist/components/MdxEditorToolbar.d.ts.map +1 -1
- package/dist/components/MdxEditorToolbar.js +10 -2
- package/dist/components/MdxEditorToolbar.js.map +1 -1
- package/dist/components/MultiSelect.cjs +3 -1
- package/dist/components/MultiSelect.cjs.map +1 -1
- package/dist/components/MultiSelect.d.ts.map +1 -1
- package/dist/components/MultiSelect.js +3 -1
- package/dist/components/MultiSelect.js.map +1 -1
- package/dist/components/NamespacePicker.cjs +1 -0
- package/dist/components/NamespacePicker.cjs.map +1 -1
- package/dist/components/NamespacePicker.d.ts.map +1 -1
- package/dist/components/NamespacePicker.js +1 -0
- package/dist/components/NamespacePicker.js.map +1 -1
- package/dist/components/WorkloadPicker.cjs +117 -31
- package/dist/components/WorkloadPicker.cjs.map +1 -1
- package/dist/components/WorkloadPicker.d.ts +29 -5
- package/dist/components/WorkloadPicker.d.ts.map +1 -1
- package/dist/components/WorkloadPicker.js +119 -33
- package/dist/components/WorkloadPicker.js.map +1 -1
- package/dist/components/button-variants.d.ts +1 -1
- package/dist/components/button.d.ts +1 -1
- package/dist/components/combobox-types.d.ts +13 -0
- package/dist/components/combobox-types.d.ts.map +1 -1
- package/dist/components/combobox-utils.cjs +16 -0
- package/dist/components/combobox-utils.cjs.map +1 -1
- package/dist/components/combobox-utils.d.ts +1 -0
- package/dist/components/combobox-utils.d.ts.map +1 -1
- package/dist/components/combobox-utils.js +16 -0
- package/dist/components/combobox-utils.js.map +1 -1
- package/dist/components/filter-bar-multi.cjs +1 -1
- package/dist/components/filter-bar-multi.cjs.map +1 -1
- package/dist/components/filter-bar-multi.js +1 -1
- package/dist/components/filter-bar-multi.js.map +1 -1
- package/dist/components/filter-bar-utils.cjs +14 -2
- package/dist/components/filter-bar-utils.cjs.map +1 -1
- package/dist/components/filter-bar-utils.d.ts +2 -1
- package/dist/components/filter-bar-utils.d.ts.map +1 -1
- package/dist/components/filter-bar-utils.js +14 -2
- package/dist/components/filter-bar-utils.js.map +1 -1
- package/dist/components/jotai-bindings-core.cjs +11 -0
- package/dist/components/jotai-bindings-core.cjs.map +1 -1
- package/dist/components/jotai-bindings-core.d.ts +3 -2
- package/dist/components/jotai-bindings-core.d.ts.map +1 -1
- package/dist/components/jotai-bindings-core.js +11 -0
- package/dist/components/jotai-bindings-core.js.map +1 -1
- package/dist/components/json-schema-form-accordion-array.cjs +54 -190
- package/dist/components/json-schema-form-accordion-array.cjs.map +1 -1
- package/dist/components/json-schema-form-accordion-array.d.ts.map +1 -1
- package/dist/components/json-schema-form-accordion-array.js +59 -195
- package/dist/components/json-schema-form-accordion-array.js.map +1 -1
- package/dist/components/json-schema-form-array.cjs +46 -146
- package/dist/components/json-schema-form-array.cjs.map +1 -1
- package/dist/components/json-schema-form-array.d.ts.map +1 -1
- package/dist/components/json-schema-form-array.js +47 -147
- package/dist/components/json-schema-form-array.js.map +1 -1
- package/dist/components/json-schema-form-cards-array.cjs +9 -7
- package/dist/components/json-schema-form-cards-array.cjs.map +1 -1
- package/dist/components/json-schema-form-cards-array.d.ts.map +1 -1
- package/dist/components/json-schema-form-cards-array.js +11 -9
- package/dist/components/json-schema-form-cards-array.js.map +1 -1
- package/dist/components/json-schema-form-error-display.js +1 -1
- package/dist/components/json-schema-form-errors.cjs +17 -4
- package/dist/components/json-schema-form-errors.cjs.map +1 -1
- package/dist/components/json-schema-form-errors.d.ts +1 -0
- package/dist/components/json-schema-form-errors.d.ts.map +1 -1
- package/dist/components/json-schema-form-errors.js +16 -3
- package/dist/components/json-schema-form-errors.js.map +1 -1
- package/dist/components/json-schema-form-fields.cjs +18 -2
- package/dist/components/json-schema-form-fields.cjs.map +1 -1
- package/dist/components/json-schema-form-fields.d.ts.map +1 -1
- package/dist/components/json-schema-form-fields.js +18 -2
- package/dist/components/json-schema-form-fields.js.map +1 -1
- package/dist/components/json-schema-form-item-row.cjs +17 -46
- package/dist/components/json-schema-form-item-row.cjs.map +1 -1
- package/dist/components/json-schema-form-item-row.d.ts +3 -10
- package/dist/components/json-schema-form-item-row.d.ts.map +1 -1
- package/dist/components/json-schema-form-item-row.js +18 -47
- package/dist/components/json-schema-form-item-row.js.map +1 -1
- package/dist/components/json-schema-form-item-summary.cjs +18 -4
- package/dist/components/json-schema-form-item-summary.cjs.map +1 -1
- package/dist/components/json-schema-form-item-summary.d.ts +2 -1
- package/dist/components/json-schema-form-item-summary.d.ts.map +1 -1
- package/dist/components/json-schema-form-item-summary.js +15 -1
- package/dist/components/json-schema-form-item-summary.js.map +1 -1
- package/dist/components/json-schema-form-lookup-tree.cjs +2 -5
- package/dist/components/json-schema-form-lookup-tree.cjs.map +1 -1
- package/dist/components/json-schema-form-lookup-tree.d.ts.map +1 -1
- package/dist/components/json-schema-form-lookup-tree.js +2 -5
- package/dist/components/json-schema-form-lookup-tree.js.map +1 -1
- package/dist/components/json-schema-form-object.cjs +3 -2
- package/dist/components/json-schema-form-object.cjs.map +1 -1
- package/dist/components/json-schema-form-object.d.ts.map +1 -1
- package/dist/components/json-schema-form-object.js +2 -1
- package/dist/components/json-schema-form-object.js.map +1 -1
- package/dist/components/json-schema-form-render.cjs +4 -1
- package/dist/components/json-schema-form-render.cjs.map +1 -1
- package/dist/components/json-schema-form-render.d.ts.map +1 -1
- package/dist/components/json-schema-form-render.js +5 -2
- package/dist/components/json-schema-form-render.js.map +1 -1
- package/dist/components/json-schema-form-resolve.cjs +21 -13
- package/dist/components/json-schema-form-resolve.cjs.map +1 -1
- package/dist/components/json-schema-form-resolve.d.ts +2 -2
- package/dist/components/json-schema-form-resolve.d.ts.map +1 -1
- package/dist/components/json-schema-form-resolve.js +16 -8
- package/dist/components/json-schema-form-resolve.js.map +1 -1
- package/dist/components/json-schema-form-table-array.cjs +4 -3
- package/dist/components/json-schema-form-table-array.cjs.map +1 -1
- package/dist/components/json-schema-form-table-array.d.ts.map +1 -1
- package/dist/components/json-schema-form-table-array.js +2 -1
- package/dist/components/json-schema-form-table-array.js.map +1 -1
- package/dist/components/json-schema-form-tags-combobox.cjs +55 -0
- package/dist/components/json-schema-form-tags-combobox.cjs.map +1 -0
- package/dist/components/json-schema-form-tags-combobox.d.ts +17 -0
- package/dist/components/json-schema-form-tags-combobox.d.ts.map +1 -0
- package/dist/components/json-schema-form-tags-combobox.js +55 -0
- package/dist/components/json-schema-form-tags-combobox.js.map +1 -0
- package/dist/components/json-schema-form-types.d.ts +8 -1
- package/dist/components/json-schema-form-types.d.ts.map +1 -1
- package/dist/components/json-schema-form-utils.cjs +5 -28
- package/dist/components/json-schema-form-utils.cjs.map +1 -1
- package/dist/components/json-schema-form-utils.d.ts +1 -5
- package/dist/components/json-schema-form-utils.d.ts.map +1 -1
- package/dist/components/json-schema-form-utils.js +5 -28
- package/dist/components/json-schema-form-utils.js.map +1 -1
- package/dist/components/jsonPathTree.cjs +10 -3
- package/dist/components/jsonPathTree.cjs.map +1 -1
- package/dist/components/jsonPathTree.d.ts +17 -0
- package/dist/components/jsonPathTree.d.ts.map +1 -1
- package/dist/components/jsonPathTree.js +10 -3
- package/dist/components/jsonPathTree.js.map +1 -1
- package/dist/components/mdx-editor-callout-model.cjs +26 -0
- package/dist/components/mdx-editor-callout-model.cjs.map +1 -0
- package/dist/components/mdx-editor-callout-model.d.ts +14 -0
- package/dist/components/mdx-editor-callout-model.d.ts.map +1 -0
- package/dist/components/mdx-editor-callout-model.js +26 -0
- package/dist/components/mdx-editor-callout-model.js.map +1 -0
- package/dist/components/mdx-editor-callout.cjs +39 -0
- package/dist/components/mdx-editor-callout.cjs.map +1 -0
- package/dist/components/mdx-editor-callout.d.ts +27 -0
- package/dist/components/mdx-editor-callout.d.ts.map +1 -0
- package/dist/components/mdx-editor-callout.js +39 -0
- package/dist/components/mdx-editor-callout.js.map +1 -0
- package/dist/components/mdx-editor-field-plugins.cjs +14 -0
- package/dist/components/mdx-editor-field-plugins.cjs.map +1 -1
- package/dist/components/mdx-editor-field-plugins.d.ts.map +1 -1
- package/dist/components/mdx-editor-field-plugins.js +14 -0
- package/dist/components/mdx-editor-field-plugins.js.map +1 -1
- package/dist/components/mdx-editor-jsx-attributes.cjs +23 -0
- package/dist/components/mdx-editor-jsx-attributes.cjs.map +1 -0
- package/dist/components/mdx-editor-jsx-attributes.d.ts +29 -0
- package/dist/components/mdx-editor-jsx-attributes.d.ts.map +1 -0
- package/dist/components/mdx-editor-jsx-attributes.js +23 -0
- package/dist/components/mdx-editor-jsx-attributes.js.map +1 -0
- package/dist/components/mdx-editor-options.d.ts +79 -0
- package/dist/components/mdx-editor-options.d.ts.map +1 -1
- package/dist/components/workload-picker-utils.cjs +17 -4
- package/dist/components/workload-picker-utils.cjs.map +1 -1
- package/dist/components/workload-picker-utils.d.ts +3 -1
- package/dist/components/workload-picker-utils.d.ts.map +1 -1
- package/dist/components/workload-picker-utils.js +18 -5
- package/dist/components/workload-picker-utils.js.map +1 -1
- package/dist/components.cjs +13 -0
- package/dist/components.cjs.map +1 -1
- package/dist/components.d.ts +8 -3
- package/dist/components.d.ts.map +1 -1
- package/dist/components.js +13 -0
- package/dist/components.js.map +1 -1
- package/dist/data/Callout.cjs +48 -0
- package/dist/data/Callout.cjs.map +1 -0
- package/dist/data/Callout.d.ts +58 -0
- package/dist/data/Callout.d.ts.map +1 -0
- package/dist/data/Callout.js +48 -0
- package/dist/data/Callout.js.map +1 -0
- package/dist/data/Clicky.cjs +307 -248
- package/dist/data/Clicky.cjs.map +1 -1
- package/dist/data/Clicky.d.ts +37 -2
- package/dist/data/Clicky.d.ts.map +1 -1
- package/dist/data/Clicky.js +310 -251
- package/dist/data/Clicky.js.map +1 -1
- package/dist/data/DataTable.cjs +245 -115
- package/dist/data/DataTable.cjs.map +1 -1
- package/dist/data/DataTable.d.ts +48 -3
- package/dist/data/DataTable.d.ts.map +1 -1
- package/dist/data/DataTable.grouping.cjs.map +1 -1
- package/dist/data/DataTable.grouping.d.ts +11 -1
- package/dist/data/DataTable.grouping.d.ts.map +1 -1
- package/dist/data/DataTable.grouping.js.map +1 -1
- package/dist/data/DataTable.js +247 -117
- package/dist/data/DataTable.js.map +1 -1
- package/dist/data/Markdown.cjs +31 -2
- package/dist/data/Markdown.cjs.map +1 -1
- package/dist/data/Markdown.d.ts +10 -1
- package/dist/data/Markdown.d.ts.map +1 -1
- package/dist/data/Markdown.js +31 -2
- package/dist/data/Markdown.js.map +1 -1
- package/dist/data/MarkdownEditor.cjs +1 -1
- package/dist/data/MarkdownEditor.cjs.map +1 -1
- package/dist/data/MarkdownEditor.js +1 -1
- package/dist/data/MarkdownEditor.js.map +1 -1
- package/dist/data/ObjectGraph.cjs +108 -23
- package/dist/data/ObjectGraph.cjs.map +1 -1
- package/dist/data/ObjectGraph.d.ts +28 -22
- package/dist/data/ObjectGraph.d.ts.map +1 -1
- package/dist/data/ObjectGraph.js +109 -24
- package/dist/data/ObjectGraph.js.map +1 -1
- package/dist/data/PromptBanner.cjs +1 -1
- package/dist/data/PromptBanner.cjs.map +1 -1
- package/dist/data/PromptBanner.js +1 -1
- package/dist/data/PromptBanner.js.map +1 -1
- package/dist/data/Tree.cjs +39 -35
- package/dist/data/Tree.cjs.map +1 -1
- package/dist/data/Tree.d.ts +7 -1
- package/dist/data/Tree.d.ts.map +1 -1
- package/dist/data/Tree.js +39 -35
- package/dist/data/Tree.js.map +1 -1
- package/dist/data/ai/ChatButton.cjs +26 -0
- package/dist/data/ai/ChatButton.cjs.map +1 -0
- package/dist/data/ai/ChatButton.d.ts +5 -0
- package/dist/data/ai/ChatButton.d.ts.map +1 -0
- package/dist/data/ai/ChatButton.js +26 -0
- package/dist/data/ai/ChatButton.js.map +1 -0
- package/dist/data/ai/ChatFab.cjs +11 -6
- package/dist/data/ai/ChatFab.cjs.map +1 -1
- package/dist/data/ai/ChatFab.d.ts +5 -3
- package/dist/data/ai/ChatFab.d.ts.map +1 -1
- package/dist/data/ai/ChatFab.js +11 -6
- package/dist/data/ai/ChatFab.js.map +1 -1
- package/dist/data/ai/PromptRunEditor/index.cjs +16 -4
- package/dist/data/ai/PromptRunEditor/index.cjs.map +1 -1
- package/dist/data/ai/PromptRunEditor/index.d.ts +7 -2
- package/dist/data/ai/PromptRunEditor/index.d.ts.map +1 -1
- package/dist/data/ai/PromptRunEditor/index.js +16 -4
- package/dist/data/ai/PromptRunEditor/index.js.map +1 -1
- package/dist/data/ai/SandboxConnectionsSection.cjs +71 -0
- package/dist/data/ai/SandboxConnectionsSection.cjs.map +1 -0
- package/dist/data/ai/SandboxConnectionsSection.d.ts +8 -0
- package/dist/data/ai/SandboxConnectionsSection.d.ts.map +1 -0
- package/dist/data/ai/SandboxConnectionsSection.js +71 -0
- package/dist/data/ai/SandboxConnectionsSection.js.map +1 -0
- package/dist/data/ai/SandboxCreateWizard.cjs +288 -0
- package/dist/data/ai/SandboxCreateWizard.cjs.map +1 -0
- package/dist/data/ai/SandboxCreateWizard.d.ts +11 -0
- package/dist/data/ai/SandboxCreateWizard.d.ts.map +1 -0
- package/dist/data/ai/SandboxCreateWizard.js +288 -0
- package/dist/data/ai/SandboxCreateWizard.js.map +1 -0
- package/dist/data/ai/SandboxCreateWizard.model.cjs +77 -0
- package/dist/data/ai/SandboxCreateWizard.model.cjs.map +1 -0
- package/dist/data/ai/SandboxCreateWizard.model.d.ts +32 -0
- package/dist/data/ai/SandboxCreateWizard.model.d.ts.map +1 -0
- package/dist/data/ai/SandboxCreateWizard.model.js +77 -0
- package/dist/data/ai/SandboxCreateWizard.model.js.map +1 -0
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.cjs +6 -6
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.js +6 -6
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.cjs +11 -8
- package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.js +11 -8
- package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/SandboxSection.cjs +247 -0
- package/dist/data/ai/SpecRuntimeEditor/SandboxSection.cjs.map +1 -0
- package/dist/data/ai/SpecRuntimeEditor/SandboxSection.d.ts +12 -0
- package/dist/data/ai/SpecRuntimeEditor/SandboxSection.d.ts.map +1 -0
- package/dist/data/ai/SpecRuntimeEditor/SandboxSection.js +247 -0
- package/dist/data/ai/SpecRuntimeEditor/SandboxSection.js.map +1 -0
- package/dist/data/ai/SpecRuntimeEditor/fields.cjs +31 -22
- package/dist/data/ai/SpecRuntimeEditor/fields.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/fields.d.ts +6 -4
- package/dist/data/ai/SpecRuntimeEditor/fields.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/fields.js +32 -23
- package/dist/data/ai/SpecRuntimeEditor/fields.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/index.cjs +15 -1
- package/dist/data/ai/SpecRuntimeEditor/index.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/index.d.ts +8 -3
- package/dist/data/ai/SpecRuntimeEditor/index.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/index.js +15 -1
- package/dist/data/ai/SpecRuntimeEditor/index.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/types.cjs +11 -0
- package/dist/data/ai/SpecRuntimeEditor/types.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/types.d.ts +53 -1
- package/dist/data/ai/SpecRuntimeEditor/types.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/types.js +11 -0
- package/dist/data/ai/SpecRuntimeEditor/types.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/update.cjs +23 -0
- package/dist/data/ai/SpecRuntimeEditor/update.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/update.d.ts +23 -1
- package/dist/data/ai/SpecRuntimeEditor/update.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/update.js +23 -0
- package/dist/data/ai/SpecRuntimeEditor/update.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor.model.cjs +28 -0
- package/dist/data/ai/SpecRuntimeEditor.model.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor.model.d.ts +35 -0
- package/dist/data/ai/SpecRuntimeEditor.model.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor.model.js +28 -0
- package/dist/data/ai/SpecRuntimeEditor.model.js.map +1 -1
- package/dist/data/ai/index.d.ts +6 -2
- package/dist/data/ai/index.d.ts.map +1 -1
- package/dist/data/ai/sandbox-kind-meta.cjs +16 -0
- package/dist/data/ai/sandbox-kind-meta.cjs.map +1 -0
- package/dist/data/ai/sandbox-kind-meta.d.ts +8 -0
- package/dist/data/ai/sandbox-kind-meta.d.ts.map +1 -0
- package/dist/data/ai/sandbox-kind-meta.js +16 -0
- package/dist/data/ai/sandbox-kind-meta.js.map +1 -0
- package/dist/data/badge-variants.d.ts +1 -1
- package/dist/data/cache-browser/CacheTree.cjs +1 -1
- package/dist/data/cache-browser/CacheTree.cjs.map +1 -1
- package/dist/data/cache-browser/CacheTree.js +1 -1
- package/dist/data/cache-browser/CacheTree.js.map +1 -1
- package/dist/data/callout-tones.cjs +95 -0
- package/dist/data/callout-tones.cjs.map +1 -0
- package/dist/data/callout-tones.d.ts +32 -0
- package/dist/data/callout-tones.d.ts.map +1 -0
- package/dist/data/callout-tones.js +95 -0
- package/dist/data/callout-tones.js.map +1 -0
- package/dist/data/chat/PromptInput.cjs +1 -1
- package/dist/data/chat/PromptInput.cjs.map +1 -1
- package/dist/data/chat/PromptInput.js +1 -1
- package/dist/data/chat/PromptInput.js.map +1 -1
- package/dist/data/clicky-export/ClickyExportDialog.cjs +145 -0
- package/dist/data/clicky-export/ClickyExportDialog.cjs.map +1 -0
- package/dist/data/clicky-export/ClickyExportDialog.d.ts +43 -0
- package/dist/data/clicky-export/ClickyExportDialog.d.ts.map +1 -0
- package/dist/data/clicky-export/ClickyExportDialog.js +145 -0
- package/dist/data/clicky-export/ClickyExportDialog.js.map +1 -0
- package/dist/data/clicky-export/index.d.ts +3 -0
- package/dist/data/clicky-export/index.d.ts.map +1 -0
- package/dist/data/clicky-export/useClickyExport.cjs +44 -0
- package/dist/data/clicky-export/useClickyExport.cjs.map +1 -0
- package/dist/data/clicky-export/useClickyExport.d.ts +30 -0
- package/dist/data/clicky-export/useClickyExport.d.ts.map +1 -0
- package/dist/data/clicky-export/useClickyExport.js +44 -0
- package/dist/data/clicky-export/useClickyExport.js.map +1 -0
- package/dist/data/data-table-server-filters.cjs +15 -2
- package/dist/data/data-table-server-filters.cjs.map +1 -1
- package/dist/data/data-table-server-filters.d.ts +12 -1
- package/dist/data/data-table-server-filters.d.ts.map +1 -1
- package/dist/data/data-table-server-filters.js +15 -2
- package/dist/data/data-table-server-filters.js.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.cjs +29 -7
- package/dist/data/diagnostics/ErrorDetails.cjs.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.d.ts +2 -1
- package/dist/data/diagnostics/ErrorDetails.d.ts.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.js +29 -7
- package/dist/data/diagnostics/ErrorDetails.js.map +1 -1
- package/dist/data/diagnostics/error-diagnostics.cjs +17 -2
- package/dist/data/diagnostics/error-diagnostics.cjs.map +1 -1
- package/dist/data/diagnostics/error-diagnostics.d.ts +5 -0
- package/dist/data/diagnostics/error-diagnostics.d.ts.map +1 -1
- package/dist/data/diagnostics/error-diagnostics.js +17 -2
- package/dist/data/diagnostics/error-diagnostics.js.map +1 -1
- package/dist/data/logs-normalize.cjs +18 -3
- package/dist/data/logs-normalize.cjs.map +1 -1
- package/dist/data/logs-normalize.d.ts +17 -0
- package/dist/data/logs-normalize.d.ts.map +1 -1
- package/dist/data/logs-normalize.js +18 -3
- package/dist/data/logs-normalize.js.map +1 -1
- package/dist/data/object-graph-nodes.cjs +24 -0
- package/dist/data/object-graph-nodes.cjs.map +1 -0
- package/dist/data/object-graph-nodes.d.ts +34 -0
- package/dist/data/object-graph-nodes.d.ts.map +1 -0
- package/dist/data/object-graph-nodes.js +24 -0
- package/dist/data/object-graph-nodes.js.map +1 -0
- package/dist/data/query-browser/QueryBrowser.cjs +52 -32
- package/dist/data/query-browser/QueryBrowser.cjs.map +1 -1
- package/dist/data/query-browser/QueryBrowser.d.ts +1 -1
- package/dist/data/query-browser/QueryBrowser.d.ts.map +1 -1
- package/dist/data/query-browser/QueryBrowser.js +53 -33
- package/dist/data/query-browser/QueryBrowser.js.map +1 -1
- package/dist/data/query-browser/QueryBrowser.types.cjs.map +1 -1
- package/dist/data/query-browser/QueryBrowser.types.d.ts +12 -0
- package/dist/data/query-browser/QueryBrowser.types.d.ts.map +1 -1
- package/dist/data/query-browser/QueryBrowser.types.js.map +1 -1
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.cjs +58 -10
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.cjs.map +1 -1
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.d.ts.map +1 -1
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.js +58 -10
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.js.map +1 -1
- package/dist/data/query-browser/QueryBrowserResults.cjs +4 -4
- package/dist/data/query-browser/QueryBrowserResults.cjs.map +1 -1
- package/dist/data/query-browser/QueryBrowserResults.d.ts +4 -2
- package/dist/data/query-browser/QueryBrowserResults.d.ts.map +1 -1
- package/dist/data/query-browser/QueryBrowserResults.js +4 -4
- package/dist/data/query-browser/QueryBrowserResults.js.map +1 -1
- package/dist/data/query-info/QueryInfoDialog.cjs +106 -0
- package/dist/data/query-info/QueryInfoDialog.cjs.map +1 -0
- package/dist/data/query-info/QueryInfoDialog.d.ts +16 -0
- package/dist/data/query-info/QueryInfoDialog.d.ts.map +1 -0
- package/dist/data/query-info/QueryInfoDialog.js +106 -0
- package/dist/data/query-info/QueryInfoDialog.js.map +1 -0
- package/dist/data/query-info/index.d.ts +4 -0
- package/dist/data/query-info/index.d.ts.map +1 -0
- package/dist/data/query-info/queryInfo.cjs +42 -0
- package/dist/data/query-info/queryInfo.cjs.map +1 -0
- package/dist/data/query-info/queryInfo.d.ts +45 -0
- package/dist/data/query-info/queryInfo.d.ts.map +1 -0
- package/dist/data/query-info/queryInfo.js +42 -0
- package/dist/data/query-info/queryInfo.js.map +1 -0
- package/dist/data/query-info/useQueryInfo.cjs +48 -0
- package/dist/data/query-info/useQueryInfo.cjs.map +1 -0
- package/dist/data/query-info/useQueryInfo.d.ts +26 -0
- package/dist/data/query-info/useQueryInfo.d.ts.map +1 -0
- package/dist/data/query-info/useQueryInfo.js +48 -0
- package/dist/data/query-info/useQueryInfo.js.map +1 -0
- package/dist/data/use-infinite-rows.cjs +20 -0
- package/dist/data/use-infinite-rows.cjs.map +1 -0
- package/dist/data/use-infinite-rows.d.ts +20 -0
- package/dist/data/use-infinite-rows.d.ts.map +1 -0
- package/dist/data/use-infinite-rows.js +20 -0
- package/dist/data/use-infinite-rows.js.map +1 -0
- package/dist/data/version-info.cjs +3 -3
- package/dist/data/version-info.js +3 -3
- package/dist/data.cjs +44 -0
- package/dist/data.cjs.map +1 -1
- package/dist/data.d.ts +8 -3
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +44 -0
- package/dist/data.js.map +1 -1
- package/dist/hooks/use-log-tail.cjs +213 -0
- package/dist/hooks/use-log-tail.cjs.map +1 -0
- package/dist/hooks/use-log-tail.d.ts +112 -0
- package/dist/hooks/use-log-tail.d.ts.map +1 -0
- package/dist/hooks/use-log-tail.js +213 -0
- package/dist/hooks/use-log-tail.js.map +1 -0
- package/dist/hooks.cjs +10 -0
- package/dist/hooks.cjs.map +1 -1
- package/dist/hooks.d.ts +2 -0
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +10 -0
- package/dist/hooks.js.map +1 -1
- package/dist/icons/components/UiArrowsCounterClockwise.cjs +15 -0
- package/dist/icons/components/UiArrowsCounterClockwise.cjs.map +1 -0
- package/dist/icons/components/UiArrowsCounterClockwise.d.ts +15 -0
- package/dist/icons/components/UiArrowsCounterClockwise.d.ts.map +1 -0
- package/dist/icons/components/UiArrowsCounterClockwise.js +15 -0
- package/dist/icons/components/UiArrowsCounterClockwise.js.map +1 -0
- package/dist/icons/components/UiClipboardText.cjs +15 -0
- package/dist/icons/components/UiClipboardText.cjs.map +1 -0
- package/dist/icons/components/UiClipboardText.d.ts +15 -0
- package/dist/icons/components/UiClipboardText.d.ts.map +1 -0
- package/dist/icons/components/UiClipboardText.js +15 -0
- package/dist/icons/components/UiClipboardText.js.map +1 -0
- package/dist/icons/components/UiIdentificationCard.cjs +15 -0
- package/dist/icons/components/UiIdentificationCard.cjs.map +1 -0
- package/dist/icons/components/UiIdentificationCard.d.ts +15 -0
- package/dist/icons/components/UiIdentificationCard.d.ts.map +1 -0
- package/dist/icons/components/UiIdentificationCard.js +15 -0
- package/dist/icons/components/UiIdentificationCard.js.map +1 -0
- package/dist/icons/components/UiLockKey.cjs +15 -0
- package/dist/icons/components/UiLockKey.cjs.map +1 -0
- package/dist/icons/components/UiLockKey.d.ts +15 -0
- package/dist/icons/components/UiLockKey.d.ts.map +1 -0
- package/dist/icons/components/UiLockKey.js +15 -0
- package/dist/icons/components/UiLockKey.js.map +1 -0
- package/dist/icons/components/UiSteps.cjs +15 -0
- package/dist/icons/components/UiSteps.cjs.map +1 -0
- package/dist/icons/components/UiSteps.d.ts +15 -0
- package/dist/icons/components/UiSteps.d.ts.map +1 -0
- package/dist/icons/components/UiSteps.js +15 -0
- package/dist/icons/components/UiSteps.js.map +1 -0
- package/dist/icons/components/UiUserGear.cjs +15 -0
- package/dist/icons/components/UiUserGear.cjs.map +1 -0
- package/dist/icons/components/UiUserGear.d.ts +15 -0
- package/dist/icons/components/UiUserGear.d.ts.map +1 -0
- package/dist/icons/components/UiUserGear.js +15 -0
- package/dist/icons/components/UiUserGear.js.map +1 -0
- package/dist/icons/components/UiUsersFour.cjs +15 -0
- package/dist/icons/components/UiUsersFour.cjs.map +1 -0
- package/dist/icons/components/UiUsersFour.d.ts +15 -0
- package/dist/icons/components/UiUsersFour.d.ts.map +1 -0
- package/dist/icons/components/UiUsersFour.js +15 -0
- package/dist/icons/components/UiUsersFour.js.map +1 -0
- package/dist/icons/index.d.ts +14 -0
- package/dist/icons/index.d.ts.map +1 -1
- package/dist/icons/registry.cjs +15 -1
- package/dist/icons/registry.cjs.map +1 -1
- package/dist/icons/registry.d.ts.map +1 -1
- package/dist/icons/registry.js +15 -1
- package/dist/icons/registry.js.map +1 -1
- package/dist/icons.cjs +21 -0
- package/dist/icons.cjs.map +1 -1
- package/dist/icons.js +21 -0
- package/dist/icons.js.map +1 -1
- package/dist/index.cjs +75 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +75 -0
- package/dist/index.js.map +1 -1
- package/dist/jotai.d.ts +1 -1
- package/dist/jotai.d.ts.map +1 -1
- package/dist/lib/collections.cjs +31 -0
- package/dist/lib/collections.cjs.map +1 -0
- package/dist/lib/collections.d.ts +6 -0
- package/dist/lib/collections.d.ts.map +1 -0
- package/dist/lib/collections.js +31 -0
- package/dist/lib/collections.js.map +1 -0
- package/dist/mdx-editor.cjs +12 -0
- package/dist/mdx-editor.cjs.map +1 -1
- package/dist/mdx-editor.css +1 -1
- package/dist/mdx-editor.d.ts +4 -1
- package/dist/mdx-editor.d.ts.map +1 -1
- package/dist/mdx-editor.js +13 -1
- package/dist/mdx-editor.js.map +1 -1
- package/dist/overlay/CommandPalette.cjs +1 -1
- package/dist/overlay/CommandPalette.cjs.map +1 -1
- package/dist/overlay/CommandPalette.js +1 -1
- package/dist/overlay/CommandPalette.js.map +1 -1
- package/dist/profiles/cel/celEditor.cjs +395 -0
- package/dist/profiles/cel/celEditor.cjs.map +1 -0
- package/dist/profiles/cel/celEditor.d.ts +51 -0
- package/dist/profiles/cel/celEditor.d.ts.map +1 -0
- package/dist/profiles/cel/celEditor.js +395 -0
- package/dist/profiles/cel/celEditor.js.map +1 -0
- package/dist/profiles/cel/celEditorExtension.cjs +15 -0
- package/dist/profiles/cel/celEditorExtension.cjs.map +1 -0
- package/dist/profiles/cel/celEditorExtension.d.ts +5 -0
- package/dist/profiles/cel/celEditorExtension.d.ts.map +1 -0
- package/dist/profiles/cel/celEditorExtension.js +15 -0
- package/dist/profiles/cel/celEditorExtension.js.map +1 -0
- package/dist/profiles/cel/celExpression.cjs +174 -0
- package/dist/profiles/cel/celExpression.cjs.map +1 -0
- package/dist/profiles/cel/celExpression.d.ts +138 -0
- package/dist/profiles/cel/celExpression.d.ts.map +1 -0
- package/dist/profiles/cel/celExpression.js +174 -0
- package/dist/profiles/cel/celExpression.js.map +1 -0
- package/dist/profiles/cel/celPath.cjs +47 -0
- package/dist/profiles/cel/celPath.cjs.map +1 -0
- package/dist/profiles/cel/celPath.d.ts +31 -0
- package/dist/profiles/cel/celPath.d.ts.map +1 -0
- package/dist/profiles/cel/celPath.js +47 -0
- package/dist/profiles/cel/celPath.js.map +1 -0
- package/dist/profiles/cel/index.d.ts +5 -0
- package/dist/profiles/cel/index.d.ts.map +1 -0
- package/dist/profiles/connections/catalogTree.cjs +133 -0
- package/dist/profiles/connections/catalogTree.cjs.map +1 -0
- package/dist/profiles/connections/catalogTree.d.ts.map +1 -0
- package/dist/profiles/connections/catalogTree.js +133 -0
- package/dist/profiles/connections/catalogTree.js.map +1 -0
- package/dist/profiles/connections/connectionBrowserModel.cjs +191 -0
- package/dist/profiles/connections/connectionBrowserModel.cjs.map +1 -0
- package/dist/profiles/connections/connectionBrowserModel.d.ts +177 -0
- package/dist/profiles/connections/connectionBrowserModel.d.ts.map +1 -0
- package/dist/profiles/connections/connectionBrowserModel.js +191 -0
- package/dist/profiles/connections/connectionBrowserModel.js.map +1 -0
- package/dist/profiles/connections/connectionQueryWorkspace.cjs +196 -0
- package/dist/profiles/connections/connectionQueryWorkspace.cjs.map +1 -0
- package/dist/profiles/connections/connectionQueryWorkspace.d.ts +63 -0
- package/dist/profiles/connections/connectionQueryWorkspace.d.ts.map +1 -0
- package/dist/profiles/connections/connectionQueryWorkspace.js +196 -0
- package/dist/profiles/connections/connectionQueryWorkspace.js.map +1 -0
- package/dist/profiles/connections/connectionQueryWorkspaceModel.cjs +28 -0
- package/dist/profiles/connections/connectionQueryWorkspaceModel.cjs.map +1 -0
- package/dist/profiles/connections/connectionQueryWorkspaceModel.d.ts +38 -0
- package/dist/profiles/connections/connectionQueryWorkspaceModel.d.ts.map +1 -0
- package/dist/profiles/connections/connectionQueryWorkspaceModel.js +28 -0
- package/dist/profiles/connections/connectionQueryWorkspaceModel.js.map +1 -0
- package/dist/profiles/connections/index.d.ts +5 -0
- package/dist/profiles/connections/index.d.ts.map +1 -0
- package/dist/profiles/editor/index.d.ts +12 -0
- package/dist/profiles/editor/index.d.ts.map +1 -0
- package/dist/profiles/editor/profileBuilder.cjs +65 -0
- package/dist/profiles/editor/profileBuilder.cjs.map +1 -0
- package/dist/profiles/editor/profileBuilder.d.ts.map +1 -0
- package/dist/profiles/editor/profileBuilder.js +65 -0
- package/dist/profiles/editor/profileBuilder.js.map +1 -0
- package/dist/profiles/editor/profileBuilderExtension.cjs.map +1 -0
- package/dist/profiles/editor/profileBuilderExtension.d.ts +5 -0
- package/dist/profiles/editor/profileBuilderExtension.d.ts.map +1 -0
- package/dist/profiles/editor/profileBuilderExtension.js.map +1 -0
- package/dist/profiles/editor/profileBuilderModel.cjs +44 -0
- package/dist/profiles/editor/profileBuilderModel.cjs.map +1 -0
- package/dist/profiles/editor/profileBuilderModel.d.ts +4 -0
- package/dist/profiles/editor/profileBuilderModel.d.ts.map +1 -0
- package/dist/profiles/editor/profileBuilderModel.js +44 -0
- package/dist/profiles/editor/profileBuilderModel.js.map +1 -0
- package/dist/profiles/editor/profileBuilderWorkspace.cjs +333 -0
- package/dist/profiles/editor/profileBuilderWorkspace.cjs.map +1 -0
- package/dist/profiles/editor/profileBuilderWorkspace.d.ts +21 -0
- package/dist/profiles/editor/profileBuilderWorkspace.d.ts.map +1 -0
- package/dist/profiles/editor/profileBuilderWorkspace.js +333 -0
- package/dist/profiles/editor/profileBuilderWorkspace.js.map +1 -0
- package/dist/profiles/editor/profileEditor.cjs +471 -0
- package/dist/profiles/editor/profileEditor.cjs.map +1 -0
- package/dist/profiles/editor/profileEditor.d.ts +20 -0
- package/dist/profiles/editor/profileEditor.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditor.js +471 -0
- package/dist/profiles/editor/profileEditor.js.map +1 -0
- package/dist/profiles/editor/profileEditorModel.cjs +206 -0
- package/dist/profiles/editor/profileEditorModel.cjs.map +1 -0
- package/dist/profiles/editor/profileEditorModel.d.ts +76 -0
- package/dist/profiles/editor/profileEditorModel.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditorModel.js +206 -0
- package/dist/profiles/editor/profileEditorModel.js.map +1 -0
- package/dist/profiles/editor/profileEditorPreview.cjs.map +1 -0
- package/dist/profiles/editor/profileEditorPreview.d.ts +12 -0
- package/dist/profiles/editor/profileEditorPreview.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditorPreview.js.map +1 -0
- package/dist/profiles/editor/profileEditorRail.cjs.map +1 -0
- package/dist/profiles/editor/profileEditorRail.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditorRail.js.map +1 -0
- package/dist/profiles/editor/profileEditorRaw.cjs +118 -0
- package/dist/profiles/editor/profileEditorRaw.cjs.map +1 -0
- package/dist/profiles/editor/profileEditorRaw.d.ts +7 -0
- package/dist/profiles/editor/profileEditorRaw.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditorRaw.js +118 -0
- package/dist/profiles/editor/profileEditorRaw.js.map +1 -0
- package/dist/profiles/editor/profileEditorRoutes.cjs.map +1 -0
- package/dist/profiles/editor/profileEditorRoutes.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditorRoutes.js.map +1 -0
- package/dist/profiles/editor/profileEditorSections.cjs +247 -0
- package/dist/profiles/editor/profileEditorSections.cjs.map +1 -0
- package/dist/profiles/editor/profileEditorSections.d.ts +26 -0
- package/dist/profiles/editor/profileEditorSections.d.ts.map +1 -0
- package/dist/profiles/editor/profileEditorSections.js +247 -0
- package/dist/profiles/editor/profileEditorSections.js.map +1 -0
- package/dist/profiles/editor/profileYaml.cjs +19 -0
- package/dist/profiles/editor/profileYaml.cjs.map +1 -0
- package/dist/profiles/editor/profileYaml.d.ts +4 -0
- package/dist/profiles/editor/profileYaml.d.ts.map +1 -0
- package/dist/profiles/editor/profileYaml.js +19 -0
- package/dist/profiles/editor/profileYaml.js.map +1 -0
- package/dist/profiles/editor/testSchema.d.ts +3 -0
- package/dist/profiles/editor/testSchema.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esFieldValues.cjs +57 -0
- package/dist/profiles/elasticsearch/esFieldValues.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esFieldValues.d.ts +45 -0
- package/dist/profiles/elasticsearch/esFieldValues.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esFieldValues.js +57 -0
- package/dist/profiles/elasticsearch/esFieldValues.js.map +1 -0
- package/dist/profiles/elasticsearch/esParamMappingModel.cjs +301 -0
- package/dist/profiles/elasticsearch/esParamMappingModel.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esParamMappingModel.d.ts +37 -0
- package/dist/profiles/elasticsearch/esParamMappingModel.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esParamMappingModel.js +301 -0
- package/dist/profiles/elasticsearch/esParamMappingModel.js.map +1 -0
- package/dist/profiles/elasticsearch/esParamMappingPill.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esParamMappingPill.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esParamMappingPill.js.map +1 -0
- package/dist/profiles/elasticsearch/esParamOperandExtension.cjs +75 -0
- package/dist/profiles/elasticsearch/esParamOperandExtension.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esParamOperandExtension.d.ts +11 -0
- package/dist/profiles/elasticsearch/esParamOperandExtension.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esParamOperandExtension.js +75 -0
- package/dist/profiles/elasticsearch/esParamOperandExtension.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilder.cjs +249 -0
- package/dist/profiles/elasticsearch/esQueryBuilder.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilder.d.ts +35 -0
- package/dist/profiles/elasticsearch/esQueryBuilder.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilder.js +249 -0
- package/dist/profiles/elasticsearch/esQueryBuilder.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderExtension.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderExtension.d.ts +5 -0
- package/dist/profiles/elasticsearch/esQueryBuilderExtension.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderExtension.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderForm.cjs +59 -0
- package/dist/profiles/elasticsearch/esQueryBuilderForm.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderForm.d.ts +25 -0
- package/dist/profiles/elasticsearch/esQueryBuilderForm.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderForm.js +59 -0
- package/dist/profiles/elasticsearch/esQueryBuilderForm.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderModel.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderModel.d.ts +110 -0
- package/dist/profiles/elasticsearch/esQueryBuilderModel.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryBuilderModel.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryClauseGroup.cjs +144 -0
- package/dist/profiles/elasticsearch/esQueryClauseGroup.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryClauseGroup.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryClauseGroup.js +144 -0
- package/dist/profiles/elasticsearch/esQueryClauseGroup.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryCompile.cjs +48 -0
- package/dist/profiles/elasticsearch/esQueryCompile.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryCompile.d.ts +40 -0
- package/dist/profiles/elasticsearch/esQueryCompile.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryCompile.js +48 -0
- package/dist/profiles/elasticsearch/esQueryCompile.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryConditionRow.cjs +168 -0
- package/dist/profiles/elasticsearch/esQueryConditionRow.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryConditionRow.d.ts +37 -0
- package/dist/profiles/elasticsearch/esQueryConditionRow.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryConditionRow.js +168 -0
- package/dist/profiles/elasticsearch/esQueryConditionRow.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryGroupModel.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryGroupModel.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryGroupModel.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOccur.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOccur.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOccur.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperandEditors.cjs +279 -0
- package/dist/profiles/elasticsearch/esQueryOperandEditors.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperandEditors.d.ts +24 -0
- package/dist/profiles/elasticsearch/esQueryOperandEditors.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperandEditors.js +279 -0
- package/dist/profiles/elasticsearch/esQueryOperandEditors.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperandModel.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperandModel.d.ts +17 -0
- package/dist/profiles/elasticsearch/esQueryOperandModel.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperandModel.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperators.cjs +166 -0
- package/dist/profiles/elasticsearch/esQueryOperators.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperators.d.ts +84 -0
- package/dist/profiles/elasticsearch/esQueryOperators.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOperators.js +166 -0
- package/dist/profiles/elasticsearch/esQueryOperators.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOutputEditor.cjs +138 -0
- package/dist/profiles/elasticsearch/esQueryOutputEditor.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOutputEditor.d.ts +7 -0
- package/dist/profiles/elasticsearch/esQueryOutputEditor.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOutputEditor.js +138 -0
- package/dist/profiles/elasticsearch/esQueryOutputEditor.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOutputModel.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOutputModel.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryOutputModel.js.map +1 -0
- package/dist/profiles/elasticsearch/esQueryPreview.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQueryPreview.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQueryPreview.js.map +1 -0
- package/dist/profiles/elasticsearch/esQuerySortEditor.cjs +143 -0
- package/dist/profiles/elasticsearch/esQuerySortEditor.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQuerySortEditor.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQuerySortEditor.js +143 -0
- package/dist/profiles/elasticsearch/esQuerySortEditor.js.map +1 -0
- package/dist/profiles/elasticsearch/esQuerySortModel.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esQuerySortModel.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esQuerySortModel.js.map +1 -0
- package/dist/profiles/elasticsearch/esValueCombobox.cjs +86 -0
- package/dist/profiles/elasticsearch/esValueCombobox.cjs.map +1 -0
- package/dist/profiles/elasticsearch/esValueCombobox.d.ts.map +1 -0
- package/dist/profiles/elasticsearch/esValueCombobox.js +86 -0
- package/dist/profiles/elasticsearch/esValueCombobox.js.map +1 -0
- package/dist/profiles/elasticsearch/index.d.ts +23 -0
- package/dist/profiles/elasticsearch/index.d.ts.map +1 -0
- package/dist/profiles/fields/index.d.ts +9 -0
- package/dist/profiles/fields/index.d.ts.map +1 -0
- package/dist/profiles/fields/profileColumnModel.cjs.map +1 -0
- package/dist/profiles/fields/profileColumnModel.d.ts +8 -0
- package/dist/profiles/fields/profileColumnModel.d.ts.map +1 -0
- package/dist/profiles/fields/profileColumnModel.js.map +1 -0
- package/dist/profiles/fields/profileColumnPicker.cjs +68 -0
- package/dist/profiles/fields/profileColumnPicker.cjs.map +1 -0
- package/dist/profiles/fields/profileColumnPicker.d.ts +11 -0
- package/dist/profiles/fields/profileColumnPicker.d.ts.map +1 -0
- package/dist/profiles/fields/profileColumnPicker.js +68 -0
- package/dist/profiles/fields/profileColumnPicker.js.map +1 -0
- package/dist/profiles/fields/profileFieldControls.cjs +50 -0
- package/dist/profiles/fields/profileFieldControls.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldControls.d.ts +37 -0
- package/dist/profiles/fields/profileFieldControls.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldControls.js +50 -0
- package/dist/profiles/fields/profileFieldControls.js.map +1 -0
- package/dist/profiles/fields/profileFieldEditor.cjs +198 -0
- package/dist/profiles/fields/profileFieldEditor.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldEditor.d.ts +34 -0
- package/dist/profiles/fields/profileFieldEditor.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldEditor.js +198 -0
- package/dist/profiles/fields/profileFieldEditor.js.map +1 -0
- package/dist/profiles/fields/profileFieldFilterEditor.cjs +122 -0
- package/dist/profiles/fields/profileFieldFilterEditor.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldFilterEditor.d.ts +16 -0
- package/dist/profiles/fields/profileFieldFilterEditor.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldFilterEditor.js +122 -0
- package/dist/profiles/fields/profileFieldFilterEditor.js.map +1 -0
- package/dist/profiles/fields/profileFieldIcons.cjs +102 -0
- package/dist/profiles/fields/profileFieldIcons.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldIcons.d.ts +10 -0
- package/dist/profiles/fields/profileFieldIcons.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldIcons.js +102 -0
- package/dist/profiles/fields/profileFieldIcons.js.map +1 -0
- package/dist/profiles/fields/profileFieldList.cjs +215 -0
- package/dist/profiles/fields/profileFieldList.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldList.d.ts +24 -0
- package/dist/profiles/fields/profileFieldList.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldList.js +215 -0
- package/dist/profiles/fields/profileFieldList.js.map +1 -0
- package/dist/profiles/fields/profileFieldManager.cjs +103 -0
- package/dist/profiles/fields/profileFieldManager.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldManager.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldManager.js +103 -0
- package/dist/profiles/fields/profileFieldManager.js.map +1 -0
- package/dist/profiles/fields/profileFieldState.cjs +136 -0
- package/dist/profiles/fields/profileFieldState.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldState.d.ts +41 -0
- package/dist/profiles/fields/profileFieldState.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldState.js +136 -0
- package/dist/profiles/fields/profileFieldState.js.map +1 -0
- package/dist/profiles/fields/profileFieldTypes.cjs.map +1 -0
- package/dist/profiles/fields/profileFieldTypes.d.ts +8 -0
- package/dist/profiles/fields/profileFieldTypes.d.ts.map +1 -0
- package/dist/profiles/fields/profileFieldTypes.js.map +1 -0
- package/dist/profiles/fields/profileParamModel.cjs.map +1 -0
- package/dist/profiles/fields/profileParamModel.d.ts +3 -0
- package/dist/profiles/fields/profileParamModel.d.ts.map +1 -0
- package/dist/profiles/fields/profileParamModel.js.map +1 -0
- package/dist/profiles/processor/index.d.ts +6 -0
- package/dist/profiles/processor/index.d.ts.map +1 -0
- package/dist/profiles/processor/processorConfig.cjs +185 -0
- package/dist/profiles/processor/processorConfig.cjs.map +1 -0
- package/dist/profiles/processor/processorConfig.d.ts +34 -0
- package/dist/profiles/processor/processorConfig.d.ts.map +1 -0
- package/dist/profiles/processor/processorConfig.js +185 -0
- package/dist/profiles/processor/processorConfig.js.map +1 -0
- package/dist/profiles/processor/processorPipeline.cjs +300 -0
- package/dist/profiles/processor/processorPipeline.cjs.map +1 -0
- package/dist/profiles/processor/processorPipeline.d.ts +11 -0
- package/dist/profiles/processor/processorPipeline.d.ts.map +1 -0
- package/dist/profiles/processor/processorPipeline.js +300 -0
- package/dist/profiles/processor/processorPipeline.js.map +1 -0
- package/dist/profiles/processor/processorPipelineEditor.cjs +330 -0
- package/dist/profiles/processor/processorPipelineEditor.cjs.map +1 -0
- package/dist/profiles/processor/processorPipelineEditor.d.ts +16 -0
- package/dist/profiles/processor/processorPipelineEditor.d.ts.map +1 -0
- package/dist/profiles/processor/processorPipelineEditor.js +330 -0
- package/dist/profiles/processor/processorPipelineEditor.js.map +1 -0
- package/dist/profiles/processor/processorPipelineExtension.cjs +28 -0
- package/dist/profiles/processor/processorPipelineExtension.cjs.map +1 -0
- package/dist/profiles/processor/processorPipelineExtension.d.ts +5 -0
- package/dist/profiles/processor/processorPipelineExtension.d.ts.map +1 -0
- package/dist/profiles/processor/processorPipelineExtension.js +28 -0
- package/dist/profiles/processor/processorPipelineExtension.js.map +1 -0
- package/dist/profiles/processor/processorPreview.cjs +55 -0
- package/dist/profiles/processor/processorPreview.cjs.map +1 -0
- package/dist/profiles/processor/processorPreview.d.ts +20 -0
- package/dist/profiles/processor/processorPreview.d.ts.map +1 -0
- package/dist/profiles/processor/processorPreview.js +55 -0
- package/dist/profiles/processor/processorPreview.js.map +1 -0
- package/dist/profiles/processor/processorPreviewTable.cjs +103 -0
- package/dist/profiles/processor/processorPreviewTable.cjs.map +1 -0
- package/dist/profiles/processor/processorPreviewTable.d.ts +6 -0
- package/dist/profiles/processor/processorPreviewTable.d.ts.map +1 -0
- package/dist/profiles/processor/processorPreviewTable.js +103 -0
- package/dist/profiles/processor/processorPreviewTable.js.map +1 -0
- package/dist/profiles/processor/processorSampleParams.cjs +38 -0
- package/dist/profiles/processor/processorSampleParams.cjs.map +1 -0
- package/dist/profiles/processor/processorSampleParams.d.ts +6 -0
- package/dist/profiles/processor/processorSampleParams.d.ts.map +1 -0
- package/dist/profiles/processor/processorSampleParams.js +38 -0
- package/dist/profiles/processor/processorSampleParams.js.map +1 -0
- package/dist/profiles/profileApi.cjs +16 -0
- package/dist/profiles/profileApi.cjs.map +1 -1
- package/dist/profiles/profileApi.d.ts +36 -3
- package/dist/profiles/profileApi.d.ts.map +1 -1
- package/dist/profiles/profileApi.js +16 -0
- package/dist/profiles/profileApi.js.map +1 -1
- package/dist/profiles/query/index.d.ts +9 -0
- package/dist/profiles/query/index.d.ts.map +1 -0
- package/dist/profiles/query/jsonPathSample.cjs +75 -0
- package/dist/profiles/query/jsonPathSample.cjs.map +1 -0
- package/dist/profiles/query/jsonPathSample.d.ts +27 -0
- package/dist/profiles/query/jsonPathSample.d.ts.map +1 -0
- package/dist/profiles/query/jsonPathSample.js +75 -0
- package/dist/profiles/query/jsonPathSample.js.map +1 -0
- package/dist/profiles/query/jsonPathSampleRow.cjs.map +1 -0
- package/dist/profiles/query/jsonPathSampleRow.d.ts.map +1 -0
- package/dist/profiles/query/jsonPathSampleRow.js.map +1 -0
- package/dist/profiles/query/kubernetesWorkloadTarget.cjs +43 -0
- package/dist/profiles/query/kubernetesWorkloadTarget.cjs.map +1 -0
- package/dist/profiles/query/kubernetesWorkloadTarget.d.ts +3 -0
- package/dist/profiles/query/kubernetesWorkloadTarget.d.ts.map +1 -0
- package/dist/profiles/query/kubernetesWorkloadTarget.js +43 -0
- package/dist/profiles/query/kubernetesWorkloadTarget.js.map +1 -0
- package/dist/profiles/query/kubernetesWorkloadTargetPicker.cjs +53 -0
- package/dist/profiles/query/kubernetesWorkloadTargetPicker.cjs.map +1 -0
- package/dist/profiles/query/kubernetesWorkloadTargetPicker.d.ts +12 -0
- package/dist/profiles/query/kubernetesWorkloadTargetPicker.d.ts.map +1 -0
- package/dist/profiles/query/kubernetesWorkloadTargetPicker.js +53 -0
- package/dist/profiles/query/kubernetesWorkloadTargetPicker.js.map +1 -0
- package/dist/profiles/query/profileSamplePayload.cjs.map +1 -0
- package/dist/profiles/query/profileSamplePayload.d.ts +13 -0
- package/dist/profiles/query/profileSamplePayload.d.ts.map +1 -0
- package/dist/profiles/query/profileSamplePayload.js.map +1 -0
- package/dist/profiles/query/prometheusResults.cjs +60 -0
- package/dist/profiles/query/prometheusResults.cjs.map +1 -0
- package/dist/profiles/query/prometheusResults.d.ts +7 -0
- package/dist/profiles/query/prometheusResults.d.ts.map +1 -0
- package/dist/profiles/query/prometheusResults.js +60 -0
- package/dist/profiles/query/prometheusResults.js.map +1 -0
- package/dist/profiles/query/queryRowLimits.cjs +82 -0
- package/dist/profiles/query/queryRowLimits.cjs.map +1 -0
- package/dist/profiles/query/queryRowLimits.d.ts +9 -0
- package/dist/profiles/query/queryRowLimits.d.ts.map +1 -0
- package/dist/profiles/query/queryRowLimits.js +82 -0
- package/dist/profiles/query/queryRowLimits.js.map +1 -0
- package/dist/profiles/query/queryRowLimitsModel.cjs.map +1 -0
- package/dist/profiles/query/queryRowLimitsModel.d.ts +9 -0
- package/dist/profiles/query/queryRowLimitsModel.d.ts.map +1 -0
- package/dist/profiles/query/queryRowLimitsModel.js.map +1 -0
- package/dist/profiles/query/queryTargetPicker.cjs +42 -0
- package/dist/profiles/query/queryTargetPicker.cjs.map +1 -0
- package/dist/profiles/query/queryTargetPicker.d.ts +8 -0
- package/dist/profiles/query/queryTargetPicker.d.ts.map +1 -0
- package/dist/profiles/query/queryTargetPicker.js +42 -0
- package/dist/profiles/query/queryTargetPicker.js.map +1 -0
- package/dist/profiles/wizard/index.d.ts +6 -0
- package/dist/profiles/wizard/index.d.ts.map +1 -0
- package/dist/profiles/wizard/profileWizard.cjs +257 -0
- package/dist/profiles/wizard/profileWizard.cjs.map +1 -0
- package/dist/profiles/wizard/profileWizard.d.ts +12 -0
- package/dist/profiles/wizard/profileWizard.d.ts.map +1 -0
- package/dist/profiles/wizard/profileWizard.js +257 -0
- package/dist/profiles/wizard/profileWizard.js.map +1 -0
- package/dist/profiles/wizard/profileWizardHelp.cjs.map +1 -0
- package/dist/profiles/wizard/profileWizardHelp.d.ts.map +1 -0
- package/dist/profiles/wizard/profileWizardHelp.js.map +1 -0
- package/dist/profiles/wizard/profileWizardModel.cjs +204 -0
- package/dist/profiles/wizard/profileWizardModel.cjs.map +1 -0
- package/dist/profiles/wizard/profileWizardModel.d.ts +266 -0
- package/dist/profiles/wizard/profileWizardModel.d.ts.map +1 -0
- package/dist/profiles/wizard/profileWizardModel.js +204 -0
- package/dist/profiles/wizard/profileWizardModel.js.map +1 -0
- package/dist/profiles/wizard/profileWizardQueryStep.cjs +215 -0
- package/dist/profiles/wizard/profileWizardQueryStep.cjs.map +1 -0
- package/dist/profiles/wizard/profileWizardQueryStep.d.ts.map +1 -0
- package/dist/profiles/wizard/profileWizardQueryStep.js +215 -0
- package/dist/profiles/wizard/profileWizardQueryStep.js.map +1 -0
- package/dist/profiles/wizard/profileWizardSteps.cjs +214 -0
- package/dist/profiles/wizard/profileWizardSteps.cjs.map +1 -0
- package/dist/profiles/wizard/profileWizardSteps.d.ts.map +1 -0
- package/dist/profiles/wizard/profileWizardSteps.js +214 -0
- package/dist/profiles/wizard/profileWizardSteps.js.map +1 -0
- package/dist/profiles.cjs +237 -178
- package/dist/profiles.cjs.map +1 -1
- package/dist/profiles.d.ts +8 -55
- package/dist/profiles.d.ts.map +1 -1
- package/dist/profiles.js +117 -58
- package/dist/profiles.js.map +1 -1
- package/dist/rpc/ChatLayer.cjs +27 -0
- package/dist/rpc/ChatLayer.cjs.map +1 -0
- package/dist/rpc/ChatLayer.d.ts +11 -0
- package/dist/rpc/ChatLayer.d.ts.map +1 -0
- package/dist/rpc/ChatLayer.js +27 -0
- package/dist/rpc/ChatLayer.js.map +1 -0
- package/dist/rpc/CommandForm.cjs +1 -1
- package/dist/rpc/CommandForm.cjs.map +1 -1
- package/dist/rpc/CommandForm.js +1 -1
- package/dist/rpc/CommandForm.js.map +1 -1
- package/dist/rpc/CommandOutput.cjs +29 -4
- package/dist/rpc/CommandOutput.cjs.map +1 -1
- package/dist/rpc/CommandOutput.d.ts +6 -2
- package/dist/rpc/CommandOutput.d.ts.map +1 -1
- package/dist/rpc/CommandOutput.js +29 -4
- package/dist/rpc/CommandOutput.js.map +1 -1
- package/dist/rpc/EndpointList.cjs +1 -1
- package/dist/rpc/EndpointList.cjs.map +1 -1
- package/dist/rpc/EndpointList.js +1 -1
- package/dist/rpc/EndpointList.js.map +1 -1
- package/dist/rpc/EntityExplorerApp.cjs +4 -1
- package/dist/rpc/EntityExplorerApp.cjs.map +1 -1
- package/dist/rpc/EntityExplorerApp.d.ts +3 -1
- package/dist/rpc/EntityExplorerApp.d.ts.map +1 -1
- package/dist/rpc/EntityExplorerApp.js +4 -1
- package/dist/rpc/EntityExplorerApp.js.map +1 -1
- package/dist/rpc/FilterForm.cjs +66 -80
- package/dist/rpc/FilterForm.cjs.map +1 -1
- package/dist/rpc/FilterForm.d.ts.map +1 -1
- package/dist/rpc/FilterForm.js +68 -82
- package/dist/rpc/FilterForm.js.map +1 -1
- package/dist/rpc/InlineError.cjs +19 -2
- package/dist/rpc/InlineError.cjs.map +1 -1
- package/dist/rpc/InlineError.d.ts +5 -1
- package/dist/rpc/InlineError.d.ts.map +1 -1
- package/dist/rpc/InlineError.js +19 -2
- package/dist/rpc/InlineError.js.map +1 -1
- package/dist/rpc/OperationCatalog.cjs +96 -100
- package/dist/rpc/OperationCatalog.cjs.map +1 -1
- package/dist/rpc/OperationCatalog.d.ts.map +1 -1
- package/dist/rpc/OperationCatalog.js +98 -102
- package/dist/rpc/OperationCatalog.js.map +1 -1
- package/dist/rpc/OperationCommandPage.cjs +19 -7
- package/dist/rpc/OperationCommandPage.cjs.map +1 -1
- package/dist/rpc/OperationCommandPage.d.ts.map +1 -1
- package/dist/rpc/OperationCommandPage.js +21 -9
- package/dist/rpc/OperationCommandPage.js.map +1 -1
- package/dist/rpc/OperationEntityContextPicker.cjs +25 -13
- package/dist/rpc/OperationEntityContextPicker.cjs.map +1 -1
- package/dist/rpc/OperationEntityContextPicker.d.ts.map +1 -1
- package/dist/rpc/OperationEntityContextPicker.js +26 -14
- package/dist/rpc/OperationEntityContextPicker.js.map +1 -1
- package/dist/rpc/OperationEntityPage.cjs +2 -8
- package/dist/rpc/OperationEntityPage.cjs.map +1 -1
- package/dist/rpc/OperationEntityPage.d.ts.map +1 -1
- package/dist/rpc/OperationEntityPage.js +2 -8
- package/dist/rpc/OperationEntityPage.js.map +1 -1
- package/dist/rpc/OperationResultView.cjs +13 -2
- package/dist/rpc/OperationResultView.cjs.map +1 -1
- package/dist/rpc/OperationResultView.d.ts +34 -2
- package/dist/rpc/OperationResultView.d.ts.map +1 -1
- package/dist/rpc/OperationResultView.js +13 -2
- package/dist/rpc/OperationResultView.js.map +1 -1
- package/dist/rpc/apiClient.cjs +11 -1
- package/dist/rpc/apiClient.cjs.map +1 -1
- package/dist/rpc/apiClient.d.ts +15 -5
- package/dist/rpc/apiClient.d.ts.map +1 -1
- package/dist/rpc/apiClient.js +12 -2
- package/dist/rpc/apiClient.js.map +1 -1
- package/dist/rpc/cursorStale.cjs +35 -0
- package/dist/rpc/cursorStale.cjs.map +1 -0
- package/dist/rpc/cursorStale.d.ts +23 -0
- package/dist/rpc/cursorStale.d.ts.map +1 -0
- package/dist/rpc/cursorStale.js +35 -0
- package/dist/rpc/cursorStale.js.map +1 -0
- package/dist/rpc/executionPages.cjs +94 -0
- package/dist/rpc/executionPages.cjs.map +1 -0
- package/dist/rpc/executionPages.d.ts +18 -0
- package/dist/rpc/executionPages.d.ts.map +1 -0
- package/dist/rpc/executionPages.js +94 -0
- package/dist/rpc/executionPages.js.map +1 -0
- package/dist/rpc/filterShapes.cjs +17 -0
- package/dist/rpc/filterShapes.cjs.map +1 -0
- package/dist/rpc/filterShapes.d.ts +22 -0
- package/dist/rpc/filterShapes.d.ts.map +1 -0
- package/dist/rpc/filterShapes.js +17 -0
- package/dist/rpc/filterShapes.js.map +1 -0
- package/dist/rpc/formMetadata.cjs +225 -50
- package/dist/rpc/formMetadata.cjs.map +1 -1
- package/dist/rpc/formMetadata.d.ts +18 -1
- package/dist/rpc/formMetadata.d.ts.map +1 -1
- package/dist/rpc/formMetadata.js +227 -52
- package/dist/rpc/formMetadata.js.map +1 -1
- package/dist/rpc/operationErrorDiagnostics.cjs +100 -0
- package/dist/rpc/operationErrorDiagnostics.cjs.map +1 -0
- package/dist/rpc/operationErrorDiagnostics.d.ts +4 -0
- package/dist/rpc/operationErrorDiagnostics.d.ts.map +1 -0
- package/dist/rpc/operationErrorDiagnostics.js +100 -0
- package/dist/rpc/operationErrorDiagnostics.js.map +1 -0
- package/dist/rpc/operationFilterSearch.cjs +1 -1
- package/dist/rpc/operationFilterSearch.cjs.map +1 -1
- package/dist/rpc/operationFilterSearch.js +2 -2
- package/dist/rpc/operationFilterSearch.js.map +1 -1
- package/dist/rpc/types.cjs.map +1 -1
- package/dist/rpc/types.d.ts +54 -3
- package/dist/rpc/types.d.ts.map +1 -1
- package/dist/rpc/types.js.map +1 -1
- package/dist/rpc/useOperationPages.cjs +111 -0
- package/dist/rpc/useOperationPages.cjs.map +1 -0
- package/dist/rpc/useOperationPages.d.ts +46 -0
- package/dist/rpc/useOperationPages.d.ts.map +1 -0
- package/dist/rpc/useOperationPages.js +111 -0
- package/dist/rpc/useOperationPages.js.map +1 -0
- package/dist/rpc/useOperations.cjs +7 -4
- package/dist/rpc/useOperations.cjs.map +1 -1
- package/dist/rpc/useOperations.d.ts.map +1 -1
- package/dist/rpc/useOperations.js +7 -4
- package/dist/rpc/useOperations.js.map +1 -1
- package/dist/rpc.cjs +2 -0
- package/dist/rpc.cjs.map +1 -1
- package/dist/rpc.d.ts +2 -1
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +2 -0
- package/dist/rpc.js.map +1 -1
- package/dist/styles.css +2 -2
- package/dist/tailwind-preset.cjs +6 -3
- package/dist/tailwind-preset.cjs.map +1 -1
- package/dist/tailwind-preset.d.ts.map +1 -1
- package/dist/tailwind-preset.js +6 -3
- package/dist/tailwind-preset.js.map +1 -1
- package/dist/utils.cjs +6 -0
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +6 -0
- package/dist/utils.js.map +1 -1
- package/package.json +5 -5
- package/dist/profiles/catalogTree.cjs +0 -133
- package/dist/profiles/catalogTree.cjs.map +0 -1
- package/dist/profiles/catalogTree.d.ts.map +0 -1
- package/dist/profiles/catalogTree.js +0 -133
- package/dist/profiles/catalogTree.js.map +0 -1
- package/dist/profiles/connectionBrowserModel.cjs +0 -185
- package/dist/profiles/connectionBrowserModel.cjs.map +0 -1
- package/dist/profiles/connectionBrowserModel.d.ts +0 -169
- package/dist/profiles/connectionBrowserModel.d.ts.map +0 -1
- package/dist/profiles/connectionBrowserModel.js +0 -185
- package/dist/profiles/connectionBrowserModel.js.map +0 -1
- package/dist/profiles/connectionQueryWorkspace.cjs +0 -185
- package/dist/profiles/connectionQueryWorkspace.cjs.map +0 -1
- package/dist/profiles/connectionQueryWorkspace.d.ts +0 -63
- package/dist/profiles/connectionQueryWorkspace.d.ts.map +0 -1
- package/dist/profiles/connectionQueryWorkspace.js +0 -185
- package/dist/profiles/connectionQueryWorkspace.js.map +0 -1
- package/dist/profiles/connectionQueryWorkspaceModel.cjs +0 -28
- package/dist/profiles/connectionQueryWorkspaceModel.cjs.map +0 -1
- package/dist/profiles/connectionQueryWorkspaceModel.d.ts +0 -38
- package/dist/profiles/connectionQueryWorkspaceModel.d.ts.map +0 -1
- package/dist/profiles/connectionQueryWorkspaceModel.js +0 -28
- package/dist/profiles/connectionQueryWorkspaceModel.js.map +0 -1
- package/dist/profiles/esFieldValues.cjs +0 -64
- package/dist/profiles/esFieldValues.cjs.map +0 -1
- package/dist/profiles/esFieldValues.d.ts +0 -48
- package/dist/profiles/esFieldValues.d.ts.map +0 -1
- package/dist/profiles/esFieldValues.js +0 -64
- package/dist/profiles/esFieldValues.js.map +0 -1
- package/dist/profiles/esParamMappingModel.cjs +0 -301
- package/dist/profiles/esParamMappingModel.cjs.map +0 -1
- package/dist/profiles/esParamMappingModel.d.ts +0 -37
- package/dist/profiles/esParamMappingModel.d.ts.map +0 -1
- package/dist/profiles/esParamMappingModel.js +0 -301
- package/dist/profiles/esParamMappingModel.js.map +0 -1
- package/dist/profiles/esParamMappingPill.cjs.map +0 -1
- package/dist/profiles/esParamMappingPill.d.ts.map +0 -1
- package/dist/profiles/esParamMappingPill.js.map +0 -1
- package/dist/profiles/esParamOperandExtension.cjs +0 -75
- package/dist/profiles/esParamOperandExtension.cjs.map +0 -1
- package/dist/profiles/esParamOperandExtension.d.ts +0 -11
- package/dist/profiles/esParamOperandExtension.d.ts.map +0 -1
- package/dist/profiles/esParamOperandExtension.js +0 -75
- package/dist/profiles/esParamOperandExtension.js.map +0 -1
- package/dist/profiles/esQueryBuilder.cjs +0 -205
- package/dist/profiles/esQueryBuilder.cjs.map +0 -1
- package/dist/profiles/esQueryBuilder.d.ts +0 -35
- package/dist/profiles/esQueryBuilder.d.ts.map +0 -1
- package/dist/profiles/esQueryBuilder.js +0 -205
- package/dist/profiles/esQueryBuilder.js.map +0 -1
- package/dist/profiles/esQueryBuilderExtension.cjs.map +0 -1
- package/dist/profiles/esQueryBuilderExtension.d.ts +0 -5
- package/dist/profiles/esQueryBuilderExtension.d.ts.map +0 -1
- package/dist/profiles/esQueryBuilderExtension.js.map +0 -1
- package/dist/profiles/esQueryBuilderForm.cjs +0 -26
- package/dist/profiles/esQueryBuilderForm.cjs.map +0 -1
- package/dist/profiles/esQueryBuilderForm.d.ts +0 -18
- package/dist/profiles/esQueryBuilderForm.d.ts.map +0 -1
- package/dist/profiles/esQueryBuilderForm.js +0 -26
- package/dist/profiles/esQueryBuilderForm.js.map +0 -1
- package/dist/profiles/esQueryBuilderModel.cjs.map +0 -1
- package/dist/profiles/esQueryBuilderModel.d.ts +0 -108
- package/dist/profiles/esQueryBuilderModel.d.ts.map +0 -1
- package/dist/profiles/esQueryBuilderModel.js.map +0 -1
- package/dist/profiles/esQueryClauseGroup.cjs +0 -144
- package/dist/profiles/esQueryClauseGroup.cjs.map +0 -1
- package/dist/profiles/esQueryClauseGroup.d.ts.map +0 -1
- package/dist/profiles/esQueryClauseGroup.js +0 -144
- package/dist/profiles/esQueryClauseGroup.js.map +0 -1
- package/dist/profiles/esQueryCompile.cjs +0 -47
- package/dist/profiles/esQueryCompile.cjs.map +0 -1
- package/dist/profiles/esQueryCompile.d.ts +0 -39
- package/dist/profiles/esQueryCompile.d.ts.map +0 -1
- package/dist/profiles/esQueryCompile.js +0 -47
- package/dist/profiles/esQueryCompile.js.map +0 -1
- package/dist/profiles/esQueryConditionRow.cjs +0 -168
- package/dist/profiles/esQueryConditionRow.cjs.map +0 -1
- package/dist/profiles/esQueryConditionRow.d.ts +0 -37
- package/dist/profiles/esQueryConditionRow.d.ts.map +0 -1
- package/dist/profiles/esQueryConditionRow.js +0 -168
- package/dist/profiles/esQueryConditionRow.js.map +0 -1
- package/dist/profiles/esQueryGroupModel.cjs.map +0 -1
- package/dist/profiles/esQueryGroupModel.d.ts.map +0 -1
- package/dist/profiles/esQueryGroupModel.js.map +0 -1
- package/dist/profiles/esQueryOccur.cjs.map +0 -1
- package/dist/profiles/esQueryOccur.d.ts.map +0 -1
- package/dist/profiles/esQueryOccur.js.map +0 -1
- package/dist/profiles/esQueryOperandEditors.cjs +0 -279
- package/dist/profiles/esQueryOperandEditors.cjs.map +0 -1
- package/dist/profiles/esQueryOperandEditors.d.ts +0 -24
- package/dist/profiles/esQueryOperandEditors.d.ts.map +0 -1
- package/dist/profiles/esQueryOperandEditors.js +0 -279
- package/dist/profiles/esQueryOperandEditors.js.map +0 -1
- package/dist/profiles/esQueryOperandModel.cjs.map +0 -1
- package/dist/profiles/esQueryOperandModel.d.ts +0 -17
- package/dist/profiles/esQueryOperandModel.d.ts.map +0 -1
- package/dist/profiles/esQueryOperandModel.js.map +0 -1
- package/dist/profiles/esQueryOperators.cjs +0 -165
- package/dist/profiles/esQueryOperators.cjs.map +0 -1
- package/dist/profiles/esQueryOperators.d.ts +0 -83
- package/dist/profiles/esQueryOperators.d.ts.map +0 -1
- package/dist/profiles/esQueryOperators.js +0 -165
- package/dist/profiles/esQueryOperators.js.map +0 -1
- package/dist/profiles/esQueryOutputEditor.cjs +0 -138
- package/dist/profiles/esQueryOutputEditor.cjs.map +0 -1
- package/dist/profiles/esQueryOutputEditor.d.ts +0 -7
- package/dist/profiles/esQueryOutputEditor.d.ts.map +0 -1
- package/dist/profiles/esQueryOutputEditor.js +0 -138
- package/dist/profiles/esQueryOutputEditor.js.map +0 -1
- package/dist/profiles/esQueryOutputModel.cjs.map +0 -1
- package/dist/profiles/esQueryOutputModel.d.ts.map +0 -1
- package/dist/profiles/esQueryOutputModel.js.map +0 -1
- package/dist/profiles/esQueryPreview.cjs.map +0 -1
- package/dist/profiles/esQueryPreview.d.ts.map +0 -1
- package/dist/profiles/esQueryPreview.js.map +0 -1
- package/dist/profiles/esQuerySortEditor.cjs +0 -143
- package/dist/profiles/esQuerySortEditor.cjs.map +0 -1
- package/dist/profiles/esQuerySortEditor.d.ts.map +0 -1
- package/dist/profiles/esQuerySortEditor.js +0 -143
- package/dist/profiles/esQuerySortEditor.js.map +0 -1
- package/dist/profiles/esQuerySortModel.cjs.map +0 -1
- package/dist/profiles/esQuerySortModel.d.ts.map +0 -1
- package/dist/profiles/esQuerySortModel.js.map +0 -1
- package/dist/profiles/esValueCombobox.cjs +0 -86
- package/dist/profiles/esValueCombobox.cjs.map +0 -1
- package/dist/profiles/esValueCombobox.d.ts.map +0 -1
- package/dist/profiles/esValueCombobox.js +0 -86
- package/dist/profiles/esValueCombobox.js.map +0 -1
- package/dist/profiles/jsonPathSample.cjs +0 -75
- package/dist/profiles/jsonPathSample.cjs.map +0 -1
- package/dist/profiles/jsonPathSample.d.ts +0 -27
- package/dist/profiles/jsonPathSample.d.ts.map +0 -1
- package/dist/profiles/jsonPathSample.js +0 -75
- package/dist/profiles/jsonPathSample.js.map +0 -1
- package/dist/profiles/jsonPathSampleRow.cjs.map +0 -1
- package/dist/profiles/jsonPathSampleRow.d.ts.map +0 -1
- package/dist/profiles/jsonPathSampleRow.js.map +0 -1
- package/dist/profiles/profileBuilder.cjs +0 -65
- package/dist/profiles/profileBuilder.cjs.map +0 -1
- package/dist/profiles/profileBuilder.d.ts.map +0 -1
- package/dist/profiles/profileBuilder.js +0 -65
- package/dist/profiles/profileBuilder.js.map +0 -1
- package/dist/profiles/profileBuilderExtension.cjs.map +0 -1
- package/dist/profiles/profileBuilderExtension.d.ts +0 -5
- package/dist/profiles/profileBuilderExtension.d.ts.map +0 -1
- package/dist/profiles/profileBuilderExtension.js.map +0 -1
- package/dist/profiles/profileBuilderWorkspace.cjs +0 -368
- package/dist/profiles/profileBuilderWorkspace.cjs.map +0 -1
- package/dist/profiles/profileBuilderWorkspace.d.ts +0 -21
- package/dist/profiles/profileBuilderWorkspace.d.ts.map +0 -1
- package/dist/profiles/profileBuilderWorkspace.js +0 -368
- package/dist/profiles/profileBuilderWorkspace.js.map +0 -1
- package/dist/profiles/profileColumnModel.cjs.map +0 -1
- package/dist/profiles/profileColumnModel.d.ts +0 -8
- package/dist/profiles/profileColumnModel.d.ts.map +0 -1
- package/dist/profiles/profileColumnModel.js.map +0 -1
- package/dist/profiles/profileColumnPicker.cjs +0 -68
- package/dist/profiles/profileColumnPicker.cjs.map +0 -1
- package/dist/profiles/profileColumnPicker.d.ts +0 -11
- package/dist/profiles/profileColumnPicker.d.ts.map +0 -1
- package/dist/profiles/profileColumnPicker.js +0 -68
- package/dist/profiles/profileColumnPicker.js.map +0 -1
- package/dist/profiles/profileEditor.cjs +0 -386
- package/dist/profiles/profileEditor.cjs.map +0 -1
- package/dist/profiles/profileEditor.d.ts +0 -19
- package/dist/profiles/profileEditor.d.ts.map +0 -1
- package/dist/profiles/profileEditor.js +0 -386
- package/dist/profiles/profileEditor.js.map +0 -1
- package/dist/profiles/profileEditorModel.cjs +0 -181
- package/dist/profiles/profileEditorModel.cjs.map +0 -1
- package/dist/profiles/profileEditorModel.d.ts +0 -74
- package/dist/profiles/profileEditorModel.d.ts.map +0 -1
- package/dist/profiles/profileEditorModel.js +0 -181
- package/dist/profiles/profileEditorModel.js.map +0 -1
- package/dist/profiles/profileEditorPreview.cjs.map +0 -1
- package/dist/profiles/profileEditorPreview.d.ts +0 -12
- package/dist/profiles/profileEditorPreview.d.ts.map +0 -1
- package/dist/profiles/profileEditorPreview.js.map +0 -1
- package/dist/profiles/profileEditorRail.cjs.map +0 -1
- package/dist/profiles/profileEditorRail.d.ts.map +0 -1
- package/dist/profiles/profileEditorRail.js.map +0 -1
- package/dist/profiles/profileEditorRaw.cjs +0 -118
- package/dist/profiles/profileEditorRaw.cjs.map +0 -1
- package/dist/profiles/profileEditorRaw.d.ts +0 -7
- package/dist/profiles/profileEditorRaw.d.ts.map +0 -1
- package/dist/profiles/profileEditorRaw.js +0 -118
- package/dist/profiles/profileEditorRaw.js.map +0 -1
- package/dist/profiles/profileEditorRoutes.cjs.map +0 -1
- package/dist/profiles/profileEditorRoutes.d.ts.map +0 -1
- package/dist/profiles/profileEditorRoutes.js.map +0 -1
- package/dist/profiles/profileEditorSections.cjs +0 -213
- package/dist/profiles/profileEditorSections.cjs.map +0 -1
- package/dist/profiles/profileEditorSections.d.ts +0 -23
- package/dist/profiles/profileEditorSections.d.ts.map +0 -1
- package/dist/profiles/profileEditorSections.js +0 -213
- package/dist/profiles/profileEditorSections.js.map +0 -1
- package/dist/profiles/profileFieldEditor.cjs +0 -200
- package/dist/profiles/profileFieldEditor.cjs.map +0 -1
- package/dist/profiles/profileFieldEditor.d.ts +0 -34
- package/dist/profiles/profileFieldEditor.d.ts.map +0 -1
- package/dist/profiles/profileFieldEditor.js +0 -200
- package/dist/profiles/profileFieldEditor.js.map +0 -1
- package/dist/profiles/profileFieldGrid.cjs +0 -250
- package/dist/profiles/profileFieldGrid.cjs.map +0 -1
- package/dist/profiles/profileFieldGrid.d.ts +0 -20
- package/dist/profiles/profileFieldGrid.d.ts.map +0 -1
- package/dist/profiles/profileFieldGrid.js +0 -250
- package/dist/profiles/profileFieldGrid.js.map +0 -1
- package/dist/profiles/profileFieldManager.cjs +0 -103
- package/dist/profiles/profileFieldManager.cjs.map +0 -1
- package/dist/profiles/profileFieldManager.d.ts.map +0 -1
- package/dist/profiles/profileFieldManager.js +0 -103
- package/dist/profiles/profileFieldManager.js.map +0 -1
- package/dist/profiles/profileFieldState.cjs +0 -136
- package/dist/profiles/profileFieldState.cjs.map +0 -1
- package/dist/profiles/profileFieldState.d.ts +0 -41
- package/dist/profiles/profileFieldState.d.ts.map +0 -1
- package/dist/profiles/profileFieldState.js +0 -136
- package/dist/profiles/profileFieldState.js.map +0 -1
- package/dist/profiles/profileFieldTypes.cjs.map +0 -1
- package/dist/profiles/profileFieldTypes.d.ts +0 -8
- package/dist/profiles/profileFieldTypes.d.ts.map +0 -1
- package/dist/profiles/profileFieldTypes.js.map +0 -1
- package/dist/profiles/profileParamModel.cjs.map +0 -1
- package/dist/profiles/profileParamModel.d.ts +0 -3
- package/dist/profiles/profileParamModel.d.ts.map +0 -1
- package/dist/profiles/profileParamModel.js.map +0 -1
- package/dist/profiles/profileSamplePayload.cjs.map +0 -1
- package/dist/profiles/profileSamplePayload.d.ts +0 -13
- package/dist/profiles/profileSamplePayload.d.ts.map +0 -1
- package/dist/profiles/profileSamplePayload.js.map +0 -1
- package/dist/profiles/profileWizard.cjs +0 -257
- package/dist/profiles/profileWizard.cjs.map +0 -1
- package/dist/profiles/profileWizard.d.ts +0 -12
- package/dist/profiles/profileWizard.d.ts.map +0 -1
- package/dist/profiles/profileWizard.js +0 -257
- package/dist/profiles/profileWizard.js.map +0 -1
- package/dist/profiles/profileWizardHelp.cjs.map +0 -1
- package/dist/profiles/profileWizardHelp.d.ts.map +0 -1
- package/dist/profiles/profileWizardHelp.js.map +0 -1
- package/dist/profiles/profileWizardModel.cjs +0 -198
- package/dist/profiles/profileWizardModel.cjs.map +0 -1
- package/dist/profiles/profileWizardModel.d.ts +0 -255
- package/dist/profiles/profileWizardModel.d.ts.map +0 -1
- package/dist/profiles/profileWizardModel.js +0 -198
- package/dist/profiles/profileWizardModel.js.map +0 -1
- package/dist/profiles/profileWizardQueryStep.cjs +0 -215
- package/dist/profiles/profileWizardQueryStep.cjs.map +0 -1
- package/dist/profiles/profileWizardQueryStep.d.ts.map +0 -1
- package/dist/profiles/profileWizardQueryStep.js +0 -215
- package/dist/profiles/profileWizardQueryStep.js.map +0 -1
- package/dist/profiles/profileWizardSteps.cjs +0 -214
- package/dist/profiles/profileWizardSteps.cjs.map +0 -1
- package/dist/profiles/profileWizardSteps.d.ts.map +0 -1
- package/dist/profiles/profileWizardSteps.js +0 -214
- package/dist/profiles/profileWizardSteps.js.map +0 -1
- package/dist/profiles/profileYaml.cjs +0 -19
- package/dist/profiles/profileYaml.cjs.map +0 -1
- package/dist/profiles/profileYaml.d.ts +0 -4
- package/dist/profiles/profileYaml.d.ts.map +0 -1
- package/dist/profiles/profileYaml.js +0 -19
- package/dist/profiles/profileYaml.js.map +0 -1
- package/dist/profiles/prometheusResults.cjs +0 -60
- package/dist/profiles/prometheusResults.cjs.map +0 -1
- package/dist/profiles/prometheusResults.d.ts +0 -7
- package/dist/profiles/prometheusResults.d.ts.map +0 -1
- package/dist/profiles/prometheusResults.js +0 -60
- package/dist/profiles/prometheusResults.js.map +0 -1
- package/dist/profiles/queryRowLimits.cjs +0 -82
- package/dist/profiles/queryRowLimits.cjs.map +0 -1
- package/dist/profiles/queryRowLimits.d.ts +0 -9
- package/dist/profiles/queryRowLimits.d.ts.map +0 -1
- package/dist/profiles/queryRowLimits.js +0 -82
- package/dist/profiles/queryRowLimits.js.map +0 -1
- package/dist/profiles/queryRowLimitsModel.cjs.map +0 -1
- package/dist/profiles/queryRowLimitsModel.d.ts +0 -9
- package/dist/profiles/queryRowLimitsModel.d.ts.map +0 -1
- package/dist/profiles/queryRowLimitsModel.js.map +0 -1
- package/dist/profiles/queryTargetPicker.cjs +0 -42
- package/dist/profiles/queryTargetPicker.cjs.map +0 -1
- package/dist/profiles/queryTargetPicker.d.ts +0 -8
- package/dist/profiles/queryTargetPicker.d.ts.map +0 -1
- package/dist/profiles/queryTargetPicker.js +0 -42
- package/dist/profiles/queryTargetPicker.js.map +0 -1
- package/dist/profiles/testSchema.d.ts +0 -3
- package/dist/profiles/testSchema.d.ts.map +0 -1
- /package/dist/profiles/{catalogTree.d.ts → connections/catalogTree.d.ts} +0 -0
- /package/dist/profiles/{profileBuilder.d.ts → editor/profileBuilder.d.ts} +0 -0
- /package/dist/profiles/{profileBuilderExtension.cjs → editor/profileBuilderExtension.cjs} +0 -0
- /package/dist/profiles/{profileBuilderExtension.js → editor/profileBuilderExtension.js} +0 -0
- /package/dist/profiles/{profileEditorPreview.cjs → editor/profileEditorPreview.cjs} +0 -0
- /package/dist/profiles/{profileEditorPreview.js → editor/profileEditorPreview.js} +0 -0
- /package/dist/profiles/{profileEditorRail.cjs → editor/profileEditorRail.cjs} +0 -0
- /package/dist/profiles/{profileEditorRail.d.ts → editor/profileEditorRail.d.ts} +0 -0
- /package/dist/profiles/{profileEditorRail.js → editor/profileEditorRail.js} +0 -0
- /package/dist/profiles/{profileEditorRoutes.cjs → editor/profileEditorRoutes.cjs} +0 -0
- /package/dist/profiles/{profileEditorRoutes.d.ts → editor/profileEditorRoutes.d.ts} +0 -0
- /package/dist/profiles/{profileEditorRoutes.js → editor/profileEditorRoutes.js} +0 -0
- /package/dist/profiles/{esParamMappingPill.cjs → elasticsearch/esParamMappingPill.cjs} +0 -0
- /package/dist/profiles/{esParamMappingPill.d.ts → elasticsearch/esParamMappingPill.d.ts} +0 -0
- /package/dist/profiles/{esParamMappingPill.js → elasticsearch/esParamMappingPill.js} +0 -0
- /package/dist/profiles/{esQueryBuilderExtension.cjs → elasticsearch/esQueryBuilderExtension.cjs} +0 -0
- /package/dist/profiles/{esQueryBuilderExtension.js → elasticsearch/esQueryBuilderExtension.js} +0 -0
- /package/dist/profiles/{esQueryBuilderModel.cjs → elasticsearch/esQueryBuilderModel.cjs} +0 -0
- /package/dist/profiles/{esQueryBuilderModel.js → elasticsearch/esQueryBuilderModel.js} +0 -0
- /package/dist/profiles/{esQueryClauseGroup.d.ts → elasticsearch/esQueryClauseGroup.d.ts} +0 -0
- /package/dist/profiles/{esQueryGroupModel.cjs → elasticsearch/esQueryGroupModel.cjs} +0 -0
- /package/dist/profiles/{esQueryGroupModel.d.ts → elasticsearch/esQueryGroupModel.d.ts} +0 -0
- /package/dist/profiles/{esQueryGroupModel.js → elasticsearch/esQueryGroupModel.js} +0 -0
- /package/dist/profiles/{esQueryOccur.cjs → elasticsearch/esQueryOccur.cjs} +0 -0
- /package/dist/profiles/{esQueryOccur.d.ts → elasticsearch/esQueryOccur.d.ts} +0 -0
- /package/dist/profiles/{esQueryOccur.js → elasticsearch/esQueryOccur.js} +0 -0
- /package/dist/profiles/{esQueryOperandModel.cjs → elasticsearch/esQueryOperandModel.cjs} +0 -0
- /package/dist/profiles/{esQueryOperandModel.js → elasticsearch/esQueryOperandModel.js} +0 -0
- /package/dist/profiles/{esQueryOutputModel.cjs → elasticsearch/esQueryOutputModel.cjs} +0 -0
- /package/dist/profiles/{esQueryOutputModel.d.ts → elasticsearch/esQueryOutputModel.d.ts} +0 -0
- /package/dist/profiles/{esQueryOutputModel.js → elasticsearch/esQueryOutputModel.js} +0 -0
- /package/dist/profiles/{esQueryPreview.cjs → elasticsearch/esQueryPreview.cjs} +0 -0
- /package/dist/profiles/{esQueryPreview.d.ts → elasticsearch/esQueryPreview.d.ts} +0 -0
- /package/dist/profiles/{esQueryPreview.js → elasticsearch/esQueryPreview.js} +0 -0
- /package/dist/profiles/{esQuerySortEditor.d.ts → elasticsearch/esQuerySortEditor.d.ts} +0 -0
- /package/dist/profiles/{esQuerySortModel.cjs → elasticsearch/esQuerySortModel.cjs} +0 -0
- /package/dist/profiles/{esQuerySortModel.d.ts → elasticsearch/esQuerySortModel.d.ts} +0 -0
- /package/dist/profiles/{esQuerySortModel.js → elasticsearch/esQuerySortModel.js} +0 -0
- /package/dist/profiles/{esValueCombobox.d.ts → elasticsearch/esValueCombobox.d.ts} +0 -0
- /package/dist/profiles/{profileColumnModel.cjs → fields/profileColumnModel.cjs} +0 -0
- /package/dist/profiles/{profileColumnModel.js → fields/profileColumnModel.js} +0 -0
- /package/dist/profiles/{profileFieldManager.d.ts → fields/profileFieldManager.d.ts} +0 -0
- /package/dist/profiles/{profileFieldTypes.cjs → fields/profileFieldTypes.cjs} +0 -0
- /package/dist/profiles/{profileFieldTypes.js → fields/profileFieldTypes.js} +0 -0
- /package/dist/profiles/{profileParamModel.cjs → fields/profileParamModel.cjs} +0 -0
- /package/dist/profiles/{profileParamModel.js → fields/profileParamModel.js} +0 -0
- /package/dist/profiles/{jsonPathSampleRow.cjs → query/jsonPathSampleRow.cjs} +0 -0
- /package/dist/profiles/{jsonPathSampleRow.d.ts → query/jsonPathSampleRow.d.ts} +0 -0
- /package/dist/profiles/{jsonPathSampleRow.js → query/jsonPathSampleRow.js} +0 -0
- /package/dist/profiles/{profileSamplePayload.cjs → query/profileSamplePayload.cjs} +0 -0
- /package/dist/profiles/{profileSamplePayload.js → query/profileSamplePayload.js} +0 -0
- /package/dist/profiles/{queryRowLimitsModel.cjs → query/queryRowLimitsModel.cjs} +0 -0
- /package/dist/profiles/{queryRowLimitsModel.js → query/queryRowLimitsModel.js} +0 -0
- /package/dist/profiles/{profileWizardHelp.cjs → wizard/profileWizardHelp.cjs} +0 -0
- /package/dist/profiles/{profileWizardHelp.d.ts → wizard/profileWizardHelp.d.ts} +0 -0
- /package/dist/profiles/{profileWizardHelp.js → wizard/profileWizardHelp.js} +0 -0
- /package/dist/profiles/{profileWizardQueryStep.d.ts → wizard/profileWizardQueryStep.d.ts} +0 -0
- /package/dist/profiles/{profileWizardSteps.d.ts → wizard/profileWizardSteps.d.ts} +0 -0
package/dist/data/ObjectGraph.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useMemo } from "react";
|
|
2
3
|
import { cn } from "../lib/utils.js";
|
|
4
|
+
import { Icon } from "./Icon.js";
|
|
5
|
+
import { DropdownMenu } from "../overlay/DropdownMenu.js";
|
|
6
|
+
import { Modal } from "../overlay/Modal.js";
|
|
7
|
+
import { pruneNullNodes, countObjectGraphNodes } from "./object-graph-nodes.js";
|
|
3
8
|
import { Tree } from "./Tree.js";
|
|
9
|
+
import { UiCheck } from "../icons/components/UiCheck.js";
|
|
10
|
+
import { UiFullscreen } from "../icons/components/UiFullscreen.js";
|
|
11
|
+
import { UiEllipsis } from "../icons/components/UiEllipsis.js";
|
|
4
12
|
function ObjectGraph({
|
|
5
13
|
roots,
|
|
6
14
|
className,
|
|
@@ -8,39 +16,115 @@ function ObjectGraph({
|
|
|
8
16
|
showControls,
|
|
9
17
|
defaultOpenDepth = 2,
|
|
10
18
|
renderLabel,
|
|
19
|
+
renderValue,
|
|
11
20
|
loadChildren,
|
|
12
21
|
onNodeSelect,
|
|
13
|
-
selectedId
|
|
22
|
+
selectedId,
|
|
23
|
+
showOptionsMenu = false,
|
|
24
|
+
defaultHideNulls = false,
|
|
25
|
+
menuActions,
|
|
26
|
+
showFullscreenControl = false,
|
|
27
|
+
fullscreenTitle = "Object",
|
|
28
|
+
fullscreenButtonLabel = "Open object browser full screen"
|
|
29
|
+
}) {
|
|
30
|
+
const [hideNulls, setHideNulls] = useState(defaultHideNulls);
|
|
31
|
+
const [fullscreenOpen, setFullscreenOpen] = useState(false);
|
|
32
|
+
const visibleRoots = useMemo(
|
|
33
|
+
() => hideNulls ? pruneNullNodes(roots) : roots,
|
|
34
|
+
[hideNulls, roots]
|
|
35
|
+
);
|
|
36
|
+
const hiddenCount = useMemo(
|
|
37
|
+
() => hideNulls ? countObjectGraphNodes(roots) - countObjectGraphNodes(visibleRoots) : 0,
|
|
38
|
+
[hideNulls, roots, visibleRoots]
|
|
39
|
+
);
|
|
40
|
+
const items = [
|
|
41
|
+
{
|
|
42
|
+
label: hideNulls && hiddenCount > 0 ? `Hide null values (${hiddenCount})` : "Hide null values",
|
|
43
|
+
onSelect: () => setHideNulls((current) => !current),
|
|
44
|
+
...hideNulls ? { icon: UiCheck } : {},
|
|
45
|
+
title: "Drop fields whose value is null or blank"
|
|
46
|
+
},
|
|
47
|
+
...menuActions ?? []
|
|
48
|
+
];
|
|
49
|
+
const renderGraph = ({ inFullscreen }) => {
|
|
50
|
+
const actions = showOptionsMenu || showFullscreenControl && !inFullscreen ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
51
|
+
showFullscreenControl && !inFullscreen && /* @__PURE__ */ jsx(ToolbarButton, { label: fullscreenButtonLabel, onClick: () => setFullscreenOpen(true), children: /* @__PURE__ */ jsx(Icon, { icon: UiFullscreen, className: "text-sm" }) }),
|
|
52
|
+
showOptionsMenu && /* @__PURE__ */ jsx(
|
|
53
|
+
DropdownMenu,
|
|
54
|
+
{
|
|
55
|
+
items,
|
|
56
|
+
align: "right",
|
|
57
|
+
menuLabel: "Display options",
|
|
58
|
+
trigger: /* @__PURE__ */ jsx(ToolbarButton, { label: "Display options", children: /* @__PURE__ */ jsx(Icon, { icon: UiEllipsis, className: "text-sm" }) })
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
] }) : void 0;
|
|
62
|
+
return /* @__PURE__ */ jsx(
|
|
63
|
+
Tree,
|
|
64
|
+
{
|
|
65
|
+
roots: visibleRoots,
|
|
66
|
+
getKey: (n) => n.id,
|
|
67
|
+
getChildren: (n) => n.children,
|
|
68
|
+
defaultOpen: (_n, depth) => depth < defaultOpenDepth,
|
|
69
|
+
...className !== void 0 && !inFullscreen ? { className } : {},
|
|
70
|
+
...actions !== void 0 ? { actions } : {},
|
|
71
|
+
empty: hideNulls && roots.length > 0 ? /* @__PURE__ */ jsx("div", { className: "px-3 py-4 text-sm text-muted-foreground", children: "All values are null." }) : empty,
|
|
72
|
+
...showControls !== void 0 ? { showControls } : {},
|
|
73
|
+
...loadChildren ? { loadChildren, hasMoreChildren: (n) => n.expandable === true } : {},
|
|
74
|
+
renderRow: ({ node, loading, error }) => /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2 font-mono text-xs", children: [
|
|
75
|
+
renderLabel ? renderLabel(node) : /* @__PURE__ */ jsx(
|
|
76
|
+
DefaultObjectLabel,
|
|
77
|
+
{
|
|
78
|
+
node,
|
|
79
|
+
selected: selectedId != null && node.id === selectedId,
|
|
80
|
+
...renderValue ? { renderValue } : {},
|
|
81
|
+
...onNodeSelect ? { onSelect: onNodeSelect } : {}
|
|
82
|
+
}
|
|
83
|
+
),
|
|
84
|
+
loading && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-muted-foreground", children: "…" }),
|
|
85
|
+
error != null && /* @__PURE__ */ jsx("span", { className: "break-all text-red-600", children: error instanceof Error ? error.message : String(error) })
|
|
86
|
+
] })
|
|
87
|
+
}
|
|
88
|
+
);
|
|
89
|
+
};
|
|
90
|
+
if (!showFullscreenControl) return renderGraph({ inFullscreen: false });
|
|
91
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
92
|
+
renderGraph({ inFullscreen: false }),
|
|
93
|
+
/* @__PURE__ */ jsx(
|
|
94
|
+
Modal,
|
|
95
|
+
{
|
|
96
|
+
open: fullscreenOpen,
|
|
97
|
+
onClose: () => setFullscreenOpen(false),
|
|
98
|
+
title: fullscreenTitle,
|
|
99
|
+
size: "full",
|
|
100
|
+
className: "h-[95vh]",
|
|
101
|
+
scrollBody: false,
|
|
102
|
+
children: /* @__PURE__ */ jsx("div", { className: "flex h-full min-h-0 flex-col", children: renderGraph({ inFullscreen: true }) })
|
|
103
|
+
}
|
|
104
|
+
)
|
|
105
|
+
] });
|
|
106
|
+
}
|
|
107
|
+
function ToolbarButton({
|
|
108
|
+
label,
|
|
109
|
+
onClick,
|
|
110
|
+
children
|
|
14
111
|
}) {
|
|
15
112
|
return /* @__PURE__ */ jsx(
|
|
16
|
-
|
|
113
|
+
"button",
|
|
17
114
|
{
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
...
|
|
23
|
-
|
|
24
|
-
...showControls !== void 0 ? { showControls } : {},
|
|
25
|
-
...loadChildren ? { loadChildren, hasMoreChildren: (n) => n.expandable === true } : {},
|
|
26
|
-
renderRow: ({ node, loading, error }) => /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2 font-mono text-xs", children: [
|
|
27
|
-
renderLabel ? renderLabel(node) : /* @__PURE__ */ jsx(
|
|
28
|
-
DefaultObjectLabel,
|
|
29
|
-
{
|
|
30
|
-
node,
|
|
31
|
-
selected: selectedId != null && node.id === selectedId,
|
|
32
|
-
...onNodeSelect ? { onSelect: onNodeSelect } : {}
|
|
33
|
-
}
|
|
34
|
-
),
|
|
35
|
-
loading && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-muted-foreground", children: "…" }),
|
|
36
|
-
error != null && /* @__PURE__ */ jsx("span", { className: "break-all text-red-600", children: error instanceof Error ? error.message : String(error) })
|
|
37
|
-
] })
|
|
115
|
+
type: "button",
|
|
116
|
+
"aria-label": label,
|
|
117
|
+
title: label,
|
|
118
|
+
className: "inline-flex h-6 w-6 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-accent-foreground",
|
|
119
|
+
...onClick ? { onClick } : {},
|
|
120
|
+
children
|
|
38
121
|
}
|
|
39
122
|
);
|
|
40
123
|
}
|
|
41
124
|
function DefaultObjectLabel({
|
|
42
125
|
node,
|
|
43
126
|
onSelect,
|
|
127
|
+
renderValue,
|
|
44
128
|
selected = false
|
|
45
129
|
}) {
|
|
46
130
|
const label = onSelect ? (
|
|
@@ -64,13 +148,14 @@ function DefaultObjectLabel({
|
|
|
64
148
|
}
|
|
65
149
|
)
|
|
66
150
|
) : /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: node.label });
|
|
151
|
+
const custom = renderValue == null ? void 0 : renderValue(node);
|
|
67
152
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
68
153
|
label,
|
|
69
154
|
node.type && /* @__PURE__ */ jsxs("span", { className: "text-muted-foreground/60", children: [
|
|
70
155
|
"@",
|
|
71
156
|
node.type
|
|
72
157
|
] }),
|
|
73
|
-
node.value != null ? /* @__PURE__ */ jsx("span", { className: "break-all text-foreground", children: String(node.value) }) : node.raw && !node.children ? /* @__PURE__ */ jsx("span", { className: "break-all italic text-muted-foreground/70", children: node.raw }) : null
|
|
158
|
+
custom != null ? custom : node.value != null ? /* @__PURE__ */ jsx("span", { className: "break-all text-foreground", children: String(node.value) }) : node.raw && !node.children ? /* @__PURE__ */ jsx("span", { className: "break-all italic text-muted-foreground/70", children: node.raw }) : null
|
|
74
159
|
] });
|
|
75
160
|
}
|
|
76
161
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectGraph.js","sources":["../../src/data/ObjectGraph.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { Tree } from \"./Tree\";\n\n// ObjectGraph renders a generic, type-agnostic expandable object/value\n// inspector — a bean's fields, a map's entries, a list's elements, a scalar\n// leaf. It is the shared home for what used to be per-feature object viewers\n// (e.g. an OGNL inspector): any producer maps its data into ObjectGraphNode and\n// gets the same tree, search, and lazy-expansion behaviour.\n\nexport type ObjectGraphNode = {\n /** Stable unique key within the tree. */\n id: string;\n /** Display label (field name, map key, index, …). */\n label: string;\n /** Optional type annotation rendered as `@type`. */\n type?: string;\n /** Scalar value for a leaf; absent for containers. */\n value?: string | number | boolean | null;\n /** Free-form node kind hint (object|map|list|scalar|…). */\n kind?: string;\n /** Accessor path from the root (used by lazy expansion). */\n path?: string;\n /** Verbatim preview for an opaque node with no structured children. */\n raw?: string;\n /** Node can be expanded via loadChildren even with no inline children. */\n expandable?: boolean;\n /** Caller-opaque context (carried through, not rendered by default). */\n metadata?: Record<string, unknown>;\n children?: ObjectGraphNode[];\n};\n\nexport type ObjectGraphProps<T extends ObjectGraphNode = ObjectGraphNode> = {\n roots: T[];\n className?: string;\n empty?: ReactNode;\n showControls?: boolean;\n /** Open nodes shallower than this depth on first render (default 2). */\n defaultOpenDepth?: number;\n /** Override the row label rendering. */\n renderLabel?: (node: T) => ReactNode;\n /**\n * Lazily fetch a node's children the first time an `expandable` node opens.\n * When omitted, only inline `children` are shown.\n */\n loadChildren?: (node: T) => Promise<T[]>;\n /**\n * Called when a node's label is clicked. This makes the label an actionable\n * target (e.g. copy/drill its `path`) **without toggling expansion** — the\n * chevron stays the only expand/collapse control. Omit for a static tree.\n */\n onNodeSelect?: (node: T) => void;\n /** `id` of the currently-selected node; its label is highlighted. */\n selectedId?: string;\n};\n\nexport function ObjectGraph<T extends ObjectGraphNode = ObjectGraphNode>({\n roots,\n className,\n empty,\n showControls,\n defaultOpenDepth = 2,\n renderLabel,\n loadChildren,\n onNodeSelect,\n selectedId,\n}: ObjectGraphProps<T>) {\n return (\n <Tree<T>\n roots={roots}\n getKey={(n) => n.id}\n getChildren={(n) => n.children as T[] | undefined}\n defaultOpen={(_n, depth) => depth < defaultOpenDepth}\n {...(className !== undefined ? { className } : {})}\n {...(empty !== undefined ? { empty } : {})}\n {...(showControls !== undefined ? { showControls } : {})}\n {...(loadChildren ? { loadChildren, hasMoreChildren: (n: T) => n.expandable === true } : {})}\n renderRow={({ node, loading, error }) => (\n <div className=\"flex min-w-0 flex-1 flex-wrap items-center gap-2 font-mono text-xs\">\n {renderLabel ? (\n renderLabel(node)\n ) : (\n <DefaultObjectLabel\n node={node}\n selected={selectedId != null && node.id === selectedId}\n {...(onNodeSelect ? { onSelect: onNodeSelect } : {})}\n />\n )}\n {loading && <span className=\"shrink-0 text-muted-foreground\">…</span>}\n {error != null && (\n <span className=\"break-all text-red-600\">\n {error instanceof Error ? error.message : String(error)}\n </span>\n )}\n </div>\n )}\n />\n );\n}\n\nfunction DefaultObjectLabel<T extends ObjectGraphNode>({\n node,\n onSelect,\n selected = false,\n}: {\n node: T;\n onSelect?: (node: T) => void;\n selected?: boolean;\n}) {\n const label = onSelect ? (\n // A button so the label is a first-class click target; stopPropagation keeps\n // the row's onClick (which toggles the node) from firing, so selecting a node\n // never expands or collapses it.\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n onSelect(node);\n }}\n title=\"Select this path\"\n className={cn(\n \"rounded px-0.5 text-left text-muted-foreground hover:text-foreground hover:underline\",\n selected && \"bg-primary/15 text-foreground\",\n )}\n >\n {node.label}\n </button>\n ) : (\n <span className=\"text-muted-foreground\">{node.label}</span>\n );\n return (\n <>\n {label}\n {node.type && <span className=\"text-muted-foreground/60\">@{node.type}</span>}\n {node.value != null ? (\n <span className=\"break-all text-foreground\">{String(node.value)}</span>\n ) : node.raw && !node.children ? (\n <span className=\"break-all italic text-muted-foreground/70\">{node.raw}</span>\n ) : null}\n </>\n );\n}\n"],"names":[],"mappings":";;;AAwDO,SAAS,YAAyD;AAAA,EACvE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,mBAAmB;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAwB;AACtB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,QAAQ,CAAC,MAAM,EAAE;AAAA,MACjB,aAAa,CAAC,MAAM,EAAE;AAAA,MACtB,aAAa,CAAC,IAAI,UAAU,QAAQ;AAAA,MACnC,GAAI,cAAc,SAAY,EAAE,UAAA,IAAc,CAAA;AAAA,MAC9C,GAAI,UAAU,SAAY,EAAE,MAAA,IAAU,CAAA;AAAA,MACtC,GAAI,iBAAiB,SAAY,EAAE,aAAA,IAAiB,CAAA;AAAA,MACpD,GAAI,eAAe,EAAE,cAAc,iBAAiB,CAAC,MAAS,EAAE,eAAe,KAAA,IAAS,CAAA;AAAA,MACzF,WAAW,CAAC,EAAE,MAAM,SAAS,YAC3B,qBAAC,OAAA,EAAI,WAAU,sEACZ,UAAA;AAAA,QAAA,cACC,YAAY,IAAI,IAEhB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC;AAAA,YACA,UAAU,cAAc,QAAQ,KAAK,OAAO;AAAA,YAC3C,GAAI,eAAe,EAAE,UAAU,iBAAiB,CAAA;AAAA,UAAC;AAAA,QAAA;AAAA,QAGrD,WAAW,oBAAC,QAAA,EAAK,WAAU,kCAAiC,UAAA,KAAC;AAAA,QAC7D,SAAS,QACR,oBAAC,QAAA,EAAK,WAAU,0BACb,UAAA,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,EAAA,CACxD;AAAA,MAAA,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA;AAIR;AAEA,SAAS,mBAA8C;AAAA,EACrD;AAAA,EACA;AAAA,EACA,WAAW;AACb,GAIG;AACD,QAAM,QAAQ;AAAA;AAAA;AAAA;AAAA,IAIZ;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAS,CAAC,MAAM;AACd,YAAE,gBAAA;AACF,mBAAS,IAAI;AAAA,QACf;AAAA,QACA,OAAM;AAAA,QACN,WAAW;AAAA,UACT;AAAA,UACA,YAAY;AAAA,QAAA;AAAA,QAGb,UAAA,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,MAGR,oBAAC,QAAA,EAAK,WAAU,yBAAyB,eAAK,OAAM;AAEtD,SACE,qBAAA,UAAA,EACG,UAAA;AAAA,IAAA;AAAA,IACA,KAAK,QAAQ,qBAAC,QAAA,EAAK,WAAU,4BAA2B,UAAA;AAAA,MAAA;AAAA,MAAE,KAAK;AAAA,IAAA,GAAK;AAAA,IACpE,KAAK,SAAS,OACb,oBAAC,UAAK,WAAU,6BAA6B,UAAA,OAAO,KAAK,KAAK,EAAA,CAAE,IAC9D,KAAK,OAAO,CAAC,KAAK,WACpB,oBAAC,UAAK,WAAU,6CAA6C,UAAA,KAAK,IAAA,CAAI,IACpE;AAAA,EAAA,GACN;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"ObjectGraph.js","sources":["../../src/data/ObjectGraph.tsx"],"sourcesContent":["import { useMemo, useState, type ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { Icon } from \"./Icon\";\nimport { UiCheck, UiEllipsis, UiFullscreen } from \"../icons\";\nimport { DropdownMenu, type DropdownMenuItem } from \"../overlay/DropdownMenu\";\nimport { Modal } from \"../overlay/Modal\";\nimport {\n countObjectGraphNodes,\n pruneNullNodes,\n type ObjectGraphNode,\n} from \"./object-graph-nodes\";\nimport { Tree } from \"./Tree\";\n\nexport type { ObjectGraphNode };\n\n// ObjectGraph renders a generic, type-agnostic expandable object/value\n// inspector — a bean's fields, a map's entries, a list's elements, a scalar\n// leaf. It is the shared home for what used to be per-feature object viewers\n// (e.g. an OGNL inspector): any producer maps its data into ObjectGraphNode and\n// gets the same tree, search, and lazy-expansion behaviour.\n\nexport type ObjectGraphProps<T extends ObjectGraphNode = ObjectGraphNode> = {\n roots: T[];\n className?: string;\n empty?: ReactNode;\n showControls?: boolean;\n /** Open nodes shallower than this depth on first render (default 2). */\n defaultOpenDepth?: number;\n /** Override the row label rendering. */\n renderLabel?: (node: T) => ReactNode;\n /**\n * Override how a node's value is rendered. Return `null`/`undefined` to fall\n * back to the default scalar/raw span, so a caller only has to handle the\n * nodes it recognises (e.g. a Java exception leaf).\n */\n renderValue?: (node: T) => ReactNode;\n /**\n * Lazily fetch a node's children the first time an `expandable` node opens.\n * When omitted, only inline `children` are shown.\n */\n loadChildren?: (node: T) => Promise<T[]>;\n /**\n * Called when a node's label is clicked. This makes the label an actionable\n * target (e.g. copy/drill its `path`) **without toggling expansion** — the\n * chevron stays the only expand/collapse control. Omit for a static tree.\n */\n onNodeSelect?: (node: T) => void;\n /** `id` of the currently-selected node; its label is highlighted. */\n selectedId?: string;\n /** Render a ⋮ display-options menu in the toolbar. Defaults to `false`. */\n showOptionsMenu?: boolean;\n /**\n * Initial state of the options menu's \"Hide null values\" toggle. Off by\n * default so existing consumers keep seeing every node.\n */\n defaultHideNulls?: boolean;\n /** Extra entries appended to the options menu. */\n menuActions?: DropdownMenuItem[];\n /**\n * Render a fullscreen toggle in the toolbar. When clicked, the graph\n * re-renders inside a full-viewport Modal. Defaults to `false`.\n */\n showFullscreenControl?: boolean;\n /** Title of the fullscreen modal. */\n fullscreenTitle?: ReactNode;\n /** Accessible name of the fullscreen button. */\n fullscreenButtonLabel?: string;\n};\n\nexport function ObjectGraph<T extends ObjectGraphNode = ObjectGraphNode>({\n roots,\n className,\n empty,\n showControls,\n defaultOpenDepth = 2,\n renderLabel,\n renderValue,\n loadChildren,\n onNodeSelect,\n selectedId,\n showOptionsMenu = false,\n defaultHideNulls = false,\n menuActions,\n showFullscreenControl = false,\n fullscreenTitle = \"Object\",\n fullscreenButtonLabel = \"Open object browser full screen\",\n}: ObjectGraphProps<T>) {\n const [hideNulls, setHideNulls] = useState(defaultHideNulls);\n const [fullscreenOpen, setFullscreenOpen] = useState(false);\n\n const visibleRoots = useMemo(\n () => (hideNulls ? pruneNullNodes(roots) : roots),\n [hideNulls, roots],\n );\n const hiddenCount = useMemo(\n () => (hideNulls ? countObjectGraphNodes(roots) - countObjectGraphNodes(visibleRoots) : 0),\n [hideNulls, roots, visibleRoots],\n );\n\n const items: DropdownMenuItem[] = [\n {\n label: hideNulls && hiddenCount > 0 ? `Hide null values (${hiddenCount})` : \"Hide null values\",\n onSelect: () => setHideNulls((current) => !current),\n ...(hideNulls ? { icon: UiCheck } : {}),\n title: \"Drop fields whose value is null or blank\",\n },\n ...(menuActions ?? []),\n ];\n\n const renderGraph = ({ inFullscreen }: { inFullscreen: boolean }) => {\n const actions =\n showOptionsMenu || (showFullscreenControl && !inFullscreen) ? (\n <>\n {showFullscreenControl && !inFullscreen && (\n <ToolbarButton label={fullscreenButtonLabel} onClick={() => setFullscreenOpen(true)}>\n <Icon icon={UiFullscreen} className=\"text-sm\" />\n </ToolbarButton>\n )}\n {showOptionsMenu && (\n <DropdownMenu\n items={items}\n align=\"right\"\n menuLabel=\"Display options\"\n trigger={\n <ToolbarButton label=\"Display options\">\n <Icon icon={UiEllipsis} className=\"text-sm\" />\n </ToolbarButton>\n }\n />\n )}\n </>\n ) : undefined;\n\n return (\n <Tree<T>\n roots={visibleRoots}\n getKey={(n) => n.id}\n getChildren={(n) => n.children as T[] | undefined}\n defaultOpen={(_n, depth) => depth < defaultOpenDepth}\n {...(className !== undefined && !inFullscreen ? { className } : {})}\n {...(actions !== undefined ? { actions } : {})}\n empty={\n hideNulls && roots.length > 0 ? (\n <div className=\"px-3 py-4 text-sm text-muted-foreground\">All values are null.</div>\n ) : (\n empty\n )\n }\n {...(showControls !== undefined ? { showControls } : {})}\n {...(loadChildren ? { loadChildren, hasMoreChildren: (n: T) => n.expandable === true } : {})}\n renderRow={({ node, loading, error }) => (\n <div className=\"flex min-w-0 flex-1 flex-wrap items-center gap-2 font-mono text-xs\">\n {renderLabel ? (\n renderLabel(node)\n ) : (\n <DefaultObjectLabel\n node={node}\n selected={selectedId != null && node.id === selectedId}\n {...(renderValue ? { renderValue } : {})}\n {...(onNodeSelect ? { onSelect: onNodeSelect } : {})}\n />\n )}\n {loading && <span className=\"shrink-0 text-muted-foreground\">…</span>}\n {error != null && (\n <span className=\"break-all text-red-600\">\n {error instanceof Error ? error.message : String(error)}\n </span>\n )}\n </div>\n )}\n />\n );\n };\n\n if (!showFullscreenControl) return renderGraph({ inFullscreen: false });\n\n return (\n <>\n {renderGraph({ inFullscreen: false })}\n <Modal\n open={fullscreenOpen}\n onClose={() => setFullscreenOpen(false)}\n title={fullscreenTitle}\n size=\"full\"\n className=\"h-[95vh]\"\n scrollBody={false}\n >\n <div className=\"flex h-full min-h-0 flex-col\">{renderGraph({ inFullscreen: true })}</div>\n </Modal>\n </>\n );\n}\n\nfunction ToolbarButton({\n label,\n onClick,\n children,\n}: {\n label: string;\n onClick?: () => void;\n children: ReactNode;\n}) {\n return (\n <button\n type=\"button\"\n aria-label={label}\n title={label}\n className=\"inline-flex h-6 w-6 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-accent-foreground\"\n {...(onClick ? { onClick } : {})}\n >\n {children}\n </button>\n );\n}\n\nfunction DefaultObjectLabel<T extends ObjectGraphNode>({\n node,\n onSelect,\n renderValue,\n selected = false,\n}: {\n node: T;\n onSelect?: (node: T) => void;\n renderValue?: (node: T) => ReactNode;\n selected?: boolean;\n}) {\n const label = onSelect ? (\n // A button so the label is a first-class click target; stopPropagation keeps\n // the row's onClick (which toggles the node) from firing, so selecting a node\n // never expands or collapses it.\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n onSelect(node);\n }}\n title=\"Select this path\"\n className={cn(\n \"rounded px-0.5 text-left text-muted-foreground hover:text-foreground hover:underline\",\n selected && \"bg-primary/15 text-foreground\",\n )}\n >\n {node.label}\n </button>\n ) : (\n <span className=\"text-muted-foreground\">{node.label}</span>\n );\n const custom = renderValue?.(node);\n return (\n <>\n {label}\n {node.type && <span className=\"text-muted-foreground/60\">@{node.type}</span>}\n {custom != null ? (\n custom\n ) : node.value != null ? (\n <span className=\"break-all text-foreground\">{String(node.value)}</span>\n ) : node.raw && !node.children ? (\n <span className=\"break-all italic text-muted-foreground/70\">{node.raw}</span>\n ) : null}\n </>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -92,7 +92,7 @@ function PromptBanner({
|
|
|
92
92
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
93
93
|
"textarea",
|
|
94
94
|
{
|
|
95
|
-
className: "min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-
|
|
95
|
+
className: "min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-placeholder focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
96
96
|
placeholder: "Add a short note",
|
|
97
97
|
value: comment,
|
|
98
98
|
onChange: (event) => setComment(event.target.value)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptBanner.cjs","sources":["../../src/data/PromptBanner.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\nimport { Button } from \"../components/button\";\nimport { Icon } from \"./Icon\";\nimport { UiCheck, UiClose, UiComment, UiHourglass, UiQuestion, UiRobotAi } from \"../icons\";\nimport { cn } from \"../lib/utils\";\nimport { answerPrompt, usePrompts, type PromptFilter, type PromptSnapshot } from \"../hooks/use-prompts\";\nimport { PromptDialog } from \"./PromptDialog\";\nimport {\n analyzePromptInlineActions,\n buildPromptInlineValues,\n initialPromptComment,\n summarizePromptAnswer,\n summarizePrompts,\n type PromptInlineDecision,\n} from \"./PromptBanner.model\";\n\nexport interface PromptBannerProps extends PromptFilter {\n /** Base path the prompt API is mounted under, e.g. \"/api/todos\". */\n basePath?: string | undefined;\n enabled?: boolean | undefined;\n /** Override the headline; defaults to a count-aware message. */\n title?: string | undefined;\n className?: string | undefined;\n /** Render approve/reject quick actions when the prompt schema supports them. */\n inlineActions?: \"auto\" | false | undefined;\n /** Show compact counts and recent prompt outcomes, not only the current pending prompt. */\n showSummary?: boolean | undefined;\n /** Maximum recent prompts shown in the summary list. */\n historyLimit?: number | undefined;\n}\n\n// PromptBanner subscribes to pending prompts for a scope (owner / session label)\n// and surfaces them as an inline affordance, opening a PromptDialog to answer.\n// Mount it scoped to a todo (owner) at the top of a detail page, or to a session\n// (labels.session) inside a session view using the same component and filters.\nexport function PromptBanner({\n basePath = \"/api/todos\",\n enabled,\n title,\n className,\n inlineActions = \"auto\",\n showSummary = true,\n historyLimit = 5,\n state: _ignoredState,\n ...filter\n}: PromptBannerProps) {\n const { prompts, pending } = usePrompts({\n ...filter,\n basePath,\n ...(enabled !== undefined ? { enabled } : {}),\n ...(showSummary ? {} : { state: \"pending\" }),\n });\n const [active, setActive] = useState<PromptSnapshot | null>(null);\n const [comment, setComment] = useState(\"\");\n const [resolving, setResolving] = useState<PromptInlineDecision | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n const next = pending[0];\n const activePrompt = active ?? next;\n const inlineSpec = useMemo(\n () => (inlineActions === \"auto\" && activePrompt ? analyzePromptInlineActions(activePrompt) : null),\n [activePrompt, inlineActions],\n );\n const summary = useMemo(() => summarizePrompts(prompts), [prompts]);\n const recent = prompts.slice(0, Math.max(0, historyLimit));\n\n useEffect(() => {\n setComment(activePrompt ? initialPromptComment(activePrompt, inlineSpec) : \"\");\n setError(null);\n setResolving(null);\n }, [activePrompt?.id, inlineSpec]);\n\n if (showSummary ? prompts.length === 0 : !next) return null;\n const headline =\n title ??\n (pending.length > 1\n ? `${pending.length} questions need your input`\n : next?.title ?? \"No pending prompts\");\n\n const resolveInline = async (decision: PromptInlineDecision) => {\n if (!activePrompt || !inlineSpec) return;\n setResolving(decision);\n setError(null);\n try {\n await answerPrompt(basePath, activePrompt.id, {\n values: buildPromptInlineValues(activePrompt, inlineSpec, decision, comment),\n });\n setActive(null);\n } catch (e) {\n setError(e instanceof Error ? e.message : String(e));\n } finally {\n setResolving(null);\n }\n };\n\n const commentRequiredButEmpty = Boolean(inlineSpec?.commentRequired && comment.trim().length === 0);\n\n return (\n <section\n aria-label=\"Prompt requests\"\n className={cn(\n \"rounded-md border border-border bg-card px-3 py-2 text-card-foreground\",\n className,\n )}\n >\n <div className=\"flex flex-col gap-3\">\n <div className=\"flex flex-wrap items-start justify-between gap-3\">\n <div className=\"flex min-w-0 flex-1 items-start gap-2\">\n <Icon icon={next ? UiQuestion : UiRobotAi} className=\"mt-0.5 size-4 shrink-0\" />\n <div className=\"min-w-0\">\n <div className=\"truncate text-sm font-medium\">{headline}</div>\n {next?.description ? (\n <div className=\"mt-0.5 line-clamp-2 text-xs opacity-80\">{next.description}</div>\n ) : null}\n </div>\n </div>\n {showSummary ? <PromptSummaryCounts summary={summary} /> : null}\n </div>\n\n {next ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec.commentField ? (\n <label className=\"flex min-w-0 flex-col gap-1 text-xs\">\n <span className=\"font-medium\">{inlineSpec.commentLabel ?? \"Comment\"}</span>\n <textarea\n className=\"min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder=\"Add a short note\"\n value={comment}\n onChange={(event) => setComment(event.target.value)}\n />\n </label>\n ) : null}\n <div className=\"flex flex-wrap items-center justify-end gap-2\">\n {error ? <span className=\"mr-auto text-xs text-red-600 dark:text-red-300\">{error}</span> : null}\n <Button\n size=\"sm\"\n variant=\"outline\"\n type=\"button\"\n loading={resolving === \"reject\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"reject\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiClose} className=\"size-3.5\" />\n Reject\n </Button>\n <Button\n size=\"sm\"\n type=\"button\"\n loading={resolving === \"approve\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"approve\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiCheck} className=\"size-3.5\" />\n Approve\n </Button>\n <Button size=\"sm\" variant=\"ghost\" type=\"button\" onClick={() => setActive(next)}>\n More\n </Button>\n </div>\n </div>\n ) : (\n <div className=\"flex items-center justify-end\">\n <Button size=\"sm\" type=\"button\" onClick={() => setActive(next)}>\n Answer\n </Button>\n </div>\n )}\n </div>\n ) : null}\n\n {showSummary && recent.length > 0 ? <PromptHistory prompts={recent} activeId={next?.id} /> : null}\n </div>\n {active ? (\n <PromptDialog\n prompt={active}\n basePath={basePath}\n open={true}\n onClose={() => setActive(null)}\n onResolved={() => setActive(null)}\n />\n ) : null}\n </section>\n );\n}\n\nfunction PromptSummaryCounts({ summary }: { summary: ReturnType<typeof summarizePrompts> }) {\n return (\n <div className=\"flex shrink-0 flex-wrap items-center gap-x-3 gap-y-1 text-xs opacity-85\">\n <span className=\"inline-flex items-center gap-1 font-medium\">\n <Icon icon={UiHourglass} className=\"size-3.5\" />\n {summary.pending} pending\n </span>\n <span>{summary.answered} answered</span>\n {(summary.cancelled > 0 || summary.expired > 0) && (\n <span>{summary.cancelled + summary.expired} closed</span>\n )}\n </div>\n );\n}\n\nfunction PromptHistory({ prompts, activeId }: { prompts: PromptSnapshot[]; activeId?: string | undefined }) {\n return (\n <ol className=\"divide-y divide-border overflow-hidden rounded-md border border-border bg-background text-xs\">\n {prompts.map((prompt) => (\n <li\n key={prompt.id}\n className={cn(\"flex min-w-0 items-start gap-2 px-2 py-1.5\", prompt.id === activeId && \"bg-muted/60\")}\n >\n <PromptStateIcon prompt={prompt} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <span className=\"truncate font-medium text-foreground\">{prompt.title}</span>\n {prompt.kind ? <span className=\"shrink-0 text-muted-foreground\">{prompt.kind}</span> : null}\n </div>\n <div className=\"mt-0.5 truncate text-muted-foreground\">{summarizePromptAnswer(prompt)}</div>\n </div>\n </li>\n ))}\n </ol>\n );\n}\n\nfunction PromptStateIcon({ prompt }: { prompt: PromptSnapshot }) {\n if (prompt.state === \"answered\") return <Icon icon={UiCheck} className=\"mt-0.5 size-3.5 shrink-0 text-emerald-600\" />;\n if (prompt.state === \"cancelled\" || prompt.state === \"expired\") {\n return <Icon icon={UiClose} className=\"mt-0.5 size-3.5 shrink-0 text-rose-600\" />;\n }\n if (prompt.kind === \"comment\") return <Icon icon={UiComment} className=\"mt-0.5 size-3.5 shrink-0\" />;\n return <Icon icon={UiHourglass} className=\"mt-0.5 size-3.5 shrink-0\" />;\n}\n"],"names":["usePrompts","useState","useMemo","analyzePromptInlineActions","summarizePrompts","useEffect","initialPromptComment","answerPrompt","buildPromptInlineValues","jsxs","cn","jsx","Icon","UiQuestion","UiRobotAi","Button","UiClose","UiCheck","PromptDialog","UiHourglass","summarizePromptAnswer","UiComment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PromptBanner.cjs","sources":["../../src/data/PromptBanner.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\nimport { Button } from \"../components/button\";\nimport { Icon } from \"./Icon\";\nimport { UiCheck, UiClose, UiComment, UiHourglass, UiQuestion, UiRobotAi } from \"../icons\";\nimport { cn } from \"../lib/utils\";\nimport { answerPrompt, usePrompts, type PromptFilter, type PromptSnapshot } from \"../hooks/use-prompts\";\nimport { PromptDialog } from \"./PromptDialog\";\nimport {\n analyzePromptInlineActions,\n buildPromptInlineValues,\n initialPromptComment,\n summarizePromptAnswer,\n summarizePrompts,\n type PromptInlineDecision,\n} from \"./PromptBanner.model\";\n\nexport interface PromptBannerProps extends PromptFilter {\n /** Base path the prompt API is mounted under, e.g. \"/api/todos\". */\n basePath?: string | undefined;\n enabled?: boolean | undefined;\n /** Override the headline; defaults to a count-aware message. */\n title?: string | undefined;\n className?: string | undefined;\n /** Render approve/reject quick actions when the prompt schema supports them. */\n inlineActions?: \"auto\" | false | undefined;\n /** Show compact counts and recent prompt outcomes, not only the current pending prompt. */\n showSummary?: boolean | undefined;\n /** Maximum recent prompts shown in the summary list. */\n historyLimit?: number | undefined;\n}\n\n// PromptBanner subscribes to pending prompts for a scope (owner / session label)\n// and surfaces them as an inline affordance, opening a PromptDialog to answer.\n// Mount it scoped to a todo (owner) at the top of a detail page, or to a session\n// (labels.session) inside a session view using the same component and filters.\nexport function PromptBanner({\n basePath = \"/api/todos\",\n enabled,\n title,\n className,\n inlineActions = \"auto\",\n showSummary = true,\n historyLimit = 5,\n state: _ignoredState,\n ...filter\n}: PromptBannerProps) {\n const { prompts, pending } = usePrompts({\n ...filter,\n basePath,\n ...(enabled !== undefined ? { enabled } : {}),\n ...(showSummary ? {} : { state: \"pending\" }),\n });\n const [active, setActive] = useState<PromptSnapshot | null>(null);\n const [comment, setComment] = useState(\"\");\n const [resolving, setResolving] = useState<PromptInlineDecision | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n const next = pending[0];\n const activePrompt = active ?? next;\n const inlineSpec = useMemo(\n () => (inlineActions === \"auto\" && activePrompt ? analyzePromptInlineActions(activePrompt) : null),\n [activePrompt, inlineActions],\n );\n const summary = useMemo(() => summarizePrompts(prompts), [prompts]);\n const recent = prompts.slice(0, Math.max(0, historyLimit));\n\n useEffect(() => {\n setComment(activePrompt ? initialPromptComment(activePrompt, inlineSpec) : \"\");\n setError(null);\n setResolving(null);\n }, [activePrompt?.id, inlineSpec]);\n\n if (showSummary ? prompts.length === 0 : !next) return null;\n const headline =\n title ??\n (pending.length > 1\n ? `${pending.length} questions need your input`\n : next?.title ?? \"No pending prompts\");\n\n const resolveInline = async (decision: PromptInlineDecision) => {\n if (!activePrompt || !inlineSpec) return;\n setResolving(decision);\n setError(null);\n try {\n await answerPrompt(basePath, activePrompt.id, {\n values: buildPromptInlineValues(activePrompt, inlineSpec, decision, comment),\n });\n setActive(null);\n } catch (e) {\n setError(e instanceof Error ? e.message : String(e));\n } finally {\n setResolving(null);\n }\n };\n\n const commentRequiredButEmpty = Boolean(inlineSpec?.commentRequired && comment.trim().length === 0);\n\n return (\n <section\n aria-label=\"Prompt requests\"\n className={cn(\n \"rounded-md border border-border bg-card px-3 py-2 text-card-foreground\",\n className,\n )}\n >\n <div className=\"flex flex-col gap-3\">\n <div className=\"flex flex-wrap items-start justify-between gap-3\">\n <div className=\"flex min-w-0 flex-1 items-start gap-2\">\n <Icon icon={next ? UiQuestion : UiRobotAi} className=\"mt-0.5 size-4 shrink-0\" />\n <div className=\"min-w-0\">\n <div className=\"truncate text-sm font-medium\">{headline}</div>\n {next?.description ? (\n <div className=\"mt-0.5 line-clamp-2 text-xs opacity-80\">{next.description}</div>\n ) : null}\n </div>\n </div>\n {showSummary ? <PromptSummaryCounts summary={summary} /> : null}\n </div>\n\n {next ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec.commentField ? (\n <label className=\"flex min-w-0 flex-col gap-1 text-xs\">\n <span className=\"font-medium\">{inlineSpec.commentLabel ?? \"Comment\"}</span>\n <textarea\n className=\"min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-placeholder focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder=\"Add a short note\"\n value={comment}\n onChange={(event) => setComment(event.target.value)}\n />\n </label>\n ) : null}\n <div className=\"flex flex-wrap items-center justify-end gap-2\">\n {error ? <span className=\"mr-auto text-xs text-red-600 dark:text-red-300\">{error}</span> : null}\n <Button\n size=\"sm\"\n variant=\"outline\"\n type=\"button\"\n loading={resolving === \"reject\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"reject\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiClose} className=\"size-3.5\" />\n Reject\n </Button>\n <Button\n size=\"sm\"\n type=\"button\"\n loading={resolving === \"approve\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"approve\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiCheck} className=\"size-3.5\" />\n Approve\n </Button>\n <Button size=\"sm\" variant=\"ghost\" type=\"button\" onClick={() => setActive(next)}>\n More\n </Button>\n </div>\n </div>\n ) : (\n <div className=\"flex items-center justify-end\">\n <Button size=\"sm\" type=\"button\" onClick={() => setActive(next)}>\n Answer\n </Button>\n </div>\n )}\n </div>\n ) : null}\n\n {showSummary && recent.length > 0 ? <PromptHistory prompts={recent} activeId={next?.id} /> : null}\n </div>\n {active ? (\n <PromptDialog\n prompt={active}\n basePath={basePath}\n open={true}\n onClose={() => setActive(null)}\n onResolved={() => setActive(null)}\n />\n ) : null}\n </section>\n );\n}\n\nfunction PromptSummaryCounts({ summary }: { summary: ReturnType<typeof summarizePrompts> }) {\n return (\n <div className=\"flex shrink-0 flex-wrap items-center gap-x-3 gap-y-1 text-xs opacity-85\">\n <span className=\"inline-flex items-center gap-1 font-medium\">\n <Icon icon={UiHourglass} className=\"size-3.5\" />\n {summary.pending} pending\n </span>\n <span>{summary.answered} answered</span>\n {(summary.cancelled > 0 || summary.expired > 0) && (\n <span>{summary.cancelled + summary.expired} closed</span>\n )}\n </div>\n );\n}\n\nfunction PromptHistory({ prompts, activeId }: { prompts: PromptSnapshot[]; activeId?: string | undefined }) {\n return (\n <ol className=\"divide-y divide-border overflow-hidden rounded-md border border-border bg-background text-xs\">\n {prompts.map((prompt) => (\n <li\n key={prompt.id}\n className={cn(\"flex min-w-0 items-start gap-2 px-2 py-1.5\", prompt.id === activeId && \"bg-muted/60\")}\n >\n <PromptStateIcon prompt={prompt} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <span className=\"truncate font-medium text-foreground\">{prompt.title}</span>\n {prompt.kind ? <span className=\"shrink-0 text-muted-foreground\">{prompt.kind}</span> : null}\n </div>\n <div className=\"mt-0.5 truncate text-muted-foreground\">{summarizePromptAnswer(prompt)}</div>\n </div>\n </li>\n ))}\n </ol>\n );\n}\n\nfunction PromptStateIcon({ prompt }: { prompt: PromptSnapshot }) {\n if (prompt.state === \"answered\") return <Icon icon={UiCheck} className=\"mt-0.5 size-3.5 shrink-0 text-emerald-600\" />;\n if (prompt.state === \"cancelled\" || prompt.state === \"expired\") {\n return <Icon icon={UiClose} className=\"mt-0.5 size-3.5 shrink-0 text-rose-600\" />;\n }\n if (prompt.kind === \"comment\") return <Icon icon={UiComment} className=\"mt-0.5 size-3.5 shrink-0\" />;\n return <Icon icon={UiHourglass} className=\"mt-0.5 size-3.5 shrink-0\" />;\n}\n"],"names":["usePrompts","useState","useMemo","analyzePromptInlineActions","summarizePrompts","useEffect","initialPromptComment","answerPrompt","buildPromptInlineValues","jsxs","cn","jsx","Icon","UiQuestion","UiRobotAi","Button","UiClose","UiCheck","PromptDialog","UiHourglass","summarizePromptAnswer","UiComment"],"mappings":"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"}
|
|
@@ -90,7 +90,7 @@ function PromptBanner({
|
|
|
90
90
|
/* @__PURE__ */ jsx(
|
|
91
91
|
"textarea",
|
|
92
92
|
{
|
|
93
|
-
className: "min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-
|
|
93
|
+
className: "min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-placeholder focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
94
94
|
placeholder: "Add a short note",
|
|
95
95
|
value: comment,
|
|
96
96
|
onChange: (event) => setComment(event.target.value)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptBanner.js","sources":["../../src/data/PromptBanner.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\nimport { Button } from \"../components/button\";\nimport { Icon } from \"./Icon\";\nimport { UiCheck, UiClose, UiComment, UiHourglass, UiQuestion, UiRobotAi } from \"../icons\";\nimport { cn } from \"../lib/utils\";\nimport { answerPrompt, usePrompts, type PromptFilter, type PromptSnapshot } from \"../hooks/use-prompts\";\nimport { PromptDialog } from \"./PromptDialog\";\nimport {\n analyzePromptInlineActions,\n buildPromptInlineValues,\n initialPromptComment,\n summarizePromptAnswer,\n summarizePrompts,\n type PromptInlineDecision,\n} from \"./PromptBanner.model\";\n\nexport interface PromptBannerProps extends PromptFilter {\n /** Base path the prompt API is mounted under, e.g. \"/api/todos\". */\n basePath?: string | undefined;\n enabled?: boolean | undefined;\n /** Override the headline; defaults to a count-aware message. */\n title?: string | undefined;\n className?: string | undefined;\n /** Render approve/reject quick actions when the prompt schema supports them. */\n inlineActions?: \"auto\" | false | undefined;\n /** Show compact counts and recent prompt outcomes, not only the current pending prompt. */\n showSummary?: boolean | undefined;\n /** Maximum recent prompts shown in the summary list. */\n historyLimit?: number | undefined;\n}\n\n// PromptBanner subscribes to pending prompts for a scope (owner / session label)\n// and surfaces them as an inline affordance, opening a PromptDialog to answer.\n// Mount it scoped to a todo (owner) at the top of a detail page, or to a session\n// (labels.session) inside a session view using the same component and filters.\nexport function PromptBanner({\n basePath = \"/api/todos\",\n enabled,\n title,\n className,\n inlineActions = \"auto\",\n showSummary = true,\n historyLimit = 5,\n state: _ignoredState,\n ...filter\n}: PromptBannerProps) {\n const { prompts, pending } = usePrompts({\n ...filter,\n basePath,\n ...(enabled !== undefined ? { enabled } : {}),\n ...(showSummary ? {} : { state: \"pending\" }),\n });\n const [active, setActive] = useState<PromptSnapshot | null>(null);\n const [comment, setComment] = useState(\"\");\n const [resolving, setResolving] = useState<PromptInlineDecision | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n const next = pending[0];\n const activePrompt = active ?? next;\n const inlineSpec = useMemo(\n () => (inlineActions === \"auto\" && activePrompt ? analyzePromptInlineActions(activePrompt) : null),\n [activePrompt, inlineActions],\n );\n const summary = useMemo(() => summarizePrompts(prompts), [prompts]);\n const recent = prompts.slice(0, Math.max(0, historyLimit));\n\n useEffect(() => {\n setComment(activePrompt ? initialPromptComment(activePrompt, inlineSpec) : \"\");\n setError(null);\n setResolving(null);\n }, [activePrompt?.id, inlineSpec]);\n\n if (showSummary ? prompts.length === 0 : !next) return null;\n const headline =\n title ??\n (pending.length > 1\n ? `${pending.length} questions need your input`\n : next?.title ?? \"No pending prompts\");\n\n const resolveInline = async (decision: PromptInlineDecision) => {\n if (!activePrompt || !inlineSpec) return;\n setResolving(decision);\n setError(null);\n try {\n await answerPrompt(basePath, activePrompt.id, {\n values: buildPromptInlineValues(activePrompt, inlineSpec, decision, comment),\n });\n setActive(null);\n } catch (e) {\n setError(e instanceof Error ? e.message : String(e));\n } finally {\n setResolving(null);\n }\n };\n\n const commentRequiredButEmpty = Boolean(inlineSpec?.commentRequired && comment.trim().length === 0);\n\n return (\n <section\n aria-label=\"Prompt requests\"\n className={cn(\n \"rounded-md border border-border bg-card px-3 py-2 text-card-foreground\",\n className,\n )}\n >\n <div className=\"flex flex-col gap-3\">\n <div className=\"flex flex-wrap items-start justify-between gap-3\">\n <div className=\"flex min-w-0 flex-1 items-start gap-2\">\n <Icon icon={next ? UiQuestion : UiRobotAi} className=\"mt-0.5 size-4 shrink-0\" />\n <div className=\"min-w-0\">\n <div className=\"truncate text-sm font-medium\">{headline}</div>\n {next?.description ? (\n <div className=\"mt-0.5 line-clamp-2 text-xs opacity-80\">{next.description}</div>\n ) : null}\n </div>\n </div>\n {showSummary ? <PromptSummaryCounts summary={summary} /> : null}\n </div>\n\n {next ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec.commentField ? (\n <label className=\"flex min-w-0 flex-col gap-1 text-xs\">\n <span className=\"font-medium\">{inlineSpec.commentLabel ?? \"Comment\"}</span>\n <textarea\n className=\"min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder=\"Add a short note\"\n value={comment}\n onChange={(event) => setComment(event.target.value)}\n />\n </label>\n ) : null}\n <div className=\"flex flex-wrap items-center justify-end gap-2\">\n {error ? <span className=\"mr-auto text-xs text-red-600 dark:text-red-300\">{error}</span> : null}\n <Button\n size=\"sm\"\n variant=\"outline\"\n type=\"button\"\n loading={resolving === \"reject\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"reject\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiClose} className=\"size-3.5\" />\n Reject\n </Button>\n <Button\n size=\"sm\"\n type=\"button\"\n loading={resolving === \"approve\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"approve\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiCheck} className=\"size-3.5\" />\n Approve\n </Button>\n <Button size=\"sm\" variant=\"ghost\" type=\"button\" onClick={() => setActive(next)}>\n More\n </Button>\n </div>\n </div>\n ) : (\n <div className=\"flex items-center justify-end\">\n <Button size=\"sm\" type=\"button\" onClick={() => setActive(next)}>\n Answer\n </Button>\n </div>\n )}\n </div>\n ) : null}\n\n {showSummary && recent.length > 0 ? <PromptHistory prompts={recent} activeId={next?.id} /> : null}\n </div>\n {active ? (\n <PromptDialog\n prompt={active}\n basePath={basePath}\n open={true}\n onClose={() => setActive(null)}\n onResolved={() => setActive(null)}\n />\n ) : null}\n </section>\n );\n}\n\nfunction PromptSummaryCounts({ summary }: { summary: ReturnType<typeof summarizePrompts> }) {\n return (\n <div className=\"flex shrink-0 flex-wrap items-center gap-x-3 gap-y-1 text-xs opacity-85\">\n <span className=\"inline-flex items-center gap-1 font-medium\">\n <Icon icon={UiHourglass} className=\"size-3.5\" />\n {summary.pending} pending\n </span>\n <span>{summary.answered} answered</span>\n {(summary.cancelled > 0 || summary.expired > 0) && (\n <span>{summary.cancelled + summary.expired} closed</span>\n )}\n </div>\n );\n}\n\nfunction PromptHistory({ prompts, activeId }: { prompts: PromptSnapshot[]; activeId?: string | undefined }) {\n return (\n <ol className=\"divide-y divide-border overflow-hidden rounded-md border border-border bg-background text-xs\">\n {prompts.map((prompt) => (\n <li\n key={prompt.id}\n className={cn(\"flex min-w-0 items-start gap-2 px-2 py-1.5\", prompt.id === activeId && \"bg-muted/60\")}\n >\n <PromptStateIcon prompt={prompt} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <span className=\"truncate font-medium text-foreground\">{prompt.title}</span>\n {prompt.kind ? <span className=\"shrink-0 text-muted-foreground\">{prompt.kind}</span> : null}\n </div>\n <div className=\"mt-0.5 truncate text-muted-foreground\">{summarizePromptAnswer(prompt)}</div>\n </div>\n </li>\n ))}\n </ol>\n );\n}\n\nfunction PromptStateIcon({ prompt }: { prompt: PromptSnapshot }) {\n if (prompt.state === \"answered\") return <Icon icon={UiCheck} className=\"mt-0.5 size-3.5 shrink-0 text-emerald-600\" />;\n if (prompt.state === \"cancelled\" || prompt.state === \"expired\") {\n return <Icon icon={UiClose} className=\"mt-0.5 size-3.5 shrink-0 text-rose-600\" />;\n }\n if (prompt.kind === \"comment\") return <Icon icon={UiComment} className=\"mt-0.5 size-3.5 shrink-0\" />;\n return <Icon icon={UiHourglass} className=\"mt-0.5 size-3.5 shrink-0\" />;\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PromptBanner.js","sources":["../../src/data/PromptBanner.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\nimport { Button } from \"../components/button\";\nimport { Icon } from \"./Icon\";\nimport { UiCheck, UiClose, UiComment, UiHourglass, UiQuestion, UiRobotAi } from \"../icons\";\nimport { cn } from \"../lib/utils\";\nimport { answerPrompt, usePrompts, type PromptFilter, type PromptSnapshot } from \"../hooks/use-prompts\";\nimport { PromptDialog } from \"./PromptDialog\";\nimport {\n analyzePromptInlineActions,\n buildPromptInlineValues,\n initialPromptComment,\n summarizePromptAnswer,\n summarizePrompts,\n type PromptInlineDecision,\n} from \"./PromptBanner.model\";\n\nexport interface PromptBannerProps extends PromptFilter {\n /** Base path the prompt API is mounted under, e.g. \"/api/todos\". */\n basePath?: string | undefined;\n enabled?: boolean | undefined;\n /** Override the headline; defaults to a count-aware message. */\n title?: string | undefined;\n className?: string | undefined;\n /** Render approve/reject quick actions when the prompt schema supports them. */\n inlineActions?: \"auto\" | false | undefined;\n /** Show compact counts and recent prompt outcomes, not only the current pending prompt. */\n showSummary?: boolean | undefined;\n /** Maximum recent prompts shown in the summary list. */\n historyLimit?: number | undefined;\n}\n\n// PromptBanner subscribes to pending prompts for a scope (owner / session label)\n// and surfaces them as an inline affordance, opening a PromptDialog to answer.\n// Mount it scoped to a todo (owner) at the top of a detail page, or to a session\n// (labels.session) inside a session view using the same component and filters.\nexport function PromptBanner({\n basePath = \"/api/todos\",\n enabled,\n title,\n className,\n inlineActions = \"auto\",\n showSummary = true,\n historyLimit = 5,\n state: _ignoredState,\n ...filter\n}: PromptBannerProps) {\n const { prompts, pending } = usePrompts({\n ...filter,\n basePath,\n ...(enabled !== undefined ? { enabled } : {}),\n ...(showSummary ? {} : { state: \"pending\" }),\n });\n const [active, setActive] = useState<PromptSnapshot | null>(null);\n const [comment, setComment] = useState(\"\");\n const [resolving, setResolving] = useState<PromptInlineDecision | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n const next = pending[0];\n const activePrompt = active ?? next;\n const inlineSpec = useMemo(\n () => (inlineActions === \"auto\" && activePrompt ? analyzePromptInlineActions(activePrompt) : null),\n [activePrompt, inlineActions],\n );\n const summary = useMemo(() => summarizePrompts(prompts), [prompts]);\n const recent = prompts.slice(0, Math.max(0, historyLimit));\n\n useEffect(() => {\n setComment(activePrompt ? initialPromptComment(activePrompt, inlineSpec) : \"\");\n setError(null);\n setResolving(null);\n }, [activePrompt?.id, inlineSpec]);\n\n if (showSummary ? prompts.length === 0 : !next) return null;\n const headline =\n title ??\n (pending.length > 1\n ? `${pending.length} questions need your input`\n : next?.title ?? \"No pending prompts\");\n\n const resolveInline = async (decision: PromptInlineDecision) => {\n if (!activePrompt || !inlineSpec) return;\n setResolving(decision);\n setError(null);\n try {\n await answerPrompt(basePath, activePrompt.id, {\n values: buildPromptInlineValues(activePrompt, inlineSpec, decision, comment),\n });\n setActive(null);\n } catch (e) {\n setError(e instanceof Error ? e.message : String(e));\n } finally {\n setResolving(null);\n }\n };\n\n const commentRequiredButEmpty = Boolean(inlineSpec?.commentRequired && comment.trim().length === 0);\n\n return (\n <section\n aria-label=\"Prompt requests\"\n className={cn(\n \"rounded-md border border-border bg-card px-3 py-2 text-card-foreground\",\n className,\n )}\n >\n <div className=\"flex flex-col gap-3\">\n <div className=\"flex flex-wrap items-start justify-between gap-3\">\n <div className=\"flex min-w-0 flex-1 items-start gap-2\">\n <Icon icon={next ? UiQuestion : UiRobotAi} className=\"mt-0.5 size-4 shrink-0\" />\n <div className=\"min-w-0\">\n <div className=\"truncate text-sm font-medium\">{headline}</div>\n {next?.description ? (\n <div className=\"mt-0.5 line-clamp-2 text-xs opacity-80\">{next.description}</div>\n ) : null}\n </div>\n </div>\n {showSummary ? <PromptSummaryCounts summary={summary} /> : null}\n </div>\n\n {next ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec ? (\n <div className=\"flex flex-col gap-2\">\n {inlineSpec.commentField ? (\n <label className=\"flex min-w-0 flex-col gap-1 text-xs\">\n <span className=\"font-medium\">{inlineSpec.commentLabel ?? \"Comment\"}</span>\n <textarea\n className=\"min-h-16 w-full resize-y rounded-md border border-input bg-background px-2 py-1.5 text-sm text-foreground placeholder:text-placeholder focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder=\"Add a short note\"\n value={comment}\n onChange={(event) => setComment(event.target.value)}\n />\n </label>\n ) : null}\n <div className=\"flex flex-wrap items-center justify-end gap-2\">\n {error ? <span className=\"mr-auto text-xs text-red-600 dark:text-red-300\">{error}</span> : null}\n <Button\n size=\"sm\"\n variant=\"outline\"\n type=\"button\"\n loading={resolving === \"reject\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"reject\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiClose} className=\"size-3.5\" />\n Reject\n </Button>\n <Button\n size=\"sm\"\n type=\"button\"\n loading={resolving === \"approve\"}\n disabled={resolving !== null || commentRequiredButEmpty}\n onClick={() => void resolveInline(\"approve\")}\n className=\"gap-1.5\"\n >\n <Icon icon={UiCheck} className=\"size-3.5\" />\n Approve\n </Button>\n <Button size=\"sm\" variant=\"ghost\" type=\"button\" onClick={() => setActive(next)}>\n More\n </Button>\n </div>\n </div>\n ) : (\n <div className=\"flex items-center justify-end\">\n <Button size=\"sm\" type=\"button\" onClick={() => setActive(next)}>\n Answer\n </Button>\n </div>\n )}\n </div>\n ) : null}\n\n {showSummary && recent.length > 0 ? <PromptHistory prompts={recent} activeId={next?.id} /> : null}\n </div>\n {active ? (\n <PromptDialog\n prompt={active}\n basePath={basePath}\n open={true}\n onClose={() => setActive(null)}\n onResolved={() => setActive(null)}\n />\n ) : null}\n </section>\n );\n}\n\nfunction PromptSummaryCounts({ summary }: { summary: ReturnType<typeof summarizePrompts> }) {\n return (\n <div className=\"flex shrink-0 flex-wrap items-center gap-x-3 gap-y-1 text-xs opacity-85\">\n <span className=\"inline-flex items-center gap-1 font-medium\">\n <Icon icon={UiHourglass} className=\"size-3.5\" />\n {summary.pending} pending\n </span>\n <span>{summary.answered} answered</span>\n {(summary.cancelled > 0 || summary.expired > 0) && (\n <span>{summary.cancelled + summary.expired} closed</span>\n )}\n </div>\n );\n}\n\nfunction PromptHistory({ prompts, activeId }: { prompts: PromptSnapshot[]; activeId?: string | undefined }) {\n return (\n <ol className=\"divide-y divide-border overflow-hidden rounded-md border border-border bg-background text-xs\">\n {prompts.map((prompt) => (\n <li\n key={prompt.id}\n className={cn(\"flex min-w-0 items-start gap-2 px-2 py-1.5\", prompt.id === activeId && \"bg-muted/60\")}\n >\n <PromptStateIcon prompt={prompt} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <span className=\"truncate font-medium text-foreground\">{prompt.title}</span>\n {prompt.kind ? <span className=\"shrink-0 text-muted-foreground\">{prompt.kind}</span> : null}\n </div>\n <div className=\"mt-0.5 truncate text-muted-foreground\">{summarizePromptAnswer(prompt)}</div>\n </div>\n </li>\n ))}\n </ol>\n );\n}\n\nfunction PromptStateIcon({ prompt }: { prompt: PromptSnapshot }) {\n if (prompt.state === \"answered\") return <Icon icon={UiCheck} className=\"mt-0.5 size-3.5 shrink-0 text-emerald-600\" />;\n if (prompt.state === \"cancelled\" || prompt.state === \"expired\") {\n return <Icon icon={UiClose} className=\"mt-0.5 size-3.5 shrink-0 text-rose-600\" />;\n }\n if (prompt.kind === \"comment\") return <Icon icon={UiComment} className=\"mt-0.5 size-3.5 shrink-0\" />;\n return <Icon icon={UiHourglass} className=\"mt-0.5 size-3.5 shrink-0\" />;\n}\n"],"names":[],"mappings":"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"}
|
package/dist/data/Tree.cjs
CHANGED
|
@@ -129,6 +129,7 @@ function Tree({
|
|
|
129
129
|
expandAll: controlledExpandAll,
|
|
130
130
|
onExpandAllChange,
|
|
131
131
|
toolbarClassName,
|
|
132
|
+
actions,
|
|
132
133
|
getSearchText,
|
|
133
134
|
revealSelected = false,
|
|
134
135
|
...nodeProps
|
|
@@ -176,7 +177,7 @@ function Tree({
|
|
|
176
177
|
const effectiveExpandAll = expandAll;
|
|
177
178
|
const effectiveEmpty = activeFilter.trim() ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-3 py-4 text-sm text-muted-foreground", children: "No matching tree nodes." }) : empty;
|
|
178
179
|
const showControlButtons = showControls && roots.length > 0;
|
|
179
|
-
const showVirtualRow = showFilter || showControlButtons;
|
|
180
|
+
const showVirtualRow = showFilter || showControlButtons || actions != null;
|
|
180
181
|
const setExpandAll = (next) => {
|
|
181
182
|
if (isControlled) onExpandAllChange == null ? void 0 : onExpandAllChange(next);
|
|
182
183
|
else setInternalExpandAll(next);
|
|
@@ -208,7 +209,7 @@ function Tree({
|
|
|
208
209
|
value: filterQuery,
|
|
209
210
|
onChange: (event) => setFilterQuery(event.target.value),
|
|
210
211
|
placeholder: "Filter tree",
|
|
211
|
-
className: "h-5 w-full min-w-0 border-0 bg-transparent p-0 text-xs outline-none placeholder:text-
|
|
212
|
+
className: "h-5 w-full min-w-0 border-0 bg-transparent p-0 text-xs outline-none placeholder:text-placeholder",
|
|
212
213
|
"aria-label": "Filter tree nodes"
|
|
213
214
|
}
|
|
214
215
|
),
|
|
@@ -224,39 +225,42 @@ function Tree({
|
|
|
224
225
|
}
|
|
225
226
|
)
|
|
226
227
|
] }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1" }),
|
|
227
|
-
showControlButtons && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ml-auto flex items-center gap-1", children: [
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
228
|
+
(showControlButtons || actions != null) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ml-auto flex items-center gap-1", children: [
|
|
229
|
+
actions,
|
|
230
|
+
showControlButtons && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
231
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
232
|
+
"button",
|
|
233
|
+
{
|
|
234
|
+
type: "button",
|
|
235
|
+
onClick: () => setExpandAll(true),
|
|
236
|
+
"aria-pressed": effectiveExpandAll === true,
|
|
237
|
+
"aria-label": "Expand all",
|
|
238
|
+
title: "Expand all",
|
|
239
|
+
disabled: activeFilter.trim().length > 0,
|
|
240
|
+
className: utils.cn(
|
|
241
|
+
"inline-flex h-6 w-6 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-accent-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
242
|
+
effectiveExpandAll === true && "bg-accent text-accent-foreground"
|
|
243
|
+
),
|
|
244
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { icon: UiExpandAll.UiExpandAll, className: "text-sm" })
|
|
245
|
+
}
|
|
246
|
+
),
|
|
247
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
248
|
+
"button",
|
|
249
|
+
{
|
|
250
|
+
type: "button",
|
|
251
|
+
onClick: () => setExpandAll(false),
|
|
252
|
+
"aria-pressed": effectiveExpandAll === false,
|
|
253
|
+
"aria-label": "Collapse all",
|
|
254
|
+
title: "Collapse all",
|
|
255
|
+
disabled: activeFilter.trim().length > 0,
|
|
256
|
+
className: utils.cn(
|
|
257
|
+
"inline-flex h-6 w-6 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-accent-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
258
|
+
effectiveExpandAll === false && "bg-accent text-accent-foreground"
|
|
259
|
+
),
|
|
260
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { icon: UiCollapseAll.UiCollapseAll, className: "text-sm" })
|
|
261
|
+
}
|
|
262
|
+
)
|
|
263
|
+
] })
|
|
260
264
|
] })
|
|
261
265
|
]
|
|
262
266
|
}
|