@qoretechnologies/reqraft 0.10.66-pr.145.gcb1e59d → 0.10.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -1
- package/dist/components/Description/AllowedValuesHelp.d.ts +20 -0
- package/dist/components/Description/AllowedValuesHelp.d.ts.map +1 -0
- package/dist/components/Description/AllowedValuesHelp.js +86 -0
- package/dist/components/Description/AllowedValuesHelp.js.map +1 -0
- package/dist/components/Description/describedControl.d.ts +54 -0
- package/dist/components/Description/describedControl.d.ts.map +1 -0
- package/dist/components/Description/describedControl.js +81 -0
- package/dist/components/Description/describedControl.js.map +1 -0
- package/dist/components/Description/index.d.ts.map +1 -1
- package/dist/components/Description/index.js +3 -2
- package/dist/components/Description/index.js.map +1 -1
- package/dist/components/colorValue/colorValue.d.ts +59 -0
- package/dist/components/colorValue/colorValue.d.ts.map +1 -0
- package/dist/components/colorValue/colorValue.js +245 -0
- package/dist/components/colorValue/colorValue.js.map +1 -0
- package/dist/components/colorValue/index.d.ts +34 -0
- package/dist/components/colorValue/index.d.ts.map +1 -0
- package/dist/components/colorValue/index.js +136 -0
- package/dist/components/colorValue/index.js.map +1 -0
- package/dist/components/colorValue/labels.d.ts +12 -0
- package/dist/components/colorValue/labels.d.ts.map +1 -0
- package/dist/components/colorValue/labels.js +11 -0
- package/dist/components/colorValue/labels.js.map +1 -0
- package/dist/components/composer/Composer.d.ts +1 -1
- package/dist/components/composer/Composer.d.ts.map +1 -1
- package/dist/components/composer/Composer.js +2 -2
- package/dist/components/composer/Composer.js.map +1 -1
- package/dist/components/dpqlEditor/DpqlEditor.d.ts.map +1 -1
- package/dist/components/dpqlEditor/DpqlEditor.js +156 -10
- package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlCompletions.d.ts +39 -0
- package/dist/components/dpqlEditor/dpqlCompletions.d.ts.map +1 -0
- package/dist/components/dpqlEditor/dpqlCompletions.js +294 -0
- package/dist/components/dpqlEditor/dpqlCompletions.js.map +1 -0
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts +54 -5
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.js +420 -63
- package/dist/components/dpqlEditor/dpqlHelpers.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlInserter.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlInserter.js +67 -29
- package/dist/components/dpqlEditor/dpqlInserter.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.d.ts +17 -7
- package/dist/components/dpqlEditor/dpqlTags.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.js +44 -17
- package/dist/components/dpqlEditor/dpqlTags.js.map +1 -1
- package/dist/components/dpqlEditor/types.d.ts +94 -8
- package/dist/components/dpqlEditor/types.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.d.ts +7 -2
- package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.js +49 -17
- package/dist/components/dpqlEditor/useDpqlSession.js.map +1 -1
- package/dist/components/form/engine/CompactRow.d.ts.map +1 -1
- package/dist/components/form/engine/CompactRow.js +336 -243
- package/dist/components/form/engine/CompactRow.js.map +1 -1
- package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
- package/dist/components/form/engine/CompactToolbar.js +20 -57
- package/dist/components/form/engine/CompactToolbar.js.map +1 -1
- package/dist/components/form/engine/FormEngine.d.ts +67 -59
- package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
- package/dist/components/form/engine/FormEngine.js +606 -409
- package/dist/components/form/engine/FormEngine.js.map +1 -1
- package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
- package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
- package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
- package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
- package/dist/components/form/engine/OptionFieldMessages.d.ts +2 -18
- package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
- package/dist/components/form/engine/OptionFieldMessages.js +28 -25
- package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
- package/dist/components/form/engine/OptionsHelpDialog.d.ts.map +1 -1
- package/dist/components/form/engine/OptionsHelpDialog.js +19 -2
- package/dist/components/form/engine/OptionsHelpDialog.js.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts +2 -2
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.js +11 -31
- package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
- package/dist/components/form/engine/compactRowContext.d.ts +30 -6
- package/dist/components/form/engine/compactRowContext.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowContext.js.map +1 -1
- package/dist/components/form/engine/compactRowStyles.d.ts +56 -31
- package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowStyles.js +121 -110
- package/dist/components/form/engine/compactRowStyles.js.map +1 -1
- package/dist/components/form/engine/compactToolbarColors.d.ts +16 -0
- package/dist/components/form/engine/compactToolbarColors.d.ts.map +1 -0
- package/dist/components/form/engine/compactToolbarColors.js +21 -0
- package/dist/components/form/engine/compactToolbarColors.js.map +1 -0
- package/dist/components/form/engine/compactToolbarContext.d.ts +0 -3
- package/dist/components/form/engine/compactToolbarContext.d.ts.map +1 -1
- package/dist/components/form/engine/compactToolbarContext.js.map +1 -1
- package/dist/components/form/engine/inheritProps.d.ts +29 -0
- package/dist/components/form/engine/inheritProps.d.ts.map +1 -0
- package/dist/components/form/engine/inheritProps.js +43 -0
- package/dist/components/form/engine/inheritProps.js.map +1 -0
- package/dist/components/form/engine/operatorSummary.d.ts +26 -0
- package/dist/components/form/engine/operatorSummary.d.ts.map +1 -0
- package/dist/components/form/engine/operatorSummary.js +35 -0
- package/dist/components/form/engine/operatorSummary.js.map +1 -0
- package/dist/components/form/engine/readFirst.d.ts +26 -22
- package/dist/components/form/engine/readFirst.d.ts.map +1 -1
- package/dist/components/form/engine/readFirst.js +79 -115
- package/dist/components/form/engine/readFirst.js.map +1 -1
- package/dist/components/form/engine/readFirstColors.d.ts +30 -0
- package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
- package/dist/components/form/engine/readFirstColors.js +51 -0
- package/dist/components/form/engine/readFirstColors.js.map +1 -0
- package/dist/components/form/engine/rowFocus.d.ts +3 -9
- package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
- package/dist/components/form/engine/rowFocus.js +30 -19
- package/dist/components/form/engine/rowFocus.js.map +1 -1
- package/dist/components/form/engine/typeChoices.d.ts +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.js +2 -1
- package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
- package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
- package/dist/components/form/engine/variants/variantParts.js +25 -17
- package/dist/components/form/engine/variants/variantParts.js.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.js +7 -6
- package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
- package/dist/components/form/expressions/ExpressionField.d.ts +67 -3
- package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
- package/dist/components/form/expressions/ExpressionField.js +536 -114
- package/dist/components/form/expressions/ExpressionField.js.map +1 -1
- package/dist/components/form/expressions/argumentPresence.d.ts +14 -0
- package/dist/components/form/expressions/argumentPresence.d.ts.map +1 -1
- package/dist/components/form/expressions/argumentPresence.js +16 -1
- package/dist/components/form/expressions/argumentPresence.js.map +1 -1
- package/dist/components/form/expressions/builder/argumentDetail.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/argumentDetail.js +4 -1
- package/dist/components/form/expressions/builder/argumentDetail.js.map +1 -1
- package/dist/components/form/expressions/builder/argumentLabel.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/argumentLabel.js +30 -11
- package/dist/components/form/expressions/builder/argumentLabel.js.map +1 -1
- package/dist/components/form/expressions/builder/argumentWrapper.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/argumentWrapper.js +3 -1
- package/dist/components/form/expressions/builder/argumentWrapper.js.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts +9 -0
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js +30 -27
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js.map +1 -1
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts +1 -1
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js +7 -5
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js.map +1 -1
- package/dist/components/form/expressions/builder/index.d.ts +34 -2
- package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/index.js +170 -80
- package/dist/components/form/expressions/builder/index.js.map +1 -1
- package/dist/components/form/expressions/builder/item.d.ts +6 -2
- package/dist/components/form/expressions/builder/item.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/item.js +19 -5
- package/dist/components/form/expressions/builder/item.js.map +1 -1
- package/dist/components/form/expressions/builder/renderTemplate.js +1 -1
- package/dist/components/form/expressions/builder/renderTemplate.js.map +1 -1
- package/dist/components/form/expressions/dpqlMockRecordPath.d.ts +11 -0
- package/dist/components/form/expressions/dpqlMockRecordPath.d.ts.map +1 -0
- package/dist/components/form/expressions/dpqlMockRecordPath.js +254 -0
- package/dist/components/form/expressions/dpqlMockRecordPath.js.map +1 -0
- package/dist/components/form/expressions/expressionOperands.d.ts +16 -0
- package/dist/components/form/expressions/expressionOperands.d.ts.map +1 -0
- package/dist/components/form/expressions/expressionOperands.js +97 -0
- package/dist/components/form/expressions/expressionOperands.js.map +1 -0
- package/dist/components/form/expressions/fieldPath.d.ts +24 -0
- package/dist/components/form/expressions/fieldPath.d.ts.map +1 -0
- package/dist/components/form/expressions/fieldPath.js +152 -0
- package/dist/components/form/expressions/fieldPath.js.map +1 -0
- package/dist/components/form/expressions/loneValue.d.ts +17 -0
- package/dist/components/form/expressions/loneValue.d.ts.map +1 -0
- package/dist/components/form/expressions/loneValue.js +33 -0
- package/dist/components/form/expressions/loneValue.js.map +1 -0
- package/dist/components/form/expressions/mockExpressions.d.ts.map +1 -1
- package/dist/components/form/expressions/mockExpressions.js +22 -5
- package/dist/components/form/expressions/mockExpressions.js.map +1 -1
- package/dist/components/form/expressions/renderExpressionToText.d.ts +2 -0
- package/dist/components/form/expressions/renderExpressionToText.d.ts.map +1 -1
- package/dist/components/form/expressions/renderExpressionToText.js +37 -25
- package/dist/components/form/expressions/renderExpressionToText.js.map +1 -1
- package/dist/components/form/expressions/textOfExpression.d.ts +18 -0
- package/dist/components/form/expressions/textOfExpression.d.ts.map +1 -0
- package/dist/components/form/expressions/textOfExpression.js +49 -0
- package/dist/components/form/expressions/textOfExpression.js.map +1 -0
- package/dist/components/form/expressions/types.d.ts +12 -0
- package/dist/components/form/expressions/types.d.ts.map +1 -1
- package/dist/components/form/expressions/types.js +6 -1
- package/dist/components/form/expressions/types.js.map +1 -1
- package/dist/components/form/expressions/useExpressionType.d.ts +26 -0
- package/dist/components/form/expressions/useExpressionType.d.ts.map +1 -0
- package/dist/components/form/expressions/useExpressionType.js +181 -0
- package/dist/components/form/expressions/useExpressionType.js.map +1 -0
- package/dist/components/form/expressions/useRenderExpression.d.ts.map +1 -1
- package/dist/components/form/expressions/useRenderExpression.js +13 -9
- package/dist/components/form/expressions/useRenderExpression.js.map +1 -1
- package/dist/components/form/expressions/wildcardExpressions.d.ts +27 -0
- package/dist/components/form/expressions/wildcardExpressions.d.ts.map +1 -0
- package/dist/components/form/expressions/wildcardExpressions.js +101 -0
- package/dist/components/form/expressions/wildcardExpressions.js.map +1 -0
- package/dist/components/form/fields/Field.d.ts.map +1 -1
- package/dist/components/form/fields/Field.js +39 -18
- package/dist/components/form/fields/Field.js.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts +0 -7
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.js +46 -35
- package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
- package/dist/components/form/fields/allowed-values/choicePicture.d.ts +37 -0
- package/dist/components/form/fields/allowed-values/choicePicture.d.ts.map +1 -0
- package/dist/components/form/fields/allowed-values/choicePicture.js +64 -0
- package/dist/components/form/fields/allowed-values/choicePicture.js.map +1 -0
- package/dist/components/form/fields/array/ArrayAuto.d.ts.map +1 -1
- package/dist/components/form/fields/array/ArrayAuto.js +24 -0
- package/dist/components/form/fields/array/ArrayAuto.js.map +1 -1
- package/dist/components/form/fields/array/ArrayAutoField.d.ts.map +1 -1
- package/dist/components/form/fields/array/ArrayAutoField.js +36 -13
- package/dist/components/form/fields/array/ArrayAutoField.js.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts +30 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.js +123 -79
- package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
- package/dist/components/form/fields/auto/hostEditorValue.d.ts +30 -0
- package/dist/components/form/fields/auto/hostEditorValue.d.ts.map +1 -0
- package/dist/components/form/fields/auto/hostEditorValue.js +53 -0
- package/dist/components/form/fields/auto/hostEditorValue.js.map +1 -0
- package/dist/components/form/fields/binary/Binary.d.ts.map +1 -1
- package/dist/components/form/fields/binary/Binary.js +23 -3
- package/dist/components/form/fields/binary/Binary.js.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.d.ts +5 -0
- package/dist/components/form/fields/boolean/Boolean.d.ts.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.js +9 -1
- package/dist/components/form/fields/boolean/Boolean.js.map +1 -1
- package/dist/components/form/fields/color/Color.d.ts +103 -16
- package/dist/components/form/fields/color/Color.d.ts.map +1 -1
- package/dist/components/form/fields/color/Color.js +616 -16
- package/dist/components/form/fields/color/Color.js.map +1 -1
- package/dist/components/form/fields/emittedValues.d.ts +34 -3
- package/dist/components/form/fields/emittedValues.d.ts.map +1 -1
- package/dist/components/form/fields/emittedValues.js +24 -1
- package/dist/components/form/fields/emittedValues.js.map +1 -1
- package/dist/components/form/fields/file/File.d.ts +1 -1
- package/dist/components/form/fields/file/File.d.ts.map +1 -1
- package/dist/components/form/fields/file/File.js +4 -2
- package/dist/components/form/fields/file/File.js.map +1 -1
- package/dist/components/form/fields/long-string/LongString.d.ts +1 -7
- package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
- package/dist/components/form/fields/long-string/LongString.js +30 -13
- package/dist/components/form/fields/long-string/LongString.js.map +1 -1
- package/dist/components/form/fields/markdown/MarkdownView.js +1 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts.map +1 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js +10 -7
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
- package/dist/components/form/fields/number/Number.d.ts +7 -4
- package/dist/components/form/fields/number/Number.d.ts.map +1 -1
- package/dist/components/form/fields/number/Number.js +45 -18
- package/dist/components/form/fields/number/Number.js.map +1 -1
- package/dist/components/form/fields/object/Object.d.ts +1 -1
- package/dist/components/form/fields/object/Object.d.ts.map +1 -1
- package/dist/components/form/fields/object/Object.js +4 -2
- package/dist/components/form/fields/object/Object.js.map +1 -1
- package/dist/components/form/fields/pendingEdit.d.ts +52 -0
- package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
- package/dist/components/form/fields/pendingEdit.js +79 -0
- package/dist/components/form/fields/pendingEdit.js.map +1 -0
- package/dist/components/form/fields/radio-group/RadioGroup.d.ts.map +1 -1
- package/dist/components/form/fields/radio-group/RadioGroup.js +8 -13
- package/dist/components/form/fields/radio-group/RadioGroup.js.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts +20 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.js +426 -91
- package/dist/components/form/fields/rich-text/RichText.js.map +1 -1
- package/dist/components/form/fields/rich-text/useTemplateTags.d.ts +18 -0
- package/dist/components/form/fields/rich-text/useTemplateTags.d.ts.map +1 -0
- package/dist/components/form/fields/rich-text/useTemplateTags.js +80 -0
- package/dist/components/form/fields/rich-text/useTemplateTags.js.map +1 -0
- package/dist/components/form/fields/schema-definition/CatalogLeafForm.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/CatalogLeafForm.js +4 -1
- package/dist/components/form/fields/schema-definition/CatalogLeafForm.js.map +1 -1
- package/dist/components/form/fields/schema-definition/CatalogNodeEditor.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js +20 -5
- package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js.map +1 -1
- package/dist/components/form/fields/schema-definition/TableEditor.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/TableEditor.js +10 -2
- package/dist/components/form/fields/schema-definition/TableEditor.js.map +1 -1
- package/dist/components/form/fields/schema-definition/index.d.ts.map +1 -1
- package/dist/components/form/fields/schema-definition/index.js +8 -4
- package/dist/components/form/fields/schema-definition/index.js.map +1 -1
- package/dist/components/form/fields/select/Select.d.ts +10 -1
- package/dist/components/form/fields/select/Select.d.ts.map +1 -1
- package/dist/components/form/fields/select/Select.js +28 -14
- package/dist/components/form/fields/select/Select.js.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.d.ts +5 -0
- package/dist/components/form/fields/select/SelectCollection.d.ts.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.js +25 -12
- package/dist/components/form/fields/select/SelectCollection.js.map +1 -1
- package/dist/components/form/fields/select/unavailableRow.d.ts +23 -0
- package/dist/components/form/fields/select/unavailableRow.d.ts.map +1 -0
- package/dist/components/form/fields/select/unavailableRow.js +55 -0
- package/dist/components/form/fields/select/unavailableRow.js.map +1 -0
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts +11 -5
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts.map +1 -1
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js +21 -5
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
- package/dist/components/form/fields/template/TemplateBrowser.d.ts +16 -0
- package/dist/components/form/fields/template/TemplateBrowser.d.ts.map +1 -0
- package/dist/components/form/fields/template/TemplateBrowser.js +89 -0
- package/dist/components/form/fields/template/TemplateBrowser.js.map +1 -0
- package/dist/components/form/fields/template/TemplateField.d.ts +105 -1
- package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateField.js +706 -168
- package/dist/components/form/fields/template/TemplateField.js.map +1 -1
- package/dist/components/form/fields/template/TemplatePicker.d.ts +54 -0
- package/dist/components/form/fields/template/TemplatePicker.d.ts.map +1 -0
- package/dist/components/form/fields/template/TemplatePicker.js +459 -0
- package/dist/components/form/fields/template/TemplatePicker.js.map +1 -0
- package/dist/components/form/fields/template/TemplateText.d.ts +0 -17
- package/dist/components/form/fields/template/TemplateText.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateText.js +22 -16
- package/dist/components/form/fields/template/TemplateText.js.map +1 -1
- package/dist/components/form/fields/template/referenceNames.d.ts +63 -0
- package/dist/components/form/fields/template/referenceNames.d.ts.map +1 -0
- package/dist/components/form/fields/template/referenceNames.js +69 -0
- package/dist/components/form/fields/template/referenceNames.js.map +1 -0
- package/dist/components/form/fields/template/writtenAsText.d.ts +61 -0
- package/dist/components/form/fields/template/writtenAsText.d.ts.map +1 -0
- package/dist/components/form/fields/template/writtenAsText.js +204 -0
- package/dist/components/form/fields/template/writtenAsText.js.map +1 -0
- package/dist/components/form/index.d.ts +12 -2
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +25 -3
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/form/typeSentenceForm.d.ts +17 -0
- package/dist/components/form/typeSentenceForm.d.ts.map +1 -0
- package/dist/components/form/typeSentenceForm.js +54 -0
- package/dist/components/form/typeSentenceForm.js.map +1 -0
- package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.js +19 -9
- package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
- package/dist/components/log/Log.d.ts.map +1 -1
- package/dist/components/log/Log.js +20 -8
- package/dist/components/log/Log.js.map +1 -1
- package/dist/components/menu/Menu.d.ts.map +1 -1
- package/dist/components/menu/Menu.js +19 -10
- package/dist/components/menu/Menu.js.map +1 -1
- package/dist/components/smartEditor/CompletionMenu.d.ts +53 -0
- package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
- package/dist/components/smartEditor/CompletionMenu.js +302 -0
- package/dist/components/smartEditor/CompletionMenu.js.map +1 -0
- package/dist/components/smartEditor/MarkdownDoc.d.ts +1 -1
- package/dist/components/smartEditor/MarkdownDoc.js +3 -3
- package/dist/components/smartEditor/MarkdownDoc.js.map +1 -1
- package/dist/components/smartEditor/SmartEditor.d.ts.map +1 -1
- package/dist/components/smartEditor/SmartEditor.js +616 -190
- package/dist/components/smartEditor/SmartEditor.js.map +1 -1
- package/dist/components/smartEditor/completionStyle.d.ts +28 -0
- package/dist/components/smartEditor/completionStyle.d.ts.map +1 -0
- package/dist/components/smartEditor/completionStyle.js +79 -0
- package/dist/components/smartEditor/completionStyle.js.map +1 -0
- package/dist/components/smartEditor/contextTitle.d.ts +10 -0
- package/dist/components/smartEditor/contextTitle.d.ts.map +1 -0
- package/dist/components/smartEditor/contextTitle.js +21 -0
- package/dist/components/smartEditor/contextTitle.js.map +1 -0
- package/dist/components/smartEditor/editingAids.d.ts +64 -0
- package/dist/components/smartEditor/editingAids.d.ts.map +1 -0
- package/dist/components/smartEditor/editingAids.js +213 -0
- package/dist/components/smartEditor/editingAids.js.map +1 -0
- package/dist/components/smartEditor/index.d.ts +6 -1
- package/dist/components/smartEditor/index.d.ts.map +1 -1
- package/dist/components/smartEditor/index.js +19 -1
- package/dist/components/smartEditor/index.js.map +1 -1
- package/dist/components/smartEditor/templateCompletions.d.ts +98 -0
- package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
- package/dist/components/smartEditor/templateCompletions.js +380 -0
- package/dist/components/smartEditor/templateCompletions.js.map +1 -0
- package/dist/components/smartEditor/typedReferences.d.ts +34 -0
- package/dist/components/smartEditor/typedReferences.d.ts.map +1 -0
- package/dist/components/smartEditor/typedReferences.js +179 -0
- package/dist/components/smartEditor/typedReferences.js.map +1 -0
- package/dist/components/smartEditor/types.d.ts +116 -2
- package/dist/components/smartEditor/types.d.ts.map +1 -1
- package/dist/components/smartEditor/useEditingAids.d.ts +38 -0
- package/dist/components/smartEditor/useEditingAids.d.ts.map +1 -0
- package/dist/components/smartEditor/useEditingAids.js +392 -0
- package/dist/components/smartEditor/useEditingAids.js.map +1 -0
- package/dist/components/smartEditor/useLspAutocomplete.d.ts +106 -3
- package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.js +592 -149
- package/dist/components/smartEditor/useLspAutocomplete.js.map +1 -1
- package/dist/components/smartEditor/useLspHover.d.ts +33 -7
- package/dist/components/smartEditor/useLspHover.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspHover.js +364 -35
- package/dist/components/smartEditor/useLspHover.js.map +1 -1
- package/dist/components/smartEditor/useLspSemanticTokens.js +1 -1
- package/dist/components/smartEditor/useLspSemanticTokens.js.map +1 -1
- package/dist/components/smartEditor/useLspSession.d.ts +6 -0
- package/dist/components/smartEditor/useLspSession.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspSession.js +7 -6
- package/dist/components/smartEditor/useLspSession.js.map +1 -1
- package/dist/components/smartEditor/useLspSignatureHelp.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspSignatureHelp.js +6 -11
- package/dist/components/smartEditor/useLspSignatureHelp.js.map +1 -1
- package/dist/components/smartEditor/useTabCameIn.d.ts +10 -0
- package/dist/components/smartEditor/useTabCameIn.d.ts.map +1 -0
- package/dist/components/smartEditor/useTabCameIn.js +42 -0
- package/dist/components/smartEditor/useTabCameIn.js.map +1 -0
- package/dist/components/supportTicket/AttachmentChips.d.ts.map +1 -1
- package/dist/components/supportTicket/AttachmentChips.js +15 -5
- package/dist/components/supportTicket/AttachmentChips.js.map +1 -1
- package/dist/components/supportTicket/InterfaceReferenceTags.d.ts +2 -3
- package/dist/components/supportTicket/InterfaceReferenceTags.d.ts.map +1 -1
- package/dist/components/supportTicket/InterfaceReferenceTags.js.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.d.ts +9 -3
- package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.js +38 -23
- package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
- package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
- package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketHeader.js +21 -6
- package/dist/components/supportTicket/TicketHeader.js.map +1 -1
- package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
- package/dist/components/supportTicket/TicketReplyBox.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketReplyBox.js +10 -29
- package/dist/components/supportTicket/TicketReplyBox.js.map +1 -1
- package/dist/components/supportTicket/useLoadedImages.d.ts +0 -10
- package/dist/components/supportTicket/useLoadedImages.d.ts.map +1 -1
- package/dist/components/supportTicket/useLoadedImages.js +1 -63
- package/dist/components/supportTicket/useLoadedImages.js.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.js +10 -9
- package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
- package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
- package/dist/components/ticketThread/TicketThread.js +52 -21
- package/dist/components/ticketThread/TicketThread.js.map +1 -1
- package/dist/helpers/allowedValues.d.ts +21 -12
- package/dist/helpers/allowedValues.d.ts.map +1 -1
- package/dist/helpers/allowedValues.js +40 -20
- package/dist/helpers/allowedValues.js.map +1 -1
- package/dist/helpers/descriptionTooltip.d.ts +46 -0
- package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
- package/dist/helpers/descriptionTooltip.js +76 -0
- package/dist/helpers/descriptionTooltip.js.map +1 -0
- package/dist/helpers/domProps.d.ts +5 -0
- package/dist/helpers/domProps.d.ts.map +1 -0
- package/dist/helpers/domProps.js +47 -0
- package/dist/helpers/domProps.js.map +1 -0
- package/dist/helpers/expressions.d.ts +115 -4
- package/dist/helpers/expressions.d.ts.map +1 -1
- package/dist/helpers/expressions.js +247 -29
- package/dist/helpers/expressions.js.map +1 -1
- package/dist/helpers/hoveringPointer.d.ts +26 -0
- package/dist/helpers/hoveringPointer.d.ts.map +1 -0
- package/dist/helpers/hoveringPointer.js +29 -0
- package/dist/helpers/hoveringPointer.js.map +1 -0
- package/dist/helpers/markdownText.d.ts +14 -0
- package/dist/helpers/markdownText.d.ts.map +1 -0
- package/dist/helpers/markdownText.js +160 -0
- package/dist/helpers/markdownText.js.map +1 -0
- package/dist/helpers/noDescription.d.ts +9 -0
- package/dist/helpers/noDescription.d.ts.map +1 -0
- package/dist/helpers/noDescription.js +13 -0
- package/dist/helpers/noDescription.js.map +1 -0
- package/dist/helpers/optionUiTypes.d.ts +2 -2
- package/dist/helpers/qorusTypeCatalogue.d.ts +147 -0
- package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
- package/dist/helpers/qorusTypeCatalogue.js +505 -0
- package/dist/helpers/qorusTypeCatalogue.js.map +1 -0
- package/dist/helpers/readableColors.d.ts +36 -0
- package/dist/helpers/readableColors.d.ts.map +1 -0
- package/dist/helpers/readableColors.js +116 -0
- package/dist/helpers/readableColors.js.map +1 -0
- package/dist/helpers/recordFieldReference.d.ts +15 -0
- package/dist/helpers/recordFieldReference.d.ts.map +1 -0
- package/dist/helpers/recordFieldReference.js +89 -0
- package/dist/helpers/recordFieldReference.js.map +1 -0
- package/dist/helpers/singleLineString.d.ts.map +1 -1
- package/dist/helpers/singleLineString.js +0 -1
- package/dist/helpers/singleLineString.js.map +1 -1
- package/dist/helpers/templateCatalogue.d.ts +104 -0
- package/dist/helpers/templateCatalogue.d.ts.map +1 -0
- package/dist/helpers/templateCatalogue.js +116 -0
- package/dist/helpers/templateCatalogue.js.map +1 -0
- package/dist/helpers/templateCatalogueContext.d.ts +19 -0
- package/dist/helpers/templateCatalogueContext.d.ts.map +1 -0
- package/dist/helpers/templateCatalogueContext.js +31 -0
- package/dist/helpers/templateCatalogueContext.js.map +1 -0
- package/dist/helpers/templateItems.d.ts +2 -2
- package/dist/helpers/templateItems.d.ts.map +1 -1
- package/dist/helpers/templateItems.js +6 -4
- package/dist/helpers/templateItems.js.map +1 -1
- package/dist/helpers/templateText.d.ts +1 -0
- package/dist/helpers/templateText.d.ts.map +1 -1
- package/dist/helpers/templateText.js +7 -3
- package/dist/helpers/templateText.js.map +1 -1
- package/dist/helpers/templateTree.d.ts +248 -0
- package/dist/helpers/templateTree.d.ts.map +1 -0
- package/dist/helpers/templateTree.js +892 -0
- package/dist/helpers/templateTree.js.map +1 -0
- package/dist/helpers/templateType.d.ts +28 -0
- package/dist/helpers/templateType.d.ts.map +1 -0
- package/dist/helpers/templateType.js +30 -0
- package/dist/helpers/templateType.js.map +1 -0
- package/dist/helpers/templates.d.ts +86 -16
- package/dist/helpers/templates.d.ts.map +1 -1
- package/dist/helpers/templates.js +305 -45
- package/dist/helpers/templates.js.map +1 -1
- package/dist/helpers/validations.d.ts +27 -0
- package/dist/helpers/validations.d.ts.map +1 -1
- package/dist/helpers/validations.js +169 -39
- package/dist/helpers/validations.js.map +1 -1
- package/dist/helpers/webLink.d.ts +8 -0
- package/dist/helpers/webLink.d.ts.map +1 -0
- package/dist/helpers/webLink.js +29 -0
- package/dist/helpers/webLink.js.map +1 -0
- package/dist/hooks/useQorusTypes.d.ts +12 -17
- package/dist/hooks/useQorusTypes.d.ts.map +1 -1
- package/dist/hooks/useQorusTypes.js +44 -172
- package/dist/hooks/useQorusTypes.js.map +1 -1
- package/dist/hooks/useReadableIntentShade.d.ts +9 -0
- package/dist/hooks/useReadableIntentShade.d.ts.map +1 -0
- package/dist/hooks/useReadableIntentShade.js +23 -0
- package/dist/hooks/useReadableIntentShade.js.map +1 -0
- package/dist/hooks/useReadableOpacity.d.ts +6 -0
- package/dist/hooks/useReadableOpacity.d.ts.map +1 -0
- package/dist/hooks/useReadableOpacity.js +17 -0
- package/dist/hooks/useReadableOpacity.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -1
- package/dist/index.js.map +1 -1
- package/dist/tracking/ui/ExperimentCard.d.ts +1 -1
- package/dist/tracking/ui/ExperimentCard.d.ts.map +1 -1
- package/dist/tracking/ui/ExperimentCard.js +26 -10
- package/dist/tracking/ui/ExperimentCard.js.map +1 -1
- package/dist/tracking/ui/card.d.ts +2 -2
- package/dist/tracking/ui/card.d.ts.map +1 -1
- package/dist/tracking/ui/card.js +2 -2
- package/dist/tracking/ui/card.js.map +1 -1
- package/dist/tracking/ui/readable.d.ts +14 -0
- package/dist/tracking/ui/readable.d.ts.map +1 -0
- package/dist/tracking/ui/readable.js +60 -0
- package/dist/tracking/ui/readable.js.map +1 -0
- package/dist/utils/fetch.d.ts +9 -2
- package/dist/utils/fetch.d.ts.map +1 -1
- package/dist/utils/fetch.js +6 -5
- package/dist/utils/fetch.js.map +1 -1
- package/dist/utils/lspClient.types.d.ts +2 -0
- package/dist/utils/lspClient.types.d.ts.map +1 -1
- package/dist/utils/websocket.d.ts +65 -2
- package/dist/utils/websocket.d.ts.map +1 -1
- package/dist/utils/websocket.js +276 -44
- package/dist/utils/websocket.js.map +1 -1
- package/package.json +14 -6
- package/.claude/CLAUDE.md +0 -317
- package/.tasks/EXPORT_EXPRESSION_BUILDER.md +0 -38
- package/.tasks/EXPRESSION_BUILDER_REPORT.md +0 -149
- package/.tasks/EXPRESSION_FIELD_SEAMS.md +0 -66
- package/.tasks/FIELD_STACK_REPORT.md +0 -234
- package/.tasks/FORM_ENGINE_COMPACT_READ_FIRST.md +0 -558
- package/.tasks/FORM_ENGINE_EXPRESSIONS.md +0 -197
- package/.tasks/FORM_ENGINE_OPTIONS_SYNC.md +0 -95
- package/.tasks/FORM_FIELD_EXTRAS.md +0 -72
- package/.tasks/INDEX.md +0 -111
- package/.tasks/LSP_SHARED_CONNECTION.md +0 -75
- package/.tasks/QONSOLE_ASSIST_FEATURES.md +0 -306
- package/.tasks/RENDER_EXPRESSION_LSP.md +0 -159
- package/.tasks/REQRAFT_AUTO_FIELD.md +0 -176
- package/.tasks/SCHEMA_DEFINITION_FIELD.md +0 -250
- package/.tasks/SMART_EDITOR_CONTEXT_AND_POLISH.md +0 -340
- package/.tasks/SMART_EDITOR_LSP_FEATURES.md +0 -299
- package/.tasks/SMART_EDITOR_REVIEW_FOLLOWUPS.md +0 -280
- package/.tasks/SMART_EDITOR_UX_POLISH.md +0 -383
- package/.tasks/SMART_EDITOR_VISUAL_POLISH.md +0 -246
- package/.tasks/STORY_NETWORK_ISOLATION.md +0 -98
- package/.tasks/TEMPLATE_TOKEN_GRAMMAR.md +0 -72
- package/CODE_OF_CONDUCT.md +0 -105
- package/CONTRIBUTING.MD +0 -78
- package/SECURITY.md +0 -3
- package/chromatic.config.json +0 -5
- package/design/COMPACT_ENGINE_REDESIGN.md +0 -156
- package/design/COMPACT_INFO_DISPLAY.md +0 -87
- package/design/COMPACT_PARITY.md +0 -85
- package/design/EXPRESSION_BUILDER_REPORT_STRATEGY.md +0 -92
- package/design/FORM_ENGINE_COMPACT.md +0 -300
- package/design/FORM_ENGINE_COMPACT_UX_PLAN.md +0 -353
- package/design/FORM_ENGINE_EXPRESSIONS.md +0 -257
- package/design/FORM_ENGINE_FIELD_MIGRATION.md +0 -419
- package/design/IDE_INTEGRATION.md +0 -64
- package/design/RENDER_EXPRESSION_TRANSPORT.md +0 -156
- package/design/SELECT_DIALOG_FLOOR.md +0 -86
- package/design/SMART_EDITOR_UX.md +0 -438
- package/design/TRACKING.md +0 -290
- package/design/UNAVAILABLE_ALLOWED_VALUES.md +0 -226
- package/dist/components/form/engine/formAppearance.d.ts +0 -49
- package/dist/components/form/engine/formAppearance.d.ts.map +0 -1
- package/dist/components/form/engine/formAppearance.js +0 -50
- package/dist/components/form/engine/formAppearance.js.map +0 -1
- package/dist/components/form/fields/ChoiceGroupHeading.d.ts +0 -21
- package/dist/components/form/fields/ChoiceGroupHeading.d.ts.map +0 -1
- package/dist/components/form/fields/ChoiceGroupHeading.js +0 -33
- package/dist/components/form/fields/ChoiceGroupHeading.js.map +0 -1
- package/dist/components/form/fields/allowed-values/savedValues.d.ts +0 -30
- package/dist/components/form/fields/allowed-values/savedValues.d.ts.map +0 -1
- package/dist/components/form/fields/allowed-values/savedValues.js +0 -39
- package/dist/components/form/fields/allowed-values/savedValues.js.map +0 -1
- package/dist/helpers/fieldDescription.d.ts +0 -16
- package/dist/helpers/fieldDescription.d.ts.map +0 -1
- package/dist/helpers/fieldDescription.js +0 -40
- package/dist/helpers/fieldDescription.js.map +0 -1
- package/src/components/Description/index.tsx +0 -254
- package/src/components/Description/markdownRendererContext.tsx +0 -29
- package/src/components/FocusedEditing/index.tsx +0 -50
- package/src/components/codeSize/index.tsx +0 -79
- package/src/components/composer/Composer.stories.tsx +0 -238
- package/src/components/composer/Composer.tsx +0 -554
- package/src/components/composer/helpers.ts +0 -74
- package/src/components/composer/index.ts +0 -2
- package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -1183
- package/src/components/dpqlEditor/DpqlEditor.tsx +0 -219
- package/src/components/dpqlEditor/dpqlHelpers.ts +0 -287
- package/src/components/dpqlEditor/dpqlInserter.ts +0 -121
- package/src/components/dpqlEditor/dpqlProbe.ts +0 -165
- package/src/components/dpqlEditor/dpqlTags.ts +0 -114
- package/src/components/dpqlEditor/index.ts +0 -41
- package/src/components/dpqlEditor/types.ts +0 -203
- package/src/components/dpqlEditor/useDpqlProbe.ts +0 -33
- package/src/components/dpqlEditor/useDpqlSession.ts +0 -411
- package/src/components/form/engine/CompactRow.tsx +0 -2740
- package/src/components/form/engine/CompactToolbar.tsx +0 -399
- package/src/components/form/engine/FormEngine.stories.tsx +0 -9934
- package/src/components/form/engine/FormEngine.tsx +0 -4891
- package/src/components/form/engine/FormEngineAppearance.stories.tsx +0 -609
- package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
- package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -335
- package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
- package/src/components/form/engine/OptionFieldMessages.tsx +0 -548
- package/src/components/form/engine/OptionsHelpDialog.tsx +0 -29
- package/src/components/form/engine/__fixtures__/basicFormOptions.ts +0 -309
- package/src/components/form/engine/__fixtures__/fieldChromeOptions.ts +0 -45
- package/src/components/form/engine/_structuredData/SchemaDataView.stories.tsx +0 -233
- package/src/components/form/engine/_structuredData/SchemaDataView.tsx +0 -755
- package/src/components/form/engine/_structuredData/StructuredDataView.stories.tsx +0 -85
- package/src/components/form/engine/_structuredData/StructuredDataView.tsx +0 -75
- package/src/components/form/engine/_structuredData/structuredData.ts +0 -145
- package/src/components/form/engine/compactRowContext.ts +0 -153
- package/src/components/form/engine/compactRowStyles.ts +0 -1087
- package/src/components/form/engine/compactToolbarContext.ts +0 -72
- package/src/components/form/engine/formAppearance.ts +0 -79
- package/src/components/form/engine/optionActions.ts +0 -128
- package/src/components/form/engine/optionsContext.ts +0 -24
- package/src/components/form/engine/readFirst.ts +0 -1090
- package/src/components/form/engine/rendererTypes.ts +0 -107
- package/src/components/form/engine/revealRow.ts +0 -123
- package/src/components/form/engine/rowFocus.ts +0 -112
- package/src/components/form/engine/rowMenuContext.ts +0 -159
- package/src/components/form/engine/rowOpenPicker.ts +0 -27
- package/src/components/form/engine/typeChoices.ts +0 -63
- package/src/components/form/engine/variants/FormEngineVariants.stories.tsx +0 -159
- package/src/components/form/engine/variants/VariantCalmTable.tsx +0 -244
- package/src/components/form/engine/variants/VariantCards.tsx +0 -212
- package/src/components/form/engine/variants/VariantFocus.tsx +0 -382
- package/src/components/form/engine/variants/VariantMinimal.tsx +0 -170
- package/src/components/form/engine/variants/focusDemo.ts +0 -145
- package/src/components/form/engine/variants/variantModel.ts +0 -223
- package/src/components/form/engine/variants/variantParts.tsx +0 -313
- package/src/components/form/expressions/DpqlRendering.tsx +0 -85
- package/src/components/form/expressions/ExpressionField.stories.tsx +0 -1395
- package/src/components/form/expressions/ExpressionField.tsx +0 -503
- package/src/components/form/expressions/argumentPresence.ts +0 -213
- package/src/components/form/expressions/builder/ExpressionBuilder.stories.tsx +0 -1683
- package/src/components/form/expressions/builder/argumentDetail.tsx +0 -17
- package/src/components/form/expressions/builder/argumentLabel.tsx +0 -146
- package/src/components/form/expressions/builder/argumentSlot.tsx +0 -101
- package/src/components/form/expressions/builder/argumentWrapper.tsx +0 -243
- package/src/components/form/expressions/builder/confirmMismatchedTypesModal.tsx +0 -120
- package/src/components/form/expressions/builder/confirmUnsupportedTypeModal.tsx +0 -69
- package/src/components/form/expressions/builder/index.tsx +0 -1545
- package/src/components/form/expressions/builder/item.tsx +0 -89
- package/src/components/form/expressions/builder/moveToPositionStrip.tsx +0 -156
- package/src/components/form/expressions/builder/renderTemplate.tsx +0 -42
- package/src/components/form/expressions/dpqlMockLanguage.ts +0 -566
- package/src/components/form/expressions/dpqlMockLsp.ts +0 -126
- package/src/components/form/expressions/mockExpressions.ts +0 -317
- package/src/components/form/expressions/renderExpressionToText.ts +0 -152
- package/src/components/form/expressions/types.ts +0 -110
- package/src/components/form/expressions/useExpressions.ts +0 -101
- package/src/components/form/expressions/useRenderExpression.ts +0 -165
- package/src/components/form/fields/ChoiceGroupHeading.tsx +0 -38
- package/src/components/form/fields/Field.stories.tsx +0 -143
- package/src/components/form/fields/Field.tsx +0 -734
- package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -321
- package/src/components/form/fields/allowed-values/savedValues.ts +0 -64
- package/src/components/form/fields/array/ArrayAuto.tsx +0 -237
- package/src/components/form/fields/array/ArrayAutoField.stories.tsx +0 -475
- package/src/components/form/fields/array/ArrayAutoField.tsx +0 -367
- package/src/components/form/fields/auto/AutoFormField.stories.tsx +0 -825
- package/src/components/form/fields/auto/AutoFormField.tsx +0 -1183
- package/src/components/form/fields/binary/Binary.stories.tsx +0 -122
- package/src/components/form/fields/binary/Binary.tsx +0 -91
- package/src/components/form/fields/boolean/Boolean.stories.tsx +0 -125
- package/src/components/form/fields/boolean/Boolean.tsx +0 -34
- package/src/components/form/fields/byte-size/ByteSize.stories.tsx +0 -87
- package/src/components/form/fields/byte-size/ByteSize.tsx +0 -58
- package/src/components/form/fields/color/Color.stories.tsx +0 -99
- package/src/components/form/fields/color/Color.tsx +0 -46
- package/src/components/form/fields/cron/Cron.stories.tsx +0 -68
- package/src/components/form/fields/cron/Cron.tsx +0 -80
- package/src/components/form/fields/date/Date.stories.tsx +0 -77
- package/src/components/form/fields/date/Date.tsx +0 -55
- package/src/components/form/fields/emittedValues.ts +0 -70
- package/src/components/form/fields/file/File.stories.tsx +0 -161
- package/src/components/form/fields/file/File.tsx +0 -227
- package/src/components/form/fields/long-string/LongString.stories.tsx +0 -147
- package/src/components/form/fields/long-string/LongString.tsx +0 -141
- package/src/components/form/fields/markdown/Markdown.stories.tsx +0 -76
- package/src/components/form/fields/markdown/Markdown.tsx +0 -81
- package/src/components/form/fields/markdown/MarkdownView.tsx +0 -222
- package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +0 -140
- package/src/components/form/fields/number/Number.stories.tsx +0 -159
- package/src/components/form/fields/number/Number.tsx +0 -175
- package/src/components/form/fields/object/Object.stories.tsx +0 -398
- package/src/components/form/fields/object/Object.tsx +0 -255
- package/src/components/form/fields/radio-group/RadioGroup.stories.tsx +0 -95
- package/src/components/form/fields/radio-group/RadioGroup.tsx +0 -52
- package/src/components/form/fields/radio-group/images/java-96x128.png +0 -0
- package/src/components/form/fields/radio-group/images/python-129x128.png +0 -0
- package/src/components/form/fields/radio-group/images/qore-106x128.png +0 -0
- package/src/components/form/fields/rich-text/RichText.stories.tsx +0 -260
- package/src/components/form/fields/rich-text/RichText.tsx +0 -537
- package/src/components/form/fields/schema-definition/CatalogLeafForm.tsx +0 -242
- package/src/components/form/fields/schema-definition/CatalogNodeEditor.tsx +0 -758
- package/src/components/form/fields/schema-definition/Hint.tsx +0 -22
- package/src/components/form/fields/schema-definition/InlineValidationBanner.tsx +0 -138
- package/src/components/form/fields/schema-definition/Loader.tsx +0 -20
- package/src/components/form/fields/schema-definition/MigrationsTab.tsx +0 -187
- package/src/components/form/fields/schema-definition/SchemaDefinitionField.stories.tsx +0 -286
- package/src/components/form/fields/schema-definition/TableEditor.tsx +0 -155
- package/src/components/form/fields/schema-definition/TablesTab.tsx +0 -138
- package/src/components/form/fields/schema-definition/catalog.ts +0 -237
- package/src/components/form/fields/schema-definition/helpers.ts +0 -90
- package/src/components/form/fields/schema-definition/index.tsx +0 -418
- package/src/components/form/fields/schema-definition/mockCatalog.ts +0 -325
- package/src/components/form/fields/schema-definition/mockDefinition.ts +0 -111
- package/src/components/form/fields/schema-definition/referenceSuggestions.tsx +0 -152
- package/src/components/form/fields/schema-definition/starterTemplate.ts +0 -68
- package/src/components/form/fields/schema-definition/types.ts +0 -185
- package/src/components/form/fields/schema-definition/useSchemaOptionCatalog.ts +0 -49
- package/src/components/form/fields/select/Select.stories.tsx +0 -872
- package/src/components/form/fields/select/Select.tsx +0 -624
- package/src/components/form/fields/select/SelectCollection.tsx +0 -594
- package/src/components/form/fields/string/String.stories.tsx +0 -86
- package/src/components/form/fields/string/String.tsx +0 -43
- package/src/components/form/fields/template/ExampleValueModal.stories.tsx +0 -114
- package/src/components/form/fields/template/ExampleValueModal.tsx +0 -99
- package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +0 -47
- package/src/components/form/fields/template/TemplateField.stories.tsx +0 -1121
- package/src/components/form/fields/template/TemplateField.tsx +0 -1749
- package/src/components/form/fields/template/TemplateText.tsx +0 -115
- package/src/components/form/fields/template/__fixtures__/longExampleValue.ts +0 -7
- package/src/components/form/fields/template/__fixtures__/multiLevelTemplates.json +0 -147
- package/src/components/form/fields/template/__fixtures__/templates.json +0 -83
- package/src/components/form/fields/timeout/Timeout.stories.tsx +0 -228
- package/src/components/form/fields/timeout/Timeout.tsx +0 -87
- package/src/components/form/fields/url/Url.stories.tsx +0 -94
- package/src/components/form/fields/url/Url.tsx +0 -85
- package/src/components/form/index.tsx +0 -49
- package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
- package/src/components/imageLightbox/ImageLightbox.tsx +0 -238
- package/src/components/imageLightbox/index.ts +0 -1
- package/src/components/log/Log.stories.tsx +0 -333
- package/src/components/log/Log.tsx +0 -285
- package/src/components/menu/Menu.stories.tsx +0 -155
- package/src/components/menu/Menu.tsx +0 -312
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.stories.tsx +0 -797
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.tsx +0 -105
- package/src/components/qonsoleSmartInput/index.ts +0 -16
- package/src/components/qonsoleSmartInput/qonsoleInserter.ts +0 -77
- package/src/components/qonsoleSmartInput/types.ts +0 -133
- package/src/components/qonsoleSmartInput/useQonsoleSession.ts +0 -124
- package/src/components/searchFilterBar/SearchFilterBar.stories.tsx +0 -62
- package/src/components/searchFilterBar/SearchFilterBar.tsx +0 -144
- package/src/components/searchFilterBar/index.ts +0 -1
- package/src/components/smartEditor/MarkdownDoc.tsx +0 -190
- package/src/components/smartEditor/SmartEditor.stories.tsx +0 -475
- package/src/components/smartEditor/SmartEditor.tsx +0 -808
- package/src/components/smartEditor/__fixtures__/mockLspServer.ts +0 -205
- package/src/components/smartEditor/helpers.ts +0 -217
- package/src/components/smartEditor/index.ts +0 -35
- package/src/components/smartEditor/styling.ts +0 -45
- package/src/components/smartEditor/types.ts +0 -211
- package/src/components/smartEditor/useLspAutocomplete.ts +0 -758
- package/src/components/smartEditor/useLspDiagnosticDecorations.ts +0 -125
- package/src/components/smartEditor/useLspHover.ts +0 -230
- package/src/components/smartEditor/useLspSemanticTokens.ts +0 -298
- package/src/components/smartEditor/useLspSession.ts +0 -231
- package/src/components/smartEditor/useLspSignatureHelp.ts +0 -198
- package/src/components/supportTicket/AttachmentChips.stories.tsx +0 -171
- package/src/components/supportTicket/AttachmentChips.tsx +0 -147
- package/src/components/supportTicket/InterfaceReferenceTags.stories.tsx +0 -257
- package/src/components/supportTicket/InterfaceReferenceTags.tsx +0 -130
- package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -580
- package/src/components/supportTicket/ReferencePicker.tsx +0 -573
- package/src/components/supportTicket/TicketConversation.stories.tsx +0 -120
- package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
- package/src/components/supportTicket/TicketHeader.tsx +0 -248
- package/src/components/supportTicket/TicketMetaTags.stories.tsx +0 -103
- package/src/components/supportTicket/TicketMetaTags.tsx +0 -85
- package/src/components/supportTicket/TicketReplyBox.stories.tsx +0 -357
- package/src/components/supportTicket/TicketReplyBox.tsx +0 -172
- package/src/components/supportTicket/__fixtures__/kindMarks.ts +0 -28
- package/src/components/supportTicket/attachmentAccess.ts +0 -97
- package/src/components/supportTicket/fileToAttachment.ts +0 -24
- package/src/components/supportTicket/index.ts +0 -10
- package/src/components/supportTicket/meta.ts +0 -206
- package/src/components/supportTicket/ticketModel.ts +0 -131
- package/src/components/supportTicket/useLoadedImages.ts +0 -93
- package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -341
- package/src/components/ticketReferences/TicketReferences.tsx +0 -914
- package/src/components/ticketReferences/index.ts +0 -2
- package/src/components/ticketThread/TicketThread.stories.tsx +0 -898
- package/src/components/ticketThread/TicketThread.tsx +0 -706
- package/src/components/ticketThread/index.ts +0 -6
- package/src/contexts/FetchContext.tsx +0 -25
- package/src/contexts/ReqraftContext.tsx +0 -9
- package/src/contexts/StorageContext.tsx +0 -33
- package/src/global.d.ts +0 -4
- package/src/helpers/allowedValues.ts +0 -268
- package/src/helpers/choiceChip.ts +0 -227
- package/src/helpers/common.ts +0 -326
- package/src/helpers/dpqlDetection.ts +0 -209
- package/src/helpers/expressions.ts +0 -140
- package/src/helpers/fieldDescription.ts +0 -39
- package/src/helpers/optionUiTypes.ts +0 -199
- package/src/helpers/options.ts +0 -150
- package/src/helpers/providerValue.ts +0 -125
- package/src/helpers/scrollbar.ts +0 -32
- package/src/helpers/singleLineString.ts +0 -62
- package/src/helpers/templateItems.ts +0 -81
- package/src/helpers/templateText.ts +0 -350
- package/src/helpers/templates.ts +0 -602
- package/src/helpers/validations.ts +0 -2085
- package/src/hooks/useArgSchema.ts +0 -37
- package/src/hooks/useCoarsePointer.ts +0 -30
- package/src/hooks/useFetch/useFetch.stories.tsx +0 -379
- package/src/hooks/useFetch/useFetch.tsx +0 -154
- package/src/hooks/usePhoneViewport.ts +0 -34
- package/src/hooks/useQorusTypes.ts +0 -233
- package/src/hooks/useReqraftProperty.ts +0 -16
- package/src/hooks/useStorage/useStorage.stories.tsx +0 -168
- package/src/hooks/useStorage/useStorage.ts +0 -35
- package/src/hooks/useTemplates.ts +0 -123
- package/src/hooks/useValidation.ts +0 -9
- package/src/hooks/useWebSocket/useWebSocket.ts +0 -224
- package/src/hooks/useWebSocket/useWebsocket.stories.tsx +0 -640
- package/src/hooks/useWhyDidYouUpdate.ts +0 -38
- package/src/index.tsx +0 -86
- package/src/providers/FetchProvider.tsx +0 -40
- package/src/providers/ReqraftProvider.tsx +0 -52
- package/src/providers/StorageProvider.tsx +0 -131
- package/src/stores/currentUser/currentUser.stories.tsx +0 -100
- package/src/stores/currentUser/currentUser.tsx +0 -94
- package/src/stories/Data/fileFieldArgSchema.json +0 -86
- package/src/stories/Tests/utils.ts +0 -320
- package/src/stories/storyNetwork.ts +0 -92
- package/src/stories/tracking.tsx +0 -206
- package/src/tracking/browser/attach.ts +0 -186
- package/src/tracking/browser/env.ts +0 -78
- package/src/tracking/core/consent.ts +0 -37
- package/src/tracking/core/engagement.ts +0 -47
- package/src/tracking/core/experiments.ts +0 -258
- package/src/tracking/core/hash.ts +0 -26
- package/src/tracking/core/ids.ts +0 -25
- package/src/tracking/core/observable.ts +0 -23
- package/src/tracking/core/queue.ts +0 -131
- package/src/tracking/core/sections.ts +0 -166
- package/src/tracking/core/storage.ts +0 -69
- package/src/tracking/core/tracker.ts +0 -417
- package/src/tracking/core/types.ts +0 -162
- package/src/tracking/core/utm.ts +0 -23
- package/src/tracking/index.ts +0 -72
- package/src/tracking/markup.ts +0 -17
- package/src/tracking/react/Experiment.tsx +0 -44
- package/src/tracking/react/TrackingProvider.tsx +0 -56
- package/src/tracking/react/hooks.ts +0 -106
- package/src/tracking/react/index.ts +0 -13
- package/src/tracking/testing.ts +0 -108
- package/src/tracking/ui/ExperimentCard.stories.tsx +0 -296
- package/src/tracking/ui/ExperimentCard.tsx +0 -667
- package/src/tracking/ui/ExperimentsOverlay.stories.tsx +0 -155
- package/src/tracking/ui/ExperimentsOverlay.tsx +0 -437
- package/src/tracking/ui/anchor.ts +0 -180
- package/src/tracking/ui/card.ts +0 -464
- package/src/tracking/ui/client.ts +0 -117
- package/src/tracking/ui/index.ts +0 -77
- package/src/tracking/ui/types.ts +0 -110
- package/src/tracking/ui/useExperimentsAdmin.ts +0 -103
- package/src/types/Form.ts +0 -29
- package/src/types.ts +0 -14
- package/src/utils/datetime.ts +0 -10
- package/src/utils/fetch.ts +0 -457
- package/src/utils/lspClient.ts +0 -711
- package/src/utils/lspClient.types.ts +0 -211
- package/src/utils/queryUnlessCancelled.ts +0 -28
- package/src/utils/websocket.ts +0 -293
- package/vite.config.ts +0 -58
- package/vitest.config.ts +0 -69
|
@@ -1,4 +1,15 @@
|
|
|
1
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
|
+
};
|
|
2
13
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
14
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
15
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -36,7 +47,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
47
|
}
|
|
37
48
|
};
|
|
38
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.ExpressionField = void 0;
|
|
50
|
+
exports.ExpressionField = exports.NO_VALUE_AT_THE_END = exports.DEFAULT_EXPRESSION_MODE_LABELS = void 0;
|
|
40
51
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
41
52
|
// Copyright 2026 Qore Technologies, s.r.o.
|
|
42
53
|
// The shell `TemplateField` renders when a field is in expression mode.
|
|
@@ -50,10 +61,14 @@ var reqore_1 = require("@qoretechnologies/reqore");
|
|
|
50
61
|
var react_1 = require("react");
|
|
51
62
|
var dpqlEditor_1 = require("../../dpqlEditor");
|
|
52
63
|
var dpqlHelpers_1 = require("../../dpqlEditor/dpqlHelpers");
|
|
64
|
+
var loneValue_1 = require("./loneValue");
|
|
53
65
|
var builder_1 = require("./builder");
|
|
54
66
|
var DpqlRendering_1 = require("./DpqlRendering");
|
|
67
|
+
var textOfExpression_1 = require("./textOfExpression");
|
|
55
68
|
var useExpressions_1 = require("./useExpressions");
|
|
56
69
|
var useRenderExpression_1 = require("./useRenderExpression");
|
|
70
|
+
var expressions_1 = require("../../../helpers/expressions");
|
|
71
|
+
var useQorusTypes_1 = require("../../../hooks/useQorusTypes");
|
|
57
72
|
var optionUiTypes_1 = require("../../../helpers/optionUiTypes");
|
|
58
73
|
var PARSE_DEBOUNCE_MS = 300;
|
|
59
74
|
/**
|
|
@@ -65,24 +80,193 @@ var PARSE_DEBOUNCE_MS = 300;
|
|
|
65
80
|
* has stopped moving rather than twitching on the way there.
|
|
66
81
|
*/
|
|
67
82
|
var PREVIEW_DEBOUNCE_MS = 400;
|
|
68
|
-
/**
|
|
69
|
-
|
|
70
|
-
var
|
|
83
|
+
/** What a rendering of the Preview is the rendering of: the AST, as its content (a new object of the same content is
|
|
84
|
+
* the same expression). */
|
|
85
|
+
var astKeyOf = function (ast) { return JSON.stringify(ast !== null && ast !== void 0 ? ast : {}); };
|
|
86
|
+
/**
|
|
87
|
+
* A control in the field's column at its own width: the column stretches what it holds across it. The Text /
|
|
88
|
+
* Visual toggle is as wide as what the two say, not across the form: a control is its own width on any screen
|
|
89
|
+
* wider than a phone's (qorus#646, David's width rule), so it is not fluid either.
|
|
90
|
+
*/
|
|
91
|
+
var OWN_WIDTH_STYLE = { alignSelf: 'flex-start' };
|
|
92
|
+
exports.DEFAULT_EXPRESSION_MODE_LABELS = {
|
|
93
|
+
text: 'Text',
|
|
94
|
+
visual: 'Visual',
|
|
95
|
+
textUnavailable: 'The expression language server is not available',
|
|
96
|
+
};
|
|
97
|
+
// why the templates beside the text cannot be used: the DPQL editor's picker says it, and the name stays here
|
|
98
|
+
var dpqlCompletions_1 = require("../../dpqlEditor/dpqlCompletions");
|
|
99
|
+
Object.defineProperty(exports, "NO_VALUE_AT_THE_END", { enumerable: true, get: function () { return dpqlCompletions_1.NO_VALUE_AT_THE_END; } });
|
|
100
|
+
/** A diagnostic that is an error: the server marks one severity 1, or `error`. */
|
|
101
|
+
var isErrorDiagnostic = function (diagnostic) {
|
|
102
|
+
return diagnostic.severity === 1 || diagnostic.severity === 'error';
|
|
103
|
+
};
|
|
104
|
+
/** What the server says of a condition as a condition: drawn by the builder, on the cards it is about. */
|
|
105
|
+
var CONDITION_DIAGNOSTIC_CODES = ['NOT_A_CONDITION', 'CONDITION_BY_TRUTHINESS'];
|
|
106
|
+
/**
|
|
107
|
+
* What the server says of an expression built in the Visual view: its errors, in its words, at the danger
|
|
108
|
+
* intent. It writes the expression as DPQL (`dpql/serialize`) and reads it back (`dpql/parse`) on a document
|
|
109
|
+
* bound to the record's fields, as the Text view's document is - so the server judges what is built as it
|
|
110
|
+
* judges what is written. Mounted only while the Visual view shows a whole expression it can type.
|
|
111
|
+
*
|
|
112
|
+
* A condition is read as one (`condition: true`): what the server says of the whole condition and of each part
|
|
113
|
+
* of its `&&`, `||` and `!` goes to `onConditionParts`, for the builder to draw on the cards it is about, and is
|
|
114
|
+
* not repeated here.
|
|
115
|
+
*/
|
|
116
|
+
var ExpressionServerErrors = (0, react_1.memo)(function (_a) {
|
|
117
|
+
var expression = _a.expression, fields = _a.fields, provider = _a.provider, recordType = _a.recordType, condition = _a.condition, onConditionParts = _a.onConditionParts, writeExpression = _a.writeExpression;
|
|
118
|
+
var dpql = (0, dpqlEditor_1.useDpqlSession)({ fields: fields, provider: provider, recordType: recordType });
|
|
119
|
+
var ready = dpql.session.isReady && dpql.session.isContextReady;
|
|
120
|
+
var _b = (0, react_1.useState)([]), errors = _b[0], setErrors = _b[1];
|
|
121
|
+
var expressionKey = JSON.stringify(expression);
|
|
122
|
+
var serialize = dpql.serialize, parse = dpql.parse;
|
|
123
|
+
(0, react_1.useEffect)(function () {
|
|
124
|
+
if (!ready)
|
|
125
|
+
return undefined;
|
|
126
|
+
var cancelled = false;
|
|
127
|
+
var check = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
128
|
+
var said, parts, whole, text, result, _a;
|
|
129
|
+
return __generator(this, function (_b) {
|
|
130
|
+
switch (_b.label) {
|
|
131
|
+
case 0:
|
|
132
|
+
said = [];
|
|
133
|
+
_b.label = 1;
|
|
134
|
+
case 1:
|
|
135
|
+
_b.trys.push([1, 5, , 6]);
|
|
136
|
+
return [4 /*yield*/, writeExpression(JSON.parse(expressionKey), serialize)];
|
|
137
|
+
case 2:
|
|
138
|
+
text = _b.sent();
|
|
139
|
+
if (!text) return [3 /*break*/, 4];
|
|
140
|
+
return [4 /*yield*/, parse(text, undefined, condition ? { condition: true } : undefined)];
|
|
141
|
+
case 3:
|
|
142
|
+
result = _b.sent();
|
|
143
|
+
parts = (0, expressions_1.conditionPartsWithMessages)(result.parts, result.inferred_type, result.diagnostics);
|
|
144
|
+
whole =
|
|
145
|
+
condition ? (0, expressions_1.conditionWholeMessage)(result.inferred_type, result.diagnostics) : undefined;
|
|
146
|
+
said = result.diagnostics
|
|
147
|
+
.filter(function (d) {
|
|
148
|
+
var _a;
|
|
149
|
+
return isErrorDiagnostic(d) &&
|
|
150
|
+
!(condition && CONDITION_DIAGNOSTIC_CODES.includes(String((_a = d.code) !== null && _a !== void 0 ? _a : '')));
|
|
151
|
+
})
|
|
152
|
+
.map(function (d) { return d.message; });
|
|
153
|
+
_b.label = 4;
|
|
154
|
+
case 4: return [3 /*break*/, 6];
|
|
155
|
+
case 5:
|
|
156
|
+
_a = _b.sent();
|
|
157
|
+
// a server that cannot write or read it says nothing about it here
|
|
158
|
+
said = [];
|
|
159
|
+
parts = undefined;
|
|
160
|
+
whole = undefined;
|
|
161
|
+
return [3 /*break*/, 6];
|
|
162
|
+
case 6:
|
|
163
|
+
if (cancelled)
|
|
164
|
+
return [2 /*return*/];
|
|
165
|
+
setErrors(said);
|
|
166
|
+
onConditionParts === null || onConditionParts === void 0 ? void 0 : onConditionParts(expressionKey, parts, whole);
|
|
167
|
+
return [2 /*return*/];
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
}); };
|
|
171
|
+
void check();
|
|
172
|
+
return function () {
|
|
173
|
+
cancelled = true;
|
|
174
|
+
};
|
|
175
|
+
}, [ready, expressionKey, serialize, parse, condition, onConditionParts, writeExpression]);
|
|
176
|
+
if (!errors.length)
|
|
177
|
+
return null;
|
|
178
|
+
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreControlGroup, { vertical: true, fluid: true, size: 'small', className: 'expression-server-errors', children: errors.map(function (message, index) { return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { intent: 'danger', "data-severity": 'danger', size: 'small', flat: true, opaque: false, children: message }, index)); }) }));
|
|
179
|
+
});
|
|
71
180
|
exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
72
|
-
var _b;
|
|
73
|
-
var value = _a.value, onChange = _a.onChange, type = _a.type, returnType = _a.returnType, readOnly = _a.readOnly, expressionsOverride = _a.expressions, expressionsUrl = _a.expressionsUrl, localTemplates = _a.localTemplates, serverHandled = _a.serverHandled, extraActions = _a.extraActions, provider = _a.provider, fields = _a.fields, recordType = _a.recordType,
|
|
181
|
+
var _b, _c, _d;
|
|
182
|
+
var value = _a.value, onChange = _a.onChange, type = _a.type, returnType = _a.returnType, returnBaseType = _a.returnBaseType, readOnly = _a.readOnly, expressionsOverride = _a.expressions, expressionsUrl = _a.expressionsUrl, localTemplates = _a.localTemplates, serverHandled = _a.serverHandled, condition = _a.condition, extraActions = _a.extraActions, provider = _a.provider, fields = _a.fields, recordType = _a.recordType, _e = _a.defaultMode, defaultMode = _e === void 0 ? 'text' : _e, initialText = _a.initialText, draftText = _a.draftText, onDraftChange = _a.onDraftChange, heldAsValue = _a.heldAsValue, requestedMode = _a.requestedMode, hideModeToggle = _a.hideModeToggle, modeLabels = _a.modeLabels, onTextUnavailable = _a.onTextUnavailable, onModeChange = _a.onModeChange, flushRef = _a.flushRef, size = _a.size, componentOverrides = _a.componentOverrides, reorder = _a.reorder;
|
|
74
183
|
var expressions = (0, useExpressions_1.useExpressions)({
|
|
75
184
|
override: expressionsOverride,
|
|
76
185
|
expressionsUrl: expressionsUrl,
|
|
77
186
|
}).expressions;
|
|
78
187
|
var renderRich = (0, useRenderExpression_1.useRenderExpression)().renderRich;
|
|
79
|
-
var
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
188
|
+
var _f = (0, react_1.useState)(defaultMode), mode = _f[0], setMode = _f[1];
|
|
189
|
+
var modeWords = (0, react_1.useMemo)(function () { return (__assign(__assign({}, exports.DEFAULT_EXPRESSION_MODE_LABELS), modeLabels)); }, [modeLabels]);
|
|
190
|
+
var onModeChangeRef = (0, react_1.useRef)(onModeChange);
|
|
191
|
+
onModeChangeRef.current = onModeChange;
|
|
192
|
+
(0, react_1.useEffect)(function () {
|
|
193
|
+
var _a;
|
|
194
|
+
(_a = onModeChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onModeChangeRef, mode);
|
|
195
|
+
}, [mode]);
|
|
196
|
+
/* The server's rendering of an AST, with the AST it renders (`key`, see `astKeyOf`); none until it has one.
|
|
197
|
+
There is no client-side stand-in — see `useRenderExpression`. */
|
|
198
|
+
var _g = (0, react_1.useState)(null), preview = _g[0], setPreview = _g[1];
|
|
199
|
+
/* The AST whose rendering was asked for last, or none: an answer for any other AST - one arriving late, or
|
|
200
|
+
out of order - is dropped, whenever it comes. */
|
|
201
|
+
var previewAskedFor = (0, react_1.useRef)(null);
|
|
83
202
|
// Text mode state. `text` is the DPQL string the editor shows; the AST
|
|
84
203
|
// (`value`) stays the source of truth, kept in sync via parse-on-edit.
|
|
85
|
-
var
|
|
204
|
+
var _h = (0, react_1.useState)((_b = draftText !== null && draftText !== void 0 ? draftText : initialText) !== null && _b !== void 0 ? _b : ''), text = _h[0], setText = _h[1];
|
|
205
|
+
/* What the author wrote in the Text view that the value does not hold (see `onDraftChange`): it is this
|
|
206
|
+
field's text until it parses or is cleared, so a later visit to the Text view shows it, not the value
|
|
207
|
+
written out. */
|
|
208
|
+
var draftRef = (0, react_1.useRef)(draftText);
|
|
209
|
+
var onDraftChangeRef = (0, react_1.useRef)(onDraftChange);
|
|
210
|
+
onDraftChangeRef.current = onDraftChange;
|
|
211
|
+
var setDraft = (0, react_1.useCallback)(function (next) {
|
|
212
|
+
var _a;
|
|
213
|
+
if (draftRef.current === next)
|
|
214
|
+
return;
|
|
215
|
+
draftRef.current = next;
|
|
216
|
+
(_a = onDraftChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onDraftChangeRef, next);
|
|
217
|
+
}, []);
|
|
218
|
+
/** The text the editor was given, for its echo of that text to be told from typing. */
|
|
219
|
+
var textRef = (0, react_1.useRef)(text);
|
|
220
|
+
textRef.current = text;
|
|
221
|
+
/* No language server to parse or write the text: the Text view cannot work, so the field shows the
|
|
222
|
+
Visual view, which needs none, and says why (qorus#646). */
|
|
223
|
+
var _j = (0, react_1.useState)(false), textUnavailable = _j[0], setTextUnavailable = _j[1];
|
|
224
|
+
/* Why the server would not write this value as text, or null. The field is then built in Visual: an empty
|
|
225
|
+
Text view would be one the author types over, replacing the value (qorus#646). */
|
|
226
|
+
var _k = (0, react_1.useState)(null), textRefused = _k[0], setTextRefused = _k[1];
|
|
227
|
+
// read when a refusal lands, so a host's new callback on each render does not restart the seed
|
|
228
|
+
var onTextUnavailableRef = (0, react_1.useRef)(onTextUnavailable);
|
|
229
|
+
onTextUnavailableRef.current = onTextUnavailable;
|
|
230
|
+
/* Whether the Text view's language server can parse and write its text - the session's own signal
|
|
231
|
+
(`onReady`), never a guess by time. Typed text waits for it; it is not asked of a session that is not
|
|
232
|
+
up, whose answer is "nothing parsed" (qorus#646: under load, text typed before the session was up
|
|
233
|
+
never reached the value). Each visit to the Text view opens a session of its own. */
|
|
234
|
+
var _l = (0, react_1.useState)(false), sessionReady = _l[0], setSessionReady = _l[1];
|
|
235
|
+
var sessionReadyRef = (0, react_1.useRef)(false);
|
|
236
|
+
/** Who waits for the session: told true when it is ready, false when it cannot be reached or goes. */
|
|
237
|
+
var sessionWaiters = (0, react_1.useRef)([]);
|
|
238
|
+
var settleSessionWaiters = (0, react_1.useCallback)(function (ready) {
|
|
239
|
+
var waiters = sessionWaiters.current;
|
|
240
|
+
sessionWaiters.current = [];
|
|
241
|
+
waiters.forEach(function (resolve) { return resolve(ready); });
|
|
242
|
+
}, []);
|
|
243
|
+
var whenSessionReady = (0, react_1.useCallback)(function () {
|
|
244
|
+
return sessionReadyRef.current ?
|
|
245
|
+
Promise.resolve(true)
|
|
246
|
+
: new Promise(function (resolve) { return sessionWaiters.current.push(resolve); });
|
|
247
|
+
}, []);
|
|
248
|
+
var handleTextReady = (0, react_1.useCallback)(function () {
|
|
249
|
+
sessionReadyRef.current = true;
|
|
250
|
+
setSessionReady(true);
|
|
251
|
+
settleSessionWaiters(true);
|
|
252
|
+
}, [settleSessionWaiters]);
|
|
253
|
+
(0, react_1.useEffect)(function () {
|
|
254
|
+
if (mode === 'text')
|
|
255
|
+
return;
|
|
256
|
+
sessionReadyRef.current = false;
|
|
257
|
+
setSessionReady(false);
|
|
258
|
+
settleSessionWaiters(false);
|
|
259
|
+
}, [mode, settleSessionWaiters]);
|
|
260
|
+
(0, react_1.useEffect)(function () { return function () { return settleSessionWaiters(false); }; }, [settleSessionWaiters]);
|
|
261
|
+
var handleTextUnavailable = (0, react_1.useCallback)(function () {
|
|
262
|
+
setTextUnavailable(true);
|
|
263
|
+
settleSessionWaiters(false);
|
|
264
|
+
onTextUnavailable === null || onTextUnavailable === void 0 ? void 0 : onTextUnavailable();
|
|
265
|
+
// text typed and not read stays as typed, in the Text view, with the reason under it: nothing is lost
|
|
266
|
+
if (pendingParse.current !== null)
|
|
267
|
+
return;
|
|
268
|
+
setMode('visual');
|
|
269
|
+
}, [onTextUnavailable, settleSessionWaiters]);
|
|
86
270
|
/* The text the current AST was parsed FROM.
|
|
87
271
|
*
|
|
88
272
|
* The preview renders the AST, and the AST only moves on a SUCCESSFUL
|
|
@@ -91,16 +275,53 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
91
275
|
* the editor does not contain: deleting the `2` from `1 + 2` left
|
|
92
276
|
* "Unexpected end of input" sitting directly above a Preview confidently
|
|
93
277
|
* reading `1 + 2`. */
|
|
94
|
-
var
|
|
278
|
+
var _m = (0, react_1.useState)(''), astText = _m[0], setAstText = _m[1];
|
|
95
279
|
/**
|
|
96
280
|
* The server's answer to "can this expression's result satisfy the type
|
|
97
281
|
* this field declares?". `null` when nothing has been asked, or when the
|
|
98
282
|
* field declares no type worth asking about.
|
|
99
283
|
*/
|
|
100
|
-
var
|
|
284
|
+
var _o = (0, react_1.useState)(null), typeCheck = _o[0], setTypeCheck = _o[1];
|
|
101
285
|
var dpqlRef = (0, react_1.useRef)(null);
|
|
286
|
+
/*
|
|
287
|
+
* The field's writing of its latest expression as text, shared by its two views: the Visual view has the server
|
|
288
|
+
* write what it builds to check it, and the Text view opens on the same writing rather than asking the server
|
|
289
|
+
* for it again. Entering the Text view while the Visual view's check was on its way asked twice
|
|
290
|
+
* (qorus#646). An answer with no text (no session yet) or a refusal is not kept: the next asks again.
|
|
291
|
+
*/
|
|
292
|
+
var writtenRef = (0, react_1.useRef)();
|
|
293
|
+
var writeExpression = (0, react_1.useCallback)(function (expression, write) {
|
|
294
|
+
var key = JSON.stringify(expression);
|
|
295
|
+
var written = writtenRef.current;
|
|
296
|
+
if ((written === null || written === void 0 ? void 0 : written.key) === key) {
|
|
297
|
+
return written.text;
|
|
298
|
+
}
|
|
299
|
+
var forget = function () {
|
|
300
|
+
var _a;
|
|
301
|
+
if (((_a = writtenRef.current) === null || _a === void 0 ? void 0 : _a.key) === key) {
|
|
302
|
+
writtenRef.current = undefined;
|
|
303
|
+
}
|
|
304
|
+
};
|
|
305
|
+
var text = write(expression).then(function (result) {
|
|
306
|
+
if (!result) {
|
|
307
|
+
forget();
|
|
308
|
+
}
|
|
309
|
+
return result;
|
|
310
|
+
}, function (error) {
|
|
311
|
+
forget();
|
|
312
|
+
throw error;
|
|
313
|
+
});
|
|
314
|
+
writtenRef.current = { key: key, text: text };
|
|
315
|
+
return text;
|
|
316
|
+
}, []);
|
|
102
317
|
var parseTimer = (0, react_1.useRef)(null);
|
|
318
|
+
/** The text typed whose parse is still waiting on the debounce, or null. */
|
|
319
|
+
var pendingParse = (0, react_1.useRef)(null);
|
|
103
320
|
var ast = (0, react_1.useMemo)(function () { return value === null || value === void 0 ? void 0 : value.value; }, [value]);
|
|
321
|
+
// what a rendering of the Preview must be of to be drawn (`astKeyOf`)
|
|
322
|
+
var astKey = (0, react_1.useMemo)(function () { return astKeyOf(ast); }, [ast]);
|
|
323
|
+
// a lone template, as the server parses one written alone, is the lone value it is (`asLoneValue`)
|
|
324
|
+
var builderValue = (0, react_1.useMemo)(function () { return ((value === null || value === void 0 ? void 0 : value.value) ? __assign(__assign({}, value), { value: (0, loneValue_1.asLoneValue)(value.value) }) : value); }, [value]);
|
|
104
325
|
/**
|
|
105
326
|
* The type the expression's result has to satisfy, sent with every parse.
|
|
106
327
|
*
|
|
@@ -113,6 +334,36 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
113
334
|
var declared = Array.isArray(returnType) ? undefined : (returnType !== null && returnType !== void 0 ? returnType : type);
|
|
114
335
|
return declared && !(0, optionUiTypes_1.isUntypedOptionType)(declared) ? declared : undefined;
|
|
115
336
|
}, [returnType, type]);
|
|
337
|
+
/** A condition is asked as one, not as a type to fit. */
|
|
338
|
+
var parseOptions = (0, react_1.useMemo)(function () { return (condition ? { condition: true } : undefined); }, [condition]);
|
|
339
|
+
/**
|
|
340
|
+
* The expression built in the Visual view, as the server is asked about it (qorus#646): whole, and only
|
|
341
|
+
* where the server can type its operands - with the record's fields or a provider's. The server refuses
|
|
342
|
+
* operands its operators cannot combine (DPQL-E050, `@create + 1` with `create` a hash), which nothing
|
|
343
|
+
* on this side can tell; the Text view shows it as the server publishes it, and so does this view.
|
|
344
|
+
*/
|
|
345
|
+
var serverCheckable = (0, react_1.useMemo)(function () {
|
|
346
|
+
return (mode === 'visual' &&
|
|
347
|
+
((!!fields && Object.keys(fields).length > 0) || !!provider || !!condition)) ?
|
|
348
|
+
(0, textOfExpression_1.serializableExpression)(ast)
|
|
349
|
+
: undefined;
|
|
350
|
+
}, [mode, fields, provider, condition, ast]);
|
|
351
|
+
/* What the server said of each part of the condition built in the Visual view (qorus#646), for the
|
|
352
|
+
expression it was said of: an answer about an expression since edited is not drawn on it. */
|
|
353
|
+
var _p = (0, react_1.useState)(), conditionParts = _p[0], setConditionParts = _p[1];
|
|
354
|
+
var onConditionParts = (0, react_1.useCallback)(function (key, parts, whole) {
|
|
355
|
+
return setConditionParts({ key: key, parts: parts, whole: whole });
|
|
356
|
+
}, []);
|
|
357
|
+
var currentCondition = serverCheckable && (conditionParts === null || conditionParts === void 0 ? void 0 : conditionParts.key) === JSON.stringify(serverCheckable) ?
|
|
358
|
+
conditionParts
|
|
359
|
+
: undefined;
|
|
360
|
+
var currentConditionParts = currentCondition === null || currentCondition === void 0 ? void 0 : currentCondition.parts;
|
|
361
|
+
/* What the server says of the whole condition built in the Visual view, in its words: drawn there as the
|
|
362
|
+
Text view draws it, in place of the builder's own fallback. */
|
|
363
|
+
var currentConditionMessage = currentCondition === null || currentCondition === void 0 ? void 0 : currentCondition.whole;
|
|
364
|
+
var qorusTypes = (0, useQorusTypes_1.useQorusTypes)();
|
|
365
|
+
/** A type named inside a sentence: the sentence form of what it is ("a whole number"), or nothing (qorus#646). */
|
|
366
|
+
var typeInSentence = (0, react_1.useCallback)(function (type) { var _a; return (_a = qorusTypes.getTypeSentenceForm((0, expressions_1.conditionBaseType)(type))) !== null && _a !== void 0 ? _a : 'nothing'; }, [qorusTypes]);
|
|
116
367
|
/**
|
|
117
368
|
* Read the type analysis off a parse result, or clear it.
|
|
118
369
|
*
|
|
@@ -122,7 +373,27 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
122
373
|
* noise the message below is written to avoid.
|
|
123
374
|
*/
|
|
124
375
|
var readTypeCheck = (0, react_1.useCallback)(function (result) {
|
|
125
|
-
var _a;
|
|
376
|
+
var _a, _b, _c;
|
|
377
|
+
/* A condition is not a type to fit (qorus#646): the server reads it as true unless its value is
|
|
378
|
+
zero or empty, so it is said as every condition editor says it - a number accepted with a warning,
|
|
379
|
+
text refused. The server's reading, with its own words, when it gave one; the inferred type read
|
|
380
|
+
the same way when it did not (a server that does not know the question). */
|
|
381
|
+
if (condition) {
|
|
382
|
+
if (!result) {
|
|
383
|
+
setTypeCheck(null);
|
|
384
|
+
return;
|
|
385
|
+
}
|
|
386
|
+
var reading = result.condition_reading;
|
|
387
|
+
var verdict_1 = reading === 'not_a_condition' ? 'error'
|
|
388
|
+
: reading === 'truthiness' ? 'warning'
|
|
389
|
+
: reading ? undefined
|
|
390
|
+
: (0, expressions_1.conditionVerdict)(result.inferred_type);
|
|
391
|
+
var said = (_b = (_a = result.diagnostics) === null || _a === void 0 ? void 0 : _a.find(function (d) {
|
|
392
|
+
return verdict_1 === 'error' ? d.code === 'NOT_A_CONDITION' : d.code === 'CONDITION_BY_TRUTHINESS';
|
|
393
|
+
})) === null || _b === void 0 ? void 0 : _b.message;
|
|
394
|
+
setTypeCheck(verdict_1 ? __assign({ compatible: verdict_1 !== 'error', mayFail: false, inferred: result.inferred_type, condition: verdict_1 }, (said ? { message: said } : {})) : null);
|
|
395
|
+
return;
|
|
396
|
+
}
|
|
126
397
|
if (!result || result.type_compatible === undefined) {
|
|
127
398
|
setTypeCheck(null);
|
|
128
399
|
return;
|
|
@@ -133,29 +404,34 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
133
404
|
mayFail: !!result.coercion_may_fail,
|
|
134
405
|
inferred: result.inferred_type,
|
|
135
406
|
target: result.target_type,
|
|
136
|
-
fix: (
|
|
407
|
+
fix: (_c = result.suggested_fix) === null || _c === void 0 ? void 0 : _c.text,
|
|
137
408
|
});
|
|
138
|
-
}, []);
|
|
409
|
+
}, [condition]);
|
|
139
410
|
// Keep a readable rendering of the current expression in sync — the
|
|
140
411
|
// single live mirror of the AST (the server's `dpql/renderExpression`).
|
|
141
412
|
//
|
|
142
413
|
// Debounced: it follows the AST, which follows the text, so rendering it
|
|
143
414
|
// eagerly put a box under the cursor that appeared, changed and vanished
|
|
144
415
|
// while the author was still typing.
|
|
416
|
+
//
|
|
417
|
+
// A rendering is kept with the AST it renders, and drawn only for that AST (`previewState`): after an edit,
|
|
418
|
+
// for the pause and the server's answer, the previous expression's rendering was drawn under the new text
|
|
419
|
+
// (qorus#646: "record: pos" under `bezeichnung == bezeichnung`).
|
|
145
420
|
(0, react_1.useEffect)(function () {
|
|
146
|
-
var
|
|
421
|
+
var key = astKey;
|
|
422
|
+
previewAskedFor.current = key;
|
|
147
423
|
var timer = setTimeout(function () {
|
|
148
424
|
renderRich(ast !== null && ast !== void 0 ? ast : {}).then(function (r) {
|
|
149
425
|
var _a;
|
|
150
|
-
if (
|
|
151
|
-
setPreview((_a = r === null || r === void 0 ? void 0 : r.text) !== null && _a !== void 0 ? _a : '');
|
|
426
|
+
if (previewAskedFor.current === key)
|
|
427
|
+
setPreview({ key: key, text: (_a = r === null || r === void 0 ? void 0 : r.text) !== null && _a !== void 0 ? _a : '' });
|
|
152
428
|
});
|
|
153
429
|
}, PREVIEW_DEBOUNCE_MS);
|
|
154
430
|
return function () {
|
|
155
|
-
|
|
431
|
+
previewAskedFor.current = null;
|
|
156
432
|
clearTimeout(timer);
|
|
157
433
|
};
|
|
158
|
-
}, [renderRich, ast]);
|
|
434
|
+
}, [renderRich, ast, astKey]);
|
|
159
435
|
// Tracks whether the user has typed since entering Text mode, so a
|
|
160
436
|
// slow seed response can't clobber their input.
|
|
161
437
|
var userTypedRef = (0, react_1.useRef)(false);
|
|
@@ -173,6 +449,10 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
173
449
|
* part-way through typing before their first parse lands.
|
|
174
450
|
*/
|
|
175
451
|
var hadExpression = (0, react_1.useRef)(false);
|
|
452
|
+
/** Whether this visit to Text mode has already put the AST in the editor. The host's own text for the
|
|
453
|
+
* first visit (`initialText`, such as the value written as `concat("SUP-", $record:{pos})`) is that visit's
|
|
454
|
+
* text: the session does not write over it once it is ready. */
|
|
455
|
+
var seededRef = (0, react_1.useRef)(!!initialText);
|
|
176
456
|
(0, react_1.useEffect)(function () {
|
|
177
457
|
/* GONE, not merely incomplete.
|
|
178
458
|
*
|
|
@@ -189,65 +469,98 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
189
469
|
hadExpression.current = true;
|
|
190
470
|
return;
|
|
191
471
|
}
|
|
472
|
+
// a template or a literal written here is held as itself: the text stands for it, and stays
|
|
473
|
+
if (heldAsValue) {
|
|
474
|
+
hadExpression.current = false;
|
|
475
|
+
return;
|
|
476
|
+
}
|
|
192
477
|
if (hadExpression.current) {
|
|
193
478
|
hadExpression.current = false;
|
|
194
479
|
userTypedRef.current = false;
|
|
480
|
+
/* Emptied, the editor holds nothing of the value: an expression that comes back (a revert, an undo) is
|
|
481
|
+
written into it, as on entering Text. Left marked seeded, the visit kept the empty text, and a revert
|
|
482
|
+
put `pos + 1` back in the form with nothing in the editor (FormEngine · Reverting A Removed Expression
|
|
483
|
+
Puts It Back, qorus#646). */
|
|
484
|
+
seededRef.current = false;
|
|
195
485
|
setText('');
|
|
196
486
|
}
|
|
197
|
-
}, [ast]);
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
487
|
+
}, [ast, heldAsValue]);
|
|
488
|
+
/* Read the text typed and not yet read: once the session is ready, however long that takes, and the
|
|
489
|
+
latest text typed by then. Gives the expression it is, or nothing. The debounce, the host leaving the
|
|
490
|
+
Text view (its tabs) and the session coming up all read through here. */
|
|
491
|
+
var flushPendingParse = (0, react_1.useCallback)(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
492
|
+
var pending, parse, result;
|
|
493
|
+
var _a;
|
|
494
|
+
return __generator(this, function (_b) {
|
|
495
|
+
switch (_b.label) {
|
|
496
|
+
case 0:
|
|
497
|
+
if (pendingParse.current === null)
|
|
498
|
+
return [2 /*return*/, undefined];
|
|
499
|
+
/* An emptied text is no value, as an emptied Value tab is: the field holds nothing. It stayed what it
|
|
500
|
+
was, and came back on the next visit (qorus#646: the text's × left the 201). */
|
|
501
|
+
if (!pendingParse.current.trim()) {
|
|
502
|
+
if (parseTimer.current)
|
|
503
|
+
clearTimeout(parseTimer.current);
|
|
504
|
+
pendingParse.current = null;
|
|
505
|
+
setDraft(undefined);
|
|
506
|
+
if (ast || heldAsValue)
|
|
507
|
+
onChange({ is_expression: true }, true);
|
|
508
|
+
return [2 /*return*/, undefined];
|
|
509
|
+
}
|
|
510
|
+
return [4 /*yield*/, whenSessionReady()];
|
|
511
|
+
case 1:
|
|
512
|
+
if (!(_b.sent()))
|
|
513
|
+
return [2 /*return*/, undefined];
|
|
514
|
+
pending = pendingParse.current;
|
|
515
|
+
parse = (_a = dpqlRef.current) === null || _a === void 0 ? void 0 : _a.parse;
|
|
516
|
+
if (pending === null || !parse)
|
|
517
|
+
return [2 /*return*/, undefined];
|
|
518
|
+
if (parseTimer.current)
|
|
519
|
+
clearTimeout(parseTimer.current);
|
|
520
|
+
pendingParse.current = null;
|
|
521
|
+
return [4 /*yield*/, parse(pending, targetType, parseOptions)];
|
|
522
|
+
case 2:
|
|
523
|
+
result = _b.sent();
|
|
524
|
+
readTypeCheck(result);
|
|
525
|
+
// not parsed: the value keeps what it held, and the text stays the author's (see `onDraftChange`)
|
|
526
|
+
if (!(result === null || result === void 0 ? void 0 : result.success) || !result.expression)
|
|
527
|
+
return [2 /*return*/, undefined];
|
|
528
|
+
setDraft(undefined);
|
|
529
|
+
setAstText(pending);
|
|
530
|
+
// `dpql/parse` returns the field-ready `{ is_expression, value }`.
|
|
531
|
+
onChange(result.expression);
|
|
532
|
+
return [2 /*return*/, result.expression];
|
|
533
|
+
}
|
|
534
|
+
});
|
|
535
|
+
}); }, [
|
|
536
|
+
onChange,
|
|
537
|
+
targetType,
|
|
538
|
+
parseOptions,
|
|
539
|
+
readTypeCheck,
|
|
540
|
+
whenSessionReady,
|
|
541
|
+
setDraft,
|
|
542
|
+
ast,
|
|
543
|
+
heldAsValue,
|
|
544
|
+
]);
|
|
545
|
+
// the latest reader, for the seeding below, which is not run again for a new one
|
|
546
|
+
var flushLatest = (0, react_1.useRef)(flushPendingParse);
|
|
547
|
+
flushLatest.current = flushPendingParse;
|
|
548
|
+
// Text mode: parse the DPQL into the AST, debounced, once the session can read it.
|
|
215
549
|
var handleDpqlChange = (0, react_1.useCallback)(function (next) {
|
|
550
|
+
/* The editor reports the text it was given back as a change (Slate's first operation after the
|
|
551
|
+
value is set). That is not typing: counted as such it stopped the session from writing the
|
|
552
|
+
expression into the view once it was ready. */
|
|
553
|
+
if (next === textRef.current)
|
|
554
|
+
return;
|
|
216
555
|
userTypedRef.current = true;
|
|
217
556
|
setText(next);
|
|
557
|
+
// the value does not hold it until it parses
|
|
558
|
+
setDraft(next);
|
|
218
559
|
if (parseTimer.current)
|
|
219
560
|
clearTimeout(parseTimer.current);
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
var _a;
|
|
224
|
-
return __generator(this, function (_b) {
|
|
225
|
-
switch (_b.label) {
|
|
226
|
-
case 0:
|
|
227
|
-
parse = (_a = dpqlRef.current) === null || _a === void 0 ? void 0 : _a.parse;
|
|
228
|
-
if (!parse) {
|
|
229
|
-
if (++tries < SEED_MAX_TRIES) {
|
|
230
|
-
parseTimer.current = setTimeout(runParse, SEED_RETRY_MS);
|
|
231
|
-
}
|
|
232
|
-
return [2 /*return*/];
|
|
233
|
-
}
|
|
234
|
-
return [4 /*yield*/, parse(next, targetType)];
|
|
235
|
-
case 1:
|
|
236
|
-
result = _b.sent();
|
|
237
|
-
readTypeCheck(result);
|
|
238
|
-
if ((result === null || result === void 0 ? void 0 : result.success) && result.expression) {
|
|
239
|
-
setAstText(next);
|
|
240
|
-
// `dpql/parse` returns the field-ready `{ is_expression, value }`.
|
|
241
|
-
onChange(result.expression);
|
|
242
|
-
}
|
|
243
|
-
return [2 /*return*/];
|
|
244
|
-
}
|
|
245
|
-
});
|
|
246
|
-
}); };
|
|
247
|
-
parseTimer.current = setTimeout(runParse, PARSE_DEBOUNCE_MS);
|
|
248
|
-
}, [onChange, targetType, readTypeCheck]);
|
|
249
|
-
/** Whether this visit to Text mode has already put the AST in the editor. */
|
|
250
|
-
var seededRef = (0, react_1.useRef)(false);
|
|
561
|
+
pendingParse.current = next;
|
|
562
|
+
parseTimer.current = setTimeout(function () { return void flushPendingParse(); }, PARSE_DEBOUNCE_MS);
|
|
563
|
+
}, [flushPendingParse, setDraft]);
|
|
251
564
|
/* Seed the Text editor from the AST whenever Text mode becomes active
|
|
252
565
|
* (including a `defaultMode='text'` mount). This must run as an effect: the
|
|
253
566
|
* editor only mounts on the same render that flips the mode (so `dpqlRef`
|
|
@@ -278,41 +591,97 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
278
591
|
}
|
|
279
592
|
if (seededRef.current || userTypedRef.current)
|
|
280
593
|
return undefined;
|
|
594
|
+
/* What was written and does not parse is this visit's text, read again so its error is said again: not the
|
|
595
|
+
value written out over it. */
|
|
596
|
+
if (draftRef.current !== undefined) {
|
|
597
|
+
seededRef.current = true;
|
|
598
|
+
setText(draftRef.current);
|
|
599
|
+
pendingParse.current = draftRef.current;
|
|
600
|
+
void flushLatest.current();
|
|
601
|
+
return undefined;
|
|
602
|
+
}
|
|
281
603
|
if (!(ast === null || ast === void 0 ? void 0 : ast.exp))
|
|
282
604
|
return undefined;
|
|
283
|
-
|
|
605
|
+
/* Only what DPQL can write is serialized. An operand whose operation is not
|
|
606
|
+
chosen yet, or that is not filled in, has no text; handed to serialize as
|
|
607
|
+
it was, it came back as the server's (or a stand-in's) rendering of a hash:
|
|
608
|
+
`{args=(null)} > {type=int}`. The Text view shows the expression with a hole
|
|
609
|
+
for each part not filled in instead - `… > …`, as the row's summary does -
|
|
610
|
+
and serialize gets custom Text values as the strings or templates they are. */
|
|
611
|
+
var seedAst = (0, textOfExpression_1.serializableExpression)(ast);
|
|
612
|
+
if (!seedAst) {
|
|
613
|
+
var holes = (0, textOfExpression_1.incompleteExpressionText)(ast, expressions);
|
|
614
|
+
seededRef.current = true;
|
|
615
|
+
setText(holes);
|
|
616
|
+
setAstText(holes);
|
|
617
|
+
return undefined;
|
|
618
|
+
}
|
|
619
|
+
// written by the session once it is ready, as the session says it - not asked of it before
|
|
620
|
+
if (!sessionReady)
|
|
621
|
+
return undefined;
|
|
284
622
|
var cancelled = false;
|
|
285
|
-
var timer = null;
|
|
286
|
-
var tries = 0;
|
|
287
623
|
var seed = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
288
|
-
var t;
|
|
289
|
-
var
|
|
290
|
-
return __generator(this, function (
|
|
291
|
-
switch (
|
|
292
|
-
case 0:
|
|
624
|
+
var t, editor_1, _a, error_1, result;
|
|
625
|
+
var _b, _c, _d, _e;
|
|
626
|
+
return __generator(this, function (_f) {
|
|
627
|
+
switch (_f.label) {
|
|
628
|
+
case 0:
|
|
629
|
+
_f.trys.push([0, 4, , 5]);
|
|
630
|
+
editor_1 = dpqlRef.current;
|
|
631
|
+
if (!(editor_1 === null || editor_1 === void 0 ? void 0 : editor_1.serialize)) return [3 /*break*/, 2];
|
|
632
|
+
return [4 /*yield*/, writeExpression(seedAst, function (expression) { return editor_1.serialize(expression); })];
|
|
293
633
|
case 1:
|
|
294
|
-
|
|
634
|
+
_a = _f.sent();
|
|
635
|
+
return [3 /*break*/, 3];
|
|
636
|
+
case 2:
|
|
637
|
+
_a = undefined;
|
|
638
|
+
_f.label = 3;
|
|
639
|
+
case 3:
|
|
640
|
+
t = _a;
|
|
641
|
+
return [3 /*break*/, 5];
|
|
642
|
+
case 4:
|
|
643
|
+
error_1 = _f.sent();
|
|
295
644
|
if (cancelled || userTypedRef.current)
|
|
296
645
|
return [2 /*return*/];
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
}
|
|
302
|
-
else if (++tries < SEED_MAX_TRIES) {
|
|
303
|
-
timer = setTimeout(seed, SEED_RETRY_MS);
|
|
304
|
-
}
|
|
646
|
+
setTextRefused(String((_b = error_1 === null || error_1 === void 0 ? void 0 : error_1.message) !== null && _b !== void 0 ? _b : error_1));
|
|
647
|
+
setMode('visual');
|
|
648
|
+
// a host drawing the views as tabs follows: the Visual tab
|
|
649
|
+
(_c = onTextUnavailableRef.current) === null || _c === void 0 ? void 0 : _c.call(onTextUnavailableRef);
|
|
305
650
|
return [2 /*return*/];
|
|
651
|
+
case 5:
|
|
652
|
+
if (cancelled || userTypedRef.current)
|
|
653
|
+
return [2 /*return*/];
|
|
654
|
+
setTextRefused(null);
|
|
655
|
+
if (!t) return [3 /*break*/, 7];
|
|
656
|
+
seededRef.current = true;
|
|
657
|
+
setText(t);
|
|
658
|
+
setAstText(t);
|
|
659
|
+
if (!(targetType || condition)) return [3 /*break*/, 7];
|
|
660
|
+
return [4 /*yield*/, ((_e = (_d = dpqlRef.current) === null || _d === void 0 ? void 0 : _d.parse) === null || _e === void 0 ? void 0 : _e.call(_d, t, targetType, parseOptions))];
|
|
661
|
+
case 6:
|
|
662
|
+
result = _f.sent();
|
|
663
|
+
if (!cancelled && !userTypedRef.current)
|
|
664
|
+
readTypeCheck(result);
|
|
665
|
+
_f.label = 7;
|
|
666
|
+
case 7: return [2 /*return*/];
|
|
306
667
|
}
|
|
307
668
|
});
|
|
308
669
|
}); };
|
|
309
670
|
void seed();
|
|
310
671
|
return function () {
|
|
311
672
|
cancelled = true;
|
|
312
|
-
if (timer)
|
|
313
|
-
clearTimeout(timer);
|
|
314
673
|
};
|
|
315
|
-
}, [
|
|
674
|
+
}, [
|
|
675
|
+
mode,
|
|
676
|
+
ast,
|
|
677
|
+
expressions,
|
|
678
|
+
targetType,
|
|
679
|
+
parseOptions,
|
|
680
|
+
condition,
|
|
681
|
+
readTypeCheck,
|
|
682
|
+
sessionReady,
|
|
683
|
+
writeExpression,
|
|
684
|
+
]);
|
|
316
685
|
// Switch to Text: the seeding effect above serializes the AST once
|
|
317
686
|
// the editor's session is up.
|
|
318
687
|
var enterTextMode = (0, react_1.useCallback)(function () {
|
|
@@ -320,46 +689,99 @@ exports.ExpressionField = (0, react_1.memo)(function (_a) {
|
|
|
320
689
|
}, []);
|
|
321
690
|
// Switch to Visual: flush any pending parse so the AST is current.
|
|
322
691
|
var enterVisualMode = (0, react_1.useCallback)(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
323
|
-
var result;
|
|
324
|
-
var
|
|
325
|
-
return __generator(this, function (
|
|
326
|
-
switch (
|
|
692
|
+
var edited, _a, result;
|
|
693
|
+
var _b, _c;
|
|
694
|
+
return __generator(this, function (_d) {
|
|
695
|
+
switch (_d.label) {
|
|
327
696
|
case 0:
|
|
328
697
|
if (parseTimer.current)
|
|
329
698
|
clearTimeout(parseTimer.current);
|
|
330
|
-
|
|
331
|
-
|
|
699
|
+
pendingParse.current = null;
|
|
700
|
+
edited = text !== astText && userTypedRef.current;
|
|
701
|
+
_a = mode === 'text' && text && edited;
|
|
702
|
+
if (!_a) return [3 /*break*/, 2];
|
|
703
|
+
return [4 /*yield*/, whenSessionReady()];
|
|
332
704
|
case 1:
|
|
333
|
-
|
|
705
|
+
_a = (_d.sent());
|
|
706
|
+
_d.label = 2;
|
|
707
|
+
case 2:
|
|
708
|
+
if (!_a) return [3 /*break*/, 4];
|
|
709
|
+
return [4 /*yield*/, ((_c = (_b = dpqlRef.current) === null || _b === void 0 ? void 0 : _b.parse) === null || _c === void 0 ? void 0 : _c.call(_b, text, targetType, parseOptions))];
|
|
710
|
+
case 3:
|
|
711
|
+
result = _d.sent();
|
|
334
712
|
readTypeCheck(result);
|
|
335
713
|
if ((result === null || result === void 0 ? void 0 : result.success) && result.expression) {
|
|
336
714
|
onChange(result.expression);
|
|
337
715
|
}
|
|
338
|
-
|
|
339
|
-
case
|
|
716
|
+
_d.label = 4;
|
|
717
|
+
case 4:
|
|
340
718
|
setMode('visual');
|
|
341
719
|
return [2 /*return*/];
|
|
342
720
|
}
|
|
343
721
|
});
|
|
344
|
-
}); }, [mode, text, onChange, targetType, readTypeCheck]);
|
|
722
|
+
}); }, [mode, text, astText, onChange, targetType, parseOptions, readTypeCheck, whenSessionReady]);
|
|
723
|
+
// the host's tabs: followed as the toggle is (see `requestedMode`)
|
|
724
|
+
(0, react_1.useEffect)(function () {
|
|
725
|
+
if (!requestedMode || requestedMode === mode)
|
|
726
|
+
return;
|
|
727
|
+
if (requestedMode === 'visual')
|
|
728
|
+
void enterVisualMode();
|
|
729
|
+
else if (!textUnavailable)
|
|
730
|
+
enterTextMode();
|
|
731
|
+
}, [requestedMode]);
|
|
732
|
+
(0, react_1.useEffect)(function () {
|
|
733
|
+
if (!flushRef)
|
|
734
|
+
return undefined;
|
|
735
|
+
flushRef.current = flushPendingParse;
|
|
736
|
+
return function () {
|
|
737
|
+
if (flushRef.current === flushPendingParse)
|
|
738
|
+
flushRef.current = null;
|
|
739
|
+
};
|
|
740
|
+
}, [flushRef, flushPendingParse]);
|
|
345
741
|
(0, react_1.useEffect)(function () { return function () {
|
|
346
742
|
if (parseTimer.current)
|
|
347
743
|
clearTimeout(parseTimer.current);
|
|
348
744
|
}; }, []);
|
|
349
|
-
/* What the Preview has to add: `none`
|
|
350
|
-
|
|
351
|
-
(so it is not drawn — see below), `shown` otherwise.
|
|
352
|
-
because a Preview correctly left out leaves nothing else to observe. */
|
|
353
|
-
var previewState =
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
745
|
+
/* What the Preview has to add: `none` while the text showing is not the expression's, or the rendering says
|
|
746
|
+
nothing; `pending` until the server's rendering of the expression now held arrives (nothing is drawn);
|
|
747
|
+
`repeats` when it reads exactly as the text does (so it is not drawn — see below), `shown` otherwise.
|
|
748
|
+
Exposed on the field, because a Preview correctly left out leaves nothing else to observe. */
|
|
749
|
+
var previewState = astText.trim() !== text.trim() ? 'none'
|
|
750
|
+
// asked for, not answered yet: nothing is drawn, least of all an earlier expression's rendering
|
|
751
|
+
: (preview === null || preview === void 0 ? void 0 : preview.key) !== astKey ? 'pending'
|
|
752
|
+
: !preview.text ? 'none'
|
|
753
|
+
: (0, dpqlHelpers_1.dpqlDisplayedText)(preview.text).trim() === (0, dpqlHelpers_1.dpqlDisplayedText)(text).trim() ? 'repeats'
|
|
754
|
+
: 'shown';
|
|
755
|
+
return ((0, jsx_runtime_1.jsxs)(reqore_1.ReqoreControlGroup, { vertical: true, fluid: true, gapSize: 'small', className: 'expression-field', "data-preview": mode === 'text' ? previewState : undefined, children: [hideModeToggle ? null : ((0, jsx_runtime_1.jsxs)(reqore_1.ReqoreControlGroup, { gapSize: 'small', fluid: false, className: 'expression-mode-toggle', style: OWN_WIDTH_STYLE, children: [(0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { icon: 'CodeLine', active: mode === 'text', onClick: enterTextMode, disabled: readOnly || textUnavailable, tooltip: textUnavailable ? modeWords.textUnavailable : undefined, size: size, children: modeWords.text }), (0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { icon: 'NodeTree', active: mode === 'visual', onClick: enterVisualMode, disabled: readOnly, size: size, children: modeWords.visual })] })), mode === 'text' ?
|
|
756
|
+
(0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [textUnavailable ?
|
|
757
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { intent: 'warning', size: 'small', flat: true, opaque: false, className: 'expression-text-unavailable', children: "The expression language server is not available, so this text cannot be read yet. It is kept as you typed it; the Visual view builds the expression without the server." })
|
|
758
|
+
: null, (0, jsx_runtime_1.jsx)(dpqlEditor_1.DpqlEditor, { ref: dpqlRef, value: text, onChange: handleDpqlChange, provider: provider, recordType: recordType, fields: fields,
|
|
759
|
+
// the field's own templates name the chips as its catalogue names them
|
|
760
|
+
templates: localTemplates, readOnly: readOnly,
|
|
761
|
+
// the field's size, as its Value tab draws the same value: a reference is the same chip in both
|
|
762
|
+
size: size,
|
|
763
|
+
// no floor of its own: one line as tall as the text it shows, growing with its lines - a
|
|
764
|
+
// 48px floor left an empty strip under the text, which the picker beside it could not match
|
|
765
|
+
onUnavailable: handleTextUnavailable, onReady: handleTextReady,
|
|
766
|
+
// a click, a tap or Tab lists what can be written at the caret, the field's templates with it
|
|
767
|
+
completeOnClick: true }), (typeCheck === null || typeCheck === void 0 ? void 0 : typeCheck.condition) && ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { className: 'expression-condition-verdict', intent: typeCheck.condition === 'error' ? 'danger' : 'warning', size: 'small', flat: true, opaque: false, children: (_c = typeCheck.message) !== null && _c !== void 0 ? _c : (typeCheck.condition === 'error' ?
|
|
768
|
+
(0, expressions_1.conditionErrorText)(typeInSentence(typeCheck.inferred), typeCheck.inferred)
|
|
769
|
+
: (0, expressions_1.conditionByTruthinessText)(typeCheck.inferred)) })), typeCheck && !typeCheck.compatible && !typeCheck.condition && ((0, jsx_runtime_1.jsxs)(reqore_1.ReqoreMessage, { intent: typeCheck.mayFail ? 'warning' : 'danger', size: 'small', flat: true, opaque: false, title: typeCheck.mayFail ? 'This may not fit' : 'This does not fit', children: ["The expression gives ".concat(typeInSentence(typeCheck.inferred), ", and this field takes ").concat(typeInSentence(typeCheck.target), "."), typeCheck.mayFail ? ' Qorus converts the value when it runs, and checks it then.' : '', typeCheck.fix ?
|
|
770
|
+
(0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(reqore_1.ReqoreVerticalSpacer, { height: 6 }), (0, jsx_runtime_1.jsx)(DpqlRendering_1.DpqlRendering, { text: typeCheck.fix, "data-testid": 'expression-type-fix' })] })
|
|
771
|
+
: null] })), previewState === 'shown' ?
|
|
772
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { intent: 'info', size: 'small', title: 'Preview', flat: true, opaque: false, children: (0, jsx_runtime_1.jsx)(DpqlRendering_1.DpqlRendering, { text: preview === null || preview === void 0 ? void 0 : preview.text, "data-testid": 'expression-preview' }) })
|
|
773
|
+
: null] })
|
|
774
|
+
: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [textRefused ?
|
|
775
|
+
(0, jsx_runtime_1.jsxs)(reqore_1.ReqoreMessage, { intent: 'warning', size: 'small', flat: true, opaque: false, className: 'expression-text-refused', children: ["This expression cannot be shown as text, so it is built here: ", textRefused] })
|
|
776
|
+
: null, textUnavailable ?
|
|
777
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { intent: 'muted', size: 'small', flat: true, opaque: false, className: 'expression-text-unavailable', children: "The Text view needs the expression language server, which is not available: the expression is built here instead." })
|
|
778
|
+
: null, (0, jsx_runtime_1.jsx)(builder_1.ExpressionBuilder, { value: builderValue, onChange: function (v, remove) { return onChange(v, remove); }, expressions: expressions,
|
|
779
|
+
// Default to `auto` when the field declares no return type, so a
|
|
780
|
+
// valid expression renders `muted` rather than `danger` (the
|
|
781
|
+
// builder's intent requires a truthy returnType).
|
|
782
|
+
returnType: ((_d = returnType !== null && returnType !== void 0 ? returnType : type) !== null && _d !== void 0 ? _d : 'auto'), returnBaseType: returnBaseType, readOnly: readOnly, localTemplates: localTemplates !== null && localTemplates !== void 0 ? localTemplates : { items: [] }, serverHandled: serverHandled, condition: condition, conditionParts: currentConditionParts, conditionMessage: currentConditionMessage, componentOverrides: componentOverrides, extraActions: extraActions, size: size, reorder: reorder }), serverCheckable ?
|
|
783
|
+
(0, jsx_runtime_1.jsx)(ExpressionServerErrors, { expression: serverCheckable, fields: fields, provider: provider, recordType: recordType, condition: condition, onConditionParts: condition ? onConditionParts : undefined, writeExpression: writeExpression })
|
|
784
|
+
: null] })] }));
|
|
363
785
|
});
|
|
364
786
|
exports.default = exports.ExpressionField;
|
|
365
787
|
//# sourceMappingURL=ExpressionField.js.map
|