@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,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Does a field's long description say more than its one-line summary?
|
|
3
|
-
*
|
|
4
|
-
* The Qorus server copies a field's plain-text `short_desc` into its markdown
|
|
5
|
-
* `desc` whenever the field declares no `desc` of its own
|
|
6
|
-
* (`QorusMapManager::getUiFieldInfo()`), so a `desc` alone does not mean there
|
|
7
|
-
* is anything more to read. Offering help on every field meant most help opened
|
|
8
|
-
* a dialog repeating the line already under the field, which teaches people the
|
|
9
|
-
* affordance is worth nothing. qorus-ide answers the same question the same way
|
|
10
|
-
* (`getFieldLongDescription` in its `helpers/descriptions.ts`).
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/** Whitespace-, case- and trailing-full-stop-insensitive. */
|
|
14
|
-
const comparisonKey = (value: string): string =>
|
|
15
|
-
value
|
|
16
|
-
.replace(/\s+/g, ' ')
|
|
17
|
-
.trim()
|
|
18
|
-
.replace(/[.\s]+$/, '')
|
|
19
|
-
.toLowerCase();
|
|
20
|
-
|
|
21
|
-
/** Enough of markdown removed that `**Webhooks**` reads as the word it styles. */
|
|
22
|
-
const plainText = (markdown: string): string =>
|
|
23
|
-
markdown
|
|
24
|
-
.replace(/`([^`\n]+)`/g, '$1')
|
|
25
|
-
.replace(/!?\[([^\]]+)\]\([^)]*\)/g, '$1')
|
|
26
|
-
.replace(/^\s{0,3}#{1,6}\s+/gm, '')
|
|
27
|
-
.replace(/(\*\*|__|\*|_)(.+?)\1/g, '$2');
|
|
28
|
-
|
|
29
|
-
export const fieldHasLongDescription = (field?: {
|
|
30
|
-
desc?: unknown;
|
|
31
|
-
short_desc?: unknown;
|
|
32
|
-
}): boolean => {
|
|
33
|
-
const long = typeof field?.desc === 'string' ? field.desc.trim() : '';
|
|
34
|
-
if (!long) {
|
|
35
|
-
return false;
|
|
36
|
-
}
|
|
37
|
-
const short = typeof field?.short_desc === 'string' ? field.short_desc.trim() : '';
|
|
38
|
-
return !short || comparisonKey(short) !== comparisonKey(plainText(long));
|
|
39
|
-
};
|
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Qorus option `ui_type` vocabulary.
|
|
3
|
-
*
|
|
4
|
-
* A `ui_type` names the widget an option is rendered with, and — because the
|
|
5
|
-
* widget decides what a complete value looks like — it is also what
|
|
6
|
-
* `validateField` switches on. Both readers have to agree about which strings
|
|
7
|
-
* are in the vocabulary, so the lists live here rather than beside either one.
|
|
8
|
-
*
|
|
9
|
-
* Grouped by what the group means to a reader, not by alphabet: the scalar
|
|
10
|
-
* types hold a single value, the collection types hold several, the choice
|
|
11
|
-
* types pick from a supplied set, and the interface types name another Qorus
|
|
12
|
-
* object by its name — which is why `isOptionInterfaceUiType` is enough for
|
|
13
|
-
* validation to treat the whole group as a non-empty string.
|
|
14
|
-
*/
|
|
15
|
-
|
|
16
|
-
export const OPTION_SCALAR_UI_TYPES = [
|
|
17
|
-
'string',
|
|
18
|
-
'long-string',
|
|
19
|
-
'data',
|
|
20
|
-
'binary',
|
|
21
|
-
'richtext',
|
|
22
|
-
'bool',
|
|
23
|
-
'boolean',
|
|
24
|
-
'date',
|
|
25
|
-
'int',
|
|
26
|
-
'integer',
|
|
27
|
-
'float',
|
|
28
|
-
'number',
|
|
29
|
-
'byte-size',
|
|
30
|
-
// an integer count of milliseconds rendered through the unit-aware timeout
|
|
31
|
-
// field; `validateField` has carried a dedicated `case 'timeout'` since the
|
|
32
|
-
// connection-options work, and a type the validator has a branch for must be
|
|
33
|
-
// in the vocabulary the same switch is keyed on — consumers ask
|
|
34
|
-
// `isOptionUiType` before they ever reach the validator, and an unlisted
|
|
35
|
-
// type reads as unknown (qorus-ide's timeout field regressed exactly this
|
|
36
|
-
// way when its local registry copy was consolidated onto this one).
|
|
37
|
-
'timeout',
|
|
38
|
-
'url',
|
|
39
|
-
'code-editor',
|
|
40
|
-
'rgbcolor',
|
|
41
|
-
'any',
|
|
42
|
-
'auto',
|
|
43
|
-
// semantic string formats (string-backed types that carry a UI-renderable identity; see the qore
|
|
44
|
-
// DataProvider QoreStringFormatDataType)
|
|
45
|
-
'email',
|
|
46
|
-
'uri',
|
|
47
|
-
'uuid',
|
|
48
|
-
'hostname',
|
|
49
|
-
'ipv4',
|
|
50
|
-
'ipv6',
|
|
51
|
-
'phone',
|
|
52
|
-
] as const;
|
|
53
|
-
|
|
54
|
-
export const OPTION_COLLECTION_UI_TYPES = [
|
|
55
|
-
'hash',
|
|
56
|
-
'free-hash',
|
|
57
|
-
'list',
|
|
58
|
-
'free-list',
|
|
59
|
-
'option_hash',
|
|
60
|
-
'file',
|
|
61
|
-
'file-as-string',
|
|
62
|
-
'collection-documents',
|
|
63
|
-
] as const;
|
|
64
|
-
|
|
65
|
-
export const OPTION_CHOICE_UI_TYPES = [
|
|
66
|
-
'enum',
|
|
67
|
-
'select-string',
|
|
68
|
-
'select-array',
|
|
69
|
-
'multi-select',
|
|
70
|
-
] as const;
|
|
71
|
-
|
|
72
|
-
export const OPTION_INTERFACE_UI_TYPES = [
|
|
73
|
-
'workflow',
|
|
74
|
-
'service',
|
|
75
|
-
'job',
|
|
76
|
-
'connection',
|
|
77
|
-
'mapper',
|
|
78
|
-
'class',
|
|
79
|
-
'value-map',
|
|
80
|
-
'fsm',
|
|
81
|
-
'qog',
|
|
82
|
-
'api-schema',
|
|
83
|
-
'auth-profile',
|
|
84
|
-
'ai-collection',
|
|
85
|
-
'ai-endpoint',
|
|
86
|
-
'ai-guardrail',
|
|
87
|
-
'ml-model',
|
|
88
|
-
'release-config',
|
|
89
|
-
'alertrule',
|
|
90
|
-
'alertsilence',
|
|
91
|
-
'installed-release',
|
|
92
|
-
'business-process',
|
|
93
|
-
'schema',
|
|
94
|
-
'test',
|
|
95
|
-
] as const;
|
|
96
|
-
|
|
97
|
-
export const OPTION_CUSTOM_UI_TYPES = [
|
|
98
|
-
'processor',
|
|
99
|
-
'processor-mappings',
|
|
100
|
-
'data-provider',
|
|
101
|
-
'tool-catalog',
|
|
102
|
-
'schema-definition',
|
|
103
|
-
'test-cases',
|
|
104
|
-
'test-value-contract',
|
|
105
|
-
'dpql',
|
|
106
|
-
'active-windows',
|
|
107
|
-
] as const;
|
|
108
|
-
|
|
109
|
-
export const OPTION_UI_TYPES = [
|
|
110
|
-
...OPTION_SCALAR_UI_TYPES,
|
|
111
|
-
...OPTION_COLLECTION_UI_TYPES,
|
|
112
|
-
...OPTION_CHOICE_UI_TYPES,
|
|
113
|
-
...OPTION_INTERFACE_UI_TYPES,
|
|
114
|
-
...OPTION_CUSTOM_UI_TYPES,
|
|
115
|
-
] as const;
|
|
116
|
-
|
|
117
|
-
export type TOptionUiType = (typeof OPTION_UI_TYPES)[number];
|
|
118
|
-
export type TOptionInterfaceUiType = (typeof OPTION_INTERFACE_UI_TYPES)[number];
|
|
119
|
-
|
|
120
|
-
export const LEGACY_FIELD_UI_TYPES = [
|
|
121
|
-
'api-manager',
|
|
122
|
-
'array',
|
|
123
|
-
'array-auto',
|
|
124
|
-
'array-of-pairs',
|
|
125
|
-
'class-array',
|
|
126
|
-
'class-connectors',
|
|
127
|
-
'constant-array',
|
|
128
|
-
'context-selector',
|
|
129
|
-
'cron',
|
|
130
|
-
'data-provider-options',
|
|
131
|
-
'file-array',
|
|
132
|
-
'fsm-list',
|
|
133
|
-
'function-array',
|
|
134
|
-
'http-content',
|
|
135
|
-
'method-name',
|
|
136
|
-
'opcua-method-arguments',
|
|
137
|
-
'opcua-write-values',
|
|
138
|
-
'options',
|
|
139
|
-
'select',
|
|
140
|
-
'service-events',
|
|
141
|
-
'service-webhooks',
|
|
142
|
-
'type-selector',
|
|
143
|
-
] as const;
|
|
144
|
-
|
|
145
|
-
export const KNOWN_QORUS_UI_TYPES = [...OPTION_UI_TYPES, ...LEGACY_FIELD_UI_TYPES] as const;
|
|
146
|
-
|
|
147
|
-
export type TLegacyFieldUiType = (typeof LEGACY_FIELD_UI_TYPES)[number];
|
|
148
|
-
export type TKnownQorusUiType = (typeof KNOWN_QORUS_UI_TYPES)[number];
|
|
149
|
-
|
|
150
|
-
const optionUiTypeSet = new Set<string>(OPTION_UI_TYPES);
|
|
151
|
-
const interfaceUiTypeSet = new Set<string>(OPTION_INTERFACE_UI_TYPES);
|
|
152
|
-
const knownQorusUiTypeSet = new Set<string>(KNOWN_QORUS_UI_TYPES);
|
|
153
|
-
|
|
154
|
-
export const isOptionUiType = (type: unknown): type is TOptionUiType =>
|
|
155
|
-
typeof type === 'string' && optionUiTypeSet.has(type);
|
|
156
|
-
|
|
157
|
-
export const isOptionInterfaceUiType = (type: unknown): type is TOptionInterfaceUiType =>
|
|
158
|
-
typeof type === 'string' && interfaceUiTypeSet.has(type);
|
|
159
|
-
|
|
160
|
-
export const isKnownQorusUiType = (type: unknown): type is TKnownQorusUiType =>
|
|
161
|
-
typeof type === 'string' && knownQorusUiTypeSet.has(type);
|
|
162
|
-
|
|
163
|
-
/** The spellings that mean "no concrete type" wherever they appear. */
|
|
164
|
-
export const UNTYPED_OPTION_TYPES = ['any', 'auto'] as const;
|
|
165
|
-
|
|
166
|
-
export type TUntypedOptionType = (typeof UNTYPED_OPTION_TYPES)[number];
|
|
167
|
-
|
|
168
|
-
const untypedOptionTypeSet = new Set<string>(UNTYPED_OPTION_TYPES);
|
|
169
|
-
|
|
170
|
-
/**
|
|
171
|
-
* `auto` and `any` declare no type: they say the AUTHOR chooses one, and the
|
|
172
|
-
* chosen type is recorded beside the value, not in the schema. A reader that
|
|
173
|
-
* takes the schema's word therefore learns nothing about what the value has to
|
|
174
|
-
* look like — `validateField` handles these two by auto-detecting from the
|
|
175
|
-
* value, which accepts whatever is there.
|
|
176
|
-
*
|
|
177
|
-
* This list lives here, with the rest of the type vocabulary, rather than in
|
|
178
|
-
* `engine/typeChoices` where it started: a helper cannot import from a
|
|
179
|
-
* component, and the rule was already spelled out by hand in seven other
|
|
180
|
-
* places.
|
|
181
|
-
*/
|
|
182
|
-
export const isUntypedOptionType = (type: unknown): type is TUntypedOptionType =>
|
|
183
|
-
typeof type === 'string' && untypedOptionTypeSet.has(type);
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* The type a declaration is READ as when it names several.
|
|
187
|
-
*
|
|
188
|
-
* A data provider option that accepts more than one type is served with them as
|
|
189
|
-
* a list (`DataProvider::getInfoAsData()`), and the form renders such an option
|
|
190
|
-
* as the first of them (`FormEngine`'s `getType`). Every other reader of a
|
|
191
|
-
* declared type has to answer from the same entry, or the row is rendered as
|
|
192
|
-
* one type and judged as another — the rule was spelled out by hand in four
|
|
193
|
-
* places, each slightly differently, and the odd one out silently answered
|
|
194
|
-
* "no type at all" for every multi-type option.
|
|
195
|
-
*/
|
|
196
|
-
export const firstDeclaredType = (type: unknown): string | undefined => {
|
|
197
|
-
const declared = Array.isArray(type) ? type[0] : type;
|
|
198
|
-
return typeof declared === 'string' ? declared : undefined;
|
|
199
|
-
};
|
package/src/helpers/options.ts
DELETED
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
import { IQorusFormSchema, TQorusFormFieldSchema } from '@qoretechnologies/ts-toolkit';
|
|
2
|
-
|
|
3
|
-
export const getOptionsFromRequiredGroups = (
|
|
4
|
-
schema: IQorusFormSchema,
|
|
5
|
-
groups: string[],
|
|
6
|
-
currentOption?: string
|
|
7
|
-
): string[] => {
|
|
8
|
-
return Object.keys(schema)
|
|
9
|
-
.filter((option) => {
|
|
10
|
-
return (schema[option] as TQorusFormFieldSchema).required_groups?.some((group) =>
|
|
11
|
-
groups.includes(group)
|
|
12
|
-
);
|
|
13
|
-
})
|
|
14
|
-
.filter((option) => option !== currentOption);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export const getRequiredOptionMessage = (
|
|
18
|
-
schema: IQorusFormSchema,
|
|
19
|
-
groups: string[],
|
|
20
|
-
currentField: string
|
|
21
|
-
): string => {
|
|
22
|
-
if ((schema[currentField] as TQorusFormFieldSchema).required) {
|
|
23
|
-
return 'This field is required';
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const requiredOptions = getOptionsFromRequiredGroups(schema, groups, currentField)
|
|
27
|
-
.map((option) => (schema[option] as TQorusFormFieldSchema).display_name)
|
|
28
|
-
.join(' or ');
|
|
29
|
-
|
|
30
|
-
return `This field or ${requiredOptions} is required`;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* The value of one element of a list field.
|
|
35
|
-
*
|
|
36
|
-
* A list element arrives in either of two shapes, and both are legitimate. The
|
|
37
|
-
* editor keeps each element in a `{value, type}` envelope while the form is
|
|
38
|
-
* being worked on — that is what `formatToServerValue` writes — while a value
|
|
39
|
-
* read back from storage holds what the server contract asks for, which for a
|
|
40
|
-
* list of strings is the bare strings.
|
|
41
|
-
*
|
|
42
|
-
* Reaching straight for `.value` answered `undefined` for every stored element.
|
|
43
|
-
* On a read that emptied the row; on a validation pass it failed the element as
|
|
44
|
-
* empty; and on an autosaving form the emptiness was then written back over the
|
|
45
|
-
* stored value. One helper so the readers cannot disagree about which shape
|
|
46
|
-
* they are looking at.
|
|
47
|
-
*
|
|
48
|
-
* An array is never an envelope — a rich-text document is itself an array, and
|
|
49
|
-
* `'value' in []` is false anyway, but saying so keeps the intent legible.
|
|
50
|
-
*/
|
|
51
|
-
export const getListElementValue = (element: unknown): unknown =>
|
|
52
|
-
element && typeof element === 'object' && !Array.isArray(element) && 'value' in element ?
|
|
53
|
-
(element as { value: unknown }).value
|
|
54
|
-
: element;
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* The schema with every one-of group that offers no choice turned back into a
|
|
58
|
-
* plain required field.
|
|
59
|
-
*
|
|
60
|
-
* A `required_groups` group says *"at least one of these"*, and the whole
|
|
61
|
-
* affordance built on it — the ONE OF header, the `Covers` / `Covered by “X”`
|
|
62
|
-
* chips, the *"this field or X is required"* message — exists to tell an author
|
|
63
|
-
* that they have a CHOICE and which way they have answered it. When the group
|
|
64
|
-
* has a single member in the schema in hand, there is no choice: that field
|
|
65
|
-
* must be set, which is exactly what `required` already means. Saying it in the
|
|
66
|
-
* one-of grammar instead is worse than saying nothing, because a green tick
|
|
67
|
-
* beside a value reads as confirmation of the VALUE — a Qorus test author read
|
|
68
|
-
* `✓ COVERS` beside their service as "yes, this is the service your test is
|
|
69
|
-
* about", which the form never said and cannot know.
|
|
70
|
-
*
|
|
71
|
-
* This is not a hypothetical: a server may legitimately declare a group over an
|
|
72
|
-
* API-only alternative it then hides from the form (Qorus test steps put
|
|
73
|
-
* `target` in a group with `service`, and hide `target`), so the form is handed
|
|
74
|
-
* one member of a two-member group. The group is still real for the API and
|
|
75
|
-
* must stay in the schema the server serves; it is only this form that has
|
|
76
|
-
* nothing to offer.
|
|
77
|
-
*
|
|
78
|
-
* The rewrite is exact rather than cosmetic: a one-of over one option and a
|
|
79
|
-
* required option are the same constraint, so validation, the completion meter
|
|
80
|
-
* and the required-only filter all keep saying what they said — in the grammar
|
|
81
|
-
* that fits.
|
|
82
|
-
*
|
|
83
|
-
* A field in a degenerate group is required by that group ALONE, so it is
|
|
84
|
-
* marked required even when it also belongs to a group that does offer a
|
|
85
|
-
* choice; that other group keeps its affordance and is satisfied by this field
|
|
86
|
-
* either way. The key is deleted rather than emptied because `[]` is truthy,
|
|
87
|
-
* and every consumer tests `option.required_groups` for existence.
|
|
88
|
-
*
|
|
89
|
-
* Returns the schema unchanged — the same object — when no group degenerates,
|
|
90
|
-
* so it can sit on a memo without giving every render a new schema identity.
|
|
91
|
-
*/
|
|
92
|
-
export const resolveDegenerateRequiredGroups = <T extends IQorusFormSchema | undefined>(
|
|
93
|
-
schema: T
|
|
94
|
-
): T => {
|
|
95
|
-
if (!schema) return schema;
|
|
96
|
-
|
|
97
|
-
const membersPerGroup: Record<string, number> = {};
|
|
98
|
-
Object.values(schema).forEach((option) => {
|
|
99
|
-
(option as TQorusFormFieldSchema)?.required_groups?.forEach((group) => {
|
|
100
|
-
membersPerGroup[group] = (membersPerGroup[group] ?? 0) + 1;
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
|
|
104
|
-
const degenerate = (group: string): boolean => membersPerGroup[group] < 2;
|
|
105
|
-
if (!Object.keys(membersPerGroup).some(degenerate)) return schema;
|
|
106
|
-
|
|
107
|
-
const resolved: IQorusFormSchema = {};
|
|
108
|
-
Object.entries(schema).forEach(([name, option]) => {
|
|
109
|
-
const groups = (option as TQorusFormFieldSchema)?.required_groups;
|
|
110
|
-
if (!groups?.some(degenerate)) {
|
|
111
|
-
resolved[name] = option;
|
|
112
|
-
return;
|
|
113
|
-
}
|
|
114
|
-
const kept = groups.filter((group) => !degenerate(group));
|
|
115
|
-
const rest = { ...(option as TQorusFormFieldSchema) };
|
|
116
|
-
delete rest.required_groups;
|
|
117
|
-
resolved[name] = {
|
|
118
|
-
...rest,
|
|
119
|
-
required: true,
|
|
120
|
-
...(kept.length ? { required_groups: kept } : {}),
|
|
121
|
-
} as TQorusFormFieldSchema;
|
|
122
|
-
});
|
|
123
|
-
return resolved as T;
|
|
124
|
-
};
|
|
125
|
-
|
|
126
|
-
/** A note attached to a field or to one of its allowed values. */
|
|
127
|
-
export interface ISchemaMessage {
|
|
128
|
-
intent?: string;
|
|
129
|
-
title?: string;
|
|
130
|
-
content?: string;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/** The sentence a refusal with no reason of its own falls back to. */
|
|
134
|
-
export const UNAVAILABLE_VALUE_FALLBACK_REASON = 'This value is not available';
|
|
135
|
-
|
|
136
|
-
/**
|
|
137
|
-
* Which of a refused value's messages is the REASON it was refused.
|
|
138
|
-
*
|
|
139
|
-
* A value can carry several notes, and only one of them explains why it cannot
|
|
140
|
-
* be picked. The most serious one does: a `danger` message is what a refusal
|
|
141
|
-
* sounds like, a `warning` is the next thing to it, and an `info` note beside
|
|
142
|
-
* either is a remark about the value rather than about the refusal.
|
|
143
|
-
*
|
|
144
|
-
* Both the form's resolver and the picker that renders a pre-resolved refusal
|
|
145
|
-
* ask this, so the two cannot disagree about which words stand in for a choice.
|
|
146
|
-
*/
|
|
147
|
-
export const getRefusalMessage = <T extends ISchemaMessage>(messages?: T[]): T | undefined =>
|
|
148
|
-
messages?.find((message) => message.intent === 'danger') ||
|
|
149
|
-
messages?.find((message) => message.intent === 'warning') ||
|
|
150
|
-
messages?.[0];
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { TQorusForm } from '@qoretechnologies/ts-toolkit';
|
|
2
|
-
|
|
3
|
-
export type TRecordType = 'search' | 'search-single' | 'create' | 'update' | 'delete';
|
|
4
|
-
export type TRealRecordType = 'read' | 'create' | 'update' | 'delete';
|
|
5
|
-
|
|
6
|
-
export type TProviderTypeSupports = {
|
|
7
|
-
[key in `supports_${TRealRecordType}`]?: boolean;
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export type TProviderTypeArgs = {
|
|
11
|
-
[key in `${TRecordType}_args`]?: TQorusForm | TQorusForm[];
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* A data-provider selection, in the shape the form holds it.
|
|
16
|
-
*
|
|
17
|
-
* The `supports_*` flags say which record operations the selected provider can
|
|
18
|
-
* perform; validation reads them to decide whether a provider is a legitimate
|
|
19
|
-
* target for the operation the field was configured for.
|
|
20
|
-
*/
|
|
21
|
-
export interface IProviderType extends TProviderTypeSupports, TProviderTypeArgs {
|
|
22
|
-
type: string;
|
|
23
|
-
name: string;
|
|
24
|
-
path?: string;
|
|
25
|
-
options?: TQorusForm;
|
|
26
|
-
subtype?: 'request' | 'response';
|
|
27
|
-
hasApiContext?: boolean;
|
|
28
|
-
optionsChanged?: boolean;
|
|
29
|
-
searchOptionsChanged?: boolean;
|
|
30
|
-
desc?: string;
|
|
31
|
-
use_args?: boolean;
|
|
32
|
-
args?: any;
|
|
33
|
-
up?: boolean;
|
|
34
|
-
supports_request?: boolean;
|
|
35
|
-
supports_messages?: 'ASYNC' | 'SYNC' | 'NONE';
|
|
36
|
-
supports_observable?: boolean;
|
|
37
|
-
transaction_management?: boolean;
|
|
38
|
-
record_requires_search_options?: boolean;
|
|
39
|
-
create_args_freeform?: TQorusForm[];
|
|
40
|
-
is_api_call?: boolean;
|
|
41
|
-
search_options?: TQorusForm;
|
|
42
|
-
descriptions?: string[];
|
|
43
|
-
message_id?: string;
|
|
44
|
-
message?: {
|
|
45
|
-
type: string;
|
|
46
|
-
value: any;
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* A provider value as an object, from either representation a caller may hold.
|
|
52
|
-
*
|
|
53
|
-
* A provider reaches the form either already expanded into `IProviderType`, or
|
|
54
|
-
* as the flat path string the server stores — `"factory/db{driver=pgsql}/table"`
|
|
55
|
-
* or the plain `"type/name/path"`. Returns `null` for anything that is neither,
|
|
56
|
-
* so a caller reports an invalid value rather than reading fields off nothing.
|
|
57
|
-
*/
|
|
58
|
-
export const maybeBuildOptionProvider = (provider: unknown): IProviderType | null => {
|
|
59
|
-
if (!provider) {
|
|
60
|
-
return null;
|
|
61
|
-
}
|
|
62
|
-
if (typeof provider === 'object') {
|
|
63
|
-
return provider as IProviderType;
|
|
64
|
-
}
|
|
65
|
-
if (typeof provider !== 'string') {
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
if (provider.startsWith('factory')) {
|
|
70
|
-
const fixedProvider = provider.endsWith('/') ? provider : `${provider}/`;
|
|
71
|
-
const [factoryType] = fixedProvider.split('/');
|
|
72
|
-
const factoryName = fixedProvider.substring(
|
|
73
|
-
fixedProvider.indexOf('/') + 1,
|
|
74
|
-
fixedProvider.lastIndexOf('{')
|
|
75
|
-
);
|
|
76
|
-
const options = fixedProvider.substring(
|
|
77
|
-
fixedProvider.indexOf('{') + 1,
|
|
78
|
-
fixedProvider.lastIndexOf('}')
|
|
79
|
-
);
|
|
80
|
-
const optionsObject = options
|
|
81
|
-
.split(',')
|
|
82
|
-
.filter(Boolean)
|
|
83
|
-
.reduce<Record<string, string>>((result, option) => {
|
|
84
|
-
const [key, value] = option.split('=');
|
|
85
|
-
result[key] = value;
|
|
86
|
-
return result;
|
|
87
|
-
}, {});
|
|
88
|
-
const result: IProviderType = {
|
|
89
|
-
type: factoryType,
|
|
90
|
-
name: factoryName,
|
|
91
|
-
path: fixedProvider.substring(fixedProvider.lastIndexOf('}/') + 2),
|
|
92
|
-
options: optionsObject as unknown as TQorusForm,
|
|
93
|
-
};
|
|
94
|
-
if (provider.includes('?options_changed')) {
|
|
95
|
-
result.optionsChanged = true;
|
|
96
|
-
}
|
|
97
|
-
return result;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const [type, name, ...path] = provider.split('/');
|
|
101
|
-
return { type, name, path: path.join('/') };
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
/**
|
|
105
|
-
* An FSM variable action — which variable, and what is done to it.
|
|
106
|
-
*
|
|
107
|
-
* The provider half is `Partial<IProviderType>` because the action's own
|
|
108
|
-
* `action_type` decides which provider fields have to be there; validation
|
|
109
|
-
* re-runs the matching provider validator over the merged value rather than
|
|
110
|
-
* duplicating those rules here.
|
|
111
|
-
*/
|
|
112
|
-
export type TVariableActionValue = {
|
|
113
|
-
var_type: 'globalvar' | 'localvar' | 'autovar';
|
|
114
|
-
var_name: string;
|
|
115
|
-
transaction_action?: 'commit' | 'rollback' | 'begin-transaction';
|
|
116
|
-
action_type?:
|
|
117
|
-
| 'search'
|
|
118
|
-
| 'search-single'
|
|
119
|
-
| 'update'
|
|
120
|
-
| 'create'
|
|
121
|
-
| 'delete'
|
|
122
|
-
| 'transaction'
|
|
123
|
-
| 'send-message'
|
|
124
|
-
| 'apicall';
|
|
125
|
-
} & Partial<IProviderType>;
|
package/src/helpers/scrollbar.ts
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { css } from 'styled-components';
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
* The thin, unobtrusive scrollbar the Qorus surfaces use — a transparent track and a
|
|
5
|
-
* translucent rounded thumb — in place of the platform default, which reads as heavy
|
|
6
|
-
* chrome inside a dark panel. Drop it into any `styled` scroll container:
|
|
7
|
-
*
|
|
8
|
-
* const Scroll = styled.div`
|
|
9
|
-
* overflow-y: auto;
|
|
10
|
-
* ${thinScrollbar}
|
|
11
|
-
* `;
|
|
12
|
-
*
|
|
13
|
-
* webkit-only on purpose: setting `scrollbar-width` as well lets Chromium override this
|
|
14
|
-
* custom 6px with its own wider "thin", so the two disagree. Firefox keeps its native
|
|
15
|
-
* bar, which is already slim.
|
|
16
|
-
*/
|
|
17
|
-
export const thinScrollbar = css`
|
|
18
|
-
&::-webkit-scrollbar {
|
|
19
|
-
width: 6px;
|
|
20
|
-
height: 6px;
|
|
21
|
-
}
|
|
22
|
-
&::-webkit-scrollbar-track {
|
|
23
|
-
background: transparent;
|
|
24
|
-
}
|
|
25
|
-
&::-webkit-scrollbar-thumb {
|
|
26
|
-
background: rgba(255, 255, 255, 0.15);
|
|
27
|
-
border-radius: 3px;
|
|
28
|
-
}
|
|
29
|
-
&::-webkit-scrollbar-thumb:hover {
|
|
30
|
-
background: rgba(255, 255, 255, 0.28);
|
|
31
|
-
}
|
|
32
|
-
`;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Which string field types hold one line, and how to keep them that way.
|
|
3
|
-
*
|
|
4
|
-
* The server already draws this distinction and the IDE was throwing it away:
|
|
5
|
-
* a service's `name` is declared `ui_type: "string"` while its `description` is
|
|
6
|
-
* `ui_type: "long-string"` with `markdown: True` (see `ServiceMetadata.qc`).
|
|
7
|
-
* Every one of them — plus `email`, `uuid`, `hostname`, `ipv4`, `ipv6` and
|
|
8
|
-
* `phone` — rendered through the same growing textarea, so a technical name, a
|
|
9
|
-
* version and an IP address all accepted Enter.
|
|
10
|
-
*
|
|
11
|
-
* That is not a cosmetic problem. These values become YAML keys, class names,
|
|
12
|
-
* URLs and identifiers; a newline in one of them is invalid input that the form
|
|
13
|
-
* happily accepted and passed on, and the operator had no way to see it.
|
|
14
|
-
*
|
|
15
|
-
* The rule is the server's own contract, stated once here rather than guessed
|
|
16
|
-
* per field, and it is enforced in `LongString.tsx`.
|
|
17
|
-
*
|
|
18
|
-
* It lives in reqraft rather than in a consumer because the consumer is not the
|
|
19
|
-
* only renderer: qorus-ide fixed this in its OWN long-string field, and every
|
|
20
|
-
* form that goes through FormEngine — which is where an alert rule's Internal
|
|
21
|
-
* Name, Name and Short Description are — reaches THIS one instead. The fix was
|
|
22
|
-
* real and the field in front of the operator still took Enter.
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* The string types that hold exactly one line — the ones routed to a textarea
|
|
27
|
-
* today.
|
|
28
|
-
*
|
|
29
|
-
* Listed explicitly rather than derived by excluding the document types,
|
|
30
|
-
* because the two directions fail very differently. Missing a single-line type
|
|
31
|
-
* here leaves it behaving as it does now — no worse. Wrongly treating a new
|
|
32
|
-
* DOCUMENT type as single-line would flatten a user's text as they typed it,
|
|
33
|
-
* which is data loss. So an unrecognised type stays multi-line.
|
|
34
|
-
*/
|
|
35
|
-
const SINGLE_LINE_STRING_TYPES = new Set([
|
|
36
|
-
'string',
|
|
37
|
-
'email',
|
|
38
|
-
'uri',
|
|
39
|
-
'uuid',
|
|
40
|
-
'hostname',
|
|
41
|
-
'ipv4',
|
|
42
|
-
'ipv6',
|
|
43
|
-
'phone',
|
|
44
|
-
]);
|
|
45
|
-
|
|
46
|
-
/** True when a string field of this type holds a single line. */
|
|
47
|
-
export const isSingleLineStringType = (type?: string): boolean =>
|
|
48
|
-
!!type && SINGLE_LINE_STRING_TYPES.has(type);
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* Flattens any line break to a single space.
|
|
52
|
-
*
|
|
53
|
-
* A space rather than nothing, because the newline is usually where a word
|
|
54
|
-
* boundary was — pasting two lines into a name should read as two words, not
|
|
55
|
-
* one run-together one. CR, LF and CRLF all collapse to one space, and the
|
|
56
|
-
* result is trimmed of leading/trailing whitespace the break introduced.
|
|
57
|
-
*/
|
|
58
|
-
export const flattenToSingleLine = (value: string): string =>
|
|
59
|
-
value.replace(/\r\n|\r|\n/g, ' ').replace(/ {2,}/g, ' ');
|
|
60
|
-
|
|
61
|
-
/** True when the value carries a line break this field should not hold. */
|
|
62
|
-
export const hasLineBreak = (value: string): boolean => /\r|\n/.test(value);
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import type { TMarkdownRenderer } from '../components/Description/markdownRendererContext';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* What a template picker should actually list.
|
|
5
|
-
*
|
|
6
|
-
* Pickers group templates by category, which is what makes a long catalogue
|
|
7
|
-
* scannable. A LONE category buys nothing and costs a click: the author opens
|
|
8
|
-
* the picker, sees one row naming the category, clicks it, and only then sees
|
|
9
|
-
* the values — with a back arrow as the only other thing on offer. So a single
|
|
10
|
-
* category is opened for them.
|
|
11
|
-
*
|
|
12
|
-
* Two or more categories keep the grouping, because there the headers are doing
|
|
13
|
-
* real work. This only ever removes a step that could not have gone any other
|
|
14
|
-
* way.
|
|
15
|
-
*
|
|
16
|
-
* Lives here rather than beside either picker: `TemplateField` renders the
|
|
17
|
-
* "Select Template" dropdown and `RichText` renders the in-editor `$` list, and
|
|
18
|
-
* `TemplateField` already imports `RichText` — so a shared home is the only one
|
|
19
|
-
* that does not close an import cycle.
|
|
20
|
-
*/
|
|
21
|
-
export const templateItemsToShow = <T,>(items: T[] | undefined): T[] | undefined => {
|
|
22
|
-
if (items?.length !== 1) {
|
|
23
|
-
return items;
|
|
24
|
-
}
|
|
25
|
-
const only = items[0] as { items?: unknown[] };
|
|
26
|
-
return Array.isArray(only.items) && only.items.length ? (only.items as T[]) : items;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* A picker row's description, DRAWN.
|
|
31
|
-
*
|
|
32
|
-
* A description is prose, and a host that writes prose writes markdown: the
|
|
33
|
-
* same author, in the same dialect, as the field descriptions and schema
|
|
34
|
-
* messages this package already draws through the host's renderer. Left as a
|
|
35
|
-
* string, a row explaining that a step needs a **Fixture Output** printed the
|
|
36
|
-
* asterisks at the reader.
|
|
37
|
-
*
|
|
38
|
-
* WHERE THIS MAY BE CALLED, and why it is not simply done at the source: the
|
|
39
|
-
* template list is a memo KEY in several places — `TemplateField` stringifies
|
|
40
|
-
* both the incoming `templates` and the resolved `filteredTemplates`, and the
|
|
41
|
-
* list is handed down to nested fields that stringify it again. `JSON.stringify`
|
|
42
|
-
* throws on a React element's circular `_owner`, so an element anywhere in the
|
|
43
|
-
* list takes the whole form down to a blank panel.
|
|
44
|
-
*
|
|
45
|
-
* So this runs at the LAST hop only — the call that hands items to a Reqore
|
|
46
|
-
* control, after every key has been computed — and its result is never passed
|
|
47
|
-
* on to anything that might stringify it. Reqore itself does not: it draws the
|
|
48
|
-
* description into a `ReqoreTextEffect` and styled-components filters the prop
|
|
49
|
-
* off the DOM.
|
|
50
|
-
*
|
|
51
|
-
* Without a host renderer the items are returned untouched, so a host that has
|
|
52
|
-
* no markdown keeps exactly what it had.
|
|
53
|
-
*/
|
|
54
|
-
export const renderTemplateItemDescriptions = <T,>(
|
|
55
|
-
items: T[] | undefined,
|
|
56
|
-
render: TMarkdownRenderer | undefined
|
|
57
|
-
): T[] | undefined => {
|
|
58
|
-
if (!render || !items?.length) {
|
|
59
|
-
return items;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return items.map((item) => {
|
|
63
|
-
const entry = item as { description?: unknown; items?: unknown };
|
|
64
|
-
const next = { ...entry } as Record<string, unknown>;
|
|
65
|
-
|
|
66
|
-
if (typeof entry.description === 'string' && entry.description.trim()) {
|
|
67
|
-
/* `compact`, for the reason the context gives: a row is a constrained
|
|
68
|
-
container, and markdown authored as a document opens with a heading
|
|
69
|
-
that would outgrow the label above it. */
|
|
70
|
-
next.description = render({ value: entry.description, compact: true });
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// Only when the item HAS children — writing the key unconditionally would
|
|
74
|
-
// give every leaf an `items` a picker could read as an empty submenu.
|
|
75
|
-
if (Array.isArray(entry.items)) {
|
|
76
|
-
next.items = renderTemplateItemDescriptions(entry.items, render);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
return next as T;
|
|
80
|
-
});
|
|
81
|
-
};
|