@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
|
@@ -46,6 +46,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
46
46
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
47
|
}
|
|
48
48
|
};
|
|
49
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
+
if (ar || !(i in from)) {
|
|
52
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
+
ar[i] = from[i];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
57
|
+
};
|
|
49
58
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
59
|
exports.DpqlEditor = void 0;
|
|
51
60
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
@@ -60,14 +69,22 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
60
69
|
// Templates and fields are BOTH served by the LSP server through the
|
|
61
70
|
// completion stream: typing `$` opens templates, `@` opens field
|
|
62
71
|
// references (the server's `dpql-get-completions` is position-aware).
|
|
63
|
-
//
|
|
64
|
-
//
|
|
72
|
+
// Given templates, it lists them in that one list on a click as well, and
|
|
73
|
+
// a picker beside the text browses them as their catalogue nests them
|
|
74
|
+
// (`TemplateBrowser`), as a Qog field's are.
|
|
65
75
|
var react_1 = require("react");
|
|
66
76
|
var SmartEditor_1 = require("../smartEditor/SmartEditor");
|
|
67
77
|
var dpqlHelpers_1 = require("./dpqlHelpers");
|
|
68
78
|
var dpqlInserter_1 = require("./dpqlInserter");
|
|
69
79
|
var dpqlTags_1 = require("./dpqlTags");
|
|
80
|
+
var dpqlCompletions_1 = require("./dpqlCompletions");
|
|
70
81
|
var useDpqlSession_1 = require("./useDpqlSession");
|
|
82
|
+
var templateTree_1 = require("../../helpers/templateTree");
|
|
83
|
+
var templateCatalogue_1 = require("../../helpers/templateCatalogue");
|
|
84
|
+
var templateCatalogueContext_1 = require("../../helpers/templateCatalogueContext");
|
|
85
|
+
var editingAids_1 = require("../smartEditor/editingAids");
|
|
86
|
+
var descriptionTooltip_1 = require("../../helpers/descriptionTooltip");
|
|
87
|
+
var typeSentenceForm_1 = require("../form/typeSentenceForm");
|
|
71
88
|
// Trigger characters that open the autocomplete on typing. Space is
|
|
72
89
|
// deliberately NOT in the set — typing a space after a chip (or after a
|
|
73
90
|
// keyword like `==`) shouldn't pop the dropdown. Sigils (`@`, `$`) and
|
|
@@ -75,7 +92,11 @@ var useDpqlSession_1 = require("./useDpqlSession");
|
|
|
75
92
|
// of completion is handled by typing inside an already-open token.
|
|
76
93
|
var DPQL_TRIGGERS = new Set(['@', '$', '.', ':']);
|
|
77
94
|
exports.DpqlEditor = (0, react_1.forwardRef)(function (_a, ref) {
|
|
78
|
-
var
|
|
95
|
+
var _b;
|
|
96
|
+
var value = _a.value, onChange = _a.onChange, provider = _a.provider, recordType = _a.recordType, options = _a.options, actionCode = _a.actionCode, height = _a.height, size = _a.size, _c = _a.readOnly, readOnly = _c === void 0 ? false : _c, wordWrap = _a.wordWrap, maxHeight = _a.maxHeight, lineNumbers = _a.lineNumbers, _d = _a.showDiagnostics, showDiagnostics = _d === void 0 ? true : _d, _e = _a.enableHover, enableHover = _e === void 0 ? true : _e, _f = _a.templateTagsUseIntent, templateTagsUseIntent = _f === void 0 ? true : _f, loadingIndicator = _a.loadingIndicator, templates = _a.templates, onBlur = _a.onBlur, _g = _a.useServerParse, useServerParse = _g === void 0 ? false : _g, fields = _a.fields, _h = _a.alertPayloadContext, alertPayloadContext = _h === void 0 ? false : _h, fsmContext = _a.fsmContext, onUnavailable = _a.onUnavailable, onReady = _a.onReady, _j = _a.completeOnClick, completeOnClick = _j === void 0 ? !!templates : _j, _k = _a.browseTemplates, browseTemplates = _k === void 0 ? true : _k, templateCatalogue = _a.templateCatalogue, ownFieldContext = _a.fieldContext, diagnosticAction = _a.diagnosticAction;
|
|
97
|
+
// where the field is: its own, or where the host says its fields are (`TemplateCatalogueProvider`)
|
|
98
|
+
var hostFieldContext = (0, templateCatalogueContext_1.useTemplateFieldContext)();
|
|
99
|
+
var fieldContext = ownFieldContext !== null && ownFieldContext !== void 0 ? ownFieldContext : hostFieldContext;
|
|
79
100
|
var dpql = (0, useDpqlSession_1.useDpqlSession)({
|
|
80
101
|
provider: provider,
|
|
81
102
|
recordType: recordType,
|
|
@@ -85,6 +106,7 @@ exports.DpqlEditor = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
85
106
|
initialText: value,
|
|
86
107
|
alertPayloadContext: alertPayloadContext,
|
|
87
108
|
fsmContext: fsmContext,
|
|
109
|
+
fieldContext: fieldContext,
|
|
88
110
|
});
|
|
89
111
|
// Server-parse state: when `useServerParse` is true, we ask the
|
|
90
112
|
// LSP server's `dpql/toRichtext` to convert the plain-text value
|
|
@@ -93,9 +115,9 @@ exports.DpqlEditor = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
93
115
|
// reuse it without another roundtrip. `null` until the first
|
|
94
116
|
// response arrives (or when the request errored — caller falls
|
|
95
117
|
// back to the client-side regex parser via `dpqlSlateConverter`).
|
|
96
|
-
var
|
|
97
|
-
var
|
|
98
|
-
var
|
|
118
|
+
var _l = (0, react_1.useState)(null), serverParsedNodes = _l[0], setServerParsedNodes = _l[1];
|
|
119
|
+
var _m = (0, react_1.useState)(null), serverParsedFor = _m[0], setServerParsedFor = _m[1];
|
|
120
|
+
var _o = (0, react_1.useState)(false), isParsing = _o[0], setIsParsing = _o[1];
|
|
99
121
|
// Tracks the most recent in-flight request so a slow response
|
|
100
122
|
// can't overwrite a newer one (the user typed faster than the
|
|
101
123
|
// server replied).
|
|
@@ -174,14 +196,113 @@ exports.DpqlEditor = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
174
196
|
if (!useServerParse)
|
|
175
197
|
return dpqlHelpers_1.dpqlSlateConverter;
|
|
176
198
|
return __assign(__assign({}, dpqlHelpers_1.dpqlSlateConverter), { toSlateNodes: function (text) {
|
|
177
|
-
if (text === serverParsedFor &&
|
|
178
|
-
serverParsedNodes) {
|
|
199
|
+
if (text === serverParsedFor && serverParsedNodes) {
|
|
179
200
|
return serverParsedNodes;
|
|
180
201
|
}
|
|
181
202
|
return dpqlHelpers_1.dpqlSlateConverter.toSlateNodes(text);
|
|
182
203
|
} });
|
|
183
204
|
}, [useServerParse, serverParsedFor, serverParsedNodes]);
|
|
184
|
-
|
|
205
|
+
// no language server to talk to: said once, for the host to show what works without one
|
|
206
|
+
var unavailable = dpql.session.isUnavailable;
|
|
207
|
+
(0, react_1.useEffect)(function () {
|
|
208
|
+
if (unavailable)
|
|
209
|
+
onUnavailable === null || onUnavailable === void 0 ? void 0 : onUnavailable();
|
|
210
|
+
}, [unavailable]);
|
|
211
|
+
// the language server can now parse and write the text: said once, as the session says it
|
|
212
|
+
var ready = dpql.session.isReady && dpql.session.isContextReady;
|
|
213
|
+
(0, react_1.useEffect)(function () {
|
|
214
|
+
if (ready)
|
|
215
|
+
onReady === null || onReady === void 0 ? void 0 : onReady();
|
|
216
|
+
}, [ready]);
|
|
217
|
+
/* What the field can refer to (qorus#646, David's decisions): its templates as their catalogue nests them, and
|
|
218
|
+
the record's fields as a group of their own - one tree, browsed in the template picker (a click in the empty
|
|
219
|
+
text, the template button, a chip, a group's row) and reached by what is typed (`dpqlCompletionsWith`). */
|
|
220
|
+
/* The field's template catalogue (qorus#646): the contexts it can use where it is used, asked of the language
|
|
221
|
+
server once the document's context is bound, and again when that changes. A server that does not know the
|
|
222
|
+
request leaves the field with its own templates. */
|
|
223
|
+
var _p = (0, react_1.useState)(), askedCatalogue = _p[0], setAskedCatalogue = _p[1];
|
|
224
|
+
var catalogueClient = dpql.session.client;
|
|
225
|
+
var catalogueReady = dpql.session.isReady && dpql.session.isContextReady;
|
|
226
|
+
var fieldContextKey = fieldContext ? JSON.stringify(fieldContext) : '';
|
|
227
|
+
(0, react_1.useEffect)(function () {
|
|
228
|
+
if (templateCatalogue || readOnly || !catalogueClient || !catalogueReady)
|
|
229
|
+
return undefined;
|
|
230
|
+
var current = true;
|
|
231
|
+
catalogueClient
|
|
232
|
+
.customRequest('dpql/templateCatalogue', __assign({ uri: dpql.session.uri }, (fieldContextKey ? { field_context: JSON.parse(fieldContextKey) } : {})))
|
|
233
|
+
.then(function (catalogue) {
|
|
234
|
+
if (current)
|
|
235
|
+
setAskedCatalogue((catalogue === null || catalogue === void 0 ? void 0 : catalogue.contexts) ? catalogue : undefined);
|
|
236
|
+
})
|
|
237
|
+
.catch(function () {
|
|
238
|
+
// a server without the catalogue: the field's own templates
|
|
239
|
+
if (current)
|
|
240
|
+
setAskedCatalogue(undefined);
|
|
241
|
+
});
|
|
242
|
+
return function () {
|
|
243
|
+
current = false;
|
|
244
|
+
};
|
|
245
|
+
// asked again when the Qog the document is bound to changes (`fsmContext`): its state data are `$data:`'s keys
|
|
246
|
+
}, [
|
|
247
|
+
templateCatalogue,
|
|
248
|
+
readOnly,
|
|
249
|
+
catalogueClient,
|
|
250
|
+
catalogueReady,
|
|
251
|
+
fieldContextKey,
|
|
252
|
+
fsmContext,
|
|
253
|
+
dpql.session.uri,
|
|
254
|
+
]);
|
|
255
|
+
// the field's own, its language server's, or that of the fields where it is (`TemplateCatalogueProvider`)
|
|
256
|
+
var hostCatalogue = (0, templateCatalogueContext_1.useTemplateCatalogue)();
|
|
257
|
+
var catalogue = (_b = templateCatalogue !== null && templateCatalogue !== void 0 ? templateCatalogue : askedCatalogue) !== null && _b !== void 0 ? _b : hostCatalogue;
|
|
258
|
+
var templateRoots = (0, react_1.useMemo)(
|
|
259
|
+
// an expression takes a record whole: a state's data or a record is offered whole as well as opened
|
|
260
|
+
// a lone group kept whole: the editor adds the language server's groups beside it (`openLoneGroup`)
|
|
261
|
+
function () {
|
|
262
|
+
return (0, templateCatalogue_1.withTemplateCatalogue)((0, templateTree_1.templateTree)(templates, { fields: dpql.fieldMeta, wholeRecords: true, keepLoneGroup: true }), catalogue, true);
|
|
263
|
+
}, [templates, dpql.fieldMeta, catalogue]);
|
|
264
|
+
/* A reference that names none of the field's templates says so where it is written, and stays the text it
|
|
265
|
+
was typed as (qorus#646, David's review: a half-typed reference was taken as it was). */
|
|
266
|
+
var namesNothing = (0, react_1.useCallback)(function (reference) { return (0, templateTree_1.referenceNamesNothing)(templateRoots, reference); }, [templateRoots]);
|
|
267
|
+
var presentDiagnostics = (0, react_1.useCallback)(function (diagnostics, plainText) { return __spreadArray(__spreadArray([], (0, dpqlCompletions_1.presentDpqlDiagnostics)(diagnostics, plainText), true), (0, dpqlHelpers_1.dpqlReferencesIn)(plainText)
|
|
268
|
+
.filter(function (_a) {
|
|
269
|
+
var value = _a.value;
|
|
270
|
+
return namesNothing(value);
|
|
271
|
+
})
|
|
272
|
+
/* what the server says of a reference is said once: a variable the Qog does not declare is the server's
|
|
273
|
+
warning, with what to do about it (`qog_variable_undeclared`), not an error of the editor's too */
|
|
274
|
+
.filter(function (_a) {
|
|
275
|
+
var line = _a.line, start = _a.start;
|
|
276
|
+
return !diagnostics.some(function (diagnostic) {
|
|
277
|
+
return diagnostic.code === 'qog_variable_undeclared' &&
|
|
278
|
+
diagnostic.range.start.line === line &&
|
|
279
|
+
diagnostic.range.start.character <= start &&
|
|
280
|
+
diagnostic.range.end.character > start;
|
|
281
|
+
});
|
|
282
|
+
})
|
|
283
|
+
.map(function (_a) {
|
|
284
|
+
var line = _a.line, start = _a.start, end = _a.end, value = _a.value;
|
|
285
|
+
return ({
|
|
286
|
+
range: { start: { line: line, character: start }, end: { line: line, character: end } },
|
|
287
|
+
severity: 1,
|
|
288
|
+
source: 'templates',
|
|
289
|
+
message: (0, templateTree_1.referenceNamesNothingMessage)(value),
|
|
290
|
+
});
|
|
291
|
+
}), true); }, [namesNothing]);
|
|
292
|
+
// a template's type named in its row by the catalogue the surrounding form has, never its code
|
|
293
|
+
var typeLabel = (0, typeSentenceForm_1.useTypeLabel)();
|
|
294
|
+
var completionsWith = (0, react_1.useMemo)(function () { return (0, dpqlCompletions_1.dpqlCompletionsWith)(templateRoots, typeLabel); }, [templateRoots, typeLabel]);
|
|
295
|
+
var descriptions = (0, descriptionTooltip_1.useDescriptionTooltips)();
|
|
296
|
+
// a chip's hover says its type in the server's words for it
|
|
297
|
+
var typeSentenceForm = (0, typeSentenceForm_1.useTypeSentenceForm)();
|
|
298
|
+
var tagRenderer = (0, react_1.useMemo)(function () {
|
|
299
|
+
return (0, dpqlTags_1.makeDpqlTagRenderer)(dpql.fieldMeta, {
|
|
300
|
+
templateTagsUseIntent: templateTagsUseIntent,
|
|
301
|
+
templates: templates,
|
|
302
|
+
descriptions: descriptions,
|
|
303
|
+
typeSentenceForm: typeSentenceForm,
|
|
304
|
+
});
|
|
305
|
+
}, [dpql.fieldMeta, templateTagsUseIntent, templates, descriptions, typeSentenceForm]);
|
|
185
306
|
(0, react_1.useImperativeHandle)(ref, function () { return ({
|
|
186
307
|
format: function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
187
308
|
var formatted;
|
|
@@ -201,7 +322,32 @@ exports.DpqlEditor = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
201
322
|
parse: dpql.parse,
|
|
202
323
|
serialize: dpql.serialize,
|
|
203
324
|
}); }, [dpql, value, onChange]);
|
|
204
|
-
|
|
325
|
+
// Shift+Alt+F: the text as the language server formats it
|
|
326
|
+
var formatDocument = (0, react_1.useCallback)(function () {
|
|
327
|
+
dpql.session
|
|
328
|
+
.format()
|
|
329
|
+
.then(function (formatted) {
|
|
330
|
+
if (formatted !== null && formatted !== value) {
|
|
331
|
+
onChange(formatted);
|
|
332
|
+
}
|
|
333
|
+
})
|
|
334
|
+
.catch(function () {
|
|
335
|
+
// the server could not format it: the text stays as it is
|
|
336
|
+
});
|
|
337
|
+
}, [dpql.session, value, onChange]);
|
|
338
|
+
// the button beside the text that opens the picker for a pick at the caret, where a value can be written there
|
|
339
|
+
var templateButton = (0, react_1.useMemo)(function () {
|
|
340
|
+
var _a;
|
|
341
|
+
return browseTemplates && !readOnly && ((_a = templates === null || templates === void 0 ? void 0 : templates.items) === null || _a === void 0 ? void 0 : _a.length) ?
|
|
342
|
+
{ insertableAt: dpqlCompletions_1.dpqlExpectsValue, notInsertable: dpqlCompletions_1.NO_VALUE_AT_THE_END }
|
|
343
|
+
: undefined;
|
|
344
|
+
}, [browseTemplates, readOnly, templates]);
|
|
345
|
+
var editor = ((0, jsx_runtime_1.jsx)(SmartEditor_1.SmartEditor, { session: dpql.session, value: value, onChange: onChange, tagRenderer: tagRenderer, triggerCharacters: DPQL_TRIGGERS, converter: converter, completionInserter: dpqlInserter_1.dpqlCompletionInserter, height: height, size: size, readOnly: readOnly, showDiagnostics: showDiagnostics, enableHover: enableHover, onBlur: onBlur, templateRoots: readOnly ? undefined : templateRoots,
|
|
346
|
+
// DPQL's brackets and strings, as a code editor closes, wraps and matches them
|
|
347
|
+
editingLanguage: editingAids_1.DPQL_EDITING_LANGUAGE, formatDocument: formatDocument, wordWrap: wordWrap, maxHeight: maxHeight, lineNumbers: lineNumbers, templateButton: templateButton, completeOnClick: completeOnClick, completionsWith: completionsWith,
|
|
348
|
+
// "No record fields here" is the server's to say: with none, there may be a record it would know
|
|
349
|
+
emptyCompletionMessage: dpql.session.isUnavailable ? undefined : dpqlCompletions_1.dpqlEmptyCompletionMessage, presentDiagnostics: presentDiagnostics, diagnosticAction: diagnosticAction, referenceNamesNothing: namesNothing, isLoading: isParsing, loadingIndicator: loadingIndicator }));
|
|
350
|
+
return editor;
|
|
205
351
|
});
|
|
206
352
|
exports.DpqlEditor.displayName = 'DpqlEditor';
|
|
207
353
|
//# sourceMappingURL=DpqlEditor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DpqlEditor.js","sourceRoot":"","sources":["../../../src/components/dpqlEditor/DpqlEditor.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DpqlEditor.js","sourceRoot":"","sources":["../../../src/components/dpqlEditor/DpqlEditor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { TTypeLabel } from '../../helpers/qorusTypeCatalogue';
|
|
2
|
+
import { ITemplateNode } from '../../helpers/templateTree';
|
|
3
|
+
import { ILspCompletionItem, ILspDiagnostic } from '../../utils/lspClient.types';
|
|
4
|
+
import { unlistedContextMessage } from '../smartEditor/templateCompletions';
|
|
5
|
+
import { ICompletionContext } from '../smartEditor/types';
|
|
6
|
+
/** The completions, the best fits of the word typed first, in the order they came otherwise. */
|
|
7
|
+
export declare const rankByFit: (items: ILspCompletionItem[], word: string) => ILspCompletionItem[];
|
|
8
|
+
/** Why the templates beside the text cannot be used: a value at its end would follow another (qorus#646). */
|
|
9
|
+
export declare const NO_VALUE_AT_THE_END = "A template goes where a value can: after an operator, an opening bracket or a comma, or in an empty expression.";
|
|
10
|
+
/**
|
|
11
|
+
* The text with `template` put in at its end, where a template chosen from the picker beside the text goes - the
|
|
12
|
+
* editor keeps no caret its host can reach - in place of a reference being written there (a `$` typed to ask for
|
|
13
|
+
* one), as a template picked in the text goes (qorus#646, David's review: `pos + 1 + $pos`). Undefined where no
|
|
14
|
+
* value can be written at the end (`dpqlExpectsValue`): after `12`, one would be refused.
|
|
15
|
+
*/
|
|
16
|
+
export declare const dpqlTextWithTemplateAtTheEnd: (text: string, template: string) => string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Whether a value can be written at the end of `textBefore`, as far as the text tells: nothing written yet, an
|
|
19
|
+
* operator, an opening bracket or a comma before it, or a reference being written there. Asked where the server
|
|
20
|
+
* cannot be: there is none, or the document is empty, which it answers nothing for.
|
|
21
|
+
*/
|
|
22
|
+
export declare const dpqlExpectsValue: (textBefore: string) => boolean;
|
|
23
|
+
export declare const dpqlCompletionsWith: (roots?: ITemplateNode[], typeLabel?: TTypeLabel) => ({ plainText, offset, serverItems, typedInText }: ICompletionContext) => ILspCompletionItem[];
|
|
24
|
+
/**
|
|
25
|
+
* What the list says where it offers nothing at the caret (qorus#646): after an `@`, that there is no record; after
|
|
26
|
+
* a `$`, that there are no templates here.
|
|
27
|
+
*/
|
|
28
|
+
export { unlistedContextMessage };
|
|
29
|
+
export declare const dpqlEmptyCompletionMessage: (plainText: string, offset: number) => string | undefined;
|
|
30
|
+
/** What is said of the placeholders an unfinished expression is written with, for each part not chosen yet. */
|
|
31
|
+
export declare const UNFINISHED_PARTS_MESSAGE = "Fill in each \u2026 (the parts not chosen yet).";
|
|
32
|
+
/**
|
|
33
|
+
* The server's diagnostics as a DPQL editor says them. The Text view writes an unfinished expression with a
|
|
34
|
+
* placeholder for each part not chosen yet (`… > …`), and the server refuses each: "'…' can't be used here",
|
|
35
|
+
* twice, of text the author did not write (qorus#646, David's decision). Those are said once, as what to do; what
|
|
36
|
+
* the server says of anything else is said as it says it.
|
|
37
|
+
*/
|
|
38
|
+
export declare const presentDpqlDiagnostics: (diagnostics: ILspDiagnostic[], plainText: string) => ILspDiagnostic[];
|
|
39
|
+
//# sourceMappingURL=dpqlCompletions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dpqlCompletions.d.ts","sourceRoot":"","sources":["../../../src/components/dpqlEditor/dpqlCompletions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EACL,aAAa,EAKd,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEjF,OAAO,EAGL,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAkB1D,gGAAgG;AAChG,eAAO,MAAM,SAAS,UAAW,kBAAkB,EAAE,QAAQ,MAAM,KAAG,kBAAkB,EAI5D,CAAC;AAe7B,6GAA6G;AAC7G,eAAO,MAAM,mBAAmB,oHACmF,CAAC;AAEpH;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,SAAU,MAAM,YAAY,MAAM,KAAG,MAAM,GAAG,SAYtF,CAAC;AAKF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,eAAgB,MAAM,KAAG,OAMrD,CAAC;AAiFF,eAAO,MAAM,mBAAmB,WACtB,aAAa,EAAE,cAAmB,UAAU,uDACF,kBAAkB,KAAG,kBAAkB,EAkGxF,CAAC;AAEJ;;;GAGG;AACH,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,eAAO,MAAM,0BAA0B,cAC1B,MAAM,UACT,MAAM,KACb,MAAM,GAAG,SAYX,CAAC;AAGF,+GAA+G;AAC/G,eAAO,MAAM,wBAAwB,oDAAgE,CAAC;AAEtG;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gBACpB,cAAc,EAAE,aAClB,MAAM,KAChB,cAAc,EAkBhB,CAAC"}
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
14
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
15
|
+
if (ar || !(i in from)) {
|
|
16
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
17
|
+
ar[i] = from[i];
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
|
+
};
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.presentDpqlDiagnostics = exports.UNFINISHED_PARTS_MESSAGE = exports.dpqlEmptyCompletionMessage = exports.unlistedContextMessage = exports.dpqlCompletionsWith = exports.dpqlExpectsValue = exports.dpqlTextWithTemplateAtTheEnd = exports.NO_VALUE_AT_THE_END = exports.rankByFit = void 0;
|
|
24
|
+
var templateTree_1 = require("../../helpers/templateTree");
|
|
25
|
+
var renderExpressionToText_1 = require("../form/expressions/renderExpressionToText");
|
|
26
|
+
var templateCompletions_1 = require("../smartEditor/templateCompletions");
|
|
27
|
+
Object.defineProperty(exports, "unlistedContextMessage", { enumerable: true, get: function () { return templateCompletions_1.unlistedContextMessage; } });
|
|
28
|
+
var dpqlHelpers_1 = require("./dpqlHelpers");
|
|
29
|
+
/** The word typed before the caret: what follows the last sigil, `.` or `:` (`siz`, `dat`, `nam`, `ev`). */
|
|
30
|
+
var wordTyped = function (textBefore) { var _a, _b; return ((_b = (_a = /[\p{L}\p{M}\p{N}_]*$/u.exec(textBefore)) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : '').toLowerCase(); };
|
|
31
|
+
/** How well a completion fits the word typed: 0 its name starts with it, 1 a word in it does, 2 otherwise. */
|
|
32
|
+
var fitOf = function (item, word) {
|
|
33
|
+
if (!word)
|
|
34
|
+
return 0;
|
|
35
|
+
var names = [item.label, item.filterText, item.insertText]
|
|
36
|
+
.filter(function (name) { return typeof name === 'string'; })
|
|
37
|
+
.map(function (name) { return name.toLowerCase().replace(/^[@$]+/, ''); });
|
|
38
|
+
if (names.some(function (name) { return name.startsWith(word); }))
|
|
39
|
+
return 0;
|
|
40
|
+
if (names.some(function (name) { return name.split(/[^\p{L}\p{M}\p{N}]+/u).some(function (part) { return part.startsWith(word); }); }))
|
|
41
|
+
return 1;
|
|
42
|
+
return 2;
|
|
43
|
+
};
|
|
44
|
+
/** The completions, the best fits of the word typed first, in the order they came otherwise. */
|
|
45
|
+
var rankByFit = function (items, word) {
|
|
46
|
+
return items
|
|
47
|
+
.map(function (item, index) { return ({ item: item, index: index, fit: fitOf(item, word) }); })
|
|
48
|
+
.sort(function (a, b) { return a.fit - b.fit || a.index - b.index; })
|
|
49
|
+
.map(function (_a) {
|
|
50
|
+
var item = _a.item;
|
|
51
|
+
return item;
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
exports.rankByFit = rankByFit;
|
|
55
|
+
/** A reference as one record field is written however it is spelled: `$record:{pos}` is `@pos`. */
|
|
56
|
+
var fieldAsWritten = function (reference) {
|
|
57
|
+
var bare = (0, templateTree_1.unbracedReference)(reference);
|
|
58
|
+
return bare.startsWith('$record:') ? "@".concat(bare.slice('$record:'.length)) : bare;
|
|
59
|
+
};
|
|
60
|
+
/** The LSP completion kind a record's field is offered as. */
|
|
61
|
+
var FIELD_KIND = 5;
|
|
62
|
+
/** LSP completion kinds that write no value: a keyword and an operator (what the server offers after a value). */
|
|
63
|
+
var NO_VALUE_KINDS = new Set([14, 24]);
|
|
64
|
+
/** An `@` and the field name typed after it, at the end of a text. */
|
|
65
|
+
var FIELD_BEING_ASKED = /@[\p{L}\p{M}\p{N}_.]*$/u;
|
|
66
|
+
/** Why the templates beside the text cannot be used: a value at its end would follow another (qorus#646). */
|
|
67
|
+
exports.NO_VALUE_AT_THE_END = 'A template goes where a value can: after an operator, an opening bracket or a comma, or in an empty expression.';
|
|
68
|
+
/**
|
|
69
|
+
* The text with `template` put in at its end, where a template chosen from the picker beside the text goes - the
|
|
70
|
+
* editor keeps no caret its host can reach - in place of a reference being written there (a `$` typed to ask for
|
|
71
|
+
* one), as a template picked in the text goes (qorus#646, David's review: `pos + 1 + $pos`). Undefined where no
|
|
72
|
+
* value can be written at the end (`dpqlExpectsValue`): after `12`, one would be refused.
|
|
73
|
+
*/
|
|
74
|
+
var dpqlTextWithTemplateAtTheEnd = function (text, template) {
|
|
75
|
+
if (!template || !(0, exports.dpqlExpectsValue)(text)) {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
var current = text.trimEnd();
|
|
79
|
+
var written = (0, dpqlHelpers_1.dpqlReferenceBeingWritten)(current);
|
|
80
|
+
var before = current.slice(0, current.length - written);
|
|
81
|
+
return (!before.trim() ? template
|
|
82
|
+
: written ? "".concat(before).concat(template)
|
|
83
|
+
: "".concat(before, " ").concat(template));
|
|
84
|
+
};
|
|
85
|
+
exports.dpqlTextWithTemplateAtTheEnd = dpqlTextWithTemplateAtTheEnd;
|
|
86
|
+
/** What a value cannot follow - so it can be written next: an operator, an opening bracket, a comma. */
|
|
87
|
+
var BEFORE_A_VALUE = /[-+*/%<>=!&|,([?:]$/;
|
|
88
|
+
/**
|
|
89
|
+
* Whether a value can be written at the end of `textBefore`, as far as the text tells: nothing written yet, an
|
|
90
|
+
* operator, an opening bracket or a comma before it, or a reference being written there. Asked where the server
|
|
91
|
+
* cannot be: there is none, or the document is empty, which it answers nothing for.
|
|
92
|
+
*/
|
|
93
|
+
var dpqlExpectsValue = function (textBefore) {
|
|
94
|
+
if ((0, dpqlHelpers_1.dpqlReferenceBeingWritten)(textBefore) > 0) {
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
var written = textBefore.trimEnd();
|
|
98
|
+
return !written || BEFORE_A_VALUE.test(written);
|
|
99
|
+
};
|
|
100
|
+
exports.dpqlExpectsValue = dpqlExpectsValue;
|
|
101
|
+
/** A `$` and the template typed after it, at the end of a text: `$data:receive_order.`. */
|
|
102
|
+
var TEMPLATE_BEING_TYPED = /\$[\p{L}\p{M}\p{N}_.:{}[\]*-]*$/u;
|
|
103
|
+
/**
|
|
104
|
+
* The template typed at the end of `textBefore` (`$`, `$data:receive_order.`); '' where none is, or where it is in
|
|
105
|
+
* a string.
|
|
106
|
+
*/
|
|
107
|
+
var templateTyped = function (textBefore) {
|
|
108
|
+
var match = TEMPLATE_BEING_TYPED.exec(textBefore);
|
|
109
|
+
return match && !(0, dpqlHelpers_1.stringOpenAt)(textBefore.slice(0, match.index)) ? match[0] : '';
|
|
110
|
+
};
|
|
111
|
+
/** The field asked for at the end of `textBefore` (`@`, `@na`), typed as written, not in a string; or ''. */
|
|
112
|
+
var fieldTyped = function (textBefore) {
|
|
113
|
+
var match = FIELD_BEING_ASKED.exec(textBefore);
|
|
114
|
+
return match && !(0, dpqlHelpers_1.stringOpenAt)(textBefore.slice(0, match.index)) ? match[0] : '';
|
|
115
|
+
};
|
|
116
|
+
/** Whether an `@` asks for a field at the end of `textBefore`: typed as written, not in a string. */
|
|
117
|
+
var asksForAField = function (textBefore) { return !!fieldTyped(textBefore); };
|
|
118
|
+
/**
|
|
119
|
+
* What the list offers at the caret: the server's answer, and the field's templates and fields that what is typed
|
|
120
|
+
* reaches (qorus#646, David's review): after `$d` or `$data` the states, after `$data:` the states, after
|
|
121
|
+
* `$data:receive_order.` that state's data, after `@` the record's fields - a group a row that opens the picker at
|
|
122
|
+
* its members. Nothing that does not go on from what is typed: a template list of everything, under whatever was
|
|
123
|
+
* typed, read as if all of it fitted. Where a value can be written and nothing is typed, the field's templates are
|
|
124
|
+
* a row that opens the picker at their top ("Browse all templates"), with the server's answer. A pick is always a
|
|
125
|
+
* value where one can stand: after `12` the server offers operators, and no template is offered.
|
|
126
|
+
*
|
|
127
|
+
* A field or a template the server offers that the field's own list has is listed once, as the field's own, with
|
|
128
|
+
* where it is. A template's context alone (`$data:`) is not offered (`BARE_CONTEXT`).
|
|
129
|
+
*/
|
|
130
|
+
/** Whether a completion row is a record field (`@pos`, its template `$record:{pos}`). */
|
|
131
|
+
var isRecordField = function (item) {
|
|
132
|
+
var _a, _b, _c;
|
|
133
|
+
var written = (_c = (_b = (_a = item.textEdit) === null || _a === void 0 ? void 0 : _a.newText) !== null && _b !== void 0 ? _b : item.insertText) !== null && _c !== void 0 ? _c : item.label;
|
|
134
|
+
return item.kind === FIELD_KIND || written.startsWith('@') || (0, templateTree_1.unbracedReference)(written).startsWith('$record:');
|
|
135
|
+
};
|
|
136
|
+
/** Whether a completion is a template context, written `$<name>:`. */
|
|
137
|
+
var isContextItem = function (item) { var _a; return /^\$[\w-]+:$/.test((_a = item.insertText) !== null && _a !== void 0 ? _a : ''); };
|
|
138
|
+
/**
|
|
139
|
+
* A server completion as the list draws it, by what the server says of it (`data`: the contract a Qorus agent is
|
|
140
|
+
* building - a container or a leaf, used whole or not): a context or a state, a container, is gone on into - its
|
|
141
|
+
* reference written as text and what is in it listed next - and its row's Use takes it whole (`$data:*`, the
|
|
142
|
+
* state's whole data). A server that says nothing of a context: a container, used whole as Qorus reads it
|
|
143
|
+
* (`WHOLE_TEMPLATE_CONTEXTS`).
|
|
144
|
+
*/
|
|
145
|
+
var markedServerItem = function (item) {
|
|
146
|
+
var _a, _b, _c, _d, _e;
|
|
147
|
+
var said = ((_a = item.data) !== null && _a !== void 0 ? _a : {});
|
|
148
|
+
var written = (_d = (_c = (_b = item.textEdit) === null || _b === void 0 ? void 0 : _b.newText) !== null && _c !== void 0 ? _c : item.insertText) !== null && _d !== void 0 ? _d : item.label;
|
|
149
|
+
if (isContextItem(__assign(__assign({}, item), { insertText: written }))) {
|
|
150
|
+
if (said.container === false)
|
|
151
|
+
return item;
|
|
152
|
+
var whole = (_e = said.use_whole) !== null && _e !== void 0 ? _e : templateTree_1.WHOLE_TEMPLATE_CONTEXTS.has(written.slice(1, -1));
|
|
153
|
+
return __assign(__assign({}, item), { data: __assign(__assign({}, said), { continues: true, kindLabel: 'Template context',
|
|
154
|
+
// listed with the field's own templates and contexts, in one section
|
|
155
|
+
section: 'Templates', takesWhole: whole, wholeValue: whole ? (0, templateTree_1.wholeContextValue)(written) : undefined }) });
|
|
156
|
+
}
|
|
157
|
+
if (said.container && /^\$[\w-]+:\S+$/.test(written)) {
|
|
158
|
+
return __assign(__assign({}, item), { insertText: "".concat(written, "."), filterText: written, data: __assign(__assign({}, said), { continues: true, takesWhole: !!said.use_whole, wholeValue: said.use_whole ? written : undefined }) });
|
|
159
|
+
}
|
|
160
|
+
return item;
|
|
161
|
+
};
|
|
162
|
+
var dpqlCompletionsWith = function (roots, typeLabel) {
|
|
163
|
+
if (roots === void 0) { roots = []; }
|
|
164
|
+
return function (_a) {
|
|
165
|
+
var plainText = _a.plainText, offset = _a.offset, serverItems = _a.serverItems, typedInText = _a.typedInText;
|
|
166
|
+
/* The server's completions are offered as it offers them - a template's context (`$data:`) among them, which a
|
|
167
|
+
pick writes and goes on from, listing what is in it (qorus#646, David: "typing '$dat' or '@nam' does not
|
|
168
|
+
result in any LSP completion support, but it should") - ranked by how well they fit what is typed. */
|
|
169
|
+
var before = plainText.slice(0, offset);
|
|
170
|
+
/* What is typed, where a value can be written: the server says so by offering values (a whole reference before
|
|
171
|
+
the caret - a chip - is a value already, and the server offers operators after it), or, where it offers
|
|
172
|
+
nothing or cannot be asked, the text does. */
|
|
173
|
+
/* What is typed of a reference: read from the text the caret is in where the editor says what that is - a
|
|
174
|
+
chip before it is a value already, not a reference being typed - else from the plain text. */
|
|
175
|
+
/* a `.` or `[` typed straight after a chip goes on from the chip's reference (`$data:receive_order` and `.`):
|
|
176
|
+
read with it */
|
|
177
|
+
var written = typedInText !== undefined && !/^[.[]/.test(typedInText) ? typedInText : before;
|
|
178
|
+
var server = (0, exports.rankByFit)(serverItems !== null && serverItems !== void 0 ? serverItems : [], wordTyped(written));
|
|
179
|
+
var typed = templateTyped(written) || fieldTyped(written);
|
|
180
|
+
var valueHere = (serverItems === null || serverItems === void 0 ? void 0 : serverItems.length) ? serverItems.some(function (item) { var _a; return !NO_VALUE_KINDS.has((_a = item.kind) !== null && _a !== void 0 ? _a : 0); })
|
|
181
|
+
: typed ? (0, exports.dpqlExpectsValue)(before.slice(0, before.length - typed.length))
|
|
182
|
+
: (0, exports.dpqlExpectsValue)(before);
|
|
183
|
+
var serverReferences = new Set(server.map(function (item) { var _a, _b, _c; return fieldAsWritten((_c = (_b = (_a = item.textEdit) === null || _a === void 0 ? void 0 : _a.newText) !== null && _b !== void 0 ? _b : item.insertText) !== null && _c !== void 0 ? _c : item.label); }));
|
|
184
|
+
/* A record field the server offers is listed as the server lists it - it knows the record - and once: a field
|
|
185
|
+
of the field's own list it offers too is left out of that list. */
|
|
186
|
+
var ours = (0, exports.rankByFit)(typed && valueHere && roots.length ? (0, templateCompletions_1.templateSearchItems)(roots, typed, typeLabel, true) : [], wordTyped(written)).filter(function (item) {
|
|
187
|
+
var _a;
|
|
188
|
+
return !(item.kind === FIELD_KIND && serverReferences.has(fieldAsWritten((_a = item.insertText) !== null && _a !== void 0 ? _a : ''))) &&
|
|
189
|
+
// after a `$` only a template can follow: a record field is written with an `@` (qorus#646, David's review)
|
|
190
|
+
!(typed.startsWith('$') && isRecordField(item));
|
|
191
|
+
});
|
|
192
|
+
var browse = valueHere && roots.length ? [(0, templateCompletions_1.browseAllTemplatesItem)()] : [];
|
|
193
|
+
/* What the server says of a context or a value (the contract a Qorus agent is building, qorus#646 round 4): a
|
|
194
|
+
container is gone on into, its reference written as text, and taken whole (`$ctx:*`) where it can be. */
|
|
195
|
+
var marked = server.map(markedServerItem);
|
|
196
|
+
if (!ours.length) {
|
|
197
|
+
/* a context written that nothing is listed in: the list says what to write next (`unlistedContextMessage`),
|
|
198
|
+
with Browse all templates, to put a working reference in its place (qorus#646, David's review) */
|
|
199
|
+
if (!marked.length && (0, templateCompletions_1.unlistedContextMessage)(typed || written)) {
|
|
200
|
+
return roots.length ? [(0, templateCompletions_1.browseAllTemplatesItem)()] : [];
|
|
201
|
+
}
|
|
202
|
+
return __spreadArray(__spreadArray([], marked, true), browse, true);
|
|
203
|
+
}
|
|
204
|
+
/* a template context the field's own list has is listed as its own - with what is in it - and taken whole as
|
|
205
|
+
the server says it can be; the server's own row for it is left out below */
|
|
206
|
+
var serverWhole = new Map(marked
|
|
207
|
+
.filter(function (item) { return isContextItem(item); })
|
|
208
|
+
.map(function (item) { var _a, _b; return [(_a = item.insertText) !== null && _a !== void 0 ? _a : '', !!((_b = item.data) === null || _b === void 0 ? void 0 : _b.takesWhole)]; }));
|
|
209
|
+
var oursListed = ours.map(function (item) {
|
|
210
|
+
var _a;
|
|
211
|
+
var data = item.data;
|
|
212
|
+
var whole = serverWhole.get((_a = item.insertText) !== null && _a !== void 0 ? _a : '');
|
|
213
|
+
return (data === null || data === void 0 ? void 0 : data.kindLabel) === 'Template context' && whole !== undefined && whole !== data.takesWhole ? __assign(__assign({}, item), { data: __assign(__assign({}, data), { takesWhole: whole }) }) : item;
|
|
214
|
+
});
|
|
215
|
+
// by the reference each stands for: a state gone on into writes `$data:receive_order.`, the server's is the state
|
|
216
|
+
var ownReferences = new Set(oursListed.flatMap(function (item) {
|
|
217
|
+
var _a, _b;
|
|
218
|
+
return [
|
|
219
|
+
(0, templateTree_1.unbracedReference)((_a = item.insertText) !== null && _a !== void 0 ? _a : ''),
|
|
220
|
+
(0, templateTree_1.unbracedReference)((_b = item.filterText) !== null && _b !== void 0 ? _b : ''),
|
|
221
|
+
];
|
|
222
|
+
}));
|
|
223
|
+
var rest = __spreadArray(__spreadArray([], oursListed, true), marked.filter(function (item) {
|
|
224
|
+
var _a, _b, _c, _d;
|
|
225
|
+
return !ownReferences.has((0, templateTree_1.unbracedReference)((_c = (_b = (_a = item.textEdit) === null || _a === void 0 ? void 0 : _a.newText) !== null && _b !== void 0 ? _b : item.insertText) !== null && _c !== void 0 ? _c : item.label)) &&
|
|
226
|
+
// a state gone on into: its reference without the `.`
|
|
227
|
+
!ownReferences.has((0, templateTree_1.unbracedReference)(((_d = item.insertText) !== null && _d !== void 0 ? _d : '').replace(/\.$/, '')));
|
|
228
|
+
}), true);
|
|
229
|
+
/* the contexts first, by name as Qorus lists them, the field's own and the server's alike, then what is named
|
|
230
|
+
so: `$time` lists $timestamp: before Current Timestamp */
|
|
231
|
+
var isContext = isContextItem;
|
|
232
|
+
/* in the field's catalogue's order, the server's intended one (`sort_priority`), as a rich-text field lists
|
|
233
|
+
them; by name where the field has no catalogue */
|
|
234
|
+
var catalogueOrder = new Map((0, templateTree_1.templateContextsOf)(roots)
|
|
235
|
+
.filter(function (node) { return node.catalogue; })
|
|
236
|
+
.map(function (node, index) { var _a; return [(_a = node.reference) !== null && _a !== void 0 ? _a : '', index]; }));
|
|
237
|
+
var contextOrder = function (a, b) {
|
|
238
|
+
var _a, _b;
|
|
239
|
+
var _c = [(_a = a.insertText) !== null && _a !== void 0 ? _a : '', (_b = b.insertText) !== null && _b !== void 0 ? _b : ''], at = _c[0], bt = _c[1];
|
|
240
|
+
var _d = [catalogueOrder.get(at), catalogueOrder.get(bt)], ai = _d[0], bi = _d[1];
|
|
241
|
+
if (ai !== undefined || bi !== undefined) {
|
|
242
|
+
return (ai !== null && ai !== void 0 ? ai : Number.MAX_SAFE_INTEGER) - (bi !== null && bi !== void 0 ? bi : Number.MAX_SAFE_INTEGER) || at.localeCompare(bt);
|
|
243
|
+
}
|
|
244
|
+
return at.localeCompare(bt);
|
|
245
|
+
};
|
|
246
|
+
return __spreadArray(__spreadArray(__spreadArray([], rest.filter(isContext).sort(contextOrder), true), rest.filter(function (item) { return !isContext(item); }), true), browse, true);
|
|
247
|
+
};
|
|
248
|
+
};
|
|
249
|
+
exports.dpqlCompletionsWith = dpqlCompletionsWith;
|
|
250
|
+
var dpqlEmptyCompletionMessage = function (plainText, offset) {
|
|
251
|
+
var before = plainText.slice(0, offset);
|
|
252
|
+
if (asksForAField(before)) {
|
|
253
|
+
return 'No record fields here';
|
|
254
|
+
}
|
|
255
|
+
// a context written: what to write in it; a `$` alone or a context's name being written: that there is none
|
|
256
|
+
var inContext = (0, templateCompletions_1.unlistedContextMessage)(before);
|
|
257
|
+
if (inContext) {
|
|
258
|
+
return inContext;
|
|
259
|
+
}
|
|
260
|
+
var written = (0, dpqlHelpers_1.dpqlReferenceBeingWritten)(before);
|
|
261
|
+
return written && before[before.length - written] === '$' ? 'No templates here' : undefined;
|
|
262
|
+
};
|
|
263
|
+
exports.dpqlEmptyCompletionMessage = dpqlEmptyCompletionMessage;
|
|
264
|
+
/** What is said of the placeholders an unfinished expression is written with, for each part not chosen yet. */
|
|
265
|
+
exports.UNFINISHED_PARTS_MESSAGE = "Fill in each ".concat(renderExpressionToText_1.EXPRESSION_HOLE, " (the parts not chosen yet).");
|
|
266
|
+
/**
|
|
267
|
+
* The server's diagnostics as a DPQL editor says them. The Text view writes an unfinished expression with a
|
|
268
|
+
* placeholder for each part not chosen yet (`… > …`), and the server refuses each: "'…' can't be used here",
|
|
269
|
+
* twice, of text the author did not write (qorus#646, David's decision). Those are said once, as what to do; what
|
|
270
|
+
* the server says of anything else is said as it says it.
|
|
271
|
+
*/
|
|
272
|
+
var presentDpqlDiagnostics = function (diagnostics, plainText) {
|
|
273
|
+
var lines = plainText.split('\n');
|
|
274
|
+
var atPlaceholder = function (_a) {
|
|
275
|
+
var _b;
|
|
276
|
+
var _c = _a.range, start = _c.start, end = _c.end;
|
|
277
|
+
return start.line === end.line &&
|
|
278
|
+
((_b = lines[start.line]) === null || _b === void 0 ? void 0 : _b.slice(start.character, end.character)) === renderExpressionToText_1.EXPRESSION_HOLE;
|
|
279
|
+
};
|
|
280
|
+
var placeholders = diagnostics.filter(atPlaceholder);
|
|
281
|
+
if (!placeholders.length) {
|
|
282
|
+
return diagnostics;
|
|
283
|
+
}
|
|
284
|
+
return __spreadArray([
|
|
285
|
+
{
|
|
286
|
+
range: placeholders[0].range,
|
|
287
|
+
severity: 2,
|
|
288
|
+
source: placeholders[0].source,
|
|
289
|
+
message: exports.UNFINISHED_PARTS_MESSAGE,
|
|
290
|
+
}
|
|
291
|
+
], diagnostics.filter(function (diagnostic) { return !atPlaceholder(diagnostic); }), true);
|
|
292
|
+
};
|
|
293
|
+
exports.presentDpqlDiagnostics = presentDpqlDiagnostics;
|
|
294
|
+
//# sourceMappingURL=dpqlCompletions.js.map
|