@qoretechnologies/reqraft 0.10.64 → 0.10.65-pr.137.g20c3bec
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 +41 -8
- package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
- package/dist/components/dpqlEditor/dpqlCompletions.d.ts +35 -0
- package/dist/components/dpqlEditor/dpqlCompletions.d.ts.map +1 -0
- package/dist/components/dpqlEditor/dpqlCompletions.js +122 -0
- package/dist/components/dpqlEditor/dpqlCompletions.js.map +1 -0
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts +47 -5
- package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
- package/dist/components/dpqlEditor/dpqlHelpers.js +390 -62
- 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 +59 -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 +61 -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 +327 -123
- package/dist/components/form/engine/CompactRow.js.map +1 -1
- package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
- package/dist/components/form/engine/CompactToolbar.js +29 -3
- package/dist/components/form/engine/CompactToolbar.js.map +1 -1
- package/dist/components/form/engine/FormEngine.d.ts +66 -11
- package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
- package/dist/components/form/engine/FormEngine.js +597 -173
- package/dist/components/form/engine/FormEngine.js.map +1 -1
- package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
- package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
- package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
- package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
- package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
- package/dist/components/form/engine/OptionFieldMessages.js +25 -3
- package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
- package/dist/components/form/engine/OptionsHelpDialog.d.ts.map +1 -1
- package/dist/components/form/engine/OptionsHelpDialog.js +19 -2
- package/dist/components/form/engine/OptionsHelpDialog.js.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts +2 -2
- package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
- package/dist/components/form/engine/_structuredData/SchemaDataView.js +12 -6
- package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
- package/dist/components/form/engine/compactRowContext.d.ts +32 -1
- package/dist/components/form/engine/compactRowContext.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowContext.js.map +1 -1
- package/dist/components/form/engine/compactRowStyles.d.ts +22 -10
- package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
- package/dist/components/form/engine/compactRowStyles.js +53 -39
- package/dist/components/form/engine/compactRowStyles.js.map +1 -1
- package/dist/components/form/engine/compactToolbarColors.d.ts +16 -0
- package/dist/components/form/engine/compactToolbarColors.d.ts.map +1 -0
- package/dist/components/form/engine/compactToolbarColors.js +21 -0
- package/dist/components/form/engine/compactToolbarColors.js.map +1 -0
- package/dist/components/form/engine/inheritProps.d.ts +29 -0
- package/dist/components/form/engine/inheritProps.d.ts.map +1 -0
- package/dist/components/form/engine/inheritProps.js +43 -0
- package/dist/components/form/engine/inheritProps.js.map +1 -0
- package/dist/components/form/engine/operatorSummary.d.ts +26 -0
- package/dist/components/form/engine/operatorSummary.d.ts.map +1 -0
- package/dist/components/form/engine/operatorSummary.js +35 -0
- package/dist/components/form/engine/operatorSummary.js.map +1 -0
- package/dist/components/form/engine/readFirst.d.ts +24 -8
- package/dist/components/form/engine/readFirst.d.ts.map +1 -1
- package/dist/components/form/engine/readFirst.js +77 -109
- package/dist/components/form/engine/readFirst.js.map +1 -1
- package/dist/components/form/engine/readFirstColors.d.ts +30 -0
- package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
- package/dist/components/form/engine/readFirstColors.js +51 -0
- package/dist/components/form/engine/readFirstColors.js.map +1 -0
- package/dist/components/form/engine/rowFocus.d.ts +2 -0
- package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
- package/dist/components/form/engine/rowFocus.js +26 -3
- package/dist/components/form/engine/rowFocus.js.map +1 -1
- package/dist/components/form/engine/typeChoices.d.ts +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
- package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantCards.js +2 -1
- package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js +1 -1
- package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
- package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
- package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
- package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
- package/dist/components/form/engine/variants/variantParts.js +25 -17
- package/dist/components/form/engine/variants/variantParts.js.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
- package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
- package/dist/components/form/expressions/DpqlRendering.js +7 -6
- package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
- package/dist/components/form/expressions/ExpressionField.d.ts +66 -3
- package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
- package/dist/components/form/expressions/ExpressionField.js +475 -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 +29 -2
- package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
- package/dist/components/form/expressions/builder/index.js +161 -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/loneValue.d.ts +17 -0
- package/dist/components/form/expressions/loneValue.d.ts.map +1 -0
- package/dist/components/form/expressions/loneValue.js +33 -0
- package/dist/components/form/expressions/loneValue.js.map +1 -0
- package/dist/components/form/expressions/mockExpressions.d.ts.map +1 -1
- package/dist/components/form/expressions/mockExpressions.js +22 -5
- package/dist/components/form/expressions/mockExpressions.js.map +1 -1
- package/dist/components/form/expressions/renderExpressionToText.d.ts +2 -0
- package/dist/components/form/expressions/renderExpressionToText.d.ts.map +1 -1
- package/dist/components/form/expressions/renderExpressionToText.js +43 -10
- package/dist/components/form/expressions/renderExpressionToText.js.map +1 -1
- package/dist/components/form/expressions/textOfExpression.d.ts +18 -0
- package/dist/components/form/expressions/textOfExpression.d.ts.map +1 -0
- package/dist/components/form/expressions/textOfExpression.js +49 -0
- package/dist/components/form/expressions/textOfExpression.js.map +1 -0
- package/dist/components/form/expressions/types.d.ts +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 +43 -20
- package/dist/components/form/fields/Field.js.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
- package/dist/components/form/fields/allowed-values/AllowedValues.js +39 -6
- package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
- package/dist/components/form/fields/allowed-values/choicePicture.d.ts +37 -0
- package/dist/components/form/fields/allowed-values/choicePicture.d.ts.map +1 -0
- package/dist/components/form/fields/allowed-values/choicePicture.js +64 -0
- package/dist/components/form/fields/allowed-values/choicePicture.js.map +1 -0
- package/dist/components/form/fields/array/ArrayAuto.d.ts.map +1 -1
- package/dist/components/form/fields/array/ArrayAuto.js +24 -0
- package/dist/components/form/fields/array/ArrayAuto.js.map +1 -1
- package/dist/components/form/fields/array/ArrayAutoField.d.ts.map +1 -1
- package/dist/components/form/fields/array/ArrayAutoField.js +36 -13
- package/dist/components/form/fields/array/ArrayAutoField.js.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts +20 -1
- package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
- package/dist/components/form/fields/auto/AutoFormField.js +91 -53
- package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
- package/dist/components/form/fields/auto/hostEditorValue.d.ts +30 -0
- package/dist/components/form/fields/auto/hostEditorValue.d.ts.map +1 -0
- package/dist/components/form/fields/auto/hostEditorValue.js +53 -0
- package/dist/components/form/fields/auto/hostEditorValue.js.map +1 -0
- package/dist/components/form/fields/binary/Binary.d.ts.map +1 -1
- package/dist/components/form/fields/binary/Binary.js +23 -3
- package/dist/components/form/fields/binary/Binary.js.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.d.ts +5 -0
- package/dist/components/form/fields/boolean/Boolean.d.ts.map +1 -1
- package/dist/components/form/fields/boolean/Boolean.js +9 -1
- package/dist/components/form/fields/boolean/Boolean.js.map +1 -1
- package/dist/components/form/fields/color/Color.d.ts +103 -16
- package/dist/components/form/fields/color/Color.d.ts.map +1 -1
- package/dist/components/form/fields/color/Color.js +616 -16
- package/dist/components/form/fields/color/Color.js.map +1 -1
- package/dist/components/form/fields/emittedValues.d.ts +34 -3
- package/dist/components/form/fields/emittedValues.d.ts.map +1 -1
- package/dist/components/form/fields/emittedValues.js +24 -1
- package/dist/components/form/fields/emittedValues.js.map +1 -1
- package/dist/components/form/fields/file/File.d.ts +1 -1
- package/dist/components/form/fields/file/File.d.ts.map +1 -1
- package/dist/components/form/fields/file/File.js +4 -2
- package/dist/components/form/fields/file/File.js.map +1 -1
- package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
- package/dist/components/form/fields/long-string/LongString.js +29 -8
- package/dist/components/form/fields/long-string/LongString.js.map +1 -1
- package/dist/components/form/fields/markdown/MarkdownView.js +1 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts.map +1 -1
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js +13 -9
- package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
- package/dist/components/form/fields/number/Number.d.ts +6 -0
- package/dist/components/form/fields/number/Number.d.ts.map +1 -1
- package/dist/components/form/fields/number/Number.js +41 -6
- package/dist/components/form/fields/number/Number.js.map +1 -1
- package/dist/components/form/fields/object/Object.d.ts +1 -1
- package/dist/components/form/fields/object/Object.d.ts.map +1 -1
- package/dist/components/form/fields/object/Object.js +4 -2
- package/dist/components/form/fields/object/Object.js.map +1 -1
- package/dist/components/form/fields/pendingEdit.d.ts +52 -0
- package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
- package/dist/components/form/fields/pendingEdit.js +79 -0
- package/dist/components/form/fields/pendingEdit.js.map +1 -0
- package/dist/components/form/fields/radio-group/RadioGroup.d.ts.map +1 -1
- package/dist/components/form/fields/radio-group/RadioGroup.js +4 -3
- package/dist/components/form/fields/radio-group/RadioGroup.js.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts +8 -1
- package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
- package/dist/components/form/fields/rich-text/RichText.js +211 -85
- 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 +77 -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 +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 +103 -1
- package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
- package/dist/components/form/fields/template/TemplateField.js +652 -104
- 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 +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 +11 -0
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +24 -1
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/form/typeSentenceForm.d.ts +11 -0
- package/dist/components/form/typeSentenceForm.d.ts.map +1 -0
- package/dist/components/form/typeSentenceForm.js +40 -0
- package/dist/components/form/typeSentenceForm.js.map +1 -0
- package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
- package/dist/components/imageLightbox/ImageLightbox.js +19 -7
- package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
- package/dist/components/log/Log.d.ts.map +1 -1
- package/dist/components/log/Log.js +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 +45 -0
- package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
- package/dist/components/smartEditor/CompletionMenu.js +207 -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 +366 -187
- 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 +38 -0
- package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
- package/dist/components/smartEditor/templateCompletions.js +126 -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 +66 -2
- package/dist/components/smartEditor/types.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.d.ts +62 -2
- package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
- package/dist/components/smartEditor/useLspAutocomplete.js +345 -146
- 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 +351 -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/supportTicket/AttachmentChips.d.ts.map +1 -1
- package/dist/components/supportTicket/AttachmentChips.js +15 -5
- package/dist/components/supportTicket/AttachmentChips.js.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.d.ts +9 -2
- package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
- package/dist/components/supportTicket/ReferencePicker.js +27 -6
- package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
- package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
- package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
- package/dist/components/supportTicket/TicketHeader.js +20 -2
- package/dist/components/supportTicket/TicketHeader.js.map +1 -1
- package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
- package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
- package/dist/components/ticketReferences/TicketReferences.js +9 -4
- package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
- package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
- package/dist/components/ticketThread/TicketThread.js +38 -13
- package/dist/components/ticketThread/TicketThread.js.map +1 -1
- package/dist/helpers/allowedValues.d.ts +21 -0
- package/dist/helpers/allowedValues.d.ts.map +1 -1
- package/dist/helpers/allowedValues.js +40 -1
- package/dist/helpers/allowedValues.js.map +1 -1
- package/dist/helpers/descriptionTooltip.d.ts +46 -0
- package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
- package/dist/helpers/descriptionTooltip.js +76 -0
- package/dist/helpers/descriptionTooltip.js.map +1 -0
- package/dist/helpers/domProps.d.ts +5 -0
- package/dist/helpers/domProps.d.ts.map +1 -0
- package/dist/helpers/domProps.js +47 -0
- package/dist/helpers/domProps.js.map +1 -0
- package/dist/helpers/expressions.d.ts +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/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 +85 -0
- package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
- package/dist/helpers/qorusTypeCatalogue.js +301 -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.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/templates.d.ts +68 -14
- package/dist/helpers/templates.d.ts.map +1 -1
- package/dist/helpers/templates.js +210 -24
- package/dist/helpers/templates.js.map +1 -1
- package/dist/helpers/validations.d.ts +28 -1
- package/dist/helpers/validations.d.ts.map +1 -1
- package/dist/helpers/validations.js +166 -37
- 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 +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
|
@@ -107,6 +107,7 @@ var validations_1 = require("../../../helpers/validations");
|
|
|
107
107
|
var templates_1 = require("../../../helpers/templates");
|
|
108
108
|
var common_1 = require("../../../helpers/common");
|
|
109
109
|
var templateText_1 = require("../../../helpers/templateText");
|
|
110
|
+
var pendingEdit_1 = require("../fields/pendingEdit");
|
|
110
111
|
var ReadOnlyTemplateTag_1 = require("../fields/template/ReadOnlyTemplateTag");
|
|
111
112
|
var TemplateText_1 = require("../fields/template/TemplateText");
|
|
112
113
|
var codeSize_1 = require("../../codeSize");
|
|
@@ -114,6 +115,11 @@ var Description_1 = require("../../Description");
|
|
|
114
115
|
var markdownRendererContext_1 = require("../../Description/markdownRendererContext");
|
|
115
116
|
var FocusedEditing_1 = require("../../FocusedEditing");
|
|
116
117
|
var compactRowContext_1 = require("./compactRowContext");
|
|
118
|
+
var useCoarsePointer_1 = require("../../../hooks/useCoarsePointer");
|
|
119
|
+
var qorusTypeCatalogue_1 = require("../../../helpers/qorusTypeCatalogue");
|
|
120
|
+
var typeSentenceForm_1 = require("../typeSentenceForm");
|
|
121
|
+
var inheritProps_1 = require("./inheritProps");
|
|
122
|
+
var noDescription_1 = require("../../../helpers/noDescription");
|
|
117
123
|
var revealRow_1 = require("./revealRow");
|
|
118
124
|
var compactRowStyles_1 = require("./compactRowStyles");
|
|
119
125
|
var OptionFieldMessages_1 = require("./OptionFieldMessages");
|
|
@@ -121,9 +127,14 @@ var rowFocus_1 = require("./rowFocus");
|
|
|
121
127
|
var rowOpenPicker_1 = require("./rowOpenPicker");
|
|
122
128
|
var SchemaDataView_1 = require("./_structuredData/SchemaDataView");
|
|
123
129
|
var queryUnlessCancelled_1 = require("../../../utils/queryUnlessCancelled");
|
|
130
|
+
var markdownText_1 = require("../../../helpers/markdownText");
|
|
124
131
|
var readFirst_1 = require("./readFirst");
|
|
125
132
|
var StructuredDataView_1 = require("./_structuredData/StructuredDataView");
|
|
126
133
|
var DpqlRendering_1 = require("../expressions/DpqlRendering");
|
|
134
|
+
var argumentPresence_1 = require("../expressions/argumentPresence");
|
|
135
|
+
var colorValue_1 = require("../../colorValue");
|
|
136
|
+
var hoveringPointer_1 = require("../../../helpers/hoveringPointer");
|
|
137
|
+
var webLink_1 = require("../../../helpers/webLink");
|
|
127
138
|
/**
|
|
128
139
|
* Does this markdown value have more document in it than one row can show?
|
|
129
140
|
*
|
|
@@ -209,6 +220,39 @@ var richtextItemText = function (item) {
|
|
|
209
220
|
: undefined;
|
|
210
221
|
};
|
|
211
222
|
exports.richtextItemText = richtextItemText;
|
|
223
|
+
/**
|
|
224
|
+
* An editable row's plain text: wrapped, up to three lines (see `renderReadFirstValue`). Its newlines fold into
|
|
225
|
+
* the line, as the one-line summary folded them.
|
|
226
|
+
*/
|
|
227
|
+
var SUMMARY_TEXT_STYLE = Object.freeze({
|
|
228
|
+
display: '-webkit-box',
|
|
229
|
+
WebkitBoxOrient: 'vertical',
|
|
230
|
+
WebkitLineClamp: 3,
|
|
231
|
+
overflow: 'hidden',
|
|
232
|
+
whiteSpace: 'normal',
|
|
233
|
+
overflowWrap: 'anywhere',
|
|
234
|
+
minWidth: 0,
|
|
235
|
+
});
|
|
236
|
+
/**
|
|
237
|
+
* A value that is a web address, as a link to it: it opens in a new tab, and a click or Enter on it follows it
|
|
238
|
+
* without opening the row it is in. Reached with Tab, it says where it goes and that it opens a new tab, and
|
|
239
|
+
* shows its focus ring (`.options-readfirst-link`); its address is copied as a link's is.
|
|
240
|
+
*/
|
|
241
|
+
var WebLink = (0, react_1.memo)(function (_a) {
|
|
242
|
+
var address = _a.address, color = _a.color;
|
|
243
|
+
return ((0, jsx_runtime_1.jsx)("a", { className: 'options-readfirst-link', href: address, target: '_blank', rel: 'noopener noreferrer', "aria-label": "".concat(address, " (opens in a new tab)"), style: color ? { color: color } : undefined,
|
|
244
|
+
// the link's, not the row's: the row opens on a click and on Enter or Space
|
|
245
|
+
onClick: function (event) { return event.stopPropagation(); }, onKeyDown: function (event) {
|
|
246
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
247
|
+
event.stopPropagation();
|
|
248
|
+
}
|
|
249
|
+
}, children: address }));
|
|
250
|
+
});
|
|
251
|
+
WebLink.displayName = 'WebLink';
|
|
252
|
+
/** The status boxes by name, as their headers say them. */
|
|
253
|
+
var BOX_NAMES = { attention: 'Needs attention', set: 'Set', optional: 'Optional' };
|
|
254
|
+
/** A read-only editor's change: there is none to take. */
|
|
255
|
+
var ignoreReadOnlyChange = function () { return undefined; };
|
|
212
256
|
exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
213
257
|
var _b;
|
|
214
258
|
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
@@ -225,14 +269,24 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
225
269
|
absorbedName;
|
|
226
270
|
};
|
|
227
271
|
var codePreviewRenderer = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.codePreviewRenderer; });
|
|
272
|
+
var CodeEditor = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.codeEditor; });
|
|
273
|
+
var readSummaries = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.readSummaries; });
|
|
274
|
+
var cardEditorTypes = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.cardEditorTypes; });
|
|
228
275
|
var markdownRenderer = (0, markdownRendererContext_1.useMarkdownRenderer)();
|
|
229
276
|
var operators = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.operators; });
|
|
230
277
|
var focusedEditing = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.focusedEditing; });
|
|
231
278
|
var showFieldTypes = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.showFieldTypes; });
|
|
279
|
+
// a finger's target is `small`, a mouse's `tiny` (the help button)
|
|
280
|
+
var coarse = (0, useCoarsePointer_1.useCoarsePointer)();
|
|
281
|
+
// what kind of value the option takes, in the words the form's type catalogue names it
|
|
282
|
+
var typeName = (0, typeSentenceForm_1.useTypeName)();
|
|
283
|
+
var typeSentenceForm = (0, typeSentenceForm_1.useTypeSentenceForm)();
|
|
232
284
|
var showAllDescriptions = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.showAllDescriptions; });
|
|
233
285
|
var isExpanded = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) {
|
|
234
286
|
return v.expandedOptions.includes(optionName);
|
|
235
287
|
});
|
|
288
|
+
// the box this open field moves to when it is closed, when that is not the one it is shown in
|
|
289
|
+
var movesTo = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { var _a; return (_a = v.heldOptions) === null || _a === void 0 ? void 0 : _a[optionName]; });
|
|
236
290
|
var isHighlighted = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) {
|
|
237
291
|
return v.highlightedOptions.includes(optionName);
|
|
238
292
|
});
|
|
@@ -278,7 +332,8 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
278
332
|
var availableOptions = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.availableOptions; });
|
|
279
333
|
var requiredGroupsInfo = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.requiredGroupsInfo; });
|
|
280
334
|
var handleValueChange = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.handleValueChange; });
|
|
281
|
-
var
|
|
335
|
+
var expandOption = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.expandOption; });
|
|
336
|
+
var collapseOption = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.collapseOption; });
|
|
282
337
|
var flashOption = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.flashOption; });
|
|
283
338
|
var hasOptionChanged = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.hasOptionChanged; });
|
|
284
339
|
var handleOptionLabelClick = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.handleOptionLabelClick; });
|
|
@@ -291,6 +346,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
291
346
|
var renderOption = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.renderOption; });
|
|
292
347
|
var theme = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.theme; });
|
|
293
348
|
var cMuted = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.cMuted; });
|
|
349
|
+
var rowInks = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.rowInks; });
|
|
294
350
|
var templates = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.templates; });
|
|
295
351
|
var cKey = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.cKey; });
|
|
296
352
|
var cDivider = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.cDivider; });
|
|
@@ -300,20 +356,25 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
300
356
|
var cInfo = (0, use_context_selector_1.useContextSelector)(compactRowContext_1.CompactRowContext, function (v) { return v.cInfo; });
|
|
301
357
|
// A markdown value renders as a document in the row's inset; the host's
|
|
302
358
|
// renderer when it supplied one, reqraft's own otherwise.
|
|
303
|
-
// Value-cell content:
|
|
359
|
+
// Value-cell content: color adds a swatch, file an icon + size; hash keeps
|
|
304
360
|
// its "N fields" summary (sub-fields reveal beneath the row).
|
|
305
361
|
var renderReadFirstValue = function (field, schema, formatted,
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
362
|
+
/* An editable row's plain text wraps, up to three lines: its value line is a summary you click to open,
|
|
363
|
+
and the whole value is in the row's editor. It was one line with an ellipsis, and an address or a
|
|
364
|
+
sentence lost its end at every width (qorus#646, Foxhoundn on qlip #383: "wrap texts so users on both
|
|
365
|
+
phones and desktops can easily read and copy it"; David, 2026-10-22). A read-only row is the only
|
|
366
|
+
rendering the value gets, so it wraps in full (`full`), a long text moving to the inset under the row
|
|
367
|
+
with "Show more". */
|
|
309
368
|
full) {
|
|
310
369
|
var _a;
|
|
311
370
|
if (full === void 0) { full = false; }
|
|
312
371
|
var valueType = (0, readFirst_1.getValueType)(field, schema);
|
|
313
372
|
var wrapStyle = __assign({ display: 'inline-flex', alignItems: 'center', gap: 6, minWidth: 0, maxWidth: '100%' }, (full ? { flexWrap: 'wrap' } : {}));
|
|
314
|
-
var textStyle = full ?
|
|
315
|
-
|
|
316
|
-
|
|
373
|
+
var textStyle = full ? { whiteSpace: 'pre-wrap', overflowWrap: 'anywhere' } : SUMMARY_TEXT_STYLE;
|
|
374
|
+
// The expression the value holds, in either shape the editor stores it: the flag on the option, or
|
|
375
|
+
// the envelope nested in its value as a reloaded draft has it.
|
|
376
|
+
var expressionAst = (0, readFirst_1.getExpressionAst)(field);
|
|
377
|
+
var isExpression = !!(field === null || field === void 0 ? void 0 : field.is_expression) || expressionAst !== undefined;
|
|
317
378
|
/* A row has to SAY when its value is an expression.
|
|
318
379
|
|
|
319
380
|
Reported from the live IDE: an author accepted the *Use as expression*
|
|
@@ -326,7 +387,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
326
387
|
The same Σ the expression editor uses, so the mark means the same thing
|
|
327
388
|
wherever it appears. */
|
|
328
389
|
var withExpressionMarker = function (rendered) {
|
|
329
|
-
if (!
|
|
390
|
+
if (!isExpression) {
|
|
330
391
|
return rendered;
|
|
331
392
|
}
|
|
332
393
|
return ((0, jsx_runtime_1.jsxs)("span", { style: __assign(__assign({}, wrapStyle), { gap: 4 }), children: [(0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'Functions', size: 'tiny',
|
|
@@ -339,13 +400,43 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
339
400
|
rule, which reqore has no prop for, stays inline. */
|
|
340
401
|
effect: { opacity: 0.7 }, style: { flexShrink: 0 }, tooltip: 'This value is an expression' }), rendered] }));
|
|
341
402
|
};
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
403
|
+
// Template value ($local:…): the read-only template picker — the SAME chip
|
|
404
|
+
// TemplateField renders when disabled, so a template reads identically here
|
|
405
|
+
// and in the editor (qorus-ide intent scheme: info / qorus purple).
|
|
406
|
+
//
|
|
407
|
+
// A field may also declare templates OF ITS OWN, and a value drawn from
|
|
408
|
+
// that list is just as much a template even when it does not look like
|
|
409
|
+
// `$name:key` — `isValueTemplate` is a guess at the shape of the built-in
|
|
410
|
+
// grammar, and a host's own grammar (a Qorus test's `$.order.id`) fails it.
|
|
411
|
+
// Asking the field's list whether it CONTAINS the value settles it without
|
|
412
|
+
// guessing at syntax, and hands back the entry whose label the chip prints,
|
|
413
|
+
// so a reference reads as the name it was chosen by here as well as in the
|
|
414
|
+
// editor rather than as a raw path.
|
|
415
|
+
var ownTemplates = (_a = schema === null || schema === void 0 ? void 0 : schema.templates) !== null && _a !== void 0 ? _a : templates;
|
|
416
|
+
// The grammar the field declares its references in, when it speaks one of
|
|
417
|
+
// its own — the same schema key its rich-text editor is given.
|
|
418
|
+
var templateGrammar = schema === null || schema === void 0 ? void 0 : schema.templateToken;
|
|
419
|
+
/* A template or an expression is shown as one, whatever the field's type, so these two come before
|
|
420
|
+
any type draws a value of its own (qorus#646). A color's branch came first and called a template
|
|
421
|
+
or an expression on a color option "Set"; a file's printed the raw reference as a file name. */
|
|
422
|
+
if (typeof (field === null || field === void 0 ? void 0 : field.value) === 'string' &&
|
|
423
|
+
!isExpression &&
|
|
424
|
+
((0, templates_1.isValueTemplate)(field.value) || !!(0, templates_1.findTemplate)(ownTemplates !== null && ownTemplates !== void 0 ? ownTemplates : {}, field.value))) {
|
|
425
|
+
return (0, jsx_runtime_1.jsx)(ReadOnlyTemplateTag_1.ReadOnlyTemplateTag, { value: field.value, templates: ownTemplates });
|
|
426
|
+
}
|
|
427
|
+
// An expression reads as DPQL wherever it is shown without being edited:
|
|
428
|
+
// the same rendering its Explain panel and Preview use — monospace,
|
|
429
|
+
// colored by the language server, template references as chips — so a
|
|
430
|
+
// collapsed row and the editor it opens never disagree about what the
|
|
431
|
+
// value looks like. See `DpqlRendering`. In either shape the editor stores
|
|
432
|
+
// it: the flag on the option, or the envelope nested in its value as a
|
|
433
|
+
// reloaded draft has it (`getExpressionAst`).
|
|
434
|
+
if (isExpression && formatted) {
|
|
435
|
+
return withExpressionMarker((0, jsx_runtime_1.jsx)("span", { style: __assign({ minWidth: 0, flex: '1 1 auto' }, (full ? {} : { overflow: 'hidden' })), children: (0, jsx_runtime_1.jsx)(DpqlRendering_1.DpqlRendering, { text: formatted, templates: ownTemplates }) }));
|
|
436
|
+
}
|
|
437
|
+
// a color reads as ReqraftColorValue draws one, at its one-line size; a sensitive one is not shown
|
|
438
|
+
if (valueType === 'rgbcolor' && !(schema === null || schema === void 0 ? void 0 : schema.sensitive)) {
|
|
439
|
+
return (0, jsx_runtime_1.jsx)(colorValue_1.ReqraftColorValue, { value: field === null || field === void 0 ? void 0 : field.value, size: 'compact', wrap: full });
|
|
349
440
|
}
|
|
350
441
|
if (valueType === 'file') {
|
|
351
442
|
var fileSize = (0, readFirst_1.getFileSize)(field === null || field === void 0 ? void 0 : field.value);
|
|
@@ -353,6 +444,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
353
444
|
// trailing key pill (the editor renders it as a ReqoreButton badge).
|
|
354
445
|
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { size: 'small', minimal: true, intent: 'info', icon: 'FileLine', label: formatted, labelKey: fileSize !== undefined ? (0, readFirst_1.formatBytes)(fileSize) : undefined }));
|
|
355
446
|
}
|
|
447
|
+
// a yes/no holding a template has read as the template, above, not as Yes (qorus#646)
|
|
356
448
|
if (valueType === 'bool' || valueType === 'boolean') {
|
|
357
449
|
var truthy = (field === null || field === void 0 ? void 0 : field.value) === true || (field === null || field === void 0 ? void 0 : field.value) === 'true';
|
|
358
450
|
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { size: 'small', minimal: true, intent: truthy ? 'success' : 'danger', label: formatted }));
|
|
@@ -368,7 +460,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
368
460
|
// only surface still printing them as prose.
|
|
369
461
|
//
|
|
370
462
|
// `intent` is a FILL, which is what a tag is — the hazard the other
|
|
371
|
-
// branches warn about is only ever using an intent as a TEXT
|
|
463
|
+
// branches warn about is only ever using an intent as a TEXT color.
|
|
372
464
|
//
|
|
373
465
|
// Falls through to the plain summary unless EVERY entry yields a name: a
|
|
374
466
|
// partly-chipped row would read as though the unnamed cases were missing.
|
|
@@ -396,12 +488,17 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
396
488
|
// It reads as a chip beside the size chip — "Qore · 62 lines" — which
|
|
397
489
|
// is the same summary the read-only interface pages already show.
|
|
398
490
|
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreControlGroup, { gapSize: 'tiny', verticalAlign: 'center', wrap: true, children: (absorbedFields !== null && absorbedFields !== void 0 ? absorbedFields : []).map(function (absorbedName) {
|
|
399
|
-
var
|
|
400
|
-
var absorbedValue =
|
|
491
|
+
var absorbedField = availableOptions === null || availableOptions === void 0 ? void 0 : availableOptions[absorbedName];
|
|
492
|
+
var absorbedValue = absorbedField === null || absorbedField === void 0 ? void 0 : absorbedField.value;
|
|
401
493
|
if (absorbedValue === undefined || absorbedValue === null || absorbedValue === '') {
|
|
402
494
|
return null;
|
|
403
495
|
}
|
|
404
|
-
|
|
496
|
+
/* What the value is called and its picture, as its own control draws it: a language is "Qore" with
|
|
497
|
+
its logo, not the value it is stored as, "qore" (qorus#646, David's review). */
|
|
498
|
+
var absorbedSchema = options === null || options === void 0 ? void 0 : options[absorbedName];
|
|
499
|
+
var choice = (0, readFirst_1.findAllowedValueOption)(absorbedValue, absorbedSchema);
|
|
500
|
+
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { className: 'options-readfirst-absorbed-tag', size: 'small', minimal: true, icon: (choice === null || choice === void 0 ? void 0 : choice.image) ? 'CheckboxBlankLine' : undefined, leftIconProps: (choice === null || choice === void 0 ? void 0 : choice.image) ? { image: choice.image } : undefined, label: (0, readFirst_1.formatOptionValue)(absorbedField, absorbedSchema) ||
|
|
501
|
+
String(absorbedValue), tooltip: getAbsorbedLabel(absorbedName) }, absorbedName));
|
|
405
502
|
}) }));
|
|
406
503
|
}
|
|
407
504
|
// Markdown read summary: the row prints the value's prose (the markdown
|
|
@@ -437,27 +534,6 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
437
534
|
if (allowedIcon) {
|
|
438
535
|
return ((0, jsx_runtime_1.jsxs)("span", { style: wrapStyle, children: [(0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: allowedIcon, size: '16px', style: { flexShrink: 0 } }), (0, jsx_runtime_1.jsx)("span", { style: textStyle, children: formatted })] }));
|
|
439
536
|
}
|
|
440
|
-
// Template value ($local:…): the read-only template picker — the SAME chip
|
|
441
|
-
// TemplateField renders when disabled, so a template reads identically here
|
|
442
|
-
// and in the editor (qorus-ide intent scheme: info / qorus purple).
|
|
443
|
-
//
|
|
444
|
-
// A field may also declare templates OF ITS OWN, and a value drawn from
|
|
445
|
-
// that list is just as much a template even when it does not look like
|
|
446
|
-
// `$name:key` — `isValueTemplate` is a guess at the shape of the built-in
|
|
447
|
-
// grammar, and a host's own grammar (a Qorus test's `$.order.id`) fails it.
|
|
448
|
-
// Asking the field's list whether it CONTAINS the value settles it without
|
|
449
|
-
// guessing at syntax, and hands back the entry whose label the chip prints,
|
|
450
|
-
// so a reference reads as the name it was chosen by here as well as in the
|
|
451
|
-
// editor rather than as a raw path.
|
|
452
|
-
var ownTemplates = (_a = schema === null || schema === void 0 ? void 0 : schema.templates) !== null && _a !== void 0 ? _a : templates;
|
|
453
|
-
// The grammar the field declares its references in, when it speaks one of
|
|
454
|
-
// its own — the same schema key its rich-text editor is given.
|
|
455
|
-
var templateGrammar = schema === null || schema === void 0 ? void 0 : schema.templateToken;
|
|
456
|
-
if (typeof (field === null || field === void 0 ? void 0 : field.value) === 'string' &&
|
|
457
|
-
!field.is_expression &&
|
|
458
|
-
((0, templates_1.isValueTemplate)(field.value) || !!(0, templates_1.findTemplate)(ownTemplates !== null && ownTemplates !== void 0 ? ownTemplates : {}, field.value))) {
|
|
459
|
-
return (0, jsx_runtime_1.jsx)(ReadOnlyTemplateTag_1.ReadOnlyTemplateTag, { value: field.value, templates: ownTemplates, size: 'small' });
|
|
460
|
-
}
|
|
461
537
|
// A LIST whose elements are rich-text envelopes is a list of strings, so it
|
|
462
538
|
// reads as those strings. Without this the row fell through to the generic
|
|
463
539
|
// list summary and printed a bare count ("1 item") above the structured
|
|
@@ -478,14 +554,6 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
478
554
|
return (0, jsx_runtime_1.jsx)(TemplateText_1.TemplateText, { segments: segments, templates: ownTemplates, full: full });
|
|
479
555
|
}
|
|
480
556
|
}
|
|
481
|
-
// An expression reads as DPQL wherever it is shown without being edited:
|
|
482
|
-
// the same rendering its Explain panel and Preview use — monospace,
|
|
483
|
-
// coloured by the language server, template references as chips — so a
|
|
484
|
-
// collapsed row and the editor it opens never disagree about what the
|
|
485
|
-
// value looks like. See `DpqlRendering`.
|
|
486
|
-
if ((field === null || field === void 0 ? void 0 : field.is_expression) && formatted) {
|
|
487
|
-
return withExpressionMarker((0, jsx_runtime_1.jsx)("span", { style: __assign({ minWidth: 0, flex: '1 1 auto' }, (full ? {} : { overflow: 'hidden' })), children: (0, jsx_runtime_1.jsx)(DpqlRendering_1.DpqlRendering, { text: formatted, templates: ownTemplates }) }));
|
|
488
|
-
}
|
|
489
557
|
/* A value that MENTIONS a reference rather than being one.
|
|
490
558
|
|
|
491
559
|
The branch above answers "is this value a template?", and a predicate is
|
|
@@ -506,7 +574,14 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
506
574
|
if (templateSegments.some(function (segment) { return segment.kind === 'tag'; })) {
|
|
507
575
|
return withExpressionMarker((0, jsx_runtime_1.jsx)(TemplateText_1.TemplateText, { segments: templateSegments, templates: ownTemplates, full: full }));
|
|
508
576
|
}
|
|
509
|
-
|
|
577
|
+
/* A value that is a web address is a link to it, in an editable row and a read-only one: it opens in a
|
|
578
|
+
new tab, and a click or a key on it follows it and does not open the row (Foxhoundn on qlip #383:
|
|
579
|
+
"Please render links as links"; David, 2026-10-22). Only the value as typed: a value drawn as a label
|
|
580
|
+
or masked is not its address. */
|
|
581
|
+
var link = formatted === (field === null || field === void 0 ? void 0 : field.value) ? (0, webLink_1.webLinkOf)(formatted) : undefined;
|
|
582
|
+
return withExpressionMarker((0, jsx_runtime_1.jsx)("span", { style: textStyle, children: link ?
|
|
583
|
+
(0, jsx_runtime_1.jsx)(WebLink, { address: link, color: cInfo })
|
|
584
|
+
: formatted }));
|
|
510
585
|
};
|
|
511
586
|
var schema = options === null || options === void 0 ? void 0 : options[optionName];
|
|
512
587
|
var label = (schema === null || schema === void 0 ? void 0 : schema.display_name) || optionName;
|
|
@@ -587,9 +662,13 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
587
662
|
var chipGroups = unmetGroups.length ? unmetGroups : memberGroups;
|
|
588
663
|
var groupResolved = !!memberGroups.length && !unmetGroups.length;
|
|
589
664
|
var requiredGroupChip = !hidden && !readOnly && memberGroups.length && !(schema === null || schema === void 0 ? void 0 : schema.required) ?
|
|
590
|
-
(0, jsx_runtime_1.jsx)("span", { style: { display: 'inline-flex' }, role: 'presentation', onClick: function (e) { return e.stopPropagation(); }, onKeyDown: function (e) { return e.stopPropagation(); },
|
|
591
|
-
|
|
592
|
-
|
|
665
|
+
(0, jsx_runtime_1.jsx)("span", { style: { display: 'inline-flex' }, role: 'presentation', onClick: function (e) { return e.stopPropagation(); }, onKeyDown: function (e) { return e.stopPropagation(); },
|
|
666
|
+
// a mouse's hover, not a tap's emulated one: see `isHoveringPointer`
|
|
667
|
+
onPointerEnter: function (e) {
|
|
668
|
+
if ((0, hoveringPointer_1.isHoveringPointer)(e)) {
|
|
669
|
+
setHighlightedOptions(requiredGroupsInfo.members[chipGroups[0]] || []);
|
|
670
|
+
}
|
|
671
|
+
}, onPointerLeave: function () { return setHighlightedOptions([]); }, children: (0, jsx_runtime_1.jsx)(reqore_1.ReqoreDropdown, { className: 'options-readfirst-required-group', size: 'tiny', minimal: true, flat: true, compact: true, effect: { uppercase: true, spaced: 1 }, intent: groupResolved ? 'success' : 'warning', icon: groupResolved ? 'CheckLine' : 'LinkM', label: !groupResolved ? 'One of'
|
|
593
672
|
: coveredByLabel ?
|
|
594
673
|
"Covered by \u201C".concat(coveredByLabel, "\u201D")
|
|
595
674
|
: 'Covers', filterable: chipGroups.reduce(function (n, g) { return n + requiredGroupsInfo.members[g].length; }, 0) > 6, items: chipGroups.flatMap(function (groupName) { return __spreadArray(__spreadArray([], (chipGroups.length > 1 ?
|
|
@@ -609,6 +688,20 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
609
688
|
var editType = (_d = (fixedAllowedValueOption ?
|
|
610
689
|
(schema === null || schema === void 0 ? void 0 : schema.type) || (schema === null || schema === void 0 ? void 0 : schema.ui_type)
|
|
611
690
|
: (schema === null || schema === void 0 ? void 0 : schema.ui_type) || (schema === null || schema === void 0 ? void 0 : schema.type))) !== null && _d !== void 0 ? _d : '';
|
|
691
|
+
/* A complex field (a tall or nested editor) opens in the card below the row: reqraft's own complex types, and
|
|
692
|
+
the host's editors it names (`cardEditorTypes`): a host editor of its own, such as a sheet contract, opened
|
|
693
|
+
in the row's value column, about 240px wide (qorus#646). */
|
|
694
|
+
var isHostCardEditor = !!(cardEditorTypes === null || cardEditorTypes === void 0 ? void 0 : cardEditorTypes.includes(editType));
|
|
695
|
+
var opensInCard = COMPACT_COMPLEX_TYPES.has(editType) || isHostCardEditor;
|
|
696
|
+
/* What the host draws for the row when it is closed (`readSummaries`): a summary of its own, under which the
|
|
697
|
+
row draws no preview of the value (see `hostSummarizes`). */
|
|
698
|
+
var readSummaryUiType = schema === null || schema === void 0 ? void 0 : schema.ui_type;
|
|
699
|
+
var ReadSummary = readSummaryUiType ? readSummaries === null || readSummaries === void 0 ? void 0 : readSummaries[readSummaryUiType] : undefined;
|
|
700
|
+
/* In a read-only form, a row whose content its line does not show - a host editor that opens in the card, or a
|
|
701
|
+
row the host summarizes - opens its card with the editor read-only, and its fullscreen view: the summary is
|
|
702
|
+
one line ("4 columns · 1 rule"), and with no preview under it, the card is where what it holds is read
|
|
703
|
+
(qorus#646). Any other read-only row shows all it holds and opens nothing. */
|
|
704
|
+
var readOnlyOpens = !!readOnly && !hidden && (isHostCardEditor || !!ReadSummary);
|
|
612
705
|
// Scalars edit in place inside the row; complex fields (tall or nested
|
|
613
706
|
// editors) still open the expanded card below.
|
|
614
707
|
var inlineEditableNow = !readOnly &&
|
|
@@ -618,7 +711,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
618
711
|
!optionField.is_expression &&
|
|
619
712
|
// A choice with per-option logos (e.g. language) reads better collapsed.
|
|
620
713
|
!(0, readFirst_1.optionHasImages)(schema) &&
|
|
621
|
-
!
|
|
714
|
+
!opensInCard;
|
|
622
715
|
/* Which of the two editors a row gets is settled when the row OPENS.
|
|
623
716
|
*
|
|
624
717
|
* Every term above reads the VALUE or a schema derived from it, so the
|
|
@@ -794,7 +887,11 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
794
887
|
var editEntryValue = react_1.default.useRef(undefined);
|
|
795
888
|
react_1.default.useEffect(function () {
|
|
796
889
|
if (isExpanded) {
|
|
797
|
-
editEntryValue.current = {
|
|
890
|
+
editEntryValue.current = {
|
|
891
|
+
value: optionField === null || optionField === void 0 ? void 0 : optionField.value,
|
|
892
|
+
type: optionField === null || optionField === void 0 ? void 0 : optionField.type,
|
|
893
|
+
is_expression: !!(optionField === null || optionField === void 0 ? void 0 : optionField.is_expression),
|
|
894
|
+
};
|
|
798
895
|
}
|
|
799
896
|
else {
|
|
800
897
|
editEntryValue.current = undefined;
|
|
@@ -804,15 +901,25 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
804
901
|
var editedSinceOpened = isExpanded &&
|
|
805
902
|
!!editEntryValue.current &&
|
|
806
903
|
!(0, isEqual_1.default)(editEntryValue.current.value, optionField === null || optionField === void 0 ? void 0 : optionField.value);
|
|
904
|
+
// What this row's own editor has typed and not yet reported: its fields report after a pause, and the
|
|
905
|
+
// row closing takes the pause with it. Done sends it before the row closes; Cancel and Escape drop it
|
|
906
|
+
// (see `usePendingEdit`).
|
|
907
|
+
var pendingEdits = (0, pendingEdit_1.usePendingEdits)();
|
|
807
908
|
// Discard whatever was typed since the field was opened and close it. Used
|
|
808
909
|
// by both the Cancel button and Escape, so the two cannot diverge.
|
|
809
910
|
var cancelEdit = react_1.default.useCallback(function () {
|
|
911
|
+
// an edit still waiting for its pause is part of what is discarded
|
|
912
|
+
pendingEdits.discard();
|
|
810
913
|
var snapshot = editEntryValue.current;
|
|
811
|
-
|
|
812
|
-
|
|
914
|
+
// the field as it was opened: an expression is put back as one, a value as a value
|
|
915
|
+
if (snapshot &&
|
|
916
|
+
(!(0, isEqual_1.default)(snapshot.value, optionField === null || optionField === void 0 ? void 0 : optionField.value) ||
|
|
917
|
+
snapshot.is_expression !==
|
|
918
|
+
!!(optionField === null || optionField === void 0 ? void 0 : optionField.is_expression))) {
|
|
919
|
+
handleValueChange.apply(void 0, __spreadArray([optionName], (0, argumentPresence_1.restoredFieldChange)(snapshot), false));
|
|
813
920
|
}
|
|
814
|
-
|
|
815
|
-
}, [handleValueChange, optionField === null || optionField === void 0 ? void 0 : optionField.value, optionName,
|
|
921
|
+
collapseOption(optionName);
|
|
922
|
+
}, [handleValueChange, optionField === null || optionField === void 0 ? void 0 : optionField.value, optionName, collapseOption, pendingEdits]);
|
|
816
923
|
// The sub-schema describing this field's value, when it has one. A value the
|
|
817
924
|
// form knows the shape of is previewed THROUGH that shape (see
|
|
818
925
|
// `SchemaDataView`); only genuinely undescribed data falls through to the
|
|
@@ -881,9 +988,9 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
881
988
|
// whole-field revert is the only undo that makes sense.
|
|
882
989
|
var revertButton = changed ?
|
|
883
990
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { className: 'options-readfirst-revert', size: 'small', flat: true, minimal: true, icon: 'HistoryLine', tooltip: 'Revert changes', onClick: function (e) {
|
|
884
|
-
var _a
|
|
991
|
+
var _a;
|
|
885
992
|
e.stopPropagation();
|
|
886
|
-
handleValueChange(
|
|
993
|
+
handleValueChange.apply(void 0, __spreadArray([optionName], (0, argumentPresence_1.restoredFieldChange)((_a = originalValue.current) === null || _a === void 0 ? void 0 : _a[optionName]), false));
|
|
887
994
|
} })
|
|
888
995
|
: null;
|
|
889
996
|
// Clear-value: empties a set field (keeps the field; the value goes blank)
|
|
@@ -923,7 +1030,8 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
923
1030
|
var draftChip = commitMode === 'batched' && changed ?
|
|
924
1031
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { className: 'options-readfirst-draft', label: 'Draft', intent: 'warning', icon: 'EditLine', size: 'tiny', minimal: true, fixed: true, flat: true, compact: true, effect: { uppercase: true, spaced: 1 } })
|
|
925
1032
|
: null;
|
|
926
|
-
|
|
1033
|
+
// nothing can have been typed where the value is a fixed choice, or the form is read-only (a card opened to read)
|
|
1034
|
+
var isPassiveCloseAction = fixedAllowedValueOption || !!readOnly;
|
|
927
1035
|
// Cancel — the counterpart to Done, and the answer to "how do I get out of
|
|
928
1036
|
// here without keeping this". Done was the only way to leave an open field,
|
|
929
1037
|
// so every way out committed: the check, clicking away, and Escape (which
|
|
@@ -945,10 +1053,18 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
945
1053
|
var openedWithFormLoadValue = !editEntryValue.current ||
|
|
946
1054
|
(0, isEqual_1.default)(editEntryValue.current.value, (_f = (_e = originalValue.current) === null || _e === void 0 ? void 0 : _e[optionName]) === null || _f === void 0 ? void 0 : _f.value);
|
|
947
1055
|
var editRowRevertButton = openedWithFormLoadValue ? null : revertButton;
|
|
948
|
-
var closeExpandedFieldButton = ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { className: 'options-readfirst-done', size: 'small', intent: !isPassiveCloseAction ? 'success' : undefined, flat: isPassiveCloseAction, minimal: isPassiveCloseAction, fixed: true, icon: isPassiveCloseAction ? 'CloseLine' : 'CheckLine', "aria-label": isPassiveCloseAction ? 'Close field' : 'Done', tooltip: isPassiveCloseAction ? 'Close field' : 'Done', onClick: function () {
|
|
1056
|
+
var closeExpandedFieldButton = ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { className: 'options-readfirst-done', size: 'small', intent: !isPassiveCloseAction ? 'success' : undefined, flat: isPassiveCloseAction, minimal: isPassiveCloseAction, fixed: true, icon: isPassiveCloseAction ? 'CloseLine' : 'CheckLine', "aria-label": isPassiveCloseAction ? 'Close field' : 'Done', tooltip: isPassiveCloseAction ? 'Close field' : 'Done', onClick: function () {
|
|
1057
|
+
// what was typed inside the field's pause reaches the form before the row closes
|
|
1058
|
+
pendingEdits.flush();
|
|
1059
|
+
collapseOption(optionName);
|
|
1060
|
+
} }));
|
|
949
1061
|
// Info tiers: Tier 1 (danger/warning + dependency hints) must be visible
|
|
950
1062
|
// without interaction; Tier 2 (info/success, default notes) sits behind ⓘ.
|
|
951
|
-
|
|
1063
|
+
/* A field not set yet keeps quiet in the Optional box, but not once it is opened: its editor is where
|
|
1064
|
+
its messages are read, and one saying why the field cannot be used is the answer to opening it. Such
|
|
1065
|
+
a row used to show them only when its editor reported '' on opening, which put the field in the form
|
|
1066
|
+
(qorus#646: the Qorus IDE's "Wait (ms)", disabled while "Until Step" is set). */
|
|
1067
|
+
var infoActive = !hidden || isExpanded;
|
|
952
1068
|
var schemaMessages = infoActive ?
|
|
953
1069
|
(0, OptionFieldMessages_1.getShownSchemaMessages)(schema === null || schema === void 0 ? void 0 : schema.messages, availableOptions, options).map(function (m) { return ({
|
|
954
1070
|
intent: m.intent,
|
|
@@ -974,14 +1090,15 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
974
1090
|
}).map(function (m) { return ({ intent: m.intent, content: String(m.label) }); })
|
|
975
1091
|
: [];
|
|
976
1092
|
// TWO display channels, matching the Focus prototype:
|
|
977
|
-
// • dedicated schema `messages` → prominent
|
|
1093
|
+
// • dedicated schema `messages` → prominent colored PANELS below the row;
|
|
978
1094
|
// • everything else (validation reasons, the unmet-dependency hint, the
|
|
979
1095
|
// default-value note) → a compact INLINE reason strip — not a panel.
|
|
980
1096
|
var panelMessages = schemaMessages;
|
|
981
1097
|
var inlineMessages = __spreadArray(__spreadArray([], fieldMessages, true), (infoActive && (schema === null || schema === void 0 ? void 0 : schema.default_value_desc) ?
|
|
982
1098
|
[
|
|
983
1099
|
{
|
|
984
|
-
|
|
1100
|
+
// the default's description is the server's markdown: its words, not its marks
|
|
1101
|
+
content: "Default: ".concat(schema.default_value_display_name || '', " \u2014 ").concat((0, readFirst_1.markdownToProse)(schema.default_value_desc)).trim(),
|
|
985
1102
|
},
|
|
986
1103
|
]
|
|
987
1104
|
: []), true);
|
|
@@ -1001,12 +1118,40 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1001
1118
|
// the inline editor: opening a field used to drop it, leaving an editing row
|
|
1002
1119
|
// with no route to the field's description at all. Stops propagation because
|
|
1003
1120
|
// both labels are click targets themselves (the row expands / collapses).
|
|
1004
|
-
|
|
1005
|
-
|
|
1121
|
+
/* A real button (qorus#646, David's decision): in the tab order with a focus ring, a finger's size on a touch
|
|
1122
|
+
screen (`small`) and a mouse's on a desktop (`tiny`), opening the help on a click, Enter or Space. It was a
|
|
1123
|
+
12px icon the keyboard could not reach. It sits in a label or a row that opens or closes on the same keys and
|
|
1124
|
+
clicks, so it keeps them: the row does not also open or close. */
|
|
1125
|
+
/* What kind of value the option takes (qorus#646, David's review: "type information should be shown on hover or
|
|
1126
|
+
after clicking the 'Show all field information' control rather than by default"): in its name's hover and
|
|
1127
|
+
in its help, beside its description, and beside its name only while the form shows all field information or
|
|
1128
|
+
its types. */
|
|
1129
|
+
var typeWords = (0, qorusTypeCatalogue_1.optionTypeWords)(schema, typeName);
|
|
1130
|
+
var typeSentence = (0, qorusTypeCatalogue_1.optionTypeSentence)(schema, typeName, typeSentenceForm);
|
|
1131
|
+
// what the option is, or, where it has no description at all, why nothing says so (qorus#646)
|
|
1132
|
+
var labelHover = [
|
|
1133
|
+
(schema === null || schema === void 0 ? void 0 : schema.short_desc) || (!(schema === null || schema === void 0 ? void 0 : schema.desc) && typeSentence ? noDescription_1.NO_OPTION_DESCRIPTION : undefined),
|
|
1134
|
+
typeSentence && "Takes ".concat(typeSentence, "."),
|
|
1135
|
+
]
|
|
1136
|
+
.filter(Boolean)
|
|
1137
|
+
.join('\n') || undefined;
|
|
1138
|
+
var typeShown = !!showFieldTypes || showAllDescriptions === true;
|
|
1139
|
+
/* the help says what the option takes, and its description where it has one: every option with either has
|
|
1140
|
+
it, a short description too, so a touch screen, which has no hover, reaches the type (qorus#646, David) */
|
|
1141
|
+
var helpIcon = (schema === null || schema === void 0 ? void 0 : schema.desc) || (schema === null || schema === void 0 ? void 0 : schema.short_desc) || typeSentence ?
|
|
1142
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { icon: 'QuestionLine', size: coarse ? 'small' : 'tiny', minimal: true, flat: true, fixed: true, className: "options-readfirst-help".concat(coarse ? ' options-readfirst-help-touch' : ''), "aria-label": "Help: ".concat(label), tooltip: 'Help', effect: { opacity: rowInks.helpOpacity }, onClick: function (event) {
|
|
1006
1143
|
event.stopPropagation();
|
|
1007
1144
|
handleOptionLabelClick(optionName);
|
|
1145
|
+
}, onKeyDown: function (event) {
|
|
1146
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
1147
|
+
event.stopPropagation();
|
|
1148
|
+
}
|
|
1008
1149
|
} })
|
|
1009
1150
|
: null;
|
|
1151
|
+
// beside the name, muted: it is about the field, not its value
|
|
1152
|
+
var typeTag = typeWords && typeShown ?
|
|
1153
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { size: 'tiny', minimal: true, className: 'options-readfirst-type', label: typeWords, labelEffect: { opacity: rowInks.descOpacity } })
|
|
1154
|
+
: null;
|
|
1010
1155
|
// The gap rides on the message itself rather than on the panel around it:
|
|
1011
1156
|
// the panel is a vertical ReqoreControlGroup, which owns its own layout and
|
|
1012
1157
|
// stacks children flush, and the class rule that used to carry a 4px gap
|
|
@@ -1024,17 +1169,16 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1024
1169
|
`compact` for the same reason the row inset asks for it: this is a strip
|
|
1025
1170
|
inside a row, never a page, and markdown authored as a document opens with
|
|
1026
1171
|
a heading that would outgrow the field label above it. Without a host
|
|
1027
|
-
renderer the
|
|
1172
|
+
renderer it reads as the plain text its markdown renders to (`plainTextNode`). */
|
|
1028
1173
|
var renderInfoStrip = function (m, index) { return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { size: 'small', opaque: false, flat: true, intent: m.intent, title: m.title, style: { marginBottom: 8 }, children: markdownRenderer && typeof m.content === 'string' ?
|
|
1029
1174
|
markdownRenderer({ value: m.content, compact: true })
|
|
1030
|
-
: m.content }, "".concat(m.content, "-").concat(index))); };
|
|
1175
|
+
: (0, markdownText_1.plainTextNode)(m.content) }, "".concat(m.content, "-").concat(index))); };
|
|
1176
|
+
// in the intent's shade that reads on the row (the intents themselves did not: a danger reason was 2.7:1)
|
|
1031
1177
|
var reasonColor = function (intent) {
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
((_a = theme === null || theme === void 0 ? void 0 : theme.intents) === null || _a === void 0 ? void 0 : _a.success) || cInfo
|
|
1037
|
-
: "".concat(cMuted, "cc");
|
|
1178
|
+
return intent === 'danger' ? rowInks.danger
|
|
1179
|
+
: intent === 'warning' ? rowInks.warning
|
|
1180
|
+
: intent === 'success' ? rowInks.success
|
|
1181
|
+
: rowInks.mutedReason;
|
|
1038
1182
|
};
|
|
1039
1183
|
var infoToggle = null;
|
|
1040
1184
|
// Cluster (required-group connection) — shared by the read row, its block
|
|
@@ -1054,8 +1198,13 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1054
1198
|
var clusterNode = null;
|
|
1055
1199
|
var clusterHoverProps = clustered && clusterMembers.length ?
|
|
1056
1200
|
{
|
|
1057
|
-
|
|
1058
|
-
|
|
1201
|
+
// a mouse's hover, not a tap's emulated one: see `isHoveringPointer`
|
|
1202
|
+
onPointerEnter: function (e) {
|
|
1203
|
+
if ((0, hoveringPointer_1.isHoveringPointer)(e)) {
|
|
1204
|
+
setHighlightedOptions(clusterMembers);
|
|
1205
|
+
}
|
|
1206
|
+
},
|
|
1207
|
+
onPointerLeave: function () { return setHighlightedOptions([]); },
|
|
1059
1208
|
}
|
|
1060
1209
|
: {};
|
|
1061
1210
|
// Items the EDITOR inside this row published — see `rowMenuContext`.
|
|
@@ -1065,8 +1214,10 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1065
1214
|
// just before the Done ✓ in both expanded layouts.
|
|
1066
1215
|
var moreMenu = ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreDropdown, { className: 'options-readfirst-more', icon: 'More2Fill', flat: true, minimal: true, fixed: true, size: 'small', tooltip: 'More actions', items: __spreadArray(__spreadArray(__spreadArray([
|
|
1067
1216
|
{
|
|
1068
|
-
|
|
1217
|
+
// a card opened to read is viewed in full, not edited
|
|
1218
|
+
label: readOnly ? 'View fullscreen' : 'Edit fullscreen',
|
|
1069
1219
|
icon: 'FullscreenLine',
|
|
1220
|
+
className: 'options-readfirst-fullscreen',
|
|
1070
1221
|
onClick: function () { return setFocusedEditing(optionName); },
|
|
1071
1222
|
}
|
|
1072
1223
|
], (removable && !hidden ?
|
|
@@ -1125,23 +1276,27 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1125
1276
|
optionField.value !== '') ?
|
|
1126
1277
|
(function () {
|
|
1127
1278
|
var _a = (0, codeSize_1.describeCodeSize)(optionField.value), lines = _a.lines, chars = _a.chars;
|
|
1128
|
-
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreP, { className: 'options-readfirst-label-code-size', size: 'tiny', effect: { opacity:
|
|
1279
|
+
return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreP, { className: 'options-readfirst-label-code-size', size: 'tiny', effect: { opacity: rowInks.noteOpacity, textAlign: 'left' }, style: { fontFamily: compactRowStyles_1.MONO_FONT_STACK }, children: "".concat((0, codeSize_1.formatCodeChars)(chars), " ").concat((0, codeSize_1.formatCodeLines)(lines)) }));
|
|
1129
1280
|
})()
|
|
1130
1281
|
: null;
|
|
1131
|
-
if (isExpanded && !readOnly) {
|
|
1282
|
+
if (isExpanded && (!readOnly || readOnlyOpens)) {
|
|
1132
1283
|
if (inlineEditable) {
|
|
1133
|
-
|
|
1284
|
+
// closing the row by its label keeps what was typed, as Done does
|
|
1285
|
+
var collapse_1 = function () {
|
|
1286
|
+
pendingEdits.flush();
|
|
1287
|
+
collapseOption(optionName);
|
|
1288
|
+
};
|
|
1134
1289
|
var editingRow = ((0, jsx_runtime_1.jsxs)("div", __assign({ ref: rowRef, "data-field": optionName, className: 'readfirst-row readfirst-row-editing options-readfirst-inline options-readfirst-value', style: readRowHeights.current[optionName] ?
|
|
1135
1290
|
{ minHeight: readRowHeights.current[optionName] }
|
|
1136
|
-
: undefined }, clusterHoverProps, { children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelBlock, { className: 'options-readfirst-label-block', children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledRowLabel, { role: 'button', tabIndex: 0, "aria-label": "Collapse ".concat(label), title:
|
|
1291
|
+
: undefined }, clusterHoverProps, { children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelBlock, { className: 'options-readfirst-label-block', children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledRowLabel, { role: 'button', tabIndex: 0, "aria-label": "Collapse ".concat(label), title: labelHover, "$color": cKey, "$pointer": true, onClick: collapse_1, onKeyDown: function (event) {
|
|
1137
1292
|
if (event.key === 'Enter' || event.key === ' ') {
|
|
1138
1293
|
event.preventDefault();
|
|
1139
1294
|
collapse_1();
|
|
1140
1295
|
}
|
|
1141
|
-
}, children: [label, required ?
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
(0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledLabelDesc, { className: 'options-readfirst-label-desc', size: 'small', effect: { opacity:
|
|
1296
|
+
}, children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelName, { children: [(0, jsx_runtime_1.jsx)("span", { style: { minWidth: 0 }, children: label }), required ?
|
|
1297
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'Asterisk', color: rowInks.danger, size: '10px' })
|
|
1298
|
+
: null, helpIcon] }), typeTag] }), labelShortDesc ?
|
|
1299
|
+
(0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledLabelDesc, { className: 'options-readfirst-label-desc', size: 'small', effect: { opacity: rowInks.descOpacity }, children: (0, readFirst_1.markdownToProse)(labelShortDesc) })
|
|
1145
1300
|
: null, codeSizeNode] }), (0, jsx_runtime_1.jsxs)("div", { ref: editorRef, style: { minWidth: 0 }, onKeyDown: function (event) {
|
|
1146
1301
|
if (event.key === 'Escape') {
|
|
1147
1302
|
event.stopPropagation();
|
|
@@ -1153,7 +1308,11 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1153
1308
|
}
|
|
1154
1309
|
}, children: [panelMessages.length ?
|
|
1155
1310
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreControlGroup, { className: 'options-readfirst-info-panel', vertical: true, fluid: true, gapSize: 'normal', children: panelMessages.map(renderInfoStrip) })
|
|
1156
|
-
: null, absorbedNodes, (0, jsx_runtime_1.jsx)(rowOpenPicker_1.RowOpenPickerContext.Provider, { value: openThePicker, children: (0, jsx_runtime_1.jsx)(rowMenuContext_1.RowMenuContext.Provider, { value: rowMenu, children: renderOption(optionName, optionField, 'small', true) }) })
|
|
1311
|
+
: null, absorbedNodes, (0, jsx_runtime_1.jsx)(rowOpenPicker_1.RowOpenPickerContext.Provider, { value: openThePicker, children: (0, jsx_runtime_1.jsx)(rowMenuContext_1.RowMenuContext.Provider, { value: rowMenu, children: (0, jsx_runtime_1.jsx)(pendingEdit_1.PendingEditsContext.Provider, { value: pendingEdits, children: renderOption(optionName, optionField, 'small', true) }) }) }), movesTo ?
|
|
1312
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreP, { size: 'small', className: 'options-readfirst-moves-to', effect: {
|
|
1313
|
+
color: movesTo === 'attention' ? rowInks.warning : rowInks.success,
|
|
1314
|
+
}, style: { marginTop: 4 }, children: "Moves to \"".concat(BOX_NAMES[movesTo], "\" when you close it (\u2713)") })
|
|
1315
|
+
: null] }), (0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledRowActions, { children: [draftChip, editRowRevertButton, cancelEditButton, clearValueButton, inlineOptionActions.map(function (action, index) {
|
|
1157
1316
|
return renderInjectedOptionAction(action, index);
|
|
1158
1317
|
}), moreMenu, closeExpandedFieldButton] }), clusterNode] }), optionName));
|
|
1159
1318
|
// ALWAYS wrap the editing row in the same StyledColumn so its parent stays
|
|
@@ -1163,7 +1322,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1163
1322
|
// them. The wrapper carries the cluster rail class so the connection
|
|
1164
1323
|
// persists while a member is being edited.
|
|
1165
1324
|
return ((0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledColumn, { "data-field": optionName, className: clusterBlockClass || undefined, children: [editingRow, focusedEditing === optionName ?
|
|
1166
|
-
(0, jsx_runtime_1.jsxs)(FocusedEditing_1.FocusedEditing, { isFullscreen: true, modalOnly: true, onClose: function () { return setFocusedEditing(undefined); }, description: (schema === null || schema === void 0 ? void 0 : schema.display_name) || optionName, children: [(0, jsx_runtime_1.jsx)(Description_1.Description, { longDescription: schema === null || schema === void 0 ? void 0 : schema.desc, shortDescription: schema === null || schema === void 0 ? void 0 : schema.short_desc, longDescriptionShownByDefault: true }), renderOption(optionName, optionField)] })
|
|
1325
|
+
(0, jsx_runtime_1.jsxs)(FocusedEditing_1.FocusedEditing, { isFullscreen: true, modalOnly: true, onClose: function () { return setFocusedEditing(undefined); }, description: (schema === null || schema === void 0 ? void 0 : schema.display_name) || optionName, children: [(0, jsx_runtime_1.jsx)(Description_1.Description, { longDescription: schema === null || schema === void 0 ? void 0 : schema.desc, shortDescription: schema === null || schema === void 0 ? void 0 : schema.short_desc, longDescriptionShownByDefault: true }), (0, jsx_runtime_1.jsx)(pendingEdit_1.PendingEditsContext.Provider, { value: pendingEdits, children: renderOption(optionName, optionField) })] })
|
|
1167
1326
|
: null] }, optionName));
|
|
1168
1327
|
}
|
|
1169
1328
|
// Card chrome: badge / actions / tags render here — the row only fits
|
|
@@ -1179,17 +1338,19 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1179
1338
|
: undefined;
|
|
1180
1339
|
return ((0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledEditCard, { "data-field": optionName, className: COMPACT_SINGLE_VALUE_TYPES.has(editType) ?
|
|
1181
1340
|
'options-readfirst-card options-readfirst-card-single'
|
|
1182
|
-
: 'options-readfirst-card', "$bg": cHover, "$border": schemaIntentColor ? "".concat(schemaIntentColor, "66") : "".concat(cInfo, "66"), children: [(0, jsx_runtime_1.jsxs)("div", { style: {
|
|
1341
|
+
: 'options-readfirst-card', "$bg": cHover, "$border": schemaIntentColor ? "".concat(schemaIntentColor, "66") : "".concat(cInfo, "66"), children: [(0, jsx_runtime_1.jsxs)("div", { className: 'options-readfirst-card-header', style: {
|
|
1183
1342
|
display: 'flex',
|
|
1184
|
-
|
|
1343
|
+
// a heading of one line is centred on the card's actions; one with a description or tags under
|
|
1344
|
+
// its name lines up by its top (David's review of qorus#646: the name sat above the buttons)
|
|
1345
|
+
alignItems: (schema === null || schema === void 0 ? void 0 : schema.short_desc) || cardTags.length ? 'flex-start' : 'center',
|
|
1185
1346
|
justifyContent: 'space-between',
|
|
1186
1347
|
gap: 12,
|
|
1187
|
-
}, children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledCardHeading, { children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledCardLabel, { "$color": cKey, children: [((schema === null || schema === void 0 ? void 0 : schema.icon) ||
|
|
1348
|
+
}, children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledCardHeading, { children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledCardLabel, { "$color": cKey, title: labelHover, children: [((schema === null || schema === void 0 ? void 0 : schema.icon) ||
|
|
1188
1349
|
(schema === null || schema === void 0 ? void 0 : schema.image)) ?
|
|
1189
1350
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: schema === null || schema === void 0 ? void 0 : schema.icon, image: schema === null || schema === void 0 ? void 0 : schema.image, size: '14px' })
|
|
1190
|
-
: null, (0, jsx_runtime_1.jsxs)("span", { children: [label, required ?
|
|
1191
|
-
|
|
1192
|
-
|
|
1351
|
+
: null, (0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelName, { children: [(0, jsx_runtime_1.jsxs)("span", { style: { minWidth: 0 }, children: [label, required ?
|
|
1352
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'Asterisk', color: rowInks.danger, size: '10px' })
|
|
1353
|
+
: null] }), helpIcon] }), typeTag, cardBadges.map(function (badge, index) {
|
|
1193
1354
|
return typeof badge === 'object' ?
|
|
1194
1355
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, __assign({ size: 'small', minimal: true, className: 'options-readfirst-card-badge' }, badge), index)
|
|
1195
1356
|
: (0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { size: 'small', minimal: true, className: 'options-readfirst-card-badge', label: badge }, index);
|
|
@@ -1209,9 +1370,9 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1209
1370
|
event.stopPropagation();
|
|
1210
1371
|
cancelEdit();
|
|
1211
1372
|
}
|
|
1212
|
-
}, children: (0, jsx_runtime_1.jsxs)(FocusedEditing_1.FocusedEditing, { isFullscreen: focusedEditing === optionName, onClose: function () { return setFocusedEditing(undefined); }, description: (schema === null || schema === void 0 ? void 0 : schema.display_name) || optionName, children: [focusedEditing === optionName ?
|
|
1373
|
+
}, children: (0, jsx_runtime_1.jsxs)(FocusedEditing_1.FocusedEditing, __assign({ isFullscreen: focusedEditing === optionName, onClose: function () { return setFocusedEditing(undefined); }, description: (schema === null || schema === void 0 ? void 0 : schema.display_name) || optionName }, (readOnly ? { label: 'Focused View' } : {}), { children: [focusedEditing === optionName ?
|
|
1213
1374
|
(0, jsx_runtime_1.jsx)(Description_1.Description, { longDescription: schema === null || schema === void 0 ? void 0 : schema.desc, shortDescription: schema === null || schema === void 0 ? void 0 : schema.short_desc, longDescriptionShownByDefault: true })
|
|
1214
|
-
: null, (0, jsx_runtime_1.jsx)(rowMenuContext_1.RowMenuContext.Provider, { value: rowMenu, children: renderOption(optionName, optionField) })] }) })] }, optionName));
|
|
1375
|
+
: null, (0, jsx_runtime_1.jsx)(rowMenuContext_1.RowMenuContext.Provider, { value: rowMenu, children: (0, jsx_runtime_1.jsx)(pendingEdit_1.PendingEditsContext.Provider, { value: pendingEdits, children: renderOption(optionName, optionField) }) })] })) })] }, optionName));
|
|
1215
1376
|
}
|
|
1216
1377
|
var formatted = (0, readFirst_1.formatOptionValue)(optionField, schema);
|
|
1217
1378
|
var empty = formatted === '';
|
|
@@ -1266,7 +1427,12 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1266
1427
|
typeof optionField.value === 'object' &&
|
|
1267
1428
|
!Array.isArray(optionField.value) &&
|
|
1268
1429
|
!isExpression;
|
|
1269
|
-
|
|
1430
|
+
/* Where the host draws the row's summary (`readSummaries`), the row draws no preview of its own under it: the
|
|
1431
|
+
host's summary says what the value is ("4 columns · 1 rule"), and a structured preview of the same value
|
|
1432
|
+
under it ("columns · List · 4 items") said it again, in reqraft's words (qorus#646). The card, which a
|
|
1433
|
+
read-only form opens for such a row too (`readOnlyOpens`), is where the value is read in full. */
|
|
1434
|
+
var hostSummarizes = !!ReadSummary;
|
|
1435
|
+
var hashEntries = !hidden && !hostSummarizes && (isPlainHashType || isObjectValuedType) ?
|
|
1270
1436
|
(0, readFirst_1.getHashEntries)(optionField, schema)
|
|
1271
1437
|
: [];
|
|
1272
1438
|
// A LIST OF HASHES/objects gets the same expandable structured preview a hash
|
|
@@ -1274,6 +1440,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1274
1440
|
// never print "[object Object]"). StructuredDataView unwraps each item's
|
|
1275
1441
|
// {type,value} envelope. Plain scalar lists keep just their joined summary.
|
|
1276
1442
|
var isHashList = !hidden &&
|
|
1443
|
+
!hostSummarizes &&
|
|
1277
1444
|
(valueType === 'list' || valueType === 'free-list' || valueType === 'array') &&
|
|
1278
1445
|
Array.isArray(optionField === null || optionField === void 0 ? void 0 : optionField.value) &&
|
|
1279
1446
|
optionField.value.length > 0 &&
|
|
@@ -1293,6 +1460,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1293
1460
|
// "Show more" reveals the rest. Sits in the same inset the hash/list
|
|
1294
1461
|
// preview uses — mutually exclusive with `showStructuredPreview`.
|
|
1295
1462
|
var showCodePreview = !hidden &&
|
|
1463
|
+
!hostSummarizes &&
|
|
1296
1464
|
valueType === 'code-editor' &&
|
|
1297
1465
|
typeof (optionField === null || optionField === void 0 ? void 0 : optionField.value) === 'string' &&
|
|
1298
1466
|
optionField.value.length > 0;
|
|
@@ -1339,6 +1507,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1339
1507
|
// rendered as the row's own text, and a second copy of it below would make
|
|
1340
1508
|
// every description row tall for nothing.
|
|
1341
1509
|
var showMarkdownPreview = !hidden &&
|
|
1510
|
+
!hostSummarizes &&
|
|
1342
1511
|
!showCodePreview &&
|
|
1343
1512
|
!!markdownRenderer &&
|
|
1344
1513
|
// keyed on the schema's ui_type, not on getValueType(): a markdown value
|
|
@@ -1360,6 +1529,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1360
1529
|
// sentence's worth of characters (a short value wraps in place).
|
|
1361
1530
|
var showLongTextInset = readOnly &&
|
|
1362
1531
|
!hidden &&
|
|
1532
|
+
!hostSummarizes &&
|
|
1363
1533
|
!showCodePreview &&
|
|
1364
1534
|
!showMarkdownPreview &&
|
|
1365
1535
|
!showStructuredPreview &&
|
|
@@ -1384,9 +1554,8 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1384
1554
|
isMultilineMarkdown(optionField.value)) ?
|
|
1385
1555
|
"".concat(optionField.value.trim().split('\n').length, " lines")
|
|
1386
1556
|
: undefined;
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
: null;
|
|
1557
|
+
// the option's type beside its name, while the form shows field types: in words, as an open option says it
|
|
1558
|
+
var typeLabel = typeShown ? typeWords : undefined;
|
|
1390
1559
|
// A `readonly` field is one the system owns — an assigned id, a recorded
|
|
1391
1560
|
// provenance. The server states that on the field itself; only the older
|
|
1392
1561
|
// compat projection also mapped it to `disabled`, so on this path the form
|
|
@@ -1439,7 +1608,13 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1439
1608
|
// "Depends on" dropdown whose items are the blocking fields (an "any of:"
|
|
1440
1609
|
// divider for OR-groups), each clickable to flash/locate the blocker.
|
|
1441
1610
|
var dependsOnChip = fieldDisabled && dependencyEntries.length ?
|
|
1442
|
-
(0, jsx_runtime_1.jsx)("span", { style: { display: 'inline-flex' }, role: 'presentation', onClick: function (e) { return e.stopPropagation(); }, onKeyDown: function (e) { return e.stopPropagation(); },
|
|
1611
|
+
(0, jsx_runtime_1.jsx)("span", { style: { display: 'inline-flex' }, role: 'presentation', onClick: function (e) { return e.stopPropagation(); }, onKeyDown: function (e) { return e.stopPropagation(); },
|
|
1612
|
+
// a mouse's hover, not a tap's emulated one: see `isHoveringPointer`
|
|
1613
|
+
onPointerEnter: function (e) {
|
|
1614
|
+
if ((0, hoveringPointer_1.isHoveringPointer)(e)) {
|
|
1615
|
+
setHighlightedOptions(depHighlightNames);
|
|
1616
|
+
}
|
|
1617
|
+
}, onPointerLeave: function () { return setHighlightedOptions([]); }, children: (0, jsx_runtime_1.jsx)(reqore_1.ReqoreDropdown, { className: 'options-readfirst-lock-deps', size: 'tiny', minimal: true, flat: true, compact: true, icon: 'LockLine', tooltip: 'Disabled \u2014 depends on other fields. Click to locate them.', items: __spreadArray([
|
|
1443
1618
|
{ divider: true, label: 'Unlocked by:', dividerAlign: 'left' }
|
|
1444
1619
|
], dependencyEntries.flatMap(function (entry) { return __spreadArray(__spreadArray([], (Array.isArray(entry) ?
|
|
1445
1620
|
[{ divider: true, label: 'any of:', dividerAlign: 'left' }]
|
|
@@ -1470,7 +1645,12 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1470
1645
|
// change has said exactly what they want, and answering with silence
|
|
1471
1646
|
// teaches them the surface is broken.
|
|
1472
1647
|
if (fieldDisabled || readOnly) {
|
|
1473
|
-
|
|
1648
|
+
// ...except a row whose line cannot show what it holds: it opens its card to be read (`readOnlyOpens`)
|
|
1649
|
+
if (readOnlyOpens && !fieldDisabled) {
|
|
1650
|
+
// what the row was drawn as decides: open, it closes; closed, it opens (see expandOption)
|
|
1651
|
+
(isExpanded ? collapseOption : expandOption)(optionName);
|
|
1652
|
+
}
|
|
1653
|
+
else if (readOnly && !fieldDisabled) {
|
|
1474
1654
|
onReadOnlyActivate === null || onReadOnlyActivate === void 0 ? void 0 : onReadOnlyActivate(optionName);
|
|
1475
1655
|
}
|
|
1476
1656
|
return;
|
|
@@ -1487,7 +1667,11 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1487
1667
|
// not-yet-set field just expands its editor (with an empty value); it joins
|
|
1488
1668
|
// the form's output the moment a value is set (and moves to Set / Needs
|
|
1489
1669
|
// attention), and drops back to Optional when cleared. No explicit add step.
|
|
1490
|
-
|
|
1670
|
+
//
|
|
1671
|
+
// What the row was drawn as decides, not the state by the time the update lands: a click on a row drawn
|
|
1672
|
+
// closed opens it, even if the first-required scan's update has opened it in the meantime (a toggle closed
|
|
1673
|
+
// it again: qorus#646, the Qorus IDE's Schema "Draft Is Saved").
|
|
1674
|
+
(isExpanded ? collapseOption : expandOption)(optionName);
|
|
1491
1675
|
};
|
|
1492
1676
|
// Row chrome: icon/image before the label; schema `intent` as the edge
|
|
1493
1677
|
// stripe (message-severity stripes win when both apply).
|
|
@@ -1530,23 +1714,28 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1530
1714
|
go. Then it takes a button's role, focus and keyboard handling, because
|
|
1531
1715
|
a thing that acts on a click has to be reachable without a mouse and has
|
|
1532
1716
|
to announce what it does — and "Edit X", not "X", is what it does. */
|
|
1533
|
-
var readOnlyIsAWayIn = !!readOnly && !fieldDisabled && !!onReadOnlyActivate;
|
|
1534
|
-
var actsOnClick = !readOnly || readOnlyIsAWayIn;
|
|
1717
|
+
var readOnlyIsAWayIn = !!readOnly && !fieldDisabled && !readOnlyOpens && !!onReadOnlyActivate;
|
|
1718
|
+
var actsOnClick = !readOnly || readOnlyIsAWayIn || readOnlyOpens;
|
|
1535
1719
|
var row = ((0, jsx_runtime_1.jsxs)("div", __assign({ "data-field": optionName, role: actsOnClick ? 'button' : undefined, tabIndex: actsOnClick ? 0 : undefined, "aria-label": readOnlyIsAWayIn ? "Edit ".concat(label)
|
|
1536
|
-
:
|
|
1537
|
-
|
|
1720
|
+
: readOnlyOpens ?
|
|
1721
|
+
"View ".concat(label)
|
|
1722
|
+
: readOnly ?
|
|
1723
|
+
undefined
|
|
1724
|
+
: label, className: "readfirst-row options-readfirst-value".concat(readOnly ? ' readfirst-row-read' : '').concat(readOnlyIsAWayIn || readOnlyOpens ? ' readfirst-row-way-in' : '').concat(readOnlyOpens ? ' readfirst-row-opens' : '').concat(hidden ? ' readfirst-row-hidden' : '').concat(fieldDisabled ? ' readfirst-row-disabled' : '').concat(isHighlighted ? ' readfirst-row-group-highlight' : '').concat(isFlashed ? ' readfirst-row-flash' : '').concat(showLabelDesc ? ' readfirst-row-info-open' : '').concat(panelMessages.length || showStructuredPreview || showCodePreview || showMarkdownPreview || showLongTextInset ? ' readfirst-row-tall' : '').concat(clusterBlockClass ? ' ' + clusterBlockClass : ''), "aria-disabled": fieldDisabled || undefined, style: readOnlyIsAWayIn || readOnlyOpens ? __assign(__assign({}, stripeStyle), { cursor: 'pointer' }) : stripeStyle, onClick: actsOnClick ? activate : undefined, onKeyDown: !actsOnClick ? undefined : (function (event) {
|
|
1538
1725
|
if (event.key === 'Enter' || event.key === ' ') {
|
|
1539
1726
|
event.preventDefault();
|
|
1540
1727
|
activate(event);
|
|
1541
1728
|
}
|
|
1542
|
-
}) }, clusterHoverProps, { children: [clusterNode, (0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelBlock, { className: 'options-readfirst-label-block', children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledRowLabel, { title:
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { size: 'tiny', minimal: true, label: typeLabel, labelEffect: { opacity:
|
|
1729
|
+
}) }, clusterHoverProps, { children: [clusterNode, (0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelBlock, { className: 'options-readfirst-label-block', children: [(0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledRowLabel, { title: labelHover, "$color": cKey, children: [rowChromeIcon, (0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledLabelName, { children: [(0, jsx_runtime_1.jsxs)("span", { className: 'options-readfirst-label-text', style: { minWidth: 0 }, children: [label, requiredMark ?
|
|
1730
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'Asterisk', color: rowInks.danger, size: '10px', margin: 'left', marginSize: 'tiny' })
|
|
1731
|
+
: null] }), helpIcon] }), typeLabel ?
|
|
1732
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreTag, { size: 'tiny', minimal: true, className: 'options-readfirst-type', label: typeLabel, labelEffect: { opacity: rowInks.descOpacity } })
|
|
1546
1733
|
: null] }), showLabelDesc ?
|
|
1547
|
-
|
|
1734
|
+
/* A sentence in the label's own type, clamped to three lines: drawn as the prose its markdown
|
|
1735
|
+
renders to, never its marks (`markdownToProse`). */
|
|
1736
|
+
(0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledLabelDesc, { className: 'options-readfirst-label-desc', size: 'small', effect: { opacity: rowInks.descOpacity }, children: (0, readFirst_1.markdownToProse)(labelShortDesc) })
|
|
1548
1737
|
: null, codeSizeNode, lineCountNote ?
|
|
1549
|
-
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreP, { className: 'options-readfirst-label-lines', size: 'tiny', effect: { opacity:
|
|
1738
|
+
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreP, { className: 'options-readfirst-label-lines', size: 'tiny', effect: { opacity: rowInks.noteOpacity, textAlign: 'left' }, style: { fontFamily: compactRowStyles_1.MONO_FONT_STACK }, children: lineCountNote })
|
|
1550
1739
|
: null] }), (0, jsx_runtime_1.jsxs)(compactRowStyles_1.StyledRowValue
|
|
1551
1740
|
// A code field draws its whole value in the preview below, with
|
|
1552
1741
|
// "Show more" for the rest, so a hover carrying the same text is
|
|
@@ -1574,12 +1763,22 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1574
1763
|
!showsTemplateText &&
|
|
1575
1764
|
typeof formatted === 'string') ?
|
|
1576
1765
|
formatted
|
|
1577
|
-
: undefined, "$color": empty || hidden ?
|
|
1766
|
+
: undefined, "$color": empty || hidden ? rowInks.emptyValue : cKey, "$empty": empty || hidden, children: [(showMarkdownPreview || showLongTextInset || (previewWithSchema && showStructuredPreview)) ?
|
|
1578
1767
|
null
|
|
1579
|
-
: (0, jsx_runtime_1.jsx)("span", { className: 'options-readfirst-valuetext', children:
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1768
|
+
: (0, jsx_runtime_1.jsx)("span", { className: 'options-readfirst-valuetext', children: ReadSummary && !hidden ?
|
|
1769
|
+
/* the host's own summary: an editor that reports a status says it here, set or not
|
|
1770
|
+
("Field mappings required", "… incomplete"), where "2 items" said nothing of it (qorus#646) */
|
|
1771
|
+
(0, jsx_runtime_1.jsx)(ReadSummary, { name: optionName, value: optionField === null || optionField === void 0 ? void 0 : optionField.value, schema: schema, formatted: formatted })
|
|
1772
|
+
: hidden || empty ?
|
|
1773
|
+
formattedDefault || '—'
|
|
1774
|
+
: renderReadFirstValue(optionField, schema, formatted, readOnly) }), readOnlyChoiceDesc ?
|
|
1775
|
+
/* What the chosen option means, on its own line: the server writes it in markdown ("Each
|
|
1776
|
+
`POST /conversations` ..."), so the host's renderer draws it, as it draws the schema messages
|
|
1777
|
+
below; without one, it reads as the plain text it renders to, its paragraphs kept. A block, as
|
|
1778
|
+
what is drawn is. */
|
|
1779
|
+
(0, jsx_runtime_1.jsx)("div", { className: 'options-readfirst-choice-desc', children: markdownRenderer ?
|
|
1780
|
+
markdownRenderer({ value: readOnlyChoiceDesc, compact: true })
|
|
1781
|
+
: (0, markdownText_1.plainTextNode)(readOnlyChoiceDesc) })
|
|
1583
1782
|
: null, valueReasons.map(function (m, i) { return ((0, jsx_runtime_1.jsx)("span", { className: 'options-readfirst-reason', style: { color: reasonColor(m.intent) }, children: m.content }, "".concat(m.content, "-").concat(i))); }), panelMessages.length ?
|
|
1584
1783
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreControlGroup, { className: 'options-readfirst-info-panel', vertical: true, fluid: true, gapSize: 'normal', children: panelMessages.map(renderInfoStrip) })
|
|
1585
1784
|
: null, showStructuredPreview ?
|
|
@@ -1622,7 +1821,7 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1622
1821
|
// lives (qorus-ide registers its brand purple there).
|
|
1623
1822
|
// Falling back to `info` keeps this working for a
|
|
1624
1823
|
// consumer that registers nothing — the heading is
|
|
1625
|
-
// accented either way, just in the theme's own
|
|
1824
|
+
// accented either way, just in the theme's own color
|
|
1626
1825
|
// rather than one this library picked.
|
|
1627
1826
|
accent: ((_q = theme === null || theme === void 0 ? void 0 : theme.intents) === null || _q === void 0 ? void 0 : _q.custom1) || cInfo,
|
|
1628
1827
|
}, onItemClick: function () { return activate(); } })
|
|
@@ -1636,7 +1835,12 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1636
1835
|
options: options,
|
|
1637
1836
|
values: availableOptions,
|
|
1638
1837
|
})
|
|
1639
|
-
:
|
|
1838
|
+
: CodeEditor ?
|
|
1839
|
+
/* Code is shown as the host shows code: its own editor, read-only, given what it inherits (its
|
|
1840
|
+
language) - highlighted, with its language server - and as a plain block only where there is
|
|
1841
|
+
none (qorus#646, David's decision). */
|
|
1842
|
+
(0, jsx_runtime_1.jsx)("div", { className: 'options-readfirst-code options-readfirst-code-editor', children: (0, jsx_runtime_1.jsx)(CodeEditor, __assign({}, schema, (0, inheritProps_1.resolveInheritProps)(schema === null || schema === void 0 ? void 0 : schema.inherit_props, availableOptions), { name: optionName, value: optionField.value, readOnly: true, onChange: ignoreReadOnlyChange })) })
|
|
1843
|
+
: (0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledCodePreview, { className: 'options-readfirst-code', "$bg": cHover, "$border": "".concat(cDivider, "88"), "$fg": cKey, children: optionField.value }) }) })
|
|
1640
1844
|
: null, showMarkdownPreview ?
|
|
1641
1845
|
(0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledRowInset, { className: 'options-readfirst-inset options-readfirst-markdown-inset', onClick: function (e) { return e.stopPropagation(); }, children: (0, jsx_runtime_1.jsx)(reqore_1.ReqoreCollapsibleContent, { maxCollapsedHeight: 96, buttonProps: { className: 'options-readfirst-viewmore' }, children: (0, jsx_runtime_1.jsx)("div", { className: 'options-readfirst-markdown', children: markdownRenderer({ value: optionField.value, compact: true }) }) }) })
|
|
1642
1846
|
: null, showLongTextInset ?
|
|
@@ -1656,9 +1860,9 @@ exports.CompactRow = (0, react_1.memo)(function (_a) {
|
|
|
1656
1860
|
onClick: function (event) { return event.stopPropagation(); }, children: (0, jsx_runtime_1.jsx)(reqore_1.ReqoreDropdown, { className: 'options-injected-actions-menu', icon: 'MoreFill', flat: true, minimal: true, fixed: true, size: 'tiny', tooltip: 'Field actions', items: injectedOptionActionMenuItems }) })
|
|
1657
1861
|
: null, (0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledActionSlot, { className: 'options-readfirst-statusdot-slot', "$width": 12, children: changed && !readOnly && !hidden ?
|
|
1658
1862
|
(0, jsx_runtime_1.jsx)(reqore_1.ReqoreButton, { className: 'options-readfirst-revert', size: 'tiny', flat: true, minimal: true, compact: true, icon: 'HistoryLine', tooltip: 'Revert changes', onClick: function (e) {
|
|
1659
|
-
var _a
|
|
1863
|
+
var _a;
|
|
1660
1864
|
e.stopPropagation();
|
|
1661
|
-
handleValueChange(
|
|
1865
|
+
handleValueChange.apply(void 0, __spreadArray([optionName], (0, argumentPresence_1.restoredFieldChange)((_a = originalValue.current) === null || _a === void 0 ? void 0 : _a[optionName]), false));
|
|
1662
1866
|
} })
|
|
1663
1867
|
: dotColor ?
|
|
1664
1868
|
(0, jsx_runtime_1.jsx)(compactRowStyles_1.StyledStatusDot, { "$color": dotColor, "$ring": dotStatus !== 'set', "aria-hidden": true })
|