@qoretechnologies/reqraft 0.10.62 → 0.10.63-pr.142.g0b675cd

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.
Files changed (736) hide show
  1. package/README.md +21 -1
  2. package/dist/components/Description/describedControl.d.ts +48 -0
  3. package/dist/components/Description/describedControl.d.ts.map +1 -0
  4. package/dist/components/Description/describedControl.js +81 -0
  5. package/dist/components/Description/describedControl.js.map +1 -0
  6. package/dist/components/Description/index.d.ts.map +1 -1
  7. package/dist/components/Description/index.js +3 -2
  8. package/dist/components/Description/index.js.map +1 -1
  9. package/dist/components/colorValue/colorValue.d.ts +59 -0
  10. package/dist/components/colorValue/colorValue.d.ts.map +1 -0
  11. package/dist/components/colorValue/colorValue.js +245 -0
  12. package/dist/components/colorValue/colorValue.js.map +1 -0
  13. package/dist/components/colorValue/index.d.ts +34 -0
  14. package/dist/components/colorValue/index.d.ts.map +1 -0
  15. package/dist/components/colorValue/index.js +136 -0
  16. package/dist/components/colorValue/index.js.map +1 -0
  17. package/dist/components/colorValue/labels.d.ts +12 -0
  18. package/dist/components/colorValue/labels.d.ts.map +1 -0
  19. package/dist/components/colorValue/labels.js +11 -0
  20. package/dist/components/colorValue/labels.js.map +1 -0
  21. package/dist/components/composer/Composer.d.ts +1 -1
  22. package/dist/components/composer/Composer.d.ts.map +1 -1
  23. package/dist/components/composer/Composer.js +2 -2
  24. package/dist/components/composer/Composer.js.map +1 -1
  25. package/dist/components/dpqlEditor/DpqlEditor.d.ts.map +1 -1
  26. package/dist/components/dpqlEditor/DpqlEditor.js +25 -5
  27. package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
  28. package/dist/components/dpqlEditor/dpqlHelpers.d.ts +10 -1
  29. package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
  30. package/dist/components/dpqlEditor/dpqlHelpers.js +30 -13
  31. package/dist/components/dpqlEditor/dpqlHelpers.js.map +1 -1
  32. package/dist/components/dpqlEditor/dpqlTags.d.ts +11 -7
  33. package/dist/components/dpqlEditor/dpqlTags.d.ts.map +1 -1
  34. package/dist/components/dpqlEditor/dpqlTags.js +11 -6
  35. package/dist/components/dpqlEditor/dpqlTags.js.map +1 -1
  36. package/dist/components/dpqlEditor/types.d.ts +47 -8
  37. package/dist/components/dpqlEditor/types.d.ts.map +1 -1
  38. package/dist/components/dpqlEditor/useDpqlSession.d.ts +2 -2
  39. package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
  40. package/dist/components/dpqlEditor/useDpqlSession.js +16 -7
  41. package/dist/components/dpqlEditor/useDpqlSession.js.map +1 -1
  42. package/dist/components/form/engine/CompactRow.d.ts.map +1 -1
  43. package/dist/components/form/engine/CompactRow.js +151 -83
  44. package/dist/components/form/engine/CompactRow.js.map +1 -1
  45. package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
  46. package/dist/components/form/engine/CompactToolbar.js +29 -3
  47. package/dist/components/form/engine/CompactToolbar.js.map +1 -1
  48. package/dist/components/form/engine/FormEngine.d.ts +34 -1
  49. package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
  50. package/dist/components/form/engine/FormEngine.js +487 -87
  51. package/dist/components/form/engine/FormEngine.js.map +1 -1
  52. package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
  53. package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
  54. package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
  55. package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
  56. package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
  57. package/dist/components/form/engine/OptionFieldMessages.js +24 -3
  58. package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
  59. package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts +2 -2
  60. package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
  61. package/dist/components/form/engine/_structuredData/SchemaDataView.js +12 -6
  62. package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
  63. package/dist/components/form/engine/compactRowContext.d.ts +19 -0
  64. package/dist/components/form/engine/compactRowContext.d.ts.map +1 -1
  65. package/dist/components/form/engine/compactRowContext.js.map +1 -1
  66. package/dist/components/form/engine/compactRowStyles.d.ts +0 -1
  67. package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
  68. package/dist/components/form/engine/compactRowStyles.js +12 -20
  69. package/dist/components/form/engine/compactRowStyles.js.map +1 -1
  70. package/dist/components/form/engine/compactToolbarColors.d.ts +16 -0
  71. package/dist/components/form/engine/compactToolbarColors.d.ts.map +1 -0
  72. package/dist/components/form/engine/compactToolbarColors.js +21 -0
  73. package/dist/components/form/engine/compactToolbarColors.js.map +1 -0
  74. package/dist/components/form/engine/readFirst.d.ts +24 -8
  75. package/dist/components/form/engine/readFirst.d.ts.map +1 -1
  76. package/dist/components/form/engine/readFirst.js +77 -109
  77. package/dist/components/form/engine/readFirst.js.map +1 -1
  78. package/dist/components/form/engine/readFirstColors.d.ts +30 -0
  79. package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
  80. package/dist/components/form/engine/readFirstColors.js +51 -0
  81. package/dist/components/form/engine/readFirstColors.js.map +1 -0
  82. package/dist/components/form/engine/rowFocus.d.ts +2 -0
  83. package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
  84. package/dist/components/form/engine/rowFocus.js +26 -3
  85. package/dist/components/form/engine/rowFocus.js.map +1 -1
  86. package/dist/components/form/engine/typeChoices.d.ts +1 -1
  87. package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
  88. package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
  89. package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
  90. package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
  91. package/dist/components/form/engine/variants/VariantCards.js +2 -1
  92. package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
  93. package/dist/components/form/engine/variants/VariantFocus.js +1 -1
  94. package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
  95. package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
  96. package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
  97. package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
  98. package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
  99. package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
  100. package/dist/components/form/engine/variants/variantParts.js +25 -17
  101. package/dist/components/form/engine/variants/variantParts.js.map +1 -1
  102. package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
  103. package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
  104. package/dist/components/form/expressions/DpqlRendering.js +3 -3
  105. package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
  106. package/dist/components/form/expressions/ExpressionField.d.ts +41 -3
  107. package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
  108. package/dist/components/form/expressions/ExpressionField.js +396 -99
  109. package/dist/components/form/expressions/ExpressionField.js.map +1 -1
  110. package/dist/components/form/expressions/builder/argumentDetail.d.ts.map +1 -1
  111. package/dist/components/form/expressions/builder/argumentDetail.js +4 -1
  112. package/dist/components/form/expressions/builder/argumentDetail.js.map +1 -1
  113. package/dist/components/form/expressions/builder/argumentLabel.d.ts.map +1 -1
  114. package/dist/components/form/expressions/builder/argumentLabel.js +27 -9
  115. package/dist/components/form/expressions/builder/argumentLabel.js.map +1 -1
  116. package/dist/components/form/expressions/builder/argumentWrapper.d.ts.map +1 -1
  117. package/dist/components/form/expressions/builder/argumentWrapper.js +4 -2
  118. package/dist/components/form/expressions/builder/argumentWrapper.js.map +1 -1
  119. package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts.map +1 -1
  120. package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js +5 -4
  121. package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js.map +1 -1
  122. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts +1 -1
  123. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts.map +1 -1
  124. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js +6 -3
  125. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js.map +1 -1
  126. package/dist/components/form/expressions/builder/index.d.ts +24 -2
  127. package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
  128. package/dist/components/form/expressions/builder/index.js +121 -77
  129. package/dist/components/form/expressions/builder/index.js.map +1 -1
  130. package/dist/components/form/expressions/builder/item.d.ts +6 -2
  131. package/dist/components/form/expressions/builder/item.d.ts.map +1 -1
  132. package/dist/components/form/expressions/builder/item.js +19 -5
  133. package/dist/components/form/expressions/builder/item.js.map +1 -1
  134. package/dist/components/form/expressions/builder/renderTemplate.js +1 -1
  135. package/dist/components/form/expressions/builder/renderTemplate.js.map +1 -1
  136. package/dist/components/form/expressions/expressionOperands.d.ts +16 -0
  137. package/dist/components/form/expressions/expressionOperands.d.ts.map +1 -0
  138. package/dist/components/form/expressions/expressionOperands.js +97 -0
  139. package/dist/components/form/expressions/expressionOperands.js.map +1 -0
  140. package/dist/components/form/expressions/mockExpressions.d.ts.map +1 -1
  141. package/dist/components/form/expressions/mockExpressions.js +22 -5
  142. package/dist/components/form/expressions/mockExpressions.js.map +1 -1
  143. package/dist/components/form/expressions/renderExpressionToText.d.ts +2 -0
  144. package/dist/components/form/expressions/renderExpressionToText.d.ts.map +1 -1
  145. package/dist/components/form/expressions/renderExpressionToText.js +35 -9
  146. package/dist/components/form/expressions/renderExpressionToText.js.map +1 -1
  147. package/dist/components/form/expressions/textOfExpression.d.ts +18 -0
  148. package/dist/components/form/expressions/textOfExpression.d.ts.map +1 -0
  149. package/dist/components/form/expressions/textOfExpression.js +37 -0
  150. package/dist/components/form/expressions/textOfExpression.js.map +1 -0
  151. package/dist/components/form/expressions/useExpressionType.d.ts +26 -0
  152. package/dist/components/form/expressions/useExpressionType.d.ts.map +1 -0
  153. package/dist/components/form/expressions/useExpressionType.js +181 -0
  154. package/dist/components/form/expressions/useExpressionType.js.map +1 -0
  155. package/dist/components/form/expressions/useRenderExpression.d.ts.map +1 -1
  156. package/dist/components/form/expressions/useRenderExpression.js +7 -7
  157. package/dist/components/form/expressions/useRenderExpression.js.map +1 -1
  158. package/dist/components/form/fields/Field.d.ts.map +1 -1
  159. package/dist/components/form/fields/Field.js +20 -7
  160. package/dist/components/form/fields/Field.js.map +1 -1
  161. package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
  162. package/dist/components/form/fields/allowed-values/AllowedValues.js +17 -4
  163. package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
  164. package/dist/components/form/fields/array/ArrayAuto.d.ts.map +1 -1
  165. package/dist/components/form/fields/array/ArrayAuto.js +24 -0
  166. package/dist/components/form/fields/array/ArrayAuto.js.map +1 -1
  167. package/dist/components/form/fields/array/ArrayAutoField.d.ts.map +1 -1
  168. package/dist/components/form/fields/array/ArrayAutoField.js +36 -13
  169. package/dist/components/form/fields/array/ArrayAutoField.js.map +1 -1
  170. package/dist/components/form/fields/auto/AutoFormField.d.ts +20 -1
  171. package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
  172. package/dist/components/form/fields/auto/AutoFormField.js +81 -36
  173. package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
  174. package/dist/components/form/fields/auto/hostEditorValue.d.ts +30 -0
  175. package/dist/components/form/fields/auto/hostEditorValue.d.ts.map +1 -0
  176. package/dist/components/form/fields/auto/hostEditorValue.js +53 -0
  177. package/dist/components/form/fields/auto/hostEditorValue.js.map +1 -0
  178. package/dist/components/form/fields/binary/Binary.d.ts.map +1 -1
  179. package/dist/components/form/fields/binary/Binary.js +23 -3
  180. package/dist/components/form/fields/binary/Binary.js.map +1 -1
  181. package/dist/components/form/fields/boolean/Boolean.d.ts +5 -0
  182. package/dist/components/form/fields/boolean/Boolean.d.ts.map +1 -1
  183. package/dist/components/form/fields/boolean/Boolean.js +9 -1
  184. package/dist/components/form/fields/boolean/Boolean.js.map +1 -1
  185. package/dist/components/form/fields/color/Color.d.ts +103 -16
  186. package/dist/components/form/fields/color/Color.d.ts.map +1 -1
  187. package/dist/components/form/fields/color/Color.js +611 -16
  188. package/dist/components/form/fields/color/Color.js.map +1 -1
  189. package/dist/components/form/fields/emittedValues.d.ts +34 -3
  190. package/dist/components/form/fields/emittedValues.d.ts.map +1 -1
  191. package/dist/components/form/fields/emittedValues.js +24 -1
  192. package/dist/components/form/fields/emittedValues.js.map +1 -1
  193. package/dist/components/form/fields/file/File.d.ts +1 -1
  194. package/dist/components/form/fields/file/File.d.ts.map +1 -1
  195. package/dist/components/form/fields/file/File.js +4 -2
  196. package/dist/components/form/fields/file/File.js.map +1 -1
  197. package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
  198. package/dist/components/form/fields/long-string/LongString.js +17 -3
  199. package/dist/components/form/fields/long-string/LongString.js.map +1 -1
  200. package/dist/components/form/fields/markdown/MarkdownView.js +1 -1
  201. package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts.map +1 -1
  202. package/dist/components/form/fields/multi-select/MultiSelectFormField.js +4 -1
  203. package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
  204. package/dist/components/form/fields/number/Number.d.ts +6 -0
  205. package/dist/components/form/fields/number/Number.d.ts.map +1 -1
  206. package/dist/components/form/fields/number/Number.js +41 -6
  207. package/dist/components/form/fields/number/Number.js.map +1 -1
  208. package/dist/components/form/fields/object/Object.d.ts +1 -1
  209. package/dist/components/form/fields/object/Object.d.ts.map +1 -1
  210. package/dist/components/form/fields/object/Object.js +4 -2
  211. package/dist/components/form/fields/object/Object.js.map +1 -1
  212. package/dist/components/form/fields/pendingEdit.d.ts +52 -0
  213. package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
  214. package/dist/components/form/fields/pendingEdit.js +79 -0
  215. package/dist/components/form/fields/pendingEdit.js.map +1 -0
  216. package/dist/components/form/fields/rich-text/RichText.d.ts +8 -1
  217. package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
  218. package/dist/components/form/fields/rich-text/RichText.js +190 -81
  219. package/dist/components/form/fields/rich-text/RichText.js.map +1 -1
  220. package/dist/components/form/fields/rich-text/useTemplateTags.d.ts +18 -0
  221. package/dist/components/form/fields/rich-text/useTemplateTags.d.ts.map +1 -0
  222. package/dist/components/form/fields/rich-text/useTemplateTags.js +49 -0
  223. package/dist/components/form/fields/rich-text/useTemplateTags.js.map +1 -0
  224. package/dist/components/form/fields/schema-definition/CatalogLeafForm.d.ts.map +1 -1
  225. package/dist/components/form/fields/schema-definition/CatalogLeafForm.js +4 -1
  226. package/dist/components/form/fields/schema-definition/CatalogLeafForm.js.map +1 -1
  227. package/dist/components/form/fields/schema-definition/CatalogNodeEditor.d.ts.map +1 -1
  228. package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js +20 -5
  229. package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js.map +1 -1
  230. package/dist/components/form/fields/schema-definition/TableEditor.d.ts.map +1 -1
  231. package/dist/components/form/fields/schema-definition/TableEditor.js +10 -2
  232. package/dist/components/form/fields/schema-definition/TableEditor.js.map +1 -1
  233. package/dist/components/form/fields/schema-definition/index.d.ts.map +1 -1
  234. package/dist/components/form/fields/schema-definition/index.js +8 -4
  235. package/dist/components/form/fields/schema-definition/index.js.map +1 -1
  236. package/dist/components/form/fields/select/Select.d.ts +2 -0
  237. package/dist/components/form/fields/select/Select.d.ts.map +1 -1
  238. package/dist/components/form/fields/select/Select.js +19 -10
  239. package/dist/components/form/fields/select/Select.js.map +1 -1
  240. package/dist/components/form/fields/select/SelectCollection.d.ts.map +1 -1
  241. package/dist/components/form/fields/select/SelectCollection.js +8 -2
  242. package/dist/components/form/fields/select/SelectCollection.js.map +1 -1
  243. package/dist/components/form/fields/select/unavailableRow.d.ts +23 -0
  244. package/dist/components/form/fields/select/unavailableRow.d.ts.map +1 -0
  245. package/dist/components/form/fields/select/unavailableRow.js +55 -0
  246. package/dist/components/form/fields/select/unavailableRow.js.map +1 -0
  247. package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts +5 -5
  248. package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts.map +1 -1
  249. package/dist/components/form/fields/template/ReadOnlyTemplateTag.js +11 -4
  250. package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
  251. package/dist/components/form/fields/template/TemplateBrowser.d.ts +22 -0
  252. package/dist/components/form/fields/template/TemplateBrowser.d.ts.map +1 -0
  253. package/dist/components/form/fields/template/TemplateBrowser.js +54 -0
  254. package/dist/components/form/fields/template/TemplateBrowser.js.map +1 -0
  255. package/dist/components/form/fields/template/TemplateField.d.ts +83 -1
  256. package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
  257. package/dist/components/form/fields/template/TemplateField.js +535 -85
  258. package/dist/components/form/fields/template/TemplateField.js.map +1 -1
  259. package/dist/components/form/fields/template/TemplateText.d.ts +0 -17
  260. package/dist/components/form/fields/template/TemplateText.d.ts.map +1 -1
  261. package/dist/components/form/fields/template/TemplateText.js +8 -4
  262. package/dist/components/form/fields/template/TemplateText.js.map +1 -1
  263. package/dist/components/form/fields/template/writtenAsText.d.ts +55 -0
  264. package/dist/components/form/fields/template/writtenAsText.d.ts.map +1 -0
  265. package/dist/components/form/fields/template/writtenAsText.js +188 -0
  266. package/dist/components/form/fields/template/writtenAsText.js.map +1 -0
  267. package/dist/components/form/index.d.ts +10 -0
  268. package/dist/components/form/index.d.ts.map +1 -1
  269. package/dist/components/form/index.js +23 -1
  270. package/dist/components/form/index.js.map +1 -1
  271. package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
  272. package/dist/components/imageLightbox/ImageLightbox.js +19 -7
  273. package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
  274. package/dist/components/log/Log.d.ts.map +1 -1
  275. package/dist/components/log/Log.js +15 -7
  276. package/dist/components/log/Log.js.map +1 -1
  277. package/dist/components/menu/Menu.d.ts.map +1 -1
  278. package/dist/components/menu/Menu.js +19 -10
  279. package/dist/components/menu/Menu.js.map +1 -1
  280. package/dist/components/smartEditor/CompletionMenu.d.ts +43 -0
  281. package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
  282. package/dist/components/smartEditor/CompletionMenu.js +196 -0
  283. package/dist/components/smartEditor/CompletionMenu.js.map +1 -0
  284. package/dist/components/smartEditor/MarkdownDoc.d.ts +1 -1
  285. package/dist/components/smartEditor/MarkdownDoc.js +1 -1
  286. package/dist/components/smartEditor/MarkdownDoc.js.map +1 -1
  287. package/dist/components/smartEditor/SmartEditor.d.ts.map +1 -1
  288. package/dist/components/smartEditor/SmartEditor.js +51 -136
  289. package/dist/components/smartEditor/SmartEditor.js.map +1 -1
  290. package/dist/components/smartEditor/completionStyle.d.ts +27 -0
  291. package/dist/components/smartEditor/completionStyle.d.ts.map +1 -0
  292. package/dist/components/smartEditor/completionStyle.js +66 -0
  293. package/dist/components/smartEditor/completionStyle.js.map +1 -0
  294. package/dist/components/smartEditor/index.d.ts +5 -1
  295. package/dist/components/smartEditor/index.d.ts.map +1 -1
  296. package/dist/components/smartEditor/index.js +19 -1
  297. package/dist/components/smartEditor/index.js.map +1 -1
  298. package/dist/components/smartEditor/templateCompletions.d.ts +18 -0
  299. package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
  300. package/dist/components/smartEditor/templateCompletions.js +94 -0
  301. package/dist/components/smartEditor/templateCompletions.js.map +1 -0
  302. package/dist/components/smartEditor/types.d.ts +12 -1
  303. package/dist/components/smartEditor/types.d.ts.map +1 -1
  304. package/dist/components/smartEditor/useLspAutocomplete.d.ts +32 -0
  305. package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
  306. package/dist/components/smartEditor/useLspAutocomplete.js +228 -118
  307. package/dist/components/smartEditor/useLspAutocomplete.js.map +1 -1
  308. package/dist/components/smartEditor/useLspHover.d.ts +22 -7
  309. package/dist/components/smartEditor/useLspHover.d.ts.map +1 -1
  310. package/dist/components/smartEditor/useLspHover.js +86 -17
  311. package/dist/components/smartEditor/useLspHover.js.map +1 -1
  312. package/dist/components/smartEditor/useLspSemanticTokens.js +1 -1
  313. package/dist/components/smartEditor/useLspSemanticTokens.js.map +1 -1
  314. package/dist/components/smartEditor/useLspSession.d.ts +6 -0
  315. package/dist/components/smartEditor/useLspSession.d.ts.map +1 -1
  316. package/dist/components/smartEditor/useLspSession.js +7 -6
  317. package/dist/components/smartEditor/useLspSession.js.map +1 -1
  318. package/dist/components/supportTicket/AttachmentChips.d.ts.map +1 -1
  319. package/dist/components/supportTicket/AttachmentChips.js +15 -5
  320. package/dist/components/supportTicket/AttachmentChips.js.map +1 -1
  321. package/dist/components/supportTicket/ReferencePicker.d.ts +9 -2
  322. package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
  323. package/dist/components/supportTicket/ReferencePicker.js +27 -6
  324. package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
  325. package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
  326. package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
  327. package/dist/components/supportTicket/TicketHeader.js +20 -2
  328. package/dist/components/supportTicket/TicketHeader.js.map +1 -1
  329. package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
  330. package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
  331. package/dist/components/ticketReferences/TicketReferences.js +9 -4
  332. package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
  333. package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
  334. package/dist/components/ticketThread/TicketThread.js +36 -11
  335. package/dist/components/ticketThread/TicketThread.js.map +1 -1
  336. package/dist/helpers/descriptionTooltip.d.ts +43 -0
  337. package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
  338. package/dist/helpers/descriptionTooltip.js +70 -0
  339. package/dist/helpers/descriptionTooltip.js.map +1 -0
  340. package/dist/helpers/domProps.d.ts +5 -0
  341. package/dist/helpers/domProps.d.ts.map +1 -0
  342. package/dist/helpers/domProps.js +47 -0
  343. package/dist/helpers/domProps.js.map +1 -0
  344. package/dist/helpers/expressions.d.ts +107 -2
  345. package/dist/helpers/expressions.d.ts.map +1 -1
  346. package/dist/helpers/expressions.js +223 -8
  347. package/dist/helpers/expressions.js.map +1 -1
  348. package/dist/helpers/hoveringPointer.d.ts +26 -0
  349. package/dist/helpers/hoveringPointer.d.ts.map +1 -0
  350. package/dist/helpers/hoveringPointer.js +29 -0
  351. package/dist/helpers/hoveringPointer.js.map +1 -0
  352. package/dist/helpers/markdownText.d.ts +14 -0
  353. package/dist/helpers/markdownText.d.ts.map +1 -0
  354. package/dist/helpers/markdownText.js +160 -0
  355. package/dist/helpers/markdownText.js.map +1 -0
  356. package/dist/helpers/qorusTypeCatalogue.d.ts +53 -0
  357. package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
  358. package/dist/helpers/qorusTypeCatalogue.js +262 -0
  359. package/dist/helpers/qorusTypeCatalogue.js.map +1 -0
  360. package/dist/helpers/readableColors.d.ts +36 -0
  361. package/dist/helpers/readableColors.d.ts.map +1 -0
  362. package/dist/helpers/readableColors.js +116 -0
  363. package/dist/helpers/readableColors.js.map +1 -0
  364. package/dist/helpers/templateItems.d.ts +2 -2
  365. package/dist/helpers/templateItems.d.ts.map +1 -1
  366. package/dist/helpers/templateItems.js +6 -4
  367. package/dist/helpers/templateItems.js.map +1 -1
  368. package/dist/helpers/templates.d.ts +26 -1
  369. package/dist/helpers/templates.d.ts.map +1 -1
  370. package/dist/helpers/templates.js +41 -6
  371. package/dist/helpers/templates.js.map +1 -1
  372. package/dist/helpers/validations.d.ts +9 -0
  373. package/dist/helpers/validations.d.ts.map +1 -1
  374. package/dist/helpers/validations.js +139 -33
  375. package/dist/helpers/validations.js.map +1 -1
  376. package/dist/hooks/useQorusTypes.d.ts +7 -15
  377. package/dist/hooks/useQorusTypes.d.ts.map +1 -1
  378. package/dist/hooks/useQorusTypes.js +25 -166
  379. package/dist/hooks/useQorusTypes.js.map +1 -1
  380. package/dist/hooks/useReadableIntentShade.d.ts +9 -0
  381. package/dist/hooks/useReadableIntentShade.d.ts.map +1 -0
  382. package/dist/hooks/useReadableIntentShade.js +23 -0
  383. package/dist/hooks/useReadableIntentShade.js.map +1 -0
  384. package/dist/hooks/useReadableOpacity.d.ts +6 -0
  385. package/dist/hooks/useReadableOpacity.d.ts.map +1 -0
  386. package/dist/hooks/useReadableOpacity.js +17 -0
  387. package/dist/hooks/useReadableOpacity.js.map +1 -0
  388. package/dist/index.d.ts +1 -0
  389. package/dist/index.d.ts.map +1 -1
  390. package/dist/index.js +1 -0
  391. package/dist/index.js.map +1 -1
  392. package/dist/tracking/ui/ExperimentCard.d.ts +1 -1
  393. package/dist/tracking/ui/ExperimentCard.d.ts.map +1 -1
  394. package/dist/tracking/ui/ExperimentCard.js +26 -10
  395. package/dist/tracking/ui/ExperimentCard.js.map +1 -1
  396. package/dist/tracking/ui/card.d.ts +2 -2
  397. package/dist/tracking/ui/card.d.ts.map +1 -1
  398. package/dist/tracking/ui/card.js +2 -2
  399. package/dist/tracking/ui/card.js.map +1 -1
  400. package/dist/tracking/ui/readable.d.ts +14 -0
  401. package/dist/tracking/ui/readable.d.ts.map +1 -0
  402. package/dist/tracking/ui/readable.js +60 -0
  403. package/dist/tracking/ui/readable.js.map +1 -0
  404. package/package.json +14 -5
  405. package/.claude/CLAUDE.md +0 -317
  406. package/.tasks/EXPORT_EXPRESSION_BUILDER.md +0 -38
  407. package/.tasks/EXPRESSION_BUILDER_REPORT.md +0 -149
  408. package/.tasks/EXPRESSION_FIELD_SEAMS.md +0 -66
  409. package/.tasks/FIELD_STACK_REPORT.md +0 -234
  410. package/.tasks/FORM_ENGINE_COMPACT_READ_FIRST.md +0 -558
  411. package/.tasks/FORM_ENGINE_EXPRESSIONS.md +0 -197
  412. package/.tasks/FORM_ENGINE_OPTIONS_SYNC.md +0 -95
  413. package/.tasks/FORM_FIELD_EXTRAS.md +0 -72
  414. package/.tasks/INDEX.md +0 -111
  415. package/.tasks/LSP_SHARED_CONNECTION.md +0 -75
  416. package/.tasks/QONSOLE_ASSIST_FEATURES.md +0 -306
  417. package/.tasks/RENDER_EXPRESSION_LSP.md +0 -159
  418. package/.tasks/REQRAFT_AUTO_FIELD.md +0 -176
  419. package/.tasks/SCHEMA_DEFINITION_FIELD.md +0 -250
  420. package/.tasks/SMART_EDITOR_CONTEXT_AND_POLISH.md +0 -340
  421. package/.tasks/SMART_EDITOR_LSP_FEATURES.md +0 -299
  422. package/.tasks/SMART_EDITOR_REVIEW_FOLLOWUPS.md +0 -280
  423. package/.tasks/SMART_EDITOR_UX_POLISH.md +0 -383
  424. package/.tasks/SMART_EDITOR_VISUAL_POLISH.md +0 -246
  425. package/.tasks/STORY_NETWORK_ISOLATION.md +0 -98
  426. package/.tasks/TEMPLATE_TOKEN_GRAMMAR.md +0 -72
  427. package/CODE_OF_CONDUCT.md +0 -105
  428. package/CONTRIBUTING.MD +0 -78
  429. package/SECURITY.md +0 -3
  430. package/chromatic.config.json +0 -5
  431. package/design/COMPACT_ENGINE_REDESIGN.md +0 -156
  432. package/design/COMPACT_INFO_DISPLAY.md +0 -87
  433. package/design/COMPACT_PARITY.md +0 -85
  434. package/design/EXPRESSION_BUILDER_REPORT_STRATEGY.md +0 -92
  435. package/design/FORM_ENGINE_COMPACT.md +0 -300
  436. package/design/FORM_ENGINE_COMPACT_UX_PLAN.md +0 -353
  437. package/design/FORM_ENGINE_EXPRESSIONS.md +0 -257
  438. package/design/FORM_ENGINE_FIELD_MIGRATION.md +0 -419
  439. package/design/IDE_INTEGRATION.md +0 -64
  440. package/design/RENDER_EXPRESSION_TRANSPORT.md +0 -156
  441. package/design/SELECT_DIALOG_FLOOR.md +0 -86
  442. package/design/SMART_EDITOR_UX.md +0 -438
  443. package/design/TRACKING.md +0 -290
  444. package/design/UNAVAILABLE_ALLOWED_VALUES.md +0 -226
  445. package/src/components/Description/index.tsx +0 -254
  446. package/src/components/Description/markdownRendererContext.tsx +0 -29
  447. package/src/components/FocusedEditing/index.tsx +0 -50
  448. package/src/components/codeSize/index.tsx +0 -79
  449. package/src/components/composer/Composer.stories.tsx +0 -238
  450. package/src/components/composer/Composer.tsx +0 -554
  451. package/src/components/composer/helpers.ts +0 -74
  452. package/src/components/composer/index.ts +0 -2
  453. package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -1183
  454. package/src/components/dpqlEditor/DpqlEditor.tsx +0 -219
  455. package/src/components/dpqlEditor/dpqlHelpers.ts +0 -287
  456. package/src/components/dpqlEditor/dpqlInserter.ts +0 -121
  457. package/src/components/dpqlEditor/dpqlProbe.ts +0 -165
  458. package/src/components/dpqlEditor/dpqlTags.ts +0 -114
  459. package/src/components/dpqlEditor/index.ts +0 -41
  460. package/src/components/dpqlEditor/types.ts +0 -203
  461. package/src/components/dpqlEditor/useDpqlProbe.ts +0 -33
  462. package/src/components/dpqlEditor/useDpqlSession.ts +0 -411
  463. package/src/components/form/engine/CompactRow.tsx +0 -2620
  464. package/src/components/form/engine/CompactToolbar.tsx +0 -330
  465. package/src/components/form/engine/FormEngine.stories.tsx +0 -9920
  466. package/src/components/form/engine/FormEngine.tsx +0 -4569
  467. package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
  468. package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -331
  469. package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
  470. package/src/components/form/engine/OptionFieldMessages.tsx +0 -477
  471. package/src/components/form/engine/OptionsHelpDialog.tsx +0 -29
  472. package/src/components/form/engine/__fixtures__/basicFormOptions.ts +0 -309
  473. package/src/components/form/engine/__fixtures__/fieldChromeOptions.ts +0 -45
  474. package/src/components/form/engine/_structuredData/SchemaDataView.stories.tsx +0 -233
  475. package/src/components/form/engine/_structuredData/SchemaDataView.tsx +0 -742
  476. package/src/components/form/engine/_structuredData/StructuredDataView.stories.tsx +0 -85
  477. package/src/components/form/engine/_structuredData/StructuredDataView.tsx +0 -75
  478. package/src/components/form/engine/_structuredData/structuredData.ts +0 -145
  479. package/src/components/form/engine/compactRowContext.ts +0 -148
  480. package/src/components/form/engine/compactRowStyles.ts +0 -898
  481. package/src/components/form/engine/compactToolbarContext.ts +0 -69
  482. package/src/components/form/engine/optionActions.ts +0 -128
  483. package/src/components/form/engine/optionsContext.ts +0 -24
  484. package/src/components/form/engine/readFirst.ts +0 -1077
  485. package/src/components/form/engine/rendererTypes.ts +0 -107
  486. package/src/components/form/engine/revealRow.ts +0 -123
  487. package/src/components/form/engine/rowFocus.ts +0 -101
  488. package/src/components/form/engine/rowMenuContext.ts +0 -159
  489. package/src/components/form/engine/rowOpenPicker.ts +0 -27
  490. package/src/components/form/engine/typeChoices.ts +0 -63
  491. package/src/components/form/engine/variants/FormEngineVariants.stories.tsx +0 -159
  492. package/src/components/form/engine/variants/VariantCalmTable.tsx +0 -244
  493. package/src/components/form/engine/variants/VariantCards.tsx +0 -212
  494. package/src/components/form/engine/variants/VariantFocus.tsx +0 -382
  495. package/src/components/form/engine/variants/VariantMinimal.tsx +0 -170
  496. package/src/components/form/engine/variants/focusDemo.ts +0 -145
  497. package/src/components/form/engine/variants/variantModel.ts +0 -223
  498. package/src/components/form/engine/variants/variantParts.tsx +0 -313
  499. package/src/components/form/expressions/DpqlRendering.tsx +0 -85
  500. package/src/components/form/expressions/ExpressionField.stories.tsx +0 -1395
  501. package/src/components/form/expressions/ExpressionField.tsx +0 -503
  502. package/src/components/form/expressions/argumentPresence.ts +0 -213
  503. package/src/components/form/expressions/builder/ExpressionBuilder.stories.tsx +0 -1683
  504. package/src/components/form/expressions/builder/argumentDetail.tsx +0 -17
  505. package/src/components/form/expressions/builder/argumentLabel.tsx +0 -146
  506. package/src/components/form/expressions/builder/argumentSlot.tsx +0 -101
  507. package/src/components/form/expressions/builder/argumentWrapper.tsx +0 -243
  508. package/src/components/form/expressions/builder/confirmMismatchedTypesModal.tsx +0 -120
  509. package/src/components/form/expressions/builder/confirmUnsupportedTypeModal.tsx +0 -69
  510. package/src/components/form/expressions/builder/index.tsx +0 -1545
  511. package/src/components/form/expressions/builder/item.tsx +0 -89
  512. package/src/components/form/expressions/builder/moveToPositionStrip.tsx +0 -156
  513. package/src/components/form/expressions/builder/renderTemplate.tsx +0 -42
  514. package/src/components/form/expressions/dpqlMockLanguage.ts +0 -566
  515. package/src/components/form/expressions/dpqlMockLsp.ts +0 -126
  516. package/src/components/form/expressions/mockExpressions.ts +0 -317
  517. package/src/components/form/expressions/renderExpressionToText.ts +0 -137
  518. package/src/components/form/expressions/types.ts +0 -110
  519. package/src/components/form/expressions/useExpressions.ts +0 -101
  520. package/src/components/form/expressions/useRenderExpression.ts +0 -165
  521. package/src/components/form/fields/Field.stories.tsx +0 -143
  522. package/src/components/form/fields/Field.tsx +0 -732
  523. package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -297
  524. package/src/components/form/fields/array/ArrayAuto.tsx +0 -237
  525. package/src/components/form/fields/array/ArrayAutoField.stories.tsx +0 -475
  526. package/src/components/form/fields/array/ArrayAutoField.tsx +0 -367
  527. package/src/components/form/fields/auto/AutoFormField.stories.tsx +0 -825
  528. package/src/components/form/fields/auto/AutoFormField.tsx +0 -1164
  529. package/src/components/form/fields/binary/Binary.stories.tsx +0 -122
  530. package/src/components/form/fields/binary/Binary.tsx +0 -91
  531. package/src/components/form/fields/boolean/Boolean.stories.tsx +0 -125
  532. package/src/components/form/fields/boolean/Boolean.tsx +0 -34
  533. package/src/components/form/fields/byte-size/ByteSize.stories.tsx +0 -87
  534. package/src/components/form/fields/byte-size/ByteSize.tsx +0 -58
  535. package/src/components/form/fields/color/Color.stories.tsx +0 -99
  536. package/src/components/form/fields/color/Color.tsx +0 -46
  537. package/src/components/form/fields/cron/Cron.stories.tsx +0 -68
  538. package/src/components/form/fields/cron/Cron.tsx +0 -80
  539. package/src/components/form/fields/date/Date.stories.tsx +0 -77
  540. package/src/components/form/fields/date/Date.tsx +0 -55
  541. package/src/components/form/fields/emittedValues.ts +0 -70
  542. package/src/components/form/fields/file/File.stories.tsx +0 -161
  543. package/src/components/form/fields/file/File.tsx +0 -227
  544. package/src/components/form/fields/long-string/LongString.stories.tsx +0 -120
  545. package/src/components/form/fields/long-string/LongString.tsx +0 -130
  546. package/src/components/form/fields/markdown/Markdown.stories.tsx +0 -76
  547. package/src/components/form/fields/markdown/Markdown.tsx +0 -81
  548. package/src/components/form/fields/markdown/MarkdownView.tsx +0 -222
  549. package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +0 -139
  550. package/src/components/form/fields/number/Number.stories.tsx +0 -159
  551. package/src/components/form/fields/number/Number.tsx +0 -160
  552. package/src/components/form/fields/object/Object.stories.tsx +0 -398
  553. package/src/components/form/fields/object/Object.tsx +0 -255
  554. package/src/components/form/fields/radio-group/RadioGroup.stories.tsx +0 -95
  555. package/src/components/form/fields/radio-group/RadioGroup.tsx +0 -46
  556. package/src/components/form/fields/radio-group/images/java-96x128.png +0 -0
  557. package/src/components/form/fields/radio-group/images/python-129x128.png +0 -0
  558. package/src/components/form/fields/radio-group/images/qore-106x128.png +0 -0
  559. package/src/components/form/fields/rich-text/RichText.stories.tsx +0 -260
  560. package/src/components/form/fields/rich-text/RichText.tsx +0 -537
  561. package/src/components/form/fields/schema-definition/CatalogLeafForm.tsx +0 -242
  562. package/src/components/form/fields/schema-definition/CatalogNodeEditor.tsx +0 -758
  563. package/src/components/form/fields/schema-definition/Hint.tsx +0 -22
  564. package/src/components/form/fields/schema-definition/InlineValidationBanner.tsx +0 -138
  565. package/src/components/form/fields/schema-definition/Loader.tsx +0 -20
  566. package/src/components/form/fields/schema-definition/MigrationsTab.tsx +0 -187
  567. package/src/components/form/fields/schema-definition/SchemaDefinitionField.stories.tsx +0 -286
  568. package/src/components/form/fields/schema-definition/TableEditor.tsx +0 -155
  569. package/src/components/form/fields/schema-definition/TablesTab.tsx +0 -138
  570. package/src/components/form/fields/schema-definition/catalog.ts +0 -237
  571. package/src/components/form/fields/schema-definition/helpers.ts +0 -90
  572. package/src/components/form/fields/schema-definition/index.tsx +0 -418
  573. package/src/components/form/fields/schema-definition/mockCatalog.ts +0 -325
  574. package/src/components/form/fields/schema-definition/mockDefinition.ts +0 -111
  575. package/src/components/form/fields/schema-definition/referenceSuggestions.tsx +0 -152
  576. package/src/components/form/fields/schema-definition/starterTemplate.ts +0 -68
  577. package/src/components/form/fields/schema-definition/types.ts +0 -185
  578. package/src/components/form/fields/schema-definition/useSchemaOptionCatalog.ts +0 -49
  579. package/src/components/form/fields/select/Select.stories.tsx +0 -872
  580. package/src/components/form/fields/select/Select.tsx +0 -624
  581. package/src/components/form/fields/select/SelectCollection.tsx +0 -594
  582. package/src/components/form/fields/string/String.stories.tsx +0 -86
  583. package/src/components/form/fields/string/String.tsx +0 -43
  584. package/src/components/form/fields/template/ExampleValueModal.stories.tsx +0 -114
  585. package/src/components/form/fields/template/ExampleValueModal.tsx +0 -99
  586. package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +0 -47
  587. package/src/components/form/fields/template/TemplateField.stories.tsx +0 -1121
  588. package/src/components/form/fields/template/TemplateField.tsx +0 -1717
  589. package/src/components/form/fields/template/TemplateText.tsx +0 -115
  590. package/src/components/form/fields/template/__fixtures__/longExampleValue.ts +0 -7
  591. package/src/components/form/fields/template/__fixtures__/multiLevelTemplates.json +0 -147
  592. package/src/components/form/fields/template/__fixtures__/templates.json +0 -83
  593. package/src/components/form/fields/timeout/Timeout.stories.tsx +0 -228
  594. package/src/components/form/fields/timeout/Timeout.tsx +0 -87
  595. package/src/components/form/fields/url/Url.stories.tsx +0 -94
  596. package/src/components/form/fields/url/Url.tsx +0 -85
  597. package/src/components/form/index.tsx +0 -47
  598. package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
  599. package/src/components/imageLightbox/ImageLightbox.tsx +0 -236
  600. package/src/components/imageLightbox/index.ts +0 -1
  601. package/src/components/log/Log.stories.tsx +0 -333
  602. package/src/components/log/Log.tsx +0 -285
  603. package/src/components/menu/Menu.stories.tsx +0 -155
  604. package/src/components/menu/Menu.tsx +0 -312
  605. package/src/components/qonsoleSmartInput/QonsoleSmartInput.stories.tsx +0 -797
  606. package/src/components/qonsoleSmartInput/QonsoleSmartInput.tsx +0 -105
  607. package/src/components/qonsoleSmartInput/index.ts +0 -16
  608. package/src/components/qonsoleSmartInput/qonsoleInserter.ts +0 -77
  609. package/src/components/qonsoleSmartInput/types.ts +0 -133
  610. package/src/components/qonsoleSmartInput/useQonsoleSession.ts +0 -124
  611. package/src/components/searchFilterBar/SearchFilterBar.stories.tsx +0 -62
  612. package/src/components/searchFilterBar/SearchFilterBar.tsx +0 -144
  613. package/src/components/searchFilterBar/index.ts +0 -1
  614. package/src/components/smartEditor/MarkdownDoc.tsx +0 -190
  615. package/src/components/smartEditor/SmartEditor.stories.tsx +0 -475
  616. package/src/components/smartEditor/SmartEditor.tsx +0 -808
  617. package/src/components/smartEditor/__fixtures__/mockLspServer.ts +0 -205
  618. package/src/components/smartEditor/helpers.ts +0 -217
  619. package/src/components/smartEditor/index.ts +0 -35
  620. package/src/components/smartEditor/styling.ts +0 -45
  621. package/src/components/smartEditor/types.ts +0 -211
  622. package/src/components/smartEditor/useLspAutocomplete.ts +0 -758
  623. package/src/components/smartEditor/useLspDiagnosticDecorations.ts +0 -125
  624. package/src/components/smartEditor/useLspHover.ts +0 -230
  625. package/src/components/smartEditor/useLspSemanticTokens.ts +0 -298
  626. package/src/components/smartEditor/useLspSession.ts +0 -231
  627. package/src/components/smartEditor/useLspSignatureHelp.ts +0 -198
  628. package/src/components/supportTicket/AttachmentChips.stories.tsx +0 -171
  629. package/src/components/supportTicket/AttachmentChips.tsx +0 -147
  630. package/src/components/supportTicket/InterfaceReferenceTags.stories.tsx +0 -257
  631. package/src/components/supportTicket/InterfaceReferenceTags.tsx +0 -129
  632. package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -584
  633. package/src/components/supportTicket/ReferencePicker.tsx +0 -563
  634. package/src/components/supportTicket/TicketConversation.stories.tsx +0 -121
  635. package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
  636. package/src/components/supportTicket/TicketHeader.tsx +0 -247
  637. package/src/components/supportTicket/TicketMetaTags.stories.tsx +0 -103
  638. package/src/components/supportTicket/TicketMetaTags.tsx +0 -85
  639. package/src/components/supportTicket/TicketReplyBox.stories.tsx +0 -354
  640. package/src/components/supportTicket/TicketReplyBox.tsx +0 -150
  641. package/src/components/supportTicket/__fixtures__/kindMarks.ts +0 -28
  642. package/src/components/supportTicket/attachmentAccess.ts +0 -97
  643. package/src/components/supportTicket/fileToAttachment.ts +0 -24
  644. package/src/components/supportTicket/index.ts +0 -10
  645. package/src/components/supportTicket/meta.ts +0 -206
  646. package/src/components/supportTicket/ticketModel.ts +0 -131
  647. package/src/components/supportTicket/useLoadedImages.ts +0 -73
  648. package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -315
  649. package/src/components/ticketReferences/TicketReferences.tsx +0 -906
  650. package/src/components/ticketReferences/index.ts +0 -2
  651. package/src/components/ticketThread/TicketThread.stories.tsx +0 -829
  652. package/src/components/ticketThread/TicketThread.tsx +0 -719
  653. package/src/components/ticketThread/index.ts +0 -6
  654. package/src/contexts/FetchContext.tsx +0 -25
  655. package/src/contexts/ReqraftContext.tsx +0 -9
  656. package/src/contexts/StorageContext.tsx +0 -33
  657. package/src/global.d.ts +0 -4
  658. package/src/helpers/allowedValues.ts +0 -249
  659. package/src/helpers/choiceChip.ts +0 -227
  660. package/src/helpers/common.ts +0 -326
  661. package/src/helpers/dpqlDetection.ts +0 -209
  662. package/src/helpers/expressions.ts +0 -140
  663. package/src/helpers/optionUiTypes.ts +0 -199
  664. package/src/helpers/options.ts +0 -150
  665. package/src/helpers/providerValue.ts +0 -125
  666. package/src/helpers/scrollbar.ts +0 -32
  667. package/src/helpers/singleLineString.ts +0 -61
  668. package/src/helpers/templateItems.ts +0 -81
  669. package/src/helpers/templateText.ts +0 -350
  670. package/src/helpers/templates.ts +0 -602
  671. package/src/helpers/validations.ts +0 -2085
  672. package/src/hooks/useArgSchema.ts +0 -37
  673. package/src/hooks/useCoarsePointer.ts +0 -30
  674. package/src/hooks/useFetch/useFetch.stories.tsx +0 -379
  675. package/src/hooks/useFetch/useFetch.tsx +0 -154
  676. package/src/hooks/usePhoneViewport.ts +0 -34
  677. package/src/hooks/useQorusTypes.ts +0 -233
  678. package/src/hooks/useReqraftProperty.ts +0 -16
  679. package/src/hooks/useStorage/useStorage.stories.tsx +0 -168
  680. package/src/hooks/useStorage/useStorage.ts +0 -35
  681. package/src/hooks/useTemplates.ts +0 -123
  682. package/src/hooks/useValidation.ts +0 -9
  683. package/src/hooks/useWebSocket/useWebSocket.ts +0 -224
  684. package/src/hooks/useWebSocket/useWebsocket.stories.tsx +0 -640
  685. package/src/hooks/useWhyDidYouUpdate.ts +0 -38
  686. package/src/index.tsx +0 -86
  687. package/src/providers/FetchProvider.tsx +0 -40
  688. package/src/providers/ReqraftProvider.tsx +0 -52
  689. package/src/providers/StorageProvider.tsx +0 -131
  690. package/src/stores/currentUser/currentUser.stories.tsx +0 -100
  691. package/src/stores/currentUser/currentUser.tsx +0 -94
  692. package/src/stories/Data/fileFieldArgSchema.json +0 -86
  693. package/src/stories/Tests/utils.ts +0 -320
  694. package/src/stories/storyNetwork.ts +0 -92
  695. package/src/stories/tracking.tsx +0 -206
  696. package/src/tracking/browser/attach.ts +0 -186
  697. package/src/tracking/browser/env.ts +0 -78
  698. package/src/tracking/core/consent.ts +0 -37
  699. package/src/tracking/core/engagement.ts +0 -47
  700. package/src/tracking/core/experiments.ts +0 -258
  701. package/src/tracking/core/hash.ts +0 -26
  702. package/src/tracking/core/ids.ts +0 -25
  703. package/src/tracking/core/observable.ts +0 -23
  704. package/src/tracking/core/queue.ts +0 -131
  705. package/src/tracking/core/sections.ts +0 -166
  706. package/src/tracking/core/storage.ts +0 -69
  707. package/src/tracking/core/tracker.ts +0 -417
  708. package/src/tracking/core/types.ts +0 -162
  709. package/src/tracking/core/utm.ts +0 -23
  710. package/src/tracking/index.ts +0 -72
  711. package/src/tracking/markup.ts +0 -17
  712. package/src/tracking/react/Experiment.tsx +0 -44
  713. package/src/tracking/react/TrackingProvider.tsx +0 -56
  714. package/src/tracking/react/hooks.ts +0 -106
  715. package/src/tracking/react/index.ts +0 -13
  716. package/src/tracking/testing.ts +0 -108
  717. package/src/tracking/ui/ExperimentCard.stories.tsx +0 -296
  718. package/src/tracking/ui/ExperimentCard.tsx +0 -667
  719. package/src/tracking/ui/ExperimentsOverlay.stories.tsx +0 -155
  720. package/src/tracking/ui/ExperimentsOverlay.tsx +0 -437
  721. package/src/tracking/ui/anchor.ts +0 -180
  722. package/src/tracking/ui/card.ts +0 -464
  723. package/src/tracking/ui/client.ts +0 -117
  724. package/src/tracking/ui/index.ts +0 -77
  725. package/src/tracking/ui/types.ts +0 -110
  726. package/src/tracking/ui/useExperimentsAdmin.ts +0 -103
  727. package/src/types/Form.ts +0 -29
  728. package/src/types.ts +0 -14
  729. package/src/utils/datetime.ts +0 -10
  730. package/src/utils/fetch.ts +0 -457
  731. package/src/utils/lspClient.ts +0 -711
  732. package/src/utils/lspClient.types.ts +0 -211
  733. package/src/utils/queryUnlessCancelled.ts +0 -28
  734. package/src/utils/websocket.ts +0 -293
  735. package/vite.config.ts +0 -58
  736. package/vitest.config.ts +0 -69
