@flanksource/clicky-ui 0.3.18 → 0.3.20
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/dist/components/ComboboxMenu.cjs +5 -1
- package/dist/components/ComboboxMenu.cjs.map +1 -1
- package/dist/components/ComboboxMenu.d.ts.map +1 -1
- package/dist/components/ComboboxMenu.js +5 -1
- package/dist/components/ComboboxMenu.js.map +1 -1
- package/dist/components/EndpointSelector.model.cjs +96 -0
- package/dist/components/EndpointSelector.model.cjs.map +1 -0
- package/dist/components/EndpointSelector.model.d.ts +2 -0
- package/dist/components/EndpointSelector.model.d.ts.map +1 -1
- package/dist/components/EndpointSelector.model.js +96 -0
- package/dist/components/EndpointSelector.model.js.map +1 -0
- package/dist/components/ErrorWrapper.cjs +1 -1
- package/dist/components/ErrorWrapper.cjs.map +1 -1
- package/dist/components/ErrorWrapper.js +1 -1
- package/dist/components/ErrorWrapper.js.map +1 -1
- package/dist/components/FilterBar.cjs +52 -2
- package/dist/components/FilterBar.cjs.map +1 -1
- package/dist/components/FilterBar.d.ts +20 -2
- package/dist/components/FilterBar.d.ts.map +1 -1
- package/dist/components/FilterBar.js +52 -2
- package/dist/components/FilterBar.js.map +1 -1
- package/dist/components/JSONPathField.cjs +87 -66
- package/dist/components/JSONPathField.cjs.map +1 -1
- package/dist/components/JSONPathField.d.ts +26 -9
- package/dist/components/JSONPathField.d.ts.map +1 -1
- package/dist/components/JSONPathField.js +88 -67
- package/dist/components/JSONPathField.js.map +1 -1
- package/dist/components/JSONPathPlayground.cjs +225 -0
- package/dist/components/JSONPathPlayground.cjs.map +1 -0
- package/dist/components/JSONPathPlayground.d.ts +59 -0
- package/dist/components/JSONPathPlayground.d.ts.map +1 -0
- package/dist/components/JSONPathPlayground.js +225 -0
- package/dist/components/JSONPathPlayground.js.map +1 -0
- package/dist/components/OnePasswordSelector.cjs +178 -0
- package/dist/components/OnePasswordSelector.cjs.map +1 -0
- package/dist/components/OnePasswordSelector.d.ts +8 -0
- package/dist/components/OnePasswordSelector.d.ts.map +1 -0
- package/dist/components/OnePasswordSelector.js +178 -0
- package/dist/components/OnePasswordSelector.js.map +1 -0
- package/dist/components/OnePasswordSelector.model.cjs +31 -0
- package/dist/components/OnePasswordSelector.model.cjs.map +1 -0
- package/dist/components/OnePasswordSelector.model.d.ts +27 -0
- package/dist/components/OnePasswordSelector.model.d.ts.map +1 -0
- package/dist/components/OnePasswordSelector.model.js +31 -0
- package/dist/components/OnePasswordSelector.model.js.map +1 -0
- package/dist/components/SecretFormField.cjs +142 -0
- package/dist/components/SecretFormField.cjs.map +1 -0
- package/dist/components/SecretFormField.d.ts +9 -0
- package/dist/components/SecretFormField.d.ts.map +1 -0
- package/dist/components/SecretFormField.js +142 -0
- package/dist/components/SecretFormField.js.map +1 -0
- package/dist/components/SecretKeySelector.cjs +20 -14
- package/dist/components/SecretKeySelector.cjs.map +1 -1
- package/dist/components/SecretKeySelector.d.ts +4 -1
- package/dist/components/SecretKeySelector.d.ts.map +1 -1
- package/dist/components/SecretKeySelector.js +20 -14
- package/dist/components/SecretKeySelector.js.map +1 -1
- package/dist/components/TreePickerField.cjs +55 -29
- package/dist/components/TreePickerField.cjs.map +1 -1
- package/dist/components/TreePickerField.d.ts +10 -1
- package/dist/components/TreePickerField.d.ts.map +1 -1
- package/dist/components/TreePickerField.js +56 -30
- package/dist/components/TreePickerField.js.map +1 -1
- package/dist/components/UnitStepControls.cjs +55 -0
- package/dist/components/UnitStepControls.cjs.map +1 -0
- package/dist/components/UnitStepControls.d.ts +10 -0
- package/dist/components/UnitStepControls.d.ts.map +1 -0
- package/dist/components/UnitStepControls.js +55 -0
- package/dist/components/UnitStepControls.js.map +1 -0
- package/dist/components/combobox-types.d.ts +9 -0
- package/dist/components/combobox-types.d.ts.map +1 -1
- package/dist/components/filter-bar-utils.cjs +7 -0
- package/dist/components/filter-bar-utils.cjs.map +1 -1
- package/dist/components/filter-bar-utils.d.ts.map +1 -1
- package/dist/components/filter-bar-utils.js +7 -0
- package/dist/components/filter-bar-utils.js.map +1 -1
- package/dist/components/jotai-bindings-core.cjs.map +1 -1
- package/dist/components/jotai-bindings-core.d.ts +4 -1
- package/dist/components/jotai-bindings-core.d.ts.map +1 -1
- package/dist/components/jotai-bindings-core.js.map +1 -1
- package/dist/components/json-schema-form-accordion-array.cjs +5 -73
- 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 +3 -71
- package/dist/components/json-schema-form-accordion-array.js.map +1 -1
- package/dist/components/json-schema-form-array.cjs +6 -1
- 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 +6 -1
- package/dist/components/json-schema-form-array.js.map +1 -1
- package/dist/components/json-schema-form-cards-array.cjs +96 -0
- package/dist/components/json-schema-form-cards-array.cjs.map +1 -0
- package/dist/components/json-schema-form-cards-array.d.ts +7 -0
- package/dist/components/json-schema-form-cards-array.d.ts.map +1 -0
- package/dist/components/json-schema-form-cards-array.js +96 -0
- package/dist/components/json-schema-form-cards-array.js.map +1 -0
- package/dist/components/json-schema-form-item-row.cjs +81 -0
- package/dist/components/json-schema-form-item-row.cjs.map +1 -0
- package/dist/components/json-schema-form-item-row.d.ts +19 -0
- package/dist/components/json-schema-form-item-row.d.ts.map +1 -0
- package/dist/components/json-schema-form-item-row.js +81 -0
- package/dist/components/json-schema-form-item-row.js.map +1 -0
- package/dist/components/json-schema-form-render.cjs +4 -3
- 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 +4 -3
- package/dist/components/json-schema-form-render.js.map +1 -1
- package/dist/components/json-schema-form-resolve.cjs +1 -1
- package/dist/components/json-schema-form-resolve.cjs.map +1 -1
- package/dist/components/json-schema-form-resolve.js +1 -1
- package/dist/components/json-schema-form-resolve.js.map +1 -1
- package/dist/components/json-schema-form-tone.cjs +12 -0
- package/dist/components/json-schema-form-tone.cjs.map +1 -1
- package/dist/components/json-schema-form-tone.js +12 -0
- package/dist/components/json-schema-form-tone.js.map +1 -1
- package/dist/components/json-schema-form-types.d.ts +10 -1
- package/dist/components/json-schema-form-types.d.ts.map +1 -1
- package/dist/components/jsonPathTree.cjs +189 -0
- package/dist/components/jsonPathTree.cjs.map +1 -0
- package/dist/components/jsonPathTree.d.ts +92 -0
- package/dist/components/jsonPathTree.d.ts.map +1 -0
- package/dist/components/jsonPathTree.js +189 -0
- package/dist/components/jsonPathTree.js.map +1 -0
- package/dist/components/secret-form-extension.cjs +30 -0
- package/dist/components/secret-form-extension.cjs.map +1 -0
- package/dist/components/secret-form-extension.d.ts +23 -0
- package/dist/components/secret-form-extension.d.ts.map +1 -0
- package/dist/components/secret-form-extension.js +30 -0
- package/dist/components/secret-form-extension.js.map +1 -0
- package/dist/components/unit-form-extension.cjs +126 -0
- package/dist/components/unit-form-extension.cjs.map +1 -0
- package/dist/components/unit-form-extension.d.ts +8 -0
- package/dist/components/unit-form-extension.d.ts.map +1 -0
- package/dist/components/unit-form-extension.js +126 -0
- package/dist/components/unit-form-extension.js.map +1 -0
- package/dist/components.cjs +20 -0
- package/dist/components.cjs.map +1 -1
- package/dist/components.d.ts +7 -0
- package/dist/components.d.ts.map +1 -1
- package/dist/components.js +20 -0
- package/dist/components.js.map +1 -1
- package/dist/data/TaskExecDetails.cjs +40 -0
- package/dist/data/TaskExecDetails.cjs.map +1 -0
- package/dist/data/TaskExecDetails.d.ts +5 -0
- package/dist/data/TaskExecDetails.d.ts.map +1 -0
- package/dist/data/TaskExecDetails.js +40 -0
- package/dist/data/TaskExecDetails.js.map +1 -0
- package/dist/data/TaskProgress.cjs +9 -3
- package/dist/data/TaskProgress.cjs.map +1 -1
- package/dist/data/TaskProgress.d.ts.map +1 -1
- package/dist/data/TaskProgress.js +9 -3
- package/dist/data/TaskProgress.js.map +1 -1
- package/dist/data/TaskSnapshot.cjs.map +1 -1
- package/dist/data/TaskSnapshot.d.ts +12 -1
- package/dist/data/TaskSnapshot.d.ts.map +1 -1
- package/dist/data/TaskSnapshot.js.map +1 -1
- package/dist/data/TreeNode.cjs +3 -0
- package/dist/data/TreeNode.cjs.map +1 -1
- package/dist/data/TreeNode.d.ts.map +1 -1
- package/dist/data/TreeNode.js +3 -0
- package/dist/data/TreeNode.js.map +1 -1
- package/dist/data/data-table-filter-values.cjs +20 -0
- package/dist/data/data-table-filter-values.cjs.map +1 -1
- package/dist/data/data-table-filter-values.d.ts +16 -0
- package/dist/data/data-table-filter-values.d.ts.map +1 -1
- package/dist/data/data-table-filter-values.js +20 -0
- package/dist/data/data-table-filter-values.js.map +1 -1
- package/dist/data/data-table-server-filters.cjs +23 -29
- package/dist/data/data-table-server-filters.cjs.map +1 -1
- package/dist/data/data-table-server-filters.d.ts.map +1 -1
- package/dist/data/data-table-server-filters.js +21 -27
- package/dist/data/data-table-server-filters.js.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.cjs +61 -8
- package/dist/data/diagnostics/ErrorDetails.cjs.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.d.ts.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.js +61 -8
- package/dist/data/diagnostics/ErrorDetails.js.map +1 -1
- package/dist/data/diagnostics/error-diagnostics.cjs +10 -4
- package/dist/data/diagnostics/error-diagnostics.cjs.map +1 -1
- package/dist/data/diagnostics/error-diagnostics.d.ts.map +1 -1
- package/dist/data/diagnostics/error-diagnostics.js +10 -4
- package/dist/data/diagnostics/error-diagnostics.js.map +1 -1
- package/dist/data/query-browser/QueryBrowser.cjs +139 -161
- package/dist/data/query-browser/QueryBrowser.cjs.map +1 -1
- package/dist/data/query-browser/QueryBrowser.d.ts +1 -71
- package/dist/data/query-browser/QueryBrowser.d.ts.map +1 -1
- package/dist/data/query-browser/QueryBrowser.editor.cjs +88 -0
- package/dist/data/query-browser/QueryBrowser.editor.cjs.map +1 -0
- package/dist/data/query-browser/QueryBrowser.editor.d.ts +12 -0
- package/dist/data/query-browser/QueryBrowser.editor.d.ts.map +1 -0
- package/dist/data/query-browser/QueryBrowser.editor.js +88 -0
- package/dist/data/query-browser/QueryBrowser.editor.js.map +1 -0
- package/dist/data/query-browser/QueryBrowser.js +140 -162
- package/dist/data/query-browser/QueryBrowser.js.map +1 -1
- package/dist/data/query-browser/QueryBrowser.types.cjs +12 -0
- package/dist/data/query-browser/QueryBrowser.types.cjs.map +1 -0
- package/dist/data/query-browser/QueryBrowser.types.d.ts +94 -0
- package/dist/data/query-browser/QueryBrowser.types.d.ts.map +1 -0
- package/dist/data/query-browser/QueryBrowser.types.js +12 -0
- package/dist/data/query-browser/QueryBrowser.types.js.map +1 -0
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.cjs +56 -0
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.cjs.map +1 -0
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.d.ts +5 -0
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.d.ts.map +1 -0
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.js +56 -0
- package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.js.map +1 -0
- package/dist/data/query-browser/QueryBrowserResults.cjs +80 -0
- package/dist/data/query-browser/QueryBrowserResults.cjs.map +1 -0
- package/dist/data/query-browser/QueryBrowserResults.d.ts +16 -0
- package/dist/data/query-browser/QueryBrowserResults.d.ts.map +1 -0
- package/dist/data/query-browser/QueryBrowserResults.js +80 -0
- package/dist/data/query-browser/QueryBrowserResults.js.map +1 -0
- package/dist/data/query-browser/index.d.ts +2 -1
- package/dist/data/query-browser/index.d.ts.map +1 -1
- package/dist/data/task-exec-details.cjs +9 -0
- package/dist/data/task-exec-details.cjs.map +1 -0
- package/dist/data/task-exec-details.d.ts +3 -0
- package/dist/data/task-exec-details.d.ts.map +1 -0
- package/dist/data/task-exec-details.js +9 -0
- package/dist/data/task-exec-details.js.map +1 -0
- package/dist/data/version-info.cjs +3 -3
- package/dist/data/version-info.js +3 -3
- package/dist/data.cjs +2 -0
- package/dist/data.cjs.map +1 -1
- package/dist/data.d.ts +1 -1
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +2 -0
- package/dist/data.js.map +1 -1
- package/dist/index.cjs +22 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/string.cjs +8 -0
- package/dist/lib/string.cjs.map +1 -1
- package/dist/lib/string.d.ts +1 -0
- package/dist/lib/string.d.ts.map +1 -1
- package/dist/lib/string.js +8 -0
- package/dist/lib/string.js.map +1 -1
- package/dist/profiles/catalogTree.cjs +133 -0
- package/dist/profiles/catalogTree.cjs.map +1 -0
- package/dist/profiles/catalogTree.d.ts +11 -0
- package/dist/profiles/catalogTree.d.ts.map +1 -0
- package/dist/profiles/catalogTree.js +133 -0
- package/dist/profiles/catalogTree.js.map +1 -0
- package/dist/profiles/connectionBrowserModel.cjs +185 -0
- package/dist/profiles/connectionBrowserModel.cjs.map +1 -0
- package/dist/profiles/connectionBrowserModel.d.ts +169 -0
- package/dist/profiles/connectionBrowserModel.d.ts.map +1 -0
- package/dist/profiles/connectionBrowserModel.js +185 -0
- package/dist/profiles/connectionBrowserModel.js.map +1 -0
- package/dist/profiles/connectionQueryWorkspace.cjs +185 -0
- package/dist/profiles/connectionQueryWorkspace.cjs.map +1 -0
- package/dist/profiles/connectionQueryWorkspace.d.ts +63 -0
- package/dist/profiles/connectionQueryWorkspace.d.ts.map +1 -0
- package/dist/profiles/connectionQueryWorkspace.js +185 -0
- package/dist/profiles/connectionQueryWorkspace.js.map +1 -0
- package/dist/profiles/connectionQueryWorkspaceModel.cjs +28 -0
- package/dist/profiles/connectionQueryWorkspaceModel.cjs.map +1 -0
- package/dist/profiles/connectionQueryWorkspaceModel.d.ts +38 -0
- package/dist/profiles/connectionQueryWorkspaceModel.d.ts.map +1 -0
- package/dist/profiles/connectionQueryWorkspaceModel.js +28 -0
- package/dist/profiles/connectionQueryWorkspaceModel.js.map +1 -0
- package/dist/profiles/esFieldValues.cjs +64 -0
- package/dist/profiles/esFieldValues.cjs.map +1 -0
- package/dist/profiles/esFieldValues.d.ts +48 -0
- package/dist/profiles/esFieldValues.d.ts.map +1 -0
- package/dist/profiles/esFieldValues.js +64 -0
- package/dist/profiles/esFieldValues.js.map +1 -0
- package/dist/profiles/esParamMappingModel.cjs +301 -0
- package/dist/profiles/esParamMappingModel.cjs.map +1 -0
- package/dist/profiles/esParamMappingModel.d.ts +37 -0
- package/dist/profiles/esParamMappingModel.d.ts.map +1 -0
- package/dist/profiles/esParamMappingModel.js +301 -0
- package/dist/profiles/esParamMappingModel.js.map +1 -0
- package/dist/profiles/esParamMappingPill.cjs +24 -0
- package/dist/profiles/esParamMappingPill.cjs.map +1 -0
- package/dist/profiles/esParamMappingPill.d.ts +13 -0
- package/dist/profiles/esParamMappingPill.d.ts.map +1 -0
- package/dist/profiles/esParamMappingPill.js +24 -0
- package/dist/profiles/esParamMappingPill.js.map +1 -0
- package/dist/profiles/esParamOperandExtension.cjs +75 -0
- package/dist/profiles/esParamOperandExtension.cjs.map +1 -0
- package/dist/profiles/esParamOperandExtension.d.ts +11 -0
- package/dist/profiles/esParamOperandExtension.d.ts.map +1 -0
- package/dist/profiles/esParamOperandExtension.js +75 -0
- package/dist/profiles/esParamOperandExtension.js.map +1 -0
- package/dist/profiles/esQueryBuilder.cjs +205 -0
- package/dist/profiles/esQueryBuilder.cjs.map +1 -0
- package/dist/profiles/esQueryBuilder.d.ts +35 -0
- package/dist/profiles/esQueryBuilder.d.ts.map +1 -0
- package/dist/profiles/esQueryBuilder.js +205 -0
- package/dist/profiles/esQueryBuilder.js.map +1 -0
- package/dist/profiles/esQueryBuilderExtension.cjs +23 -0
- package/dist/profiles/esQueryBuilderExtension.cjs.map +1 -0
- package/dist/profiles/esQueryBuilderExtension.d.ts +5 -0
- package/dist/profiles/esQueryBuilderExtension.d.ts.map +1 -0
- package/dist/profiles/esQueryBuilderExtension.js +23 -0
- package/dist/profiles/esQueryBuilderExtension.js.map +1 -0
- package/dist/profiles/esQueryBuilderForm.cjs +26 -0
- package/dist/profiles/esQueryBuilderForm.cjs.map +1 -0
- package/dist/profiles/esQueryBuilderForm.d.ts +18 -0
- package/dist/profiles/esQueryBuilderForm.d.ts.map +1 -0
- package/dist/profiles/esQueryBuilderForm.js +26 -0
- package/dist/profiles/esQueryBuilderForm.js.map +1 -0
- package/dist/profiles/esQueryBuilderModel.cjs +131 -0
- package/dist/profiles/esQueryBuilderModel.cjs.map +1 -0
- package/dist/profiles/esQueryBuilderModel.d.ts +108 -0
- package/dist/profiles/esQueryBuilderModel.d.ts.map +1 -0
- package/dist/profiles/esQueryBuilderModel.js +131 -0
- package/dist/profiles/esQueryBuilderModel.js.map +1 -0
- package/dist/profiles/esQueryClauseGroup.cjs +144 -0
- package/dist/profiles/esQueryClauseGroup.cjs.map +1 -0
- package/dist/profiles/esQueryClauseGroup.d.ts +10 -0
- package/dist/profiles/esQueryClauseGroup.d.ts.map +1 -0
- package/dist/profiles/esQueryClauseGroup.js +144 -0
- package/dist/profiles/esQueryClauseGroup.js.map +1 -0
- package/dist/profiles/esQueryCompile.cjs +47 -0
- package/dist/profiles/esQueryCompile.cjs.map +1 -0
- package/dist/profiles/esQueryCompile.d.ts +39 -0
- package/dist/profiles/esQueryCompile.d.ts.map +1 -0
- package/dist/profiles/esQueryCompile.js +47 -0
- package/dist/profiles/esQueryCompile.js.map +1 -0
- package/dist/profiles/esQueryConditionRow.cjs +168 -0
- package/dist/profiles/esQueryConditionRow.cjs.map +1 -0
- package/dist/profiles/esQueryConditionRow.d.ts +37 -0
- package/dist/profiles/esQueryConditionRow.d.ts.map +1 -0
- package/dist/profiles/esQueryConditionRow.js +168 -0
- package/dist/profiles/esQueryConditionRow.js.map +1 -0
- package/dist/profiles/esQueryGroupModel.cjs +12 -0
- package/dist/profiles/esQueryGroupModel.cjs.map +1 -0
- package/dist/profiles/esQueryGroupModel.d.ts +9 -0
- package/dist/profiles/esQueryGroupModel.d.ts.map +1 -0
- package/dist/profiles/esQueryGroupModel.js +12 -0
- package/dist/profiles/esQueryGroupModel.js.map +1 -0
- package/dist/profiles/esQueryOccur.cjs +16 -0
- package/dist/profiles/esQueryOccur.cjs.map +1 -0
- package/dist/profiles/esQueryOccur.d.ts +11 -0
- package/dist/profiles/esQueryOccur.d.ts.map +1 -0
- package/dist/profiles/esQueryOccur.js +16 -0
- package/dist/profiles/esQueryOccur.js.map +1 -0
- package/dist/profiles/esQueryOperandEditors.cjs +279 -0
- package/dist/profiles/esQueryOperandEditors.cjs.map +1 -0
- package/dist/profiles/esQueryOperandEditors.d.ts +24 -0
- package/dist/profiles/esQueryOperandEditors.d.ts.map +1 -0
- package/dist/profiles/esQueryOperandEditors.js +279 -0
- package/dist/profiles/esQueryOperandEditors.js.map +1 -0
- package/dist/profiles/esQueryOperandModel.cjs +28 -0
- package/dist/profiles/esQueryOperandModel.cjs.map +1 -0
- package/dist/profiles/esQueryOperandModel.d.ts +17 -0
- package/dist/profiles/esQueryOperandModel.d.ts.map +1 -0
- package/dist/profiles/esQueryOperandModel.js +28 -0
- package/dist/profiles/esQueryOperandModel.js.map +1 -0
- package/dist/profiles/esQueryOperators.cjs +165 -0
- package/dist/profiles/esQueryOperators.cjs.map +1 -0
- package/dist/profiles/esQueryOperators.d.ts +83 -0
- package/dist/profiles/esQueryOperators.d.ts.map +1 -0
- package/dist/profiles/esQueryOperators.js +165 -0
- package/dist/profiles/esQueryOperators.js.map +1 -0
- package/dist/profiles/esQueryOutputEditor.cjs +138 -0
- package/dist/profiles/esQueryOutputEditor.cjs.map +1 -0
- package/dist/profiles/esQueryOutputEditor.d.ts +7 -0
- package/dist/profiles/esQueryOutputEditor.d.ts.map +1 -0
- package/dist/profiles/esQueryOutputEditor.js +138 -0
- package/dist/profiles/esQueryOutputEditor.js.map +1 -0
- package/dist/profiles/esQueryOutputModel.cjs +16 -0
- package/dist/profiles/esQueryOutputModel.cjs.map +1 -0
- package/dist/profiles/esQueryOutputModel.d.ts +14 -0
- package/dist/profiles/esQueryOutputModel.d.ts.map +1 -0
- package/dist/profiles/esQueryOutputModel.js +16 -0
- package/dist/profiles/esQueryOutputModel.js.map +1 -0
- package/dist/profiles/esQueryPreview.cjs +30 -0
- package/dist/profiles/esQueryPreview.cjs.map +1 -0
- package/dist/profiles/esQueryPreview.d.ts +6 -0
- package/dist/profiles/esQueryPreview.d.ts.map +1 -0
- package/dist/profiles/esQueryPreview.js +30 -0
- package/dist/profiles/esQueryPreview.js.map +1 -0
- package/dist/profiles/esQuerySortEditor.cjs +143 -0
- package/dist/profiles/esQuerySortEditor.cjs.map +1 -0
- package/dist/profiles/esQuerySortEditor.d.ts +9 -0
- package/dist/profiles/esQuerySortEditor.d.ts.map +1 -0
- package/dist/profiles/esQuerySortEditor.js +143 -0
- package/dist/profiles/esQuerySortEditor.js.map +1 -0
- package/dist/profiles/esQuerySortModel.cjs +13 -0
- package/dist/profiles/esQuerySortModel.cjs.map +1 -0
- package/dist/profiles/esQuerySortModel.d.ts +4 -0
- package/dist/profiles/esQuerySortModel.d.ts.map +1 -0
- package/dist/profiles/esQuerySortModel.js +13 -0
- package/dist/profiles/esQuerySortModel.js.map +1 -0
- package/dist/profiles/esValueCombobox.cjs +86 -0
- package/dist/profiles/esValueCombobox.cjs.map +1 -0
- package/dist/profiles/esValueCombobox.d.ts +15 -0
- package/dist/profiles/esValueCombobox.d.ts.map +1 -0
- package/dist/profiles/esValueCombobox.js +86 -0
- package/dist/profiles/esValueCombobox.js.map +1 -0
- package/dist/profiles/jsonPathSample.cjs +75 -0
- package/dist/profiles/jsonPathSample.cjs.map +1 -0
- package/dist/profiles/jsonPathSample.d.ts +27 -0
- package/dist/profiles/jsonPathSample.d.ts.map +1 -0
- package/dist/profiles/jsonPathSample.js +75 -0
- package/dist/profiles/jsonPathSample.js.map +1 -0
- package/dist/profiles/jsonPathSampleRow.cjs +14 -0
- package/dist/profiles/jsonPathSampleRow.cjs.map +1 -0
- package/dist/profiles/jsonPathSampleRow.d.ts +6 -0
- package/dist/profiles/jsonPathSampleRow.d.ts.map +1 -0
- package/dist/profiles/jsonPathSampleRow.js +14 -0
- package/dist/profiles/jsonPathSampleRow.js.map +1 -0
- package/dist/profiles/profileApi.cjs +37 -0
- package/dist/profiles/profileApi.cjs.map +1 -0
- package/dist/profiles/profileApi.d.ts +32 -0
- package/dist/profiles/profileApi.d.ts.map +1 -0
- package/dist/profiles/profileApi.js +37 -0
- package/dist/profiles/profileApi.js.map +1 -0
- package/dist/profiles/profileBuilder.cjs +65 -0
- package/dist/profiles/profileBuilder.cjs.map +1 -0
- package/dist/profiles/profileBuilder.d.ts +11 -0
- package/dist/profiles/profileBuilder.d.ts.map +1 -0
- package/dist/profiles/profileBuilder.js +65 -0
- package/dist/profiles/profileBuilder.js.map +1 -0
- package/dist/profiles/profileBuilderExtension.cjs +25 -0
- package/dist/profiles/profileBuilderExtension.cjs.map +1 -0
- package/dist/profiles/profileBuilderExtension.d.ts +5 -0
- package/dist/profiles/profileBuilderExtension.d.ts.map +1 -0
- package/dist/profiles/profileBuilderExtension.js +25 -0
- package/dist/profiles/profileBuilderExtension.js.map +1 -0
- package/dist/profiles/profileBuilderWorkspace.cjs +368 -0
- package/dist/profiles/profileBuilderWorkspace.cjs.map +1 -0
- package/dist/profiles/profileBuilderWorkspace.d.ts +21 -0
- package/dist/profiles/profileBuilderWorkspace.d.ts.map +1 -0
- package/dist/profiles/profileBuilderWorkspace.js +368 -0
- package/dist/profiles/profileBuilderWorkspace.js.map +1 -0
- package/dist/profiles/profileColumnModel.cjs +23 -0
- package/dist/profiles/profileColumnModel.cjs.map +1 -0
- package/dist/profiles/profileColumnModel.d.ts +8 -0
- package/dist/profiles/profileColumnModel.d.ts.map +1 -0
- package/dist/profiles/profileColumnModel.js +23 -0
- package/dist/profiles/profileColumnModel.js.map +1 -0
- package/dist/profiles/profileColumnPicker.cjs +68 -0
- package/dist/profiles/profileColumnPicker.cjs.map +1 -0
- package/dist/profiles/profileColumnPicker.d.ts +11 -0
- package/dist/profiles/profileColumnPicker.d.ts.map +1 -0
- package/dist/profiles/profileColumnPicker.js +68 -0
- package/dist/profiles/profileColumnPicker.js.map +1 -0
- package/dist/profiles/profileEditor.cjs +386 -0
- package/dist/profiles/profileEditor.cjs.map +1 -0
- package/dist/profiles/profileEditor.d.ts +19 -0
- package/dist/profiles/profileEditor.d.ts.map +1 -0
- package/dist/profiles/profileEditor.js +386 -0
- package/dist/profiles/profileEditor.js.map +1 -0
- package/dist/profiles/profileEditorModel.cjs +181 -0
- package/dist/profiles/profileEditorModel.cjs.map +1 -0
- package/dist/profiles/profileEditorModel.d.ts +74 -0
- package/dist/profiles/profileEditorModel.d.ts.map +1 -0
- package/dist/profiles/profileEditorModel.js +181 -0
- package/dist/profiles/profileEditorModel.js.map +1 -0
- package/dist/profiles/profileEditorPreview.cjs +38 -0
- package/dist/profiles/profileEditorPreview.cjs.map +1 -0
- package/dist/profiles/profileEditorPreview.d.ts +12 -0
- package/dist/profiles/profileEditorPreview.d.ts.map +1 -0
- package/dist/profiles/profileEditorPreview.js +38 -0
- package/dist/profiles/profileEditorPreview.js.map +1 -0
- package/dist/profiles/profileEditorRail.cjs +46 -0
- package/dist/profiles/profileEditorRail.cjs.map +1 -0
- package/dist/profiles/profileEditorRail.d.ts +8 -0
- package/dist/profiles/profileEditorRail.d.ts.map +1 -0
- package/dist/profiles/profileEditorRail.js +46 -0
- package/dist/profiles/profileEditorRail.js.map +1 -0
- package/dist/profiles/profileEditorRaw.cjs +118 -0
- package/dist/profiles/profileEditorRaw.cjs.map +1 -0
- package/dist/profiles/profileEditorRaw.d.ts +7 -0
- package/dist/profiles/profileEditorRaw.d.ts.map +1 -0
- package/dist/profiles/profileEditorRaw.js +118 -0
- package/dist/profiles/profileEditorRaw.js.map +1 -0
- package/dist/profiles/profileEditorRoutes.cjs +7 -0
- package/dist/profiles/profileEditorRoutes.cjs.map +1 -0
- package/dist/profiles/profileEditorRoutes.d.ts +2 -0
- package/dist/profiles/profileEditorRoutes.d.ts.map +1 -0
- package/dist/profiles/profileEditorRoutes.js +7 -0
- package/dist/profiles/profileEditorRoutes.js.map +1 -0
- package/dist/profiles/profileEditorSections.cjs +213 -0
- package/dist/profiles/profileEditorSections.cjs.map +1 -0
- package/dist/profiles/profileEditorSections.d.ts +23 -0
- package/dist/profiles/profileEditorSections.d.ts.map +1 -0
- package/dist/profiles/profileEditorSections.js +213 -0
- package/dist/profiles/profileEditorSections.js.map +1 -0
- package/dist/profiles/profileFieldEditor.cjs +200 -0
- package/dist/profiles/profileFieldEditor.cjs.map +1 -0
- package/dist/profiles/profileFieldEditor.d.ts +34 -0
- package/dist/profiles/profileFieldEditor.d.ts.map +1 -0
- package/dist/profiles/profileFieldEditor.js +200 -0
- package/dist/profiles/profileFieldEditor.js.map +1 -0
- package/dist/profiles/profileFieldGrid.cjs +250 -0
- package/dist/profiles/profileFieldGrid.cjs.map +1 -0
- package/dist/profiles/profileFieldGrid.d.ts +20 -0
- package/dist/profiles/profileFieldGrid.d.ts.map +1 -0
- package/dist/profiles/profileFieldGrid.js +250 -0
- package/dist/profiles/profileFieldGrid.js.map +1 -0
- package/dist/profiles/profileFieldManager.cjs +103 -0
- package/dist/profiles/profileFieldManager.cjs.map +1 -0
- package/dist/profiles/profileFieldManager.d.ts +9 -0
- package/dist/profiles/profileFieldManager.d.ts.map +1 -0
- package/dist/profiles/profileFieldManager.js +103 -0
- package/dist/profiles/profileFieldManager.js.map +1 -0
- package/dist/profiles/profileFieldState.cjs +136 -0
- package/dist/profiles/profileFieldState.cjs.map +1 -0
- package/dist/profiles/profileFieldState.d.ts +41 -0
- package/dist/profiles/profileFieldState.d.ts.map +1 -0
- package/dist/profiles/profileFieldState.js +136 -0
- package/dist/profiles/profileFieldState.js.map +1 -0
- package/dist/profiles/profileFieldTypes.cjs +17 -0
- package/dist/profiles/profileFieldTypes.cjs.map +1 -0
- package/dist/profiles/profileFieldTypes.d.ts +8 -0
- package/dist/profiles/profileFieldTypes.d.ts.map +1 -0
- package/dist/profiles/profileFieldTypes.js +17 -0
- package/dist/profiles/profileFieldTypes.js.map +1 -0
- package/dist/profiles/profileParamModel.cjs +78 -0
- package/dist/profiles/profileParamModel.cjs.map +1 -0
- package/dist/profiles/profileParamModel.d.ts +3 -0
- package/dist/profiles/profileParamModel.d.ts.map +1 -0
- package/dist/profiles/profileParamModel.js +78 -0
- package/dist/profiles/profileParamModel.js.map +1 -0
- package/dist/profiles/profileSamplePayload.cjs +15 -0
- package/dist/profiles/profileSamplePayload.cjs.map +1 -0
- package/dist/profiles/profileSamplePayload.d.ts +13 -0
- package/dist/profiles/profileSamplePayload.d.ts.map +1 -0
- package/dist/profiles/profileSamplePayload.js +15 -0
- package/dist/profiles/profileSamplePayload.js.map +1 -0
- package/dist/profiles/profileWizard.cjs +257 -0
- package/dist/profiles/profileWizard.cjs.map +1 -0
- package/dist/profiles/profileWizard.d.ts +12 -0
- package/dist/profiles/profileWizard.d.ts.map +1 -0
- package/dist/profiles/profileWizard.js +257 -0
- package/dist/profiles/profileWizard.js.map +1 -0
- package/dist/profiles/profileWizardHelp.cjs +10 -0
- package/dist/profiles/profileWizardHelp.cjs.map +1 -0
- package/dist/profiles/profileWizardHelp.d.ts +13 -0
- package/dist/profiles/profileWizardHelp.d.ts.map +1 -0
- package/dist/profiles/profileWizardHelp.js +10 -0
- package/dist/profiles/profileWizardHelp.js.map +1 -0
- package/dist/profiles/profileWizardModel.cjs +198 -0
- package/dist/profiles/profileWizardModel.cjs.map +1 -0
- package/dist/profiles/profileWizardModel.d.ts +255 -0
- package/dist/profiles/profileWizardModel.d.ts.map +1 -0
- package/dist/profiles/profileWizardModel.js +198 -0
- package/dist/profiles/profileWizardModel.js.map +1 -0
- package/dist/profiles/profileWizardQueryStep.cjs +215 -0
- package/dist/profiles/profileWizardQueryStep.cjs.map +1 -0
- package/dist/profiles/profileWizardQueryStep.d.ts +18 -0
- package/dist/profiles/profileWizardQueryStep.d.ts.map +1 -0
- package/dist/profiles/profileWizardQueryStep.js +215 -0
- package/dist/profiles/profileWizardQueryStep.js.map +1 -0
- package/dist/profiles/profileWizardSteps.cjs +214 -0
- package/dist/profiles/profileWizardSteps.cjs.map +1 -0
- package/dist/profiles/profileWizardSteps.d.ts +35 -0
- package/dist/profiles/profileWizardSteps.d.ts.map +1 -0
- package/dist/profiles/profileWizardSteps.js +214 -0
- package/dist/profiles/profileWizardSteps.js.map +1 -0
- package/dist/profiles/profileYaml.cjs +19 -0
- package/dist/profiles/profileYaml.cjs.map +1 -0
- package/dist/profiles/profileYaml.d.ts +4 -0
- package/dist/profiles/profileYaml.d.ts.map +1 -0
- package/dist/profiles/profileYaml.js +19 -0
- package/dist/profiles/profileYaml.js.map +1 -0
- package/dist/profiles/prometheusResults.cjs +60 -0
- package/dist/profiles/prometheusResults.cjs.map +1 -0
- package/dist/profiles/prometheusResults.d.ts +7 -0
- package/dist/profiles/prometheusResults.d.ts.map +1 -0
- package/dist/profiles/prometheusResults.js +60 -0
- package/dist/profiles/prometheusResults.js.map +1 -0
- package/dist/profiles/queryRowLimits.cjs +82 -0
- package/dist/profiles/queryRowLimits.cjs.map +1 -0
- package/dist/profiles/queryRowLimits.d.ts +9 -0
- package/dist/profiles/queryRowLimits.d.ts.map +1 -0
- package/dist/profiles/queryRowLimits.js +82 -0
- package/dist/profiles/queryRowLimits.js.map +1 -0
- package/dist/profiles/queryRowLimitsModel.cjs +10 -0
- package/dist/profiles/queryRowLimitsModel.cjs.map +1 -0
- package/dist/profiles/queryRowLimitsModel.d.ts +9 -0
- package/dist/profiles/queryRowLimitsModel.d.ts.map +1 -0
- package/dist/profiles/queryRowLimitsModel.js +10 -0
- package/dist/profiles/queryRowLimitsModel.js.map +1 -0
- package/dist/profiles/queryTargetPicker.cjs +42 -0
- package/dist/profiles/queryTargetPicker.cjs.map +1 -0
- package/dist/profiles/queryTargetPicker.d.ts +8 -0
- package/dist/profiles/queryTargetPicker.d.ts.map +1 -0
- package/dist/profiles/queryTargetPicker.js +42 -0
- package/dist/profiles/queryTargetPicker.js.map +1 -0
- package/dist/profiles/testSchema.d.ts +3 -0
- package/dist/profiles/testSchema.d.ts.map +1 -0
- package/dist/profiles.cjs +223 -0
- package/dist/profiles.cjs.map +1 -0
- package/dist/profiles.d.ts +68 -0
- package/dist/profiles.d.ts.map +1 -0
- package/dist/profiles.js +223 -0
- package/dist/profiles.js.map +1 -0
- package/dist/rpc/FilterForm.cjs +20 -0
- package/dist/rpc/FilterForm.cjs.map +1 -1
- package/dist/rpc/FilterForm.js +20 -0
- package/dist/rpc/FilterForm.js.map +1 -1
- package/dist/rpc/formMetadata.cjs +34 -0
- package/dist/rpc/formMetadata.cjs.map +1 -1
- package/dist/rpc/formMetadata.d.ts.map +1 -1
- package/dist/rpc/formMetadata.js +35 -1
- package/dist/rpc/formMetadata.js.map +1 -1
- package/dist/rpc/types.cjs.map +1 -1
- package/dist/rpc/types.d.ts +9 -1
- package/dist/rpc/types.d.ts.map +1 -1
- package/dist/rpc/types.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const esQueryBuilderModel = require("./esQueryBuilderModel.cjs");
|
|
4
|
+
const esQueryOperandModel = require("./esQueryOperandModel.cjs");
|
|
5
|
+
const profileWizardModel = require("./profileWizardModel.cjs");
|
|
6
|
+
function paramMappings(search, name) {
|
|
7
|
+
const found = [];
|
|
8
|
+
const walk = (condition, path) => {
|
|
9
|
+
var _a;
|
|
10
|
+
if (!condition) return;
|
|
11
|
+
for (const operand of operands) {
|
|
12
|
+
const value = condition[operand];
|
|
13
|
+
const values = Array.isArray(value) ? value : [value];
|
|
14
|
+
if (condition.field && values.some((entry) => esQueryBuilderModel.isParamValue(entry) && entry.param === name)) {
|
|
15
|
+
found.push({ path, field: condition.field, operand });
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
(_a = condition.conditions) == null ? void 0 : _a.forEach(
|
|
19
|
+
(child, index) => walk(child, [...path, index])
|
|
20
|
+
);
|
|
21
|
+
};
|
|
22
|
+
walk(search == null ? void 0 : search.query, []);
|
|
23
|
+
return found;
|
|
24
|
+
}
|
|
25
|
+
function addParamMapping({
|
|
26
|
+
search,
|
|
27
|
+
params,
|
|
28
|
+
name,
|
|
29
|
+
field
|
|
30
|
+
}) {
|
|
31
|
+
const param = namedParam(params, name);
|
|
32
|
+
if (param.role === "limit" || param.role === "offset") {
|
|
33
|
+
throw new Error(
|
|
34
|
+
`${param.role} parameter ${name} cannot map to a query field`
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
if (param.role === "time-from" || param.role === "time-to") {
|
|
38
|
+
return { search: { ...search, timeField: field }, params };
|
|
39
|
+
}
|
|
40
|
+
const withoutPrevious = param.type === "list" ? stripParamReferences(search, name) : search;
|
|
41
|
+
const condition = {
|
|
42
|
+
op: param.type === "list" ? "terms" : "term",
|
|
43
|
+
occur: "filter",
|
|
44
|
+
field,
|
|
45
|
+
value: { param: name },
|
|
46
|
+
...!param.required ? { optional: true } : {}
|
|
47
|
+
};
|
|
48
|
+
return {
|
|
49
|
+
search: appendCondition(withoutPrevious, condition),
|
|
50
|
+
params: syncNativeField(
|
|
51
|
+
params,
|
|
52
|
+
name,
|
|
53
|
+
param.type === "list" ? field : void 0
|
|
54
|
+
)
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function bindParamOperand({
|
|
58
|
+
search,
|
|
59
|
+
params,
|
|
60
|
+
path,
|
|
61
|
+
operand,
|
|
62
|
+
name
|
|
63
|
+
}) {
|
|
64
|
+
const param = namedParam(params, name);
|
|
65
|
+
if (param.role && param.role !== "filter") {
|
|
66
|
+
throw new Error(
|
|
67
|
+
`${param.role} parameter ${name} cannot bind a query operand`
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
const condition = search.query && esQueryBuilderModel.conditionAt(search.query, path);
|
|
71
|
+
if (!(condition == null ? void 0 : condition.field))
|
|
72
|
+
throw new Error(`condition for parameter ${name} has no field`);
|
|
73
|
+
const value = { param: name };
|
|
74
|
+
const patch = operand === "values" ? esQueryOperandModel.conditionOperandPatch({ arity: "multiple", values: [value] }) : operand === "value" ? esQueryOperandModel.conditionOperandPatch({ arity: "single", value }) : esQueryOperandModel.conditionOperandPatch({ arity: "range", bound: operand, value });
|
|
75
|
+
const query = esQueryBuilderModel.updateAt(
|
|
76
|
+
search.query,
|
|
77
|
+
path,
|
|
78
|
+
(current) => profileWizardModel.applyPatch(current, patch)
|
|
79
|
+
);
|
|
80
|
+
const bound = { ...search, query };
|
|
81
|
+
return {
|
|
82
|
+
search: param.type === "list" ? stripParamReferences(bound, name, path) : bound,
|
|
83
|
+
params: syncNativeField(
|
|
84
|
+
params,
|
|
85
|
+
name,
|
|
86
|
+
param.type === "list" ? condition.field : void 0
|
|
87
|
+
)
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function removeParamMapping({
|
|
91
|
+
search,
|
|
92
|
+
params,
|
|
93
|
+
name,
|
|
94
|
+
path
|
|
95
|
+
}) {
|
|
96
|
+
const param = namedParam(params, name);
|
|
97
|
+
if (param.role === "time-from" || param.role === "time-to") {
|
|
98
|
+
const next = { ...search };
|
|
99
|
+
delete next.timeField;
|
|
100
|
+
return { search: next, params };
|
|
101
|
+
}
|
|
102
|
+
if (!path) {
|
|
103
|
+
if (param.type !== "list")
|
|
104
|
+
throw new Error(`parameter ${name} has no field mapping to remove`);
|
|
105
|
+
return { search, params: syncNativeField(params, name, void 0) };
|
|
106
|
+
}
|
|
107
|
+
const query = search.query ? editAt(
|
|
108
|
+
search.query,
|
|
109
|
+
path,
|
|
110
|
+
(condition) => removeReference(condition, name)
|
|
111
|
+
) : void 0;
|
|
112
|
+
return {
|
|
113
|
+
search: { ...search, query: query ?? esQueryBuilderModel.emptyGroup() },
|
|
114
|
+
params: syncNativeField(params, name, void 0)
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
function reconcileParamMappings({
|
|
118
|
+
search,
|
|
119
|
+
previous,
|
|
120
|
+
next
|
|
121
|
+
}) {
|
|
122
|
+
let reconciled = search;
|
|
123
|
+
const previousNames = new Set(
|
|
124
|
+
previous.map((param) => param.name).filter(Boolean)
|
|
125
|
+
);
|
|
126
|
+
const nextNames = new Set(next.map((param) => param.name).filter(Boolean));
|
|
127
|
+
const renamed = /* @__PURE__ */ new Set();
|
|
128
|
+
if (previous.length === next.length) {
|
|
129
|
+
previous.forEach((param, index) => {
|
|
130
|
+
var _a;
|
|
131
|
+
const oldName = param.name;
|
|
132
|
+
const newName = (_a = next[index]) == null ? void 0 : _a.name;
|
|
133
|
+
if (oldName && newName && oldName !== newName && !nextNames.has(oldName) && !previousNames.has(newName)) {
|
|
134
|
+
reconciled = renameParamReferences(reconciled, oldName, newName);
|
|
135
|
+
renamed.add(oldName);
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
for (const param of previous) {
|
|
140
|
+
if (param.name && !renamed.has(param.name) && !nextNames.has(param.name)) {
|
|
141
|
+
reconciled = stripParamReferences(reconciled, param.name);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return {
|
|
145
|
+
search: reconciled,
|
|
146
|
+
params: syncAllNativeFields(reconciled, next, search)
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
function reconcileSearchParamMappings({
|
|
150
|
+
previousSearch,
|
|
151
|
+
nextSearch,
|
|
152
|
+
params
|
|
153
|
+
}) {
|
|
154
|
+
return {
|
|
155
|
+
search: nextSearch,
|
|
156
|
+
params: syncAllNativeFields(nextSearch, params, previousSearch)
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
const operands = ["value", "values", "gt", "gte", "lt", "lte"];
|
|
160
|
+
function namedParam(params, name) {
|
|
161
|
+
const param = params.find((candidate) => candidate.name === name);
|
|
162
|
+
if (!param) throw new Error(`parameter ${name} does not exist`);
|
|
163
|
+
return param;
|
|
164
|
+
}
|
|
165
|
+
function appendCondition(search, condition) {
|
|
166
|
+
if (!search.query || search.query.op === "match_all") {
|
|
167
|
+
return { ...search, query: { ...esQueryBuilderModel.emptyGroup(), conditions: [condition] } };
|
|
168
|
+
}
|
|
169
|
+
if (search.query.op === "bool") {
|
|
170
|
+
return {
|
|
171
|
+
...search,
|
|
172
|
+
query: {
|
|
173
|
+
...search.query,
|
|
174
|
+
conditions: [...search.query.conditions ?? [], condition]
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
return {
|
|
179
|
+
...search,
|
|
180
|
+
query: { ...esQueryBuilderModel.emptyGroup(), conditions: [search.query, condition] }
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
function stripParamReferences(search, name, keepPath) {
|
|
184
|
+
const query = stripCondition(search.query, name, [], keepPath);
|
|
185
|
+
return { ...search, query: query ?? esQueryBuilderModel.emptyGroup() };
|
|
186
|
+
}
|
|
187
|
+
function stripCondition(condition, name, path, keepPath) {
|
|
188
|
+
var _a;
|
|
189
|
+
if (!condition) return void 0;
|
|
190
|
+
if (keepPath && samePath(path, keepPath)) return condition;
|
|
191
|
+
if (condition.when === name) return void 0;
|
|
192
|
+
let next = removeReference(condition, name);
|
|
193
|
+
if (!next) return void 0;
|
|
194
|
+
if (next.conditions) {
|
|
195
|
+
const conditions = next.conditions.flatMap((child, index) => {
|
|
196
|
+
const stripped = stripCondition(child, name, [...path, index], keepPath);
|
|
197
|
+
return stripped ? [stripped] : [];
|
|
198
|
+
});
|
|
199
|
+
next = { ...next, conditions };
|
|
200
|
+
if (conditions.length === 0 && (((_a = condition.conditions) == null ? void 0 : _a.length) ?? 0) > 0)
|
|
201
|
+
return void 0;
|
|
202
|
+
}
|
|
203
|
+
return next;
|
|
204
|
+
}
|
|
205
|
+
function removeReference(condition, name) {
|
|
206
|
+
let removed = false;
|
|
207
|
+
const next = { ...condition };
|
|
208
|
+
for (const operand of operands) {
|
|
209
|
+
const value = condition[operand];
|
|
210
|
+
if (operand === "values") {
|
|
211
|
+
const values = (condition.values ?? []).filter((entry) => {
|
|
212
|
+
const matches = esQueryBuilderModel.isParamValue(entry) && entry.param === name;
|
|
213
|
+
removed || (removed = matches);
|
|
214
|
+
return !matches;
|
|
215
|
+
});
|
|
216
|
+
if (values.length) next.values = values;
|
|
217
|
+
else delete next.values;
|
|
218
|
+
} else if (esQueryBuilderModel.isParamValue(value) && value.param === name) {
|
|
219
|
+
delete next[operand];
|
|
220
|
+
removed = true;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
return removed && !hasOperand(next) ? void 0 : next;
|
|
224
|
+
}
|
|
225
|
+
function hasOperand(condition) {
|
|
226
|
+
var _a, _b;
|
|
227
|
+
return condition.value !== void 0 || Boolean((_a = condition.values) == null ? void 0 : _a.length) || condition.gt !== void 0 || condition.gte !== void 0 || condition.lt !== void 0 || condition.lte !== void 0 || Boolean((_b = condition.conditions) == null ? void 0 : _b.length);
|
|
228
|
+
}
|
|
229
|
+
function editAt(condition, path, edit) {
|
|
230
|
+
if (path.length === 0) return edit(condition);
|
|
231
|
+
const [target, ...rest] = path;
|
|
232
|
+
const children = condition.conditions ?? [];
|
|
233
|
+
const child = target === void 0 ? void 0 : children[target];
|
|
234
|
+
if (!child) throw new Error(`condition path ${path.join(".")} does not exist`);
|
|
235
|
+
const edited = editAt(child, rest, edit);
|
|
236
|
+
return {
|
|
237
|
+
...condition,
|
|
238
|
+
conditions: children.flatMap(
|
|
239
|
+
(child2, index) => index !== target ? [child2] : edited ? [edited] : []
|
|
240
|
+
)
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
function renameParamReferences(search, oldName, newName) {
|
|
244
|
+
const rename = (condition) => {
|
|
245
|
+
const next = { ...condition };
|
|
246
|
+
for (const operand of operands) {
|
|
247
|
+
const value = condition[operand];
|
|
248
|
+
if (operand === "values") {
|
|
249
|
+
if (condition.values) {
|
|
250
|
+
next.values = condition.values.map(
|
|
251
|
+
(entry) => renamedValue(entry, oldName, newName)
|
|
252
|
+
);
|
|
253
|
+
}
|
|
254
|
+
} else {
|
|
255
|
+
next[operand] = renamedValue(value, oldName, newName);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
if (condition.when === oldName) next.when = newName;
|
|
259
|
+
if (condition.conditions)
|
|
260
|
+
next.conditions = condition.conditions.map(rename);
|
|
261
|
+
return next;
|
|
262
|
+
};
|
|
263
|
+
if (!search.query) return { ...search };
|
|
264
|
+
return { ...search, query: rename(search.query) };
|
|
265
|
+
}
|
|
266
|
+
function renamedValue(value, oldName, newName) {
|
|
267
|
+
return esQueryBuilderModel.isParamValue(value) && value.param === oldName ? { param: newName } : value;
|
|
268
|
+
}
|
|
269
|
+
function syncNativeField(params, name, field) {
|
|
270
|
+
const param = namedParam(params, name);
|
|
271
|
+
if (param.type !== "list") return params;
|
|
272
|
+
return params.map((candidate) => {
|
|
273
|
+
if (candidate.name !== name) return candidate;
|
|
274
|
+
const next = { ...candidate, ...field ? { field } : {} };
|
|
275
|
+
if (!field) delete next.field;
|
|
276
|
+
return next;
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
function syncAllNativeFields(search, params, previousSearch) {
|
|
280
|
+
return params.map((param) => {
|
|
281
|
+
if (param.type !== "list" || !param.name) return param;
|
|
282
|
+
const mapping = paramMappings(search, param.name)[0];
|
|
283
|
+
const wasMapped = paramMappings(previousSearch, param.name).length > 0;
|
|
284
|
+
if (!mapping && !wasMapped) return param;
|
|
285
|
+
const field = mapping == null ? void 0 : mapping.field;
|
|
286
|
+
if (field === param.field) return param;
|
|
287
|
+
const next = { ...param, ...field ? { field } : {} };
|
|
288
|
+
if (!field) delete next.field;
|
|
289
|
+
return next;
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
function samePath(left, right) {
|
|
293
|
+
return left.length === right.length && left.every((value, index) => value === right[index]);
|
|
294
|
+
}
|
|
295
|
+
exports.addParamMapping = addParamMapping;
|
|
296
|
+
exports.bindParamOperand = bindParamOperand;
|
|
297
|
+
exports.paramMappings = paramMappings;
|
|
298
|
+
exports.reconcileParamMappings = reconcileParamMappings;
|
|
299
|
+
exports.reconcileSearchParamMappings = reconcileSearchParamMappings;
|
|
300
|
+
exports.removeParamMapping = removeParamMapping;
|
|
301
|
+
//# sourceMappingURL=esParamMappingModel.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"esParamMappingModel.cjs","sources":["../../src/profiles/esParamMappingModel.ts"],"sourcesContent":["import type {\n ConditionPath,\n EsCondition,\n EsSearch,\n EsValue,\n} from \"./esQueryBuilderModel\";\nimport {\n conditionAt,\n emptyGroup,\n isParamValue,\n updateAt,\n} from \"./esQueryBuilderModel\";\nimport { conditionOperandPatch } from \"./esQueryOperandModel\";\nimport { applyPatch, type ParamDraft } from \"./profileWizardModel\";\n\nexport type ParamOperand = \"value\" | \"values\" | \"gt\" | \"gte\" | \"lt\" | \"lte\";\n\nexport type ParamMapping = {\n path: ConditionPath;\n field: string;\n operand: ParamOperand;\n};\n\nexport type ParamMappingEdit = {\n search: EsSearch;\n params: ParamDraft[];\n};\n\nexport function paramMappings(\n search: EsSearch | undefined,\n name: string,\n): ParamMapping[] {\n const found: ParamMapping[] = [];\n const walk = (condition: EsCondition | undefined, path: ConditionPath) => {\n if (!condition) return;\n for (const operand of operands) {\n const value = condition[operand];\n const values = Array.isArray(value) ? value : [value];\n if (\n condition.field &&\n values.some((entry) => isParamValue(entry) && entry.param === name)\n ) {\n found.push({ path, field: condition.field, operand });\n }\n }\n condition.conditions?.forEach((child, index) =>\n walk(child, [...path, index]),\n );\n };\n walk(search?.query, []);\n return found;\n}\n\nexport function addParamMapping({\n search,\n params,\n name,\n field,\n}: ParamMappingEdit & { name: string; field: string }): ParamMappingEdit {\n const param = namedParam(params, name);\n if (param.role === \"limit\" || param.role === \"offset\") {\n throw new Error(\n `${param.role} parameter ${name} cannot map to a query field`,\n );\n }\n if (param.role === \"time-from\" || param.role === \"time-to\") {\n return { search: { ...search, timeField: field }, params };\n }\n const withoutPrevious =\n param.type === \"list\" ? stripParamReferences(search, name) : search;\n const condition: EsCondition = {\n op: param.type === \"list\" ? \"terms\" : \"term\",\n occur: \"filter\",\n field,\n value: { param: name },\n ...(!param.required ? { optional: true } : {}),\n };\n return {\n search: appendCondition(withoutPrevious, condition),\n params: syncNativeField(\n params,\n name,\n param.type === \"list\" ? field : undefined,\n ),\n };\n}\n\nexport function bindParamOperand({\n search,\n params,\n path,\n operand,\n name,\n}: ParamMappingEdit & {\n path: ConditionPath;\n operand: ParamOperand;\n name: string;\n}): ParamMappingEdit {\n const param = namedParam(params, name);\n if (param.role && param.role !== \"filter\") {\n throw new Error(\n `${param.role} parameter ${name} cannot bind a query operand`,\n );\n }\n const condition = search.query && conditionAt(search.query, path);\n if (!condition?.field)\n throw new Error(`condition for parameter ${name} has no field`);\n const value = { param: name };\n const patch =\n operand === \"values\"\n ? conditionOperandPatch({ arity: \"multiple\", values: [value] })\n : operand === \"value\"\n ? conditionOperandPatch({ arity: \"single\", value })\n : conditionOperandPatch({ arity: \"range\", bound: operand, value });\n const query = updateAt(search.query as EsCondition, path, (current) =>\n applyPatch(current, patch),\n );\n const bound = { ...search, query };\n return {\n search:\n param.type === \"list\" ? stripParamReferences(bound, name, path) : bound,\n params: syncNativeField(\n params,\n name,\n param.type === \"list\" ? condition.field : undefined,\n ),\n };\n}\n\nexport function removeParamMapping({\n search,\n params,\n name,\n path,\n}: ParamMappingEdit & {\n name: string;\n path?: ConditionPath;\n}): ParamMappingEdit {\n const param = namedParam(params, name);\n if (param.role === \"time-from\" || param.role === \"time-to\") {\n const next = { ...search };\n delete next.timeField;\n return { search: next, params };\n }\n if (!path) {\n if (param.type !== \"list\")\n throw new Error(`parameter ${name} has no field mapping to remove`);\n return { search, params: syncNativeField(params, name, undefined) };\n }\n const query = search.query\n ? editAt(search.query, path, (condition) =>\n removeReference(condition, name),\n )\n : undefined;\n return {\n search: { ...search, query: query ?? emptyGroup() },\n params: syncNativeField(params, name, undefined),\n };\n}\n\nexport function reconcileParamMappings({\n search,\n previous,\n next,\n}: {\n search: EsSearch;\n previous: ParamDraft[];\n next: ParamDraft[];\n}): ParamMappingEdit {\n let reconciled = search;\n const previousNames = new Set(\n previous.map((param) => param.name).filter(Boolean),\n );\n const nextNames = new Set(next.map((param) => param.name).filter(Boolean));\n const renamed = new Set<string>();\n if (previous.length === next.length) {\n previous.forEach((param, index) => {\n const oldName = param.name;\n const newName = next[index]?.name;\n if (\n oldName &&\n newName &&\n oldName !== newName &&\n !nextNames.has(oldName) &&\n !previousNames.has(newName)\n ) {\n reconciled = renameParamReferences(reconciled, oldName, newName);\n renamed.add(oldName);\n }\n });\n }\n for (const param of previous) {\n if (param.name && !renamed.has(param.name) && !nextNames.has(param.name)) {\n reconciled = stripParamReferences(reconciled, param.name);\n }\n }\n return {\n search: reconciled,\n params: syncAllNativeFields(reconciled, next, search),\n };\n}\n\nexport function reconcileSearchParamMappings({\n previousSearch,\n nextSearch,\n params,\n}: {\n previousSearch: EsSearch;\n nextSearch: EsSearch;\n params: ParamDraft[];\n}): ParamMappingEdit {\n return {\n search: nextSearch,\n params: syncAllNativeFields(nextSearch, params, previousSearch),\n };\n}\n\nconst operands: ParamOperand[] = [\"value\", \"values\", \"gt\", \"gte\", \"lt\", \"lte\"];\n\nfunction namedParam(params: ParamDraft[], name: string): ParamDraft {\n const param = params.find((candidate) => candidate.name === name);\n if (!param) throw new Error(`parameter ${name} does not exist`);\n return param;\n}\n\nfunction appendCondition(search: EsSearch, condition: EsCondition): EsSearch {\n if (!search.query || search.query.op === \"match_all\") {\n return { ...search, query: { ...emptyGroup(), conditions: [condition] } };\n }\n if (search.query.op === \"bool\") {\n return {\n ...search,\n query: {\n ...search.query,\n conditions: [...(search.query.conditions ?? []), condition],\n },\n };\n }\n return {\n ...search,\n query: { ...emptyGroup(), conditions: [search.query, condition] },\n };\n}\n\nfunction stripParamReferences(\n search: EsSearch,\n name: string,\n keepPath?: ConditionPath,\n): EsSearch {\n const query = stripCondition(search.query, name, [], keepPath);\n return { ...search, query: query ?? emptyGroup() };\n}\n\nfunction stripCondition(\n condition: EsCondition | undefined,\n name: string,\n path: ConditionPath,\n keepPath?: ConditionPath,\n): EsCondition | undefined {\n if (!condition) return undefined;\n if (keepPath && samePath(path, keepPath)) return condition;\n if (condition.when === name) return undefined;\n let next = removeReference(condition, name);\n if (!next) return undefined;\n if (next.conditions) {\n const conditions = next.conditions.flatMap((child, index) => {\n const stripped = stripCondition(child, name, [...path, index], keepPath);\n return stripped ? [stripped] : [];\n });\n next = { ...next, conditions };\n if (conditions.length === 0 && (condition.conditions?.length ?? 0) > 0)\n return undefined;\n }\n return next;\n}\n\nfunction removeReference(\n condition: EsCondition,\n name: string,\n): EsCondition | undefined {\n let removed = false;\n const next = { ...condition };\n for (const operand of operands) {\n const value = condition[operand];\n if (operand === \"values\") {\n const values = (condition.values ?? []).filter((entry) => {\n const matches = isParamValue(entry) && entry.param === name;\n removed ||= matches;\n return !matches;\n });\n // Deleted rather than set to undefined: the search is serialized, and a\n // present `values: undefined` is a key the backend has to interpret.\n if (values.length) next.values = values;\n else delete next.values;\n } else if (isParamValue(value) && value.param === name) {\n delete next[operand];\n removed = true;\n }\n }\n return removed && !hasOperand(next) ? undefined : next;\n}\n\nfunction hasOperand(condition: EsCondition): boolean {\n return (\n condition.value !== undefined ||\n Boolean(condition.values?.length) ||\n condition.gt !== undefined ||\n condition.gte !== undefined ||\n condition.lt !== undefined ||\n condition.lte !== undefined ||\n Boolean(condition.conditions?.length)\n );\n}\n\nfunction editAt(\n condition: EsCondition,\n path: ConditionPath,\n edit: (condition: EsCondition) => EsCondition | undefined,\n): EsCondition | undefined {\n if (path.length === 0) return edit(condition);\n const [target, ...rest] = path;\n const children = condition.conditions ?? [];\n const child = target === undefined ? undefined : children[target];\n if (!child) throw new Error(`condition path ${path.join(\".\")} does not exist`);\n const edited = editAt(child, rest, edit);\n return {\n ...condition,\n conditions: children.flatMap((child, index) =>\n index !== target ? [child] : edited ? [edited] : [],\n ),\n };\n}\n\nfunction renameParamReferences(\n search: EsSearch,\n oldName: string,\n newName: string,\n): EsSearch {\n const rename = (condition: EsCondition): EsCondition => {\n const next = { ...condition };\n for (const operand of operands) {\n const value = condition[operand];\n if (operand === \"values\") {\n if (condition.values) {\n next.values = condition.values.map((entry) =>\n renamedValue(entry, oldName, newName),\n );\n }\n } else {\n next[operand] = renamedValue(value, oldName, newName) as never;\n }\n }\n if (condition.when === oldName) next.when = newName;\n if (condition.conditions)\n next.conditions = condition.conditions.map(rename);\n return next;\n };\n if (!search.query) return { ...search };\n return { ...search, query: rename(search.query) };\n}\n\nfunction renamedValue(\n value: EsValue,\n oldName: string,\n newName: string,\n): EsValue {\n return isParamValue(value) && value.param === oldName\n ? { param: newName }\n : value;\n}\n\nfunction syncNativeField(\n params: ParamDraft[],\n name: string,\n field: string | undefined,\n): ParamDraft[] {\n const param = namedParam(params, name);\n if (param.type !== \"list\") return params;\n return params.map((candidate) => {\n if (candidate.name !== name) return candidate;\n const next: ParamDraft = { ...candidate, ...(field ? { field } : {}) };\n if (!field) delete next.field;\n return next;\n });\n}\n\nfunction syncAllNativeFields(\n search: EsSearch,\n params: ParamDraft[],\n previousSearch: EsSearch,\n): ParamDraft[] {\n return params.map((param) => {\n if (param.type !== \"list\" || !param.name) return param;\n const mapping = paramMappings(search, param.name)[0];\n const wasMapped = paramMappings(previousSearch, param.name).length > 0;\n if (!mapping && !wasMapped) return param;\n const field = mapping?.field;\n if (field === param.field) return param;\n const next: ParamDraft = { ...param, ...(field ? { field } : {}) };\n if (!field) delete next.field;\n return next;\n });\n}\n\nfunction samePath(left: ConditionPath, right: ConditionPath): boolean {\n return (\n left.length === right.length &&\n left.every((value, index) => value === right[index])\n );\n}\n"],"names":["isParamValue","conditionAt","conditionOperandPatch","updateAt","applyPatch","emptyGroup","child"],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ConditionPath, EsSearch } from './esQueryBuilderModel';
|
|
2
|
+
import { ParamDraft } from './profileWizardModel';
|
|
3
|
+
export type ParamOperand = "value" | "values" | "gt" | "gte" | "lt" | "lte";
|
|
4
|
+
export type ParamMapping = {
|
|
5
|
+
path: ConditionPath;
|
|
6
|
+
field: string;
|
|
7
|
+
operand: ParamOperand;
|
|
8
|
+
};
|
|
9
|
+
export type ParamMappingEdit = {
|
|
10
|
+
search: EsSearch;
|
|
11
|
+
params: ParamDraft[];
|
|
12
|
+
};
|
|
13
|
+
export declare function paramMappings(search: EsSearch | undefined, name: string): ParamMapping[];
|
|
14
|
+
export declare function addParamMapping({ search, params, name, field, }: ParamMappingEdit & {
|
|
15
|
+
name: string;
|
|
16
|
+
field: string;
|
|
17
|
+
}): ParamMappingEdit;
|
|
18
|
+
export declare function bindParamOperand({ search, params, path, operand, name, }: ParamMappingEdit & {
|
|
19
|
+
path: ConditionPath;
|
|
20
|
+
operand: ParamOperand;
|
|
21
|
+
name: string;
|
|
22
|
+
}): ParamMappingEdit;
|
|
23
|
+
export declare function removeParamMapping({ search, params, name, path, }: ParamMappingEdit & {
|
|
24
|
+
name: string;
|
|
25
|
+
path?: ConditionPath;
|
|
26
|
+
}): ParamMappingEdit;
|
|
27
|
+
export declare function reconcileParamMappings({ search, previous, next, }: {
|
|
28
|
+
search: EsSearch;
|
|
29
|
+
previous: ParamDraft[];
|
|
30
|
+
next: ParamDraft[];
|
|
31
|
+
}): ParamMappingEdit;
|
|
32
|
+
export declare function reconcileSearchParamMappings({ previousSearch, nextSearch, params, }: {
|
|
33
|
+
previousSearch: EsSearch;
|
|
34
|
+
nextSearch: EsSearch;
|
|
35
|
+
params: ParamDraft[];
|
|
36
|
+
}): ParamMappingEdit;
|
|
37
|
+
//# sourceMappingURL=esParamMappingModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"esParamMappingModel.d.ts","sourceRoot":"","sources":["../../src/profiles/esParamMappingModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,QAAQ,EAET,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEnE,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AAE5E,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB,CAAC;AAEF,wBAAgB,aAAa,CAC3B,MAAM,EAAE,QAAQ,GAAG,SAAS,EAC5B,IAAI,EAAE,MAAM,GACX,YAAY,EAAE,CAoBhB;AAED,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,MAAM,EACN,IAAI,EACJ,KAAK,GACN,EAAE,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,CA2BvE;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,MAAM,EACN,IAAI,EACJ,OAAO,EACP,IAAI,GACL,EAAE,gBAAgB,GAAG;IACpB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,gBAAgB,CA8BnB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,GACL,EAAE,gBAAgB,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB,GAAG,gBAAgB,CAqBnB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,MAAM,EACN,QAAQ,EACR,IAAI,GACL,EAAE;IACD,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB,GAAG,gBAAgB,CAgCnB;AAED,wBAAgB,4BAA4B,CAAC,EAC3C,cAAc,EACd,UAAU,EACV,MAAM,GACP,EAAE;IACD,cAAc,EAAE,QAAQ,CAAC;IACzB,UAAU,EAAE,QAAQ,CAAC;IACrB,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB,GAAG,gBAAgB,CAKnB"}
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
import { conditionAt, updateAt, emptyGroup, isParamValue } from "./esQueryBuilderModel.js";
|
|
2
|
+
import { conditionOperandPatch } from "./esQueryOperandModel.js";
|
|
3
|
+
import { applyPatch } from "./profileWizardModel.js";
|
|
4
|
+
function paramMappings(search, name) {
|
|
5
|
+
const found = [];
|
|
6
|
+
const walk = (condition, path) => {
|
|
7
|
+
var _a;
|
|
8
|
+
if (!condition) return;
|
|
9
|
+
for (const operand of operands) {
|
|
10
|
+
const value = condition[operand];
|
|
11
|
+
const values = Array.isArray(value) ? value : [value];
|
|
12
|
+
if (condition.field && values.some((entry) => isParamValue(entry) && entry.param === name)) {
|
|
13
|
+
found.push({ path, field: condition.field, operand });
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
(_a = condition.conditions) == null ? void 0 : _a.forEach(
|
|
17
|
+
(child, index) => walk(child, [...path, index])
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
|
+
walk(search == null ? void 0 : search.query, []);
|
|
21
|
+
return found;
|
|
22
|
+
}
|
|
23
|
+
function addParamMapping({
|
|
24
|
+
search,
|
|
25
|
+
params,
|
|
26
|
+
name,
|
|
27
|
+
field
|
|
28
|
+
}) {
|
|
29
|
+
const param = namedParam(params, name);
|
|
30
|
+
if (param.role === "limit" || param.role === "offset") {
|
|
31
|
+
throw new Error(
|
|
32
|
+
`${param.role} parameter ${name} cannot map to a query field`
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
if (param.role === "time-from" || param.role === "time-to") {
|
|
36
|
+
return { search: { ...search, timeField: field }, params };
|
|
37
|
+
}
|
|
38
|
+
const withoutPrevious = param.type === "list" ? stripParamReferences(search, name) : search;
|
|
39
|
+
const condition = {
|
|
40
|
+
op: param.type === "list" ? "terms" : "term",
|
|
41
|
+
occur: "filter",
|
|
42
|
+
field,
|
|
43
|
+
value: { param: name },
|
|
44
|
+
...!param.required ? { optional: true } : {}
|
|
45
|
+
};
|
|
46
|
+
return {
|
|
47
|
+
search: appendCondition(withoutPrevious, condition),
|
|
48
|
+
params: syncNativeField(
|
|
49
|
+
params,
|
|
50
|
+
name,
|
|
51
|
+
param.type === "list" ? field : void 0
|
|
52
|
+
)
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
function bindParamOperand({
|
|
56
|
+
search,
|
|
57
|
+
params,
|
|
58
|
+
path,
|
|
59
|
+
operand,
|
|
60
|
+
name
|
|
61
|
+
}) {
|
|
62
|
+
const param = namedParam(params, name);
|
|
63
|
+
if (param.role && param.role !== "filter") {
|
|
64
|
+
throw new Error(
|
|
65
|
+
`${param.role} parameter ${name} cannot bind a query operand`
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
const condition = search.query && conditionAt(search.query, path);
|
|
69
|
+
if (!(condition == null ? void 0 : condition.field))
|
|
70
|
+
throw new Error(`condition for parameter ${name} has no field`);
|
|
71
|
+
const value = { param: name };
|
|
72
|
+
const patch = operand === "values" ? conditionOperandPatch({ arity: "multiple", values: [value] }) : operand === "value" ? conditionOperandPatch({ arity: "single", value }) : conditionOperandPatch({ arity: "range", bound: operand, value });
|
|
73
|
+
const query = updateAt(
|
|
74
|
+
search.query,
|
|
75
|
+
path,
|
|
76
|
+
(current) => applyPatch(current, patch)
|
|
77
|
+
);
|
|
78
|
+
const bound = { ...search, query };
|
|
79
|
+
return {
|
|
80
|
+
search: param.type === "list" ? stripParamReferences(bound, name, path) : bound,
|
|
81
|
+
params: syncNativeField(
|
|
82
|
+
params,
|
|
83
|
+
name,
|
|
84
|
+
param.type === "list" ? condition.field : void 0
|
|
85
|
+
)
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
function removeParamMapping({
|
|
89
|
+
search,
|
|
90
|
+
params,
|
|
91
|
+
name,
|
|
92
|
+
path
|
|
93
|
+
}) {
|
|
94
|
+
const param = namedParam(params, name);
|
|
95
|
+
if (param.role === "time-from" || param.role === "time-to") {
|
|
96
|
+
const next = { ...search };
|
|
97
|
+
delete next.timeField;
|
|
98
|
+
return { search: next, params };
|
|
99
|
+
}
|
|
100
|
+
if (!path) {
|
|
101
|
+
if (param.type !== "list")
|
|
102
|
+
throw new Error(`parameter ${name} has no field mapping to remove`);
|
|
103
|
+
return { search, params: syncNativeField(params, name, void 0) };
|
|
104
|
+
}
|
|
105
|
+
const query = search.query ? editAt(
|
|
106
|
+
search.query,
|
|
107
|
+
path,
|
|
108
|
+
(condition) => removeReference(condition, name)
|
|
109
|
+
) : void 0;
|
|
110
|
+
return {
|
|
111
|
+
search: { ...search, query: query ?? emptyGroup() },
|
|
112
|
+
params: syncNativeField(params, name, void 0)
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
function reconcileParamMappings({
|
|
116
|
+
search,
|
|
117
|
+
previous,
|
|
118
|
+
next
|
|
119
|
+
}) {
|
|
120
|
+
let reconciled = search;
|
|
121
|
+
const previousNames = new Set(
|
|
122
|
+
previous.map((param) => param.name).filter(Boolean)
|
|
123
|
+
);
|
|
124
|
+
const nextNames = new Set(next.map((param) => param.name).filter(Boolean));
|
|
125
|
+
const renamed = /* @__PURE__ */ new Set();
|
|
126
|
+
if (previous.length === next.length) {
|
|
127
|
+
previous.forEach((param, index) => {
|
|
128
|
+
var _a;
|
|
129
|
+
const oldName = param.name;
|
|
130
|
+
const newName = (_a = next[index]) == null ? void 0 : _a.name;
|
|
131
|
+
if (oldName && newName && oldName !== newName && !nextNames.has(oldName) && !previousNames.has(newName)) {
|
|
132
|
+
reconciled = renameParamReferences(reconciled, oldName, newName);
|
|
133
|
+
renamed.add(oldName);
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
for (const param of previous) {
|
|
138
|
+
if (param.name && !renamed.has(param.name) && !nextNames.has(param.name)) {
|
|
139
|
+
reconciled = stripParamReferences(reconciled, param.name);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return {
|
|
143
|
+
search: reconciled,
|
|
144
|
+
params: syncAllNativeFields(reconciled, next, search)
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
function reconcileSearchParamMappings({
|
|
148
|
+
previousSearch,
|
|
149
|
+
nextSearch,
|
|
150
|
+
params
|
|
151
|
+
}) {
|
|
152
|
+
return {
|
|
153
|
+
search: nextSearch,
|
|
154
|
+
params: syncAllNativeFields(nextSearch, params, previousSearch)
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
const operands = ["value", "values", "gt", "gte", "lt", "lte"];
|
|
158
|
+
function namedParam(params, name) {
|
|
159
|
+
const param = params.find((candidate) => candidate.name === name);
|
|
160
|
+
if (!param) throw new Error(`parameter ${name} does not exist`);
|
|
161
|
+
return param;
|
|
162
|
+
}
|
|
163
|
+
function appendCondition(search, condition) {
|
|
164
|
+
if (!search.query || search.query.op === "match_all") {
|
|
165
|
+
return { ...search, query: { ...emptyGroup(), conditions: [condition] } };
|
|
166
|
+
}
|
|
167
|
+
if (search.query.op === "bool") {
|
|
168
|
+
return {
|
|
169
|
+
...search,
|
|
170
|
+
query: {
|
|
171
|
+
...search.query,
|
|
172
|
+
conditions: [...search.query.conditions ?? [], condition]
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
return {
|
|
177
|
+
...search,
|
|
178
|
+
query: { ...emptyGroup(), conditions: [search.query, condition] }
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
function stripParamReferences(search, name, keepPath) {
|
|
182
|
+
const query = stripCondition(search.query, name, [], keepPath);
|
|
183
|
+
return { ...search, query: query ?? emptyGroup() };
|
|
184
|
+
}
|
|
185
|
+
function stripCondition(condition, name, path, keepPath) {
|
|
186
|
+
var _a;
|
|
187
|
+
if (!condition) return void 0;
|
|
188
|
+
if (keepPath && samePath(path, keepPath)) return condition;
|
|
189
|
+
if (condition.when === name) return void 0;
|
|
190
|
+
let next = removeReference(condition, name);
|
|
191
|
+
if (!next) return void 0;
|
|
192
|
+
if (next.conditions) {
|
|
193
|
+
const conditions = next.conditions.flatMap((child, index) => {
|
|
194
|
+
const stripped = stripCondition(child, name, [...path, index], keepPath);
|
|
195
|
+
return stripped ? [stripped] : [];
|
|
196
|
+
});
|
|
197
|
+
next = { ...next, conditions };
|
|
198
|
+
if (conditions.length === 0 && (((_a = condition.conditions) == null ? void 0 : _a.length) ?? 0) > 0)
|
|
199
|
+
return void 0;
|
|
200
|
+
}
|
|
201
|
+
return next;
|
|
202
|
+
}
|
|
203
|
+
function removeReference(condition, name) {
|
|
204
|
+
let removed = false;
|
|
205
|
+
const next = { ...condition };
|
|
206
|
+
for (const operand of operands) {
|
|
207
|
+
const value = condition[operand];
|
|
208
|
+
if (operand === "values") {
|
|
209
|
+
const values = (condition.values ?? []).filter((entry) => {
|
|
210
|
+
const matches = isParamValue(entry) && entry.param === name;
|
|
211
|
+
removed || (removed = matches);
|
|
212
|
+
return !matches;
|
|
213
|
+
});
|
|
214
|
+
if (values.length) next.values = values;
|
|
215
|
+
else delete next.values;
|
|
216
|
+
} else if (isParamValue(value) && value.param === name) {
|
|
217
|
+
delete next[operand];
|
|
218
|
+
removed = true;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
return removed && !hasOperand(next) ? void 0 : next;
|
|
222
|
+
}
|
|
223
|
+
function hasOperand(condition) {
|
|
224
|
+
var _a, _b;
|
|
225
|
+
return condition.value !== void 0 || Boolean((_a = condition.values) == null ? void 0 : _a.length) || condition.gt !== void 0 || condition.gte !== void 0 || condition.lt !== void 0 || condition.lte !== void 0 || Boolean((_b = condition.conditions) == null ? void 0 : _b.length);
|
|
226
|
+
}
|
|
227
|
+
function editAt(condition, path, edit) {
|
|
228
|
+
if (path.length === 0) return edit(condition);
|
|
229
|
+
const [target, ...rest] = path;
|
|
230
|
+
const children = condition.conditions ?? [];
|
|
231
|
+
const child = target === void 0 ? void 0 : children[target];
|
|
232
|
+
if (!child) throw new Error(`condition path ${path.join(".")} does not exist`);
|
|
233
|
+
const edited = editAt(child, rest, edit);
|
|
234
|
+
return {
|
|
235
|
+
...condition,
|
|
236
|
+
conditions: children.flatMap(
|
|
237
|
+
(child2, index) => index !== target ? [child2] : edited ? [edited] : []
|
|
238
|
+
)
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
function renameParamReferences(search, oldName, newName) {
|
|
242
|
+
const rename = (condition) => {
|
|
243
|
+
const next = { ...condition };
|
|
244
|
+
for (const operand of operands) {
|
|
245
|
+
const value = condition[operand];
|
|
246
|
+
if (operand === "values") {
|
|
247
|
+
if (condition.values) {
|
|
248
|
+
next.values = condition.values.map(
|
|
249
|
+
(entry) => renamedValue(entry, oldName, newName)
|
|
250
|
+
);
|
|
251
|
+
}
|
|
252
|
+
} else {
|
|
253
|
+
next[operand] = renamedValue(value, oldName, newName);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
if (condition.when === oldName) next.when = newName;
|
|
257
|
+
if (condition.conditions)
|
|
258
|
+
next.conditions = condition.conditions.map(rename);
|
|
259
|
+
return next;
|
|
260
|
+
};
|
|
261
|
+
if (!search.query) return { ...search };
|
|
262
|
+
return { ...search, query: rename(search.query) };
|
|
263
|
+
}
|
|
264
|
+
function renamedValue(value, oldName, newName) {
|
|
265
|
+
return isParamValue(value) && value.param === oldName ? { param: newName } : value;
|
|
266
|
+
}
|
|
267
|
+
function syncNativeField(params, name, field) {
|
|
268
|
+
const param = namedParam(params, name);
|
|
269
|
+
if (param.type !== "list") return params;
|
|
270
|
+
return params.map((candidate) => {
|
|
271
|
+
if (candidate.name !== name) return candidate;
|
|
272
|
+
const next = { ...candidate, ...field ? { field } : {} };
|
|
273
|
+
if (!field) delete next.field;
|
|
274
|
+
return next;
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
function syncAllNativeFields(search, params, previousSearch) {
|
|
278
|
+
return params.map((param) => {
|
|
279
|
+
if (param.type !== "list" || !param.name) return param;
|
|
280
|
+
const mapping = paramMappings(search, param.name)[0];
|
|
281
|
+
const wasMapped = paramMappings(previousSearch, param.name).length > 0;
|
|
282
|
+
if (!mapping && !wasMapped) return param;
|
|
283
|
+
const field = mapping == null ? void 0 : mapping.field;
|
|
284
|
+
if (field === param.field) return param;
|
|
285
|
+
const next = { ...param, ...field ? { field } : {} };
|
|
286
|
+
if (!field) delete next.field;
|
|
287
|
+
return next;
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
function samePath(left, right) {
|
|
291
|
+
return left.length === right.length && left.every((value, index) => value === right[index]);
|
|
292
|
+
}
|
|
293
|
+
export {
|
|
294
|
+
addParamMapping,
|
|
295
|
+
bindParamOperand,
|
|
296
|
+
paramMappings,
|
|
297
|
+
reconcileParamMappings,
|
|
298
|
+
reconcileSearchParamMappings,
|
|
299
|
+
removeParamMapping
|
|
300
|
+
};
|
|
301
|
+
//# sourceMappingURL=esParamMappingModel.js.map
|