@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.
Files changed (834) hide show
  1. package/README.md +53 -1
  2. package/dist/components/Description/AllowedValuesHelp.d.ts +20 -0
  3. package/dist/components/Description/AllowedValuesHelp.d.ts.map +1 -0
  4. package/dist/components/Description/AllowedValuesHelp.js +86 -0
  5. package/dist/components/Description/AllowedValuesHelp.js.map +1 -0
  6. package/dist/components/Description/describedControl.d.ts +54 -0
  7. package/dist/components/Description/describedControl.d.ts.map +1 -0
  8. package/dist/components/Description/describedControl.js +81 -0
  9. package/dist/components/Description/describedControl.js.map +1 -0
  10. package/dist/components/Description/index.d.ts.map +1 -1
  11. package/dist/components/Description/index.js +3 -2
  12. package/dist/components/Description/index.js.map +1 -1
  13. package/dist/components/colorValue/colorValue.d.ts +59 -0
  14. package/dist/components/colorValue/colorValue.d.ts.map +1 -0
  15. package/dist/components/colorValue/colorValue.js +245 -0
  16. package/dist/components/colorValue/colorValue.js.map +1 -0
  17. package/dist/components/colorValue/index.d.ts +34 -0
  18. package/dist/components/colorValue/index.d.ts.map +1 -0
  19. package/dist/components/colorValue/index.js +136 -0
  20. package/dist/components/colorValue/index.js.map +1 -0
  21. package/dist/components/colorValue/labels.d.ts +12 -0
  22. package/dist/components/colorValue/labels.d.ts.map +1 -0
  23. package/dist/components/colorValue/labels.js +11 -0
  24. package/dist/components/colorValue/labels.js.map +1 -0
  25. package/dist/components/composer/Composer.d.ts +1 -1
  26. package/dist/components/composer/Composer.d.ts.map +1 -1
  27. package/dist/components/composer/Composer.js +2 -2
  28. package/dist/components/composer/Composer.js.map +1 -1
  29. package/dist/components/dpqlEditor/DpqlEditor.d.ts.map +1 -1
  30. package/dist/components/dpqlEditor/DpqlEditor.js +41 -8
  31. package/dist/components/dpqlEditor/DpqlEditor.js.map +1 -1
  32. package/dist/components/dpqlEditor/dpqlCompletions.d.ts +35 -0
  33. package/dist/components/dpqlEditor/dpqlCompletions.d.ts.map +1 -0
  34. package/dist/components/dpqlEditor/dpqlCompletions.js +122 -0
  35. package/dist/components/dpqlEditor/dpqlCompletions.js.map +1 -0
  36. package/dist/components/dpqlEditor/dpqlHelpers.d.ts +47 -5
  37. package/dist/components/dpqlEditor/dpqlHelpers.d.ts.map +1 -1
  38. package/dist/components/dpqlEditor/dpqlHelpers.js +390 -62
  39. package/dist/components/dpqlEditor/dpqlHelpers.js.map +1 -1
  40. package/dist/components/dpqlEditor/dpqlInserter.d.ts.map +1 -1
  41. package/dist/components/dpqlEditor/dpqlInserter.js +59 -29
  42. package/dist/components/dpqlEditor/dpqlInserter.js.map +1 -1
  43. package/dist/components/dpqlEditor/dpqlTags.d.ts +17 -7
  44. package/dist/components/dpqlEditor/dpqlTags.d.ts.map +1 -1
  45. package/dist/components/dpqlEditor/dpqlTags.js +44 -17
  46. package/dist/components/dpqlEditor/dpqlTags.js.map +1 -1
  47. package/dist/components/dpqlEditor/types.d.ts +61 -8
  48. package/dist/components/dpqlEditor/types.d.ts.map +1 -1
  49. package/dist/components/dpqlEditor/useDpqlSession.d.ts +2 -2
  50. package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
  51. package/dist/components/dpqlEditor/useDpqlSession.js +16 -7
  52. package/dist/components/dpqlEditor/useDpqlSession.js.map +1 -1
  53. package/dist/components/form/engine/CompactRow.d.ts.map +1 -1
  54. package/dist/components/form/engine/CompactRow.js +327 -123
  55. package/dist/components/form/engine/CompactRow.js.map +1 -1
  56. package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
  57. package/dist/components/form/engine/CompactToolbar.js +29 -3
  58. package/dist/components/form/engine/CompactToolbar.js.map +1 -1
  59. package/dist/components/form/engine/FormEngine.d.ts +66 -11
  60. package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
  61. package/dist/components/form/engine/FormEngine.js +597 -173
  62. package/dist/components/form/engine/FormEngine.js.map +1 -1
  63. package/dist/components/form/engine/HiddenFieldsNote.d.ts +28 -0
  64. package/dist/components/form/engine/HiddenFieldsNote.d.ts.map +1 -0
  65. package/dist/components/form/engine/HiddenFieldsNote.js +32 -0
  66. package/dist/components/form/engine/HiddenFieldsNote.js.map +1 -0
  67. package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
  68. package/dist/components/form/engine/OptionFieldMessages.js +25 -3
  69. package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
  70. package/dist/components/form/engine/OptionsHelpDialog.d.ts.map +1 -1
  71. package/dist/components/form/engine/OptionsHelpDialog.js +19 -2
  72. package/dist/components/form/engine/OptionsHelpDialog.js.map +1 -1
  73. package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts +2 -2
  74. package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
  75. package/dist/components/form/engine/_structuredData/SchemaDataView.js +12 -6
  76. package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
  77. package/dist/components/form/engine/compactRowContext.d.ts +32 -1
  78. package/dist/components/form/engine/compactRowContext.d.ts.map +1 -1
  79. package/dist/components/form/engine/compactRowContext.js.map +1 -1
  80. package/dist/components/form/engine/compactRowStyles.d.ts +22 -10
  81. package/dist/components/form/engine/compactRowStyles.d.ts.map +1 -1
  82. package/dist/components/form/engine/compactRowStyles.js +53 -39
  83. package/dist/components/form/engine/compactRowStyles.js.map +1 -1
  84. package/dist/components/form/engine/compactToolbarColors.d.ts +16 -0
  85. package/dist/components/form/engine/compactToolbarColors.d.ts.map +1 -0
  86. package/dist/components/form/engine/compactToolbarColors.js +21 -0
  87. package/dist/components/form/engine/compactToolbarColors.js.map +1 -0
  88. package/dist/components/form/engine/inheritProps.d.ts +29 -0
  89. package/dist/components/form/engine/inheritProps.d.ts.map +1 -0
  90. package/dist/components/form/engine/inheritProps.js +43 -0
  91. package/dist/components/form/engine/inheritProps.js.map +1 -0
  92. package/dist/components/form/engine/operatorSummary.d.ts +26 -0
  93. package/dist/components/form/engine/operatorSummary.d.ts.map +1 -0
  94. package/dist/components/form/engine/operatorSummary.js +35 -0
  95. package/dist/components/form/engine/operatorSummary.js.map +1 -0
  96. package/dist/components/form/engine/readFirst.d.ts +24 -8
  97. package/dist/components/form/engine/readFirst.d.ts.map +1 -1
  98. package/dist/components/form/engine/readFirst.js +77 -109
  99. package/dist/components/form/engine/readFirst.js.map +1 -1
  100. package/dist/components/form/engine/readFirstColors.d.ts +30 -0
  101. package/dist/components/form/engine/readFirstColors.d.ts.map +1 -0
  102. package/dist/components/form/engine/readFirstColors.js +51 -0
  103. package/dist/components/form/engine/readFirstColors.js.map +1 -0
  104. package/dist/components/form/engine/rowFocus.d.ts +2 -0
  105. package/dist/components/form/engine/rowFocus.d.ts.map +1 -1
  106. package/dist/components/form/engine/rowFocus.js +26 -3
  107. package/dist/components/form/engine/rowFocus.js.map +1 -1
  108. package/dist/components/form/engine/typeChoices.d.ts +1 -1
  109. package/dist/components/form/engine/variants/VariantCalmTable.d.ts.map +1 -1
  110. package/dist/components/form/engine/variants/VariantCalmTable.js +2 -1
  111. package/dist/components/form/engine/variants/VariantCalmTable.js.map +1 -1
  112. package/dist/components/form/engine/variants/VariantCards.d.ts.map +1 -1
  113. package/dist/components/form/engine/variants/VariantCards.js +2 -1
  114. package/dist/components/form/engine/variants/VariantCards.js.map +1 -1
  115. package/dist/components/form/engine/variants/VariantFocus.js +1 -1
  116. package/dist/components/form/engine/variants/VariantFocus.js.map +1 -1
  117. package/dist/components/form/engine/variants/VariantMinimal.d.ts.map +1 -1
  118. package/dist/components/form/engine/variants/VariantMinimal.js +2 -1
  119. package/dist/components/form/engine/variants/VariantMinimal.js.map +1 -1
  120. package/dist/components/form/engine/variants/variantParts.d.ts +1 -1
  121. package/dist/components/form/engine/variants/variantParts.d.ts.map +1 -1
  122. package/dist/components/form/engine/variants/variantParts.js +25 -17
  123. package/dist/components/form/engine/variants/variantParts.js.map +1 -1
  124. package/dist/components/form/expressions/DpqlRendering.d.ts +1 -1
  125. package/dist/components/form/expressions/DpqlRendering.d.ts.map +1 -1
  126. package/dist/components/form/expressions/DpqlRendering.js +7 -6
  127. package/dist/components/form/expressions/DpqlRendering.js.map +1 -1
  128. package/dist/components/form/expressions/ExpressionField.d.ts +66 -3
  129. package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
  130. package/dist/components/form/expressions/ExpressionField.js +475 -100
  131. package/dist/components/form/expressions/ExpressionField.js.map +1 -1
  132. package/dist/components/form/expressions/argumentPresence.d.ts +14 -0
  133. package/dist/components/form/expressions/argumentPresence.d.ts.map +1 -1
  134. package/dist/components/form/expressions/argumentPresence.js +16 -1
  135. package/dist/components/form/expressions/argumentPresence.js.map +1 -1
  136. package/dist/components/form/expressions/builder/argumentDetail.d.ts.map +1 -1
  137. package/dist/components/form/expressions/builder/argumentDetail.js +4 -1
  138. package/dist/components/form/expressions/builder/argumentDetail.js.map +1 -1
  139. package/dist/components/form/expressions/builder/argumentLabel.d.ts.map +1 -1
  140. package/dist/components/form/expressions/builder/argumentLabel.js +27 -9
  141. package/dist/components/form/expressions/builder/argumentLabel.js.map +1 -1
  142. package/dist/components/form/expressions/builder/argumentWrapper.d.ts.map +1 -1
  143. package/dist/components/form/expressions/builder/argumentWrapper.js +3 -1
  144. package/dist/components/form/expressions/builder/argumentWrapper.js.map +1 -1
  145. package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.d.ts.map +1 -1
  146. package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js +5 -4
  147. package/dist/components/form/expressions/builder/confirmMismatchedTypesModal.js.map +1 -1
  148. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts +1 -1
  149. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.d.ts.map +1 -1
  150. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js +6 -3
  151. package/dist/components/form/expressions/builder/confirmUnsupportedTypeModal.js.map +1 -1
  152. package/dist/components/form/expressions/builder/index.d.ts +29 -2
  153. package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
  154. package/dist/components/form/expressions/builder/index.js +161 -78
  155. package/dist/components/form/expressions/builder/index.js.map +1 -1
  156. package/dist/components/form/expressions/builder/item.d.ts +6 -2
  157. package/dist/components/form/expressions/builder/item.d.ts.map +1 -1
  158. package/dist/components/form/expressions/builder/item.js +19 -5
  159. package/dist/components/form/expressions/builder/item.js.map +1 -1
  160. package/dist/components/form/expressions/builder/renderTemplate.js +1 -1
  161. package/dist/components/form/expressions/builder/renderTemplate.js.map +1 -1
  162. package/dist/components/form/expressions/dpqlMockRecordPath.d.ts +11 -0
  163. package/dist/components/form/expressions/dpqlMockRecordPath.d.ts.map +1 -0
  164. package/dist/components/form/expressions/dpqlMockRecordPath.js +254 -0
  165. package/dist/components/form/expressions/dpqlMockRecordPath.js.map +1 -0
  166. package/dist/components/form/expressions/expressionOperands.d.ts +16 -0
  167. package/dist/components/form/expressions/expressionOperands.d.ts.map +1 -0
  168. package/dist/components/form/expressions/expressionOperands.js +97 -0
  169. package/dist/components/form/expressions/expressionOperands.js.map +1 -0
  170. package/dist/components/form/expressions/fieldPath.d.ts +24 -0
  171. package/dist/components/form/expressions/fieldPath.d.ts.map +1 -0
  172. package/dist/components/form/expressions/fieldPath.js +152 -0
  173. package/dist/components/form/expressions/fieldPath.js.map +1 -0
  174. package/dist/components/form/expressions/loneValue.d.ts +17 -0
  175. package/dist/components/form/expressions/loneValue.d.ts.map +1 -0
  176. package/dist/components/form/expressions/loneValue.js +33 -0
  177. package/dist/components/form/expressions/loneValue.js.map +1 -0
  178. package/dist/components/form/expressions/mockExpressions.d.ts.map +1 -1
  179. package/dist/components/form/expressions/mockExpressions.js +22 -5
  180. package/dist/components/form/expressions/mockExpressions.js.map +1 -1
  181. package/dist/components/form/expressions/renderExpressionToText.d.ts +2 -0
  182. package/dist/components/form/expressions/renderExpressionToText.d.ts.map +1 -1
  183. package/dist/components/form/expressions/renderExpressionToText.js +43 -10
  184. package/dist/components/form/expressions/renderExpressionToText.js.map +1 -1
  185. package/dist/components/form/expressions/textOfExpression.d.ts +18 -0
  186. package/dist/components/form/expressions/textOfExpression.d.ts.map +1 -0
  187. package/dist/components/form/expressions/textOfExpression.js +49 -0
  188. package/dist/components/form/expressions/textOfExpression.js.map +1 -0
  189. package/dist/components/form/expressions/types.d.ts +7 -0
  190. package/dist/components/form/expressions/types.d.ts.map +1 -1
  191. package/dist/components/form/expressions/types.js +6 -1
  192. package/dist/components/form/expressions/types.js.map +1 -1
  193. package/dist/components/form/expressions/useExpressionType.d.ts +26 -0
  194. package/dist/components/form/expressions/useExpressionType.d.ts.map +1 -0
  195. package/dist/components/form/expressions/useExpressionType.js +181 -0
  196. package/dist/components/form/expressions/useExpressionType.js.map +1 -0
  197. package/dist/components/form/expressions/useRenderExpression.d.ts.map +1 -1
  198. package/dist/components/form/expressions/useRenderExpression.js +13 -9
  199. package/dist/components/form/expressions/useRenderExpression.js.map +1 -1
  200. package/dist/components/form/expressions/wildcardExpressions.d.ts +27 -0
  201. package/dist/components/form/expressions/wildcardExpressions.d.ts.map +1 -0
  202. package/dist/components/form/expressions/wildcardExpressions.js +101 -0
  203. package/dist/components/form/expressions/wildcardExpressions.js.map +1 -0
  204. package/dist/components/form/fields/Field.d.ts.map +1 -1
  205. package/dist/components/form/fields/Field.js +43 -20
  206. package/dist/components/form/fields/Field.js.map +1 -1
  207. package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
  208. package/dist/components/form/fields/allowed-values/AllowedValues.js +39 -6
  209. package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
  210. package/dist/components/form/fields/allowed-values/choicePicture.d.ts +37 -0
  211. package/dist/components/form/fields/allowed-values/choicePicture.d.ts.map +1 -0
  212. package/dist/components/form/fields/allowed-values/choicePicture.js +64 -0
  213. package/dist/components/form/fields/allowed-values/choicePicture.js.map +1 -0
  214. package/dist/components/form/fields/array/ArrayAuto.d.ts.map +1 -1
  215. package/dist/components/form/fields/array/ArrayAuto.js +24 -0
  216. package/dist/components/form/fields/array/ArrayAuto.js.map +1 -1
  217. package/dist/components/form/fields/array/ArrayAutoField.d.ts.map +1 -1
  218. package/dist/components/form/fields/array/ArrayAutoField.js +36 -13
  219. package/dist/components/form/fields/array/ArrayAutoField.js.map +1 -1
  220. package/dist/components/form/fields/auto/AutoFormField.d.ts +20 -1
  221. package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
  222. package/dist/components/form/fields/auto/AutoFormField.js +91 -53
  223. package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
  224. package/dist/components/form/fields/auto/hostEditorValue.d.ts +30 -0
  225. package/dist/components/form/fields/auto/hostEditorValue.d.ts.map +1 -0
  226. package/dist/components/form/fields/auto/hostEditorValue.js +53 -0
  227. package/dist/components/form/fields/auto/hostEditorValue.js.map +1 -0
  228. package/dist/components/form/fields/binary/Binary.d.ts.map +1 -1
  229. package/dist/components/form/fields/binary/Binary.js +23 -3
  230. package/dist/components/form/fields/binary/Binary.js.map +1 -1
  231. package/dist/components/form/fields/boolean/Boolean.d.ts +5 -0
  232. package/dist/components/form/fields/boolean/Boolean.d.ts.map +1 -1
  233. package/dist/components/form/fields/boolean/Boolean.js +9 -1
  234. package/dist/components/form/fields/boolean/Boolean.js.map +1 -1
  235. package/dist/components/form/fields/color/Color.d.ts +103 -16
  236. package/dist/components/form/fields/color/Color.d.ts.map +1 -1
  237. package/dist/components/form/fields/color/Color.js +616 -16
  238. package/dist/components/form/fields/color/Color.js.map +1 -1
  239. package/dist/components/form/fields/emittedValues.d.ts +34 -3
  240. package/dist/components/form/fields/emittedValues.d.ts.map +1 -1
  241. package/dist/components/form/fields/emittedValues.js +24 -1
  242. package/dist/components/form/fields/emittedValues.js.map +1 -1
  243. package/dist/components/form/fields/file/File.d.ts +1 -1
  244. package/dist/components/form/fields/file/File.d.ts.map +1 -1
  245. package/dist/components/form/fields/file/File.js +4 -2
  246. package/dist/components/form/fields/file/File.js.map +1 -1
  247. package/dist/components/form/fields/long-string/LongString.d.ts.map +1 -1
  248. package/dist/components/form/fields/long-string/LongString.js +29 -8
  249. package/dist/components/form/fields/long-string/LongString.js.map +1 -1
  250. package/dist/components/form/fields/markdown/MarkdownView.js +1 -1
  251. package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts.map +1 -1
  252. package/dist/components/form/fields/multi-select/MultiSelectFormField.js +13 -9
  253. package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
  254. package/dist/components/form/fields/number/Number.d.ts +6 -0
  255. package/dist/components/form/fields/number/Number.d.ts.map +1 -1
  256. package/dist/components/form/fields/number/Number.js +41 -6
  257. package/dist/components/form/fields/number/Number.js.map +1 -1
  258. package/dist/components/form/fields/object/Object.d.ts +1 -1
  259. package/dist/components/form/fields/object/Object.d.ts.map +1 -1
  260. package/dist/components/form/fields/object/Object.js +4 -2
  261. package/dist/components/form/fields/object/Object.js.map +1 -1
  262. package/dist/components/form/fields/pendingEdit.d.ts +52 -0
  263. package/dist/components/form/fields/pendingEdit.d.ts.map +1 -0
  264. package/dist/components/form/fields/pendingEdit.js +79 -0
  265. package/dist/components/form/fields/pendingEdit.js.map +1 -0
  266. package/dist/components/form/fields/radio-group/RadioGroup.d.ts.map +1 -1
  267. package/dist/components/form/fields/radio-group/RadioGroup.js +4 -3
  268. package/dist/components/form/fields/radio-group/RadioGroup.js.map +1 -1
  269. package/dist/components/form/fields/rich-text/RichText.d.ts +8 -1
  270. package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
  271. package/dist/components/form/fields/rich-text/RichText.js +211 -85
  272. package/dist/components/form/fields/rich-text/RichText.js.map +1 -1
  273. package/dist/components/form/fields/rich-text/useTemplateTags.d.ts +18 -0
  274. package/dist/components/form/fields/rich-text/useTemplateTags.d.ts.map +1 -0
  275. package/dist/components/form/fields/rich-text/useTemplateTags.js +77 -0
  276. package/dist/components/form/fields/rich-text/useTemplateTags.js.map +1 -0
  277. package/dist/components/form/fields/schema-definition/CatalogLeafForm.d.ts.map +1 -1
  278. package/dist/components/form/fields/schema-definition/CatalogLeafForm.js +4 -1
  279. package/dist/components/form/fields/schema-definition/CatalogLeafForm.js.map +1 -1
  280. package/dist/components/form/fields/schema-definition/CatalogNodeEditor.d.ts.map +1 -1
  281. package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js +20 -5
  282. package/dist/components/form/fields/schema-definition/CatalogNodeEditor.js.map +1 -1
  283. package/dist/components/form/fields/schema-definition/TableEditor.d.ts.map +1 -1
  284. package/dist/components/form/fields/schema-definition/TableEditor.js +10 -2
  285. package/dist/components/form/fields/schema-definition/TableEditor.js.map +1 -1
  286. package/dist/components/form/fields/schema-definition/index.d.ts.map +1 -1
  287. package/dist/components/form/fields/schema-definition/index.js +8 -4
  288. package/dist/components/form/fields/schema-definition/index.js.map +1 -1
  289. package/dist/components/form/fields/select/Select.d.ts +10 -1
  290. package/dist/components/form/fields/select/Select.d.ts.map +1 -1
  291. package/dist/components/form/fields/select/Select.js +28 -14
  292. package/dist/components/form/fields/select/Select.js.map +1 -1
  293. package/dist/components/form/fields/select/SelectCollection.d.ts +5 -0
  294. package/dist/components/form/fields/select/SelectCollection.d.ts.map +1 -1
  295. package/dist/components/form/fields/select/SelectCollection.js +25 -12
  296. package/dist/components/form/fields/select/SelectCollection.js.map +1 -1
  297. package/dist/components/form/fields/select/unavailableRow.d.ts +23 -0
  298. package/dist/components/form/fields/select/unavailableRow.d.ts.map +1 -0
  299. package/dist/components/form/fields/select/unavailableRow.js +55 -0
  300. package/dist/components/form/fields/select/unavailableRow.js.map +1 -0
  301. package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts +11 -5
  302. package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts.map +1 -1
  303. package/dist/components/form/fields/template/ReadOnlyTemplateTag.js +21 -5
  304. package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
  305. package/dist/components/form/fields/template/TemplateBrowser.d.ts +22 -0
  306. package/dist/components/form/fields/template/TemplateBrowser.d.ts.map +1 -0
  307. package/dist/components/form/fields/template/TemplateBrowser.js +54 -0
  308. package/dist/components/form/fields/template/TemplateBrowser.js.map +1 -0
  309. package/dist/components/form/fields/template/TemplateField.d.ts +103 -1
  310. package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
  311. package/dist/components/form/fields/template/TemplateField.js +652 -104
  312. package/dist/components/form/fields/template/TemplateField.js.map +1 -1
  313. package/dist/components/form/fields/template/TemplateText.d.ts +0 -17
  314. package/dist/components/form/fields/template/TemplateText.d.ts.map +1 -1
  315. package/dist/components/form/fields/template/TemplateText.js +22 -16
  316. package/dist/components/form/fields/template/TemplateText.js.map +1 -1
  317. package/dist/components/form/fields/template/referenceNames.d.ts +63 -0
  318. package/dist/components/form/fields/template/referenceNames.d.ts.map +1 -0
  319. package/dist/components/form/fields/template/referenceNames.js +69 -0
  320. package/dist/components/form/fields/template/referenceNames.js.map +1 -0
  321. package/dist/components/form/fields/template/writtenAsText.d.ts +61 -0
  322. package/dist/components/form/fields/template/writtenAsText.d.ts.map +1 -0
  323. package/dist/components/form/fields/template/writtenAsText.js +204 -0
  324. package/dist/components/form/fields/template/writtenAsText.js.map +1 -0
  325. package/dist/components/form/index.d.ts +11 -0
  326. package/dist/components/form/index.d.ts.map +1 -1
  327. package/dist/components/form/index.js +24 -1
  328. package/dist/components/form/index.js.map +1 -1
  329. package/dist/components/form/typeSentenceForm.d.ts +11 -0
  330. package/dist/components/form/typeSentenceForm.d.ts.map +1 -0
  331. package/dist/components/form/typeSentenceForm.js +40 -0
  332. package/dist/components/form/typeSentenceForm.js.map +1 -0
  333. package/dist/components/imageLightbox/ImageLightbox.d.ts.map +1 -1
  334. package/dist/components/imageLightbox/ImageLightbox.js +19 -7
  335. package/dist/components/imageLightbox/ImageLightbox.js.map +1 -1
  336. package/dist/components/log/Log.d.ts.map +1 -1
  337. package/dist/components/log/Log.js +16 -8
  338. package/dist/components/log/Log.js.map +1 -1
  339. package/dist/components/menu/Menu.d.ts.map +1 -1
  340. package/dist/components/menu/Menu.js +19 -10
  341. package/dist/components/menu/Menu.js.map +1 -1
  342. package/dist/components/smartEditor/CompletionMenu.d.ts +45 -0
  343. package/dist/components/smartEditor/CompletionMenu.d.ts.map +1 -0
  344. package/dist/components/smartEditor/CompletionMenu.js +207 -0
  345. package/dist/components/smartEditor/CompletionMenu.js.map +1 -0
  346. package/dist/components/smartEditor/MarkdownDoc.d.ts +1 -1
  347. package/dist/components/smartEditor/MarkdownDoc.js +3 -3
  348. package/dist/components/smartEditor/MarkdownDoc.js.map +1 -1
  349. package/dist/components/smartEditor/SmartEditor.d.ts.map +1 -1
  350. package/dist/components/smartEditor/SmartEditor.js +366 -187
  351. package/dist/components/smartEditor/SmartEditor.js.map +1 -1
  352. package/dist/components/smartEditor/completionStyle.d.ts +27 -0
  353. package/dist/components/smartEditor/completionStyle.d.ts.map +1 -0
  354. package/dist/components/smartEditor/completionStyle.js +68 -0
  355. package/dist/components/smartEditor/completionStyle.js.map +1 -0
  356. package/dist/components/smartEditor/index.d.ts +5 -1
  357. package/dist/components/smartEditor/index.d.ts.map +1 -1
  358. package/dist/components/smartEditor/index.js +19 -1
  359. package/dist/components/smartEditor/index.js.map +1 -1
  360. package/dist/components/smartEditor/templateCompletions.d.ts +38 -0
  361. package/dist/components/smartEditor/templateCompletions.d.ts.map +1 -0
  362. package/dist/components/smartEditor/templateCompletions.js +126 -0
  363. package/dist/components/smartEditor/templateCompletions.js.map +1 -0
  364. package/dist/components/smartEditor/typedReferences.d.ts +21 -0
  365. package/dist/components/smartEditor/typedReferences.d.ts.map +1 -0
  366. package/dist/components/smartEditor/typedReferences.js +82 -0
  367. package/dist/components/smartEditor/typedReferences.js.map +1 -0
  368. package/dist/components/smartEditor/types.d.ts +66 -2
  369. package/dist/components/smartEditor/types.d.ts.map +1 -1
  370. package/dist/components/smartEditor/useLspAutocomplete.d.ts +62 -2
  371. package/dist/components/smartEditor/useLspAutocomplete.d.ts.map +1 -1
  372. package/dist/components/smartEditor/useLspAutocomplete.js +345 -146
  373. package/dist/components/smartEditor/useLspAutocomplete.js.map +1 -1
  374. package/dist/components/smartEditor/useLspHover.d.ts +33 -7
  375. package/dist/components/smartEditor/useLspHover.d.ts.map +1 -1
  376. package/dist/components/smartEditor/useLspHover.js +351 -35
  377. package/dist/components/smartEditor/useLspHover.js.map +1 -1
  378. package/dist/components/smartEditor/useLspSemanticTokens.js +1 -1
  379. package/dist/components/smartEditor/useLspSemanticTokens.js.map +1 -1
  380. package/dist/components/smartEditor/useLspSession.d.ts +6 -0
  381. package/dist/components/smartEditor/useLspSession.d.ts.map +1 -1
  382. package/dist/components/smartEditor/useLspSession.js +7 -6
  383. package/dist/components/smartEditor/useLspSession.js.map +1 -1
  384. package/dist/components/smartEditor/useLspSignatureHelp.d.ts.map +1 -1
  385. package/dist/components/smartEditor/useLspSignatureHelp.js +6 -11
  386. package/dist/components/smartEditor/useLspSignatureHelp.js.map +1 -1
  387. package/dist/components/supportTicket/AttachmentChips.d.ts.map +1 -1
  388. package/dist/components/supportTicket/AttachmentChips.js +15 -5
  389. package/dist/components/supportTicket/AttachmentChips.js.map +1 -1
  390. package/dist/components/supportTicket/ReferencePicker.d.ts +9 -2
  391. package/dist/components/supportTicket/ReferencePicker.d.ts.map +1 -1
  392. package/dist/components/supportTicket/ReferencePicker.js +27 -6
  393. package/dist/components/supportTicket/ReferencePicker.js.map +1 -1
  394. package/dist/components/supportTicket/TicketHeader.d.ts +3 -4
  395. package/dist/components/supportTicket/TicketHeader.d.ts.map +1 -1
  396. package/dist/components/supportTicket/TicketHeader.js +20 -2
  397. package/dist/components/supportTicket/TicketHeader.js.map +1 -1
  398. package/dist/components/supportTicket/TicketMetaTags.d.ts +1 -1
  399. package/dist/components/ticketReferences/TicketReferences.d.ts.map +1 -1
  400. package/dist/components/ticketReferences/TicketReferences.js +9 -4
  401. package/dist/components/ticketReferences/TicketReferences.js.map +1 -1
  402. package/dist/components/ticketThread/TicketThread.d.ts.map +1 -1
  403. package/dist/components/ticketThread/TicketThread.js +38 -13
  404. package/dist/components/ticketThread/TicketThread.js.map +1 -1
  405. package/dist/helpers/allowedValues.d.ts +21 -0
  406. package/dist/helpers/allowedValues.d.ts.map +1 -1
  407. package/dist/helpers/allowedValues.js +40 -1
  408. package/dist/helpers/allowedValues.js.map +1 -1
  409. package/dist/helpers/descriptionTooltip.d.ts +46 -0
  410. package/dist/helpers/descriptionTooltip.d.ts.map +1 -0
  411. package/dist/helpers/descriptionTooltip.js +76 -0
  412. package/dist/helpers/descriptionTooltip.js.map +1 -0
  413. package/dist/helpers/domProps.d.ts +5 -0
  414. package/dist/helpers/domProps.d.ts.map +1 -0
  415. package/dist/helpers/domProps.js +47 -0
  416. package/dist/helpers/domProps.js.map +1 -0
  417. package/dist/helpers/expressions.d.ts +107 -2
  418. package/dist/helpers/expressions.d.ts.map +1 -1
  419. package/dist/helpers/expressions.js +223 -8
  420. package/dist/helpers/expressions.js.map +1 -1
  421. package/dist/helpers/hoveringPointer.d.ts +26 -0
  422. package/dist/helpers/hoveringPointer.d.ts.map +1 -0
  423. package/dist/helpers/hoveringPointer.js +29 -0
  424. package/dist/helpers/hoveringPointer.js.map +1 -0
  425. package/dist/helpers/markdownText.d.ts +14 -0
  426. package/dist/helpers/markdownText.d.ts.map +1 -0
  427. package/dist/helpers/markdownText.js +160 -0
  428. package/dist/helpers/markdownText.js.map +1 -0
  429. package/dist/helpers/noDescription.d.ts +9 -0
  430. package/dist/helpers/noDescription.d.ts.map +1 -0
  431. package/dist/helpers/noDescription.js +13 -0
  432. package/dist/helpers/noDescription.js.map +1 -0
  433. package/dist/helpers/optionUiTypes.d.ts +2 -2
  434. package/dist/helpers/qorusTypeCatalogue.d.ts +85 -0
  435. package/dist/helpers/qorusTypeCatalogue.d.ts.map +1 -0
  436. package/dist/helpers/qorusTypeCatalogue.js +301 -0
  437. package/dist/helpers/qorusTypeCatalogue.js.map +1 -0
  438. package/dist/helpers/readableColors.d.ts +36 -0
  439. package/dist/helpers/readableColors.d.ts.map +1 -0
  440. package/dist/helpers/readableColors.js +116 -0
  441. package/dist/helpers/readableColors.js.map +1 -0
  442. package/dist/helpers/recordFieldReference.d.ts +15 -0
  443. package/dist/helpers/recordFieldReference.d.ts.map +1 -0
  444. package/dist/helpers/recordFieldReference.js +89 -0
  445. package/dist/helpers/recordFieldReference.js.map +1 -0
  446. package/dist/helpers/templateItems.d.ts +2 -2
  447. package/dist/helpers/templateItems.d.ts.map +1 -1
  448. package/dist/helpers/templateItems.js +6 -4
  449. package/dist/helpers/templateItems.js.map +1 -1
  450. package/dist/helpers/templateText.d.ts +1 -0
  451. package/dist/helpers/templateText.d.ts.map +1 -1
  452. package/dist/helpers/templateText.js +7 -3
  453. package/dist/helpers/templateText.js.map +1 -1
  454. package/dist/helpers/templates.d.ts +68 -14
  455. package/dist/helpers/templates.d.ts.map +1 -1
  456. package/dist/helpers/templates.js +210 -24
  457. package/dist/helpers/templates.js.map +1 -1
  458. package/dist/helpers/validations.d.ts +28 -1
  459. package/dist/helpers/validations.d.ts.map +1 -1
  460. package/dist/helpers/validations.js +166 -37
  461. package/dist/helpers/validations.js.map +1 -1
  462. package/dist/helpers/webLink.d.ts +8 -0
  463. package/dist/helpers/webLink.d.ts.map +1 -0
  464. package/dist/helpers/webLink.js +29 -0
  465. package/dist/helpers/webLink.js.map +1 -0
  466. package/dist/hooks/useQorusTypes.d.ts +7 -15
  467. package/dist/hooks/useQorusTypes.d.ts.map +1 -1
  468. package/dist/hooks/useQorusTypes.js +25 -166
  469. package/dist/hooks/useQorusTypes.js.map +1 -1
  470. package/dist/hooks/useReadableIntentShade.d.ts +9 -0
  471. package/dist/hooks/useReadableIntentShade.d.ts.map +1 -0
  472. package/dist/hooks/useReadableIntentShade.js +23 -0
  473. package/dist/hooks/useReadableIntentShade.js.map +1 -0
  474. package/dist/hooks/useReadableOpacity.d.ts +6 -0
  475. package/dist/hooks/useReadableOpacity.d.ts.map +1 -0
  476. package/dist/hooks/useReadableOpacity.js +17 -0
  477. package/dist/hooks/useReadableOpacity.js.map +1 -0
  478. package/dist/index.d.ts +1 -0
  479. package/dist/index.d.ts.map +1 -1
  480. package/dist/index.js +1 -0
  481. package/dist/index.js.map +1 -1
  482. package/dist/tracking/ui/ExperimentCard.d.ts +1 -1
  483. package/dist/tracking/ui/ExperimentCard.d.ts.map +1 -1
  484. package/dist/tracking/ui/ExperimentCard.js +26 -10
  485. package/dist/tracking/ui/ExperimentCard.js.map +1 -1
  486. package/dist/tracking/ui/card.d.ts +2 -2
  487. package/dist/tracking/ui/card.d.ts.map +1 -1
  488. package/dist/tracking/ui/card.js +2 -2
  489. package/dist/tracking/ui/card.js.map +1 -1
  490. package/dist/tracking/ui/readable.d.ts +14 -0
  491. package/dist/tracking/ui/readable.d.ts.map +1 -0
  492. package/dist/tracking/ui/readable.js +60 -0
  493. package/dist/tracking/ui/readable.js.map +1 -0
  494. package/dist/utils/fetch.d.ts +9 -2
  495. package/dist/utils/fetch.d.ts.map +1 -1
  496. package/dist/utils/fetch.js +6 -5
  497. package/dist/utils/fetch.js.map +1 -1
  498. package/dist/utils/websocket.d.ts +65 -2
  499. package/dist/utils/websocket.d.ts.map +1 -1
  500. package/dist/utils/websocket.js +276 -44
  501. package/dist/utils/websocket.js.map +1 -1
  502. package/package.json +14 -5
  503. package/.claude/CLAUDE.md +0 -317
  504. package/.tasks/EXPORT_EXPRESSION_BUILDER.md +0 -38
  505. package/.tasks/EXPRESSION_BUILDER_REPORT.md +0 -149
  506. package/.tasks/EXPRESSION_FIELD_SEAMS.md +0 -66
  507. package/.tasks/FIELD_STACK_REPORT.md +0 -234
  508. package/.tasks/FORM_ENGINE_COMPACT_READ_FIRST.md +0 -558
  509. package/.tasks/FORM_ENGINE_EXPRESSIONS.md +0 -197
  510. package/.tasks/FORM_ENGINE_OPTIONS_SYNC.md +0 -95
  511. package/.tasks/FORM_FIELD_EXTRAS.md +0 -72
  512. package/.tasks/INDEX.md +0 -111
  513. package/.tasks/LSP_SHARED_CONNECTION.md +0 -75
  514. package/.tasks/QONSOLE_ASSIST_FEATURES.md +0 -306
  515. package/.tasks/RENDER_EXPRESSION_LSP.md +0 -159
  516. package/.tasks/REQRAFT_AUTO_FIELD.md +0 -176
  517. package/.tasks/SCHEMA_DEFINITION_FIELD.md +0 -250
  518. package/.tasks/SMART_EDITOR_CONTEXT_AND_POLISH.md +0 -340
  519. package/.tasks/SMART_EDITOR_LSP_FEATURES.md +0 -299
  520. package/.tasks/SMART_EDITOR_REVIEW_FOLLOWUPS.md +0 -280
  521. package/.tasks/SMART_EDITOR_UX_POLISH.md +0 -383
  522. package/.tasks/SMART_EDITOR_VISUAL_POLISH.md +0 -246
  523. package/.tasks/STORY_NETWORK_ISOLATION.md +0 -98
  524. package/.tasks/TEMPLATE_TOKEN_GRAMMAR.md +0 -72
  525. package/CODE_OF_CONDUCT.md +0 -105
  526. package/CONTRIBUTING.MD +0 -78
  527. package/SECURITY.md +0 -3
  528. package/chromatic.config.json +0 -5
  529. package/design/COMPACT_ENGINE_REDESIGN.md +0 -156
  530. package/design/COMPACT_INFO_DISPLAY.md +0 -87
  531. package/design/COMPACT_PARITY.md +0 -85
  532. package/design/EXPRESSION_BUILDER_REPORT_STRATEGY.md +0 -92
  533. package/design/FORM_ENGINE_COMPACT.md +0 -300
  534. package/design/FORM_ENGINE_COMPACT_UX_PLAN.md +0 -353
  535. package/design/FORM_ENGINE_EXPRESSIONS.md +0 -257
  536. package/design/FORM_ENGINE_FIELD_MIGRATION.md +0 -419
  537. package/design/IDE_INTEGRATION.md +0 -64
  538. package/design/RENDER_EXPRESSION_TRANSPORT.md +0 -156
  539. package/design/SELECT_DIALOG_FLOOR.md +0 -86
  540. package/design/SMART_EDITOR_UX.md +0 -438
  541. package/design/TRACKING.md +0 -290
  542. package/design/UNAVAILABLE_ALLOWED_VALUES.md +0 -226
  543. package/src/components/Description/index.tsx +0 -254
  544. package/src/components/Description/markdownRendererContext.tsx +0 -29
  545. package/src/components/FocusedEditing/index.tsx +0 -50
  546. package/src/components/codeSize/index.tsx +0 -79
  547. package/src/components/composer/Composer.stories.tsx +0 -238
  548. package/src/components/composer/Composer.tsx +0 -554
  549. package/src/components/composer/helpers.ts +0 -74
  550. package/src/components/composer/index.ts +0 -2
  551. package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -1183
  552. package/src/components/dpqlEditor/DpqlEditor.tsx +0 -219
  553. package/src/components/dpqlEditor/dpqlHelpers.ts +0 -287
  554. package/src/components/dpqlEditor/dpqlInserter.ts +0 -121
  555. package/src/components/dpqlEditor/dpqlProbe.ts +0 -165
  556. package/src/components/dpqlEditor/dpqlTags.ts +0 -114
  557. package/src/components/dpqlEditor/index.ts +0 -41
  558. package/src/components/dpqlEditor/types.ts +0 -203
  559. package/src/components/dpqlEditor/useDpqlProbe.ts +0 -33
  560. package/src/components/dpqlEditor/useDpqlSession.ts +0 -411
  561. package/src/components/form/engine/CompactRow.tsx +0 -2620
  562. package/src/components/form/engine/CompactToolbar.tsx +0 -330
  563. package/src/components/form/engine/FormEngine.stories.tsx +0 -9920
  564. package/src/components/form/engine/FormEngine.tsx +0 -4569
  565. package/src/components/form/engine/FormEngineRemote.stories.tsx +0 -679
  566. package/src/components/form/engine/FormEngineStickyHeaders.stories.tsx +0 -331
  567. package/src/components/form/engine/FormFieldsSkeleton.tsx +0 -82
  568. package/src/components/form/engine/OptionFieldMessages.tsx +0 -477
  569. package/src/components/form/engine/OptionsHelpDialog.tsx +0 -29
  570. package/src/components/form/engine/__fixtures__/basicFormOptions.ts +0 -309
  571. package/src/components/form/engine/__fixtures__/fieldChromeOptions.ts +0 -45
  572. package/src/components/form/engine/_structuredData/SchemaDataView.stories.tsx +0 -233
  573. package/src/components/form/engine/_structuredData/SchemaDataView.tsx +0 -742
  574. package/src/components/form/engine/_structuredData/StructuredDataView.stories.tsx +0 -85
  575. package/src/components/form/engine/_structuredData/StructuredDataView.tsx +0 -75
  576. package/src/components/form/engine/_structuredData/structuredData.ts +0 -145
  577. package/src/components/form/engine/compactRowContext.ts +0 -148
  578. package/src/components/form/engine/compactRowStyles.ts +0 -898
  579. package/src/components/form/engine/compactToolbarContext.ts +0 -69
  580. package/src/components/form/engine/optionActions.ts +0 -128
  581. package/src/components/form/engine/optionsContext.ts +0 -24
  582. package/src/components/form/engine/readFirst.ts +0 -1077
  583. package/src/components/form/engine/rendererTypes.ts +0 -107
  584. package/src/components/form/engine/revealRow.ts +0 -123
  585. package/src/components/form/engine/rowFocus.ts +0 -101
  586. package/src/components/form/engine/rowMenuContext.ts +0 -159
  587. package/src/components/form/engine/rowOpenPicker.ts +0 -27
  588. package/src/components/form/engine/typeChoices.ts +0 -63
  589. package/src/components/form/engine/variants/FormEngineVariants.stories.tsx +0 -159
  590. package/src/components/form/engine/variants/VariantCalmTable.tsx +0 -244
  591. package/src/components/form/engine/variants/VariantCards.tsx +0 -212
  592. package/src/components/form/engine/variants/VariantFocus.tsx +0 -382
  593. package/src/components/form/engine/variants/VariantMinimal.tsx +0 -170
  594. package/src/components/form/engine/variants/focusDemo.ts +0 -145
  595. package/src/components/form/engine/variants/variantModel.ts +0 -223
  596. package/src/components/form/engine/variants/variantParts.tsx +0 -313
  597. package/src/components/form/expressions/DpqlRendering.tsx +0 -85
  598. package/src/components/form/expressions/ExpressionField.stories.tsx +0 -1395
  599. package/src/components/form/expressions/ExpressionField.tsx +0 -503
  600. package/src/components/form/expressions/argumentPresence.ts +0 -213
  601. package/src/components/form/expressions/builder/ExpressionBuilder.stories.tsx +0 -1683
  602. package/src/components/form/expressions/builder/argumentDetail.tsx +0 -17
  603. package/src/components/form/expressions/builder/argumentLabel.tsx +0 -146
  604. package/src/components/form/expressions/builder/argumentSlot.tsx +0 -101
  605. package/src/components/form/expressions/builder/argumentWrapper.tsx +0 -243
  606. package/src/components/form/expressions/builder/confirmMismatchedTypesModal.tsx +0 -120
  607. package/src/components/form/expressions/builder/confirmUnsupportedTypeModal.tsx +0 -69
  608. package/src/components/form/expressions/builder/index.tsx +0 -1545
  609. package/src/components/form/expressions/builder/item.tsx +0 -89
  610. package/src/components/form/expressions/builder/moveToPositionStrip.tsx +0 -156
  611. package/src/components/form/expressions/builder/renderTemplate.tsx +0 -42
  612. package/src/components/form/expressions/dpqlMockLanguage.ts +0 -566
  613. package/src/components/form/expressions/dpqlMockLsp.ts +0 -126
  614. package/src/components/form/expressions/mockExpressions.ts +0 -317
  615. package/src/components/form/expressions/renderExpressionToText.ts +0 -137
  616. package/src/components/form/expressions/types.ts +0 -110
  617. package/src/components/form/expressions/useExpressions.ts +0 -101
  618. package/src/components/form/expressions/useRenderExpression.ts +0 -165
  619. package/src/components/form/fields/Field.stories.tsx +0 -143
  620. package/src/components/form/fields/Field.tsx +0 -732
  621. package/src/components/form/fields/allowed-values/AllowedValues.tsx +0 -297
  622. package/src/components/form/fields/array/ArrayAuto.tsx +0 -237
  623. package/src/components/form/fields/array/ArrayAutoField.stories.tsx +0 -475
  624. package/src/components/form/fields/array/ArrayAutoField.tsx +0 -367
  625. package/src/components/form/fields/auto/AutoFormField.stories.tsx +0 -825
  626. package/src/components/form/fields/auto/AutoFormField.tsx +0 -1164
  627. package/src/components/form/fields/binary/Binary.stories.tsx +0 -122
  628. package/src/components/form/fields/binary/Binary.tsx +0 -91
  629. package/src/components/form/fields/boolean/Boolean.stories.tsx +0 -125
  630. package/src/components/form/fields/boolean/Boolean.tsx +0 -34
  631. package/src/components/form/fields/byte-size/ByteSize.stories.tsx +0 -87
  632. package/src/components/form/fields/byte-size/ByteSize.tsx +0 -58
  633. package/src/components/form/fields/color/Color.stories.tsx +0 -99
  634. package/src/components/form/fields/color/Color.tsx +0 -46
  635. package/src/components/form/fields/cron/Cron.stories.tsx +0 -68
  636. package/src/components/form/fields/cron/Cron.tsx +0 -80
  637. package/src/components/form/fields/date/Date.stories.tsx +0 -77
  638. package/src/components/form/fields/date/Date.tsx +0 -55
  639. package/src/components/form/fields/emittedValues.ts +0 -70
  640. package/src/components/form/fields/file/File.stories.tsx +0 -161
  641. package/src/components/form/fields/file/File.tsx +0 -227
  642. package/src/components/form/fields/long-string/LongString.stories.tsx +0 -120
  643. package/src/components/form/fields/long-string/LongString.tsx +0 -130
  644. package/src/components/form/fields/markdown/Markdown.stories.tsx +0 -76
  645. package/src/components/form/fields/markdown/Markdown.tsx +0 -81
  646. package/src/components/form/fields/markdown/MarkdownView.tsx +0 -222
  647. package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +0 -139
  648. package/src/components/form/fields/number/Number.stories.tsx +0 -159
  649. package/src/components/form/fields/number/Number.tsx +0 -160
  650. package/src/components/form/fields/object/Object.stories.tsx +0 -398
  651. package/src/components/form/fields/object/Object.tsx +0 -255
  652. package/src/components/form/fields/radio-group/RadioGroup.stories.tsx +0 -95
  653. package/src/components/form/fields/radio-group/RadioGroup.tsx +0 -46
  654. package/src/components/form/fields/radio-group/images/java-96x128.png +0 -0
  655. package/src/components/form/fields/radio-group/images/python-129x128.png +0 -0
  656. package/src/components/form/fields/radio-group/images/qore-106x128.png +0 -0
  657. package/src/components/form/fields/rich-text/RichText.stories.tsx +0 -260
  658. package/src/components/form/fields/rich-text/RichText.tsx +0 -537
  659. package/src/components/form/fields/schema-definition/CatalogLeafForm.tsx +0 -242
  660. package/src/components/form/fields/schema-definition/CatalogNodeEditor.tsx +0 -758
  661. package/src/components/form/fields/schema-definition/Hint.tsx +0 -22
  662. package/src/components/form/fields/schema-definition/InlineValidationBanner.tsx +0 -138
  663. package/src/components/form/fields/schema-definition/Loader.tsx +0 -20
  664. package/src/components/form/fields/schema-definition/MigrationsTab.tsx +0 -187
  665. package/src/components/form/fields/schema-definition/SchemaDefinitionField.stories.tsx +0 -286
  666. package/src/components/form/fields/schema-definition/TableEditor.tsx +0 -155
  667. package/src/components/form/fields/schema-definition/TablesTab.tsx +0 -138
  668. package/src/components/form/fields/schema-definition/catalog.ts +0 -237
  669. package/src/components/form/fields/schema-definition/helpers.ts +0 -90
  670. package/src/components/form/fields/schema-definition/index.tsx +0 -418
  671. package/src/components/form/fields/schema-definition/mockCatalog.ts +0 -325
  672. package/src/components/form/fields/schema-definition/mockDefinition.ts +0 -111
  673. package/src/components/form/fields/schema-definition/referenceSuggestions.tsx +0 -152
  674. package/src/components/form/fields/schema-definition/starterTemplate.ts +0 -68
  675. package/src/components/form/fields/schema-definition/types.ts +0 -185
  676. package/src/components/form/fields/schema-definition/useSchemaOptionCatalog.ts +0 -49
  677. package/src/components/form/fields/select/Select.stories.tsx +0 -872
  678. package/src/components/form/fields/select/Select.tsx +0 -624
  679. package/src/components/form/fields/select/SelectCollection.tsx +0 -594
  680. package/src/components/form/fields/string/String.stories.tsx +0 -86
  681. package/src/components/form/fields/string/String.tsx +0 -43
  682. package/src/components/form/fields/template/ExampleValueModal.stories.tsx +0 -114
  683. package/src/components/form/fields/template/ExampleValueModal.tsx +0 -99
  684. package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +0 -47
  685. package/src/components/form/fields/template/TemplateField.stories.tsx +0 -1121
  686. package/src/components/form/fields/template/TemplateField.tsx +0 -1717
  687. package/src/components/form/fields/template/TemplateText.tsx +0 -115
  688. package/src/components/form/fields/template/__fixtures__/longExampleValue.ts +0 -7
  689. package/src/components/form/fields/template/__fixtures__/multiLevelTemplates.json +0 -147
  690. package/src/components/form/fields/template/__fixtures__/templates.json +0 -83
  691. package/src/components/form/fields/timeout/Timeout.stories.tsx +0 -228
  692. package/src/components/form/fields/timeout/Timeout.tsx +0 -87
  693. package/src/components/form/fields/url/Url.stories.tsx +0 -94
  694. package/src/components/form/fields/url/Url.tsx +0 -85
  695. package/src/components/form/index.tsx +0 -47
  696. package/src/components/imageLightbox/ImageLightbox.stories.tsx +0 -238
  697. package/src/components/imageLightbox/ImageLightbox.tsx +0 -236
  698. package/src/components/imageLightbox/index.ts +0 -1
  699. package/src/components/log/Log.stories.tsx +0 -333
  700. package/src/components/log/Log.tsx +0 -285
  701. package/src/components/menu/Menu.stories.tsx +0 -155
  702. package/src/components/menu/Menu.tsx +0 -312
  703. package/src/components/qonsoleSmartInput/QonsoleSmartInput.stories.tsx +0 -797
  704. package/src/components/qonsoleSmartInput/QonsoleSmartInput.tsx +0 -105
  705. package/src/components/qonsoleSmartInput/index.ts +0 -16
  706. package/src/components/qonsoleSmartInput/qonsoleInserter.ts +0 -77
  707. package/src/components/qonsoleSmartInput/types.ts +0 -133
  708. package/src/components/qonsoleSmartInput/useQonsoleSession.ts +0 -124
  709. package/src/components/searchFilterBar/SearchFilterBar.stories.tsx +0 -62
  710. package/src/components/searchFilterBar/SearchFilterBar.tsx +0 -144
  711. package/src/components/searchFilterBar/index.ts +0 -1
  712. package/src/components/smartEditor/MarkdownDoc.tsx +0 -190
  713. package/src/components/smartEditor/SmartEditor.stories.tsx +0 -475
  714. package/src/components/smartEditor/SmartEditor.tsx +0 -808
  715. package/src/components/smartEditor/__fixtures__/mockLspServer.ts +0 -205
  716. package/src/components/smartEditor/helpers.ts +0 -217
  717. package/src/components/smartEditor/index.ts +0 -35
  718. package/src/components/smartEditor/styling.ts +0 -45
  719. package/src/components/smartEditor/types.ts +0 -211
  720. package/src/components/smartEditor/useLspAutocomplete.ts +0 -758
  721. package/src/components/smartEditor/useLspDiagnosticDecorations.ts +0 -125
  722. package/src/components/smartEditor/useLspHover.ts +0 -230
  723. package/src/components/smartEditor/useLspSemanticTokens.ts +0 -298
  724. package/src/components/smartEditor/useLspSession.ts +0 -231
  725. package/src/components/smartEditor/useLspSignatureHelp.ts +0 -198
  726. package/src/components/supportTicket/AttachmentChips.stories.tsx +0 -171
  727. package/src/components/supportTicket/AttachmentChips.tsx +0 -147
  728. package/src/components/supportTicket/InterfaceReferenceTags.stories.tsx +0 -257
  729. package/src/components/supportTicket/InterfaceReferenceTags.tsx +0 -129
  730. package/src/components/supportTicket/ReferencePicker.stories.tsx +0 -584
  731. package/src/components/supportTicket/ReferencePicker.tsx +0 -563
  732. package/src/components/supportTicket/TicketConversation.stories.tsx +0 -121
  733. package/src/components/supportTicket/TicketHeader.stories.tsx +0 -183
  734. package/src/components/supportTicket/TicketHeader.tsx +0 -247
  735. package/src/components/supportTicket/TicketMetaTags.stories.tsx +0 -103
  736. package/src/components/supportTicket/TicketMetaTags.tsx +0 -85
  737. package/src/components/supportTicket/TicketReplyBox.stories.tsx +0 -354
  738. package/src/components/supportTicket/TicketReplyBox.tsx +0 -150
  739. package/src/components/supportTicket/__fixtures__/kindMarks.ts +0 -28
  740. package/src/components/supportTicket/attachmentAccess.ts +0 -97
  741. package/src/components/supportTicket/fileToAttachment.ts +0 -24
  742. package/src/components/supportTicket/index.ts +0 -10
  743. package/src/components/supportTicket/meta.ts +0 -206
  744. package/src/components/supportTicket/ticketModel.ts +0 -131
  745. package/src/components/supportTicket/useLoadedImages.ts +0 -73
  746. package/src/components/ticketReferences/TicketReferences.stories.tsx +0 -315
  747. package/src/components/ticketReferences/TicketReferences.tsx +0 -906
  748. package/src/components/ticketReferences/index.ts +0 -2
  749. package/src/components/ticketThread/TicketThread.stories.tsx +0 -829
  750. package/src/components/ticketThread/TicketThread.tsx +0 -719
  751. package/src/components/ticketThread/index.ts +0 -6
  752. package/src/contexts/FetchContext.tsx +0 -25
  753. package/src/contexts/ReqraftContext.tsx +0 -9
  754. package/src/contexts/StorageContext.tsx +0 -33
  755. package/src/global.d.ts +0 -4
  756. package/src/helpers/allowedValues.ts +0 -249
  757. package/src/helpers/choiceChip.ts +0 -227
  758. package/src/helpers/common.ts +0 -326
  759. package/src/helpers/dpqlDetection.ts +0 -209
  760. package/src/helpers/expressions.ts +0 -140
  761. package/src/helpers/optionUiTypes.ts +0 -199
  762. package/src/helpers/options.ts +0 -150
  763. package/src/helpers/providerValue.ts +0 -125
  764. package/src/helpers/scrollbar.ts +0 -32
  765. package/src/helpers/singleLineString.ts +0 -61
  766. package/src/helpers/templateItems.ts +0 -81
  767. package/src/helpers/templateText.ts +0 -350
  768. package/src/helpers/templates.ts +0 -602
  769. package/src/helpers/validations.ts +0 -2085
  770. package/src/hooks/useArgSchema.ts +0 -37
  771. package/src/hooks/useCoarsePointer.ts +0 -30
  772. package/src/hooks/useFetch/useFetch.stories.tsx +0 -379
  773. package/src/hooks/useFetch/useFetch.tsx +0 -154
  774. package/src/hooks/usePhoneViewport.ts +0 -34
  775. package/src/hooks/useQorusTypes.ts +0 -233
  776. package/src/hooks/useReqraftProperty.ts +0 -16
  777. package/src/hooks/useStorage/useStorage.stories.tsx +0 -168
  778. package/src/hooks/useStorage/useStorage.ts +0 -35
  779. package/src/hooks/useTemplates.ts +0 -123
  780. package/src/hooks/useValidation.ts +0 -9
  781. package/src/hooks/useWebSocket/useWebSocket.ts +0 -224
  782. package/src/hooks/useWebSocket/useWebsocket.stories.tsx +0 -640
  783. package/src/hooks/useWhyDidYouUpdate.ts +0 -38
  784. package/src/index.tsx +0 -86
  785. package/src/providers/FetchProvider.tsx +0 -40
  786. package/src/providers/ReqraftProvider.tsx +0 -52
  787. package/src/providers/StorageProvider.tsx +0 -131
  788. package/src/stores/currentUser/currentUser.stories.tsx +0 -100
  789. package/src/stores/currentUser/currentUser.tsx +0 -94
  790. package/src/stories/Data/fileFieldArgSchema.json +0 -86
  791. package/src/stories/Tests/utils.ts +0 -320
  792. package/src/stories/storyNetwork.ts +0 -92
  793. package/src/stories/tracking.tsx +0 -206
  794. package/src/tracking/browser/attach.ts +0 -186
  795. package/src/tracking/browser/env.ts +0 -78
  796. package/src/tracking/core/consent.ts +0 -37
  797. package/src/tracking/core/engagement.ts +0 -47
  798. package/src/tracking/core/experiments.ts +0 -258
  799. package/src/tracking/core/hash.ts +0 -26
  800. package/src/tracking/core/ids.ts +0 -25
  801. package/src/tracking/core/observable.ts +0 -23
  802. package/src/tracking/core/queue.ts +0 -131
  803. package/src/tracking/core/sections.ts +0 -166
  804. package/src/tracking/core/storage.ts +0 -69
  805. package/src/tracking/core/tracker.ts +0 -417
  806. package/src/tracking/core/types.ts +0 -162
  807. package/src/tracking/core/utm.ts +0 -23
  808. package/src/tracking/index.ts +0 -72
  809. package/src/tracking/markup.ts +0 -17
  810. package/src/tracking/react/Experiment.tsx +0 -44
  811. package/src/tracking/react/TrackingProvider.tsx +0 -56
  812. package/src/tracking/react/hooks.ts +0 -106
  813. package/src/tracking/react/index.ts +0 -13
  814. package/src/tracking/testing.ts +0 -108
  815. package/src/tracking/ui/ExperimentCard.stories.tsx +0 -296
  816. package/src/tracking/ui/ExperimentCard.tsx +0 -667
  817. package/src/tracking/ui/ExperimentsOverlay.stories.tsx +0 -155
  818. package/src/tracking/ui/ExperimentsOverlay.tsx +0 -437
  819. package/src/tracking/ui/anchor.ts +0 -180
  820. package/src/tracking/ui/card.ts +0 -464
  821. package/src/tracking/ui/client.ts +0 -117
  822. package/src/tracking/ui/index.ts +0 -77
  823. package/src/tracking/ui/types.ts +0 -110
  824. package/src/tracking/ui/useExperimentsAdmin.ts +0 -103
  825. package/src/types/Form.ts +0 -29
  826. package/src/types.ts +0 -14
  827. package/src/utils/datetime.ts +0 -10
  828. package/src/utils/fetch.ts +0 -457
  829. package/src/utils/lspClient.ts +0 -711
  830. package/src/utils/lspClient.types.ts +0 -211
  831. package/src/utils/queryUnlessCancelled.ts +0 -28
  832. package/src/utils/websocket.ts +0 -293
  833. package/vite.config.ts +0 -58
  834. package/vitest.config.ts +0 -69