@@ -1,898 +0,0 @@
1
- import { ReqoreP, ReqorePanel } from '@qoretechnologies/reqore';
2
- import { GAP_FROM_SIZE, TSizes } from '@qoretechnologies/reqore/dist/constants/sizes';
3
- import styled, { css } from 'styled-components';
4
-
5
- // Styled primitives for the compact (read-first) rows and their editor cards.
6
- // Shared between FormEngine and the extracted CompactRow component.
7
- export const HEADER_GAP: TSizes = 'big';
8
-
9
- // Read-row geometry. The row is a 3-col grid [label | value | actions]; the
10
- // recessed value surface + intent stripe begin at the VALUE column, leaving the
11
- // label column on the bare form background. A fixed label column is what lets
12
- // the surface (FormEngine's StyledGroupBody ::before) and the sub-panel indents
13
- // land on the same x, so these constants are the single source for all three.
14
- export const COMPACT_LABEL_COL = 220; // fixed label column width (was minmax max)
15
- export const COMPACT_ROW_PAD_X = 10; // .readfirst-row horizontal padding
16
- export const COMPACT_ROW_GAP = 14; // grid column gap
17
- // Where the value column's content starts, measured from the block's left edge.
18
- export const COMPACT_VALUE_LEFT = COMPACT_ROW_PAD_X + COMPACT_LABEL_COL + COMPACT_ROW_GAP;
19
- // The surface starts a touch left of the value text, for inner left padding.
20
- export const COMPACT_PANEL_LEFT = COMPACT_VALUE_LEFT - 10;
21
- // Left offset for the group sub-labels / cluster header, kept equal to the row's
22
- // own horizontal padding so the labels line up flush with the field labels below
23
- // them (no extra gutter — the spine/rail that used a fluid indent are gone).
24
- export const GROUP_INDENT = `${COMPACT_ROW_PAD_X}px`;
25
-
26
- // Measured label column (GLOBAL). The label column sizes to the WIDEST field
27
- // label across the whole form, clamped to [MIN, MAX]. FormEngine measures the
28
- // labels once and writes the result to `LABEL_COL_VAR` on the compact scroll
29
- // wrap; the grid column and the value-surface offsets below all read it (falling
30
- // back to the fixed default until the measurement lands). Expressing the offsets
31
- // FROM the column var preserves the "value surface starts at a constant x"
32
- // invariant — the column may resize, but the surface stays glued to its edge.
33
- export const LABEL_COL_MIN = 120;
34
- export const LABEL_COL_MAX = COMPACT_LABEL_COL; // 220
35
- /**
36
- * Room reserved beside a field's NAME for the chrome that trails it, summed from
37
- * the parts rather than guessed: the required asterisk (10px), the `?` that opens
38
- * the long description (12px), and the two 3px gaps of `StyledRowLabel`.
39
- *
40
- * Added to the measured column AFTER the min/max clamp. Inside it, a label long
41
- * enough to reach the ceiling spends the allowance on itself and the `?` wraps to
42
- * a line of its own.
43
- *
44
- * The 4px of slack is not padding for its own sake: the measurement rounds (an
45
- * off-DOM `offsetWidth` is an integer) while the rendered text width is
46
- * fractional, so a column sized to the exact sum still wraps. Measured on an auth
47
- * profile — "Authentication Schemes" renders 152px of text and needs
48
- * 152+3+10+3+12 = 180, was given exactly 180, and wrapped anyway.
49
- */
50
- export const LABEL_AFFORDANCE_WIDTH = 10 + 12 + 3 * 2 + 4;
51
- export const LABEL_COL_VAR = '--readfirst-label-col';
52
- export const LABEL_COL = `var(${LABEL_COL_VAR}, ${COMPACT_LABEL_COL}px)`;
53
- export const PANEL_LEFT_CSS = `calc(${LABEL_COL} + ${COMPACT_ROW_PAD_X + COMPACT_ROW_GAP - 10}px)`;
54
-
55
- // Glass sticky header: override `.reqore-panel-title` (the surface ReqorePanel
56
- // gives its sticky header) with a translucent theme tint + a moderate blur, the
57
- // way the IDE's DashboardModule overrides its own header. `translateZ(0)`
58
- // promotes the header to its own GPU layer, which stops the backdrop-filter
59
- // repaint flicker on scroll. `$headerBg` is a pre-mixed translucent colour so
60
- // content blurs softly through.
61
- export const StyledCompactPanel = styled(ReqorePanel)<{
62
- $headerBg: string;
63
- $nested?: boolean;
64
- /** True when the toolbar renders no search row (hidden via `compactToolbar`,
65
- * self-hidden on a single-option form, or no toolbar at all). */
66
- $tightHeader?: boolean;
67
- /** True when the status boxes inside pin their headers. */
68
- $stickyBoxes?: boolean;
69
- /** True when a narrow form's header carries a consumer's label, icon or
70
- * actions beside the toolbar, which then has to take a line of its own. */
71
- $stackHeader?: boolean;
72
- }>`
73
- /* The wrapper must not clip, or nothing INSIDE it can pin.
74
-
75
- ReqorePanel sets its wrapper to \`overflow: hidden\` unless its own header
76
- is sticky — and a clipping box is a scrollport, so a status box header
77
- inside it resolves against the wrapper instead of the page and stops
78
- pinning. That coupling is right for the panel's own header and wrong for
79
- its descendants': a host that turns this form's toolbar off (a two-field
80
- form inside a longer page, where a pinned search bar is the biggest thing
81
- on screen and the least useful) was silently turning the box headers off
82
- with it.
83
-
84
- The clip is the panel's rounded corners, and this panel is transparent and
85
- border-less — \`flat raised minimal\`, no background of its own — so there
86
- is nothing for it to clip. */
87
- ${({ $stickyBoxes }) =>
88
- $stickyBoxes ?
89
- css`
90
- &&& {
91
- overflow: visible;
92
- }
93
- `
94
- : ''}
95
- /* A NARROW header dressed by the consumer (\`compactPanelProps\` label, icon
96
- or actions) stacks: the label and the consumer's actions share the first
97
- line, and the toolbar takes the whole second line.
98
-
99
- ReqorePanel lays its header out as one unwrapping row — the label, then an
100
- action group that never shrinks. The toolbar is one of those actions and
101
- is as wide as the form, so at phone width the label was squeezed to
102
- nothing and the consumer's own action was pushed past the panel's edge and
103
- clipped. Flattening the action group (\`display: contents\`) lets its
104
- members wrap with the label, and \`order\` moves the toolbar after them. */
105
- ${({ $stackHeader }) =>
106
- $stackHeader ?
107
- css`
108
- && > .reqore-panel-title {
109
- flex-wrap: wrap;
110
- row-gap: ${GAP_FROM_SIZE.normal}px;
111
- }
112
- && > .reqore-panel-title > .reqore-panel-title-header {
113
- flex: 1 1 0;
114
- min-width: 0;
115
- }
116
- && > .reqore-panel-title > .reqore-control-group {
117
- display: contents;
118
- }
119
- && > .reqore-panel-title .options-readfirst-toolbar {
120
- order: 1;
121
- flex: 1 1 100%;
122
- min-width: 0;
123
- }
124
- `
125
- : ''}
126
- > .reqore-panel-title {
127
- /* The blur + translateZ exist only to make the STICKY top-level toolbar ghost
128
- content beneath it; a nested sub-form's header isn't sticky, so skip them
129
- (and the stacking context translateZ creates). */
130
- ${({ $nested }) =>
131
- $nested ? '' : (
132
- 'backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); transform: translateZ(0);'
133
- )}
134
- /* Above the status-box headers, which pin just below this toolbar. A
135
- pinned header cannot leave its own box, so when the end of a box
136
- scrolls up past the toolbar it pushes the header up with it — and with
137
- both at ReqorePanel's sticky z-index the header, later in the
138
- document, slid OVER the toolbar and covered the search and the
139
- meter. One step higher and it slides under the toolbar's blur
140
- instead. Nested sub-forms pin nothing, so they keep the default. */
141
- ${({ $nested }) => ($nested ? '' : 'z-index: 3;')}
142
- padding-top: ${GAP_FROM_SIZE[HEADER_GAP]}px;
143
- /* A header with a SEARCH ROW keeps the \`big\` gap below it — a tall
144
- interactive control earns separation from the content it filters. A
145
- header without one (search hidden via \`compactToolbar\`, self-hidden on
146
- a single-option form, or no toolbar at all) is a thin strip, and at
147
- \`big\` its padding stacked onto the panel content's own 8px into a 26px
148
- dead band between the completion meter and the first status box —
149
- rejected on build #140 as "unnecessarily big". \`normal\` lands it at
150
- the boxes' own 10px rhythm, and scoping the change here keeps every
151
- search-bearing form pixel-identical. */
152
- padding-bottom: ${({ $tightHeader }) =>
153
- $tightHeader ? GAP_FROM_SIZE.normal : GAP_FROM_SIZE[HEADER_GAP]}px;
154
- }
155
-
156
- /* Group framing. The HORIZONTAL rule is a real element in the header
157
- (StyledGroupHeaderLine) so it sits on the name's row, centred, and stretches
158
- from the name out to the status chip pinned at the far end — which needs the
159
- title's left group to fill the header width. The VERTICAL group spine is
160
- drawn by StyledGroupBody (so it shares the required-group rail's coordinate
161
- space and the two line up instead of doubling). */
162
- .options-readfirst-group {
163
- position: relative;
164
- }
165
- .options-readfirst-group > .reqore-panel-title > :first-child,
166
- .options-readfirst-group > .reqore-panel-title > :first-child > :first-child,
167
- .options-readfirst-group .reqore-panel-title-label-row {
168
- flex: 1 1 auto;
169
- min-width: 0;
170
- }
171
-
172
- /* An injected option action declared \`show: 'hover'\` — the shape ReqorePanel
173
- honours on the classic path — is revealed only while its row or card is
174
- hovered or holds focus. The compact slots render plain buttons, so the gate
175
- has to be CSS here. Kept focus-visible too, so the action stays reachable by
176
- keyboard. Opacity rather than display keeps the slot's width stable, so rows
177
- don't reflow on hover. */
178
- .options-injected-action-hover {
179
- opacity: 0;
180
- /* Not hit-testable while invisible — an opacity:0 button still takes taps
181
- and clicks, which reads as a mystery control firing out of nowhere. */
182
- pointer-events: none;
183
- transition: opacity 0.15s ease;
184
- }
185
- .readfirst-row:hover .options-injected-action-hover,
186
- .readfirst-row:focus-within .options-injected-action-hover,
187
- .options-readfirst-card:hover .options-injected-action-hover,
188
- .options-readfirst-card:focus-within .options-injected-action-hover {
189
- opacity: 1;
190
- pointer-events: auto;
191
- }
192
- /* Touch and other hover-less pointers never fire :hover, so a hover-gated
193
- action would be permanently unreachable there. Show it unconditionally
194
- instead — losing the tidiness beats losing the functionality. */
195
- @media (hover: none), (pointer: coarse) {
196
- .options-injected-action-hover {
197
- opacity: 1;
198
- pointer-events: auto;
199
- }
200
- }
201
- `;
202
-
203
- // Compact group header laid out as the panel's `label`: the group name, a
204
- // hairline that fades toward the status chip, and the chip pinned at the end.
205
- export const StyledGroupHeader = styled.div`
206
- display: flex;
207
- align-items: center;
208
- gap: 12px;
209
- flex: 1;
210
- min-width: 0;
211
- `;
212
- export const StyledGroupHeaderLine = styled.span<{ $color: string }>`
213
- flex: 1;
214
- height: 2px;
215
- min-width: 16px;
216
- background: linear-gradient(to right, ${({ $color }) => $color}, transparent);
217
- `;
218
-
219
- // A status box (Needs attention / Set / Optional). Matches the "Focus" prototype:
220
- // a barely-there accent border + a ~5%-opacity tint, NOT the loud intent border a
221
- // stock ReqorePanel draws. `$accent` is the box's theme colour (warning/success/
222
- // muted).
223
- export const StyledStatusBox = styled(ReqorePanel)<{
224
- $accent: string;
225
- $bg?: string;
226
- /** The page's own background, for the PINNED header — see below. */
227
- $surface?: string;
228
- }>`
229
- &&& {
230
- border: 1px solid ${({ $accent }) => `${$accent}33`};
231
- /* $bg lets the muted "Optional" box opt into a darker, recessed surface
232
- instead of the faint accent tint the coloured boxes use. */
233
- background: ${({ $accent, $bg }) => $bg || `${$accent}1f`};
234
- border-radius: 10px;
235
- }
236
-
237
- /* A PINNED header needs a surface of its own.
238
-
239
- The box's tint lives on the wrapper, behind the header, and a \`minimal\`
240
- panel header is transparent — which is right while the header sits in the
241
- flow over its own box, and wrong the moment it pins, because the rows then
242
- scroll THROUGH it. Reqore's backdrop blur softens them but a 12% tint over
243
- moving text still reads as two overlaid labels.
244
-
245
- So repaint the pinned header as the box looks at rest: an opaque layer of
246
- the page background with the box's own translucent tint composited on top,
247
- which is exactly what the eye sees where the box meets the page. The
248
- Optional box already carries an opaque \`$bg\`, so that is used as-is.
249
-
250
- Only when \`$surface\` is supplied — i.e. only on a form that pins at all —
251
- so an unpinned box is pixel-identical to before. */
252
- ${({ $surface, $accent, $bg }) =>
253
- $surface ?
254
- css`
255
- &&& > .reqore-panel-title {
256
- background-color: ${$bg || $surface};
257
- ${$bg ? '' : `background-image: linear-gradient(${$accent}1f, ${$accent}1f);`}
258
- }
259
- `
260
- : ''}
261
- `;
262
-
263
- // "One of the below is required" cluster box — wraps the members of an unmet
264
- // one-of required group (in the Needs-attention box) so the constraint reads as
265
- // one unit. The connection rail + status nodes still render inside (they convey
266
- // which member satisfies the group); this box adds the explicit heading.
267
- export const StyledRequiredClusterBox = styled.div<{ $border: string; $tint: string }>`
268
- border: 1px solid ${({ $border }) => $border};
269
- border-radius: 8px;
270
- background: ${({ $tint }) => $tint};
271
- padding: 2px 6px 6px;
272
- margin: 4px 0;
273
- /* The members render directly here (not via the gapped group body), so give
274
- them the same modest gap the rest of the rows have. Pin the divider-centring
275
- var to that gap (it doesn't widen in narrow like the group body's does). */
276
- display: flex;
277
- flex-flow: column;
278
- --readfirst-row-gap: 4px;
279
- gap: 4px;
280
- `;
281
- export const StyledRequiredClusterHeader = styled.div<{ $color: string }>`
282
- display: flex;
283
- align-items: center;
284
- gap: 6px;
285
- padding: 8px 0 4px ${GROUP_INDENT};
286
- font-size: 10px;
287
- font-weight: 600;
288
- letter-spacing: 1px;
289
- text-transform: uppercase;
290
- color: ${({ $color }) => $color};
291
- `;
292
-
293
- // Thin schema-group sub-label inside a status box (CONNECTION / AUTHENTICATION /
294
- // …). Quiet by design — the box header is the loud heading; this just keeps each
295
- // field's group context as you scan. Indented to the rows' content line.
296
- export const StyledStatusBoxGroupLabel = styled.div`
297
- font-size: 10px;
298
- font-weight: 500;
299
- letter-spacing: 1px;
300
- text-transform: uppercase;
301
- opacity: 0.5;
302
- padding: 8px 0 2px ${GROUP_INDENT};
303
- `;
304
-
305
- // Required-group "connection" rail: contiguous members are linked by a continuous
306
- // vertical rail (StyledGroupBody draws it; the line bridges the row gaps and is
307
- // trimmed to the first/last node). Each member carries a status node — absolutely
308
- // positioned in the EXISTING left gutter, so labels keep their place — tied to the
309
- // label by a short stub. Theme-derived: the node's hollow centre is painted the
310
- // form background so it MASKS the rail behind it; filled when the member is set.
311
- export const StyledClusterNode = styled.span<{ $color: string; $filled: boolean; $bg: string }>`
312
- position: absolute;
313
- left: -14px;
314
- top: 13px;
315
- width: 12px;
316
- height: 12px;
317
- box-sizing: border-box;
318
- border-radius: 50%;
319
- border: 2px solid ${({ $color }) => $color};
320
- background: ${({ $filled, $color, $bg }) => ($filled ? $color : $bg)};
321
- box-shadow: 0 0 5px ${({ $color }) => $color};
322
- z-index: 1;
323
- pointer-events: none;
324
- /* short stub toward the label — stops a few px short so it doesn't touch it */
325
- &::after {
326
- content: '';
327
- position: absolute;
328
- left: 100%;
329
- top: 50%;
330
- width: 6px;
331
- height: 2px;
332
- transform: translateY(-1px);
333
- background: ${({ $color }) => $color};
334
- }
335
- `;
336
-
337
- export const StyledEditCard = styled.div<{ $bg: string; $border: string }>`
338
- padding: 12px;
339
- display: flex;
340
- flex-flow: column;
341
- gap: 8px;
342
- background: ${({ $bg }) => $bg};
343
- border: 1px solid ${({ $border }) => $border};
344
- border-radius: 8px;
345
-
346
- /* Single-value editors (operators, long-string, markdown, richtext, byte-size)
347
- carry the card's own "Clear value" action, so suppress the value input's
348
- built-in ReqoreInput clear — ReqoreInput has no prop to hide it, and a
349
- separate input ✕ plus the row-level trash action
350
- read as a duplicate. Multi-input cards (hash/list/…) are not marked single,
351
- so their per-sub-field clears stay. */
352
- &.options-readfirst-card-single .reqore-clear-input-button {
353
- display: none;
354
- }
355
- `;
356
-
357
- // Recurring micro-layouts of the read-first rows and their popovers.
358
- export const StyledLabelBlock = styled.div`
359
- display: flex;
360
- flex-flow: column;
361
- gap: 2px;
362
- min-width: 0;
363
- `;
364
-
365
- export const StyledRowLabel = styled.div<{ $color: string; $pointer?: boolean }>`
366
- display: flex;
367
- align-items: center;
368
- gap: 3px;
369
- color: ${({ $color }) => $color};
370
- font-weight: 600;
371
- font-size: 13px;
372
- min-width: 0;
373
- white-space: normal;
374
- overflow-wrap: anywhere;
375
- cursor: ${({ $pointer }) => ($pointer ? 'pointer' : 'inherit')};
376
- `;
377
-
378
- // A field's short_desc rendered under its name in the (narrow) label column,
379
- // revealed by the row's ⓘ. Reuses ReqoreP for the muted-note styling (size +
380
- // effect opacity); the only custom bit is the line-clamp that keeps it from
381
- // pushing the row wide.
382
- export const StyledLabelDesc = styled(ReqoreP)`
383
- margin-top: 2px;
384
- white-space: normal;
385
- overflow: hidden;
386
- display: -webkit-box;
387
- -webkit-line-clamp: 3;
388
- -webkit-box-orient: vertical;
389
- `;
390
-
391
- export const StyledCardHeading = styled.div`
392
- display: flex;
393
- flex-flow: column;
394
- min-width: 0;
395
- `;
396
-
397
- /* The card (expanded) label matches the read-row label exactly — same size /
398
- weight / case — so a field's name doesn't switch styles when you open it. */
399
- export const StyledCardLabel = styled.div<{ $color: string }>`
400
- font-size: 13px;
401
- font-weight: 600;
402
- color: ${({ $color }) => $color};
403
- display: flex;
404
- align-items: center;
405
- gap: 4px;
406
- `;
407
-
408
- /* min-width: 0 lets the grid cell shrink below its content's intrinsic width
409
- so the ellipsis engages instead of overflowing. */
410
- export const StyledRowValue = styled.div<{ $color: string; $empty?: boolean }>`
411
- min-width: 0;
412
- font-size: 13px;
413
- /* Value + inline reason(s) share the line, wrapping the reason below only when
414
- it doesn't fit (the Focus prototype's layout). */
415
- display: flex;
416
- flex-wrap: wrap;
417
- align-items: baseline;
418
- column-gap: 10px;
419
- row-gap: 2px;
420
- /* The muted/translucent colour applies to the VALUE TEXT only — not the whole
421
- cell — so the message panels and the structured preview below render at full
422
- opacity instead of inheriting the dimmed value colour. */
423
- .options-readfirst-valuetext {
424
- min-width: 0;
425
- max-width: 100%;
426
- color: ${({ $color }) => $color};
427
- font-style: ${({ $empty }) => ($empty ? 'italic' : 'normal')};
428
- overflow: hidden;
429
- text-overflow: ellipsis;
430
- white-space: nowrap;
431
- }
432
- /* The code size chip kept above an OPEN editor. The read row puts the same chip
433
- at the top of the value cell with a 2px row-gap under it; matching that here is
434
- what stops the editor moving as the field opens. */
435
- .options-readfirst-editing-summary {
436
- margin-bottom: 2px;
437
- }
438
- .options-readfirst-reason {
439
- font-style: italic;
440
- font-size: 12px;
441
- line-height: 1.3;
442
- }
443
- /* Schema message panels: full width of the value column, on their own line
444
- directly beneath the value. */
445
- .options-readfirst-info-panel {
446
- flex-basis: 100%;
447
- width: 100%;
448
- display: flex;
449
- flex-flow: column;
450
- gap: 4px;
451
- margin-top: 4px;
452
- }
453
- /* Read-only companions of the value: what a chosen option means, on its own
454
- line under it; and a long text drawn in full in the inset. */
455
- .options-readfirst-choice-desc {
456
- flex-basis: 100%;
457
- width: 100%;
458
- min-width: 0;
459
- font-size: 12px;
460
- line-height: 1.4;
461
- opacity: 0.6;
462
- }
463
- .options-readfirst-text {
464
- color: ${({ $color }) => $color};
465
- white-space: pre-wrap;
466
- overflow-wrap: anywhere;
467
- line-height: 1.5;
468
- }
469
- `;
470
-
471
- export const StyledRowActions = styled.div`
472
- display: flex;
473
- align-items: center;
474
- /* No align-self override: the actions (incl. the status dot) follow the row's
475
- own vertical alignment — CENTRED on the common single-line row, TOP-aligned
476
- (first line) on the tall rows that opt into align-items:start (descriptions /
477
- message panels / hash previews). */
478
- gap: 6px;
479
- `;
480
-
481
- // A single status mark pinned at the row's trailing edge: one dot, colour =
482
- // severity (danger/warning/success). This is the "Focus" read-first signal that
483
- // replaces the recessed value surface's intent stripe — attention dots carry a
484
- // faint ring, a plain "set" dot does not. `unset` rows render no dot.
485
- export const StyledStatusDot = styled.span<{ $color: string; $ring?: boolean }>`
486
- width: 7px;
487
- height: 7px;
488
- border-radius: 50%;
489
- flex: 0 0 auto;
490
- background: ${({ $color }) => $color};
491
- box-shadow: ${({ $color, $ring }) => ($ring ? `0 0 0 3px ${$color}22` : 'none')};
492
- `;
493
-
494
- export const StyledActionSlot = styled.span<{ $width: number }>`
495
- display: inline-flex;
496
- justify-content: center;
497
- width: ${({ $width }) => $width}px;
498
- flex: 0 0 auto;
499
- `;
500
-
501
- export const StyledColumn = styled.div`
502
- display: flex;
503
- flex-flow: column;
504
- `;
505
-
506
- // The structured hash/list preview, rendered inside the value cell directly
507
- // under the value summary. Full-width of the value column (it's a flex child of
508
- // the wrapping value cell) so it lines up with the value, not the label gutter.
509
- export const StyledRowInset = styled.div`
510
- flex-basis: 100%;
511
- width: 100%;
512
- margin-top: 4px;
513
- `;
514
-
515
- /**
516
- * The stack literal text renders in: source, ids, tokens, data strings.
517
- *
518
- * Defined HERE rather than taken from reqore's `ReqoreFonts.mono`, which is the
519
- * same stack. Reqore is a peer dependency at `>=0.71.16` and that export arrived
520
- * later, so reading it would crash every consumer inside the declared range —
521
- * the whole form preview lost over a font choice. One local constant costs
522
- * nothing and keeps the code preview and the schema view's data values
523
- * identical, which is the only reason to share it in the first place.
524
- */
525
- export const MONO_FONT_STACK =
526
- "ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace";
527
-
528
- // A collapsed code-block preview shown under the value summary for a
529
- // `code-editor` field. Multi-line, monospace, subtle background — matches
530
- // the aesthetic of the classic code-view surface but small enough to sit
531
- // inside a read-row. Height is capped by the wrapping `ReqoreCollapsibleContent`
532
- // so the "Show more" affordance stays useful.
533
- export const StyledCodePreview = styled.pre<{ $bg: string; $border: string; $fg: string }>`
534
- margin: 0;
535
- padding: 8px 10px;
536
- border-radius: 4px;
537
- background: ${({ $bg }) => $bg};
538
- border: 1px solid ${({ $border }) => $border};
539
- color: ${({ $fg }) => $fg};
540
- font-family: ${MONO_FONT_STACK};
541
- font-size: 11.5px;
542
- line-height: 1.5;
543
- white-space: pre;
544
- overflow: auto;
545
- max-width: 100%;
546
- `;
547
-
548
- // A small inline colour swatch shown before an rgbcolor value's hex string.
549
- export const StyledColorSwatch = styled.span<{ $color: string; $border: string }>`
550
- width: 12px;
551
- height: 12px;
552
- border-radius: 3px;
553
- flex: 0 0 auto;
554
- background: ${({ $color }) => $color};
555
- border: 1px solid ${({ $border }) => $border};
556
- `;
557
-
558
- export const StyledGroupBody = styled.div<{
559
- $divider: string;
560
- $hover: string;
561
- $focus: string;
562
- $success: string;
563
- $rowBg: string;
564
- $lineColor: string;
565
- /** Edge colour for the "N more fields" row. Its own value because the row
566
- HAS to be seen — the divider tint that separates two fields is ~8% of the
567
- text colour, which disappears entirely as a 1px dashed border. */
568
- $moreBorder: string;
569
- }>`
570
- display: flex;
571
- flex-flow: column;
572
- position: relative;
573
- /* Exposed as a var so the inter-field divider can centre itself in the gap
574
- (the gap differs wide vs narrow). */
575
- --readfirst-row-gap: 4px;
576
- gap: var(--readfirst-row-gap);
577
-
578
- /* Indent each field block under the group header by a FLUID step. The %
579
- resolves against this container's width (not the screen), so it tracks the
580
- (Field blocks no longer get a left gutter — the spine/rail that needed it are
581
- gone, so rows sit flush against the box, like the Focus prototype.) */
582
- > * {
583
- margin-left: 0;
584
- }
585
-
586
- /* No group spine: the "Focus" look keeps the rows flat against the box. (The
587
- required-group rail is a separate descendant ::after and still renders.) */
588
-
589
- .readfirst-row {
590
- display: grid;
591
- /* Fixed label column: the recessed value surface (::before below) starts at a
592
- constant x, so the label width can't flex or the stripe would drift off the
593
- value edge. The value column is minmax(0, 1fr) — a bare 1fr keeps its
594
- min-content width, so a long unbroken value (e.g. a URL) would force the
595
- grid wider than its container and produce a horizontal scrollbar. The 0
596
- minimum lets it shrink and the value cell's ellipsis take over instead. */
597
- grid-template-columns: ${LABEL_COL} minmax(0, 1fr) auto;
598
- /* CENTRE the cells vertically: on the common single-line read row the label,
599
- value and status dot all sit on one centred line. Tall rows (a shown
600
- description, message panels or a hash preview) opt back into top-alignment
601
- (.readfirst-row-info-open / .readfirst-row-tall below) so the label + dot
602
- stay on the value's FIRST line instead of floating to the middle. */
603
- align-items: center;
604
- gap: 14px;
605
- /* Generous, SYMMETRIC vertical padding so a single-line row isn't cramped
606
- (content sits with even breathing room top + bottom); a min-height floor
607
- keeps the rare shorter row a comfortable tap target. */
608
- min-height: 40px;
609
- padding: 9px 10px;
610
- border-radius: 6px;
611
- cursor: pointer;
612
- transition: background 0.12s ease;
613
- }
614
- /* A dim hairline in the gap below each field so its start/end reads clearly.
615
- Absolutely positioned (not a border) so it stays straight + full-width and
616
- the row's rounded hover highlight is unaffected; sits in the inter-row gap. */
617
- .readfirst-row::after {
618
- content: '';
619
- position: absolute;
620
- /* Inset to the row's horizontal padding so the line spans the content, not
621
- the full box edge-to-edge. */
622
- left: ${COMPACT_ROW_PAD_X}px;
623
- right: ${COMPACT_ROW_PAD_X}px;
624
- /* Centred in the inter-field gap (which differs wide vs narrow) so the space
625
- above and below each line is equal. */
626
- bottom: calc(var(--readfirst-row-gap, 4px) / -2);
627
- height: 1px;
628
- background: ${({ $divider }) => $divider};
629
- opacity: 0.5;
630
- pointer-events: none;
631
- z-index: 0;
632
- }
633
- .readfirst-row:last-child::after {
634
- display: none;
635
- }
636
- .readfirst-row:hover {
637
- background: ${({ $hover }) => $hover};
638
- }
639
- .readfirst-row:focus-visible {
640
- outline: 2px solid ${({ $focus }) => $focus};
641
- outline-offset: -2px;
642
- background: ${({ $hover }) => $hover};
643
- }
644
- /* A hidden (not-yet-added) field surfaced by the search is dimmed. */
645
- .readfirst-row-hidden {
646
- opacity: 0.65;
647
- }
648
- /* The "N more fields" control IS a field row — same grid, same padding, same
649
- hover — so it lines up with the rows above instead of floating as a scrap
650
- of text in the box's corner. A dashed edge and a lower-contrast label are
651
- what say it is not itself a field: nothing here can be set.
652
-
653
- It spans both content columns because it has no label/value split, and it
654
- drops the inter-row hairline (the ::after rule) since it always sits last. */
655
- .readfirst-more-row {
656
- grid-template-columns: 1fr auto;
657
- border: 1px dashed ${({ $moreBorder }) => $moreBorder};
658
- background: transparent;
659
- width: 100%;
660
- text-align: left;
661
- font: inherit;
662
- color: inherit;
663
- /* The dashed edge replaces the hairline; two lines would read as a divider
664
- AND a border stacked. */
665
- margin-top: 2px;
666
- }
667
- .readfirst-more-row::after {
668
- display: none;
669
- }
670
- .readfirst-more-row:hover {
671
- background: ${({ $hover }) => $hover};
672
- border-style: solid;
673
- }
674
- .readfirst-more-row:focus-visible {
675
- outline: 2px solid ${({ $focus }) => $focus};
676
- outline-offset: -2px;
677
- }
678
- /* The chevron points the way the click goes: down to reveal, up to fold. */
679
- .readfirst-more-row .readfirst-more-chevron {
680
- transition: transform 0.15s ease;
681
- }
682
- .readfirst-more-row[aria-expanded='true'] .readfirst-more-chevron {
683
- transform: rotate(180deg);
684
- }
685
- /* A disabled field (schema disabled flag or unmet dependencies) is not a
686
- click target — no hover invite, not-allowed cursor; a lock replaces the
687
- pencil. */
688
- /* A disabled field reads dimmed (its name + value at 0.6) — clearly inactive. */
689
- .readfirst-row-disabled {
690
- cursor: not-allowed;
691
- opacity: 0.6;
692
- }
693
- .readfirst-row-disabled:hover {
694
- background: transparent;
695
- }
696
- /* Required-group linkage: hovering a member highlights every sibling row —
697
- just a background tint, no left stripe (that reads as an intent edge). */
698
- .readfirst-row-group-highlight {
699
- background: ${({ $focus }) => `${$focus}1f`};
700
- }
701
- .readfirst-row-flash {
702
- animation: readfirstRowFlash 1.4s ease;
703
- }
704
- @keyframes readfirstRowFlash {
705
- 0% {
706
- background: ${({ $focus }) => `${$focus}59`};
707
- }
708
- 100% {
709
- background: transparent;
710
- }
711
- }
712
- /* A scalar row being edited in place: the real editor replaces the value
713
- cell. The row stops being a click target (the editor owns the clicks) and
714
- keeps a constant active background. Vertical padding is tightened so the
715
- editor fits inside the same ~38px the read row occupies — switching into
716
- (and out of) inline editing must not shift the rows around it. */
717
- .readfirst-row-editing {
718
- cursor: default;
719
- /* Top-anchor the cells: with multi-line editors (e.g. allowed-values =
720
- input + picker), per-cell centring gives every control a different
721
- anchor. Instead everything aligns to the FIRST editor line — label and
722
- the ✓/↺ cluster get small offsets to sit optically centred on it. */
723
- align-items: start;
724
- background: ${({ $hover }) => $hover};
725
- /* No top padding (the per-cell nudges below anchor the editor to the first
726
- line), but a real BOTTOM padding so the editor never sits flush against
727
- the row's bottom edge — a tall input used to look clipped/unfinished. */
728
- padding-top: 0;
729
- padding-bottom: 9px;
730
- /* Tighter column gap: the editor's trailing template ⋮ and our ✓ should
731
- read as one control cluster, not two separated groups. */
732
- column-gap: 6px;
733
- }
734
- /* Centre each cell's content on the row's ~38px first-line band. The label
735
- text (+10) and the ✓/↺ cluster (+3) were already nudged, but the editor
736
- cell was not — so a single-line input sat ~3px above the buttons. A 32px
737
- control needs +3 to centre in 38px, so the editor gets the same offset and
738
- lines up with the buttons. (A multi-line editor's first line lands on the
739
- band too; its extra rows grow downward.) */
740
- .readfirst-row-editing > div:nth-child(1) {
741
- padding-top: 10px;
742
- }
743
- .readfirst-row-editing > div:nth-child(2) {
744
- padding-top: 3px;
745
- }
746
- .readfirst-row-editing > div:nth-child(3) {
747
- padding-top: 3px;
748
- }
749
- /* A read-only row is not a control. No pointer and no hover tint, because a
750
- click does nothing; and its value wraps in full — the row is the only
751
- rendering the value gets, so a line cut with an ellipsis would be the
752
- reader's whole answer. */
753
- .readfirst-row-read {
754
- cursor: default;
755
- }
756
- .readfirst-row-read:hover {
757
- background: transparent;
758
- }
759
- .readfirst-row-read .options-readfirst-valuetext {
760
- white-space: pre-wrap;
761
- overflow: visible;
762
- text-overflow: clip;
763
- overflow-wrap: anywhere;
764
- }
765
- .readfirst-row-editing:hover {
766
- background: ${({ $hover }) => $hover};
767
- }
768
-
769
- /* Narrow FORMS (phone / slim drawer): stack each row — label + actions share
770
- the first line, the value cell (or the inline editor) takes the full width
771
- beneath. The class is set from a measured wrap width (react-use useMeasure)
772
- rather than a viewport media query, so a slim desktop drawer stacks too.
773
- The 3 row children are placed explicitly:
774
- label (1,1) · actions (1,2) · value (2, span both). */
775
- /* Generous breathing room BETWEEN fields when stacked — far easier to scan and
776
- less overwhelming on a phone. */
777
- &.readfirst-narrow {
778
- --readfirst-row-gap: 18px;
779
- }
780
- &.readfirst-narrow .readfirst-row {
781
- grid-template-columns: minmax(0, 1fr) auto;
782
- gap: 2px 14px;
783
- position: relative;
784
- }
785
- &.readfirst-narrow .readfirst-row > :nth-child(1) {
786
- grid-column: 1;
787
- grid-row: 1;
788
- }
789
- &.readfirst-narrow .readfirst-row > :nth-child(3) {
790
- grid-column: 2;
791
- grid-row: 1;
792
- }
793
- &.readfirst-narrow .readfirst-row > :nth-child(2) {
794
- grid-column: 1 / -1;
795
- grid-row: 2;
796
- }
797
- /* Read (non-editing) rows: float the trailing actions (status dot + the
798
- hover-revealed delete/revert) out of the grid flow so a delete button can't
799
- inflate the first row and push the value down. They're pinned to a band the
800
- height of the LABEL line and vertically centred in it — so the dot always
801
- sits at the same place (centred on the field name), never the bare corner. */
802
- &.readfirst-narrow .readfirst-row:not(.readfirst-row-editing) > :nth-child(3) {
803
- position: absolute;
804
- top: 2px;
805
- right: 10px;
806
- height: 22px;
807
- }
808
- &.readfirst-narrow .readfirst-row:not(.readfirst-row-editing) > :nth-child(1) {
809
- padding-right: 46px;
810
- }
811
-
812
- /* Focus calm rows: NO recessed value surface and NO intent stripe. Row status
813
- is carried by the trailing status dot; message/preview panels keep their own
814
- intent backgrounds. The (now invisible) pseudo is retained only to preserve
815
- the block's positioning/stacking context that the required-group rail and its
816
- cluster nodes resolve against — removing it would unmoor them. */
817
- > *:not(.options-readfirst-card) {
818
- position: relative;
819
- }
820
- > *:not(.options-readfirst-card)::before {
821
- content: '';
822
- position: absolute;
823
- inset: 0;
824
- left: ${PANEL_LEFT_CSS};
825
- background: transparent;
826
- pointer-events: none;
827
- z-index: 0;
828
- }
829
- /* Content rides above the surface layer — except the cluster node, which is
830
- absolutely positioned in the gutter and must keep its own positioning. */
831
- > *:not(.options-readfirst-card) > *:not(.options-readfirst-node) {
832
- position: relative;
833
- z-index: 1;
834
- }
835
-
836
- /* (The required-group connection rail was removed — the "One of the below is
837
- required" box now carries the grouping.) */
838
-
839
- /* Tall rows top-anchor (overriding the row's centred default) so the label and
840
- dot stay on the value's FIRST line rather than floating to the vertical
841
- middle: .readfirst-row-info-open = a shown short_desc grows the LABEL;
842
- .readfirst-row-tall = message panels / a hash preview grow the VALUE cell. */
843
- .readfirst-row-info-open,
844
- .readfirst-row-tall {
845
- align-items: start;
846
- }
847
- /* Narrow stacks label-over-value: the value aligns flush UNDER the label (no
848
- indent), like the Focus prototype. */
849
- &.readfirst-narrow .readfirst-row > :nth-child(2) {
850
- padding-left: 0;
851
- }
852
- &.readfirst-narrow > *:not(.options-readfirst-card)::before {
853
- left: 0;
854
- }
855
- /* Touch layouts have no hover: a slot reserved for the hover-revealed edit
856
- pencil is permanent dead space that insets every chip from the edge —
857
- drop it (rows are tap-to-edit; the lock/add slots stay, they're static). */
858
- &.readfirst-narrow .options-readfirst-trailing-hover-only {
859
- /* !important: the slot carries an inline display for the desktop layout. */
860
- display: none !important;
861
- }
862
- /* Stacked rows: keep them tight (match the Focus prototype). The min-height is
863
- dropped so a 2-line label+value row sizes to its content instead of being
864
- padded out to 38px. The in-place editor keeps zero padding (below). */
865
- &.readfirst-narrow .readfirst-row {
866
- padding-top: 2px;
867
- padding-bottom: 2px;
868
- min-height: 0;
869
- }
870
- &.readfirst-narrow .readfirst-row-editing {
871
- padding-top: 0;
872
- padding-bottom: 0;
873
- }
874
- `;
875
-
876
- // One absorbed sibling, rendered inside its host row's container rather than
877
- // on a row of its own (see `absorb_fields`). The pair this exists for is a code
878
- // editor and its language: reading them as two unrelated rows one above the
879
- // other said they were separate decisions, and they are not.
880
- //
881
- // Laid out as label-then-control on one line so it reads as a property of the
882
- // element it now sits in, and separated from the editor below it by a hairline
883
- // rather than a gap — the two share one container, so the seam has to look like
884
- // a division inside it and not like two stacked things.
885
- export const StyledAbsorbedField = styled.div`
886
- display: flex;
887
- align-items: center;
888
- gap: 10px;
889
- min-width: 0;
890
- padding-bottom: 8px;
891
- margin-bottom: 8px;
892
- border-bottom: 1px solid ${({ theme }) => `${theme.main}22`};
893
- `;
894
-
895
- export const StyledAbsorbedLabel = styled(ReqoreP)`
896
- flex: 0 0 auto;
897
- margin: 0;
898
- `;