@qoretechnologies/reqraft 0.10.62 → 0.10.63-pr.142.g0b675cd
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -1
- package/dist/components/Description/describedControl.d.ts +48 -0
- package/dist/components/Description/describedControl.d.ts.map +1 -0
- package/dist/components/Description/describedControl.js +81 -0
- package/dist/components/Description/describedControl.js.map +1 -0
- package/dist/components/Description/index.d.ts.map +1 -1
- package/dist/components/Description/index.js +3 -2
- package/dist/components/Description/index.js.map +1 -1
- package/dist/components/colorValue/colorValue.d.ts +59 -0
- package/dist/components/colorValue/colorValue.d.ts.map +1 -0
- package/dist/components/colorValue/colorValue.js +245 -0
- package/dist/components/colorValue/colorValue.js.map +1 -0
- package/dist/components/colorValue/index.d.ts +34 -0
- package/dist/components/colorValue/index.d.ts.map +1 -0
- package/dist/components/colorValue/index.js +136 -0
- package/dist/components/colorValue/index.js.map +1 -0
- package/dist/components/colorValue/labels.d.ts +12 -0
- package/dist/components/colorValue/labels.d.ts.map +1 -0
- package/dist/components/colorValue/labels.js +11 -0
- package/dist/components/colorValue/labels.js.map +1 -0
- package/dist/components/composer/Composer.d.ts +1 -1
- package/dist/components/composer/Composer.d.ts.map +1 -1
- package/dist/components/composer/Composer.js +2 -2
- package/dist/components/composer/Composer.js.map +1 -1
- package/dist/components/dpqlEditor/DpqlEditor.d.ts.map +1 -1
- package/dist/components/dpqlEditor/DpqlEditor.js +25 -5
- package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts +10 -1
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.js +30 -13
- package/dist/components/dpqlEditor/dpqlHelpers.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.d.ts +11 -7
- package/dist/components/dpqlEditor/dpqlTags.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.js +11 -6
- package/dist/components/dpqlEditor/dpqlTags.js.map +1 -1
- package/dist/components/dpqlEditor/types.d.ts +47 -8
- package/dist/components/dpqlEditor/types.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.d.ts +2 -2
- package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.js +16 -7
- package/dist/components/dpqlEditor/useDpqlSession.js.map +1 -1
- package/dist/components/form/engine/CompactRow.d.ts.map +1 -1
- package/dist/components/form/engine/CompactRow.js +151 -83
- package/dist/components/form/engine/CompactRow.js.map +1 -1
- package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
- package/dist/components/form/engine/CompactToolbar.js +29 -3
- package/dist/components/form/engine/CompactToolbar.js.map +1 -1
- package/dist/components/form/engine/FormEngine.d.ts +34 -1
- package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
- package/dist/components/form/engine/FormEngine.js +487 -87
- package/dist/components/form/engine/FormEngine.js.map +1 -1
- package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
- package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
- package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
- package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
- package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
- package/dist/components/form/engine/OptionFieldMessages.js +24 -3
- package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts +2 -2
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.js +12 -6
- package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
- package/dist/components/form/engine/compactRowContext.d.ts +19 -0
- package/dist/components/form/engine/compactRowContext.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowContext.js.map +1 -1
- package/dist/components/form/engine/compactRowStyles.d.ts +0 -1
- package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowStyles.js +12 -20
- package/dist/components/form/engine/compactRowStyles.js.map +1 -1
- package/dist/components/form/engine/compactToolbarColors.d.ts +16 -0
- package/dist/components/form/engine/compactToolbarColors.d.ts.map +1 -0
- package/dist/components/form/engine/compactToolbarColors.js +21 -0
- package/dist/components/form/engine/compactToolbarColors.js.map +1 -0
- package/dist/components/form/engine/readFirst.d.ts +24 -8
- package/dist/components/form/engine/readFirst.d.ts.map +1 -1
- package/dist/components/form/engine/readFirst.js +77 -109
- package/dist/components/form/engine/readFirst.js.map +1 -1
- package/dist/components/form/engine/readFirstColors.d.ts +30 -0
- package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
- package/dist/components/form/engine/readFirstColors.js +51 -0
- package/dist/components/form/engine/readFirstColors.js.map +1 -0
- package/dist/components/form/engine/rowFocus.d.ts +2 -0
- package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
- package/dist/components/form/engine/rowFocus.js +26 -3
- package/dist/components/form/engine/rowFocus.js.map +1 -1
- package/dist/components/form/engine/typeChoices.d.ts +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.js +2 -1
- package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
- package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
- package/dist/components/form/engine/variants/variantParts.js +25 -17
- package/dist/components/form/engine/variants/variantParts.js.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.js +3 -3
- package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
- package/dist/components/form/expressions/ExpressionField.d.ts +41 -3
- package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
- package/dist/components/form/expressions/ExpressionField.js +396 -99
- package/dist/components/form/expressions/ExpressionField.js.map +1 -1
- package/dist/components/form/expressions/builder/argumentDetail.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/argumentDetail.js +4 -1
- package/dist/components/form/expressions/builder/argumentDetail.js.map +1 -1
- package/dist/components/form/expressions/builder/argumentLabel.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/argumentLabel.js +27 -9
- package/dist/components/form/expressions/builder/argumentLabel.js.map +1 -1
- package/dist/components/form/expressions/builder/argumentWrapper.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/argumentWrapper.js +4 -2
- package/dist/components/form/expressions/builder/argumentWrapper.js.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js +5 -4
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js.map +1 -1
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts +1 -1
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js +6 -3
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js.map +1 -1
- package/dist/components/form/expressions/builder/index.d.ts +24 -2
- package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/index.js +121 -77
- package/dist/components/form/expressions/builder/index.js.map +1 -1
- package/dist/components/form/expressions/builder/item.d.ts +6 -2
- package/dist/components/form/expressions/builder/item.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/item.js +19 -5
- package/dist/components/form/expressions/builder/item.js.map +1 -1
- package/dist/components/form/expressions/builder/renderTemplate.js +1 -1
- package/dist/components/form/expressions/builder/renderTemplate.js.map +1 -1
- package/dist/components/form/expressions/expressionOperands.d.ts +16 -0
- package/dist/components/form/expressions/expressionOperands.d.ts.map +1 -0
- package/dist/components/form/expressions/expressionOperands.js +97 -0
- package/dist/components/form/expressions/expressionOperands.js.map +1 -0
- package/dist/components/form/expressions/mockExpressions.d.ts.map +1 -1
- package/dist/components/form/expressions/mockExpressions.js +22 -5
- package/dist/components/form/expressions/mockExpressions.js.map +1 -1
- package/dist/components/form/expressions/renderExpressionToText.d.ts +2 -0
- package/dist/components/form/expressions/renderExpressionToText.d.ts.map +1 -1
- package/dist/components/form/expressions/renderExpressionToText.js +35 -9
- package/dist/components/form/expressions/renderExpressionToText.js.map +1 -1
- package/dist/components/form/expressions/textOfExpression.d.ts +18 -0
- package/dist/components/form/expressions/textOfExpression.d.ts.map +1 -0
- package/dist/components/form/expressions/textOfExpression.js +37 -0
- package/dist/components/form/expressions/textOfExpression.js.map +1 -0
- package/dist/components/form/expressions/useExpressionType.d.ts +26 -0
- package/dist/components/form/expressions/useExpressionType.d.ts.map +1 -0
- package/dist/components/form/expressions/useExpressionType.js +181 -0
- package/dist/components/form/expressions/useExpressionType.js.map +1 -0
- package/dist/components/form/expressions/useRenderExpression.d.ts.map +1 -1
- package/dist/components/form/expressions/useRenderExpression.js +7 -7
- package/dist/components/form/expressions/useRenderExpression.js.map +1 -1
- package/dist/components/form/fields/Field.d.ts.map +1 -1
- package/dist/components/form/fields/Field.js +20 -7
- package/dist/components/form/fields/Field.js.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.js +17 -4
- package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
- package/dist/components/form/fields/array/ArrayAuto.d.ts.map +1 -1
- package/dist/components/form/fields/array/ArrayAuto.js +24 -0
- package/dist/components/form/fields/array/ArrayAuto.js.map +1 -1
- package/dist/components/form/fields/array/ArrayAutoField.d.ts.map +1 -1
- package/dist/components/form/fields/array/ArrayAutoField.js +36 -13
- package/dist/components/form/fields/array/ArrayAutoField.js.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts +20 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.js +81 -36
- package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
- package/dist/components/form/fields/auto/hostEditorValue.d.ts +30 -0
- package/dist/components/form/fields/auto/hostEditorValue.d.ts.map +1 -0
- package/dist/components/form/fields/auto/hostEditorValue.js +53 -0
- package/dist/components/form/fields/auto/hostEditorValue.js.map +1 -0
- package/dist/components/form/fields/binary/Binary.d.ts.map +1 -1
- package/dist/components/form/fields/binary/Binary.js +23 -3
- package/dist/components/form/fields/binary/Binary.js.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.d.ts +5 -0
- package/dist/components/form/fields/boolean/Boolean.d.ts.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.js +9 -1
- package/dist/components/form/fields/boolean/Boolean.js.map +1 -1
- package/dist/components/form/fields/color/Color.d.ts +103 -16
- package/dist/components/form/fields/color/Color.d.ts.map +1 -1
- package/dist/components/form/fields/color/Color.js +611 -16
- package/dist/components/form/fields/color/Color.js.map +1 -1
- package/dist/components/form/fields/emittedValues.d.ts +34 -3
- package/dist/components/form/fields/emittedValues.d.ts.map +1 -1
- package/dist/components/form/fields/emittedValues.js +24 -1
- package/dist/components/form/fields/emittedValues.js.map +1 -1
- package/dist/components/form/fields/file/File.d.ts +1 -1
- package/dist/components/form/fields/file/File.d.ts.map +1 -1
- package/dist/components/form/fields/file/File.js +4 -2
- package/dist/components/form/fields/file/File.js.map +1 -1
- package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
- package/dist/components/form/fields/long-string/LongString.js +17 -3
- package/dist/components/form/fields/long-string/LongString.js.map +1 -1
- package/dist/components/form/fields/markdown/MarkdownView.js +1 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts.map +1 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js +4 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
- package/dist/components/form/fields/number/Number.d.ts +6 -0
- package/dist/components/form/fields/number/Number.d.ts.map +1 -1
- package/dist/components/form/fields/number/Number.js +41 -6
- package/dist/components/form/fields/number/Number.js.map +1 -1
- package/dist/components/form/fields/object/Object.d.ts +1 -1
- package/dist/components/form/fields/object/Object.d.ts.map +1 -1
- package/dist/components/form/fields/object/Object.js +4 -2
- package/dist/components/form/fields/object/Object.js.map +1 -1
- package/dist/components/form/fields/pendingEdit.d.ts +52 -0
- package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
- package/dist/components/form/fields/pendingEdit.js +79 -0
- package/dist/components/form/fields/pendingEdit.js.map +1 -0
- package/dist/components/form/fields/rich-text/RichText.d.ts +8 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.js +190 -81
- package/dist/components/form/fields/rich-text/RichText.js.map +1 -1
- package/dist/components/form/fields/rich-text/useTemplateTags.d.ts +18 -0
- package/dist/components/form/fields/rich-text/useTemplateTags.d.ts.map +1 -0
- package/dist/components/form/fields/rich-text/useTemplateTags.js +49 -0
- package/dist/components/form/fields/rich-text/useTemplateTags.js.map +1 -0
- package/dist/components/form/fields/schema-definition/CatalogLeafForm.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/CatalogLeafForm.js +4 -1
- package/dist/components/form/fields/schema-definition/CatalogLeafForm.js.map +1 -1
- package/dist/components/form/fields/schema-definition/CatalogNodeEditor.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js +20 -5
- package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js.map +1 -1
- package/dist/components/form/fields/schema-definition/TableEditor.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/TableEditor.js +10 -2
- package/dist/components/form/fields/schema-definition/TableEditor.js.map +1 -1
- package/dist/components/form/fields/schema-definition/index.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/index.js +8 -4
- package/dist/components/form/fields/schema-definition/index.js.map +1 -1
- package/dist/components/form/fields/select/Select.d.ts +2 -0
- package/dist/components/form/fields/select/Select.d.ts.map +1 -1
- package/dist/components/form/fields/select/Select.js +19 -10
- package/dist/components/form/fields/select/Select.js.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.d.ts.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.js +8 -2
- package/dist/components/form/fields/select/SelectCollection.js.map +1 -1
- package/dist/components/form/fields/select/unavailableRow.d.ts +23 -0
- package/dist/components/form/fields/select/unavailableRow.d.ts.map +1 -0
- package/dist/components/form/fields/select/unavailableRow.js +55 -0
- package/dist/components/form/fields/select/unavailableRow.js.map +1 -0
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts +5 -5
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts.map +1 -1
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js +11 -4
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
- package/dist/components/form/fields/template/TemplateBrowser.d.ts +22 -0
- package/dist/components/form/fields/template/TemplateBrowser.d.ts.map +1 -0
- package/dist/components/form/fields/template/TemplateBrowser.js +54 -0
- package/dist/components/form/fields/template/TemplateBrowser.js.map +1 -0
- package/dist/components/form/fields/template/TemplateField.d.ts +83 -1
- package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateField.js +535 -85
- package/dist/components/form/fields/template/TemplateField.js.map +1 -1
- package/dist/components/form/fields/template/TemplateText.d.ts +0 -17
- package/dist/components/form/fields/template/TemplateText.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateText.js +8 -4
- package/dist/components/form/fields/template/TemplateText.js.map +1 -1
- package/dist/components/form/fields/template/writtenAsText.d.ts +55 -0
- package/dist/components/form/fields/template/writtenAsText.d.ts.map +1 -0
- package/dist/components/form/fields/template/writtenAsText.js +188 -0
- package/dist/components/form/fields/template/writtenAsText.js.map +1 -0
- package/dist/components/form/index.d.ts +10 -0
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +23 -1
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.js +19 -7
- package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
- package/dist/components/log/Log.d.ts.map +1 -1
- package/dist/components/log/Log.js +15 -7
- package/dist/components/log/Log.js.map +1 -1
- package/dist/components/menu/Menu.d.ts.map +1 -1
- package/dist/components/menu/Menu.js +19 -10
- package/dist/components/menu/Menu.js.map +1 -1
- package/dist/components/smartEditor/CompletionMenu.d.ts +43 -0
- package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
- package/dist/components/smartEditor/CompletionMenu.js +196 -0
- package/dist/components/smartEditor/CompletionMenu.js.map +1 -0
- package/dist/components/smartEditor/MarkdownDoc.d.ts +1 -1
- package/dist/components/smartEditor/MarkdownDoc.js +1 -1
- package/dist/components/smartEditor/MarkdownDoc.js.map +1 -1
- package/dist/components/smartEditor/SmartEditor.d.ts.map +1 -1
- package/dist/components/smartEditor/SmartEditor.js +51 -136
- package/dist/components/smartEditor/SmartEditor.js.map +1 -1
- package/dist/components/smartEditor/completionStyle.d.ts +27 -0
- package/dist/components/smartEditor/completionStyle.d.ts.map +1 -0
- package/dist/components/smartEditor/completionStyle.js +66 -0
- package/dist/components/smartEditor/completionStyle.js.map +1 -0
- package/dist/components/smartEditor/index.d.ts +5 -1
- package/dist/components/smartEditor/index.d.ts.map +1 -1
- package/dist/components/smartEditor/index.js +19 -1
- package/dist/components/smartEditor/index.js.map +1 -1
- package/dist/components/smartEditor/templateCompletions.d.ts +18 -0
- package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
- package/dist/components/smartEditor/templateCompletions.js +94 -0
- package/dist/components/smartEditor/templateCompletions.js.map +1 -0
- package/dist/components/smartEditor/types.d.ts +12 -1
- package/dist/components/smartEditor/types.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.d.ts +32 -0
- package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.js +228 -118
- package/dist/components/smartEditor/useLspAutocomplete.js.map +1 -1
- package/dist/components/smartEditor/useLspHover.d.ts +22 -7
- package/dist/components/smartEditor/useLspHover.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspHover.js +86 -17
- package/dist/components/smartEditor/useLspHover.js.map +1 -1
- package/dist/components/smartEditor/useLspSemanticTokens.js +1 -1
- package/dist/components/smartEditor/useLspSemanticTokens.js.map +1 -1
- package/dist/components/smartEditor/useLspSession.d.ts +6 -0
- package/dist/components/smartEditor/useLspSession.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspSession.js +7 -6
- package/dist/components/smartEditor/useLspSession.js.map +1 -1
- package/dist/components/supportTicket/AttachmentChips.d.ts.map +1 -1
- package/dist/components/supportTicket/AttachmentChips.js +15 -5
- package/dist/components/supportTicket/AttachmentChips.js.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.d.ts +9 -2
- package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.js +27 -6
- package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
- package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
- package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketHeader.js +20 -2
- package/dist/components/supportTicket/TicketHeader.js.map +1 -1
- package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
- package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.js +9 -4
- package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
- package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
- package/dist/components/ticketThread/TicketThread.js +36 -11
- package/dist/components/ticketThread/TicketThread.js.map +1 -1
- package/dist/helpers/descriptionTooltip.d.ts +43 -0
- package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
- package/dist/helpers/descriptionTooltip.js +70 -0
- package/dist/helpers/descriptionTooltip.js.map +1 -0
- package/dist/helpers/domProps.d.ts +5 -0
- package/dist/helpers/domProps.d.ts.map +1 -0
- package/dist/helpers/domProps.js +47 -0
- package/dist/helpers/domProps.js.map +1 -0
- package/dist/helpers/expressions.d.ts +107 -2
- package/dist/helpers/expressions.d.ts.map +1 -1
- package/dist/helpers/expressions.js +223 -8
- package/dist/helpers/expressions.js.map +1 -1
- package/dist/helpers/hoveringPointer.d.ts +26 -0
- package/dist/helpers/hoveringPointer.d.ts.map +1 -0
- package/dist/helpers/hoveringPointer.js +29 -0
- package/dist/helpers/hoveringPointer.js.map +1 -0
- package/dist/helpers/markdownText.d.ts +14 -0
- package/dist/helpers/markdownText.d.ts.map +1 -0
- package/dist/helpers/markdownText.js +160 -0
- package/dist/helpers/markdownText.js.map +1 -0
- package/dist/helpers/qorusTypeCatalogue.d.ts +53 -0
- package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
- package/dist/helpers/qorusTypeCatalogue.js +262 -0
- package/dist/helpers/qorusTypeCatalogue.js.map +1 -0
- package/dist/helpers/readableColors.d.ts +36 -0
- package/dist/helpers/readableColors.d.ts.map +1 -0
- package/dist/helpers/readableColors.js +116 -0
- package/dist/helpers/readableColors.js.map +1 -0
- package/dist/helpers/templateItems.d.ts +2 -2
- package/dist/helpers/templateItems.d.ts.map +1 -1
- package/dist/helpers/templateItems.js +6 -4
- package/dist/helpers/templateItems.js.map +1 -1
- package/dist/helpers/templates.d.ts +26 -1
- package/dist/helpers/templates.d.ts.map +1 -1
- package/dist/helpers/templates.js +41 -6
- package/dist/helpers/templates.js.map +1 -1
- package/dist/helpers/validations.d.ts +9 -0
- package/dist/helpers/validations.d.ts.map +1 -1
- package/dist/helpers/validations.js +139 -33
- package/dist/helpers/validations.js.map +1 -1
- package/dist/hooks/useQorusTypes.d.ts +7 -15
- package/dist/hooks/useQorusTypes.d.ts.map +1 -1
- package/dist/hooks/useQorusTypes.js +25 -166
- package/dist/hooks/useQorusTypes.js.map +1 -1
- package/dist/hooks/useReadableIntentShade.d.ts +9 -0
- package/dist/hooks/useReadableIntentShade.d.ts.map +1 -0
- package/dist/hooks/useReadableIntentShade.js +23 -0
- package/dist/hooks/useReadableIntentShade.js.map +1 -0
- package/dist/hooks/useReadableOpacity.d.ts +6 -0
- package/dist/hooks/useReadableOpacity.d.ts.map +1 -0
- package/dist/hooks/useReadableOpacity.js +17 -0
- package/dist/hooks/useReadableOpacity.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/tracking/ui/ExperimentCard.d.ts +1 -1
- package/dist/tracking/ui/ExperimentCard.d.ts.map +1 -1
- package/dist/tracking/ui/ExperimentCard.js +26 -10
- package/dist/tracking/ui/ExperimentCard.js.map +1 -1
- package/dist/tracking/ui/card.d.ts +2 -2
- package/dist/tracking/ui/card.d.ts.map +1 -1
- package/dist/tracking/ui/card.js +2 -2
- package/dist/tracking/ui/card.js.map +1 -1
- package/dist/tracking/ui/readable.d.ts +14 -0
- package/dist/tracking/ui/readable.d.ts.map +1 -0
- package/dist/tracking/ui/readable.js +60 -0
- package/dist/tracking/ui/readable.js.map +1 -0
- package/package.json +14 -5
- package/.claude/CLAUDE.md +0 -317
- package/.tasks/EXPORT_EXPRESSION_BUILDER.md +0 -38
- package/.tasks/EXPRESSION_BUILDER_REPORT.md +0 -149
- package/.tasks/EXPRESSION_FIELD_SEAMS.md +0 -66
- package/.tasks/FIELD_STACK_REPORT.md +0 -234
- package/.tasks/FORM_ENGINE_COMPACT_READ_FIRST.md +0 -558
- package/.tasks/FORM_ENGINE_EXPRESSIONS.md +0 -197
- package/.tasks/FORM_ENGINE_OPTIONS_SYNC.md +0 -95
- package/.tasks/FORM_FIELD_EXTRAS.md +0 -72
- package/.tasks/INDEX.md +0 -111
- package/.tasks/LSP_SHARED_CONNECTION.md +0 -75
- package/.tasks/QONSOLE_ASSIST_FEATURES.md +0 -306
- package/.tasks/RENDER_EXPRESSION_LSP.md +0 -159
- package/.tasks/REQRAFT_AUTO_FIELD.md +0 -176
- package/.tasks/SCHEMA_DEFINITION_FIELD.md +0 -250
- package/.tasks/SMART_EDITOR_CONTEXT_AND_POLISH.md +0 -340
- package/.tasks/SMART_EDITOR_LSP_FEATURES.md +0 -299
- package/.tasks/SMART_EDITOR_REVIEW_FOLLOWUPS.md +0 -280
- package/.tasks/SMART_EDITOR_UX_POLISH.md +0 -383
- package/.tasks/SMART_EDITOR_VISUAL_POLISH.md +0 -246
- package/.tasks/STORY_NETWORK_ISOLATION.md +0 -98
- package/.tasks/TEMPLATE_TOKEN_GRAMMAR.md +0 -72
- package/CODE_OF_CONDUCT.md +0 -105
- package/CONTRIBUTING.MD +0 -78
- package/SECURITY.md +0 -3
- package/chromatic.config.json +0 -5
- package/design/COMPACT_ENGINE_REDESIGN.md +0 -156
- package/design/COMPACT_INFO_DISPLAY.md +0 -87
- package/design/COMPACT_PARITY.md +0 -85
- package/design/EXPRESSION_BUILDER_REPORT_STRATEGY.md +0 -92
- package/design/FORM_ENGINE_COMPACT.md +0 -300
- package/design/FORM_ENGINE_COMPACT_UX_PLAN.md +0 -353
- package/design/FORM_ENGINE_EXPRESSIONS.md +0 -257
- package/design/FORM_ENGINE_FIELD_MIGRATION.md +0 -419
- package/design/IDE_INTEGRATION.md +0 -64
- package/design/RENDER_EXPRESSION_TRANSPORT.md +0 -156
- package/design/SELECT_DIALOG_FLOOR.md +0 -86
- package/design/SMART_EDITOR_UX.md +0 -438
- package/design/TRACKING.md +0 -290
- package/design/UNAVAILABLE_ALLOWED_VALUES.md +0 -226
- package/src/components/Description/index.tsx +0 -254
- package/src/components/Description/markdownRendererContext.tsx +0 -29
- package/src/components/FocusedEditing/index.tsx +0 -50
- package/src/components/codeSize/index.tsx +0 -79
- package/src/components/composer/Composer.stories.tsx +0 -238
- package/src/components/composer/Composer.tsx +0 -554
- package/src/components/composer/helpers.ts +0 -74
- package/src/components/composer/index.ts +0 -2
- package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -1183
- package/src/components/dpqlEditor/DpqlEditor.tsx +0 -219
- package/src/components/dpqlEditor/dpqlHelpers.ts +0 -287
- package/src/components/dpqlEditor/dpqlInserter.ts +0 -121
- package/src/components/dpqlEditor/dpqlProbe.ts +0 -165
- package/src/components/dpqlEditor/dpqlTags.ts +0 -114
- package/src/components/dpqlEditor/index.ts +0 -41
- package/src/components/dpqlEditor/types.ts +0 -203
- package/src/components/dpqlEditor/useDpqlProbe.ts +0 -33
- package/src/components/dpqlEditor/useDpqlSession.ts +0 -411
- package/src/components/form/engine/CompactRow.tsx +0 -2620
- package/src/components/form/engine/CompactToolbar.tsx +0 -330
- package/src/components/form/engine/FormEngine.stories.tsx +0 -9920
- package/src/components/form/engine/FormEngine.tsx +0 -4569
- package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
- package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -331
- package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
- package/src/components/form/engine/OptionFieldMessages.tsx +0 -477
- package/src/components/form/engine/OptionsHelpDialog.tsx +0 -29
- package/src/components/form/engine/__fixtures__/basicFormOptions.ts +0 -309
- package/src/components/form/engine/__fixtures__/fieldChromeOptions.ts +0 -45
- package/src/components/form/engine/_structuredData/SchemaDataView.stories.tsx +0 -233
- package/src/components/form/engine/_structuredData/SchemaDataView.tsx +0 -742
- package/src/components/form/engine/_structuredData/StructuredDataView.stories.tsx +0 -85
- package/src/components/form/engine/_structuredData/StructuredDataView.tsx +0 -75
- package/src/components/form/engine/_structuredData/structuredData.ts +0 -145
- package/src/components/form/engine/compactRowContext.ts +0 -148
- package/src/components/form/engine/compactRowStyles.ts +0 -898
- package/src/components/form/engine/compactToolbarContext.ts +0 -69
- package/src/components/form/engine/optionActions.ts +0 -128
- package/src/components/form/engine/optionsContext.ts +0 -24
- package/src/components/form/engine/readFirst.ts +0 -1077
- package/src/components/form/engine/rendererTypes.ts +0 -107
- package/src/components/form/engine/revealRow.ts +0 -123
- package/src/components/form/engine/rowFocus.ts +0 -101
- package/src/components/form/engine/rowMenuContext.ts +0 -159
- package/src/components/form/engine/rowOpenPicker.ts +0 -27
- package/src/components/form/engine/typeChoices.ts +0 -63
- package/src/components/form/engine/variants/FormEngineVariants.stories.tsx +0 -159
- package/src/components/form/engine/variants/VariantCalmTable.tsx +0 -244
- package/src/components/form/engine/variants/VariantCards.tsx +0 -212
- package/src/components/form/engine/variants/VariantFocus.tsx +0 -382
- package/src/components/form/engine/variants/VariantMinimal.tsx +0 -170
- package/src/components/form/engine/variants/focusDemo.ts +0 -145
- package/src/components/form/engine/variants/variantModel.ts +0 -223
- package/src/components/form/engine/variants/variantParts.tsx +0 -313
- package/src/components/form/expressions/DpqlRendering.tsx +0 -85
- package/src/components/form/expressions/ExpressionField.stories.tsx +0 -1395
- package/src/components/form/expressions/ExpressionField.tsx +0 -503
- package/src/components/form/expressions/argumentPresence.ts +0 -213
- package/src/components/form/expressions/builder/ExpressionBuilder.stories.tsx +0 -1683
- package/src/components/form/expressions/builder/argumentDetail.tsx +0 -17
- package/src/components/form/expressions/builder/argumentLabel.tsx +0 -146
- package/src/components/form/expressions/builder/argumentSlot.tsx +0 -101
- package/src/components/form/expressions/builder/argumentWrapper.tsx +0 -243
- package/src/components/form/expressions/builder/confirmMismatchedTypesModal.tsx +0 -120
- package/src/components/form/expressions/builder/confirmUnsupportedTypeModal.tsx +0 -69
- package/src/components/form/expressions/builder/index.tsx +0 -1545
- package/src/components/form/expressions/builder/item.tsx +0 -89
- package/src/components/form/expressions/builder/moveToPositionStrip.tsx +0 -156
- package/src/components/form/expressions/builder/renderTemplate.tsx +0 -42
- package/src/components/form/expressions/dpqlMockLanguage.ts +0 -566
- package/src/components/form/expressions/dpqlMockLsp.ts +0 -126
- package/src/components/form/expressions/mockExpressions.ts +0 -317
- package/src/components/form/expressions/renderExpressionToText.ts +0 -137
- package/src/components/form/expressions/types.ts +0 -110
- package/src/components/form/expressions/useExpressions.ts +0 -101
- package/src/components/form/expressions/useRenderExpression.ts +0 -165
- package/src/components/form/fields/Field.stories.tsx +0 -143
- package/src/components/form/fields/Field.tsx +0 -732
- package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -297
- package/src/components/form/fields/array/ArrayAuto.tsx +0 -237
- package/src/components/form/fields/array/ArrayAutoField.stories.tsx +0 -475
- package/src/components/form/fields/array/ArrayAutoField.tsx +0 -367
- package/src/components/form/fields/auto/AutoFormField.stories.tsx +0 -825
- package/src/components/form/fields/auto/AutoFormField.tsx +0 -1164
- package/src/components/form/fields/binary/Binary.stories.tsx +0 -122
- package/src/components/form/fields/binary/Binary.tsx +0 -91
- package/src/components/form/fields/boolean/Boolean.stories.tsx +0 -125
- package/src/components/form/fields/boolean/Boolean.tsx +0 -34
- package/src/components/form/fields/byte-size/ByteSize.stories.tsx +0 -87
- package/src/components/form/fields/byte-size/ByteSize.tsx +0 -58
- package/src/components/form/fields/color/Color.stories.tsx +0 -99
- package/src/components/form/fields/color/Color.tsx +0 -46
- package/src/components/form/fields/cron/Cron.stories.tsx +0 -68
- package/src/components/form/fields/cron/Cron.tsx +0 -80
- package/src/components/form/fields/date/Date.stories.tsx +0 -77
- package/src/components/form/fields/date/Date.tsx +0 -55
- package/src/components/form/fields/emittedValues.ts +0 -70
- package/src/components/form/fields/file/File.stories.tsx +0 -161
- package/src/components/form/fields/file/File.tsx +0 -227
- package/src/components/form/fields/long-string/LongString.stories.tsx +0 -120
- package/src/components/form/fields/long-string/LongString.tsx +0 -130
- package/src/components/form/fields/markdown/Markdown.stories.tsx +0 -76
- package/src/components/form/fields/markdown/Markdown.tsx +0 -81
- package/src/components/form/fields/markdown/MarkdownView.tsx +0 -222
- package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +0 -139
- package/src/components/form/fields/number/Number.stories.tsx +0 -159
- package/src/components/form/fields/number/Number.tsx +0 -160
- package/src/components/form/fields/object/Object.stories.tsx +0 -398
- package/src/components/form/fields/object/Object.tsx +0 -255
- package/src/components/form/fields/radio-group/RadioGroup.stories.tsx +0 -95
- package/src/components/form/fields/radio-group/RadioGroup.tsx +0 -46
- package/src/components/form/fields/radio-group/images/java-96x128.png +0 -0
- package/src/components/form/fields/radio-group/images/python-129x128.png +0 -0
- package/src/components/form/fields/radio-group/images/qore-106x128.png +0 -0
- package/src/components/form/fields/rich-text/RichText.stories.tsx +0 -260
- package/src/components/form/fields/rich-text/RichText.tsx +0 -537
- package/src/components/form/fields/schema-definition/CatalogLeafForm.tsx +0 -242
- package/src/components/form/fields/schema-definition/CatalogNodeEditor.tsx +0 -758
- package/src/components/form/fields/schema-definition/Hint.tsx +0 -22
- package/src/components/form/fields/schema-definition/InlineValidationBanner.tsx +0 -138
- package/src/components/form/fields/schema-definition/Loader.tsx +0 -20
- package/src/components/form/fields/schema-definition/MigrationsTab.tsx +0 -187
- package/src/components/form/fields/schema-definition/SchemaDefinitionField.stories.tsx +0 -286
- package/src/components/form/fields/schema-definition/TableEditor.tsx +0 -155
- package/src/components/form/fields/schema-definition/TablesTab.tsx +0 -138
- package/src/components/form/fields/schema-definition/catalog.ts +0 -237
- package/src/components/form/fields/schema-definition/helpers.ts +0 -90
- package/src/components/form/fields/schema-definition/index.tsx +0 -418
- package/src/components/form/fields/schema-definition/mockCatalog.ts +0 -325
- package/src/components/form/fields/schema-definition/mockDefinition.ts +0 -111
- package/src/components/form/fields/schema-definition/referenceSuggestions.tsx +0 -152
- package/src/components/form/fields/schema-definition/starterTemplate.ts +0 -68
- package/src/components/form/fields/schema-definition/types.ts +0 -185
- package/src/components/form/fields/schema-definition/useSchemaOptionCatalog.ts +0 -49
- package/src/components/form/fields/select/Select.stories.tsx +0 -872
- package/src/components/form/fields/select/Select.tsx +0 -624
- package/src/components/form/fields/select/SelectCollection.tsx +0 -594
- package/src/components/form/fields/string/String.stories.tsx +0 -86
- package/src/components/form/fields/string/String.tsx +0 -43
- package/src/components/form/fields/template/ExampleValueModal.stories.tsx +0 -114
- package/src/components/form/fields/template/ExampleValueModal.tsx +0 -99
- package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +0 -47
- package/src/components/form/fields/template/TemplateField.stories.tsx +0 -1121
- package/src/components/form/fields/template/TemplateField.tsx +0 -1717
- package/src/components/form/fields/template/TemplateText.tsx +0 -115
- package/src/components/form/fields/template/__fixtures__/longExampleValue.ts +0 -7
- package/src/components/form/fields/template/__fixtures__/multiLevelTemplates.json +0 -147
- package/src/components/form/fields/template/__fixtures__/templates.json +0 -83
- package/src/components/form/fields/timeout/Timeout.stories.tsx +0 -228
- package/src/components/form/fields/timeout/Timeout.tsx +0 -87
- package/src/components/form/fields/url/Url.stories.tsx +0 -94
- package/src/components/form/fields/url/Url.tsx +0 -85
- package/src/components/form/index.tsx +0 -47
- package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
- package/src/components/imageLightbox/ImageLightbox.tsx +0 -236
- package/src/components/imageLightbox/index.ts +0 -1
- package/src/components/log/Log.stories.tsx +0 -333
- package/src/components/log/Log.tsx +0 -285
- package/src/components/menu/Menu.stories.tsx +0 -155
- package/src/components/menu/Menu.tsx +0 -312
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.stories.tsx +0 -797
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.tsx +0 -105
- package/src/components/qonsoleSmartInput/index.ts +0 -16
- package/src/components/qonsoleSmartInput/qonsoleInserter.ts +0 -77
- package/src/components/qonsoleSmartInput/types.ts +0 -133
- package/src/components/qonsoleSmartInput/useQonsoleSession.ts +0 -124
- package/src/components/searchFilterBar/SearchFilterBar.stories.tsx +0 -62
- package/src/components/searchFilterBar/SearchFilterBar.tsx +0 -144
- package/src/components/searchFilterBar/index.ts +0 -1
- package/src/components/smartEditor/MarkdownDoc.tsx +0 -190
- package/src/components/smartEditor/SmartEditor.stories.tsx +0 -475
- package/src/components/smartEditor/SmartEditor.tsx +0 -808
- package/src/components/smartEditor/__fixtures__/mockLspServer.ts +0 -205
- package/src/components/smartEditor/helpers.ts +0 -217
- package/src/components/smartEditor/index.ts +0 -35
- package/src/components/smartEditor/styling.ts +0 -45
- package/src/components/smartEditor/types.ts +0 -211
- package/src/components/smartEditor/useLspAutocomplete.ts +0 -758
- package/src/components/smartEditor/useLspDiagnosticDecorations.ts +0 -125
- package/src/components/smartEditor/useLspHover.ts +0 -230
- package/src/components/smartEditor/useLspSemanticTokens.ts +0 -298
- package/src/components/smartEditor/useLspSession.ts +0 -231
- package/src/components/smartEditor/useLspSignatureHelp.ts +0 -198
- package/src/components/supportTicket/AttachmentChips.stories.tsx +0 -171
- package/src/components/supportTicket/AttachmentChips.tsx +0 -147
- package/src/components/supportTicket/InterfaceReferenceTags.stories.tsx +0 -257
- package/src/components/supportTicket/InterfaceReferenceTags.tsx +0 -129
- package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -584
- package/src/components/supportTicket/ReferencePicker.tsx +0 -563
- package/src/components/supportTicket/TicketConversation.stories.tsx +0 -121
- package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
- package/src/components/supportTicket/TicketHeader.tsx +0 -247
- package/src/components/supportTicket/TicketMetaTags.stories.tsx +0 -103
- package/src/components/supportTicket/TicketMetaTags.tsx +0 -85
- package/src/components/supportTicket/TicketReplyBox.stories.tsx +0 -354
- package/src/components/supportTicket/TicketReplyBox.tsx +0 -150
- package/src/components/supportTicket/__fixtures__/kindMarks.ts +0 -28
- package/src/components/supportTicket/attachmentAccess.ts +0 -97
- package/src/components/supportTicket/fileToAttachment.ts +0 -24
- package/src/components/supportTicket/index.ts +0 -10
- package/src/components/supportTicket/meta.ts +0 -206
- package/src/components/supportTicket/ticketModel.ts +0 -131
- package/src/components/supportTicket/useLoadedImages.ts +0 -73
- package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -315
- package/src/components/ticketReferences/TicketReferences.tsx +0 -906
- package/src/components/ticketReferences/index.ts +0 -2
- package/src/components/ticketThread/TicketThread.stories.tsx +0 -829
- package/src/components/ticketThread/TicketThread.tsx +0 -719
- package/src/components/ticketThread/index.ts +0 -6
- package/src/contexts/FetchContext.tsx +0 -25
- package/src/contexts/ReqraftContext.tsx +0 -9
- package/src/contexts/StorageContext.tsx +0 -33
- package/src/global.d.ts +0 -4
- package/src/helpers/allowedValues.ts +0 -249
- package/src/helpers/choiceChip.ts +0 -227
- package/src/helpers/common.ts +0 -326
- package/src/helpers/dpqlDetection.ts +0 -209
- package/src/helpers/expressions.ts +0 -140
- package/src/helpers/optionUiTypes.ts +0 -199
- package/src/helpers/options.ts +0 -150
- package/src/helpers/providerValue.ts +0 -125
- package/src/helpers/scrollbar.ts +0 -32
- package/src/helpers/singleLineString.ts +0 -61
- package/src/helpers/templateItems.ts +0 -81
- package/src/helpers/templateText.ts +0 -350
- package/src/helpers/templates.ts +0 -602
- package/src/helpers/validations.ts +0 -2085
- package/src/hooks/useArgSchema.ts +0 -37
- package/src/hooks/useCoarsePointer.ts +0 -30
- package/src/hooks/useFetch/useFetch.stories.tsx +0 -379
- package/src/hooks/useFetch/useFetch.tsx +0 -154
- package/src/hooks/usePhoneViewport.ts +0 -34
- package/src/hooks/useQorusTypes.ts +0 -233
- package/src/hooks/useReqraftProperty.ts +0 -16
- package/src/hooks/useStorage/useStorage.stories.tsx +0 -168
- package/src/hooks/useStorage/useStorage.ts +0 -35
- package/src/hooks/useTemplates.ts +0 -123
- package/src/hooks/useValidation.ts +0 -9
- package/src/hooks/useWebSocket/useWebSocket.ts +0 -224
- package/src/hooks/useWebSocket/useWebsocket.stories.tsx +0 -640
- package/src/hooks/useWhyDidYouUpdate.ts +0 -38
- package/src/index.tsx +0 -86
- package/src/providers/FetchProvider.tsx +0 -40
- package/src/providers/ReqraftProvider.tsx +0 -52
- package/src/providers/StorageProvider.tsx +0 -131
- package/src/stores/currentUser/currentUser.stories.tsx +0 -100
- package/src/stores/currentUser/currentUser.tsx +0 -94
- package/src/stories/Data/fileFieldArgSchema.json +0 -86
- package/src/stories/Tests/utils.ts +0 -320
- package/src/stories/storyNetwork.ts +0 -92
- package/src/stories/tracking.tsx +0 -206
- package/src/tracking/browser/attach.ts +0 -186
- package/src/tracking/browser/env.ts +0 -78
- package/src/tracking/core/consent.ts +0 -37
- package/src/tracking/core/engagement.ts +0 -47
- package/src/tracking/core/experiments.ts +0 -258
- package/src/tracking/core/hash.ts +0 -26
- package/src/tracking/core/ids.ts +0 -25
- package/src/tracking/core/observable.ts +0 -23
- package/src/tracking/core/queue.ts +0 -131
- package/src/tracking/core/sections.ts +0 -166
- package/src/tracking/core/storage.ts +0 -69
- package/src/tracking/core/tracker.ts +0 -417
- package/src/tracking/core/types.ts +0 -162
- package/src/tracking/core/utm.ts +0 -23
- package/src/tracking/index.ts +0 -72
- package/src/tracking/markup.ts +0 -17
- package/src/tracking/react/Experiment.tsx +0 -44
- package/src/tracking/react/TrackingProvider.tsx +0 -56
- package/src/tracking/react/hooks.ts +0 -106
- package/src/tracking/react/index.ts +0 -13
- package/src/tracking/testing.ts +0 -108
- package/src/tracking/ui/ExperimentCard.stories.tsx +0 -296
- package/src/tracking/ui/ExperimentCard.tsx +0 -667
- package/src/tracking/ui/ExperimentsOverlay.stories.tsx +0 -155
- package/src/tracking/ui/ExperimentsOverlay.tsx +0 -437
- package/src/tracking/ui/anchor.ts +0 -180
- package/src/tracking/ui/card.ts +0 -464
- package/src/tracking/ui/client.ts +0 -117
- package/src/tracking/ui/index.ts +0 -77
- package/src/tracking/ui/types.ts +0 -110
- package/src/tracking/ui/useExperimentsAdmin.ts +0 -103
- package/src/types/Form.ts +0 -29
- package/src/types.ts +0 -14
- package/src/utils/datetime.ts +0 -10
- package/src/utils/fetch.ts +0 -457
- package/src/utils/lspClient.ts +0 -711
- package/src/utils/lspClient.types.ts +0 -211
- package/src/utils/queryUnlessCancelled.ts +0 -28
- package/src/utils/websocket.ts +0 -293
- package/vite.config.ts +0 -58
- package/vitest.config.ts +0 -69
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// QonsoleSmartInput — Qorus Qonsole-flavored wrapper around the generic
|
|
3
|
-
// SmartEditor primitive. Provides predictive text + diagnostics for
|
|
4
|
-
// Qonsole command and natural-language input by pointing `ReqraftLspClient` at
|
|
5
|
-
// the server's `/lsp` endpoint with `languageId: 'qonsole'` and the
|
|
6
|
-
// server-advertised trigger characters from the live spike.
|
|
7
|
-
|
|
8
|
-
import { forwardRef, useCallback, useImperativeHandle, useMemo } from 'react';
|
|
9
|
-
import { RenderLeafProps } from 'slate-react/dist/components/editable';
|
|
10
|
-
import { SmartEditor } from '../smartEditor/SmartEditor';
|
|
11
|
-
import { makeQonsoleCompletionInserter } from './qonsoleInserter';
|
|
12
|
-
import {
|
|
13
|
-
IQonsoleSmartInputProps,
|
|
14
|
-
IQonsoleSmartInputRef,
|
|
15
|
-
TQonsoleAssistFeature,
|
|
16
|
-
} from './types';
|
|
17
|
-
import { useQonsoleSession } from './useQonsoleSession';
|
|
18
|
-
|
|
19
|
-
export type { IQonsoleSmartInputProps, IQonsoleSmartInputRef };
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Trigger characters that open the autocomplete dropdown. Sourced from
|
|
23
|
-
* the server's `initialize` response under
|
|
24
|
-
* `capabilities.experimental.qonsole.completionTriggerCharacters` — see
|
|
25
|
-
* `QONSOLE_LSP_REFERENCE.md` and the spike transcript section 1 in
|
|
26
|
-
* `QONSOLE_LSP_RESPONSES.txt`.
|
|
27
|
-
*/
|
|
28
|
-
const QONSOLE_TRIGGERS = new Set(['/', ' ', '-', '=', '.']);
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Minimal leaf renderer — returns a plain `<span>` with Slate's
|
|
32
|
-
* attributes. Sidesteps the React-warning chain in Reqore's default
|
|
33
|
-
* `Leaf` → `ReqoreSpan` → `ReqoreTooltipComponent` (which currently
|
|
34
|
-
* types `Component: React.FC<any>` and triggers the
|
|
35
|
-
* "function components cannot be given refs" warning even though
|
|
36
|
-
* styled-components do auto-forward at runtime). Tracked as a Reqore
|
|
37
|
-
* follow-up; suppressing here keeps the QonsoleSmartInput console clean.
|
|
38
|
-
*/
|
|
39
|
-
const qonsoleRenderLeaf = (props: RenderLeafProps) => (
|
|
40
|
-
<span {...props.attributes}>{props.children}</span>
|
|
41
|
-
);
|
|
42
|
-
|
|
43
|
-
export const QonsoleSmartInput = forwardRef<
|
|
44
|
-
IQonsoleSmartInputRef,
|
|
45
|
-
IQonsoleSmartInputProps
|
|
46
|
-
>(
|
|
47
|
-
(
|
|
48
|
-
{
|
|
49
|
-
value,
|
|
50
|
-
onChange,
|
|
51
|
-
useContext,
|
|
52
|
-
readOnly = false,
|
|
53
|
-
height = '40px',
|
|
54
|
-
onBlur,
|
|
55
|
-
onWizardStart,
|
|
56
|
-
},
|
|
57
|
-
ref
|
|
58
|
-
) => {
|
|
59
|
-
const qonsole = useQonsoleSession({
|
|
60
|
-
useContext,
|
|
61
|
-
initialText: value,
|
|
62
|
-
});
|
|
63
|
-
|
|
64
|
-
// Branch wizard items into the consumer's `onWizardStart`
|
|
65
|
-
// callback. Memoised on the callback identity so the inserter
|
|
66
|
-
// reference is stable across renders when the callback is.
|
|
67
|
-
const completionInserter = useMemo(
|
|
68
|
-
() => makeQonsoleCompletionInserter(onWizardStart),
|
|
69
|
-
[onWizardStart]
|
|
70
|
-
);
|
|
71
|
-
|
|
72
|
-
const assist = useCallback(
|
|
73
|
-
(
|
|
74
|
-
position: { line: number; character: number },
|
|
75
|
-
features?: TQonsoleAssistFeature[]
|
|
76
|
-
) => qonsole.assist(position, features),
|
|
77
|
-
[qonsole]
|
|
78
|
-
);
|
|
79
|
-
|
|
80
|
-
useImperativeHandle(
|
|
81
|
-
ref,
|
|
82
|
-
(): IQonsoleSmartInputRef => ({
|
|
83
|
-
validate: qonsole.validate,
|
|
84
|
-
assist,
|
|
85
|
-
}),
|
|
86
|
-
[qonsole, assist]
|
|
87
|
-
);
|
|
88
|
-
|
|
89
|
-
return (
|
|
90
|
-
<SmartEditor
|
|
91
|
-
session={qonsole.session}
|
|
92
|
-
value={value}
|
|
93
|
-
onChange={onChange}
|
|
94
|
-
triggerCharacters={QONSOLE_TRIGGERS}
|
|
95
|
-
customRenderLeaf={qonsoleRenderLeaf}
|
|
96
|
-
completionInserter={completionInserter}
|
|
97
|
-
height={height}
|
|
98
|
-
readOnly={readOnly}
|
|
99
|
-
onBlur={onBlur}
|
|
100
|
-
/>
|
|
101
|
-
);
|
|
102
|
-
}
|
|
103
|
-
);
|
|
104
|
-
|
|
105
|
-
QonsoleSmartInput.displayName = 'QonsoleSmartInput';
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Public surface of the QonsoleSmartInput component.
|
|
3
|
-
|
|
4
|
-
export { QonsoleSmartInput } from './QonsoleSmartInput';
|
|
5
|
-
export type {
|
|
6
|
-
IQonsoleAssistContext,
|
|
7
|
-
IQonsoleAssistResult,
|
|
8
|
-
IQonsoleSmartInputProps,
|
|
9
|
-
IQonsoleSmartInputRef,
|
|
10
|
-
TQonsoleAssistFeature,
|
|
11
|
-
} from './types';
|
|
12
|
-
export { useQonsoleSession } from './useQonsoleSession';
|
|
13
|
-
export type {
|
|
14
|
-
IUseQonsoleSessionOptions,
|
|
15
|
-
IUseQonsoleSessionResult,
|
|
16
|
-
} from './useQonsoleSession';
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Qonsole-specific completion inserter. Branches on the LSP item's
|
|
3
|
-
// `command` field — when the server attaches
|
|
4
|
-
// `{ command: "qonsole.startWizard", arguments: [{...}] }` (only on
|
|
5
|
-
// `kind: 'wizard'` items), accept the item by firing the wrapper's
|
|
6
|
-
// `onWizardStart` callback INSTEAD of inserting text. Everything
|
|
7
|
-
// else falls through to the generic text inserter.
|
|
8
|
-
//
|
|
9
|
-
// The server explicitly rejects `workspace/executeCommand` for the
|
|
10
|
-
// `qonsole.*` namespace (see qorus/Classes/QorusLspWebSocketHandler.qc:2197)
|
|
11
|
-
// — wizard launch is REST-driven, not LSP-driven. So the client
|
|
12
|
-
// owns the launch flow: pull `arguments[0].start_path` and POST to it
|
|
13
|
-
// via the consumer's apiHost. That's a qorus-ide-side concern.
|
|
14
|
-
|
|
15
|
-
import { Editor, Transforms } from 'slate';
|
|
16
|
-
import { lspPositionToOffset } from '../smartEditor/helpers';
|
|
17
|
-
import { TCompletionInserter } from '../smartEditor/types';
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Factory — pass the wrapper's `onWizardStart` callback (or
|
|
21
|
-
* `undefined` to fall back to text insertion for wizard items).
|
|
22
|
-
*/
|
|
23
|
-
export function makeQonsoleCompletionInserter(
|
|
24
|
-
onWizardStart?: (args: Record<string, unknown>) => void
|
|
25
|
-
): TCompletionInserter {
|
|
26
|
-
return (item, editor, ctx) => {
|
|
27
|
-
// Branch on the command field. When the server has attached a
|
|
28
|
-
// wizard-launch command AND the consumer has wired the callback,
|
|
29
|
-
// fire it and skip the text insertion entirely.
|
|
30
|
-
const cmd = item.command;
|
|
31
|
-
if (
|
|
32
|
-
cmd?.command === 'qonsole.startWizard' &&
|
|
33
|
-
onWizardStart &&
|
|
34
|
-
Array.isArray(cmd.arguments) &&
|
|
35
|
-
cmd.arguments.length > 0
|
|
36
|
-
) {
|
|
37
|
-
const args = cmd.arguments[0];
|
|
38
|
-
if (args && typeof args === 'object') {
|
|
39
|
-
onWizardStart(args as Record<string, unknown>);
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
// Default path — same shape as `defaultCompletionInserter` in
|
|
45
|
-
// SmartEditor.tsx. Apply textEdit when present (LSP-compliant
|
|
46
|
-
// partial-token replacement); otherwise insert at cursor.
|
|
47
|
-
const newText = item.textEdit?.newText ?? item.insertText ?? item.label;
|
|
48
|
-
|
|
49
|
-
// Replace mode (chip click) — atomic node swap. Same as
|
|
50
|
-
// defaultCompletionInserter.
|
|
51
|
-
if (ctx.replacementPath) {
|
|
52
|
-
const path = ctx.replacementPath;
|
|
53
|
-
Editor.withoutNormalizing(editor, () => {
|
|
54
|
-
Transforms.removeNodes(editor, { at: path });
|
|
55
|
-
Transforms.insertNodes(editor, [{ text: newText }] as any, {
|
|
56
|
-
at: path,
|
|
57
|
-
select: true,
|
|
58
|
-
});
|
|
59
|
-
});
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// Typing path — delete partial token using textEdit.range, then
|
|
64
|
-
// insert the server's replacement.
|
|
65
|
-
if (item.textEdit) {
|
|
66
|
-
const startOffset = lspPositionToOffset(
|
|
67
|
-
ctx.plainText,
|
|
68
|
-
item.textEdit.range.start
|
|
69
|
-
);
|
|
70
|
-
const charsToDelete = Math.max(0, ctx.cursorOffset - startOffset);
|
|
71
|
-
for (let i = 0; i < charsToDelete; i++) {
|
|
72
|
-
Editor.deleteBackward(editor, { unit: 'character' });
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
Transforms.insertText(editor, newText);
|
|
76
|
-
};
|
|
77
|
-
}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Type definitions for QonsoleSmartInput — a Reqraft component that
|
|
3
|
-
// drives the Qorus Qonsole `/lsp` LSP from a SmartEditor.
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* `/use` context override for a Qonsole document. The server reads this
|
|
7
|
-
* via `textDocument.metadata.context` on didOpen and via the
|
|
8
|
-
* `qonsole/setContext` custom method. Matches the shape documented in
|
|
9
|
-
* `qorus/design/qonsole-lsp.md` and confirmed by the live spike.
|
|
10
|
-
*/
|
|
11
|
-
export interface IQonsoleAssistContext {
|
|
12
|
-
/** Resource kind — `'services'`, `'workflows'`, `'connections'`, … */
|
|
13
|
-
resource: string;
|
|
14
|
-
/** Resource public name (preferred) */
|
|
15
|
-
name?: string;
|
|
16
|
-
/** Resource identifier (alternative to `name`) */
|
|
17
|
-
identifier?: string;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
/** Feature subset to request from `qonsole/assist`. */
|
|
21
|
-
export type TQonsoleAssistFeature =
|
|
22
|
-
| 'completion'
|
|
23
|
-
| 'diagnostics'
|
|
24
|
-
| 'hover'
|
|
25
|
-
| 'signature'
|
|
26
|
-
| 'tokens'
|
|
27
|
-
| 'format'
|
|
28
|
-
| 'suggestions'
|
|
29
|
-
| 'wizards'
|
|
30
|
-
| 'all';
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Raw `qonsole/assist` payload. Shape captured from the live spike on
|
|
34
|
-
* 2026-05-25 and documented in `QONSOLE_LSP_REFERENCE.md`. Kept as a
|
|
35
|
-
* loose record because the server has freedom to add fields; consumers
|
|
36
|
-
* should validate specific feature blocks they consume.
|
|
37
|
-
*/
|
|
38
|
-
export interface IQonsoleAssistResult {
|
|
39
|
-
version: string;
|
|
40
|
-
// Server literal — `"command"` (input starts with `/`), `"nl"`
|
|
41
|
-
// (free-form natural language), or `"empty"`. The earlier
|
|
42
|
-
// `"natural-language"` was a documentation error; the server
|
|
43
|
-
// returns the literal `"nl"` (see QonsoleAssistService.qc:282).
|
|
44
|
-
mode: 'command' | 'nl' | 'empty';
|
|
45
|
-
context?: Record<string, unknown>;
|
|
46
|
-
canonical?: {
|
|
47
|
-
command_name?: string;
|
|
48
|
-
verb?: string;
|
|
49
|
-
description?: string;
|
|
50
|
-
resource?: string;
|
|
51
|
-
};
|
|
52
|
-
completion?: {
|
|
53
|
-
state: string;
|
|
54
|
-
prefix: string;
|
|
55
|
-
replace_start: number;
|
|
56
|
-
replace_end: number;
|
|
57
|
-
items: Array<Record<string, any>>;
|
|
58
|
-
};
|
|
59
|
-
starter_suggestions?: Record<string, any>;
|
|
60
|
-
diagnostics?: Array<Record<string, any>>;
|
|
61
|
-
hover?: Record<string, any>;
|
|
62
|
-
signature?: Record<string, any>;
|
|
63
|
-
tokens?: Array<{ start: number; end: number; type: string; modifiers: string[] }>;
|
|
64
|
-
format?: Record<string, any>;
|
|
65
|
-
related_wizards?: Array<Record<string, any>>;
|
|
66
|
-
metrics?: {
|
|
67
|
-
duration_ms: number;
|
|
68
|
-
completion_items: number;
|
|
69
|
-
diagnostic_count: number;
|
|
70
|
-
suggestion_count: number;
|
|
71
|
-
wizard_count: number;
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export interface IQonsoleSmartInputProps {
|
|
76
|
-
/** Current value as plain text. Single-line by convention but multi-line works. */
|
|
77
|
-
value: string;
|
|
78
|
-
/** Called with the new plain-text value whenever the document changes. */
|
|
79
|
-
onChange: (value: string) => void;
|
|
80
|
-
/**
|
|
81
|
-
* Optional `/use` context override. Sent as `textDocument.metadata.context`
|
|
82
|
-
* on the initial `didOpen` and re-dispatched via `qonsole/setContext`
|
|
83
|
-
* whenever it changes.
|
|
84
|
-
*/
|
|
85
|
-
useContext?: IQonsoleAssistContext;
|
|
86
|
-
/** Read-only mode. */
|
|
87
|
-
readOnly?: boolean;
|
|
88
|
-
/** CSS height of the editable area. Default `'40px'` — single-line look. */
|
|
89
|
-
height?: string;
|
|
90
|
-
/** Called when the editor loses focus. */
|
|
91
|
-
onBlur?: () => void;
|
|
92
|
-
/**
|
|
93
|
-
* Called when the user accepts a wizard-launch completion item —
|
|
94
|
-
* i.e. an item whose `command.command === "qonsole.startWizard"`.
|
|
95
|
-
* The argument is the server-supplied wizard descriptor:
|
|
96
|
-
*
|
|
97
|
-
* `{ action: 'start-wizard', name, title, short_desc, verb,
|
|
98
|
-
* resource, start_path, source_command }`
|
|
99
|
-
*
|
|
100
|
-
* The consumer is responsible for launching the wizard flow —
|
|
101
|
-
* typically POSTing to `start_path` and rendering a step-by-step
|
|
102
|
-
* modal. Reqraft provides no wizard runner UI; that lives in the
|
|
103
|
-
* qorus-ide consumer.
|
|
104
|
-
*
|
|
105
|
-
* When this prop is set, wizard items are NOT inserted as text on
|
|
106
|
-
* accept; this callback fires instead. When it's `undefined`, the
|
|
107
|
-
* item's `label` falls through to plain-text insertion (degraded
|
|
108
|
-
* but harmless).
|
|
109
|
-
*
|
|
110
|
-
* See `qorus/Classes/QonsoleAssistService.qc:818` for the
|
|
111
|
-
* wizard descriptor's exact shape.
|
|
112
|
-
*/
|
|
113
|
-
onWizardStart?: (args: Record<string, unknown>) => void;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
export interface IQonsoleSmartInputRef {
|
|
117
|
-
/**
|
|
118
|
-
* Synchronous validation via `qonsole/validate`. Returns
|
|
119
|
-
* `{valid: true}` when the server reports no diagnostics, otherwise
|
|
120
|
-
* `{valid: false, errors: [{message}]}`.
|
|
121
|
-
*/
|
|
122
|
-
validate: () => Promise<{ valid: boolean; errors?: Array<{ message: string }> }>;
|
|
123
|
-
/**
|
|
124
|
-
* Fetch a rich assist snapshot at the current cursor position.
|
|
125
|
-
* Returns the full server payload (completion + signature + hover +
|
|
126
|
-
* tokens + diagnostics + …) for callers that want one round-trip per
|
|
127
|
-
* keystroke instead of N requests.
|
|
128
|
-
*/
|
|
129
|
-
assist: (
|
|
130
|
-
position: { line: number; character: number },
|
|
131
|
-
features?: TQonsoleAssistFeature[]
|
|
132
|
-
) => Promise<IQonsoleAssistResult | null>;
|
|
133
|
-
}
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Qonsole-specific layer on top of the generic `useLspSession`. Handles
|
|
3
|
-
// the `qonsole/setContext` lifecycle (sends initial context as didOpen
|
|
4
|
-
// metadata, re-dispatches when context changes) and exposes typed
|
|
5
|
-
// wrappers for the server's `qonsole/assist` and `qonsole/validate`
|
|
6
|
-
// custom methods. Shape based on the live spike captured in
|
|
7
|
-
// `qorus-frontend/QONSOLE_LSP_REFERENCE.md`.
|
|
8
|
-
|
|
9
|
-
import { useCallback, useEffect } from 'react';
|
|
10
|
-
import { ILspDiagnostic } from '../../utils/lspClient.types';
|
|
11
|
-
import { IUseLspSessionResult, useLspSession } from '../smartEditor/useLspSession';
|
|
12
|
-
import {
|
|
13
|
-
IQonsoleAssistContext,
|
|
14
|
-
IQonsoleAssistResult,
|
|
15
|
-
TQonsoleAssistFeature,
|
|
16
|
-
} from './types';
|
|
17
|
-
|
|
18
|
-
export interface IUseQonsoleSessionOptions {
|
|
19
|
-
/** Optional initial `/use` context. */
|
|
20
|
-
useContext?: IQonsoleAssistContext;
|
|
21
|
-
/** Initial document text sent on `didOpen`. */
|
|
22
|
-
initialText?: string;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export interface IUseQonsoleSessionResult {
|
|
26
|
-
/** The generic LSP session — pass through to SmartEditor. */
|
|
27
|
-
session: IUseLspSessionResult;
|
|
28
|
-
/** Most recent `publishDiagnostics`. */
|
|
29
|
-
diagnostics: ILspDiagnostic[];
|
|
30
|
-
/**
|
|
31
|
-
* `qonsole/assist` (uri form). Returns the full snapshot for the
|
|
32
|
-
* current document at the given position. Pass `features: ['all']`
|
|
33
|
-
* for everything; the default is also `['all']`.
|
|
34
|
-
*/
|
|
35
|
-
assist: (
|
|
36
|
-
position: { line: number; character: number },
|
|
37
|
-
features?: TQonsoleAssistFeature[]
|
|
38
|
-
) => Promise<IQonsoleAssistResult | null>;
|
|
39
|
-
/**
|
|
40
|
-
* `qonsole/validate` — synchronous diagnostics summary.
|
|
41
|
-
*/
|
|
42
|
-
validate: () => Promise<{ valid: boolean; errors?: Array<{ message: string }> }>;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export function useQonsoleSession(
|
|
46
|
-
opts: IUseQonsoleSessionOptions
|
|
47
|
-
): IUseQonsoleSessionResult {
|
|
48
|
-
const { useContext: ctx, initialText = '' } = opts;
|
|
49
|
-
|
|
50
|
-
const session = useLspSession({
|
|
51
|
-
languageId: 'qonsole',
|
|
52
|
-
initialText,
|
|
53
|
-
// The server reads context from `textDocument.metadata.context` on
|
|
54
|
-
// didOpen (per qorus-frontend/QONSOLE_LSP_REFERENCE.md).
|
|
55
|
-
initialMetadata: ctx ? { context: ctx } : undefined,
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
// React to `useContext` changes — re-dispatch `qonsole/setContext`.
|
|
59
|
-
useEffect(() => {
|
|
60
|
-
if (!session.client || !session.isReady || !ctx) return;
|
|
61
|
-
session.client
|
|
62
|
-
.customRequest('qonsole/setContext', {
|
|
63
|
-
uri: session.uri,
|
|
64
|
-
context: ctx,
|
|
65
|
-
})
|
|
66
|
-
.catch((err) => {
|
|
67
|
-
// eslint-disable-next-line no-console
|
|
68
|
-
console.error('[Qonsole] setContext failed:', err);
|
|
69
|
-
});
|
|
70
|
-
}, [session.client, session.isReady, session.uri, ctx]);
|
|
71
|
-
|
|
72
|
-
const assist = useCallback(
|
|
73
|
-
async (
|
|
74
|
-
position: { line: number; character: number },
|
|
75
|
-
features: TQonsoleAssistFeature[] = ['all']
|
|
76
|
-
): Promise<IQonsoleAssistResult | null> => {
|
|
77
|
-
if (!session.client) return null;
|
|
78
|
-
try {
|
|
79
|
-
return await session.client.customRequest<IQonsoleAssistResult>(
|
|
80
|
-
'qonsole/assist',
|
|
81
|
-
{
|
|
82
|
-
uri: session.uri,
|
|
83
|
-
position,
|
|
84
|
-
features,
|
|
85
|
-
}
|
|
86
|
-
);
|
|
87
|
-
} catch {
|
|
88
|
-
return null;
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
[session.client, session.uri]
|
|
92
|
-
);
|
|
93
|
-
|
|
94
|
-
const validate = useCallback(async (): Promise<{
|
|
95
|
-
valid: boolean;
|
|
96
|
-
errors?: Array<{ message: string }>;
|
|
97
|
-
}> => {
|
|
98
|
-
if (!session.client) {
|
|
99
|
-
return { valid: false, errors: [{ message: 'No LSP connection' }] };
|
|
100
|
-
}
|
|
101
|
-
try {
|
|
102
|
-
const result = await session.client.customRequest<{
|
|
103
|
-
diagnostics?: ILspDiagnostic[];
|
|
104
|
-
}>('qonsole/validate', { uri: session.uri });
|
|
105
|
-
const diags = result?.diagnostics ?? [];
|
|
106
|
-
if (diags.length > 0) {
|
|
107
|
-
return {
|
|
108
|
-
valid: false,
|
|
109
|
-
errors: diags.map((d) => ({ message: d.message })),
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
return { valid: true };
|
|
113
|
-
} catch {
|
|
114
|
-
return { valid: false, errors: [{ message: 'Validation request failed' }] };
|
|
115
|
-
}
|
|
116
|
-
}, [session.client, session.uri]);
|
|
117
|
-
|
|
118
|
-
return {
|
|
119
|
-
session,
|
|
120
|
-
diagnostics: session.diagnostics,
|
|
121
|
-
assist,
|
|
122
|
-
validate,
|
|
123
|
-
};
|
|
124
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { StoryObj } from '@storybook/react-vite';
|
|
2
|
-
import { expect, fn, within } from 'storybook/test';
|
|
3
|
-
|
|
4
|
-
import { StoryMeta } from '../../types';
|
|
5
|
-
import { SearchFilterBar } from './SearchFilterBar';
|
|
6
|
-
|
|
7
|
-
/*
|
|
8
|
-
* The strip that sits above a list and narrows it: a search box plus the filter
|
|
9
|
-
* dropdowns that go with it.
|
|
10
|
-
*/
|
|
11
|
-
const meta = {
|
|
12
|
-
component: SearchFilterBar,
|
|
13
|
-
title: 'Components/Search Filter Bar',
|
|
14
|
-
args: {
|
|
15
|
-
onChange: fn(),
|
|
16
|
-
placeholder: 'Search tickets…',
|
|
17
|
-
filters: [
|
|
18
|
-
{
|
|
19
|
-
icon: 'Filter3Line' as const,
|
|
20
|
-
label: 'Any status',
|
|
21
|
-
items: [
|
|
22
|
-
{ label: 'Any status', selected: true, onClick: fn() },
|
|
23
|
-
{ label: 'Open', onClick: fn() },
|
|
24
|
-
{ label: 'Resolved', onClick: fn() },
|
|
25
|
-
],
|
|
26
|
-
},
|
|
27
|
-
],
|
|
28
|
-
},
|
|
29
|
-
} as StoryMeta<typeof SearchFilterBar>;
|
|
30
|
-
|
|
31
|
-
export default meta;
|
|
32
|
-
type Story = StoryObj<typeof meta>;
|
|
33
|
-
|
|
34
|
-
export const Idle: Story = {
|
|
35
|
-
args: { value: '' },
|
|
36
|
-
parameters: {
|
|
37
|
-
docs: {
|
|
38
|
-
description: {
|
|
39
|
-
story: 'Nothing typed — the bar is quiet, and the list below it is the whole list.',
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
play: async ({ canvasElement }) => {
|
|
44
|
-
expect(within(canvasElement).getByPlaceholderText('Search tickets…')).toBeVisible();
|
|
45
|
-
},
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
export const Filtering: Story = {
|
|
49
|
-
args: { value: 'deploy', intent: 'info' },
|
|
50
|
-
parameters: {
|
|
51
|
-
docs: {
|
|
52
|
-
description: {
|
|
53
|
-
story:
|
|
54
|
-
'A query is active, so the box carries `intent="info"`. Without it a filtered list and a genuinely short list look identical, and a reader who lands on three rows cannot tell which they are looking at.',
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
play: async ({ canvasElement }) => {
|
|
59
|
-
const input = within(canvasElement).getByPlaceholderText('Search tickets…');
|
|
60
|
-
expect(input).toHaveValue('deploy');
|
|
61
|
-
},
|
|
62
|
-
};
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
import { ReqoreControlGroup, ReqoreDropdown, ReqoreInput } from '@qoretechnologies/reqore';
|
|
2
|
-
import { TReqoreIntent } from '@qoretechnologies/reqore/dist/constants/theme';
|
|
3
|
-
import { IReqoreIconName } from '@qoretechnologies/reqore/dist/types/icons';
|
|
4
|
-
import styled, { css } from 'styled-components';
|
|
5
|
-
|
|
6
|
-
/*
|
|
7
|
-
* A search box with filter dropdowns beside it — the strip that sits above a list
|
|
8
|
-
* and narrows it.
|
|
9
|
-
*
|
|
10
|
-
* This existed twice, built independently either side of the package boundary: the
|
|
11
|
-
* ticket list in qorus-ide and the References tab here in reqraft. Same
|
|
12
|
-
* composition (ReqoreControlGroup > ReqoreInput + N ReqoreDropdowns), but they had
|
|
13
|
-
* drifted — one sized the group, the other sized each control; one wrapped, the
|
|
14
|
-
* other stacked; one moved the dropdown caret to the right slot and suppressed the
|
|
15
|
-
* default, the other did not. Two strips that should be indistinguishable ended up
|
|
16
|
-
* visibly different, and any fix had to be made twice.
|
|
17
|
-
*
|
|
18
|
-
* It lives in reqraft rather than Reqore because it is a composition of Reqore
|
|
19
|
-
* primitives, not a new primitive — there is nothing here Reqore is missing.
|
|
20
|
-
*
|
|
21
|
-
* The frosted container is part of the component, not the caller's job. Extracting
|
|
22
|
-
* only the controls left the two surfaces still looking different: one bar sat in a
|
|
23
|
-
* bordered, blurred card, the other bare on the page. If the bar is meant to read
|
|
24
|
-
* the same everywhere then its own chrome has to travel with it.
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
const Container = styled.div<{ $sticky?: boolean }>`
|
|
28
|
-
padding: 8px;
|
|
29
|
-
border-radius: 8px;
|
|
30
|
-
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
31
|
-
background: rgba(255, 255, 255, 0.04);
|
|
32
|
-
backdrop-filter: blur(6px);
|
|
33
|
-
|
|
34
|
-
${({ $sticky }) =>
|
|
35
|
-
$sticky &&
|
|
36
|
-
css`
|
|
37
|
-
position: sticky;
|
|
38
|
-
top: 0;
|
|
39
|
-
z-index: 2;
|
|
40
|
-
`}
|
|
41
|
-
`;
|
|
42
|
-
|
|
43
|
-
export interface ISearchFilterOption {
|
|
44
|
-
label: string;
|
|
45
|
-
icon?: IReqoreIconName;
|
|
46
|
-
selected?: boolean;
|
|
47
|
-
onClick: () => void;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export interface ISearchFilter {
|
|
51
|
-
/** Icon for the trigger — usually the selected option's. */
|
|
52
|
-
icon?: IReqoreIconName;
|
|
53
|
-
/** Trigger label — usually the selected option's. */
|
|
54
|
-
label: string;
|
|
55
|
-
items: ISearchFilterOption[];
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export interface ISearchFilterBarProps {
|
|
59
|
-
value: string;
|
|
60
|
-
onChange: (value: string) => void;
|
|
61
|
-
placeholder: string;
|
|
62
|
-
filters?: ISearchFilter[];
|
|
63
|
-
/**
|
|
64
|
-
* Stack the search over its filters. On a phone the box and two dropdowns
|
|
65
|
-
* cannot share a row without the input collapsing to a few characters, so the
|
|
66
|
-
* caller passes its own breakpoint result rather than this guessing.
|
|
67
|
-
*/
|
|
68
|
-
stacked?: boolean;
|
|
69
|
-
/**
|
|
70
|
-
* Pin the bar to the top of its scroll container. For a bar inside a scrolling
|
|
71
|
-
* panel (the References tab); a bar above a page-level list does not need it.
|
|
72
|
-
*/
|
|
73
|
-
sticky?: boolean;
|
|
74
|
-
/**
|
|
75
|
-
* Intent for the search box.
|
|
76
|
-
*
|
|
77
|
-
* A bar that is narrowing the list should look different from one that is
|
|
78
|
-
* not — otherwise a reader who arrives at a short list cannot tell whether it
|
|
79
|
-
* is short or filtered. Callers pass `'info'` while a query is active. Left
|
|
80
|
-
* to the caller rather than derived from `value`, because a caller may hold
|
|
81
|
-
* other filter state this component never sees.
|
|
82
|
-
*/
|
|
83
|
-
intent?: TReqoreIntent;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export const SearchFilterBar = ({
|
|
87
|
-
value,
|
|
88
|
-
onChange,
|
|
89
|
-
placeholder,
|
|
90
|
-
filters = [],
|
|
91
|
-
stacked,
|
|
92
|
-
sticky,
|
|
93
|
-
intent,
|
|
94
|
-
}: ISearchFilterBarProps) => (
|
|
95
|
-
<Container $sticky={sticky}>
|
|
96
|
-
{/* `size='small'` on the GROUP, not per control: the bar filters the content, it
|
|
97
|
-
is not content — at the default size the dropdowns read as primary actions and
|
|
98
|
-
crowd the search field. */}
|
|
99
|
-
<ReqoreControlGroup
|
|
100
|
-
fluid
|
|
101
|
-
wrap
|
|
102
|
-
gapSize='small'
|
|
103
|
-
size='small'
|
|
104
|
-
vertical={stacked}
|
|
105
|
-
verticalAlign={stacked ? undefined : 'center'}
|
|
106
|
-
>
|
|
107
|
-
<ReqoreInput
|
|
108
|
-
icon='Search2Line'
|
|
109
|
-
placeholder={placeholder}
|
|
110
|
-
value={value}
|
|
111
|
-
onChange={(event) => onChange((event.currentTarget as HTMLInputElement).value)}
|
|
112
|
-
onClearClick={value ? () => onChange('') : undefined}
|
|
113
|
-
intent={intent}
|
|
114
|
-
minimal
|
|
115
|
-
fluid
|
|
116
|
-
/>
|
|
117
|
-
{filters.length ?
|
|
118
|
-
<ReqoreControlGroup gapSize='small' size='small' fluid={stacked}>
|
|
119
|
-
{filters.map((filter, index) => (
|
|
120
|
-
<ReqoreDropdown
|
|
121
|
-
key={index}
|
|
122
|
-
icon={filter.icon}
|
|
123
|
-
label={filter.label}
|
|
124
|
-
minimal
|
|
125
|
-
flat
|
|
126
|
-
/* stretch to share the row when stacked; hug the label otherwise */
|
|
127
|
-
fixed={!stacked}
|
|
128
|
-
/* the caret defaults to the LEFT slot, where the filter's own icon
|
|
129
|
-
already sits — without this each trigger shows two glyphs */
|
|
130
|
-
rightIcon='ArrowDownSLine'
|
|
131
|
-
showCaret={false}
|
|
132
|
-
items={filter.items.map((item) => ({
|
|
133
|
-
label: item.label,
|
|
134
|
-
icon: item.icon,
|
|
135
|
-
selected: item.selected,
|
|
136
|
-
onClick: item.onClick,
|
|
137
|
-
}))}
|
|
138
|
-
/>
|
|
139
|
-
))}
|
|
140
|
-
</ReqoreControlGroup>
|
|
141
|
-
: null}
|
|
142
|
-
</ReqoreControlGroup>
|
|
143
|
-
</Container>
|
|
144
|
-
);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './SearchFilterBar';
|