@qoretechnologies/reqraft 0.10.64 → 0.10.65-pr.137.g62fcecc
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/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 +25 -5
- package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts +36 -5
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.js +340 -62
- package/dist/components/dpqlEditor/dpqlHelpers.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.d.ts +11 -7
- package/dist/components/dpqlEditor/dpqlTags.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlTags.js +35 -17
- package/dist/components/dpqlEditor/dpqlTags.js.map +1 -1
- package/dist/components/dpqlEditor/types.d.ts +54 -8
- package/dist/components/dpqlEditor/types.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.d.ts +2 -2
- package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
- package/dist/components/dpqlEditor/useDpqlSession.js +16 -7
- 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 +207 -97
- package/dist/components/form/engine/CompactRow.js.map +1 -1
- package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
- package/dist/components/form/engine/CompactToolbar.js +29 -3
- package/dist/components/form/engine/CompactToolbar.js.map +1 -1
- package/dist/components/form/engine/FormEngine.d.ts +58 -10
- package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
- package/dist/components/form/engine/FormEngine.js +542 -112
- package/dist/components/form/engine/FormEngine.js.map +1 -1
- package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
- package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
- package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
- package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
- package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
- package/dist/components/form/engine/OptionFieldMessages.js +24 -3
- package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts +2 -2
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.js +12 -6
- package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
- package/dist/components/form/engine/compactRowContext.d.ts +21 -0
- 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 +20 -10
- package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowStyles.js +36 -30
- 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/readFirst.d.ts +24 -8
- package/dist/components/form/engine/readFirst.d.ts.map +1 -1
- package/dist/components/form/engine/readFirst.js +77 -109
- package/dist/components/form/engine/readFirst.js.map +1 -1
- package/dist/components/form/engine/readFirstColors.d.ts +30 -0
- package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
- package/dist/components/form/engine/readFirstColors.js +51 -0
- package/dist/components/form/engine/readFirstColors.js.map +1 -0
- package/dist/components/form/engine/rowFocus.d.ts +2 -0
- package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
- package/dist/components/form/engine/rowFocus.js +26 -3
- package/dist/components/form/engine/rowFocus.js.map +1 -1
- package/dist/components/form/engine/typeChoices.d.ts +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.js +2 -1
- package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
- package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
- package/dist/components/form/engine/variants/variantParts.js +25 -17
- package/dist/components/form/engine/variants/variantParts.js.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.js +3 -3
- package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
- package/dist/components/form/expressions/ExpressionField.d.ts +64 -3
- package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
- package/dist/components/form/expressions/ExpressionField.js +459 -100
- 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 +27 -9
- 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.map +1 -1
- package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js +5 -4
- 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 +6 -3
- package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js.map +1 -1
- package/dist/components/form/expressions/builder/index.d.ts +24 -2
- package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/index.js +138 -78
- 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/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 +40 -9
- 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 +7 -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 +26 -9
- package/dist/components/form/fields/Field.js.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.js +17 -4
- package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
- 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 +20 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.js +81 -36
- package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
- package/dist/components/form/fields/auto/hostEditorValue.d.ts +30 -0
- package/dist/components/form/fields/auto/hostEditorValue.d.ts.map +1 -0
- package/dist/components/form/fields/auto/hostEditorValue.js +53 -0
- package/dist/components/form/fields/auto/hostEditorValue.js.map +1 -0
- package/dist/components/form/fields/binary/Binary.d.ts.map +1 -1
- package/dist/components/form/fields/binary/Binary.js +23 -3
- package/dist/components/form/fields/binary/Binary.js.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.d.ts +5 -0
- package/dist/components/form/fields/boolean/Boolean.d.ts.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.js +9 -1
- package/dist/components/form/fields/boolean/Boolean.js.map +1 -1
- package/dist/components/form/fields/color/Color.d.ts +103 -16
- package/dist/components/form/fields/color/Color.d.ts.map +1 -1
- package/dist/components/form/fields/color/Color.js +616 -16
- package/dist/components/form/fields/color/Color.js.map +1 -1
- package/dist/components/form/fields/emittedValues.d.ts +34 -3
- package/dist/components/form/fields/emittedValues.d.ts.map +1 -1
- package/dist/components/form/fields/emittedValues.js +24 -1
- package/dist/components/form/fields/emittedValues.js.map +1 -1
- package/dist/components/form/fields/file/File.d.ts +1 -1
- package/dist/components/form/fields/file/File.d.ts.map +1 -1
- package/dist/components/form/fields/file/File.js +4 -2
- package/dist/components/form/fields/file/File.js.map +1 -1
- package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
- package/dist/components/form/fields/long-string/LongString.js +17 -3
- 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 +4 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
- package/dist/components/form/fields/number/Number.d.ts +6 -0
- package/dist/components/form/fields/number/Number.d.ts.map +1 -1
- package/dist/components/form/fields/number/Number.js +41 -6
- package/dist/components/form/fields/number/Number.js.map +1 -1
- package/dist/components/form/fields/object/Object.d.ts +1 -1
- package/dist/components/form/fields/object/Object.d.ts.map +1 -1
- package/dist/components/form/fields/object/Object.js +4 -2
- package/dist/components/form/fields/object/Object.js.map +1 -1
- package/dist/components/form/fields/pendingEdit.d.ts +52 -0
- package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
- package/dist/components/form/fields/pendingEdit.js +79 -0
- package/dist/components/form/fields/pendingEdit.js.map +1 -0
- package/dist/components/form/fields/rich-text/RichText.d.ts +8 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.js +188 -82
- 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 +49 -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 +2 -0
- package/dist/components/form/fields/select/Select.d.ts.map +1 -1
- package/dist/components/form/fields/select/Select.js +19 -10
- package/dist/components/form/fields/select/Select.js.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.d.ts.map +1 -1
- package/dist/components/form/fields/select/SelectCollection.js +8 -2
- 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 +13 -5
- package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
- package/dist/components/form/fields/template/TemplateBrowser.d.ts +22 -0
- package/dist/components/form/fields/template/TemplateBrowser.d.ts.map +1 -0
- package/dist/components/form/fields/template/TemplateBrowser.js +54 -0
- package/dist/components/form/fields/template/TemplateBrowser.js.map +1 -0
- package/dist/components/form/fields/template/TemplateField.d.ts +102 -1
- package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateField.js +572 -85
- package/dist/components/form/fields/template/TemplateField.js.map +1 -1
- 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 +9 -11
- package/dist/components/form/fields/template/TemplateText.js.map +1 -1
- 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 +10 -0
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +23 -1
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.js +19 -7
- package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
- package/dist/components/log/Log.d.ts.map +1 -1
- package/dist/components/log/Log.js +16 -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 +43 -0
- package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
- package/dist/components/smartEditor/CompletionMenu.js +196 -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 +164 -180
- package/dist/components/smartEditor/SmartEditor.js.map +1 -1
- package/dist/components/smartEditor/completionStyle.d.ts +27 -0
- package/dist/components/smartEditor/completionStyle.d.ts.map +1 -0
- package/dist/components/smartEditor/completionStyle.js +68 -0
- package/dist/components/smartEditor/completionStyle.js.map +1 -0
- package/dist/components/smartEditor/index.d.ts +5 -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 +18 -0
- package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
- package/dist/components/smartEditor/templateCompletions.js +94 -0
- package/dist/components/smartEditor/templateCompletions.js.map +1 -0
- package/dist/components/smartEditor/typedReferences.d.ts +21 -0
- package/dist/components/smartEditor/typedReferences.d.ts.map +1 -0
- package/dist/components/smartEditor/typedReferences.js +82 -0
- package/dist/components/smartEditor/typedReferences.js.map +1 -0
- package/dist/components/smartEditor/types.d.ts +33 -1
- package/dist/components/smartEditor/types.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.d.ts +32 -0
- package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.js +228 -118
- 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 +279 -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/supportTicket/AttachmentChips.d.ts.map +1 -1
- package/dist/components/supportTicket/AttachmentChips.js +15 -5
- package/dist/components/supportTicket/AttachmentChips.js.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.d.ts +9 -2
- package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.js +27 -6
- package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
- package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
- package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketHeader.js +20 -2
- package/dist/components/supportTicket/TicketHeader.js.map +1 -1
- package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
- package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.js +9 -4
- package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
- package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
- package/dist/components/ticketThread/TicketThread.js +38 -13
- package/dist/components/ticketThread/TicketThread.js.map +1 -1
- package/dist/helpers/descriptionTooltip.d.ts +43 -0
- package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
- package/dist/helpers/descriptionTooltip.js +70 -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 +107 -2
- package/dist/helpers/expressions.d.ts.map +1 -1
- package/dist/helpers/expressions.js +223 -8
- 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/qorusTypeCatalogue.d.ts +53 -0
- package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
- package/dist/helpers/qorusTypeCatalogue.js +262 -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/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.js +5 -2
- package/dist/helpers/templateText.js.map +1 -1
- package/dist/helpers/templates.d.ts +41 -14
- package/dist/helpers/templates.d.ts.map +1 -1
- package/dist/helpers/templates.js +152 -9
- package/dist/helpers/templates.js.map +1 -1
- package/dist/helpers/validations.d.ts +9 -0
- package/dist/helpers/validations.d.ts.map +1 -1
- package/dist/helpers/validations.js +139 -33
- package/dist/helpers/validations.js.map +1 -1
- package/dist/hooks/useQorusTypes.d.ts +7 -15
- package/dist/hooks/useQorusTypes.d.ts.map +1 -1
- package/dist/hooks/useQorusTypes.js +25 -166
- 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 +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- 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/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 -5
- package/.claude/CLAUDE.md +0 -317
- package/.tasks/EXPORT_EXPRESSION_BUILDER.md +0 -38
- package/.tasks/EXPRESSION_BUILDER_REPORT.md +0 -149
- package/.tasks/EXPRESSION_FIELD_SEAMS.md +0 -66
- package/.tasks/FIELD_STACK_REPORT.md +0 -234
- package/.tasks/FORM_ENGINE_COMPACT_READ_FIRST.md +0 -558
- package/.tasks/FORM_ENGINE_EXPRESSIONS.md +0 -197
- package/.tasks/FORM_ENGINE_OPTIONS_SYNC.md +0 -95
- package/.tasks/FORM_FIELD_EXTRAS.md +0 -72
- package/.tasks/INDEX.md +0 -111
- package/.tasks/LSP_SHARED_CONNECTION.md +0 -75
- package/.tasks/QONSOLE_ASSIST_FEATURES.md +0 -306
- package/.tasks/RENDER_EXPRESSION_LSP.md +0 -159
- package/.tasks/REQRAFT_AUTO_FIELD.md +0 -176
- package/.tasks/SCHEMA_DEFINITION_FIELD.md +0 -250
- package/.tasks/SMART_EDITOR_CONTEXT_AND_POLISH.md +0 -340
- package/.tasks/SMART_EDITOR_LSP_FEATURES.md +0 -299
- package/.tasks/SMART_EDITOR_REVIEW_FOLLOWUPS.md +0 -280
- package/.tasks/SMART_EDITOR_UX_POLISH.md +0 -383
- package/.tasks/SMART_EDITOR_VISUAL_POLISH.md +0 -246
- package/.tasks/STORY_NETWORK_ISOLATION.md +0 -98
- package/.tasks/TEMPLATE_TOKEN_GRAMMAR.md +0 -72
- package/CODE_OF_CONDUCT.md +0 -105
- package/CONTRIBUTING.MD +0 -78
- package/SECURITY.md +0 -3
- package/chromatic.config.json +0 -5
- package/design/COMPACT_ENGINE_REDESIGN.md +0 -156
- package/design/COMPACT_INFO_DISPLAY.md +0 -87
- package/design/COMPACT_PARITY.md +0 -85
- package/design/EXPRESSION_BUILDER_REPORT_STRATEGY.md +0 -92
- package/design/FORM_ENGINE_COMPACT.md +0 -300
- package/design/FORM_ENGINE_COMPACT_UX_PLAN.md +0 -353
- package/design/FORM_ENGINE_EXPRESSIONS.md +0 -257
- package/design/FORM_ENGINE_FIELD_MIGRATION.md +0 -419
- package/design/IDE_INTEGRATION.md +0 -64
- package/design/RENDER_EXPRESSION_TRANSPORT.md +0 -156
- package/design/SELECT_DIALOG_FLOOR.md +0 -86
- package/design/SMART_EDITOR_UX.md +0 -438
- package/design/TRACKING.md +0 -290
- package/design/UNAVAILABLE_ALLOWED_VALUES.md +0 -226
- package/src/components/Description/index.tsx +0 -254
- package/src/components/Description/markdownRendererContext.tsx +0 -29
- package/src/components/FocusedEditing/index.tsx +0 -50
- package/src/components/codeSize/index.tsx +0 -79
- package/src/components/composer/Composer.stories.tsx +0 -238
- package/src/components/composer/Composer.tsx +0 -554
- package/src/components/composer/helpers.ts +0 -74
- package/src/components/composer/index.ts +0 -2
- package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -1183
- package/src/components/dpqlEditor/DpqlEditor.tsx +0 -219
- package/src/components/dpqlEditor/dpqlHelpers.ts +0 -287
- package/src/components/dpqlEditor/dpqlInserter.ts +0 -121
- package/src/components/dpqlEditor/dpqlProbe.ts +0 -165
- package/src/components/dpqlEditor/dpqlTags.ts +0 -114
- package/src/components/dpqlEditor/index.ts +0 -41
- package/src/components/dpqlEditor/types.ts +0 -203
- package/src/components/dpqlEditor/useDpqlProbe.ts +0 -33
- package/src/components/dpqlEditor/useDpqlSession.ts +0 -411
- package/src/components/form/engine/CompactRow.tsx +0 -2620
- package/src/components/form/engine/CompactToolbar.tsx +0 -330
- package/src/components/form/engine/FormEngine.stories.tsx +0 -9920
- package/src/components/form/engine/FormEngine.tsx +0 -4569
- package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
- package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -331
- package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
- package/src/components/form/engine/OptionFieldMessages.tsx +0 -477
- package/src/components/form/engine/OptionsHelpDialog.tsx +0 -29
- package/src/components/form/engine/__fixtures__/basicFormOptions.ts +0 -309
- package/src/components/form/engine/__fixtures__/fieldChromeOptions.ts +0 -45
- package/src/components/form/engine/_structuredData/SchemaDataView.stories.tsx +0 -233
- package/src/components/form/engine/_structuredData/SchemaDataView.tsx +0 -742
- package/src/components/form/engine/_structuredData/StructuredDataView.stories.tsx +0 -85
- package/src/components/form/engine/_structuredData/StructuredDataView.tsx +0 -75
- package/src/components/form/engine/_structuredData/structuredData.ts +0 -145
- package/src/components/form/engine/compactRowContext.ts +0 -148
- package/src/components/form/engine/compactRowStyles.ts +0 -898
- package/src/components/form/engine/compactToolbarContext.ts +0 -69
- package/src/components/form/engine/optionActions.ts +0 -128
- package/src/components/form/engine/optionsContext.ts +0 -24
- package/src/components/form/engine/readFirst.ts +0 -1077
- package/src/components/form/engine/rendererTypes.ts +0 -107
- package/src/components/form/engine/revealRow.ts +0 -123
- package/src/components/form/engine/rowFocus.ts +0 -101
- package/src/components/form/engine/rowMenuContext.ts +0 -159
- package/src/components/form/engine/rowOpenPicker.ts +0 -27
- package/src/components/form/engine/typeChoices.ts +0 -63
- package/src/components/form/engine/variants/FormEngineVariants.stories.tsx +0 -159
- package/src/components/form/engine/variants/VariantCalmTable.tsx +0 -244
- package/src/components/form/engine/variants/VariantCards.tsx +0 -212
- package/src/components/form/engine/variants/VariantFocus.tsx +0 -382
- package/src/components/form/engine/variants/VariantMinimal.tsx +0 -170
- package/src/components/form/engine/variants/focusDemo.ts +0 -145
- package/src/components/form/engine/variants/variantModel.ts +0 -223
- package/src/components/form/engine/variants/variantParts.tsx +0 -313
- package/src/components/form/expressions/DpqlRendering.tsx +0 -85
- package/src/components/form/expressions/ExpressionField.stories.tsx +0 -1395
- package/src/components/form/expressions/ExpressionField.tsx +0 -503
- package/src/components/form/expressions/argumentPresence.ts +0 -213
- package/src/components/form/expressions/builder/ExpressionBuilder.stories.tsx +0 -1683
- package/src/components/form/expressions/builder/argumentDetail.tsx +0 -17
- package/src/components/form/expressions/builder/argumentLabel.tsx +0 -146
- package/src/components/form/expressions/builder/argumentSlot.tsx +0 -101
- package/src/components/form/expressions/builder/argumentWrapper.tsx +0 -243
- package/src/components/form/expressions/builder/confirmMismatchedTypesModal.tsx +0 -120
- package/src/components/form/expressions/builder/confirmUnsupportedTypeModal.tsx +0 -69
- package/src/components/form/expressions/builder/index.tsx +0 -1545
- package/src/components/form/expressions/builder/item.tsx +0 -89
- package/src/components/form/expressions/builder/moveToPositionStrip.tsx +0 -156
- package/src/components/form/expressions/builder/renderTemplate.tsx +0 -42
- package/src/components/form/expressions/dpqlMockLanguage.ts +0 -566
- package/src/components/form/expressions/dpqlMockLsp.ts +0 -126
- package/src/components/form/expressions/mockExpressions.ts +0 -317
- package/src/components/form/expressions/renderExpressionToText.ts +0 -137
- package/src/components/form/expressions/types.ts +0 -110
- package/src/components/form/expressions/useExpressions.ts +0 -101
- package/src/components/form/expressions/useRenderExpression.ts +0 -165
- package/src/components/form/fields/Field.stories.tsx +0 -143
- package/src/components/form/fields/Field.tsx +0 -732
- package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -297
- package/src/components/form/fields/array/ArrayAuto.tsx +0 -237
- package/src/components/form/fields/array/ArrayAutoField.stories.tsx +0 -475
- package/src/components/form/fields/array/ArrayAutoField.tsx +0 -367
- package/src/components/form/fields/auto/AutoFormField.stories.tsx +0 -825
- package/src/components/form/fields/auto/AutoFormField.tsx +0 -1164
- package/src/components/form/fields/binary/Binary.stories.tsx +0 -122
- package/src/components/form/fields/binary/Binary.tsx +0 -91
- package/src/components/form/fields/boolean/Boolean.stories.tsx +0 -125
- package/src/components/form/fields/boolean/Boolean.tsx +0 -34
- package/src/components/form/fields/byte-size/ByteSize.stories.tsx +0 -87
- package/src/components/form/fields/byte-size/ByteSize.tsx +0 -58
- package/src/components/form/fields/color/Color.stories.tsx +0 -99
- package/src/components/form/fields/color/Color.tsx +0 -46
- package/src/components/form/fields/cron/Cron.stories.tsx +0 -68
- package/src/components/form/fields/cron/Cron.tsx +0 -80
- package/src/components/form/fields/date/Date.stories.tsx +0 -77
- package/src/components/form/fields/date/Date.tsx +0 -55
- package/src/components/form/fields/emittedValues.ts +0 -70
- package/src/components/form/fields/file/File.stories.tsx +0 -161
- package/src/components/form/fields/file/File.tsx +0 -227
- package/src/components/form/fields/long-string/LongString.stories.tsx +0 -120
- package/src/components/form/fields/long-string/LongString.tsx +0 -130
- package/src/components/form/fields/markdown/Markdown.stories.tsx +0 -76
- package/src/components/form/fields/markdown/Markdown.tsx +0 -81
- package/src/components/form/fields/markdown/MarkdownView.tsx +0 -222
- package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +0 -139
- package/src/components/form/fields/number/Number.stories.tsx +0 -159
- package/src/components/form/fields/number/Number.tsx +0 -160
- package/src/components/form/fields/object/Object.stories.tsx +0 -398
- package/src/components/form/fields/object/Object.tsx +0 -255
- package/src/components/form/fields/radio-group/RadioGroup.stories.tsx +0 -95
- package/src/components/form/fields/radio-group/RadioGroup.tsx +0 -46
- package/src/components/form/fields/radio-group/images/java-96x128.png +0 -0
- package/src/components/form/fields/radio-group/images/python-129x128.png +0 -0
- package/src/components/form/fields/radio-group/images/qore-106x128.png +0 -0
- package/src/components/form/fields/rich-text/RichText.stories.tsx +0 -260
- package/src/components/form/fields/rich-text/RichText.tsx +0 -537
- package/src/components/form/fields/schema-definition/CatalogLeafForm.tsx +0 -242
- package/src/components/form/fields/schema-definition/CatalogNodeEditor.tsx +0 -758
- package/src/components/form/fields/schema-definition/Hint.tsx +0 -22
- package/src/components/form/fields/schema-definition/InlineValidationBanner.tsx +0 -138
- package/src/components/form/fields/schema-definition/Loader.tsx +0 -20
- package/src/components/form/fields/schema-definition/MigrationsTab.tsx +0 -187
- package/src/components/form/fields/schema-definition/SchemaDefinitionField.stories.tsx +0 -286
- package/src/components/form/fields/schema-definition/TableEditor.tsx +0 -155
- package/src/components/form/fields/schema-definition/TablesTab.tsx +0 -138
- package/src/components/form/fields/schema-definition/catalog.ts +0 -237
- package/src/components/form/fields/schema-definition/helpers.ts +0 -90
- package/src/components/form/fields/schema-definition/index.tsx +0 -418
- package/src/components/form/fields/schema-definition/mockCatalog.ts +0 -325
- package/src/components/form/fields/schema-definition/mockDefinition.ts +0 -111
- package/src/components/form/fields/schema-definition/referenceSuggestions.tsx +0 -152
- package/src/components/form/fields/schema-definition/starterTemplate.ts +0 -68
- package/src/components/form/fields/schema-definition/types.ts +0 -185
- package/src/components/form/fields/schema-definition/useSchemaOptionCatalog.ts +0 -49
- package/src/components/form/fields/select/Select.stories.tsx +0 -872
- package/src/components/form/fields/select/Select.tsx +0 -624
- package/src/components/form/fields/select/SelectCollection.tsx +0 -594
- package/src/components/form/fields/string/String.stories.tsx +0 -86
- package/src/components/form/fields/string/String.tsx +0 -43
- package/src/components/form/fields/template/ExampleValueModal.stories.tsx +0 -114
- package/src/components/form/fields/template/ExampleValueModal.tsx +0 -99
- package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +0 -47
- package/src/components/form/fields/template/TemplateField.stories.tsx +0 -1121
- package/src/components/form/fields/template/TemplateField.tsx +0 -1717
- package/src/components/form/fields/template/TemplateText.tsx +0 -115
- package/src/components/form/fields/template/__fixtures__/longExampleValue.ts +0 -7
- package/src/components/form/fields/template/__fixtures__/multiLevelTemplates.json +0 -147
- package/src/components/form/fields/template/__fixtures__/templates.json +0 -83
- package/src/components/form/fields/timeout/Timeout.stories.tsx +0 -228
- package/src/components/form/fields/timeout/Timeout.tsx +0 -87
- package/src/components/form/fields/url/Url.stories.tsx +0 -94
- package/src/components/form/fields/url/Url.tsx +0 -85
- package/src/components/form/index.tsx +0 -47
- package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
- package/src/components/imageLightbox/ImageLightbox.tsx +0 -236
- package/src/components/imageLightbox/index.ts +0 -1
- package/src/components/log/Log.stories.tsx +0 -333
- package/src/components/log/Log.tsx +0 -285
- package/src/components/menu/Menu.stories.tsx +0 -155
- package/src/components/menu/Menu.tsx +0 -312
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.stories.tsx +0 -797
- package/src/components/qonsoleSmartInput/QonsoleSmartInput.tsx +0 -105
- package/src/components/qonsoleSmartInput/index.ts +0 -16
- package/src/components/qonsoleSmartInput/qonsoleInserter.ts +0 -77
- package/src/components/qonsoleSmartInput/types.ts +0 -133
- package/src/components/qonsoleSmartInput/useQonsoleSession.ts +0 -124
- package/src/components/searchFilterBar/SearchFilterBar.stories.tsx +0 -62
- package/src/components/searchFilterBar/SearchFilterBar.tsx +0 -144
- package/src/components/searchFilterBar/index.ts +0 -1
- package/src/components/smartEditor/MarkdownDoc.tsx +0 -190
- package/src/components/smartEditor/SmartEditor.stories.tsx +0 -475
- package/src/components/smartEditor/SmartEditor.tsx +0 -808
- package/src/components/smartEditor/__fixtures__/mockLspServer.ts +0 -205
- package/src/components/smartEditor/helpers.ts +0 -217
- package/src/components/smartEditor/index.ts +0 -35
- package/src/components/smartEditor/styling.ts +0 -45
- package/src/components/smartEditor/types.ts +0 -211
- package/src/components/smartEditor/useLspAutocomplete.ts +0 -758
- package/src/components/smartEditor/useLspDiagnosticDecorations.ts +0 -125
- package/src/components/smartEditor/useLspHover.ts +0 -230
- package/src/components/smartEditor/useLspSemanticTokens.ts +0 -298
- package/src/components/smartEditor/useLspSession.ts +0 -231
- package/src/components/smartEditor/useLspSignatureHelp.ts +0 -198
- package/src/components/supportTicket/AttachmentChips.stories.tsx +0 -171
- package/src/components/supportTicket/AttachmentChips.tsx +0 -147
- package/src/components/supportTicket/InterfaceReferenceTags.stories.tsx +0 -257
- package/src/components/supportTicket/InterfaceReferenceTags.tsx +0 -129
- package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -584
- package/src/components/supportTicket/ReferencePicker.tsx +0 -563
- package/src/components/supportTicket/TicketConversation.stories.tsx +0 -121
- package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
- package/src/components/supportTicket/TicketHeader.tsx +0 -247
- package/src/components/supportTicket/TicketMetaTags.stories.tsx +0 -103
- package/src/components/supportTicket/TicketMetaTags.tsx +0 -85
- package/src/components/supportTicket/TicketReplyBox.stories.tsx +0 -354
- package/src/components/supportTicket/TicketReplyBox.tsx +0 -150
- package/src/components/supportTicket/__fixtures__/kindMarks.ts +0 -28
- package/src/components/supportTicket/attachmentAccess.ts +0 -97
- package/src/components/supportTicket/fileToAttachment.ts +0 -24
- package/src/components/supportTicket/index.ts +0 -10
- package/src/components/supportTicket/meta.ts +0 -206
- package/src/components/supportTicket/ticketModel.ts +0 -131
- package/src/components/supportTicket/useLoadedImages.ts +0 -73
- package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -315
- package/src/components/ticketReferences/TicketReferences.tsx +0 -906
- package/src/components/ticketReferences/index.ts +0 -2
- package/src/components/ticketThread/TicketThread.stories.tsx +0 -829
- package/src/components/ticketThread/TicketThread.tsx +0 -719
- package/src/components/ticketThread/index.ts +0 -6
- package/src/contexts/FetchContext.tsx +0 -25
- package/src/contexts/ReqraftContext.tsx +0 -9
- package/src/contexts/StorageContext.tsx +0 -33
- package/src/global.d.ts +0 -4
- package/src/helpers/allowedValues.ts +0 -249
- package/src/helpers/choiceChip.ts +0 -227
- package/src/helpers/common.ts +0 -326
- package/src/helpers/dpqlDetection.ts +0 -209
- package/src/helpers/expressions.ts +0 -140
- package/src/helpers/optionUiTypes.ts +0 -199
- package/src/helpers/options.ts +0 -150
- package/src/helpers/providerValue.ts +0 -125
- package/src/helpers/scrollbar.ts +0 -32
- package/src/helpers/singleLineString.ts +0 -61
- package/src/helpers/templateItems.ts +0 -81
- package/src/helpers/templateText.ts +0 -350
- package/src/helpers/templates.ts +0 -602
- package/src/helpers/validations.ts +0 -2085
- package/src/hooks/useArgSchema.ts +0 -37
- package/src/hooks/useCoarsePointer.ts +0 -30
- package/src/hooks/useFetch/useFetch.stories.tsx +0 -379
- package/src/hooks/useFetch/useFetch.tsx +0 -154
- package/src/hooks/usePhoneViewport.ts +0 -34
- package/src/hooks/useQorusTypes.ts +0 -233
- package/src/hooks/useReqraftProperty.ts +0 -16
- package/src/hooks/useStorage/useStorage.stories.tsx +0 -168
- package/src/hooks/useStorage/useStorage.ts +0 -35
- package/src/hooks/useTemplates.ts +0 -123
- package/src/hooks/useValidation.ts +0 -9
- package/src/hooks/useWebSocket/useWebSocket.ts +0 -224
- package/src/hooks/useWebSocket/useWebsocket.stories.tsx +0 -640
- package/src/hooks/useWhyDidYouUpdate.ts +0 -38
- package/src/index.tsx +0 -86
- package/src/providers/FetchProvider.tsx +0 -40
- package/src/providers/ReqraftProvider.tsx +0 -52
- package/src/providers/StorageProvider.tsx +0 -131
- package/src/stores/currentUser/currentUser.stories.tsx +0 -100
- package/src/stores/currentUser/currentUser.tsx +0 -94
- package/src/stories/Data/fileFieldArgSchema.json +0 -86
- package/src/stories/Tests/utils.ts +0 -320
- package/src/stories/storyNetwork.ts +0 -92
- package/src/stories/tracking.tsx +0 -206
- package/src/tracking/browser/attach.ts +0 -186
- package/src/tracking/browser/env.ts +0 -78
- package/src/tracking/core/consent.ts +0 -37
- package/src/tracking/core/engagement.ts +0 -47
- package/src/tracking/core/experiments.ts +0 -258
- package/src/tracking/core/hash.ts +0 -26
- package/src/tracking/core/ids.ts +0 -25
- package/src/tracking/core/observable.ts +0 -23
- package/src/tracking/core/queue.ts +0 -131
- package/src/tracking/core/sections.ts +0 -166
- package/src/tracking/core/storage.ts +0 -69
- package/src/tracking/core/tracker.ts +0 -417
- package/src/tracking/core/types.ts +0 -162
- package/src/tracking/core/utm.ts +0 -23
- package/src/tracking/index.ts +0 -72
- package/src/tracking/markup.ts +0 -17
- package/src/tracking/react/Experiment.tsx +0 -44
- package/src/tracking/react/TrackingProvider.tsx +0 -56
- package/src/tracking/react/hooks.ts +0 -106
- package/src/tracking/react/index.ts +0 -13
- package/src/tracking/testing.ts +0 -108
- package/src/tracking/ui/ExperimentCard.stories.tsx +0 -296
- package/src/tracking/ui/ExperimentCard.tsx +0 -667
- package/src/tracking/ui/ExperimentsOverlay.stories.tsx +0 -155
- package/src/tracking/ui/ExperimentsOverlay.tsx +0 -437
- package/src/tracking/ui/anchor.ts +0 -180
- package/src/tracking/ui/card.ts +0 -464
- package/src/tracking/ui/client.ts +0 -117
- package/src/tracking/ui/index.ts +0 -77
- package/src/tracking/ui/types.ts +0 -110
- package/src/tracking/ui/useExperimentsAdmin.ts +0 -103
- package/src/types/Form.ts +0 -29
- package/src/types.ts +0 -14
- package/src/utils/datetime.ts +0 -10
- package/src/utils/fetch.ts +0 -457
- package/src/utils/lspClient.ts +0 -711
- package/src/utils/lspClient.types.ts +0 -211
- package/src/utils/queryUnlessCancelled.ts +0 -28
- package/src/utils/websocket.ts +0 -293
- package/vite.config.ts +0 -58
- package/vitest.config.ts +0 -69
|
@@ -1,594 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ReqoreButton,
|
|
3
|
-
ReqoreCollection,
|
|
4
|
-
ReqoreControlGroup,
|
|
5
|
-
ReqoreMessage,
|
|
6
|
-
ReqoreModal,
|
|
7
|
-
ReqoreTag,
|
|
8
|
-
} from '@qoretechnologies/reqore';
|
|
9
|
-
import { IReqoreCollectionItemProps } from '@qoretechnologies/reqore/dist/components/Collection/item';
|
|
10
|
-
import { TReqoreBadge } from '@qoretechnologies/reqore/dist/components/Button';
|
|
11
|
-
import { IReqorePanelAction } from '@qoretechnologies/reqore/dist/components/Panel';
|
|
12
|
-
import { TReqoreIntent } from '@qoretechnologies/reqore/dist/constants/theme';
|
|
13
|
-
import { IReqoreTooltip } from '@qoretechnologies/reqore/dist/types/global';
|
|
14
|
-
import { IReqoreIconName } from '@qoretechnologies/reqore/dist/types/icons';
|
|
15
|
-
import { capitalize, isEqual, size } from 'lodash';
|
|
16
|
-
import { useMemo, useState } from 'react';
|
|
17
|
-
import styled from 'styled-components';
|
|
18
|
-
import {
|
|
19
|
-
UNAVAILABLE_VALUE_FALLBACK_REASON,
|
|
20
|
-
getRefusalMessage,
|
|
21
|
-
} from '../../../../helpers/options';
|
|
22
|
-
import { Description } from '../../../Description';
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* The size the picker cannot be dragged below, measured on its own content.
|
|
26
|
-
*
|
|
27
|
-
* reqore floors a modal at what the DRAWER's chrome needs — its title and its
|
|
28
|
-
* close control — which is all reqore can answer for. The picker needs more
|
|
29
|
-
* than that, and said so the hard way: dragged to roughly 45px wide it still
|
|
30
|
-
* held a search box, a list and a close button, stacked in a column nobody
|
|
31
|
-
* could read.
|
|
32
|
-
*
|
|
33
|
-
* Measured on `components-form-select--item-actions-in-the-title-bar` at
|
|
34
|
-
* 1400x1000, sweeping the width and the height of the dialog box:
|
|
35
|
-
*
|
|
36
|
-
* - **320px wide.** The collection is laid out in 300px columns
|
|
37
|
-
* (`minColumnWidth`), so a row is 300px wide whatever the dialog does. At
|
|
38
|
-
* 300px the row overhangs the dialog by 13px and at 310px by 3px; 320px is
|
|
39
|
-
* the first round width that contains it (-7px), and from 340px the row
|
|
40
|
-
* grows with the box instead of overhanging it.
|
|
41
|
-
* - **180px tall.** The panel header is 55px and the search field 26px, and
|
|
42
|
-
* both are whole from 100px — but the list below them has to show one entry
|
|
43
|
-
* in full, or there is nothing choosable in the dialog. A plain row is 56px
|
|
44
|
-
* and is whole from 160px; a row carrying a description is 70px and needs
|
|
45
|
-
* 174px. The floor takes the taller of the two, because the same dialog
|
|
46
|
-
* serves both and a floor that clips the rows it is actually used with is
|
|
47
|
-
* the defect this constant exists to prevent — the assertion-kind picker in
|
|
48
|
-
* qorus-ide is the described-row case. 180px is the first round height that
|
|
49
|
-
* contains it.
|
|
50
|
-
*/
|
|
51
|
-
export const SELECT_DIALOG_MIN_WIDTH = 320;
|
|
52
|
-
/** See {@link SELECT_DIALOG_MIN_WIDTH}. */
|
|
53
|
-
export const SELECT_DIALOG_MIN_HEIGHT = 180;
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* The hook a row wears while its value cannot be picked — for the stylesheet
|
|
57
|
-
* below, and for a host's own tests and styling.
|
|
58
|
-
*/
|
|
59
|
-
export const UNAVAILABLE_ITEM_CLASS = 'reqraft-select-item-unavailable';
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* The picker's floor, expressed where it survives the reqore we pin.
|
|
63
|
-
*
|
|
64
|
-
* `className` reaches the element `re-resizable` sizes and drags, and a CSS
|
|
65
|
-
* `min-width` clamps THAT element's rendered box however far the drag goes —
|
|
66
|
-
* so this holds against reqore 0.74.1, where a modal's floor is a hardcoded
|
|
67
|
-
* 40px and `minSize` never reaches it, as well as against the `minWidth` /
|
|
68
|
-
* `minHeight` props reqore grew later.
|
|
69
|
-
*
|
|
70
|
-
* `!important` is load-bearing, not decoration: `re-resizable` writes its own
|
|
71
|
-
* `min-width` / `min-height` INLINE on this same element, and an inline
|
|
72
|
-
* declaration beats a normal one from a stylesheet.
|
|
73
|
-
*
|
|
74
|
-
* Clamping the box from outside `re-resizable` rather than through it costs
|
|
75
|
-
* one thing, and it is not the thing it looks like. The drag stays exact: each
|
|
76
|
-
* move sizes the box from where the drag STARTED plus the pointer's delta, not
|
|
77
|
-
* from the last size, so coming back out tracks the pointer with no dead zone
|
|
78
|
-
* (measured — past the floor the box holds 320px while the inline width reads
|
|
79
|
-
* 40px, and 300px back out it is 400px again). What is left behind is that
|
|
80
|
-
* divergence: an inline width smaller than the box anyone can see. Read this
|
|
81
|
-
* dialog's size from its rect, never from `style.width`. Once reqraft can pin
|
|
82
|
-
* a reqore that has them this becomes `minWidth` / `minHeight` on the modal,
|
|
83
|
-
* and the two agree again.
|
|
84
|
-
*
|
|
85
|
-
* Capped at the viewport so a phone gets a dialog it can see all of rather
|
|
86
|
-
* than a floor wider than its screen — reqore's own maximum is 90vw / 90vh.
|
|
87
|
-
*/
|
|
88
|
-
const StyledSelectDialog = styled(ReqoreModal)`
|
|
89
|
-
min-width: min(${SELECT_DIALOG_MIN_WIDTH}px, 90vw) !important;
|
|
90
|
-
min-height: min(${SELECT_DIALOG_MIN_HEIGHT}px, 90vh) !important;
|
|
91
|
-
|
|
92
|
-
/*
|
|
93
|
-
* A value that cannot be picked, said in the row's own stylesheet.
|
|
94
|
-
*
|
|
95
|
-
* Reqore's "disabled" is NOT what marks it. That applies DisabledElement,
|
|
96
|
-
* which is "pointer-events: none" — and the two places the reason can be
|
|
97
|
-
* read, the row's tooltip and whatever control its title bar carries, both
|
|
98
|
-
* need the pointer. Dropping onClick is what actually makes the row inert:
|
|
99
|
-
* reqore derives "interactive" from the handlers a panel was given, so a row
|
|
100
|
-
* with none gets no pointer cursor and no hover lift while keeping every
|
|
101
|
-
* pointer event it had.
|
|
102
|
-
*
|
|
103
|
-
* The dimming lands on the TITLE rather than on the row, because "opacity"
|
|
104
|
-
* creates a stacking context: dimming the row would dim the reason inside it,
|
|
105
|
-
* and the reason is the one thing on an unavailable row that has to read.
|
|
106
|
-
*/
|
|
107
|
-
.${UNAVAILABLE_ITEM_CLASS} {
|
|
108
|
-
cursor: not-allowed;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
.${UNAVAILABLE_ITEM_CLASS} > .reqore-panel-title {
|
|
112
|
-
opacity: 0.55;
|
|
113
|
-
}
|
|
114
|
-
`;
|
|
115
|
-
|
|
116
|
-
const PositiveColorEffect = {
|
|
117
|
-
gradient: {
|
|
118
|
-
colors: {
|
|
119
|
-
0: 'success' as const,
|
|
120
|
-
100: 'success' as const,
|
|
121
|
-
},
|
|
122
|
-
},
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
/**
|
|
126
|
-
* One affordance on an offered item, as a DESCRIPTOR rather than a node.
|
|
127
|
-
*
|
|
128
|
-
* A caller's items routinely travel through a `JSON.stringify(items)` memo key
|
|
129
|
-
* (`FieldAllowedValues`, `MultiSelectFormField`), and a rendered React element
|
|
130
|
-
* is circular through its fibre — putting one on an item throws and takes the
|
|
131
|
-
* whole form down with it. So an item names the component and hands it props;
|
|
132
|
-
* `as` is a function or a memo object, which `JSON.stringify` simply omits.
|
|
133
|
-
*/
|
|
134
|
-
export interface ISelectFieldCollectionItemAction {
|
|
135
|
-
/** The component to render. Defaults to {@link ReqoreButton}. */
|
|
136
|
-
as?: React.ElementType;
|
|
137
|
-
/** Props handed to it. Keep them JSON-serialisable. */
|
|
138
|
-
props?: Record<string, unknown>;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* Content for a tooltip an item puts on its own row, under the same
|
|
143
|
-
* no-React-elements rule as {@link ISelectFieldCollectionItemAction}: a plain
|
|
144
|
-
* string, or a component named by `as` and given plain props.
|
|
145
|
-
*/
|
|
146
|
-
export type TSelectFieldCollectionItemTooltipContent =
|
|
147
|
-
| string
|
|
148
|
-
| { as: React.ElementType; props?: Record<string, unknown> };
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* A per-item tooltip: a bare string, or reqore's tooltip options with the
|
|
152
|
-
* content given as a descriptor.
|
|
153
|
-
*/
|
|
154
|
-
export type TSelectFieldCollectionItemTooltip =
|
|
155
|
-
| string
|
|
156
|
-
| (Omit<IReqoreTooltip, 'content'> & {
|
|
157
|
-
content?: TSelectFieldCollectionItemTooltipContent;
|
|
158
|
-
});
|
|
159
|
-
|
|
160
|
-
/** A note rendered in an item's body, in the same shape a schema sends one. */
|
|
161
|
-
export interface ISelectFieldCollectionItemMessage {
|
|
162
|
-
intent?: TReqoreIntent;
|
|
163
|
-
title?: string;
|
|
164
|
-
content: string;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
export interface ISelectFieldCollectionItem {
|
|
168
|
-
value?: unknown;
|
|
169
|
-
name?: unknown;
|
|
170
|
-
display_name?: string;
|
|
171
|
-
desc?: string;
|
|
172
|
-
short_desc?: string;
|
|
173
|
-
icon?: IReqoreIconName;
|
|
174
|
-
image?: string;
|
|
175
|
-
badge?: TReqoreBadge;
|
|
176
|
-
intent?: TReqoreIntent;
|
|
177
|
-
disabled?: boolean;
|
|
178
|
-
groups?: string[];
|
|
179
|
-
/**
|
|
180
|
-
* Affordances rendered in the row's BODY, stacked under the description.
|
|
181
|
-
* Each one costs the row a line of its own, which is right for something
|
|
182
|
-
* with a label and wrong for a single icon on a long list — see
|
|
183
|
-
* `title_actions`.
|
|
184
|
-
*/
|
|
185
|
-
actions?: ISelectFieldCollectionItemAction[];
|
|
186
|
-
/**
|
|
187
|
-
* Affordances rendered in the row's TITLE BAR, inline with the name and to
|
|
188
|
-
* the right of it, where a row already reserves the height.
|
|
189
|
-
*
|
|
190
|
-
* Separate from `actions` rather than a relocation of it: an item's body
|
|
191
|
-
* actions have been rendered under the description since this collection
|
|
192
|
-
* existed, and callers size and lay them out on that basis. This is the
|
|
193
|
-
* opt-in for the other placement.
|
|
194
|
-
*/
|
|
195
|
-
title_actions?: ISelectFieldCollectionItemAction[];
|
|
196
|
-
/**
|
|
197
|
-
* A tooltip on the ROW — the whole item is the hover target, not one control
|
|
198
|
-
* inside it. Content that is more than a sentence belongs here rather than
|
|
199
|
-
* in `content`, which every row pays for in height whether it is read or not.
|
|
200
|
-
*/
|
|
201
|
-
tooltip?: TSelectFieldCollectionItemTooltip;
|
|
202
|
-
messages?: ISelectFieldCollectionItemMessage[];
|
|
203
|
-
/**
|
|
204
|
-
* Why the value cannot be picked, when it cannot.
|
|
205
|
-
*
|
|
206
|
-
* Rendered FIRST in the row — above the description, not under it, where a
|
|
207
|
-
* `messages` entry would land. A reader who has just been refused a choice is
|
|
208
|
-
* looking for the reason, and a row that answers with its description and
|
|
209
|
-
* makes them read on has answered a different question.
|
|
210
|
-
*
|
|
211
|
-
* Set it together with `disabled`, which is what drops the click handler.
|
|
212
|
-
* Carried as data rather than as a node for the reason in
|
|
213
|
-
* {@link ISelectFieldCollectionItemAction}.
|
|
214
|
-
*/
|
|
215
|
-
unavailable?: ISelectFieldCollectionItemMessage;
|
|
216
|
-
/** Added to the row's own classes — see {@link UNAVAILABLE_ITEM_CLASS}. */
|
|
217
|
-
className?: string;
|
|
218
|
-
/**
|
|
219
|
-
* Extra words the list's search matches this row on.
|
|
220
|
-
*
|
|
221
|
-
* Reqore searches a row's label and the STRING of its content, and this
|
|
222
|
-
* collection's content is a React element — which stringifies to
|
|
223
|
-
* `[object Object]` and matches every query equally. Anything that has to be
|
|
224
|
-
* findable belongs here.
|
|
225
|
-
*/
|
|
226
|
-
searchString?: string;
|
|
227
|
-
[key: string]: unknown;
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
export interface ISelectFieldCollectionProps {
|
|
231
|
-
onClose: () => void;
|
|
232
|
-
items: ISelectFieldCollectionItem[];
|
|
233
|
-
value?: unknown;
|
|
234
|
-
onItemSelect: (item: ISelectFieldCollectionItem) => void;
|
|
235
|
-
filters?: string[];
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
const normalizeSelectItemDescription = (value: unknown): string | undefined => {
|
|
239
|
-
if (typeof value !== 'string' || !value.trim()) {
|
|
240
|
-
return undefined;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
const seen = new Set<string>();
|
|
244
|
-
|
|
245
|
-
return value
|
|
246
|
-
.split('\n')
|
|
247
|
-
.filter((line) => {
|
|
248
|
-
const normalized = line.trim().replace(/\s+/g, ' ').toLocaleLowerCase();
|
|
249
|
-
|
|
250
|
-
if (!normalized) {
|
|
251
|
-
return true;
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
if (seen.has(normalized)) {
|
|
255
|
-
return false;
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
seen.add(normalized);
|
|
259
|
-
return true;
|
|
260
|
-
})
|
|
261
|
-
.join('\n')
|
|
262
|
-
.trim();
|
|
263
|
-
};
|
|
264
|
-
|
|
265
|
-
export const getSelectItemDescription = (
|
|
266
|
-
item: Pick<ISelectFieldCollectionItem, 'desc' | 'short_desc'>
|
|
267
|
-
): string | undefined => {
|
|
268
|
-
const desc = normalizeSelectItemDescription(item.desc);
|
|
269
|
-
const shortDesc = normalizeSelectItemDescription(item.short_desc);
|
|
270
|
-
return desc ?? shortDesc;
|
|
271
|
-
};
|
|
272
|
-
|
|
273
|
-
export const getSelectItemShortDescription = (
|
|
274
|
-
item: Pick<ISelectFieldCollectionItem, 'desc' | 'short_desc'> | undefined,
|
|
275
|
-
defaultDesc = ''
|
|
276
|
-
): string | undefined => {
|
|
277
|
-
if (!item) {
|
|
278
|
-
return defaultDesc || undefined;
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
const shortDescription = normalizeSelectItemDescription(item.short_desc);
|
|
282
|
-
|
|
283
|
-
return shortDescription || defaultDesc || undefined;
|
|
284
|
-
};
|
|
285
|
-
|
|
286
|
-
export const getSelectItemDescriptionProps = (
|
|
287
|
-
item: Pick<ISelectFieldCollectionItem, 'desc' | 'short_desc'>
|
|
288
|
-
): { longDescription?: string; shortDescription?: string } => {
|
|
289
|
-
const longDescription = normalizeSelectItemDescription(item.desc);
|
|
290
|
-
|
|
291
|
-
if (longDescription) {
|
|
292
|
-
return { longDescription };
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
const shortDescription = normalizeSelectItemDescription(item.short_desc);
|
|
296
|
-
|
|
297
|
-
return { shortDescription };
|
|
298
|
-
};
|
|
299
|
-
|
|
300
|
-
/**
|
|
301
|
-
* Why an item cannot be picked, in the words the row will print.
|
|
302
|
-
*
|
|
303
|
-
* Two shapes reach here and they mean the same thing. A caller that resolved
|
|
304
|
-
* the availability itself sends `unavailable`; a caller — or a server — that
|
|
305
|
-
* only marked the value `disabled` and explained it in `messages` gets the same
|
|
306
|
-
* treatment, because a refusal nobody worded is still a refusal, and a row that
|
|
307
|
-
* silently ignores a click is the defect this answers.
|
|
308
|
-
*
|
|
309
|
-
* Which message explains a refusal is decided in one place
|
|
310
|
-
* ({@link getRefusalMessage}), so the picker and the form's own resolver cannot
|
|
311
|
-
* word the same refusal differently.
|
|
312
|
-
*/
|
|
313
|
-
export const getSelectItemUnavailability = (
|
|
314
|
-
item: Pick<ISelectFieldCollectionItem, 'unavailable' | 'disabled' | 'messages'>
|
|
315
|
-
): ISelectFieldCollectionItemMessage | undefined => {
|
|
316
|
-
if (item.unavailable) {
|
|
317
|
-
return item.unavailable;
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
if (!item.disabled) {
|
|
321
|
-
return undefined;
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
const explanation = getRefusalMessage(item.messages);
|
|
325
|
-
|
|
326
|
-
return {
|
|
327
|
-
intent: explanation?.intent || 'warning',
|
|
328
|
-
title: explanation?.title,
|
|
329
|
-
content: explanation?.content || UNAVAILABLE_VALUE_FALLBACK_REASON,
|
|
330
|
-
};
|
|
331
|
-
};
|
|
332
|
-
|
|
333
|
-
/**
|
|
334
|
-
* An item's title-bar affordances as reqore panel actions.
|
|
335
|
-
*
|
|
336
|
-
* `as` is defaulted here rather than left to reqore: reqore renders an action
|
|
337
|
-
* with no `as` as a `ReqoreButton` built from the action's OWN keys and drops
|
|
338
|
-
* `props` on the floor, so a descriptor that named only props would render an
|
|
339
|
-
* empty button. Defaulting `as` keeps one descriptor shape for both
|
|
340
|
-
* placements.
|
|
341
|
-
*
|
|
342
|
-
* `size` is a default, not an override — the row is `tiny`, so a control in
|
|
343
|
-
* its title bar is too unless the caller says otherwise. The body renderer
|
|
344
|
-
* below forces `size` after the caller's props and cannot be given a
|
|
345
|
-
* different one; that is the older behaviour and it is left alone.
|
|
346
|
-
*
|
|
347
|
-
* An unavailable row leads with a padlock, before whatever the caller declared.
|
|
348
|
-
* It is a TAG, not a control: the words are already on the row and in its
|
|
349
|
-
* tooltip, and a second popover saying the same thing over the first is worse
|
|
350
|
-
* than one. It is also not the compact form's "Depends on" chip, whose whole
|
|
351
|
-
* value is clicking through to the blocking field — from inside a modal that
|
|
352
|
-
* covers that field, there is nowhere for such a click to go.
|
|
353
|
-
*/
|
|
354
|
-
export const getSelectItemTitleActions = (
|
|
355
|
-
item: Pick<ISelectFieldCollectionItem, 'title_actions'>,
|
|
356
|
-
unavailable?: ISelectFieldCollectionItemMessage
|
|
357
|
-
): IReqorePanelAction[] | undefined => {
|
|
358
|
-
const declared = (item.title_actions || []).map(
|
|
359
|
-
({ as = ReqoreButton, props, ...rest }): IReqorePanelAction => ({
|
|
360
|
-
...rest,
|
|
361
|
-
as,
|
|
362
|
-
props: { size: 'tiny', ...props },
|
|
363
|
-
})
|
|
364
|
-
);
|
|
365
|
-
|
|
366
|
-
const actions = unavailable ? [UNAVAILABLE_TITLE_ACTION, ...declared] : declared;
|
|
367
|
-
|
|
368
|
-
return actions.length ? actions : undefined;
|
|
369
|
-
};
|
|
370
|
-
|
|
371
|
-
/** The padlock an unavailable row wears — see {@link getSelectItemTitleActions}. */
|
|
372
|
-
const UNAVAILABLE_TITLE_ACTION: IReqorePanelAction = {
|
|
373
|
-
as: ReqoreTag,
|
|
374
|
-
props: {
|
|
375
|
-
size: 'tiny',
|
|
376
|
-
icon: 'LockLine',
|
|
377
|
-
minimal: true,
|
|
378
|
-
className: 'reqraft-select-item-lock',
|
|
379
|
-
},
|
|
380
|
-
};
|
|
381
|
-
|
|
382
|
-
/**
|
|
383
|
-
* An item's row tooltip as reqore's own tooltip prop.
|
|
384
|
-
*
|
|
385
|
-
* The descriptor is turned into an element HERE — after the caller's items
|
|
386
|
-
* have been through whatever memo key they travel under — which is the whole
|
|
387
|
-
* reason the item carries `{ as, props }` and not a node.
|
|
388
|
-
*/
|
|
389
|
-
export const buildSelectItemTooltip = (
|
|
390
|
-
tooltip: ISelectFieldCollectionItem['tooltip']
|
|
391
|
-
): string | IReqoreTooltip | undefined => {
|
|
392
|
-
if (!tooltip) {
|
|
393
|
-
return undefined;
|
|
394
|
-
}
|
|
395
|
-
|
|
396
|
-
if (typeof tooltip === 'string') {
|
|
397
|
-
return tooltip;
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
const { content, ...rest } = tooltip;
|
|
401
|
-
|
|
402
|
-
if (content === undefined) {
|
|
403
|
-
return rest;
|
|
404
|
-
}
|
|
405
|
-
|
|
406
|
-
if (typeof content === 'string') {
|
|
407
|
-
return { ...rest, content };
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
const { as: Component, props } = content;
|
|
411
|
-
|
|
412
|
-
return { ...rest, content: <Component {...props} /> };
|
|
413
|
-
};
|
|
414
|
-
|
|
415
|
-
export const SelectFieldCollection = ({
|
|
416
|
-
onClose,
|
|
417
|
-
items,
|
|
418
|
-
value,
|
|
419
|
-
onItemSelect,
|
|
420
|
-
filters,
|
|
421
|
-
}: ISelectFieldCollectionProps) => {
|
|
422
|
-
const [appliedFilters, setAppliedFilters] = useState<string[]>([]);
|
|
423
|
-
|
|
424
|
-
const filteredItems = useMemo(() => {
|
|
425
|
-
return items.filter((item) => {
|
|
426
|
-
let isMatch = true;
|
|
427
|
-
|
|
428
|
-
if (appliedFilters.length > 0) {
|
|
429
|
-
isMatch = appliedFilters.some((filter) => item[filter]);
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
return isMatch;
|
|
433
|
-
});
|
|
434
|
-
}, [items, appliedFilters]);
|
|
435
|
-
|
|
436
|
-
return (
|
|
437
|
-
<StyledSelectDialog
|
|
438
|
-
isOpen
|
|
439
|
-
// A library-owned hook for hosts and their tests to target the picker
|
|
440
|
-
// (qorus-ide's helpers looked for its own `.q-select-dialog`, which
|
|
441
|
-
// this modal never carried).
|
|
442
|
-
className='reqraft-select-dialog'
|
|
443
|
-
icon='ListOrdered'
|
|
444
|
-
onClose={onClose}
|
|
445
|
-
label='Select from items'
|
|
446
|
-
badge={size(items)}
|
|
447
|
-
width='700px'
|
|
448
|
-
customTheme={{ main: '#010811' }}
|
|
449
|
-
>
|
|
450
|
-
<ReqoreCollection
|
|
451
|
-
filterable
|
|
452
|
-
sortable
|
|
453
|
-
responsiveTitle={false}
|
|
454
|
-
showSelectedFirst
|
|
455
|
-
selectedIcon='CheckLine'
|
|
456
|
-
fill
|
|
457
|
-
columnsGap='5px'
|
|
458
|
-
minColumnWidth='300px'
|
|
459
|
-
inputProps={{
|
|
460
|
-
rightIcon: 'KeyboardFill',
|
|
461
|
-
focusRules: {
|
|
462
|
-
type: 'auto',
|
|
463
|
-
clearOnFocus: true,
|
|
464
|
-
},
|
|
465
|
-
}}
|
|
466
|
-
customTheme={{ main: '#010811' }}
|
|
467
|
-
transparent={false}
|
|
468
|
-
size='tiny'
|
|
469
|
-
showLayoutSwitch={false}
|
|
470
|
-
items={filteredItems.map((item): IReqoreCollectionItemProps => {
|
|
471
|
-
const { longDescription, shortDescription } = getSelectItemDescriptionProps(item);
|
|
472
|
-
const unavailable = getSelectItemUnavailability(item);
|
|
473
|
-
/* One `messages` entry can be the refusal itself — a server that sent
|
|
474
|
-
`disabled` with its reason, resolved into `unavailable` upstream.
|
|
475
|
-
It is already printed above the description, so it is not printed
|
|
476
|
-
again underneath it. */
|
|
477
|
-
const messages = (item.messages || []).filter(
|
|
478
|
-
(message) => !unavailable || message.content !== unavailable.content
|
|
479
|
-
);
|
|
480
|
-
|
|
481
|
-
return {
|
|
482
|
-
label: item.display_name || item.value?.toString(),
|
|
483
|
-
size: 'tiny',
|
|
484
|
-
groups: item.groups,
|
|
485
|
-
className: [item.className, unavailable ? UNAVAILABLE_ITEM_CLASS : undefined]
|
|
486
|
-
.filter(Boolean)
|
|
487
|
-
.join(' '),
|
|
488
|
-
/* Inline with the name, in height the title bar already spends.
|
|
489
|
-
`actions` on the item stays where it has always been, in the
|
|
490
|
-
body under the description. */
|
|
491
|
-
actions: getSelectItemTitleActions(item, unavailable),
|
|
492
|
-
/* The row is the hover target, so an explanation costs the list
|
|
493
|
-
nothing until it is asked for. */
|
|
494
|
-
tooltip: buildSelectItemTooltip(item.tooltip ?? unavailable?.content),
|
|
495
|
-
/* Reqore searches a row's label and its stringified content, and
|
|
496
|
-
the content below is an element — so every row matches
|
|
497
|
-
`[object Object]` and nothing matches a word inside it. A reason
|
|
498
|
-
nobody can search for in a list of hundreds is a reason nobody
|
|
499
|
-
finds. */
|
|
500
|
-
searchString: [item.searchString, unavailable?.title, unavailable?.content]
|
|
501
|
-
.filter(Boolean)
|
|
502
|
-
.join(' '),
|
|
503
|
-
customTheme: { main: '#08182d' },
|
|
504
|
-
responsiveTitle: false,
|
|
505
|
-
content: (
|
|
506
|
-
<ReqoreControlGroup vertical fluid>
|
|
507
|
-
{unavailable ? (
|
|
508
|
-
<ReqoreMessage
|
|
509
|
-
flat
|
|
510
|
-
icon='LockLine'
|
|
511
|
-
intent={unavailable.intent || 'warning'}
|
|
512
|
-
title={unavailable.title}
|
|
513
|
-
size='small'
|
|
514
|
-
opaque={false}
|
|
515
|
-
>
|
|
516
|
-
{unavailable.content}
|
|
517
|
-
</ReqoreMessage>
|
|
518
|
-
) : null}
|
|
519
|
-
{longDescription || shortDescription ? (
|
|
520
|
-
<Description
|
|
521
|
-
longDescription={longDescription || ''}
|
|
522
|
-
shortDescription={shortDescription}
|
|
523
|
-
size='small'
|
|
524
|
-
margin='none'
|
|
525
|
-
/>
|
|
526
|
-
) : null}
|
|
527
|
-
{item.actions?.map(({ as: Component = ReqoreButton, props, ...rest }, index) => (
|
|
528
|
-
<Component
|
|
529
|
-
key={index}
|
|
530
|
-
{...rest}
|
|
531
|
-
{...props}
|
|
532
|
-
fixed
|
|
533
|
-
size='tiny'
|
|
534
|
-
/>
|
|
535
|
-
))}
|
|
536
|
-
{messages.map(({ intent, title, content }, index) => (
|
|
537
|
-
<ReqoreMessage
|
|
538
|
-
flat
|
|
539
|
-
intent={intent}
|
|
540
|
-
title={title}
|
|
541
|
-
key={title || index}
|
|
542
|
-
size='small'
|
|
543
|
-
opaque={false}
|
|
544
|
-
>
|
|
545
|
-
{content}
|
|
546
|
-
</ReqoreMessage>
|
|
547
|
-
))}
|
|
548
|
-
</ReqoreControlGroup>
|
|
549
|
-
),
|
|
550
|
-
flat: false,
|
|
551
|
-
minimal: true,
|
|
552
|
-
selected: item.value !== undefined && item.value !== null && isEqual(item.value, value),
|
|
553
|
-
intent:
|
|
554
|
-
item.value !== undefined && item.value !== null && isEqual(item.value, value)
|
|
555
|
-
? 'info'
|
|
556
|
-
: item.intent,
|
|
557
|
-
badge: item.badge,
|
|
558
|
-
icon: item.icon,
|
|
559
|
-
iconImage: item.image,
|
|
560
|
-
iconProps: {
|
|
561
|
-
size: '20px',
|
|
562
|
-
rounded: true,
|
|
563
|
-
},
|
|
564
|
-
/* No handler is what makes an unavailable row inert, and it is
|
|
565
|
-
deliberately NOT reqore's `disabled`: see the stylesheet on
|
|
566
|
-
`StyledSelectDialog`. */
|
|
567
|
-
onClick: !item.disabled && !unavailable
|
|
568
|
-
? (e) => {
|
|
569
|
-
if (e.currentTarget.contains(e.target as Node)) {
|
|
570
|
-
onItemSelect(item);
|
|
571
|
-
onClose?.();
|
|
572
|
-
}
|
|
573
|
-
}
|
|
574
|
-
: undefined,
|
|
575
|
-
};
|
|
576
|
-
})}
|
|
577
|
-
actions={filters?.map((filter) => ({
|
|
578
|
-
label: capitalize(filter.replace('_', ' ')),
|
|
579
|
-
badge: items.filter((item) => item[filter]).length,
|
|
580
|
-
active: appliedFilters.includes(filter),
|
|
581
|
-
effect: appliedFilters.includes(filter) ? PositiveColorEffect : undefined,
|
|
582
|
-
size: 'tiny' as const,
|
|
583
|
-
onClick: () => {
|
|
584
|
-
if (!appliedFilters.includes(filter)) {
|
|
585
|
-
setAppliedFilters([...appliedFilters, filter]);
|
|
586
|
-
} else {
|
|
587
|
-
setAppliedFilters(appliedFilters.filter((appliedFilter) => appliedFilter !== filter));
|
|
588
|
-
}
|
|
589
|
-
},
|
|
590
|
-
}))}
|
|
591
|
-
/>
|
|
592
|
-
</StyledSelectDialog>
|
|
593
|
-
);
|
|
594
|
-
};
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { StoryObj } from '@storybook/react-vite';
|
|
2
|
-
import { expect, fn, userEvent, within } from 'storybook/test';
|
|
3
|
-
import { useState } from 'react';
|
|
4
|
-
import { StoryMeta } from '../../../../types';
|
|
5
|
-
import { StringFormField } from './String';
|
|
6
|
-
|
|
7
|
-
const meta = {
|
|
8
|
-
component: StringFormField,
|
|
9
|
-
title: 'Components/Form/String',
|
|
10
|
-
args: {
|
|
11
|
-
onChange: fn(),
|
|
12
|
-
onClearClick: fn(),
|
|
13
|
-
'aria-label': 'Name',
|
|
14
|
-
},
|
|
15
|
-
render(args) {
|
|
16
|
-
const [value, setValue] = useState(args.value);
|
|
17
|
-
return (
|
|
18
|
-
<StringFormField
|
|
19
|
-
{...args}
|
|
20
|
-
value={value}
|
|
21
|
-
onChange={(value, event) => {
|
|
22
|
-
args.onChange?.(value, event);
|
|
23
|
-
setValue(value);
|
|
24
|
-
}}
|
|
25
|
-
onClearClick={() => {
|
|
26
|
-
args.onClearClick?.();
|
|
27
|
-
setValue('');
|
|
28
|
-
}}
|
|
29
|
-
/>
|
|
30
|
-
);
|
|
31
|
-
},
|
|
32
|
-
} as StoryMeta<typeof StringFormField>;
|
|
33
|
-
|
|
34
|
-
export default meta;
|
|
35
|
-
type Story = StoryObj<typeof meta>;
|
|
36
|
-
|
|
37
|
-
export const Default: Story = {
|
|
38
|
-
args: {
|
|
39
|
-
value: 'Qore',
|
|
40
|
-
},
|
|
41
|
-
parameters: {
|
|
42
|
-
docs: {
|
|
43
|
-
description: {
|
|
44
|
-
story:
|
|
45
|
-
'Renders the String field pre-populated with "Qore". Clicking clear empties the input and fires onClearClick; typing new text updates the value and fires onChange.',
|
|
46
|
-
},
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
play: async ({ canvasElement, args }) => {
|
|
50
|
-
const canvas = within(canvasElement);
|
|
51
|
-
const input = canvas.getByLabelText('Name');
|
|
52
|
-
|
|
53
|
-
await expect(input).toBeInTheDocument();
|
|
54
|
-
await expect(input).toHaveValue('Qore');
|
|
55
|
-
|
|
56
|
-
await userEvent.click(input.nextElementSibling);
|
|
57
|
-
await expect(args.onClearClick).toHaveBeenCalledOnce();
|
|
58
|
-
await expect(input).toHaveValue('');
|
|
59
|
-
|
|
60
|
-
await userEvent.type(input, 'Java');
|
|
61
|
-
await expect(input).toHaveValue('Java');
|
|
62
|
-
await expect(args.onChange).toHaveBeenLastCalledWith('Java', expect.objectContaining({}));
|
|
63
|
-
},
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
export const Sensitive: Story = {
|
|
67
|
-
args: {
|
|
68
|
-
sensitive: true,
|
|
69
|
-
value: 'password',
|
|
70
|
-
},
|
|
71
|
-
parameters: {
|
|
72
|
-
docs: {
|
|
73
|
-
description: {
|
|
74
|
-
story:
|
|
75
|
-
'Renders the String field in sensitive mode — the input renders as type="password" so the value is masked.',
|
|
76
|
-
},
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
play: async ({ canvasElement }) => {
|
|
80
|
-
const canvas = within(canvasElement);
|
|
81
|
-
const input = canvas.getByLabelText('Name');
|
|
82
|
-
await expect(input).toBeInTheDocument();
|
|
83
|
-
await expect(input).toHaveAttribute('type', 'password');
|
|
84
|
-
await expect(input).toHaveValue('password');
|
|
85
|
-
},
|
|
86
|
-
};
|