@qoretechnologies/reqraft 0.10.66-pr.145.gcb1e59d → 0.10.66
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 +53 -1
- package/dist/components/Description/AllowedValuesHelp.d.ts +20 -0
- package/dist/components/Description/AllowedValuesHelp.d.ts.map +1 -0
- package/dist/components/Description/AllowedValuesHelp.js +86 -0
- package/dist/components/Description/AllowedValuesHelp.js.map +1 -0
- package/dist/components/Description/describedControl.d.ts +54 -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 +156 -10
- package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlCompletions.d.ts +39 -0
- package/dist/components/dpqlEditor/dpqlCompletions.d.ts.map +1 -0
- package/dist/components/dpqlEditor/dpqlCompletions.js +294 -0
- package/dist/components/dpqlEditor/dpqlCompletions.js.map +1 -0
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts +54 -5
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.js +420 -63
- package/dist/components/dpqlEditor/dpqlHelpers.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlInserter.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlInserter.js +67 -29
- package/dist/components/dpqlEditor/dpqlInserter.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.d.ts +17 -7
- package/dist/components/dpqlEditor/dpqlTags.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.js +44 -17
- package/dist/components/dpqlEditor/dpqlTags.js.map +1 -1
- package/dist/components/dpqlEditor/types.d.ts +94 -8
- package/dist/components/dpqlEditor/types.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.d.ts +7 -2
- package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.js +49 -17
- 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 +336 -243
- 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 +20 -57
- package/dist/components/form/engine/CompactToolbar.js.map +1 -1
- package/dist/components/form/engine/FormEngine.d.ts +67 -59
- package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
- package/dist/components/form/engine/FormEngine.js +606 -409
- 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 +2 -18
- package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
- package/dist/components/form/engine/OptionFieldMessages.js +28 -25
- package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
- package/dist/components/form/engine/OptionsHelpDialog.d.ts.map +1 -1
- package/dist/components/form/engine/OptionsHelpDialog.js +19 -2
- package/dist/components/form/engine/OptionsHelpDialog.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 +11 -31
- package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
- package/dist/components/form/engine/compactRowContext.d.ts +30 -6
- 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 +56 -31
- package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowStyles.js +121 -110
- 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/compactToolbarContext.d.ts +0 -3
- package/dist/components/form/engine/compactToolbarContext.d.ts.map +1 -1
- package/dist/components/form/engine/compactToolbarContext.js.map +1 -1
- package/dist/components/form/engine/inheritProps.d.ts +29 -0
- package/dist/components/form/engine/inheritProps.d.ts.map +1 -0
- package/dist/components/form/engine/inheritProps.js +43 -0
- package/dist/components/form/engine/inheritProps.js.map +1 -0
- package/dist/components/form/engine/operatorSummary.d.ts +26 -0
- package/dist/components/form/engine/operatorSummary.d.ts.map +1 -0
- package/dist/components/form/engine/operatorSummary.js +35 -0
- package/dist/components/form/engine/operatorSummary.js.map +1 -0
- package/dist/components/form/engine/readFirst.d.ts +26 -22
- package/dist/components/form/engine/readFirst.d.ts.map +1 -1
- package/dist/components/form/engine/readFirst.js +79 -115
- 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 +3 -9
- package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
- package/dist/components/form/engine/rowFocus.js +30 -19
- 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 +7 -6
- package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
- package/dist/components/form/expressions/ExpressionField.d.ts +67 -3
- package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
- package/dist/components/form/expressions/ExpressionField.js +536 -114
- package/dist/components/form/expressions/ExpressionField.js.map +1 -1
- package/dist/components/form/expressions/argumentPresence.d.ts +14 -0
- package/dist/components/form/expressions/argumentPresence.d.ts.map +1 -1
- package/dist/components/form/expressions/argumentPresence.js +16 -1
- package/dist/components/form/expressions/argumentPresence.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 +30 -11
- 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 +3 -1
- package/dist/components/form/expressions/builder/argumentWrapper.js.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts +9 -0
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js +30 -27
- 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 +7 -5
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js.map +1 -1
- package/dist/components/form/expressions/builder/index.d.ts +34 -2
- package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/index.js +170 -80
- 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/dpqlMockRecordPath.d.ts +11 -0
- package/dist/components/form/expressions/dpqlMockRecordPath.d.ts.map +1 -0
- package/dist/components/form/expressions/dpqlMockRecordPath.js +254 -0
- package/dist/components/form/expressions/dpqlMockRecordPath.js.map +1 -0
- 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/fieldPath.d.ts +24 -0
- package/dist/components/form/expressions/fieldPath.d.ts.map +1 -0
- package/dist/components/form/expressions/fieldPath.js +152 -0
- package/dist/components/form/expressions/fieldPath.js.map +1 -0
- package/dist/components/form/expressions/loneValue.d.ts +17 -0
- package/dist/components/form/expressions/loneValue.d.ts.map +1 -0
- package/dist/components/form/expressions/loneValue.js +33 -0
- package/dist/components/form/expressions/loneValue.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 +37 -25
- 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 +49 -0
- package/dist/components/form/expressions/textOfExpression.js.map +1 -0
- package/dist/components/form/expressions/types.d.ts +12 -0
- package/dist/components/form/expressions/types.d.ts.map +1 -1
- package/dist/components/form/expressions/types.js +6 -1
- package/dist/components/form/expressions/types.js.map +1 -1
- 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 +13 -9
- package/dist/components/form/expressions/useRenderExpression.js.map +1 -1
- package/dist/components/form/expressions/wildcardExpressions.d.ts +27 -0
- package/dist/components/form/expressions/wildcardExpressions.d.ts.map +1 -0
- package/dist/components/form/expressions/wildcardExpressions.js +101 -0
- package/dist/components/form/expressions/wildcardExpressions.js.map +1 -0
- package/dist/components/form/fields/Field.d.ts.map +1 -1
- package/dist/components/form/fields/Field.js +39 -18
- package/dist/components/form/fields/Field.js.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts +0 -7
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.js +46 -35
- package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
- package/dist/components/form/fields/allowed-values/choicePicture.d.ts +37 -0
- package/dist/components/form/fields/allowed-values/choicePicture.d.ts.map +1 -0
- package/dist/components/form/fields/allowed-values/choicePicture.js +64 -0
- package/dist/components/form/fields/allowed-values/choicePicture.js.map +1 -0
- 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 +30 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.js +123 -79
- 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 +616 -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 +1 -7
- package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
- package/dist/components/form/fields/long-string/LongString.js +30 -13
- 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 +10 -7
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
- package/dist/components/form/fields/number/Number.d.ts +7 -4
- package/dist/components/form/fields/number/Number.d.ts.map +1 -1
- package/dist/components/form/fields/number/Number.js +45 -18
- 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/radio-group/RadioGroup.d.ts.map +1 -1
- package/dist/components/form/fields/radio-group/RadioGroup.js +8 -13
- package/dist/components/form/fields/radio-group/RadioGroup.js.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts +20 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.js +426 -91
- 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 +80 -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 +10 -1
- package/dist/components/form/fields/select/Select.d.ts.map +1 -1
- package/dist/components/form/fields/select/Select.js +28 -14
- package/dist/components/form/fields/select/Select.js.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.d.ts +5 -0
- package/dist/components/form/fields/select/SelectCollection.d.ts.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.js +25 -12
- 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 +11 -5
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts.map +1 -1
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js +21 -5
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
- package/dist/components/form/fields/template/TemplateBrowser.d.ts +16 -0
- package/dist/components/form/fields/template/TemplateBrowser.d.ts.map +1 -0
- package/dist/components/form/fields/template/TemplateBrowser.js +89 -0
- package/dist/components/form/fields/template/TemplateBrowser.js.map +1 -0
- package/dist/components/form/fields/template/TemplateField.d.ts +105 -1
- package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateField.js +706 -168
- package/dist/components/form/fields/template/TemplateField.js.map +1 -1
- package/dist/components/form/fields/template/TemplatePicker.d.ts +54 -0
- package/dist/components/form/fields/template/TemplatePicker.d.ts.map +1 -0
- package/dist/components/form/fields/template/TemplatePicker.js +459 -0
- package/dist/components/form/fields/template/TemplatePicker.js.map +1 -0
- 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 +22 -16
- package/dist/components/form/fields/template/TemplateText.js.map +1 -1
- package/dist/components/form/fields/template/referenceNames.d.ts +63 -0
- package/dist/components/form/fields/template/referenceNames.d.ts.map +1 -0
- package/dist/components/form/fields/template/referenceNames.js +69 -0
- package/dist/components/form/fields/template/referenceNames.js.map +1 -0
- package/dist/components/form/fields/template/writtenAsText.d.ts +61 -0
- package/dist/components/form/fields/template/writtenAsText.d.ts.map +1 -0
- package/dist/components/form/fields/template/writtenAsText.js +204 -0
- package/dist/components/form/fields/template/writtenAsText.js.map +1 -0
- package/dist/components/form/index.d.ts +12 -2
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +25 -3
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/form/typeSentenceForm.d.ts +17 -0
- package/dist/components/form/typeSentenceForm.d.ts.map +1 -0
- package/dist/components/form/typeSentenceForm.js +54 -0
- package/dist/components/form/typeSentenceForm.js.map +1 -0
- package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.js +19 -9
- 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 +20 -8
- 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 +53 -0
- package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
- package/dist/components/smartEditor/CompletionMenu.js +302 -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 +3 -3
- 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 +616 -190
- package/dist/components/smartEditor/SmartEditor.js.map +1 -1
- package/dist/components/smartEditor/completionStyle.d.ts +28 -0
- package/dist/components/smartEditor/completionStyle.d.ts.map +1 -0
- package/dist/components/smartEditor/completionStyle.js +79 -0
- package/dist/components/smartEditor/completionStyle.js.map +1 -0
- package/dist/components/smartEditor/contextTitle.d.ts +10 -0
- package/dist/components/smartEditor/contextTitle.d.ts.map +1 -0
- package/dist/components/smartEditor/contextTitle.js +21 -0
- package/dist/components/smartEditor/contextTitle.js.map +1 -0
- package/dist/components/smartEditor/editingAids.d.ts +64 -0
- package/dist/components/smartEditor/editingAids.d.ts.map +1 -0
- package/dist/components/smartEditor/editingAids.js +213 -0
- package/dist/components/smartEditor/editingAids.js.map +1 -0
- package/dist/components/smartEditor/index.d.ts +6 -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 +98 -0
- package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
- package/dist/components/smartEditor/templateCompletions.js +380 -0
- package/dist/components/smartEditor/templateCompletions.js.map +1 -0
- package/dist/components/smartEditor/typedReferences.d.ts +34 -0
- package/dist/components/smartEditor/typedReferences.d.ts.map +1 -0
- package/dist/components/smartEditor/typedReferences.js +179 -0
- package/dist/components/smartEditor/typedReferences.js.map +1 -0
- package/dist/components/smartEditor/types.d.ts +116 -2
- package/dist/components/smartEditor/types.d.ts.map +1 -1
- package/dist/components/smartEditor/useEditingAids.d.ts +38 -0
- package/dist/components/smartEditor/useEditingAids.d.ts.map +1 -0
- package/dist/components/smartEditor/useEditingAids.js +392 -0
- package/dist/components/smartEditor/useEditingAids.js.map +1 -0
- package/dist/components/smartEditor/useLspAutocomplete.d.ts +106 -3
- package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.js +592 -149
- package/dist/components/smartEditor/useLspAutocomplete.js.map +1 -1
- package/dist/components/smartEditor/useLspHover.d.ts +33 -7
- package/dist/components/smartEditor/useLspHover.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspHover.js +364 -35
- 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/smartEditor/useLspSignatureHelp.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspSignatureHelp.js +6 -11
- package/dist/components/smartEditor/useLspSignatureHelp.js.map +1 -1
- package/dist/components/smartEditor/useTabCameIn.d.ts +10 -0
- package/dist/components/smartEditor/useTabCameIn.d.ts.map +1 -0
- package/dist/components/smartEditor/useTabCameIn.js +42 -0
- package/dist/components/smartEditor/useTabCameIn.js.map +1 -0
- 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/InterfaceReferenceTags.d.ts +2 -3
- package/dist/components/supportTicket/InterfaceReferenceTags.d.ts.map +1 -1
- package/dist/components/supportTicket/InterfaceReferenceTags.js.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.d.ts +9 -3
- package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.js +38 -23
- 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 +21 -6
- package/dist/components/supportTicket/TicketHeader.js.map +1 -1
- package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
- package/dist/components/supportTicket/TicketReplyBox.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketReplyBox.js +10 -29
- package/dist/components/supportTicket/TicketReplyBox.js.map +1 -1
- package/dist/components/supportTicket/useLoadedImages.d.ts +0 -10
- package/dist/components/supportTicket/useLoadedImages.d.ts.map +1 -1
- package/dist/components/supportTicket/useLoadedImages.js +1 -63
- package/dist/components/supportTicket/useLoadedImages.js.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.js +10 -9
- 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 +52 -21
- package/dist/components/ticketThread/TicketThread.js.map +1 -1
- package/dist/helpers/allowedValues.d.ts +21 -12
- package/dist/helpers/allowedValues.d.ts.map +1 -1
- package/dist/helpers/allowedValues.js +40 -20
- package/dist/helpers/allowedValues.js.map +1 -1
- package/dist/helpers/descriptionTooltip.d.ts +46 -0
- package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
- package/dist/helpers/descriptionTooltip.js +76 -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 +115 -4
- package/dist/helpers/expressions.d.ts.map +1 -1
- package/dist/helpers/expressions.js +247 -29
- 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/noDescription.d.ts +9 -0
- package/dist/helpers/noDescription.d.ts.map +1 -0
- package/dist/helpers/noDescription.js +13 -0
- package/dist/helpers/noDescription.js.map +1 -0
- package/dist/helpers/optionUiTypes.d.ts +2 -2
- package/dist/helpers/qorusTypeCatalogue.d.ts +147 -0
- package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
- package/dist/helpers/qorusTypeCatalogue.js +505 -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/recordFieldReference.d.ts +15 -0
- package/dist/helpers/recordFieldReference.d.ts.map +1 -0
- package/dist/helpers/recordFieldReference.js +89 -0
- package/dist/helpers/recordFieldReference.js.map +1 -0
- package/dist/helpers/singleLineString.d.ts.map +1 -1
- package/dist/helpers/singleLineString.js +0 -1
- package/dist/helpers/singleLineString.js.map +1 -1
- package/dist/helpers/templateCatalogue.d.ts +104 -0
- package/dist/helpers/templateCatalogue.d.ts.map +1 -0
- package/dist/helpers/templateCatalogue.js +116 -0
- package/dist/helpers/templateCatalogue.js.map +1 -0
- package/dist/helpers/templateCatalogueContext.d.ts +19 -0
- package/dist/helpers/templateCatalogueContext.d.ts.map +1 -0
- package/dist/helpers/templateCatalogueContext.js +31 -0
- package/dist/helpers/templateCatalogueContext.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/templateText.d.ts +1 -0
- package/dist/helpers/templateText.d.ts.map +1 -1
- package/dist/helpers/templateText.js +7 -3
- package/dist/helpers/templateText.js.map +1 -1
- package/dist/helpers/templateTree.d.ts +248 -0
- package/dist/helpers/templateTree.d.ts.map +1 -0
- package/dist/helpers/templateTree.js +892 -0
- package/dist/helpers/templateTree.js.map +1 -0
- package/dist/helpers/templateType.d.ts +28 -0
- package/dist/helpers/templateType.d.ts.map +1 -0
- package/dist/helpers/templateType.js +30 -0
- package/dist/helpers/templateType.js.map +1 -0
- package/dist/helpers/templates.d.ts +86 -16
- package/dist/helpers/templates.d.ts.map +1 -1
- package/dist/helpers/templates.js +305 -45
- package/dist/helpers/templates.js.map +1 -1
- package/dist/helpers/validations.d.ts +27 -0
- package/dist/helpers/validations.d.ts.map +1 -1
- package/dist/helpers/validations.js +169 -39
- package/dist/helpers/validations.js.map +1 -1
- package/dist/helpers/webLink.d.ts +8 -0
- package/dist/helpers/webLink.d.ts.map +1 -0
- package/dist/helpers/webLink.js +29 -0
- package/dist/helpers/webLink.js.map +1 -0
- package/dist/hooks/useQorusTypes.d.ts +12 -17
- package/dist/hooks/useQorusTypes.d.ts.map +1 -1
- package/dist/hooks/useQorusTypes.js +44 -172
- 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 +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -1
- 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/dist/utils/fetch.d.ts +9 -2
- package/dist/utils/fetch.d.ts.map +1 -1
- package/dist/utils/fetch.js +6 -5
- package/dist/utils/fetch.js.map +1 -1
- package/dist/utils/lspClient.types.d.ts +2 -0
- package/dist/utils/lspClient.types.d.ts.map +1 -1
- package/dist/utils/websocket.d.ts +65 -2
- package/dist/utils/websocket.d.ts.map +1 -1
- package/dist/utils/websocket.js +276 -44
- package/dist/utils/websocket.js.map +1 -1
- package/package.json +14 -6
- 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/dist/components/form/engine/formAppearance.d.ts +0 -49
- package/dist/components/form/engine/formAppearance.d.ts.map +0 -1
- package/dist/components/form/engine/formAppearance.js +0 -50
- package/dist/components/form/engine/formAppearance.js.map +0 -1
- package/dist/components/form/fields/ChoiceGroupHeading.d.ts +0 -21
- package/dist/components/form/fields/ChoiceGroupHeading.d.ts.map +0 -1
- package/dist/components/form/fields/ChoiceGroupHeading.js +0 -33
- package/dist/components/form/fields/ChoiceGroupHeading.js.map +0 -1
- package/dist/components/form/fields/allowed-values/savedValues.d.ts +0 -30
- package/dist/components/form/fields/allowed-values/savedValues.d.ts.map +0 -1
- package/dist/components/form/fields/allowed-values/savedValues.js +0 -39
- package/dist/components/form/fields/allowed-values/savedValues.js.map +0 -1
- package/dist/helpers/fieldDescription.d.ts +0 -16
- package/dist/helpers/fieldDescription.d.ts.map +0 -1
- package/dist/helpers/fieldDescription.js +0 -40
- package/dist/helpers/fieldDescription.js.map +0 -1
- 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 -2740
- package/src/components/form/engine/CompactToolbar.tsx +0 -399
- package/src/components/form/engine/FormEngine.stories.tsx +0 -9934
- package/src/components/form/engine/FormEngine.tsx +0 -4891
- package/src/components/form/engine/FormEngineAppearance.stories.tsx +0 -609
- package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
- package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -335
- package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
- package/src/components/form/engine/OptionFieldMessages.tsx +0 -548
- 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 -755
- 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 -153
- package/src/components/form/engine/compactRowStyles.ts +0 -1087
- package/src/components/form/engine/compactToolbarContext.ts +0 -72
- package/src/components/form/engine/formAppearance.ts +0 -79
- 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 -1090
- 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 -112
- 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 -152
- 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/ChoiceGroupHeading.tsx +0 -38
- package/src/components/form/fields/Field.stories.tsx +0 -143
- package/src/components/form/fields/Field.tsx +0 -734
- package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -321
- package/src/components/form/fields/allowed-values/savedValues.ts +0 -64
- 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 -1183
- 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 -147
- package/src/components/form/fields/long-string/LongString.tsx +0 -141
- 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 -140
- package/src/components/form/fields/number/Number.stories.tsx +0 -159
- package/src/components/form/fields/number/Number.tsx +0 -175
- 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 -52
- 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 -1749
- 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 -49
- package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
- package/src/components/imageLightbox/ImageLightbox.tsx +0 -238
- 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 -130
- package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -580
- package/src/components/supportTicket/ReferencePicker.tsx +0 -573
- package/src/components/supportTicket/TicketConversation.stories.tsx +0 -120
- package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
- package/src/components/supportTicket/TicketHeader.tsx +0 -248
- 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 -357
- package/src/components/supportTicket/TicketReplyBox.tsx +0 -172
- 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 -93
- package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -341
- package/src/components/ticketReferences/TicketReferences.tsx +0 -914
- package/src/components/ticketReferences/index.ts +0 -2
- package/src/components/ticketThread/TicketThread.stories.tsx +0 -898
- package/src/components/ticketThread/TicketThread.tsx +0 -706
- 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 -268
- 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/fieldDescription.ts +0 -39
- 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 -62
- 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,383 +0,0 @@
|
|
|
1
|
-
# SmartEditor / DpqlEditor / QonsoleSmartInput — UX polish
|
|
2
|
-
|
|
3
|
-
Active task list for the UX work specified in
|
|
4
|
-
[`design/SMART_EDITOR_UX.md`](../design/SMART_EDITOR_UX.md). Mirror
|
|
5
|
-
of the qorus-ide `.tasks/*.md` convention: one task file per body of
|
|
6
|
-
work, check off items as they land.
|
|
7
|
-
|
|
8
|
-
**Status:** Phase 1 committed `6fb9bf3` · Phases 2–7 + 6 committed `a9b7f1b` and **verified in browser 2026-05-26** · Phase 8 deferred to end of full batch
|
|
9
|
-
**Design doc:** [`design/SMART_EDITOR_UX.md`](../design/SMART_EDITOR_UX.md)
|
|
10
|
-
|
|
11
|
-
**Workflow rule:** code changes land as **uncommitted** changes for
|
|
12
|
-
user verification first. No commits until the user has confirmed the
|
|
13
|
-
change behaves correctly in their own browser. See `.claude/CLAUDE.md`
|
|
14
|
-
§ "Task & design docs workflow" for the full convention.
|
|
15
|
-
|
|
16
|
-
## Status
|
|
17
|
-
|
|
18
|
-
- **Phase 0 — design** done (locked 2026-05-25, revised 2026-05-26 for item 7)
|
|
19
|
-
- **Phase 1** done — typing-trigger fix + Replace-mode chip click (committed)
|
|
20
|
-
- **Phase 2** done pending user-verify — visual polish
|
|
21
|
-
- **Phase 3** done pending user-verify — diagnostics surface
|
|
22
|
-
- **Phase 4** done pending user-verify — loading state
|
|
23
|
-
- **Phase 5** done pending user-verify — hover info
|
|
24
|
-
- **Phase 7** done pending user-verify — LSP semantic tokens (replaces broken regex)
|
|
25
|
-
- **Phase 6** done pending user-verify — server parse opt-in
|
|
26
|
-
- **Phase 8** ready to start (release prep)
|
|
27
|
-
|
|
28
|
-
## Phase 0 — design acceptance (DONE)
|
|
29
|
-
|
|
30
|
-
- [x] User read `design/SMART_EDITOR_UX.md` end-to-end
|
|
31
|
-
- [x] User confirmed no additional DpqlEditor concerns at this point — anything found during execution lands as new task items
|
|
32
|
-
- [x] Theme direction — Reqore-native, borrow from qorus-ide conventions
|
|
33
|
-
- [x] Decorate composition — merge in the wrapper (DpqlEditor combines)
|
|
34
|
-
- [x] Hover positioning — token center
|
|
35
|
-
- [x] Loading state — overlay spinner
|
|
36
|
-
- [x] Version — single `0.10.0-beta` at end of batch
|
|
37
|
-
- [x] Design doc locked — no further changes without explicit revision
|
|
38
|
-
|
|
39
|
-
## Phase 1 — Trigger-on-typing-only fix (DONE)
|
|
40
|
-
|
|
41
|
-
Reference: design doc §1. Surface area:
|
|
42
|
-
`src/components/smartEditor/useLspAutocomplete.ts`,
|
|
43
|
-
`src/components/smartEditor/SmartEditor.tsx`,
|
|
44
|
-
`src/components/dpqlEditor/dpqlInserter.ts`,
|
|
45
|
-
`src/components/dpqlEditor/DpqlEditor.tsx`.
|
|
46
|
-
|
|
47
|
-
Ended up substantially larger than the original ~10-line estimate
|
|
48
|
-
because the user reported chip-click bugs that required Replace mode,
|
|
49
|
-
plus a stale-closure bug in Reqore's `renderElement`.
|
|
50
|
-
|
|
51
|
-
- [x] Trigger-on-content-change (not selection-only) via
|
|
52
|
-
`editor.operations.some(op !== 'set_selection')`
|
|
53
|
-
- [x] `slateValueRef` cache in SmartEditor — avoid round-trip
|
|
54
|
-
re-tokenisation while user types `@s`
|
|
55
|
-
- [x] Replace mode for chip clicks — chip stays visible, popover
|
|
56
|
-
anchors at chip rect, atomic node swap on accept
|
|
57
|
-
- [x] `openAtChip` + `pendingChipRequestRef` + deferred-request effect
|
|
58
|
-
- [x] `popoverKey` bump per `openAtChip` to force `ReqorePopover`
|
|
59
|
-
remount (sync with internal open state)
|
|
60
|
-
- [x] `handleExternalClose` filter — suppress popover-close events
|
|
61
|
-
within 300ms of `openAtChip` (mousedown-vs-click race)
|
|
62
|
-
- [x] Same-chip click toggles closed
|
|
63
|
-
- [x] "Connecting…" / "No alternatives available" stub in Replace mode
|
|
64
|
-
- [x] Stable `onTagClick` via ref (Reqore `renderElement` memoizes over
|
|
65
|
-
deps that omit `onTagClick`)
|
|
66
|
-
- [x] Removed space from `DPQL_TRIGGERS` (no more dropdown after `@chip<space>`)
|
|
67
|
-
- [x] Reqore node_modules patch — `Textarea.handleBlur` null-check on
|
|
68
|
-
`relatedTarget.closest` (also filed as Reqore PR follow-up)
|
|
69
|
-
- [x] Reqore PR follow-up filed — `renderElement` deps fix
|
|
70
|
-
- [x] Run `yarn build:test:prod && yarn lint && yarn test` (252 pass)
|
|
71
|
-
- [x] Run `yarn test-storybook --url http://localhost:6008` (148 pass)
|
|
72
|
-
- [x] **User verified in browser**
|
|
73
|
-
- [ ] Commit
|
|
74
|
-
|
|
75
|
-
## Phase 2 — Dropdown visual polish (DONE pending user verify)
|
|
76
|
-
|
|
77
|
-
Reference: design doc §2. Surface area:
|
|
78
|
-
`useLspAutocomplete.ts` (kindLabel + documentation mapping),
|
|
79
|
-
`SmartEditor.tsx` (badge + tooltip render + monospace),
|
|
80
|
-
`SmartEditor.stories.tsx` (new stories),
|
|
81
|
-
`DpqlEditor.stories.tsx` (enriched mock).
|
|
82
|
-
|
|
83
|
-
### 2a. Caret positioning
|
|
84
|
-
|
|
85
|
-
- [x] Popover anchored at caret via `ReactEditor.toDOMRange` + viewport
|
|
86
|
-
`position: fixed` (landed in Phase 1)
|
|
87
|
-
- [x] Verified across single-line, multi-line, and chip-relative anchoring
|
|
88
|
-
|
|
89
|
-
### 2b. Markdown rendering of documentation
|
|
90
|
-
|
|
91
|
-
- [x] `react-markdown` imported (already a Reqraft direct dep — confirmed
|
|
92
|
-
in package.json: `^9.0.1`)
|
|
93
|
-
- [x] `documentation` surfaced on `ICompletionDropdownItem`; `SmartEditor`
|
|
94
|
-
renders it via `buildDocTooltip`, branching on `kind: 'markdown'` vs
|
|
95
|
-
`kind: 'plaintext'` vs string
|
|
96
|
-
- [x] Tooltip max-width 360px, max-height 240px, scrollable
|
|
97
|
-
- [x] Tooltip placed right of the row (so it doesn't obscure the list)
|
|
98
|
-
- [x] New story: `WithMarkdownDocs` on SmartEditor
|
|
99
|
-
|
|
100
|
-
### 2c. Visual treatment (Reqore-native, per locked decision)
|
|
101
|
-
|
|
102
|
-
- [x] Monospace label per row (matches editor body, makes `@field` /
|
|
103
|
-
`--flag` token shapes line up)
|
|
104
|
-
- [x] Right-aligned kind chip via Reqore's `badge` (small + minimal)
|
|
105
|
-
- [x] Tightened row heights via `compact`
|
|
106
|
-
- [x] Focused row highlight via `ReqoreMenuItem.selected` (theme-aware)
|
|
107
|
-
- [ ] Light + dark theme verification (deferred to in-browser visual
|
|
108
|
-
verification — no automated test)
|
|
109
|
-
|
|
110
|
-
### 2d. Grouping + filtering
|
|
111
|
-
|
|
112
|
-
- [x] `item.filterText` honored — `filteredItems` matches against
|
|
113
|
-
`item.raw.filterText ?? item.label` (already in Phase 1)
|
|
114
|
-
- [x] `ReqoreMenuDivider` between groups when `groupMap.size > 1`
|
|
115
|
-
- [x] New story: `WithGroupedKinds` (3 kinds → 3 sections with dividers)
|
|
116
|
-
|
|
117
|
-
- [x] Run typecheck, lint, jest (252 pass)
|
|
118
|
-
- [x] Run storybook play tests (149 pass — 2 added)
|
|
119
|
-
- [ ] **STOP — user verifies in browser before commit**
|
|
120
|
-
- [ ] Commit (per user preference — may accumulate into a single
|
|
121
|
-
end-of-batch commit instead)
|
|
122
|
-
|
|
123
|
-
## Phase 3 — Diagnostics surface (DONE pending user verify)
|
|
124
|
-
|
|
125
|
-
Surface area landed: new `useLspDiagnosticDecorations.ts`,
|
|
126
|
-
`SmartEditor.tsx` (compose decorate + renderLeaf wrap + panel),
|
|
127
|
-
new `__tests__/smartEditor/diagnosticDecorations.test.ts`,
|
|
128
|
-
new `WithDiagnostics` story on QonsoleSmartInput.
|
|
129
|
-
|
|
130
|
-
### 3a. Decorate-function hook
|
|
131
|
-
|
|
132
|
-
- [x] `src/components/smartEditor/useLspDiagnosticDecorations.ts`
|
|
133
|
-
- [x] Returns `(entry: NodeEntry) => Range[]`, intersects each
|
|
134
|
-
diagnostic with the leaf's plain-text span via the converter
|
|
135
|
-
- [x] Emits `{ error, errorMessage, severity }` marks on the range
|
|
136
|
-
- [x] 11 unit tests covering empty diags, non-text nodes, single span,
|
|
137
|
-
clamping, multiple overlapping, cross-line skip, severity default
|
|
138
|
-
|
|
139
|
-
### 3b. Inline render
|
|
140
|
-
|
|
141
|
-
- [x] `SmartEditor.tsx` exposes `renderLeafWithDiagnostics` that wraps
|
|
142
|
-
the caller's `customRenderLeaf` and draws a wavy underline +
|
|
143
|
-
`title` tooltip when `leaf.error`
|
|
144
|
-
- [x] Severity drives colour: 1 red, 2 amber, 3+ blue
|
|
145
|
-
|
|
146
|
-
### 3c. Error message panel
|
|
147
|
-
|
|
148
|
-
- [x] Below the editor: `ReqoreControlGroup vertical` of
|
|
149
|
-
`ReqoreMessage`s, one per diagnostic
|
|
150
|
-
- [x] Intent from `severityToIntent` (1 danger, 2 warning, 3+ info)
|
|
151
|
-
- [x] Icon: ErrorWarningLine / AlertLine / InformationLine
|
|
152
|
-
|
|
153
|
-
### 3d. DpqlEditor composes both decorators
|
|
154
|
-
|
|
155
|
-
- [x] SmartEditor's `composedDecorate` combines the caller's `decorate`
|
|
156
|
-
(e.g. DPQL syntax-highlighting) with the diagnostic decorate from
|
|
157
|
-
`useLspDiagnosticDecorations` — no DpqlEditor changes needed; the
|
|
158
|
-
composition lives in SmartEditor.
|
|
159
|
-
|
|
160
|
-
### 3e. Story
|
|
161
|
-
|
|
162
|
-
- [x] `WithDiagnostics` on QonsoleSmartInput — mock pushes
|
|
163
|
-
`textDocument/publishDiagnostics` after didOpen with one Error
|
|
164
|
-
+ one Warning span
|
|
165
|
-
|
|
166
|
-
- [x] Typecheck, lint, jest (267), storybook play (151) all pass
|
|
167
|
-
- [ ] **STOP — user verifies in browser before commit**
|
|
168
|
-
|
|
169
|
-
## Phase 4 — Loading state (DONE pending user verify)
|
|
170
|
-
|
|
171
|
-
- [x] `ReqoreSpinner` overlay with "Connecting to language server…"
|
|
172
|
-
while `!session.isReady` — absolutely positioned over the
|
|
173
|
-
editor body, semi-transparent backdrop, pointer-events: none
|
|
174
|
-
- [x] `loadingIndicator?: React.ReactNode` prop — pass `null` to
|
|
175
|
-
suppress, pass any node to override
|
|
176
|
-
- [x] Editor stays mounted underneath so the initial value is visible
|
|
177
|
-
|
|
178
|
-
(Existing play tests pre-date this overlay and still pass — they
|
|
179
|
-
sleep ≥200ms before typing which is enough for the mock LSP's
|
|
180
|
-
`initialize` to complete and `isReady` to flip true. If we add play
|
|
181
|
-
tests later that need the spinner to be gone, a `waitForElementToBeRemoved`
|
|
182
|
-
pattern would work.)
|
|
183
|
-
|
|
184
|
-
## Phase 5 — Hover info (DONE pending user verify)
|
|
185
|
-
|
|
186
|
-
- [x] `src/components/smartEditor/useLspHover.ts` — new hook
|
|
187
|
-
- [x] mousemove listener attached via `ReactEditor.toDOMNode(editor, editor)`
|
|
188
|
-
- [x] Debounce 300ms (configurable via `debounceMs` option)
|
|
189
|
-
- [x] On idle: `caretRangeFromPoint` → Slate `Point` → plain-text
|
|
190
|
-
offset (`selectionToOffset`) → LSP position
|
|
191
|
-
(`offsetToLspPosition`) → `client.getHover(line, character)`
|
|
192
|
-
- [x] State: `{ hoverContent, hoverPosition, clearHover }`
|
|
193
|
-
- [x] Stale-response guard via `requestIdRef` — a slow in-flight
|
|
194
|
-
request can't overwrite a newer one
|
|
195
|
-
- [x] Pure-math `slatePointToLspPosition` extracted + unit tested
|
|
196
|
-
(4 tests covering offset 0, mid-line, multi-paragraph, end-of-leaf)
|
|
197
|
-
- [x] Rendered as a `ReqorePopover` (placement `top`, markdown via
|
|
198
|
-
`react-markdown`, plaintext fallback)
|
|
199
|
-
- [x] `enableHover?: boolean` prop on SmartEditor, default `true`
|
|
200
|
-
- [x] Typecheck, lint, jest (267), storybook play (151) all pass
|
|
201
|
-
- [ ] **STOP — user verifies in browser before commit**
|
|
202
|
-
|
|
203
|
-
(Token-center positioning per design doc §5 deferred — currently
|
|
204
|
-
anchors at the mouse cursor coordinates. Iterate if user wants the
|
|
205
|
-
exact VS-Code-style center-of-token anchoring.)
|
|
206
|
-
|
|
207
|
-
## Phase 6 — `dpql/toRichtext` opt-in (DONE pending user verify)
|
|
208
|
-
|
|
209
|
-
Reference: design doc §6. Surface area: `DpqlEditor.tsx` (state +
|
|
210
|
-
effect + custom converter), `dpqlHelpers.ts` (response decoder),
|
|
211
|
-
`types.ts` (new prop), `SmartEditor.tsx` (new `isLoading` prop +
|
|
212
|
-
overlay condition), `DpqlEditor.stories.tsx` (mock + new story).
|
|
213
|
-
|
|
214
|
-
- [x] `useServerParse?: boolean` prop on `DpqlEditor` (default `false`)
|
|
215
|
-
- [x] Effect: on mount + external `value` changes + session-ready,
|
|
216
|
-
call `client.customRequest('dpql/toRichtext', { text: value })`
|
|
217
|
-
- [x] `richtextResponseToSlate()` helper in `dpqlHelpers.ts` decodes
|
|
218
|
-
the server's `{type: "richtext", value: [...]}` response into
|
|
219
|
-
`ISlateElement[]`; returns `null` for unknown shapes (caller
|
|
220
|
-
falls back)
|
|
221
|
-
- [x] Custom converter in `DpqlEditor.tsx` overrides `toSlateNodes`
|
|
222
|
-
to return cached server-parsed nodes when text matches; falls
|
|
223
|
-
through to client `plainTextToSlate` otherwise
|
|
224
|
-
- [x] `SmartEditor.isLoading` prop — overlay shows while either
|
|
225
|
-
`!session.isReady` OR `isLoading` is true; wrapper passes
|
|
226
|
-
`isLoading={isParsing}`
|
|
227
|
-
- [x] Stale-response guard via `parseRequestIdRef` — slow responses
|
|
228
|
-
can't overwrite newer state
|
|
229
|
-
- [x] On error / unrecognised shape → silently falls back to
|
|
230
|
-
client-side regex parser
|
|
231
|
-
- [x] Mock `dpql/toRichtext` handler in DpqlEditor stories
|
|
232
|
-
(matches `$prefix:value` templates as tags, mirrors the real
|
|
233
|
-
server's regex)
|
|
234
|
-
- [x] New story `WithServerParse` (`$static:input == "Alice" && $config:min_age > 18`)
|
|
235
|
-
- [x] Typecheck (clean), lint (clean), jest (263 pass), storybook
|
|
236
|
-
play tests (152 of 153 pass; remaining failure is the
|
|
237
|
-
pre-existing FormEngine flake)
|
|
238
|
-
- [ ] **STOP — user verifies in browser before commit**
|
|
239
|
-
|
|
240
|
-
## Phase 7 — LSP semantic tokens replace the broken regex highlighting (DONE pending user verify)
|
|
241
|
-
|
|
242
|
-
Reference: design doc §7 (revised 2026-05-26). Surface area: new
|
|
243
|
-
hook + decoder, edits to `LspClient`, `useLspSession`, `SmartEditor`,
|
|
244
|
-
removal of `useDpqlSyntaxHighlighting.ts`, fixed DPQL story values.
|
|
245
|
-
|
|
246
|
-
### 7a. Surface the semantic-tokens legend
|
|
247
|
-
|
|
248
|
-
- [x] `src/utils/lspClient.types.ts` — `ILspSemanticTokensLegend` +
|
|
249
|
-
`ILspSemanticToken` types
|
|
250
|
-
- [x] `src/utils/lspClient.ts` — capture legend from initialize
|
|
251
|
-
response, expose as `semanticTokensLegend` public field
|
|
252
|
-
- [x] `useLspSession.ts` — surface in result
|
|
253
|
-
|
|
254
|
-
### 7b. The LSP int-array decoder
|
|
255
|
-
|
|
256
|
-
- [x] `decodeSemanticTokens(data, legend) → ILspSemanticToken[]` —
|
|
257
|
-
delta re-base, type-index lookup, modifier-bitmask unpack
|
|
258
|
-
- [x] 10 unit tests: null/empty, bad alignment, single token, live
|
|
259
|
-
spike sample, line-jump re-base, modifier bitmask, invalid
|
|
260
|
-
index skip, realistic DPQL expression
|
|
261
|
-
|
|
262
|
-
### 7c. `useLspSemanticTokens` hook
|
|
263
|
-
|
|
264
|
-
- [x] `src/components/smartEditor/useLspSemanticTokens.ts` — Slate
|
|
265
|
-
decorate function backed by debounced LSP request
|
|
266
|
-
- [x] Watches document changes, 250ms debounce
|
|
267
|
-
- [x] Stale-response guard via `requestIdRef`
|
|
268
|
-
- [x] Keeps last-known tokens on error (no highlighting flash)
|
|
269
|
-
- [x] Returns empty decorate while `!isReady || !legend`
|
|
270
|
-
|
|
271
|
-
### 7d. Compose into SmartEditor
|
|
272
|
-
|
|
273
|
-
- [x] `composedDecorate` now merges caller + semantic + diagnostic
|
|
274
|
-
- [x] Renamed `renderLeafWithDiagnostics` → `renderLeafWithMarks`;
|
|
275
|
-
handles `tokenType`-based colours + `tokenModifiers` (italic
|
|
276
|
-
for `declaration`, dimmed for `deprecated`) + diagnostic
|
|
277
|
-
wavy-underline
|
|
278
|
-
- [x] `SEMANTIC_TOKEN_COLORS` palette mapped to LSP-standard 16
|
|
279
|
-
types (keyword purple, operator cyan, string green, number
|
|
280
|
-
orange, variable/parameter/property red-pink, function/class
|
|
281
|
-
yellow, regexp cyan, comment grey, namespace/decorator/modifier
|
|
282
|
-
yellow/purple)
|
|
283
|
-
|
|
284
|
-
### 7e. Remove the broken DPQL regex highlighter
|
|
285
|
-
|
|
286
|
-
- [x] Deleted `src/components/dpqlEditor/useDpqlSyntaxHighlighting.ts`
|
|
287
|
-
- [x] Deleted `__tests__/dpqlEditor/syntaxHighlighting.test.ts`
|
|
288
|
-
- [x] `DpqlEditor.tsx` — dropped `useDpqlSyntaxHighlighting` import,
|
|
289
|
-
`decorate` prop, `customRenderLeaf` (SmartEditor handles it)
|
|
290
|
-
- [x] `index.ts` — removed re-export
|
|
291
|
-
|
|
292
|
-
### 7f. Fix misleading DPQL story values
|
|
293
|
-
|
|
294
|
-
- [x] `WithPlainText` value `SELECT * FROM users WHERE name = "Alice"`
|
|
295
|
-
→ `1 == 1 && "hello" != "world"` (valid DPQL)
|
|
296
|
-
- [x] `WithMixedContent` `… AND …` → `… && …` (DPQL uses `&&`)
|
|
297
|
-
|
|
298
|
-
### 7g. Story + mock for semantic tokens
|
|
299
|
-
|
|
300
|
-
- [x] DpqlEditor mock: extended `initialize` response with
|
|
301
|
-
`semanticTokensProvider.legend` (standard LSP 16/6)
|
|
302
|
-
- [x] DpqlEditor mock: handles `textDocument/semanticTokens/full`
|
|
303
|
-
by tokenizing `lastDocumentText` (tracked from
|
|
304
|
-
didOpen/didChange) with a minimal DPQL-correct regex
|
|
305
|
-
- [x] New story `WithSemanticTokens` rendering a representative
|
|
306
|
-
DPQL expression touching every coloured token category
|
|
307
|
-
- [ ] Mirror to QonsoleSmartInput stories — deferred; works
|
|
308
|
-
automatically against the live `/lsp` endpoint, so adding a
|
|
309
|
-
mock-side story isn't blocking for `0.10.0`
|
|
310
|
-
|
|
311
|
-
### 7h. Documentation
|
|
312
|
-
|
|
313
|
-
- [x] Design doc revised (item 7 added, decorate-composition
|
|
314
|
-
decision revised)
|
|
315
|
-
- [x] Task file Phase 7 fleshed out
|
|
316
|
-
- [ ] `README.md` — to be updated in Phase 8 (release prep)
|
|
317
|
-
|
|
318
|
-
### 7i. Checks
|
|
319
|
-
|
|
320
|
-
- [x] Typecheck (clean), lint (clean), jest (263 pass), storybook
|
|
321
|
-
play tests (152 pass — +1 for `WithSemanticTokens`)
|
|
322
|
-
- [ ] **STOP — user verifies in browser before commit**
|
|
323
|
-
|
|
324
|
-
## Phase 8 — Release prep (deferred — runs after all follow-up tasks)
|
|
325
|
-
|
|
326
|
-
**Revised 2026-05-26.** Originally scoped to run immediately after
|
|
327
|
-
phase 7, but research after phase 7 surfaced four follow-up tasks
|
|
328
|
-
that should ship as part of the same `0.10.0` release (see
|
|
329
|
-
[`INDEX.md`](./INDEX.md) for the full list). Cutting `0.10.0-beta`
|
|
330
|
-
before those land would mean a release tag with no real consumer —
|
|
331
|
-
qorus-ide alert-rule integration needs `alertPayloadContext` /
|
|
332
|
-
`fsmContext` from `SMART_EDITOR_CONTEXT_AND_POLISH`.
|
|
333
|
-
|
|
334
|
-
So Phase 8 runs at the **end** of the full task sequence, after:
|
|
335
|
-
|
|
336
|
-
1. [`SMART_EDITOR_CONTEXT_AND_POLISH.md`](./SMART_EDITOR_CONTEXT_AND_POLISH.md)
|
|
337
|
-
2. [`SMART_EDITOR_LSP_FEATURES.md`](./SMART_EDITOR_LSP_FEATURES.md)
|
|
338
|
-
3. [`QONSOLE_ASSIST_FEATURES.md`](./QONSOLE_ASSIST_FEATURES.md)
|
|
339
|
-
4. [`SMART_EDITOR_VISUAL_POLISH.md`](./SMART_EDITOR_VISUAL_POLISH.md)
|
|
340
|
-
|
|
341
|
-
Phase 8 itself:
|
|
342
|
-
|
|
343
|
-
- [ ] Bump Reqraft `package.json` version to `0.10.0`
|
|
344
|
-
- [ ] Final `README.md` pass against the **complete** post-batch
|
|
345
|
-
API (covers all new props introduced across all five tasks).
|
|
346
|
-
Don't bother with a slimmer mid-batch README pass — wait for
|
|
347
|
-
this one
|
|
348
|
-
- [ ] Update `qorus-frontend/DPQL_EXTRACTION_PROGRESS.md` execution log
|
|
349
|
-
- [ ] Verify Reqore PRs (`Textarea.handleBlur`, `RichTextEditor.renderElement` deps)
|
|
350
|
-
have either shipped upstream OR a `patch-package` patch is
|
|
351
|
-
committed for the `node_modules` workaround
|
|
352
|
-
- [ ] Final test pass: jest + storybook + manual smoke
|
|
353
|
-
- [ ] **STOP — user does final review before push**
|
|
354
|
-
- [ ] Tag + push
|
|
355
|
-
|
|
356
|
-
## Follow-up tasks (part of `0.10.0`, not separate releases)
|
|
357
|
-
|
|
358
|
-
See [`INDEX.md`](./INDEX.md) for sequencing and status. Brief
|
|
359
|
-
summary:
|
|
360
|
-
|
|
361
|
-
- [`SMART_EDITOR_CONTEXT_AND_POLISH.md`](./SMART_EDITOR_CONTEXT_AND_POLISH.md)
|
|
362
|
-
— `isContextReady` race fix, debounced loader, FSM /
|
|
363
|
-
alert-payload context props (qorus-ide alert-rule blocker),
|
|
364
|
-
README catch-up
|
|
365
|
-
- [`SMART_EDITOR_LSP_FEATURES.md`](./SMART_EDITOR_LSP_FEATURES.md) —
|
|
366
|
-
unused LSP methods, primarily wiring `textDocument/signatureHelp`
|
|
367
|
-
- [`QONSOLE_ASSIST_FEATURES.md`](./QONSOLE_ASSIST_FEATURES.md) —
|
|
368
|
-
`commitCharacters`, `sortText`, `warning`, `data`, wizard launch
|
|
369
|
-
via `command: qonsole.startWizard`, mode-type fix
|
|
370
|
-
- [`SMART_EDITOR_VISUAL_POLISH.md`](./SMART_EDITOR_VISUAL_POLISH.md)
|
|
371
|
-
— Reqore styling-vocabulary alignment (lands last so it polishes
|
|
372
|
-
the final UI state)
|
|
373
|
-
|
|
374
|
-
## Notes
|
|
375
|
-
|
|
376
|
-
- Workflow change effective from this batch: code changes are left
|
|
377
|
-
uncommitted for user verification. The agent does not commit until
|
|
378
|
-
the user has confirmed the change in their own browser.
|
|
379
|
-
- Each phase produces one commit. The order is the order of impact
|
|
380
|
-
(items 1, 2, 3 first — the visible-quality wins).
|
|
381
|
-
- If any phase reveals a Reqore-side issue (e.g. the existing
|
|
382
|
-
`ReqoreTooltipComponent` ref warning), don't fix in Reqraft —
|
|
383
|
-
flag as a Reqore follow-up.
|
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
# SmartEditor visual polish — Reqore vocabulary alignment
|
|
2
|
-
|
|
3
|
-
Follow-up to the `0.10.0` UX batch (see
|
|
4
|
-
[`SMART_EDITOR_UX_POLISH.md`](./SMART_EDITOR_UX_POLISH.md)). The editor
|
|
5
|
-
stack ships visually minimal — bare `ReqoreMenu` chrome, no effects,
|
|
6
|
-
no `customTheme`, hand-rolled CSS overlays. The rest of the Qore IDE
|
|
7
|
-
uses a rich Reqore styling vocabulary (gradients, intents, frost,
|
|
8
|
-
glow, relative-darken sub-surfaces). This task brings the editor up to
|
|
9
|
-
parity.
|
|
10
|
-
|
|
11
|
-
**Status:** done — committed in `c006a79`. Reqore styling vocabulary applied across completion / hover / signature popovers, kind chips, diagnostic messages, dividers, focused-row, loading overlay. **Awaiting browser verification.**
|
|
12
|
-
**Scope:** styling-only — no behaviour or API changes.
|
|
13
|
-
**Estimated size:** ~150 lines, 1 day.
|
|
14
|
-
|
|
15
|
-
## Goal
|
|
16
|
-
|
|
17
|
-
The completion popover, kind chips, diagnostic messages, hover popover,
|
|
18
|
-
and loading overlay should be visually indistinguishable from a Qonsole
|
|
19
|
-
chat sub-surface or an FSM detail panel. A consumer dropping the editor
|
|
20
|
-
into the IDE should not need a single `<style>` block to make it
|
|
21
|
-
"feel right".
|
|
22
|
-
|
|
23
|
-
## Research findings
|
|
24
|
-
|
|
25
|
-
Catalogued by the research pass at
|
|
26
|
-
`design/SMART_EDITOR_UX.md` is not the right home for this — kept
|
|
27
|
-
inline below. Source files (qorus-ide, since Reqraft has no design
|
|
28
|
-
constants of its own yet):
|
|
29
|
-
|
|
30
|
-
### Reusable effect constants
|
|
31
|
-
|
|
32
|
-
In `qorus-frontend/qorus-ide/src/components/Field/multiPair.tsx`
|
|
33
|
-
(lines 20-124):
|
|
34
|
-
|
|
35
|
-
| Constant | Direction / colors |
|
|
36
|
-
|---|---|
|
|
37
|
-
| `FancyColorEffect` | plum `#12002f` lighten-2 → `#12002f` |
|
|
38
|
-
| `QorusColorEffect` | `#6e1977:lighten:3` → `#6e1977` |
|
|
39
|
-
| `SynthColorEffect` | `#13163a` → `#6e1977` (AI buttons) |
|
|
40
|
-
| `PositiveColorEffect` | `info` → `info:darken:3` |
|
|
41
|
-
| `WarningColorEffect` | `warning:lighten:2` → `warning:lighten:3` (animate: always) |
|
|
42
|
-
| `PendingColorEffect` | `pending:lighten:3` → `#160437` |
|
|
43
|
-
| `NegativeColorEffect` | `danger:lighten:3` → `danger:darken:3` |
|
|
44
|
-
| `SaveColorEffect` | `success:lighten:3` → `success:darken:3` |
|
|
45
|
-
| `SelectorColorEffect` | `main:lighten:3` → `main:darken:3` |
|
|
46
|
-
|
|
47
|
-
In `qorus-frontend/qorus-ide/src/constants/util.ts`:
|
|
48
|
-
|
|
49
|
-
```ts
|
|
50
|
-
DRAWER_OPACITY = 0.6;
|
|
51
|
-
DRAWER_CONTENT_EFFECT = { backgroundBlur: 20 } as const;
|
|
52
|
-
DRAWER_STYLE = { opacity: DRAWER_OPACITY, contentEffect: DRAWER_CONTENT_EFFECT };
|
|
53
|
-
QorusPurpleIntent = ReqoreIntents.CUSTOM1;
|
|
54
|
-
AttentionIntent = ReqoreIntents.CUSTOM2;
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Theme intents (from `defaultReqoreTheme`):
|
|
58
|
-
- `success: '#4a7110'`
|
|
59
|
-
- `custom1: '#762f7e'` (Qorus purple)
|
|
60
|
-
- `custom2: '#b34e1d'` (attention orange)
|
|
61
|
-
|
|
62
|
-
### `customTheme` palette in current use
|
|
63
|
-
|
|
64
|
-
| Use | Token |
|
|
65
|
-
|---|---|
|
|
66
|
-
| Page card | `'#0a0a0a'` |
|
|
67
|
-
| Metrics / history panels | `'#1a1a1a'` |
|
|
68
|
-
| Focused editing overlays | `'#111111'` |
|
|
69
|
-
| Header bars / tabs | `'#000000'` |
|
|
70
|
-
| Dashboard status | `'#181818'` |
|
|
71
|
-
| Sidebar | `'#262626'` |
|
|
72
|
-
| Qonsole panel main | `'#190819'` |
|
|
73
|
-
| Qonsole UI-component frames | `'#190e1955'` (note 55 alpha) |
|
|
74
|
-
| Qonsole tables | `'#351e3556'` |
|
|
75
|
-
| Qonsole input minimal | `'#1b1525'` |
|
|
76
|
-
| Qonsole assistant bubble | `'#9a749a'` |
|
|
77
|
-
| Sub-surface (nested form) | `'main:darken:1:0.5'`, `'main:darken:2'`, `` `main:darken:${level}` `` |
|
|
78
|
-
|
|
79
|
-
### Reqore Effect / theming API confirmed
|
|
80
|
-
|
|
81
|
-
`<ReqoreMenu>`, `<ReqoreMenuItem>`, and `<ReqorePopover>` all accept
|
|
82
|
-
`effect`, `customTheme`, `intent`. `ReqorePopover` also accepts
|
|
83
|
-
`blur: boolean`, `backgroundBlur: number`, `transparent: boolean`.
|
|
84
|
-
Color tokens support `<base>:<lighten|darken>:<1-30>:<alpha 0-1>`.
|
|
85
|
-
|
|
86
|
-
### Precedent for "intellisense" feel
|
|
87
|
-
|
|
88
|
-
`qorus-frontend/qorus-ide/src/components/Qonsole/QonsoleCompletionPopup.tsx`
|
|
89
|
-
is the existing precedent — a styled wrapper at `#1a1a1a` with a
|
|
90
|
-
hairline border + custom scrollbar. Our SmartEditor popover is a
|
|
91
|
-
candidate to subsume it (or at minimum match it).
|
|
92
|
-
|
|
93
|
-
## Design decisions
|
|
94
|
-
|
|
95
|
-
1. **Reqraft mirrors the qorus-ide constants — not imports them.**
|
|
96
|
-
Reqraft is meant to be standalone-usable. Cloning the constants
|
|
97
|
-
(with attribution comments) into `src/components/smartEditor/styling.ts`
|
|
98
|
-
keeps Reqraft a tier-1 library. Constants to mirror:
|
|
99
|
-
- `SMART_EDITOR_OVERLAY_EFFECT` (= `DRAWER_CONTENT_EFFECT` shape: `{ backgroundBlur: 20 }`)
|
|
100
|
-
- `SMART_EDITOR_OVERLAY_OPACITY` (= `0.6`)
|
|
101
|
-
- `SmartEditorIntents` map with `purple: 'custom1'`, `attention: 'custom2'` (caveat: only meaningful when the consuming app has registered those intents in its `ReqoreUIProvider` theme; we document this)
|
|
102
|
-
|
|
103
|
-
2. **Pick a tone family for the popover container.** The completion
|
|
104
|
-
popover is "code-editor adjacent" — match the page-card tone
|
|
105
|
-
(`#0a0a0a` / `#1a1a1a`) rather than the Qonsole purple. Reason: the
|
|
106
|
-
editor lives inside arbitrary host pages (Alert Rule, FSM, ad-hoc
|
|
107
|
-
forms) — purple would clash. Use `customTheme={{ main: '#1a1a1a' }}`.
|
|
108
|
-
|
|
109
|
-
3. **Use `backgroundBlur: 20`** on the popover and the hover popover
|
|
110
|
-
so they sit on the host page like a Reqore drawer would. Combined
|
|
111
|
-
with a `transparent` flag, it gives the frosted-glass feel.
|
|
112
|
-
|
|
113
|
-
4. **Kind chips** — keep `badge` shape but stop using `minimal: true`
|
|
114
|
-
alone. Replace with subtle per-kind `intent`:
|
|
115
|
-
- `keyword` → `intent: 'info'`
|
|
116
|
-
- `function` / `method` / `class` → `intent: 'success'`
|
|
117
|
-
- `variable` / `field` / `property` → no intent (default chip)
|
|
118
|
-
- `constant` / `value` → `intent: 'warning'`
|
|
119
|
-
- `wizard` (Qonsole-specific) → `intent: 'pending'` + icon
|
|
120
|
-
Per-kind intent reads better against the dark surface than uniform
|
|
121
|
-
muted badges.
|
|
122
|
-
|
|
123
|
-
5. **Diagnostic `ReqoreMessage`s** — always pair with `opaque={false}`
|
|
124
|
-
so they blend with the surface (matches every existing Qonsole
|
|
125
|
-
message). Apply a gradient effect:
|
|
126
|
-
- severity 1 (Error) → `NegativeColorEffect`
|
|
127
|
-
- severity 2 (Warning) → `WarningColorEffect`
|
|
128
|
-
- severity 3+ (Info) → `PendingColorEffect`
|
|
129
|
-
|
|
130
|
-
6. **Loading overlay** — drop the hand-rolled `<div>` with `rgba(0,0,0,0.06)`.
|
|
131
|
-
Replace with `<ReqorePanel transparent backgroundBlur={20} ...>`
|
|
132
|
-
wrapping `<ReqoreSpinner>`. Native Reqore composition.
|
|
133
|
-
|
|
134
|
-
7. **Focused row highlight** — use `intent='info'` on the focused
|
|
135
|
-
`ReqoreMenuItem` (instead of the default `selected={true}` purple)
|
|
136
|
-
for better contrast on the `#1a1a1a` surface.
|
|
137
|
-
|
|
138
|
-
8. **Hover popover** — same frost treatment as the completion popover.
|
|
139
|
-
Border-radius and shadow inherited from Reqore — no overrides.
|
|
140
|
-
|
|
141
|
-
9. **Group dividers** — `<ReqoreMenuDivider>` already accepts an
|
|
142
|
-
`intent` — set `intent='muted'` and reduce the label opacity so
|
|
143
|
-
sections separate visually but don't shout.
|
|
144
|
-
|
|
145
|
-
## Surface area
|
|
146
|
-
|
|
147
|
-
| File | Change |
|
|
148
|
-
|---|---|
|
|
149
|
-
| `src/components/smartEditor/styling.ts` | **new** — exports `SMART_EDITOR_OVERLAY_EFFECT`, `SMART_EDITOR_OVERLAY_OPACITY`, `SMART_EDITOR_POPOVER_CUSTOM_THEME`, kind-to-intent map, severity-to-effect map |
|
|
150
|
-
| `src/components/smartEditor/SmartEditor.tsx` | apply: popover `customTheme` + `backgroundBlur` + `transparent`; per-kind chip intent; diagnostic message `opaque={false}` + per-severity effect; loading overlay rewritten via Reqore primitives; focused row `intent='info'`; divider `intent='muted'` |
|
|
151
|
-
| `src/components/smartEditor/useLspAutocomplete.ts` | extend `ICompletionDropdownItem` with optional `kindIntent` resolved from the kind-to-intent map |
|
|
152
|
-
| `src/components/dpqlEditor/DpqlEditor.tsx` | (no change — visual polish lands generic in SmartEditor) |
|
|
153
|
-
| `src/components/qonsoleSmartInput/QonsoleSmartInput.tsx` | optional: add a `tone?: 'card' \| 'qonsole'` prop so the Qonsole wrapper can request the purple-tinted theme (`#190819`) when embedded in the chat panel instead of the default card tone |
|
|
154
|
-
|
|
155
|
-
## Visual-spec verification
|
|
156
|
-
|
|
157
|
-
Storybook is the verification harness. The following stories should
|
|
158
|
-
exercise every visual surface:
|
|
159
|
-
|
|
160
|
-
- `Components/DpqlEditor → WithSemanticTokens` — kind chips, popover container
|
|
161
|
-
- `Components/DpqlEditor → WithMixedContent` — chips on a richly-coloured doc
|
|
162
|
-
- `Components/QonsoleSmartInput → WithDiagnostics` — message panel + inline underlines
|
|
163
|
-
- `Components/QonsoleSmartInput → LiveQonsole` — full live look
|
|
164
|
-
- `Components/SmartEditor → WithMarkdownDocs` — hover doc tooltip
|
|
165
|
-
|
|
166
|
-
Manual checks:
|
|
167
|
-
|
|
168
|
-
- Light + dark theme — toggle in Storybook addon; the editor must
|
|
169
|
-
remain legible in both
|
|
170
|
-
- Behind a Qonsole-tinted host (`'#190819'`) and behind a card host
|
|
171
|
-
(`'#0a0a0a'`) — pop both into Storybook decorators to confirm
|
|
172
|
-
|
|
173
|
-
## Tasks
|
|
174
|
-
|
|
175
|
-
### Setup
|
|
176
|
-
|
|
177
|
-
- [ ] Create `src/components/smartEditor/styling.ts` with the constants
|
|
178
|
-
table from §design-decisions §1, §3, §4, §5. Inline the source
|
|
179
|
-
attribution as a comment pointing at the qorus-ide files.
|
|
180
|
-
|
|
181
|
-
### Popover container
|
|
182
|
-
|
|
183
|
-
- [ ] In `SmartEditor.tsx`, replace the bare `<ReqorePopover>` with
|
|
184
|
-
one that takes `customTheme={SMART_EDITOR_POPOVER_CUSTOM_THEME}`,
|
|
185
|
-
`transparent`, `backgroundBlur={20}`, `effect={{ glow: { color: 'custom1:darken:1:0.2', size: 0.05, blur: 30 } }}`
|
|
186
|
-
- [ ] Same treatment for the hover popover
|
|
187
|
-
- [ ] Verify the chip-anchored Replace-mode popover inherits
|
|
188
|
-
|
|
189
|
-
### Menu items
|
|
190
|
-
|
|
191
|
-
- [ ] Per-kind intent map — extend `ICompletionDropdownItem` with
|
|
192
|
-
`kindIntent?: TReqoreIntent`
|
|
193
|
-
- [ ] Populate `kindIntent` in the mapping step of `performCompletionRequest`
|
|
194
|
-
- [ ] Pass `intent={kindIntent}` to `<ReqoreMenuItem>`
|
|
195
|
-
- [ ] Change focused-row to `intent='info'`
|
|
196
|
-
- [ ] `<ReqoreMenuDivider intent='muted'>`
|
|
197
|
-
|
|
198
|
-
### Diagnostic surface
|
|
199
|
-
|
|
200
|
-
- [ ] `<ReqoreMessage>` per diagnostic gains `opaque={false}` and
|
|
201
|
-
`effect={severityToEffect(severity)}` from the new styling
|
|
202
|
-
module
|
|
203
|
-
- [ ] Optional follow-up: hover on the inline wavy underline shows
|
|
204
|
-
a rich `<ReqorePopover>` instead of native browser `title=` —
|
|
205
|
-
defer if scope creeps
|
|
206
|
-
|
|
207
|
-
### Loading overlay
|
|
208
|
-
|
|
209
|
-
- [ ] Replace hand-rolled `<div style={{ position: 'absolute', inset: 0, background: 'rgba(0,0,0,0.06)' }}>`
|
|
210
|
-
with `<ReqoreControlGroup vertical wrap='center'>` or a styled
|
|
211
|
-
`<ReqorePanel transparent backgroundBlur={20} flat>` containing
|
|
212
|
-
`<ReqoreSpinner>` — confirm the editor body shows through
|
|
213
|
-
- [ ] Confirm Phase 4's `loadingIndicator={null}` opt-out still works
|
|
214
|
-
|
|
215
|
-
### Qonsole tone override
|
|
216
|
-
|
|
217
|
-
- [ ] Add `tone?: 'card' | 'qonsole'` to `QonsoleSmartInput` props
|
|
218
|
-
(default `'card'` — preserves current behaviour)
|
|
219
|
-
- [ ] When `'qonsole'`, pass `customTheme={{ main: '#190819' }}` to
|
|
220
|
-
`SmartEditor` (requires a new pass-through prop `customTheme?`
|
|
221
|
-
on `ISmartEditorProps`)
|
|
222
|
-
|
|
223
|
-
### Tests
|
|
224
|
-
|
|
225
|
-
- [ ] No new play tests required — visual-only
|
|
226
|
-
- [ ] All existing 263 jest + 152 storybook play tests still pass
|
|
227
|
-
- [ ] Run `yarn build:test:prod && yarn lint && yarn test`
|
|
228
|
-
- [ ] Run `yarn test-storybook --url http://localhost:6008`
|
|
229
|
-
|
|
230
|
-
### Verification
|
|
231
|
-
|
|
232
|
-
- [ ] **STOP — user verifies in browser**: each story listed under
|
|
233
|
-
§visual-spec verification looks like the rest of the IDE
|
|
234
|
-
- [ ] Commit
|
|
235
|
-
|
|
236
|
-
## Out of scope
|
|
237
|
-
|
|
238
|
-
- Animation tuning (`animate: 'hover'` on items / `animationSpeed`) —
|
|
239
|
-
saved for a separate pass if the user wants it
|
|
240
|
-
- Scrollbar styling for the popover — defer; Reqore's default
|
|
241
|
-
scrollbar is fine
|
|
242
|
-
- Light-theme tuning specifically — current palette is dark-first;
|
|
243
|
-
light-theme support is a separate batch
|
|
244
|
-
- Touching the `ReqoreRichTextEditor` panel chrome itself (the editor
|
|
245
|
-
body) — that lives in Reqore upstream and any change should be a
|
|
246
|
-
Reqore PR
|