@@ -1,125 +0,0 @@
1
- // Copyright 2026 Qore Technologies, s.r.o.
2
- // Slate `decorate` hook that converts LSP `publishDiagnostics` payloads
3
- // into per-leaf decoration ranges. Each range carries `error: true`
4
- // plus the diagnostic's `message` and `severity`, which the editor's
5
- // `customRenderLeaf` can pick up to draw the inline wavy underline /
6
- // hover-title state. Composes with a caller-supplied syntax-highlight
7
- // `decorate` in the wrapper (e.g. `DpqlEditor.tsx` merges the two).
8
-
9
- import { useCallback, useMemo } from 'react';
10
- import { NodeEntry, Range, Text } from 'slate';
11
- import { ILspDiagnostic } from '../../utils/lspClient.types';
12
- import { lspPositionToOffset } from './helpers';
13
- import { ISlateConverter, ISlateElement } from './types';
14
-
15
- /** Marks added to decoration ranges so `customRenderLeaf` can style them. */
16
- export interface IDiagnosticMarks {
17
- /** Truthy when this leaf falls inside a diagnostic's reported range. */
18
- error: true;
19
- /** The diagnostic's user-facing message (rendered in a hover-title). */
20
- errorMessage: string;
21
- /** LSP `DiagnosticSeverity` — 1 Error, 2 Warning, 3 Info, 4 Hint. */
22
- severity: number;
23
- }
24
-
25
- /**
26
- * Build a Slate `decorate` function that paints diagnostic spans over
27
- * the document.
28
- *
29
- * The function is recomputed whenever `diagnostics` or `nodes` change,
30
- * and per-call iteration over diagnostics is `O(diagnostics × text-leaves)` —
31
- * fine for the editor scale we target (typical document under a few
32
- * hundred characters, a handful of diagnostics).
33
- *
34
- * @param diagnostics Most-recent `session.diagnostics`.
35
- * @param converter The same converter passed to `SmartEditor`. We use
36
- * it to compute the plain-text projection and the
37
- * plain-text offset of any node — both required to
38
- * intersect a diagnostic's `{line, character}` LSP
39
- * range with each Slate text leaf.
40
- * @param nodes Current Slate document. The hook captures this in
41
- * a closure; pass the same `slateValue` you hand
42
- * `ReqoreRichTextEditor`.
43
- */
44
- export function useLspDiagnosticDecorations(
45
- diagnostics: ILspDiagnostic[],
46
- converter: ISlateConverter,
47
- nodes: ISlateElement[]
48
- ): (entry: NodeEntry) => Range[] {
49
- // Pre-compute the plain-text projection AND each diagnostic's
50
- // `[startOffset, endOffset]` once per render — the alternative is
51
- // recomputing both inside the decorate callback for every text leaf
52
- // Slate walks, which is wasteful.
53
- const plainText = useMemo(
54
- () => converter.fromSlateNodes(nodes),
55
- [converter, nodes]
56
- );
57
- const diagOffsets = useMemo(
58
- () =>
59
- diagnostics.map((d) => ({
60
- startOffset: lspPositionToOffset(plainText, d.range.start),
61
- endOffset: lspPositionToOffset(plainText, d.range.end),
62
- message: d.message,
63
- severity: d.severity ?? 1,
64
- })),
65
- [diagnostics, plainText]
66
- );
67
-
68
- return useCallback(
69
- (entry: NodeEntry) => {
70
- if (diagOffsets.length === 0) return [];
71
- const [node, path] = entry;
72
- if (!Text.isText(node)) return [];
73
-
74
- // Where this leaf starts/ends in the plain-text projection. The
75
- // converter's `selectionToOffset` with `anchorOffset: 0` gives the
76
- // leaf's start; add `node.text.length` for the end.
77
- const leafStart = converter.selectionToOffset(
78
- nodes,
79
- path as number[],
80
- 0
81
- );
82
- const leafEnd = leafStart + node.text.length;
83
-
84
- const ranges: Range[] = [];
85
- for (const diag of diagOffsets) {
86
- const overlapStart = Math.max(leafStart, diag.startOffset);
87
- const overlapEnd = Math.min(leafEnd, diag.endOffset);
88
- if (overlapStart >= overlapEnd) continue;
89
- // Emit a Slate `Range` (anchor + focus) over the offset window
90
- // INSIDE this leaf. Slate then applies the extra marks
91
- // (`error`, `errorMessage`, `severity`) to the styled span.
92
- ranges.push({
93
- anchor: { path, offset: overlapStart - leafStart },
94
- focus: { path, offset: overlapEnd - leafStart },
95
- error: true,
96
- errorMessage: diag.message,
97
- severity: diag.severity,
98
- } as unknown as Range);
99
- }
100
- return ranges;
101
- },
102
- [diagOffsets, converter, nodes]
103
- );
104
- }
105
-
106
- /**
107
- * Map LSP `DiagnosticSeverity` → Reqore intent. Useful for the
108
- * `ReqoreMessage` panel below the editor:
109
- * 1 Error → `'danger'`
110
- * 2 Warning → `'warning'`
111
- * 3 Info → `'info'`
112
- * 4 Hint → `'info'`
113
- */
114
- export function severityToIntent(
115
- severity?: number
116
- ): 'danger' | 'warning' | 'info' {
117
- switch (severity) {
118
- case 1:
119
- return 'danger';
120
- case 2:
121
- return 'warning';
122
- default:
123
- return 'info';
124
- }
125
- }
@@ -1,230 +0,0 @@
1
- // Copyright 2026 Qore Technologies, s.r.o.
2
- // Hover-tooltip support for SmartEditor. Listens for `mousemove` on
3
- // the editor's contenteditable element, debounces to 300ms idle, then
4
- // asks the LSP for hover info at that mouse position. The consumer
5
- // gets back `{ hoverContent, hoverPosition }` and renders a popover.
6
- //
7
- // Position mapping: mouse coords → DOM caret range
8
- // (`caretRangeFromPoint`) → Slate `Point` → plain-text offset (via the
9
- // converter) → LSP `{line, character}`. Pure math is split into
10
- // `slatePointToLspPosition` so it can be unit-tested without a DOM.
11
-
12
- import { debounce } from 'lodash';
13
- import { RefObject, useCallback, useEffect, useRef, useState } from 'react';
14
- import { BaseEditor, Point } from 'slate';
15
- import { HistoryEditor } from 'slate-history';
16
- import { ReactEditor } from 'slate-react';
17
- import { ILspMarkupContent } from '../../utils/lspClient.types';
18
- import { offsetToLspPosition } from './helpers';
19
- import { ISlateConverter, ISlateElement } from './types';
20
- import type { IUseLspSessionResult } from './useLspSession';
21
-
22
- /**
23
- * Pure math: Slate point + Slate document → LSP `{line, character}`
24
- * position in the plain-text projection. Extracted from the hook so it
25
- * can be tested without a DOM / Slate editor instance.
26
- */
27
- export function slatePointToLspPosition(
28
- point: { path: number[]; offset: number },
29
- nodes: ISlateElement[],
30
- converter: ISlateConverter
31
- ): { line: number; character: number } {
32
- const plainText = converter.fromSlateNodes(nodes);
33
- const offset = converter.selectionToOffset(nodes, point.path, point.offset);
34
- return offsetToLspPosition(plainText, offset);
35
- }
36
-
37
- /**
38
- * Resolve mouse-event viewport coordinates into a Slate `Point`. Uses
39
- * the standard `document.caretRangeFromPoint` (WebKit / Chromium) with
40
- * a Firefox fallback to `caretPositionFromPoint`. Returns `null` when
41
- * the point lies outside any text node or Slate can't map the DOM
42
- * position back into its tree (e.g. inside a void inline).
43
- */
44
- function mousePositionToSlatePoint(
45
- editor: BaseEditor & ReactEditor & HistoryEditor,
46
- clientX: number,
47
- clientY: number
48
- ): Point | null {
49
- let domRange: Range | null = null;
50
-
51
- // Chromium / WebKit
52
- if (typeof (document as any).caretRangeFromPoint === 'function') {
53
- domRange = (document as any).caretRangeFromPoint(clientX, clientY);
54
- } else if (typeof (document as any).caretPositionFromPoint === 'function') {
55
- // Firefox shape: `{ offsetNode, offset }`
56
- const pos = (document as any).caretPositionFromPoint(clientX, clientY);
57
- if (pos) {
58
- domRange = document.createRange();
59
- domRange.setStart(pos.offsetNode, pos.offset);
60
- domRange.collapse(true);
61
- }
62
- }
63
- if (!domRange) return null;
64
-
65
- try {
66
- return ReactEditor.toSlatePoint(
67
- editor,
68
- [domRange.startContainer, domRange.startOffset],
69
- { exactMatch: false, suppressThrow: true } as any
70
- );
71
- } catch {
72
- return null;
73
- }
74
- }
75
-
76
- export interface IUseLspHoverOptions {
77
- /** Default `true`. Set to `false` to disable the mousemove listener. */
78
- enabled?: boolean;
79
- /** Debounce window before issuing the LSP request. Default 300ms. */
80
- debounceMs?: number;
81
- }
82
-
83
- export interface IUseLspHoverResult {
84
- /** Markup content returned by the LSP, or `null` when no hover info. */
85
- hoverContent: ILspMarkupContent | null;
86
- /** Viewport-coordinate position to anchor the popover. */
87
- hoverPosition: { left: number; top: number } | null;
88
- /** Imperatively dismiss the current hover popover. */
89
- clearHover: () => void;
90
- }
91
-
92
- /**
93
- * Hover-tooltip state for the SmartEditor. Attaches a `mousemove`
94
- * listener to the editor's contenteditable element via the supplied
95
- * editor ref and resolves LSP hover content under the cursor when the
96
- * mouse goes idle for `debounceMs`.
97
- */
98
- export function useLspHover(
99
- session: IUseLspSessionResult,
100
- editorRef: RefObject<
101
- (BaseEditor & ReactEditor & HistoryEditor) | null
102
- >,
103
- converter: ISlateConverter,
104
- options: IUseLspHoverOptions = {}
105
- ): IUseLspHoverResult {
106
- const { enabled = true, debounceMs = 300 } = options;
107
-
108
- const [hoverContent, setHoverContent] = useState<ILspMarkupContent | null>(
109
- null
110
- );
111
- const [hoverPosition, setHoverPosition] = useState<{
112
- left: number;
113
- top: number;
114
- } | null>(null);
115
-
116
- // Track the latest request id so a slow in-flight response can't
117
- // overwrite a newer hover state (e.g. the user moved away before the
118
- // server replied).
119
- const requestIdRef = useRef(0);
120
-
121
- const clearHover = useCallback(() => {
122
- setHoverContent(null);
123
- setHoverPosition(null);
124
- }, []);
125
-
126
- // Debounced fetch. Re-created in the effect below whenever any of
127
- // its inputs change. Started as a no-op so the ref is always a
128
- // function — avoids null-checks in the mousemove listener. The dep
129
- // array lists the stable primitives inside `session`, not the object
130
- // itself — `useLspSession` rebuilds its return object every render,
131
- // which would cancel and recreate this debounce on every parent
132
- // re-render (see useLspSemanticTokens for the original incident).
133
- const fetchHover = useRef<ReturnType<typeof debounce>>(
134
- debounce(() => undefined)
135
- );
136
-
137
- useEffect(() => {
138
- fetchHover.current.cancel();
139
- fetchHover.current = debounce(async (clientX: number, clientY: number) => {
140
- const editor = editorRef.current;
141
- const client = session.client;
142
- if (
143
- !enabled ||
144
- !editor ||
145
- !client ||
146
- !session.isReady ||
147
- !session.isContextReady
148
- )
149
- return;
150
-
151
- const point = mousePositionToSlatePoint(editor, clientX, clientY);
152
- if (!point) {
153
- clearHover();
154
- return;
155
- }
156
-
157
- const nodes = editor.children as ISlateElement[];
158
- const { line, character } = slatePointToLspPosition(
159
- { path: point.path as number[], offset: point.offset },
160
- nodes,
161
- converter
162
- );
163
-
164
- const reqId = ++requestIdRef.current;
165
- try {
166
- const content = await client.getHover(line, character);
167
- if (reqId !== requestIdRef.current) return; // stale
168
- if (!content) {
169
- clearHover();
170
- return;
171
- }
172
- setHoverContent(content);
173
- // Anchor the popover at the mouse cursor. The design doc calls
174
- // for "token center" — that requires building a Range over the
175
- // word boundaries and reading its rect. Defer to a follow-up
176
- // refinement; mouse-coord positioning already feels natural.
177
- setHoverPosition({ left: clientX, top: clientY });
178
- } catch {
179
- clearHover();
180
- }
181
- }, debounceMs);
182
- return () => fetchHover.current.cancel();
183
- }, [
184
- session.client,
185
- session.isReady,
186
- session.isContextReady,
187
- editorRef,
188
- converter,
189
- enabled,
190
- debounceMs,
191
- clearHover,
192
- ]);
193
-
194
- useEffect(() => {
195
- if (!enabled) return undefined;
196
- const editor = editorRef.current;
197
- if (!editor) return undefined;
198
- let dom: HTMLElement | null = null;
199
- try {
200
- dom = ReactEditor.toDOMNode(editor, editor) as HTMLElement;
201
- } catch {
202
- return undefined;
203
- }
204
- if (!dom) return undefined;
205
-
206
- const onMove = (e: MouseEvent) => {
207
- // Cancel any pending hover the moment the mouse moves — the
208
- // previous coords are stale. The debounced trailing call only
209
- // fires after `debounceMs` of true idle.
210
- fetchHover.current.cancel();
211
- fetchHover.current(e.clientX, e.clientY);
212
- };
213
- const onLeave = () => {
214
- fetchHover.current.cancel();
215
- clearHover();
216
- };
217
-
218
- dom.addEventListener('mousemove', onMove);
219
- dom.addEventListener('mouseleave', onLeave);
220
- return () => {
221
- dom?.removeEventListener('mousemove', onMove);
222
- dom?.removeEventListener('mouseleave', onLeave);
223
- fetchHover.current.cancel();
224
- };
225
- // Re-attach on enabled / session.isReady changes; the editor itself
226
- // is stable across renders so it's not a dep here.
227
- }, [enabled, session.isReady, clearHover, editorRef]);
228
-
229
- return { hoverContent, hoverPosition, clearHover };
230
- }
@@ -1,298 +0,0 @@
1
- // Copyright 2026 Qore Technologies, s.r.o.
2
- // Slate `decorate` hook that paints syntax highlighting using the
3
- // LSP server's `textDocument/semanticTokens/full` response. Replaces
4
- // the previous client-side regex highlighter (which was inherited
5
- // from qorus-ide and turned out to be SQL keywords miscast as DPQL).
6
- //
7
- // Architecturally: the server is the canonical tokenizer for any
8
- // `languageId` we serve (DPQL, Qonsole, Qore). We just decode the
9
- // LSP-spec int-array, map each token's `{line, character, length}`
10
- // to a Slate `Range` via the converter, and emit marks (`tokenType`,
11
- // `tokenModifiers`) that `SmartEditor`'s renderLeaf colours.
12
- //
13
- // The decode math is pure and unit-tested separately; the hook is a
14
- // thin debounce + state wrapper around it.
15
-
16
- import { debounce } from 'lodash';
17
- import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
18
- import { NodeEntry, Range, Text } from 'slate';
19
- import {
20
- ILspSemanticToken,
21
- ILspSemanticTokensLegend,
22
- } from '../../utils/lspClient.types';
23
- import { lspPositionToOffset } from './helpers';
24
- import { ISlateConverter, ISlateElement } from './types';
25
- import type { IUseLspSessionResult } from './useLspSession';
26
-
27
- /** Re-fetches when an empty token set comes back for a non-empty document. */
28
- const EMPTY_RETRY_MAX = 3;
29
- const EMPTY_RETRY_DELAY_MS = 300;
30
-
31
- /**
32
- * Decode the LSP flat int-array semantic-tokens payload into
33
- * absolute-position `ILspSemanticToken[]`. Pure function — extracted
34
- * so the math can be unit-tested without a DOM or live session.
35
- *
36
- * LSP encoding: groups of 5 ints per token:
37
- * [deltaLine, deltaStart, length, tokenType, tokenModifiersBitmask]
38
- *
39
- * Positions are delta-encoded relative to the *previous* token. When
40
- * `deltaLine > 0`, `deltaStart` is the absolute character offset from
41
- * the start of the new line. When `deltaLine === 0`, `deltaStart` is
42
- * an offset from the previous token's start character on the same line.
43
- *
44
- * Returns an empty array on a malformed payload (length not divisible
45
- * by 5, missing legend, out-of-range type index, etc.) rather than
46
- * throwing — bad input shouldn't crash the editor.
47
- */
48
- export function decodeSemanticTokens(
49
- data: number[] | undefined | null,
50
- legend: ILspSemanticTokensLegend | null
51
- ): ILspSemanticToken[] {
52
- if (!data || !legend || data.length === 0) return [];
53
- if (data.length % 5 !== 0) return [];
54
-
55
- const tokens: ILspSemanticToken[] = [];
56
- let prevLine = 0;
57
- let prevChar = 0;
58
-
59
- for (let i = 0; i < data.length; i += 5) {
60
- const deltaLine = data[i];
61
- const deltaStart = data[i + 1];
62
- const length = data[i + 2];
63
- const typeIdx = data[i + 3];
64
- const modBits = data[i + 4];
65
-
66
- const line = prevLine + deltaLine;
67
- // When the token jumps to a new line, deltaStart is the absolute
68
- // character on the new line. When it stays on the same line, it's
69
- // a delta from the previous token's start character.
70
- const character = deltaLine === 0 ? prevChar + deltaStart : deltaStart;
71
-
72
- const tokenType = legend.tokenTypes[typeIdx];
73
- if (tokenType === undefined) {
74
- // Server emitted an index outside the legend — skip this token
75
- // but keep decoding the rest so a single garbage entry doesn't
76
- // kill the whole document's highlighting.
77
- prevLine = line;
78
- prevChar = character;
79
- continue;
80
- }
81
-
82
- const tokenModifiers: string[] = [];
83
- if (modBits !== 0) {
84
- for (let bit = 0; bit < legend.tokenModifiers.length; bit++) {
85
- if ((modBits & (1 << bit)) !== 0) {
86
- tokenModifiers.push(legend.tokenModifiers[bit]);
87
- }
88
- }
89
- }
90
-
91
- tokens.push({ line, character, length, tokenType, tokenModifiers });
92
- prevLine = line;
93
- prevChar = character;
94
- }
95
-
96
- return tokens;
97
- }
98
-
99
- /**
100
- * Convert an `ILspSemanticToken[]` into a single `(NodeEntry) =>
101
- * Range[]` decorate function — for each Slate text leaf, find the
102
- * tokens overlapping its plain-text span and emit ranges with marks.
103
- *
104
- * Plain-text offset math mirrors `useLspDiagnosticDecorations`:
105
- * leafStart = converter.selectionToOffset(nodes, path, 0)
106
- * leafEnd = leafStart + node.text.length
107
- * Tokens whose `[startOffset, endOffset)` intersects the leaf produce
108
- * a range clamped to the leaf bounds.
109
- */
110
- function tokensToDecorate(
111
- tokens: ILspSemanticToken[],
112
- plainText: string,
113
- nodes: ISlateElement[],
114
- converter: ISlateConverter
115
- ) {
116
- // Pre-compute each token's absolute plain-text [start, end) so we
117
- // only do the LSP→offset conversion once per token (not once per
118
- // leaf, which Slate calls into us repeatedly for).
119
- const tokenSpans = tokens.map((t) => ({
120
- startOffset: lspPositionToOffset(plainText, {
121
- line: t.line,
122
- character: t.character,
123
- }),
124
- endOffset: lspPositionToOffset(plainText, {
125
- line: t.line,
126
- character: t.character + t.length,
127
- }),
128
- tokenType: t.tokenType,
129
- tokenModifiers: t.tokenModifiers,
130
- }));
131
-
132
- return (entry: NodeEntry): Range[] => {
133
- if (tokenSpans.length === 0) return [];
134
- const [node, path] = entry;
135
- if (!Text.isText(node)) return [];
136
-
137
- const leafStart = converter.selectionToOffset(
138
- nodes,
139
- path as number[],
140
- 0
141
- );
142
- const leafEnd = leafStart + node.text.length;
143
-
144
- const ranges: Range[] = [];
145
- for (const span of tokenSpans) {
146
- const overlapStart = Math.max(leafStart, span.startOffset);
147
- const overlapEnd = Math.min(leafEnd, span.endOffset);
148
- if (overlapStart >= overlapEnd) continue;
149
- ranges.push({
150
- anchor: { path, offset: overlapStart - leafStart },
151
- focus: { path, offset: overlapEnd - leafStart },
152
- tokenType: span.tokenType,
153
- tokenModifiers: span.tokenModifiers,
154
- } as unknown as Range);
155
- }
156
- return ranges;
157
- };
158
- }
159
-
160
- export interface IUseLspSemanticTokensOptions {
161
- /** Default `true`. Set `false` to disable LSP-driven syntax highlighting. */
162
- enabled?: boolean;
163
- /** Debounce window before re-requesting tokens. Default 250ms. */
164
- debounceMs?: number;
165
- }
166
-
167
- /**
168
- * LSP-driven syntax highlighting for `SmartEditor`. Returns a stable
169
- * `(NodeEntry) => Range[]` decorate function that the editor composes
170
- * with diagnostics + any caller-provided decorate.
171
- *
172
- * Behaviour:
173
- * - Waits for `session.isReady && session.semanticTokensLegend`. Until
174
- * then, the returned decorate emits no ranges (editor body shows as
175
- * plain monospace text under the connecting overlay).
176
- * - Whenever `nodes` changes, debounces a request to
177
- * `session.client.getSemanticTokens()`. The most-recent response is
178
- * memoised into the decorate; in-flight stale responses are dropped.
179
- * - On request error / timeout, retains the previously-decoded tokens
180
- * so highlighting doesn't flash off mid-edit.
181
- */
182
- export function useLspSemanticTokens(
183
- session: IUseLspSessionResult,
184
- converter: ISlateConverter,
185
- nodes: ISlateElement[],
186
- options: IUseLspSemanticTokensOptions = {}
187
- ): (entry: NodeEntry) => Range[] {
188
- const { enabled = true, debounceMs = 250 } = options;
189
-
190
- const [tokens, setTokens] = useState<ILspSemanticToken[]>([]);
191
- const requestIdRef = useRef(0);
192
-
193
- const plainText = useMemo(
194
- () => converter.fromSlateNodes(nodes),
195
- [converter, nodes]
196
- );
197
-
198
- const plainTextRef = useRef(plainText);
199
- plainTextRef.current = plainText;
200
- const emptyRetryRef = useRef(0);
201
- const retryTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);
202
-
203
- // Debounced fetch. Re-created in the effect below so each call
204
- // closes over the latest session + plainText. Started as a no-op so
205
- // the ref always holds a function (avoids null-checks in the firing
206
- // effect).
207
- const fetchTokens = useRef<ReturnType<typeof debounce>>(
208
- debounce(() => undefined)
209
- );
210
-
211
- // Depend on the stable primitives inside `session` — not the `session`
212
- // object literal itself. `useLspSession` rebuilds its return object on
213
- // every render, so `[session, …]` would cancel and recreate this
214
- // debounce on every parent re-render and the armed fetch would never
215
- // get a chance to fire (see `WithServerParse` story: the
216
- // `dpql/toRichtext` response arrives ~10ms after `isReady` flips and
217
- // its three setStates would cancel the 250ms debounce before it
218
- // expired, so `getSemanticTokens` was never called).
219
- useEffect(() => {
220
- fetchTokens.current.cancel();
221
- fetchTokens.current = debounce(async () => {
222
- const client = session.client;
223
- const legend = session.semanticTokensLegend;
224
- if (
225
- !enabled ||
226
- !client ||
227
- !session.isReady ||
228
- !session.isContextReady ||
229
- !legend
230
- )
231
- return;
232
- const reqId = ++requestIdRef.current;
233
- try {
234
- const data = await client.getSemanticTokens();
235
- if (reqId !== requestIdRef.current) return; // stale
236
- const decoded = decodeSemanticTokens(data, legend);
237
- setTokens(decoded);
238
-
239
- if (
240
- decoded.length === 0 &&
241
- plainTextRef.current.trim() !== '' &&
242
- emptyRetryRef.current < EMPTY_RETRY_MAX
243
- ) {
244
- emptyRetryRef.current += 1;
245
- if (retryTimerRef.current) clearTimeout(retryTimerRef.current);
246
- retryTimerRef.current = setTimeout(
247
- () => fetchTokens.current(),
248
- EMPTY_RETRY_DELAY_MS
249
- );
250
- }
251
- } catch {
252
- // Keep last-known tokens on error so highlighting doesn't
253
- // flash off mid-edit.
254
- }
255
- }, debounceMs);
256
- return () => {
257
- fetchTokens.current.cancel();
258
- if (retryTimerRef.current) clearTimeout(retryTimerRef.current);
259
- };
260
- }, [
261
- session.client,
262
- session.isReady,
263
- session.isContextReady,
264
- session.semanticTokensLegend,
265
- enabled,
266
- debounceMs,
267
- ]);
268
-
269
- // Fire on every document change AND when the session becomes ready
270
- // (first highlighting pass right after connect).
271
- useEffect(() => {
272
- if (
273
- !enabled ||
274
- !session.isReady ||
275
- !session.isContextReady ||
276
- !session.semanticTokensLegend
277
- )
278
- return;
279
- // Fresh document (or fresh ready session) — allow the empty-result
280
- // retries again.
281
- emptyRetryRef.current = 0;
282
- fetchTokens.current();
283
- // No cleanup — the debounce is cancelled by the outer effect on
284
- // session/enabled changes.
285
- }, [
286
- enabled,
287
- session.isReady,
288
- session.isContextReady,
289
- session.semanticTokensLegend,
290
- plainText,
291
- ]);
292
-
293
- return useCallback(
294
- (entry: NodeEntry) =>
295
- tokensToDecorate(tokens, plainText, nodes, converter)(entry),
296
- [tokens, plainText, nodes, converter]
297
- );
298
- }