@qoretechnologies/reqraft 0.10.65 → 0.10.66-pr.137.ga1983bf
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 +413 -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 +322 -124
- package/dist/components/form/engine/CompactRow.js.map +1 -1
- package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
- package/dist/components/form/engine/CompactToolbar.js +29 -3
- package/dist/components/form/engine/CompactToolbar.js.map +1 -1
- package/dist/components/form/engine/FormEngine.d.ts +66 -11
- package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
- package/dist/components/form/engine/FormEngine.js +570 -176
- package/dist/components/form/engine/FormEngine.js.map +1 -1
- package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
- package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
- package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
- package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
- package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
- package/dist/components/form/engine/OptionFieldMessages.js +25 -3
- 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 +12 -6
- package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
- package/dist/components/form/engine/compactRowContext.d.ts +30 -1
- 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 +59 -22
- package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowStyles.js +102 -55
- 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/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 +24 -8
- package/dist/components/form/engine/readFirst.d.ts.map +1 -1
- package/dist/components/form/engine/readFirst.js +77 -109
- package/dist/components/form/engine/readFirst.js.map +1 -1
- package/dist/components/form/engine/readFirstColors.d.ts +30 -0
- package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
- package/dist/components/form/engine/readFirstColors.js +51 -0
- package/dist/components/form/engine/readFirstColors.js.map +1 -0
- package/dist/components/form/engine/rowFocus.d.ts +2 -0
- package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
- package/dist/components/form/engine/rowFocus.js +26 -3
- package/dist/components/form/engine/rowFocus.js.map +1 -1
- package/dist/components/form/engine/typeChoices.d.ts +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.js +2 -1
- package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
- package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
- package/dist/components/form/engine/variants/variantParts.js +25 -17
- package/dist/components/form/engine/variants/variantParts.js.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.js +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 +43 -10
- 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 +43 -20
- package/dist/components/form/fields/Field.js.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.js +39 -6
- 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 +119 -62
- 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.map +1 -1
- package/dist/components/form/fields/long-string/LongString.js +29 -8
- 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 +13 -9
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
- package/dist/components/form/fields/number/Number.d.ts +6 -0
- package/dist/components/form/fields/number/Number.d.ts.map +1 -1
- package/dist/components/form/fields/number/Number.js +41 -6
- package/dist/components/form/fields/number/Number.js.map +1 -1
- package/dist/components/form/fields/object/Object.d.ts +1 -1
- package/dist/components/form/fields/object/Object.d.ts.map +1 -1
- package/dist/components/form/fields/object/Object.js +4 -2
- package/dist/components/form/fields/object/Object.js.map +1 -1
- package/dist/components/form/fields/pendingEdit.d.ts +52 -0
- package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
- package/dist/components/form/fields/pendingEdit.js +79 -0
- package/dist/components/form/fields/pendingEdit.js.map +1 -0
- package/dist/components/form/fields/radio-group/RadioGroup.d.ts.map +1 -1
- package/dist/components/form/fields/radio-group/RadioGroup.js +4 -3
- 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 +382 -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 +678 -107
- 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 +451 -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 -0
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +25 -1
- 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 -7
- package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
- package/dist/components/log/Log.d.ts.map +1 -1
- package/dist/components/log/Log.js +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 +584 -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 +336 -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 +562 -151
- 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/ReferencePicker.d.ts +9 -2
- package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.js +27 -6
- package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
- package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
- package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketHeader.js +20 -2
- package/dist/components/supportTicket/TicketHeader.js.map +1 -1
- package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
- package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.js +9 -4
- package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
- package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
- package/dist/components/ticketThread/TicketThread.js +38 -13
- package/dist/components/ticketThread/TicketThread.js.map +1 -1
- package/dist/helpers/allowedValues.d.ts +21 -0
- package/dist/helpers/allowedValues.d.ts.map +1 -1
- package/dist/helpers/allowedValues.js +40 -1
- 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/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/src/components/Description/index.tsx +0 -254
- package/src/components/Description/markdownRendererContext.tsx +0 -29
- package/src/components/FocusedEditing/index.tsx +0 -50
- package/src/components/codeSize/index.tsx +0 -79
- package/src/components/composer/Composer.stories.tsx +0 -238
- package/src/components/composer/Composer.tsx +0 -554
- package/src/components/composer/helpers.ts +0 -74
- package/src/components/composer/index.ts +0 -2
- package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -1183
- package/src/components/dpqlEditor/DpqlEditor.tsx +0 -219
- package/src/components/dpqlEditor/dpqlHelpers.ts +0 -287
- package/src/components/dpqlEditor/dpqlInserter.ts +0 -121
- package/src/components/dpqlEditor/dpqlProbe.ts +0 -165
- package/src/components/dpqlEditor/dpqlTags.ts +0 -114
- package/src/components/dpqlEditor/index.ts +0 -41
- package/src/components/dpqlEditor/types.ts +0 -203
- package/src/components/dpqlEditor/useDpqlProbe.ts +0 -33
- package/src/components/dpqlEditor/useDpqlSession.ts +0 -411
- package/src/components/form/engine/CompactRow.tsx +0 -2620
- package/src/components/form/engine/CompactToolbar.tsx +0 -330
- package/src/components/form/engine/FormEngine.stories.tsx +0 -9920
- package/src/components/form/engine/FormEngine.tsx +0 -4569
- package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
- package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -331
- package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
- package/src/components/form/engine/OptionFieldMessages.tsx +0 -477
- package/src/components/form/engine/OptionsHelpDialog.tsx +0 -29
- package/src/components/form/engine/__fixtures__/basicFormOptions.ts +0 -309
- package/src/components/form/engine/__fixtures__/fieldChromeOptions.ts +0 -45
- package/src/components/form/engine/_structuredData/SchemaDataView.stories.tsx +0 -233
- package/src/components/form/engine/_structuredData/SchemaDataView.tsx +0 -742
- package/src/components/form/engine/_structuredData/StructuredDataView.stories.tsx +0 -85
- package/src/components/form/engine/_structuredData/StructuredDataView.tsx +0 -75
- package/src/components/form/engine/_structuredData/structuredData.ts +0 -145
- package/src/components/form/engine/compactRowContext.ts +0 -148
- package/src/components/form/engine/compactRowStyles.ts +0 -898
- package/src/components/form/engine/compactToolbarContext.ts +0 -69
- package/src/components/form/engine/optionActions.ts +0 -128
- package/src/components/form/engine/optionsContext.ts +0 -24
- package/src/components/form/engine/readFirst.ts +0 -1077
- package/src/components/form/engine/rendererTypes.ts +0 -107
- package/src/components/form/engine/revealRow.ts +0 -123
- package/src/components/form/engine/rowFocus.ts +0 -101
- package/src/components/form/engine/rowMenuContext.ts +0 -159
- package/src/components/form/engine/rowOpenPicker.ts +0 -27
- package/src/components/form/engine/typeChoices.ts +0 -63
- package/src/components/form/engine/variants/FormEngineVariants.stories.tsx +0 -159
- package/src/components/form/engine/variants/VariantCalmTable.tsx +0 -244
- package/src/components/form/engine/variants/VariantCards.tsx +0 -212
- package/src/components/form/engine/variants/VariantFocus.tsx +0 -382
- package/src/components/form/engine/variants/VariantMinimal.tsx +0 -170
- package/src/components/form/engine/variants/focusDemo.ts +0 -145
- package/src/components/form/engine/variants/variantModel.ts +0 -223
- package/src/components/form/engine/variants/variantParts.tsx +0 -313
- package/src/components/form/expressions/DpqlRendering.tsx +0 -85
- package/src/components/form/expressions/ExpressionField.stories.tsx +0 -1395
- package/src/components/form/expressions/ExpressionField.tsx +0 -503
- package/src/components/form/expressions/argumentPresence.ts +0 -213
- package/src/components/form/expressions/builder/ExpressionBuilder.stories.tsx +0 -1683
- package/src/components/form/expressions/builder/argumentDetail.tsx +0 -17
- package/src/components/form/expressions/builder/argumentLabel.tsx +0 -146
- package/src/components/form/expressions/builder/argumentSlot.tsx +0 -101
- package/src/components/form/expressions/builder/argumentWrapper.tsx +0 -243
- package/src/components/form/expressions/builder/confirmMismatchedTypesModal.tsx +0 -120
- package/src/components/form/expressions/builder/confirmUnsupportedTypeModal.tsx +0 -69
- package/src/components/form/expressions/builder/index.tsx +0 -1545
- package/src/components/form/expressions/builder/item.tsx +0 -89
- package/src/components/form/expressions/builder/moveToPositionStrip.tsx +0 -156
- package/src/components/form/expressions/builder/renderTemplate.tsx +0 -42
- package/src/components/form/expressions/dpqlMockLanguage.ts +0 -566
- package/src/components/form/expressions/dpqlMockLsp.ts +0 -126
- package/src/components/form/expressions/mockExpressions.ts +0 -317
- package/src/components/form/expressions/renderExpressionToText.ts +0 -137
- package/src/components/form/expressions/types.ts +0 -110
- package/src/components/form/expressions/useExpressions.ts +0 -101
- package/src/components/form/expressions/useRenderExpression.ts +0 -165
- package/src/components/form/fields/Field.stories.tsx +0 -143
- package/src/components/form/fields/Field.tsx +0 -732
- package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -297
- package/src/components/form/fields/array/ArrayAuto.tsx +0 -237
- package/src/components/form/fields/array/ArrayAutoField.stories.tsx +0 -475
- package/src/components/form/fields/array/ArrayAutoField.tsx +0 -367
- package/src/components/form/fields/auto/AutoFormField.stories.tsx +0 -825
- package/src/components/form/fields/auto/AutoFormField.tsx +0 -1164
- package/src/components/form/fields/binary/Binary.stories.tsx +0 -122
- package/src/components/form/fields/binary/Binary.tsx +0 -91
- package/src/components/form/fields/boolean/Boolean.stories.tsx +0 -125
- package/src/components/form/fields/boolean/Boolean.tsx +0 -34
- package/src/components/form/fields/byte-size/ByteSize.stories.tsx +0 -87
- package/src/components/form/fields/byte-size/ByteSize.tsx +0 -58
- package/src/components/form/fields/color/Color.stories.tsx +0 -99
- package/src/components/form/fields/color/Color.tsx +0 -46
- package/src/components/form/fields/cron/Cron.stories.tsx +0 -68
- package/src/components/form/fields/cron/Cron.tsx +0 -80
- package/src/components/form/fields/date/Date.stories.tsx +0 -77
- package/src/components/form/fields/date/Date.tsx +0 -55
- package/src/components/form/fields/emittedValues.ts +0 -70
- package/src/components/form/fields/file/File.stories.tsx +0 -161
- package/src/components/form/fields/file/File.tsx +0 -227
- package/src/components/form/fields/long-string/LongString.stories.tsx +0 -120
- package/src/components/form/fields/long-string/LongString.tsx +0 -130
- package/src/components/form/fields/markdown/Markdown.stories.tsx +0 -76
- package/src/components/form/fields/markdown/Markdown.tsx +0 -81
- package/src/components/form/fields/markdown/MarkdownView.tsx +0 -222
- package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +0 -139
- package/src/components/form/fields/number/Number.stories.tsx +0 -159
- package/src/components/form/fields/number/Number.tsx +0 -160
- package/src/components/form/fields/object/Object.stories.tsx +0 -398
- package/src/components/form/fields/object/Object.tsx +0 -255
- package/src/components/form/fields/radio-group/RadioGroup.stories.tsx +0 -95
- package/src/components/form/fields/radio-group/RadioGroup.tsx +0 -46
- package/src/components/form/fields/radio-group/images/java-96x128.png +0 -0
- package/src/components/form/fields/radio-group/images/python-129x128.png +0 -0
- package/src/components/form/fields/radio-group/images/qore-106x128.png +0 -0
- package/src/components/form/fields/rich-text/RichText.stories.tsx +0 -260
- package/src/components/form/fields/rich-text/RichText.tsx +0 -537
- package/src/components/form/fields/schema-definition/CatalogLeafForm.tsx +0 -242
- package/src/components/form/fields/schema-definition/CatalogNodeEditor.tsx +0 -758
- package/src/components/form/fields/schema-definition/Hint.tsx +0 -22
- package/src/components/form/fields/schema-definition/InlineValidationBanner.tsx +0 -138
- package/src/components/form/fields/schema-definition/Loader.tsx +0 -20
- package/src/components/form/fields/schema-definition/MigrationsTab.tsx +0 -187
- package/src/components/form/fields/schema-definition/SchemaDefinitionField.stories.tsx +0 -286
- package/src/components/form/fields/schema-definition/TableEditor.tsx +0 -155
- package/src/components/form/fields/schema-definition/TablesTab.tsx +0 -138
- package/src/components/form/fields/schema-definition/catalog.ts +0 -237
- package/src/components/form/fields/schema-definition/helpers.ts +0 -90
- package/src/components/form/fields/schema-definition/index.tsx +0 -418
- package/src/components/form/fields/schema-definition/mockCatalog.ts +0 -325
- package/src/components/form/fields/schema-definition/mockDefinition.ts +0 -111
- package/src/components/form/fields/schema-definition/referenceSuggestions.tsx +0 -152
- package/src/components/form/fields/schema-definition/starterTemplate.ts +0 -68
- package/src/components/form/fields/schema-definition/types.ts +0 -185
- package/src/components/form/fields/schema-definition/useSchemaOptionCatalog.ts +0 -49
- package/src/components/form/fields/select/Select.stories.tsx +0 -872
- package/src/components/form/fields/select/Select.tsx +0 -624
- package/src/components/form/fields/select/SelectCollection.tsx +0 -594
- package/src/components/form/fields/string/String.stories.tsx +0 -86
- package/src/components/form/fields/string/String.tsx +0 -43
- package/src/components/form/fields/template/ExampleValueModal.stories.tsx +0 -114
- package/src/components/form/fields/template/ExampleValueModal.tsx +0 -99
- package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +0 -47
- package/src/components/form/fields/template/TemplateField.stories.tsx +0 -1121
- package/src/components/form/fields/template/TemplateField.tsx +0 -1717
- package/src/components/form/fields/template/TemplateText.tsx +0 -115
- package/src/components/form/fields/template/__fixtures__/longExampleValue.ts +0 -7
- package/src/components/form/fields/template/__fixtures__/multiLevelTemplates.json +0 -147
- package/src/components/form/fields/template/__fixtures__/templates.json +0 -83
- package/src/components/form/fields/timeout/Timeout.stories.tsx +0 -228
- package/src/components/form/fields/timeout/Timeout.tsx +0 -87
- package/src/components/form/fields/url/Url.stories.tsx +0 -94
- package/src/components/form/fields/url/Url.tsx +0 -85
- package/src/components/form/index.tsx +0 -47
- package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
- package/src/components/imageLightbox/ImageLightbox.tsx +0 -236
- package/src/components/imageLightbox/index.ts +0 -1
- package/src/components/log/Log.stories.tsx +0 -333
- package/src/components/log/Log.tsx +0 -285
- package/src/components/menu/Menu.stories.tsx +0 -155
- package/src/components/menu/Menu.tsx +0 -312
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.stories.tsx +0 -797
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.tsx +0 -105
- package/src/components/qonsoleSmartInput/index.ts +0 -16
- package/src/components/qonsoleSmartInput/qonsoleInserter.ts +0 -77
- package/src/components/qonsoleSmartInput/types.ts +0 -133
- package/src/components/qonsoleSmartInput/useQonsoleSession.ts +0 -124
- package/src/components/searchFilterBar/SearchFilterBar.stories.tsx +0 -62
- package/src/components/searchFilterBar/SearchFilterBar.tsx +0 -144
- package/src/components/searchFilterBar/index.ts +0 -1
- package/src/components/smartEditor/MarkdownDoc.tsx +0 -190
- package/src/components/smartEditor/SmartEditor.stories.tsx +0 -475
- package/src/components/smartEditor/SmartEditor.tsx +0 -808
- package/src/components/smartEditor/__fixtures__/mockLspServer.ts +0 -205
- package/src/components/smartEditor/helpers.ts +0 -217
- package/src/components/smartEditor/index.ts +0 -35
- package/src/components/smartEditor/styling.ts +0 -45
- package/src/components/smartEditor/types.ts +0 -211
- package/src/components/smartEditor/useLspAutocomplete.ts +0 -758
- package/src/components/smartEditor/useLspDiagnosticDecorations.ts +0 -125
- package/src/components/smartEditor/useLspHover.ts +0 -230
- package/src/components/smartEditor/useLspSemanticTokens.ts +0 -298
- package/src/components/smartEditor/useLspSession.ts +0 -231
- package/src/components/smartEditor/useLspSignatureHelp.ts +0 -198
- package/src/components/supportTicket/AttachmentChips.stories.tsx +0 -171
- package/src/components/supportTicket/AttachmentChips.tsx +0 -147
- package/src/components/supportTicket/InterfaceReferenceTags.stories.tsx +0 -257
- package/src/components/supportTicket/InterfaceReferenceTags.tsx +0 -129
- package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -584
- package/src/components/supportTicket/ReferencePicker.tsx +0 -563
- package/src/components/supportTicket/TicketConversation.stories.tsx +0 -121
- package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
- package/src/components/supportTicket/TicketHeader.tsx +0 -247
- package/src/components/supportTicket/TicketMetaTags.stories.tsx +0 -103
- package/src/components/supportTicket/TicketMetaTags.tsx +0 -85
- package/src/components/supportTicket/TicketReplyBox.stories.tsx +0 -354
- package/src/components/supportTicket/TicketReplyBox.tsx +0 -150
- package/src/components/supportTicket/__fixtures__/kindMarks.ts +0 -28
- package/src/components/supportTicket/attachmentAccess.ts +0 -97
- package/src/components/supportTicket/fileToAttachment.ts +0 -24
- package/src/components/supportTicket/index.ts +0 -10
- package/src/components/supportTicket/meta.ts +0 -206
- package/src/components/supportTicket/ticketModel.ts +0 -131
- package/src/components/supportTicket/useLoadedImages.ts +0 -73
- package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -315
- package/src/components/ticketReferences/TicketReferences.tsx +0 -906
- package/src/components/ticketReferences/index.ts +0 -2
- package/src/components/ticketThread/TicketThread.stories.tsx +0 -829
- package/src/components/ticketThread/TicketThread.tsx +0 -719
- package/src/components/ticketThread/index.ts +0 -6
- package/src/contexts/FetchContext.tsx +0 -25
- package/src/contexts/ReqraftContext.tsx +0 -9
- package/src/contexts/StorageContext.tsx +0 -33
- package/src/global.d.ts +0 -4
- package/src/helpers/allowedValues.ts +0 -249
- package/src/helpers/choiceChip.ts +0 -227
- package/src/helpers/common.ts +0 -326
- package/src/helpers/dpqlDetection.ts +0 -209
- package/src/helpers/expressions.ts +0 -140
- package/src/helpers/optionUiTypes.ts +0 -199
- package/src/helpers/options.ts +0 -150
- package/src/helpers/providerValue.ts +0 -125
- package/src/helpers/scrollbar.ts +0 -32
- package/src/helpers/singleLineString.ts +0 -61
- package/src/helpers/templateItems.ts +0 -81
- package/src/helpers/templateText.ts +0 -350
- package/src/helpers/templates.ts +0 -602
- package/src/helpers/validations.ts +0 -2085
- package/src/hooks/useArgSchema.ts +0 -37
- package/src/hooks/useCoarsePointer.ts +0 -30
- package/src/hooks/useFetch/useFetch.stories.tsx +0 -379
- package/src/hooks/useFetch/useFetch.tsx +0 -154
- package/src/hooks/usePhoneViewport.ts +0 -34
- package/src/hooks/useQorusTypes.ts +0 -233
- package/src/hooks/useReqraftProperty.ts +0 -16
- package/src/hooks/useStorage/useStorage.stories.tsx +0 -168
- package/src/hooks/useStorage/useStorage.ts +0 -35
- package/src/hooks/useTemplates.ts +0 -123
- package/src/hooks/useValidation.ts +0 -9
- package/src/hooks/useWebSocket/useWebSocket.ts +0 -224
- package/src/hooks/useWebSocket/useWebsocket.stories.tsx +0 -640
- package/src/hooks/useWhyDidYouUpdate.ts +0 -38
- package/src/index.tsx +0 -86
- package/src/providers/FetchProvider.tsx +0 -40
- package/src/providers/ReqraftProvider.tsx +0 -52
- package/src/providers/StorageProvider.tsx +0 -131
- package/src/stores/currentUser/currentUser.stories.tsx +0 -100
- package/src/stores/currentUser/currentUser.tsx +0 -94
- package/src/stories/Data/fileFieldArgSchema.json +0 -86
- package/src/stories/Tests/utils.ts +0 -320
- package/src/stories/storyNetwork.ts +0 -92
- package/src/stories/tracking.tsx +0 -206
- package/src/tracking/browser/attach.ts +0 -186
- package/src/tracking/browser/env.ts +0 -78
- package/src/tracking/core/consent.ts +0 -37
- package/src/tracking/core/engagement.ts +0 -47
- package/src/tracking/core/experiments.ts +0 -258
- package/src/tracking/core/hash.ts +0 -26
- package/src/tracking/core/ids.ts +0 -25
- package/src/tracking/core/observable.ts +0 -23
- package/src/tracking/core/queue.ts +0 -131
- package/src/tracking/core/sections.ts +0 -166
- package/src/tracking/core/storage.ts +0 -69
- package/src/tracking/core/tracker.ts +0 -417
- package/src/tracking/core/types.ts +0 -162
- package/src/tracking/core/utm.ts +0 -23
- package/src/tracking/index.ts +0 -72
- package/src/tracking/markup.ts +0 -17
- package/src/tracking/react/Experiment.tsx +0 -44
- package/src/tracking/react/TrackingProvider.tsx +0 -56
- package/src/tracking/react/hooks.ts +0 -106
- package/src/tracking/react/index.ts +0 -13
- package/src/tracking/testing.ts +0 -108
- package/src/tracking/ui/ExperimentCard.stories.tsx +0 -296
- package/src/tracking/ui/ExperimentCard.tsx +0 -667
- package/src/tracking/ui/ExperimentsOverlay.stories.tsx +0 -155
- package/src/tracking/ui/ExperimentsOverlay.tsx +0 -437
- package/src/tracking/ui/anchor.ts +0 -180
- package/src/tracking/ui/card.ts +0 -464
- package/src/tracking/ui/client.ts +0 -117
- package/src/tracking/ui/index.ts +0 -77
- package/src/tracking/ui/types.ts +0 -110
- package/src/tracking/ui/useExperimentsAdmin.ts +0 -103
- package/src/types/Form.ts +0 -29
- package/src/types.ts +0 -14
- package/src/utils/datetime.ts +0 -10
- package/src/utils/fetch.ts +0 -457
- package/src/utils/lspClient.ts +0 -711
- package/src/utils/lspClient.types.ts +0 -211
- package/src/utils/queryUnlessCancelled.ts +0 -28
- package/src/utils/websocket.ts +0 -293
- package/vite.config.ts +0 -58
- package/vitest.config.ts +0 -69
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Slate `decorate` hook that converts LSP `publishDiagnostics` payloads
|
|
3
|
-
// into per-leaf decoration ranges. Each range carries `error: true`
|
|
4
|
-
// plus the diagnostic's `message` and `severity`, which the editor's
|
|
5
|
-
// `customRenderLeaf` can pick up to draw the inline wavy underline /
|
|
6
|
-
// hover-title state. Composes with a caller-supplied syntax-highlight
|
|
7
|
-
// `decorate` in the wrapper (e.g. `DpqlEditor.tsx` merges the two).
|
|
8
|
-
|
|
9
|
-
import { useCallback, useMemo } from 'react';
|
|
10
|
-
import { NodeEntry, Range, Text } from 'slate';
|
|
11
|
-
import { ILspDiagnostic } from '../../utils/lspClient.types';
|
|
12
|
-
import { lspPositionToOffset } from './helpers';
|
|
13
|
-
import { ISlateConverter, ISlateElement } from './types';
|
|
14
|
-
|
|
15
|
-
/** Marks added to decoration ranges so `customRenderLeaf` can style them. */
|
|
16
|
-
export interface IDiagnosticMarks {
|
|
17
|
-
/** Truthy when this leaf falls inside a diagnostic's reported range. */
|
|
18
|
-
error: true;
|
|
19
|
-
/** The diagnostic's user-facing message (rendered in a hover-title). */
|
|
20
|
-
errorMessage: string;
|
|
21
|
-
/** LSP `DiagnosticSeverity` — 1 Error, 2 Warning, 3 Info, 4 Hint. */
|
|
22
|
-
severity: number;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Build a Slate `decorate` function that paints diagnostic spans over
|
|
27
|
-
* the document.
|
|
28
|
-
*
|
|
29
|
-
* The function is recomputed whenever `diagnostics` or `nodes` change,
|
|
30
|
-
* and per-call iteration over diagnostics is `O(diagnostics × text-leaves)` —
|
|
31
|
-
* fine for the editor scale we target (typical document under a few
|
|
32
|
-
* hundred characters, a handful of diagnostics).
|
|
33
|
-
*
|
|
34
|
-
* @param diagnostics Most-recent `session.diagnostics`.
|
|
35
|
-
* @param converter The same converter passed to `SmartEditor`. We use
|
|
36
|
-
* it to compute the plain-text projection and the
|
|
37
|
-
* plain-text offset of any node — both required to
|
|
38
|
-
* intersect a diagnostic's `{line, character}` LSP
|
|
39
|
-
* range with each Slate text leaf.
|
|
40
|
-
* @param nodes Current Slate document. The hook captures this in
|
|
41
|
-
* a closure; pass the same `slateValue` you hand
|
|
42
|
-
* `ReqoreRichTextEditor`.
|
|
43
|
-
*/
|
|
44
|
-
export function useLspDiagnosticDecorations(
|
|
45
|
-
diagnostics: ILspDiagnostic[],
|
|
46
|
-
converter: ISlateConverter,
|
|
47
|
-
nodes: ISlateElement[]
|
|
48
|
-
): (entry: NodeEntry) => Range[] {
|
|
49
|
-
// Pre-compute the plain-text projection AND each diagnostic's
|
|
50
|
-
// `[startOffset, endOffset]` once per render — the alternative is
|
|
51
|
-
// recomputing both inside the decorate callback for every text leaf
|
|
52
|
-
// Slate walks, which is wasteful.
|
|
53
|
-
const plainText = useMemo(
|
|
54
|
-
() => converter.fromSlateNodes(nodes),
|
|
55
|
-
[converter, nodes]
|
|
56
|
-
);
|
|
57
|
-
const diagOffsets = useMemo(
|
|
58
|
-
() =>
|
|
59
|
-
diagnostics.map((d) => ({
|
|
60
|
-
startOffset: lspPositionToOffset(plainText, d.range.start),
|
|
61
|
-
endOffset: lspPositionToOffset(plainText, d.range.end),
|
|
62
|
-
message: d.message,
|
|
63
|
-
severity: d.severity ?? 1,
|
|
64
|
-
})),
|
|
65
|
-
[diagnostics, plainText]
|
|
66
|
-
);
|
|
67
|
-
|
|
68
|
-
return useCallback(
|
|
69
|
-
(entry: NodeEntry) => {
|
|
70
|
-
if (diagOffsets.length === 0) return [];
|
|
71
|
-
const [node, path] = entry;
|
|
72
|
-
if (!Text.isText(node)) return [];
|
|
73
|
-
|
|
74
|
-
// Where this leaf starts/ends in the plain-text projection. The
|
|
75
|
-
// converter's `selectionToOffset` with `anchorOffset: 0` gives the
|
|
76
|
-
// leaf's start; add `node.text.length` for the end.
|
|
77
|
-
const leafStart = converter.selectionToOffset(
|
|
78
|
-
nodes,
|
|
79
|
-
path as number[],
|
|
80
|
-
0
|
|
81
|
-
);
|
|
82
|
-
const leafEnd = leafStart + node.text.length;
|
|
83
|
-
|
|
84
|
-
const ranges: Range[] = [];
|
|
85
|
-
for (const diag of diagOffsets) {
|
|
86
|
-
const overlapStart = Math.max(leafStart, diag.startOffset);
|
|
87
|
-
const overlapEnd = Math.min(leafEnd, diag.endOffset);
|
|
88
|
-
if (overlapStart >= overlapEnd) continue;
|
|
89
|
-
// Emit a Slate `Range` (anchor + focus) over the offset window
|
|
90
|
-
// INSIDE this leaf. Slate then applies the extra marks
|
|
91
|
-
// (`error`, `errorMessage`, `severity`) to the styled span.
|
|
92
|
-
ranges.push({
|
|
93
|
-
anchor: { path, offset: overlapStart - leafStart },
|
|
94
|
-
focus: { path, offset: overlapEnd - leafStart },
|
|
95
|
-
error: true,
|
|
96
|
-
errorMessage: diag.message,
|
|
97
|
-
severity: diag.severity,
|
|
98
|
-
} as unknown as Range);
|
|
99
|
-
}
|
|
100
|
-
return ranges;
|
|
101
|
-
},
|
|
102
|
-
[diagOffsets, converter, nodes]
|
|
103
|
-
);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Map LSP `DiagnosticSeverity` → Reqore intent. Useful for the
|
|
108
|
-
* `ReqoreMessage` panel below the editor:
|
|
109
|
-
* 1 Error → `'danger'`
|
|
110
|
-
* 2 Warning → `'warning'`
|
|
111
|
-
* 3 Info → `'info'`
|
|
112
|
-
* 4 Hint → `'info'`
|
|
113
|
-
*/
|
|
114
|
-
export function severityToIntent(
|
|
115
|
-
severity?: number
|
|
116
|
-
): 'danger' | 'warning' | 'info' {
|
|
117
|
-
switch (severity) {
|
|
118
|
-
case 1:
|
|
119
|
-
return 'danger';
|
|
120
|
-
case 2:
|
|
121
|
-
return 'warning';
|
|
122
|
-
default:
|
|
123
|
-
return 'info';
|
|
124
|
-
}
|
|
125
|
-
}
|
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Hover-tooltip support for SmartEditor. Listens for `mousemove` on
|
|
3
|
-
// the editor's contenteditable element, debounces to 300ms idle, then
|
|
4
|
-
// asks the LSP for hover info at that mouse position. The consumer
|
|
5
|
-
// gets back `{ hoverContent, hoverPosition }` and renders a popover.
|
|
6
|
-
//
|
|
7
|
-
// Position mapping: mouse coords → DOM caret range
|
|
8
|
-
// (`caretRangeFromPoint`) → Slate `Point` → plain-text offset (via the
|
|
9
|
-
// converter) → LSP `{line, character}`. Pure math is split into
|
|
10
|
-
// `slatePointToLspPosition` so it can be unit-tested without a DOM.
|
|
11
|
-
|
|
12
|
-
import { debounce } from 'lodash';
|
|
13
|
-
import { RefObject, useCallback, useEffect, useRef, useState } from 'react';
|
|
14
|
-
import { BaseEditor, Point } from 'slate';
|
|
15
|
-
import { HistoryEditor } from 'slate-history';
|
|
16
|
-
import { ReactEditor } from 'slate-react';
|
|
17
|
-
import { ILspMarkupContent } from '../../utils/lspClient.types';
|
|
18
|
-
import { offsetToLspPosition } from './helpers';
|
|
19
|
-
import { ISlateConverter, ISlateElement } from './types';
|
|
20
|
-
import type { IUseLspSessionResult } from './useLspSession';
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Pure math: Slate point + Slate document → LSP `{line, character}`
|
|
24
|
-
* position in the plain-text projection. Extracted from the hook so it
|
|
25
|
-
* can be tested without a DOM / Slate editor instance.
|
|
26
|
-
*/
|
|
27
|
-
export function slatePointToLspPosition(
|
|
28
|
-
point: { path: number[]; offset: number },
|
|
29
|
-
nodes: ISlateElement[],
|
|
30
|
-
converter: ISlateConverter
|
|
31
|
-
): { line: number; character: number } {
|
|
32
|
-
const plainText = converter.fromSlateNodes(nodes);
|
|
33
|
-
const offset = converter.selectionToOffset(nodes, point.path, point.offset);
|
|
34
|
-
return offsetToLspPosition(plainText, offset);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Resolve mouse-event viewport coordinates into a Slate `Point`. Uses
|
|
39
|
-
* the standard `document.caretRangeFromPoint` (WebKit / Chromium) with
|
|
40
|
-
* a Firefox fallback to `caretPositionFromPoint`. Returns `null` when
|
|
41
|
-
* the point lies outside any text node or Slate can't map the DOM
|
|
42
|
-
* position back into its tree (e.g. inside a void inline).
|
|
43
|
-
*/
|
|
44
|
-
function mousePositionToSlatePoint(
|
|
45
|
-
editor: BaseEditor & ReactEditor & HistoryEditor,
|
|
46
|
-
clientX: number,
|
|
47
|
-
clientY: number
|
|
48
|
-
): Point | null {
|
|
49
|
-
let domRange: Range | null = null;
|
|
50
|
-
|
|
51
|
-
// Chromium / WebKit
|
|
52
|
-
if (typeof (document as any).caretRangeFromPoint === 'function') {
|
|
53
|
-
domRange = (document as any).caretRangeFromPoint(clientX, clientY);
|
|
54
|
-
} else if (typeof (document as any).caretPositionFromPoint === 'function') {
|
|
55
|
-
// Firefox shape: `{ offsetNode, offset }`
|
|
56
|
-
const pos = (document as any).caretPositionFromPoint(clientX, clientY);
|
|
57
|
-
if (pos) {
|
|
58
|
-
domRange = document.createRange();
|
|
59
|
-
domRange.setStart(pos.offsetNode, pos.offset);
|
|
60
|
-
domRange.collapse(true);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
if (!domRange) return null;
|
|
64
|
-
|
|
65
|
-
try {
|
|
66
|
-
return ReactEditor.toSlatePoint(
|
|
67
|
-
editor,
|
|
68
|
-
[domRange.startContainer, domRange.startOffset],
|
|
69
|
-
{ exactMatch: false, suppressThrow: true } as any
|
|
70
|
-
);
|
|
71
|
-
} catch {
|
|
72
|
-
return null;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
export interface IUseLspHoverOptions {
|
|
77
|
-
/** Default `true`. Set to `false` to disable the mousemove listener. */
|
|
78
|
-
enabled?: boolean;
|
|
79
|
-
/** Debounce window before issuing the LSP request. Default 300ms. */
|
|
80
|
-
debounceMs?: number;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
export interface IUseLspHoverResult {
|
|
84
|
-
/** Markup content returned by the LSP, or `null` when no hover info. */
|
|
85
|
-
hoverContent: ILspMarkupContent | null;
|
|
86
|
-
/** Viewport-coordinate position to anchor the popover. */
|
|
87
|
-
hoverPosition: { left: number; top: number } | null;
|
|
88
|
-
/** Imperatively dismiss the current hover popover. */
|
|
89
|
-
clearHover: () => void;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Hover-tooltip state for the SmartEditor. Attaches a `mousemove`
|
|
94
|
-
* listener to the editor's contenteditable element via the supplied
|
|
95
|
-
* editor ref and resolves LSP hover content under the cursor when the
|
|
96
|
-
* mouse goes idle for `debounceMs`.
|
|
97
|
-
*/
|
|
98
|
-
export function useLspHover(
|
|
99
|
-
session: IUseLspSessionResult,
|
|
100
|
-
editorRef: RefObject<
|
|
101
|
-
(BaseEditor & ReactEditor & HistoryEditor) | null
|
|
102
|
-
>,
|
|
103
|
-
converter: ISlateConverter,
|
|
104
|
-
options: IUseLspHoverOptions = {}
|
|
105
|
-
): IUseLspHoverResult {
|
|
106
|
-
const { enabled = true, debounceMs = 300 } = options;
|
|
107
|
-
|
|
108
|
-
const [hoverContent, setHoverContent] = useState<ILspMarkupContent | null>(
|
|
109
|
-
null
|
|
110
|
-
);
|
|
111
|
-
const [hoverPosition, setHoverPosition] = useState<{
|
|
112
|
-
left: number;
|
|
113
|
-
top: number;
|
|
114
|
-
} | null>(null);
|
|
115
|
-
|
|
116
|
-
// Track the latest request id so a slow in-flight response can't
|
|
117
|
-
// overwrite a newer hover state (e.g. the user moved away before the
|
|
118
|
-
// server replied).
|
|
119
|
-
const requestIdRef = useRef(0);
|
|
120
|
-
|
|
121
|
-
const clearHover = useCallback(() => {
|
|
122
|
-
setHoverContent(null);
|
|
123
|
-
setHoverPosition(null);
|
|
124
|
-
}, []);
|
|
125
|
-
|
|
126
|
-
// Debounced fetch. Re-created in the effect below whenever any of
|
|
127
|
-
// its inputs change. Started as a no-op so the ref is always a
|
|
128
|
-
// function — avoids null-checks in the mousemove listener. The dep
|
|
129
|
-
// array lists the stable primitives inside `session`, not the object
|
|
130
|
-
// itself — `useLspSession` rebuilds its return object every render,
|
|
131
|
-
// which would cancel and recreate this debounce on every parent
|
|
132
|
-
// re-render (see useLspSemanticTokens for the original incident).
|
|
133
|
-
const fetchHover = useRef<ReturnType<typeof debounce>>(
|
|
134
|
-
debounce(() => undefined)
|
|
135
|
-
);
|
|
136
|
-
|
|
137
|
-
useEffect(() => {
|
|
138
|
-
fetchHover.current.cancel();
|
|
139
|
-
fetchHover.current = debounce(async (clientX: number, clientY: number) => {
|
|
140
|
-
const editor = editorRef.current;
|
|
141
|
-
const client = session.client;
|
|
142
|
-
if (
|
|
143
|
-
!enabled ||
|
|
144
|
-
!editor ||
|
|
145
|
-
!client ||
|
|
146
|
-
!session.isReady ||
|
|
147
|
-
!session.isContextReady
|
|
148
|
-
)
|
|
149
|
-
return;
|
|
150
|
-
|
|
151
|
-
const point = mousePositionToSlatePoint(editor, clientX, clientY);
|
|
152
|
-
if (!point) {
|
|
153
|
-
clearHover();
|
|
154
|
-
return;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
const nodes = editor.children as ISlateElement[];
|
|
158
|
-
const { line, character } = slatePointToLspPosition(
|
|
159
|
-
{ path: point.path as number[], offset: point.offset },
|
|
160
|
-
nodes,
|
|
161
|
-
converter
|
|
162
|
-
);
|
|
163
|
-
|
|
164
|
-
const reqId = ++requestIdRef.current;
|
|
165
|
-
try {
|
|
166
|
-
const content = await client.getHover(line, character);
|
|
167
|
-
if (reqId !== requestIdRef.current) return; // stale
|
|
168
|
-
if (!content) {
|
|
169
|
-
clearHover();
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
setHoverContent(content);
|
|
173
|
-
// Anchor the popover at the mouse cursor. The design doc calls
|
|
174
|
-
// for "token center" — that requires building a Range over the
|
|
175
|
-
// word boundaries and reading its rect. Defer to a follow-up
|
|
176
|
-
// refinement; mouse-coord positioning already feels natural.
|
|
177
|
-
setHoverPosition({ left: clientX, top: clientY });
|
|
178
|
-
} catch {
|
|
179
|
-
clearHover();
|
|
180
|
-
}
|
|
181
|
-
}, debounceMs);
|
|
182
|
-
return () => fetchHover.current.cancel();
|
|
183
|
-
}, [
|
|
184
|
-
session.client,
|
|
185
|
-
session.isReady,
|
|
186
|
-
session.isContextReady,
|
|
187
|
-
editorRef,
|
|
188
|
-
converter,
|
|
189
|
-
enabled,
|
|
190
|
-
debounceMs,
|
|
191
|
-
clearHover,
|
|
192
|
-
]);
|
|
193
|
-
|
|
194
|
-
useEffect(() => {
|
|
195
|
-
if (!enabled) return undefined;
|
|
196
|
-
const editor = editorRef.current;
|
|
197
|
-
if (!editor) return undefined;
|
|
198
|
-
let dom: HTMLElement | null = null;
|
|
199
|
-
try {
|
|
200
|
-
dom = ReactEditor.toDOMNode(editor, editor) as HTMLElement;
|
|
201
|
-
} catch {
|
|
202
|
-
return undefined;
|
|
203
|
-
}
|
|
204
|
-
if (!dom) return undefined;
|
|
205
|
-
|
|
206
|
-
const onMove = (e: MouseEvent) => {
|
|
207
|
-
// Cancel any pending hover the moment the mouse moves — the
|
|
208
|
-
// previous coords are stale. The debounced trailing call only
|
|
209
|
-
// fires after `debounceMs` of true idle.
|
|
210
|
-
fetchHover.current.cancel();
|
|
211
|
-
fetchHover.current(e.clientX, e.clientY);
|
|
212
|
-
};
|
|
213
|
-
const onLeave = () => {
|
|
214
|
-
fetchHover.current.cancel();
|
|
215
|
-
clearHover();
|
|
216
|
-
};
|
|
217
|
-
|
|
218
|
-
dom.addEventListener('mousemove', onMove);
|
|
219
|
-
dom.addEventListener('mouseleave', onLeave);
|
|
220
|
-
return () => {
|
|
221
|
-
dom?.removeEventListener('mousemove', onMove);
|
|
222
|
-
dom?.removeEventListener('mouseleave', onLeave);
|
|
223
|
-
fetchHover.current.cancel();
|
|
224
|
-
};
|
|
225
|
-
// Re-attach on enabled / session.isReady changes; the editor itself
|
|
226
|
-
// is stable across renders so it's not a dep here.
|
|
227
|
-
}, [enabled, session.isReady, clearHover, editorRef]);
|
|
228
|
-
|
|
229
|
-
return { hoverContent, hoverPosition, clearHover };
|
|
230
|
-
}
|
|
@@ -1,298 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 Qore Technologies, s.r.o.
|
|
2
|
-
// Slate `decorate` hook that paints syntax highlighting using the
|
|
3
|
-
// LSP server's `textDocument/semanticTokens/full` response. Replaces
|
|
4
|
-
// the previous client-side regex highlighter (which was inherited
|
|
5
|
-
// from qorus-ide and turned out to be SQL keywords miscast as DPQL).
|
|
6
|
-
//
|
|
7
|
-
// Architecturally: the server is the canonical tokenizer for any
|
|
8
|
-
// `languageId` we serve (DPQL, Qonsole, Qore). We just decode the
|
|
9
|
-
// LSP-spec int-array, map each token's `{line, character, length}`
|
|
10
|
-
// to a Slate `Range` via the converter, and emit marks (`tokenType`,
|
|
11
|
-
// `tokenModifiers`) that `SmartEditor`'s renderLeaf colours.
|
|
12
|
-
//
|
|
13
|
-
// The decode math is pure and unit-tested separately; the hook is a
|
|
14
|
-
// thin debounce + state wrapper around it.
|
|
15
|
-
|
|
16
|
-
import { debounce } from 'lodash';
|
|
17
|
-
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
18
|
-
import { NodeEntry, Range, Text } from 'slate';
|
|
19
|
-
import {
|
|
20
|
-
ILspSemanticToken,
|
|
21
|
-
ILspSemanticTokensLegend,
|
|
22
|
-
} from '../../utils/lspClient.types';
|
|
23
|
-
import { lspPositionToOffset } from './helpers';
|
|
24
|
-
import { ISlateConverter, ISlateElement } from './types';
|
|
25
|
-
import type { IUseLspSessionResult } from './useLspSession';
|
|
26
|
-
|
|
27
|
-
/** Re-fetches when an empty token set comes back for a non-empty document. */
|
|
28
|
-
const EMPTY_RETRY_MAX = 3;
|
|
29
|
-
const EMPTY_RETRY_DELAY_MS = 300;
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Decode the LSP flat int-array semantic-tokens payload into
|
|
33
|
-
* absolute-position `ILspSemanticToken[]`. Pure function — extracted
|
|
34
|
-
* so the math can be unit-tested without a DOM or live session.
|
|
35
|
-
*
|
|
36
|
-
* LSP encoding: groups of 5 ints per token:
|
|
37
|
-
* [deltaLine, deltaStart, length, tokenType, tokenModifiersBitmask]
|
|
38
|
-
*
|
|
39
|
-
* Positions are delta-encoded relative to the *previous* token. When
|
|
40
|
-
* `deltaLine > 0`, `deltaStart` is the absolute character offset from
|
|
41
|
-
* the start of the new line. When `deltaLine === 0`, `deltaStart` is
|
|
42
|
-
* an offset from the previous token's start character on the same line.
|
|
43
|
-
*
|
|
44
|
-
* Returns an empty array on a malformed payload (length not divisible
|
|
45
|
-
* by 5, missing legend, out-of-range type index, etc.) rather than
|
|
46
|
-
* throwing — bad input shouldn't crash the editor.
|
|
47
|
-
*/
|
|
48
|
-
export function decodeSemanticTokens(
|
|
49
|
-
data: number[] | undefined | null,
|
|
50
|
-
legend: ILspSemanticTokensLegend | null
|
|
51
|
-
): ILspSemanticToken[] {
|
|
52
|
-
if (!data || !legend || data.length === 0) return [];
|
|
53
|
-
if (data.length % 5 !== 0) return [];
|
|
54
|
-
|
|
55
|
-
const tokens: ILspSemanticToken[] = [];
|
|
56
|
-
let prevLine = 0;
|
|
57
|
-
let prevChar = 0;
|
|
58
|
-
|
|
59
|
-
for (let i = 0; i < data.length; i += 5) {
|
|
60
|
-
const deltaLine = data[i];
|
|
61
|
-
const deltaStart = data[i + 1];
|
|
62
|
-
const length = data[i + 2];
|
|
63
|
-
const typeIdx = data[i + 3];
|
|
64
|
-
const modBits = data[i + 4];
|
|
65
|
-
|
|
66
|
-
const line = prevLine + deltaLine;
|
|
67
|
-
// When the token jumps to a new line, deltaStart is the absolute
|
|
68
|
-
// character on the new line. When it stays on the same line, it's
|
|
69
|
-
// a delta from the previous token's start character.
|
|
70
|
-
const character = deltaLine === 0 ? prevChar + deltaStart : deltaStart;
|
|
71
|
-
|
|
72
|
-
const tokenType = legend.tokenTypes[typeIdx];
|
|
73
|
-
if (tokenType === undefined) {
|
|
74
|
-
// Server emitted an index outside the legend — skip this token
|
|
75
|
-
// but keep decoding the rest so a single garbage entry doesn't
|
|
76
|
-
// kill the whole document's highlighting.
|
|
77
|
-
prevLine = line;
|
|
78
|
-
prevChar = character;
|
|
79
|
-
continue;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
const tokenModifiers: string[] = [];
|
|
83
|
-
if (modBits !== 0) {
|
|
84
|
-
for (let bit = 0; bit < legend.tokenModifiers.length; bit++) {
|
|
85
|
-
if ((modBits & (1 << bit)) !== 0) {
|
|
86
|
-
tokenModifiers.push(legend.tokenModifiers[bit]);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
tokens.push({ line, character, length, tokenType, tokenModifiers });
|
|
92
|
-
prevLine = line;
|
|
93
|
-
prevChar = character;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
return tokens;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Convert an `ILspSemanticToken[]` into a single `(NodeEntry) =>
|
|
101
|
-
* Range[]` decorate function — for each Slate text leaf, find the
|
|
102
|
-
* tokens overlapping its plain-text span and emit ranges with marks.
|
|
103
|
-
*
|
|
104
|
-
* Plain-text offset math mirrors `useLspDiagnosticDecorations`:
|
|
105
|
-
* leafStart = converter.selectionToOffset(nodes, path, 0)
|
|
106
|
-
* leafEnd = leafStart + node.text.length
|
|
107
|
-
* Tokens whose `[startOffset, endOffset)` intersects the leaf produce
|
|
108
|
-
* a range clamped to the leaf bounds.
|
|
109
|
-
*/
|
|
110
|
-
function tokensToDecorate(
|
|
111
|
-
tokens: ILspSemanticToken[],
|
|
112
|
-
plainText: string,
|
|
113
|
-
nodes: ISlateElement[],
|
|
114
|
-
converter: ISlateConverter
|
|
115
|
-
) {
|
|
116
|
-
// Pre-compute each token's absolute plain-text [start, end) so we
|
|
117
|
-
// only do the LSP→offset conversion once per token (not once per
|
|
118
|
-
// leaf, which Slate calls into us repeatedly for).
|
|
119
|
-
const tokenSpans = tokens.map((t) => ({
|
|
120
|
-
startOffset: lspPositionToOffset(plainText, {
|
|
121
|
-
line: t.line,
|
|
122
|
-
character: t.character,
|
|
123
|
-
}),
|
|
124
|
-
endOffset: lspPositionToOffset(plainText, {
|
|
125
|
-
line: t.line,
|
|
126
|
-
character: t.character + t.length,
|
|
127
|
-
}),
|
|
128
|
-
tokenType: t.tokenType,
|
|
129
|
-
tokenModifiers: t.tokenModifiers,
|
|
130
|
-
}));
|
|
131
|
-
|
|
132
|
-
return (entry: NodeEntry): Range[] => {
|
|
133
|
-
if (tokenSpans.length === 0) return [];
|
|
134
|
-
const [node, path] = entry;
|
|
135
|
-
if (!Text.isText(node)) return [];
|
|
136
|
-
|
|
137
|
-
const leafStart = converter.selectionToOffset(
|
|
138
|
-
nodes,
|
|
139
|
-
path as number[],
|
|
140
|
-
0
|
|
141
|
-
);
|
|
142
|
-
const leafEnd = leafStart + node.text.length;
|
|
143
|
-
|
|
144
|
-
const ranges: Range[] = [];
|
|
145
|
-
for (const span of tokenSpans) {
|
|
146
|
-
const overlapStart = Math.max(leafStart, span.startOffset);
|
|
147
|
-
const overlapEnd = Math.min(leafEnd, span.endOffset);
|
|
148
|
-
if (overlapStart >= overlapEnd) continue;
|
|
149
|
-
ranges.push({
|
|
150
|
-
anchor: { path, offset: overlapStart - leafStart },
|
|
151
|
-
focus: { path, offset: overlapEnd - leafStart },
|
|
152
|
-
tokenType: span.tokenType,
|
|
153
|
-
tokenModifiers: span.tokenModifiers,
|
|
154
|
-
} as unknown as Range);
|
|
155
|
-
}
|
|
156
|
-
return ranges;
|
|
157
|
-
};
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
export interface IUseLspSemanticTokensOptions {
|
|
161
|
-
/** Default `true`. Set `false` to disable LSP-driven syntax highlighting. */
|
|
162
|
-
enabled?: boolean;
|
|
163
|
-
/** Debounce window before re-requesting tokens. Default 250ms. */
|
|
164
|
-
debounceMs?: number;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* LSP-driven syntax highlighting for `SmartEditor`. Returns a stable
|
|
169
|
-
* `(NodeEntry) => Range[]` decorate function that the editor composes
|
|
170
|
-
* with diagnostics + any caller-provided decorate.
|
|
171
|
-
*
|
|
172
|
-
* Behaviour:
|
|
173
|
-
* - Waits for `session.isReady && session.semanticTokensLegend`. Until
|
|
174
|
-
* then, the returned decorate emits no ranges (editor body shows as
|
|
175
|
-
* plain monospace text under the connecting overlay).
|
|
176
|
-
* - Whenever `nodes` changes, debounces a request to
|
|
177
|
-
* `session.client.getSemanticTokens()`. The most-recent response is
|
|
178
|
-
* memoised into the decorate; in-flight stale responses are dropped.
|
|
179
|
-
* - On request error / timeout, retains the previously-decoded tokens
|
|
180
|
-
* so highlighting doesn't flash off mid-edit.
|
|
181
|
-
*/
|
|
182
|
-
export function useLspSemanticTokens(
|
|
183
|
-
session: IUseLspSessionResult,
|
|
184
|
-
converter: ISlateConverter,
|
|
185
|
-
nodes: ISlateElement[],
|
|
186
|
-
options: IUseLspSemanticTokensOptions = {}
|
|
187
|
-
): (entry: NodeEntry) => Range[] {
|
|
188
|
-
const { enabled = true, debounceMs = 250 } = options;
|
|
189
|
-
|
|
190
|
-
const [tokens, setTokens] = useState<ILspSemanticToken[]>([]);
|
|
191
|
-
const requestIdRef = useRef(0);
|
|
192
|
-
|
|
193
|
-
const plainText = useMemo(
|
|
194
|
-
() => converter.fromSlateNodes(nodes),
|
|
195
|
-
[converter, nodes]
|
|
196
|
-
);
|
|
197
|
-
|
|
198
|
-
const plainTextRef = useRef(plainText);
|
|
199
|
-
plainTextRef.current = plainText;
|
|
200
|
-
const emptyRetryRef = useRef(0);
|
|
201
|
-
const retryTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);
|
|
202
|
-
|
|
203
|
-
// Debounced fetch. Re-created in the effect below so each call
|
|
204
|
-
// closes over the latest session + plainText. Started as a no-op so
|
|
205
|
-
// the ref always holds a function (avoids null-checks in the firing
|
|
206
|
-
// effect).
|
|
207
|
-
const fetchTokens = useRef<ReturnType<typeof debounce>>(
|
|
208
|
-
debounce(() => undefined)
|
|
209
|
-
);
|
|
210
|
-
|
|
211
|
-
// Depend on the stable primitives inside `session` — not the `session`
|
|
212
|
-
// object literal itself. `useLspSession` rebuilds its return object on
|
|
213
|
-
// every render, so `[session, …]` would cancel and recreate this
|
|
214
|
-
// debounce on every parent re-render and the armed fetch would never
|
|
215
|
-
// get a chance to fire (see `WithServerParse` story: the
|
|
216
|
-
// `dpql/toRichtext` response arrives ~10ms after `isReady` flips and
|
|
217
|
-
// its three setStates would cancel the 250ms debounce before it
|
|
218
|
-
// expired, so `getSemanticTokens` was never called).
|
|
219
|
-
useEffect(() => {
|
|
220
|
-
fetchTokens.current.cancel();
|
|
221
|
-
fetchTokens.current = debounce(async () => {
|
|
222
|
-
const client = session.client;
|
|
223
|
-
const legend = session.semanticTokensLegend;
|
|
224
|
-
if (
|
|
225
|
-
!enabled ||
|
|
226
|
-
!client ||
|
|
227
|
-
!session.isReady ||
|
|
228
|
-
!session.isContextReady ||
|
|
229
|
-
!legend
|
|
230
|
-
)
|
|
231
|
-
return;
|
|
232
|
-
const reqId = ++requestIdRef.current;
|
|
233
|
-
try {
|
|
234
|
-
const data = await client.getSemanticTokens();
|
|
235
|
-
if (reqId !== requestIdRef.current) return; // stale
|
|
236
|
-
const decoded = decodeSemanticTokens(data, legend);
|
|
237
|
-
setTokens(decoded);
|
|
238
|
-
|
|
239
|
-
if (
|
|
240
|
-
decoded.length === 0 &&
|
|
241
|
-
plainTextRef.current.trim() !== '' &&
|
|
242
|
-
emptyRetryRef.current < EMPTY_RETRY_MAX
|
|
243
|
-
) {
|
|
244
|
-
emptyRetryRef.current += 1;
|
|
245
|
-
if (retryTimerRef.current) clearTimeout(retryTimerRef.current);
|
|
246
|
-
retryTimerRef.current = setTimeout(
|
|
247
|
-
() => fetchTokens.current(),
|
|
248
|
-
EMPTY_RETRY_DELAY_MS
|
|
249
|
-
);
|
|
250
|
-
}
|
|
251
|
-
} catch {
|
|
252
|
-
// Keep last-known tokens on error so highlighting doesn't
|
|
253
|
-
// flash off mid-edit.
|
|
254
|
-
}
|
|
255
|
-
}, debounceMs);
|
|
256
|
-
return () => {
|
|
257
|
-
fetchTokens.current.cancel();
|
|
258
|
-
if (retryTimerRef.current) clearTimeout(retryTimerRef.current);
|
|
259
|
-
};
|
|
260
|
-
}, [
|
|
261
|
-
session.client,
|
|
262
|
-
session.isReady,
|
|
263
|
-
session.isContextReady,
|
|
264
|
-
session.semanticTokensLegend,
|
|
265
|
-
enabled,
|
|
266
|
-
debounceMs,
|
|
267
|
-
]);
|
|
268
|
-
|
|
269
|
-
// Fire on every document change AND when the session becomes ready
|
|
270
|
-
// (first highlighting pass right after connect).
|
|
271
|
-
useEffect(() => {
|
|
272
|
-
if (
|
|
273
|
-
!enabled ||
|
|
274
|
-
!session.isReady ||
|
|
275
|
-
!session.isContextReady ||
|
|
276
|
-
!session.semanticTokensLegend
|
|
277
|
-
)
|
|
278
|
-
return;
|
|
279
|
-
// Fresh document (or fresh ready session) — allow the empty-result
|
|
280
|
-
// retries again.
|
|
281
|
-
emptyRetryRef.current = 0;
|
|
282
|
-
fetchTokens.current();
|
|
283
|
-
// No cleanup — the debounce is cancelled by the outer effect on
|
|
284
|
-
// session/enabled changes.
|
|
285
|
-
}, [
|
|
286
|
-
enabled,
|
|
287
|
-
session.isReady,
|
|
288
|
-
session.isContextReady,
|
|
289
|
-
session.semanticTokensLegend,
|
|
290
|
-
plainText,
|
|
291
|
-
]);
|
|
292
|
-
|
|
293
|
-
return useCallback(
|
|
294
|
-
(entry: NodeEntry) =>
|
|
295
|
-
tokensToDecorate(tokens, plainText, nodes, converter)(entry),
|
|
296
|
-
[tokens, plainText, nodes, converter]
|
|
297
|
-
);
|
|
298
|
-
}
|