@welldot/vue 0.0.0-stage → 0.1.0

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 (293) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +526 -2
  3. package/dist/_virtual/_plugin-vue_export-helper.js +8 -0
  4. package/dist/_virtual/icons/ph/caret-down.js +21 -0
  5. package/dist/_virtual/icons/ph/caret-down.js.map +1 -0
  6. package/dist/_virtual/icons/ph/info.js +21 -0
  7. package/dist/_virtual/icons/ph/info.js.map +1 -0
  8. package/dist/_virtual/icons/ph/pencil-simple-line.js +21 -0
  9. package/dist/_virtual/icons/ph/pencil-simple-line.js.map +1 -0
  10. package/dist/_virtual/icons/ph/pencil-simple.js +21 -0
  11. package/dist/_virtual/icons/ph/pencil-simple.js.map +1 -0
  12. package/dist/_virtual/icons/ph/plus.js +21 -0
  13. package/dist/_virtual/icons/ph/plus.js.map +1 -0
  14. package/dist/_virtual/icons/ph/x.js +21 -0
  15. package/dist/_virtual/icons/ph/x.js.map +1 -0
  16. package/dist/components/WellChip.d.ts +30 -0
  17. package/dist/components/WellChip.d.ts.map +1 -0
  18. package/dist/components/WellChip.js +9 -0
  19. package/dist/components/WellChip.js.map +1 -0
  20. package/dist/components/WellChip.vue_vue_type_script_setup_true_lang.js +43 -0
  21. package/dist/components/WellChip.vue_vue_type_script_setup_true_lang.js.map +1 -0
  22. package/dist/components/WellComboSelect.d.ts +19 -0
  23. package/dist/components/WellComboSelect.d.ts.map +1 -0
  24. package/dist/components/WellComboSelect.js +7 -0
  25. package/dist/components/WellComboSelect.js.map +1 -0
  26. package/dist/components/WellComboSelect.vue_vue_type_script_setup_true_lang.js +31 -0
  27. package/dist/components/WellComboSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  28. package/dist/components/WellInfoPopover.d.ts +31 -0
  29. package/dist/components/WellInfoPopover.d.ts.map +1 -0
  30. package/dist/components/WellInfoPopover.js +7 -0
  31. package/dist/components/WellInfoPopover.js.map +1 -0
  32. package/dist/components/WellInfoPopover.vue_vue_type_script_setup_true_lang.js +50 -0
  33. package/dist/components/WellInfoPopover.vue_vue_type_script_setup_true_lang.js.map +1 -0
  34. package/dist/components/WellInputNumber.d.ts +4 -0
  35. package/dist/components/WellInputNumber.d.ts.map +1 -0
  36. package/dist/components/WellInputNumber.js +7 -0
  37. package/dist/components/WellInputNumber.js.map +1 -0
  38. package/dist/components/WellInputNumber.vue_vue_type_script_setup_true_lang.js +16 -0
  39. package/dist/components/WellInputNumber.vue_vue_type_script_setup_true_lang.js.map +1 -0
  40. package/dist/components/WellLabeledField.d.ts +22 -0
  41. package/dist/components/WellLabeledField.d.ts.map +1 -0
  42. package/dist/components/WellLabeledField.js +7 -0
  43. package/dist/components/WellLabeledField.js.map +1 -0
  44. package/dist/components/WellLabeledField.vue_vue_type_script_setup_true_lang.js +32 -0
  45. package/dist/components/WellLabeledField.vue_vue_type_script_setup_true_lang.js.map +1 -0
  46. package/dist/components/WellTagSelect.d.ts +21 -0
  47. package/dist/components/WellTagSelect.d.ts.map +1 -0
  48. package/dist/components/WellTagSelect.js +7 -0
  49. package/dist/components/WellTagSelect.js.map +1 -0
  50. package/dist/components/WellTagSelect.vue_vue_type_script_setup_true_lang.js +66 -0
  51. package/dist/components/WellTagSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  52. package/dist/components/WellTextureSelect.d.ts +30 -0
  53. package/dist/components/WellTextureSelect.d.ts.map +1 -0
  54. package/dist/components/WellTextureSelect.js +7 -0
  55. package/dist/components/WellTextureSelect.js.map +1 -0
  56. package/dist/components/WellTextureSelect.vue_vue_type_script_setup_true_lang.js +103 -0
  57. package/dist/components/WellTextureSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  58. package/dist/components/WellTextureThumbnail.d.ts +10 -0
  59. package/dist/components/WellTextureThumbnail.d.ts.map +1 -0
  60. package/dist/components/WellTextureThumbnail.js +9 -0
  61. package/dist/components/WellTextureThumbnail.js.map +1 -0
  62. package/dist/components/WellTextureThumbnail.vue_vue_type_script_setup_true_lang.js +393 -0
  63. package/dist/components/WellTextureThumbnail.vue_vue_type_script_setup_true_lang.js.map +1 -0
  64. package/dist/components/WellUnitInput.d.ts +19 -0
  65. package/dist/components/WellUnitInput.d.ts.map +1 -0
  66. package/dist/components/WellUnitInput.js +7 -0
  67. package/dist/components/WellUnitInput.js.map +1 -0
  68. package/dist/components/WellUnitInput.vue_vue_type_script_setup_true_lang.js +41 -0
  69. package/dist/components/WellUnitInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
  70. package/dist/components/parts/WellInfoTrigger.d.ts +8 -0
  71. package/dist/components/parts/WellInfoTrigger.d.ts.map +1 -0
  72. package/dist/components/parts/WellInfoTrigger.js +7 -0
  73. package/dist/components/parts/WellInfoTrigger.js.map +1 -0
  74. package/dist/components/parts/WellInfoTrigger.vue_vue_type_script_setup_true_lang.js +26 -0
  75. package/dist/components/parts/WellInfoTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -0
  76. package/dist/composables/useWellNumberFormat.d.ts +12 -0
  77. package/dist/composables/useWellNumberFormat.d.ts.map +1 -0
  78. package/dist/composables/useWellNumberFormat.js +25 -0
  79. package/dist/composables/useWellNumberFormat.js.map +1 -0
  80. package/dist/composables/useWellText.d.ts +11 -0
  81. package/dist/composables/useWellText.d.ts.map +1 -0
  82. package/dist/composables/useWellText.js +15 -0
  83. package/dist/composables/useWellText.js.map +1 -0
  84. package/dist/composables/useWellUnits.d.ts +29 -0
  85. package/dist/composables/useWellUnits.d.ts.map +1 -0
  86. package/dist/composables/useWellUnits.js +52 -0
  87. package/dist/composables/useWellUnits.js.map +1 -0
  88. package/dist/config.d.ts +110 -0
  89. package/dist/config.d.ts.map +1 -0
  90. package/dist/config.js +76 -0
  91. package/dist/config.js.map +1 -0
  92. package/dist/grid/WellDataGrid.d.ts +29 -0
  93. package/dist/grid/WellDataGrid.d.ts.map +1 -0
  94. package/dist/grid/WellDataGrid.js +9 -0
  95. package/dist/grid/WellDataGrid.js.map +1 -0
  96. package/dist/grid/WellDataGrid.vue_vue_type_script_setup_true_lang.js +84 -0
  97. package/dist/grid/WellDataGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
  98. package/dist/grid/cells/GridCheckboxCell.d.ts +10 -0
  99. package/dist/grid/cells/GridCheckboxCell.d.ts.map +1 -0
  100. package/dist/grid/cells/GridCheckboxCell.js +7 -0
  101. package/dist/grid/cells/GridCheckboxCell.js.map +1 -0
  102. package/dist/grid/cells/GridCheckboxCell.vue_vue_type_script_setup_true_lang.js +32 -0
  103. package/dist/grid/cells/GridCheckboxCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  104. package/dist/grid/cells/GridColorCell.d.ts +7 -0
  105. package/dist/grid/cells/GridColorCell.d.ts.map +1 -0
  106. package/dist/grid/cells/GridColorCell.js +7 -0
  107. package/dist/grid/cells/GridColorCell.js.map +1 -0
  108. package/dist/grid/cells/GridColorCell.vue_vue_type_script_setup_true_lang.js +18 -0
  109. package/dist/grid/cells/GridColorCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  110. package/dist/grid/cells/GridColorPickerEditor.d.ts +12 -0
  111. package/dist/grid/cells/GridColorPickerEditor.d.ts.map +1 -0
  112. package/dist/grid/cells/GridColorPickerEditor.js +7 -0
  113. package/dist/grid/cells/GridColorPickerEditor.js.map +1 -0
  114. package/dist/grid/cells/GridColorPickerEditor.vue_vue_type_script_setup_true_lang.js +70 -0
  115. package/dist/grid/cells/GridColorPickerEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  116. package/dist/grid/cells/GridComboEditor.d.ts +14 -0
  117. package/dist/grid/cells/GridComboEditor.d.ts.map +1 -0
  118. package/dist/grid/cells/GridComboEditor.js +7 -0
  119. package/dist/grid/cells/GridComboEditor.js.map +1 -0
  120. package/dist/grid/cells/GridComboEditor.vue_vue_type_script_setup_true_lang.js +177 -0
  121. package/dist/grid/cells/GridComboEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  122. package/dist/grid/cells/GridDeleteCell.d.ts +12 -0
  123. package/dist/grid/cells/GridDeleteCell.d.ts.map +1 -0
  124. package/dist/grid/cells/GridDeleteCell.js +7 -0
  125. package/dist/grid/cells/GridDeleteCell.js.map +1 -0
  126. package/dist/grid/cells/GridDeleteCell.vue_vue_type_script_setup_true_lang.js +33 -0
  127. package/dist/grid/cells/GridDeleteCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  128. package/dist/grid/cells/GridDragCell.d.ts +16 -0
  129. package/dist/grid/cells/GridDragCell.d.ts.map +1 -0
  130. package/dist/grid/cells/GridDragCell.js +7 -0
  131. package/dist/grid/cells/GridDragCell.js.map +1 -0
  132. package/dist/grid/cells/GridDragCell.vue_vue_type_script_setup_true_lang.js +50 -0
  133. package/dist/grid/cells/GridDragCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  134. package/dist/grid/cells/GridFormattedCell.d.ts +9 -0
  135. package/dist/grid/cells/GridFormattedCell.d.ts.map +1 -0
  136. package/dist/grid/cells/GridFormattedCell.js +7 -0
  137. package/dist/grid/cells/GridFormattedCell.js.map +1 -0
  138. package/dist/grid/cells/GridFormattedCell.vue_vue_type_script_setup_true_lang.js +19 -0
  139. package/dist/grid/cells/GridFormattedCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  140. package/dist/grid/cells/GridHeaderCell.d.ts +11 -0
  141. package/dist/grid/cells/GridHeaderCell.d.ts.map +1 -0
  142. package/dist/grid/cells/GridHeaderCell.js +7 -0
  143. package/dist/grid/cells/GridHeaderCell.js.map +1 -0
  144. package/dist/grid/cells/GridHeaderCell.vue_vue_type_script_setup_true_lang.js +35 -0
  145. package/dist/grid/cells/GridHeaderCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  146. package/dist/grid/cells/GridNumberEditor.d.ts +9 -0
  147. package/dist/grid/cells/GridNumberEditor.d.ts.map +1 -0
  148. package/dist/grid/cells/GridNumberEditor.js +7 -0
  149. package/dist/grid/cells/GridNumberEditor.js.map +1 -0
  150. package/dist/grid/cells/GridNumberEditor.vue_vue_type_script_setup_true_lang.js +50 -0
  151. package/dist/grid/cells/GridNumberEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  152. package/dist/grid/cells/GridSelectButtonCell.d.ts +12 -0
  153. package/dist/grid/cells/GridSelectButtonCell.d.ts.map +1 -0
  154. package/dist/grid/cells/GridSelectButtonCell.js +7 -0
  155. package/dist/grid/cells/GridSelectButtonCell.js.map +1 -0
  156. package/dist/grid/cells/GridSelectButtonCell.vue_vue_type_script_setup_true_lang.js +52 -0
  157. package/dist/grid/cells/GridSelectButtonCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  158. package/dist/grid/cells/GridSelectCell.d.ts +9 -0
  159. package/dist/grid/cells/GridSelectCell.d.ts.map +1 -0
  160. package/dist/grid/cells/GridSelectCell.js +7 -0
  161. package/dist/grid/cells/GridSelectCell.js.map +1 -0
  162. package/dist/grid/cells/GridSelectCell.vue_vue_type_script_setup_true_lang.js +18 -0
  163. package/dist/grid/cells/GridSelectCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  164. package/dist/grid/cells/GridSelectEditor.d.ts +11 -0
  165. package/dist/grid/cells/GridSelectEditor.d.ts.map +1 -0
  166. package/dist/grid/cells/GridSelectEditor.js +7 -0
  167. package/dist/grid/cells/GridSelectEditor.js.map +1 -0
  168. package/dist/grid/cells/GridSelectEditor.vue_vue_type_script_setup_true_lang.js +51 -0
  169. package/dist/grid/cells/GridSelectEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  170. package/dist/grid/cells/GridTextEditor.d.ts +9 -0
  171. package/dist/grid/cells/GridTextEditor.d.ts.map +1 -0
  172. package/dist/grid/cells/GridTextEditor.js +7 -0
  173. package/dist/grid/cells/GridTextEditor.js.map +1 -0
  174. package/dist/grid/cells/GridTextEditor.vue_vue_type_script_setup_true_lang.js +44 -0
  175. package/dist/grid/cells/GridTextEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  176. package/dist/grid/cells/GridTextureSelectCell.d.ts +7 -0
  177. package/dist/grid/cells/GridTextureSelectCell.d.ts.map +1 -0
  178. package/dist/grid/cells/GridTextureSelectCell.js +7 -0
  179. package/dist/grid/cells/GridTextureSelectCell.js.map +1 -0
  180. package/dist/grid/cells/GridTextureSelectCell.vue_vue_type_script_setup_true_lang.js +19 -0
  181. package/dist/grid/cells/GridTextureSelectCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  182. package/dist/grid/cells/GridTextureSelectEditor.d.ts +13 -0
  183. package/dist/grid/cells/GridTextureSelectEditor.d.ts.map +1 -0
  184. package/dist/grid/cells/GridTextureSelectEditor.js +7 -0
  185. package/dist/grid/cells/GridTextureSelectEditor.js.map +1 -0
  186. package/dist/grid/cells/GridTextureSelectEditor.vue_vue_type_script_setup_true_lang.js +49 -0
  187. package/dist/grid/cells/GridTextureSelectEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  188. package/dist/grid/cells/GridUnitCell.d.ts +9 -0
  189. package/dist/grid/cells/GridUnitCell.d.ts.map +1 -0
  190. package/dist/grid/cells/GridUnitCell.js +7 -0
  191. package/dist/grid/cells/GridUnitCell.js.map +1 -0
  192. package/dist/grid/cells/GridUnitCell.vue_vue_type_script_setup_true_lang.js +29 -0
  193. package/dist/grid/cells/GridUnitCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  194. package/dist/grid/cells/GridUnitEditor.d.ts +11 -0
  195. package/dist/grid/cells/GridUnitEditor.d.ts.map +1 -0
  196. package/dist/grid/cells/GridUnitEditor.js +7 -0
  197. package/dist/grid/cells/GridUnitEditor.js.map +1 -0
  198. package/dist/grid/cells/GridUnitEditor.vue_vue_type_script_setup_true_lang.js +58 -0
  199. package/dist/grid/cells/GridUnitEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  200. package/dist/grid/columnStretchPlugin.d.ts +12 -0
  201. package/dist/grid/columnStretchPlugin.d.ts.map +1 -0
  202. package/dist/grid/columnStretchPlugin.js +35 -0
  203. package/dist/grid/columnStretchPlugin.js.map +1 -0
  204. package/dist/grid/composables/useCellTemplate.d.ts +35 -0
  205. package/dist/grid/composables/useCellTemplate.d.ts.map +1 -0
  206. package/dist/grid/composables/useCellTemplate.js +30 -0
  207. package/dist/grid/composables/useCellTemplate.js.map +1 -0
  208. package/dist/grid/composables/useGridOverlayFocusGuard.d.ts +5 -0
  209. package/dist/grid/composables/useGridOverlayFocusGuard.d.ts.map +1 -0
  210. package/dist/grid/composables/useGridOverlayFocusGuard.js +12 -0
  211. package/dist/grid/composables/useGridOverlayFocusGuard.js.map +1 -0
  212. package/dist/grid/composables/useUnitSuffix.d.ts +9 -0
  213. package/dist/grid/composables/useUnitSuffix.d.ts.map +1 -0
  214. package/dist/grid/composables/useUnitSuffix.js +13 -0
  215. package/dist/grid/composables/useUnitSuffix.js.map +1 -0
  216. package/dist/grid/index.d.ts +8 -0
  217. package/dist/grid/index.d.ts.map +1 -0
  218. package/dist/grid/index.js +4 -0
  219. package/dist/grid/parts/WellGridAddButton.d.ts +5 -0
  220. package/dist/grid/parts/WellGridAddButton.d.ts.map +1 -0
  221. package/dist/grid/parts/WellGridAddButton.js +7 -0
  222. package/dist/grid/parts/WellGridAddButton.js.map +1 -0
  223. package/dist/grid/parts/WellGridAddButton.vue_vue_type_script_setup_true_lang.js +23 -0
  224. package/dist/grid/parts/WellGridAddButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  225. package/dist/grid/parts/WellGridDeleteButton.d.ts +5 -0
  226. package/dist/grid/parts/WellGridDeleteButton.d.ts.map +1 -0
  227. package/dist/grid/parts/WellGridDeleteButton.js +7 -0
  228. package/dist/grid/parts/WellGridDeleteButton.js.map +1 -0
  229. package/dist/grid/parts/WellGridDeleteButton.vue_vue_type_script_setup_true_lang.js +21 -0
  230. package/dist/grid/parts/WellGridDeleteButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  231. package/dist/grid/types.d.ts +90 -0
  232. package/dist/grid/types.d.ts.map +1 -0
  233. package/dist/grid/useWellGridColumns.d.ts +40 -0
  234. package/dist/grid/useWellGridColumns.d.ts.map +1 -0
  235. package/dist/grid/useWellGridColumns.js +242 -0
  236. package/dist/grid/useWellGridColumns.js.map +1 -0
  237. package/dist/grid.css +407 -0
  238. package/dist/index.d.ts +17 -0
  239. package/dist/index.d.ts.map +1 -0
  240. package/dist/index.js +14 -0
  241. package/dist/location/WellCoordinateInput.d.ts +14 -0
  242. package/dist/location/WellCoordinateInput.d.ts.map +1 -0
  243. package/dist/location/WellCoordinateInput.js +7 -0
  244. package/dist/location/WellCoordinateInput.js.map +1 -0
  245. package/dist/location/WellCoordinateInput.vue_vue_type_script_setup_true_lang.js +53 -0
  246. package/dist/location/WellCoordinateInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
  247. package/dist/location/WellLocationMap.d.ts +22 -0
  248. package/dist/location/WellLocationMap.d.ts.map +1 -0
  249. package/dist/location/WellLocationMap.js +9 -0
  250. package/dist/location/WellLocationMap.js.map +1 -0
  251. package/dist/location/WellLocationMap.vue_vue_type_script_setup_true_lang.js +91 -0
  252. package/dist/location/WellLocationMap.vue_vue_type_script_setup_true_lang.js.map +1 -0
  253. package/dist/location/WellLocationPicker.d.ts +32 -0
  254. package/dist/location/WellLocationPicker.d.ts.map +1 -0
  255. package/dist/location/WellLocationPicker.js +7 -0
  256. package/dist/location/WellLocationPicker.js.map +1 -0
  257. package/dist/location/WellLocationPicker.vue_vue_type_script_setup_true_lang.js +117 -0
  258. package/dist/location/WellLocationPicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  259. package/dist/location/index.d.ts +6 -0
  260. package/dist/location/index.d.ts.map +1 -0
  261. package/dist/location/index.js +5 -0
  262. package/dist/location/location.d.ts +61 -0
  263. package/dist/location/location.d.ts.map +1 -0
  264. package/dist/location/location.js +15 -0
  265. package/dist/location/location.js.map +1 -0
  266. package/dist/nuxt/module.d.ts +76 -0
  267. package/dist/nuxt/module.d.ts.map +1 -0
  268. package/dist/nuxt/module.js +129 -0
  269. package/dist/nuxt/module.js.map +1 -0
  270. package/dist/nuxt/runtime/plugin.d.ts +14 -0
  271. package/dist/nuxt/runtime/plugin.d.ts.map +1 -0
  272. package/dist/nuxt/runtime/plugin.js +13 -0
  273. package/dist/nuxt/runtime/plugin.js.map +1 -0
  274. package/dist/style.css +2 -0
  275. package/dist/tailwind.css +160 -0
  276. package/dist/theme/define.d.ts +44 -0
  277. package/dist/theme/define.d.ts.map +1 -0
  278. package/dist/theme/define.js +14 -0
  279. package/dist/theme/define.js.map +1 -0
  280. package/dist/theme/index.d.ts +5 -0
  281. package/dist/theme/index.d.ts.map +1 -0
  282. package/dist/theme/index.js +4 -0
  283. package/dist/theme/preset.d.ts +20 -0
  284. package/dist/theme/preset.d.ts.map +1 -0
  285. package/dist/theme/preset.js +977 -0
  286. package/dist/theme/preset.js.map +1 -0
  287. package/dist/theme/pt.d.ts +8 -0
  288. package/dist/theme/pt.d.ts.map +1 -0
  289. package/dist/theme/pt.js +66 -0
  290. package/dist/theme/pt.js.map +1 -0
  291. package/dist/types.d.ts +38 -0
  292. package/dist/types.d.ts.map +1 -0
  293. package/package.json +134 -3
@@ -0,0 +1,4 @@
1
+ import { columnStretchPlugin as e } from "./columnStretchPlugin.js";
2
+ import { useWellGridColumns as t } from "./useWellGridColumns.js";
3
+ import n from "./WellDataGrid.js";
4
+ export { n as WellDataGrid, e as columnStretchPlugin, t as useWellGridColumns };
@@ -0,0 +1,5 @@
1
+ import { WellAddButtonProps } from '../../types';
2
+ declare const __VLS_export: import('vue').DefineComponent<WellAddButtonProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<WellAddButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
3
+ declare const _default: typeof __VLS_export;
4
+ export default _default;
5
+ //# sourceMappingURL=WellGridAddButton.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WellGridAddButton.d.ts","sourceRoot":"","sources":["../../../src/grid/parts/WellGridAddButton.vue"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAsDtD,QAAA,MAAM,YAAY,gTAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,7 @@
1
+ import e from "./WellGridAddButton.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/grid/parts/WellGridAddButton.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=WellGridAddButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WellGridAddButton.js","names":[],"sources":["../../../src/grid/parts/WellGridAddButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * Default `WellDataGrid` add-row button (`components.addButton`): a pill\n * with a plus icon and `label`. Without a label it renders icon-only. The\n * grid's click listener falls through to the button.\n */\nimport Button from 'primevue/button';\nimport IconPlus from '~icons/ph/plus';\nimport type { WellAddButtonProps } from '../../types';\n\ndefineProps<WellAddButtonProps>();\n</script>\n\n<template>\n <Button unstyled class=\"well-grid-add-btn\" type=\"button\" :label=\"label\">\n <template #icon>\n <IconPlus />\n </template>\n </Button>\n</template>\n"],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import e from "../../_virtual/icons/ph/plus.js";
2
+ import { createBlock as t, createVNode as n, defineComponent as r, openBlock as i, unref as a, withCtx as o } from "vue";
3
+ import s from "primevue/button";
4
+ //#region src/grid/parts/WellGridAddButton.vue?vue&type=script&setup=true&lang.ts
5
+ var c = /* @__PURE__ */ r({
6
+ __name: "WellGridAddButton",
7
+ props: { label: {} },
8
+ setup(r) {
9
+ return (c, l) => (i(), t(a(s), {
10
+ unstyled: "",
11
+ class: "well-grid-add-btn",
12
+ type: "button",
13
+ label: r.label
14
+ }, {
15
+ icon: o(() => [n(a(e))]),
16
+ _: 1
17
+ }, 8, ["label"]));
18
+ }
19
+ });
20
+ //#endregion
21
+ export { c as default };
22
+
23
+ //# sourceMappingURL=WellGridAddButton.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WellGridAddButton.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/grid/parts/WellGridAddButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * Default `WellDataGrid` add-row button (`components.addButton`): a pill\n * with a plus icon and `label`. Without a label it renders icon-only. The\n * grid's click listener falls through to the button.\n */\nimport Button from 'primevue/button';\nimport IconPlus from '~icons/ph/plus';\nimport type { WellAddButtonProps } from '../../types';\n\ndefineProps<WellAddButtonProps>();\n</script>\n\n<template>\n <Button unstyled class=\"well-grid-add-btn\" type=\"button\" :label=\"label\">\n <template #icon>\n <IconPlus />\n </template>\n </Button>\n</template>\n"],"mappings":";;;;;;;;yBAcE,EAIS,EAAA,EAAA,EAAA;GAJD,UAAA;GAAS,OAAM;GAAoB,MAAK;GAAU,OAAO,EAAA;;GACpD,MAAI,QACD,CAAZ,EAAY,EAAA,EAAA,CAAA,CAAA,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { WellDeleteButtonProps } from '../../types';
2
+ declare const __VLS_export: import('vue').DefineComponent<WellDeleteButtonProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<WellDeleteButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
3
+ declare const _default: typeof __VLS_export;
4
+ export default _default;
5
+ //# sourceMappingURL=WellGridDeleteButton.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WellGridDeleteButton.d.ts","sourceRoot":"","sources":["../../../src/grid/parts/WellGridDeleteButton.vue"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAyBzD,QAAA,MAAM,YAAY,sTAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,7 @@
1
+ import e from "./WellGridDeleteButton.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/grid/parts/WellGridDeleteButton.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=WellGridDeleteButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WellGridDeleteButton.js","names":[],"sources":["../../../src/grid/parts/WellGridDeleteButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * Default `WellDataGrid` delete-row button (`components.deleteButton`). The\n * × is drawn by `grid.css` (`.well-grid-delete-btn::before`); `label` becomes\n * the aria-label. The cell's click listener falls through to the button.\n */\nimport type { WellDeleteButtonProps } from '../../types';\n\ndefineProps<WellDeleteButtonProps>();\n</script>\n\n<template>\n <button class=\"well-grid-delete-btn\" type=\"button\" :aria-label=\"label\" />\n</template>\n"],"mappings":""}
@@ -0,0 +1,21 @@
1
+ import { createElementBlock as e, defineComponent as t, openBlock as n } from "vue";
2
+ //#region src/grid/parts/WellGridDeleteButton.vue?vue&type=script&setup=true&lang.ts
3
+ var r = ["aria-label"], i = /* @__PURE__ */ t({
4
+ __name: "WellGridDeleteButton",
5
+ props: {
6
+ index: {},
7
+ row: {},
8
+ label: {}
9
+ },
10
+ setup(t) {
11
+ return (i, a) => (n(), e("button", {
12
+ class: "well-grid-delete-btn",
13
+ type: "button",
14
+ "aria-label": t.label
15
+ }, null, 8, r));
16
+ }
17
+ });
18
+ //#endregion
19
+ export { i as default };
20
+
21
+ //# sourceMappingURL=WellGridDeleteButton.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WellGridDeleteButton.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/grid/parts/WellGridDeleteButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * Default `WellDataGrid` delete-row button (`components.deleteButton`). The\n * × is drawn by `grid.css` (`.well-grid-delete-btn::before`); `label` becomes\n * the aria-label. The cell's click listener falls through to the button.\n */\nimport type { WellDeleteButtonProps } from '../../types';\n\ndefineProps<WellDeleteButtonProps>();\n</script>\n\n<template>\n <button class=\"well-grid-delete-btn\" type=\"button\" :aria-label=\"label\" />\n</template>\n"],"mappings":";;;;;;;;;;yBAYE,EAAyE,UAAA;GAAjE,OAAM;GAAuB,MAAK;GAAU,cAAY,EAAA"}
@@ -0,0 +1,90 @@
1
+ import { LanguageTextInput } from '@welldot/core';
2
+ import { Component } from 'vue';
3
+ import { DisplayUnitType } from '../composables/useWellUnits';
4
+ /**
5
+ * A choice of a `select`, `select-button` or `combo` column. A core
6
+ * vocabulary (`VocabEntry[]`) fits as-is; `deprecated` entries are still
7
+ * displayed but not offered by the editors.
8
+ */
9
+ export interface WellGridOption {
10
+ value: string;
11
+ label: LanguageTextInput;
12
+ deprecated?: boolean;
13
+ }
14
+ export type WellGridColumnBase = {
15
+ /** Object key on the row model */
16
+ prop: string;
17
+ /** Header label, resolved for the configured locale */
18
+ label: LanguageTextInput;
19
+ /** Help text, shown in an info popover next to the header label */
20
+ info?: LanguageTextInput;
21
+ /** Note rendered as a highlighted callout below `info` */
22
+ infoHighlight?: LanguageTextInput;
23
+ /** Column width in px (auto-sized when omitted) */
24
+ size?: number;
25
+ /** Prevent editing */
26
+ readonly?: boolean;
27
+ /**
28
+ * Override the built-in editor key: `text`, `number`, `color`, `unit`,
29
+ * `select`, `combo`, `texture` or `noop`.
30
+ */
31
+ editor?: string;
32
+ /**
33
+ * Unit-aware column: values are stored canonical (SI) and shown/edited in
34
+ * the configured display unit, with the unit appended to the header.
35
+ */
36
+ unitType?: DisplayUnitType;
37
+ /** Display-only formatter — bypasses the editor */
38
+ formatter?: (value: unknown, row: Record<string, unknown>) => string;
39
+ pin?: 'colPinStart' | 'colPinEnd';
40
+ /** Stretch this column to absorb all remaining grid width */
41
+ stretch?: boolean;
42
+ /** Minimum width (px) for a stretch column (default 50) */
43
+ minSize?: number;
44
+ };
45
+ export type WellGridColumn = (WellGridColumnBase & {
46
+ type?: 'text' | 'number' | 'color' | 'checkbox';
47
+ }) | (WellGridColumnBase & {
48
+ type: 'select';
49
+ options: readonly WellGridOption[];
50
+ }) | (WellGridColumnBase & {
51
+ type: 'select-button';
52
+ options: readonly WellGridOption[];
53
+ }) | (WellGridColumnBase & {
54
+ /** Suggested values with labels, but any free text is accepted and stored as-is. */
55
+ type: 'combo';
56
+ options: readonly WellGridOption[];
57
+ }) | (WellGridColumnBase & {
58
+ type: 'texture';
59
+ });
60
+ export type WellGridColumnType = NonNullable<WellGridColumn['type']>;
61
+ /** Grid-internal text of `WellDataGrid`. Every entry is optional. */
62
+ export interface WellDataGridLabels {
63
+ /** Placeholder of the texture editor. */
64
+ texturePlaceholder?: LanguageTextInput;
65
+ /** "Show pending textures" toggle of the texture editor; hidden without it. */
66
+ showPendingTextures?: LanguageTextInput;
67
+ /** Accessible label of the info trigger in column headers. */
68
+ columnInfo?: LanguageTextInput;
69
+ /**
70
+ * Note atop the suggestions of `combo` columns, saying any typed value is
71
+ * accepted; hidden without it.
72
+ */
73
+ comboHint?: LanguageTextInput;
74
+ }
75
+ /**
76
+ * Swappable parts of `WellDataGrid` (`components` prop). Contracts:
77
+ * `WellAddButtonProps`, `WellDeleteButtonProps`, `WellDragHandleProps`.
78
+ */
79
+ export interface WellDataGridComponents {
80
+ addButton?: Component;
81
+ deleteButton?: Component;
82
+ dragHandle?: Component;
83
+ }
84
+ /** An option with its label resolved for the configured locale. */
85
+ export interface ResolvedGridOption {
86
+ value: string;
87
+ label: string;
88
+ deprecated?: boolean;
89
+ }
90
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/grid/types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,iBAAiB,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,KAAK,EAAE,iBAAiB,CAAC;IACzB,mEAAmE;IACnE,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,mDAAmD;IACnD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;IACrE,GAAG,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;IAClC,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GACtB,CAAC,kBAAkB,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;CAAE,CAAC,GAC1E,CAAC,kBAAkB,GAAG;IACpB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;CACpC,CAAC,GACF,CAAC,kBAAkB,GAAG;IACpB,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;CACpC,CAAC,GACF,CAAC,kBAAkB,GAAG;IACpB,oFAAoF;IACpF,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;CACpC,CAAC,GACF,CAAC,kBAAkB,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AAErE,qEAAqE;AACrE,MAAM,WAAW,kBAAkB;IACjC,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,+EAA+E;IAC/E,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,8DAA8D;IAC9D,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,CAAC;CACxB;AAED,mEAAmE;AACnE,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
@@ -0,0 +1,40 @@
1
+ import { AfterEditEvent, ColumnRegular, Editors, FocusAfterRenderEvent } from '@revolist/revogrid';
2
+ import { BasePlugin } from '@revolist/vue3-datagrid';
3
+ import { LanguageTextInput } from '@welldot/core';
4
+ import { MaybeRefOrGetter } from 'vue';
5
+ import { WellDataGridComponents, WellDataGridLabels, WellGridColumn } from './types';
6
+ export interface UseWellGridColumnsOptions {
7
+ columns: MaybeRefOrGetter<WellGridColumn[]>;
8
+ onDelete: (rowIndex: number, model: Record<string, unknown>) => void;
9
+ onChange: (rowIndex: number, prop: string, value: unknown) => void;
10
+ /** Include the pinned-start drag-handle column (default true) */
11
+ enableDrag?: boolean;
12
+ /** Include the pinned-end delete-row column (default true) */
13
+ enableDelete?: boolean;
14
+ /** Label handed to the delete-button part (its aria-label by default). */
15
+ deleteLabel?: MaybeRefOrGetter<LanguageTextInput>;
16
+ /** Grid-internal text (texture editor, header info trigger). */
17
+ labels?: MaybeRefOrGetter<WellDataGridLabels | undefined>;
18
+ /** Part overrides; `addButton` is rendered by `WellDataGrid` itself. */
19
+ components?: MaybeRefOrGetter<WellDataGridComponents | undefined>;
20
+ }
21
+ /**
22
+ * Editor registry, column-kind resolution and RevoGrid column builder for a
23
+ * well feature grid. **Call it in `setup`**: cell templates and editors are
24
+ * bound to the calling component's app context there (see
25
+ * `useCellTemplate`), which is what lets cells reach `createWelldot` and
26
+ * PrimeVue.
27
+ */
28
+ export declare function useWellGridColumns(options: UseWellGridColumnsOptions): {
29
+ gridEditors: Editors;
30
+ revoColumns: import('vue').ComputedRef<ColumnRegular<import('@revolist/revogrid').ColumnProp, import('@revolist/revogrid').DataType<any, import('@revolist/revogrid').ColumnProp>>[]>;
31
+ gridStretch: import('vue').ComputedRef<boolean>;
32
+ plugins: import('vue').ComputedRef<(typeof BasePlugin)[]>;
33
+ coerceCellValue: (prop: string, val: unknown) => unknown;
34
+ handleAfterEdit: (event: CustomEvent<AfterEditEvent>) => void;
35
+ gridContainerRef: import('vue').Ref<HTMLElement | null, HTMLElement | null>;
36
+ handleAfterFocus: (event: CustomEvent<FocusAfterRenderEvent>) => void;
37
+ handleGridMousedown: () => void;
38
+ handleGridClick: (event: MouseEvent) => void;
39
+ };
40
+ //# sourceMappingURL=useWellGridColumns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWellGridColumns.d.ts","sourceRoot":"","sources":["../../src/grid/useWellGridColumns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAEd,aAAa,EACb,OAAO,EACP,qBAAqB,EAEtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,UAAU,EAGX,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAOL,KAAK,gBAAgB,EACtB,MAAM,KAAK,CAAC;AA4Bb,OAAO,KAAK,EAEV,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EAEf,MAAM,SAAS,CAAC;AA0GjB,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,gBAAgB,CAAC,cAAc,EAAE,CAAC,CAAC;IAC5C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACrE,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnE,iEAAiE;IACjE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,0EAA0E;IAC1E,WAAW,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IAClD,gEAAgE;IAChE,MAAM,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IAC1D,wEAAwE;IACxE,UAAU,CAAC,EAAE,gBAAgB,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAC;CACnE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB;;;;;4BAgOpC,MAAM,OAAO,OAAO,KAAG,OAAO;6BA6D7B,WAAW,CAAC,cAAc,CAAC;;8BAxC1B,WAAW,CAAC,qBAAqB,CAAC;;6BAYnC,UAAU;EAiE3C"}
@@ -0,0 +1,242 @@
1
+ import { resolvePart as e, useWelldotConfig as t } from "../config.js";
2
+ import { useWellText as n } from "../composables/useWellText.js";
3
+ import { columnStretchPlugin as r } from "./columnStretchPlugin.js";
4
+ import i from "./cells/GridCheckboxCell.js";
5
+ import a from "./cells/GridColorCell.js";
6
+ import o from "./cells/GridColorPickerEditor.js";
7
+ import ee from "./cells/GridComboEditor.js";
8
+ import te from "./cells/GridDeleteCell.js";
9
+ import s from "./cells/GridDragCell.js";
10
+ import c from "./cells/GridFormattedCell.js";
11
+ import l from "./cells/GridHeaderCell.js";
12
+ import u from "./cells/GridNumberEditor.js";
13
+ import d from "./cells/GridSelectButtonCell.js";
14
+ import f from "./cells/GridSelectCell.js";
15
+ import ne from "./cells/GridSelectEditor.js";
16
+ import p from "./cells/GridTextEditor.js";
17
+ import m from "./cells/GridTextureSelectCell.js";
18
+ import h from "./cells/GridTextureSelectEditor.js";
19
+ import { useUnitSuffix as g } from "./composables/useUnitSuffix.js";
20
+ import _ from "./cells/GridUnitCell.js";
21
+ import v from "./cells/GridUnitEditor.js";
22
+ import { useCellTemplate as re } from "./composables/useCellTemplate.js";
23
+ import y from "./parts/WellGridDeleteButton.js";
24
+ import { computed as b, defineComponent as x, h as S, ref as C, toValue as w } from "vue";
25
+ import { BasePlugin as T, VGridVueEditor as E } from "@revolist/vue3-datagrid";
26
+ //#region src/grid/useWellGridColumns.ts
27
+ function ie(e) {
28
+ return e.type === "texture" ? "texture" : e.type === "select" ? "select" : e.type === "select-button" ? "select-button" : e.type === "combo" ? "combo" : e.type === "color" ? "color" : e.type === "checkbox" ? "checkbox" : e.unitType ? "unit" : e.formatter ? "formatted" : e.type === "number" ? "number" : "text";
29
+ }
30
+ var D = [
31
+ "length",
32
+ "diameter",
33
+ "flow",
34
+ "power",
35
+ "volume"
36
+ ], O = [
37
+ "val",
38
+ "save",
39
+ "close",
40
+ "column"
41
+ ];
42
+ function k(e, t) {
43
+ return E(x((n) => () => S(e, {
44
+ val: n.val,
45
+ save: n.save,
46
+ close: n.close,
47
+ ...n.column?.column?.editorProps,
48
+ ...t?.()
49
+ }), {
50
+ inheritAttrs: !1,
51
+ props: O
52
+ }));
53
+ }
54
+ var A = x((e) => (e.close(), () => null), {
55
+ inheritAttrs: !1,
56
+ props: O
57
+ });
58
+ function j(x) {
59
+ let { onDelete: S, onChange: O, enableDrag: j = !0, enableDelete: M = !0 } = x, N = b(() => w(x.columns)), P = b(() => w(x.labels) ?? {}), F = b(() => w(x.components) ?? {}), I = t(), L = n(), R = re(), z = Object.fromEntries(D.map((e) => [e, g(e)])), B = {
60
+ noop: E(A),
61
+ text: E(p),
62
+ number: E(u),
63
+ color: E(o),
64
+ unit: k(v),
65
+ select: k(ne),
66
+ combo: k(ee, () => ({ hint: P.value.comboHint })),
67
+ texture: k(h, () => ({
68
+ placeholder: P.value.texturePlaceholder,
69
+ showPending: P.value.showPendingTextures
70
+ }))
71
+ }, V = R(l), H = b(() => N.value.find((e) => e.stretch) ?? null), U = b(() => H.value?.prop ?? null), W = b(() => U.value === null), G = b(() => {
72
+ let e = [];
73
+ return j && e.push(class extends T {
74
+ constructor(e, t) {
75
+ super(e, t), this.addEventListener("rowdragstart", (e) => {
76
+ let t = e.detail.model?.name;
77
+ typeof t == "string" && t && (e.detail.text = t);
78
+ });
79
+ }
80
+ }), U.value !== null && e.push(r(U.value, H.value?.minSize)), e;
81
+ }), K = () => ({ class: "well-grid-checkbox-cell" }), q = {
82
+ text: {},
83
+ number: { numeric: !0 },
84
+ unit: {
85
+ editor: "unit",
86
+ numeric: !0,
87
+ editorProps: ({ col: e }) => ({ unitType: e.unitType }),
88
+ cellTemplate: ({ col: e }) => R(_, { unitType: e.unitType })
89
+ },
90
+ color: {
91
+ editor: "color",
92
+ cellTemplate: () => R(a)
93
+ },
94
+ select: {
95
+ editor: "select",
96
+ editorProps: ({ options: e }) => ({ options: e }),
97
+ cellTemplate: ({ options: e }) => R(f, { options: e })
98
+ },
99
+ combo: {
100
+ editor: "combo",
101
+ editorProps: ({ options: e }) => ({ options: e }),
102
+ cellTemplate: ({ options: e }) => R(f, { options: e })
103
+ },
104
+ formatted: { cellTemplate: ({ col: e }) => R(c, { formatter: e.formatter }) },
105
+ checkbox: {
106
+ editor: "noop",
107
+ cellProperties: K,
108
+ cellTemplate: ({ col: e }) => R(i, {
109
+ prop: e.prop,
110
+ onToggle: (e, t, n) => O(e, t, n)
111
+ })
112
+ },
113
+ "select-button": {
114
+ editor: "noop",
115
+ cellProperties: K,
116
+ cellTemplate: ({ col: e, options: t }) => R(d, {
117
+ prop: e.prop,
118
+ options: t,
119
+ onChange: (e, t, n) => O(e, t, n)
120
+ })
121
+ },
122
+ texture: {
123
+ editor: "texture",
124
+ cellTemplate: () => R(m)
125
+ }
126
+ };
127
+ function J(e) {
128
+ return e.map((e) => ({
129
+ value: e.value,
130
+ label: L(e.label) ?? e.value,
131
+ ...e.deprecated && { deprecated: !0 }
132
+ }));
133
+ }
134
+ function Y(e) {
135
+ let t = q[ie(e)], n = {
136
+ col: e,
137
+ options: "options" in e ? J(e.options) : void 0
138
+ }, r = L(e.label) ?? "", i = e.unitType ? z[e.unitType].value : null, a = e.readonly ?? !1, o = L(e.info);
139
+ return {
140
+ prop: e.prop,
141
+ name: i ? `${r} (${i})` : r,
142
+ autoSize: !e.size && !e.stretch,
143
+ size: e.size,
144
+ readonly: a,
145
+ editor: a ? void 0 : t.editor ?? e.editor ?? (e.type === "number" ? "number" : "text"),
146
+ editorProps: t.editorProps?.(n),
147
+ pin: e.pin,
148
+ cellProperties: t.cellProperties ?? (t.numeric ? () => ({ class: "num" }) : void 0),
149
+ cellTemplate: t.cellTemplate?.(n),
150
+ ...o && {
151
+ info: o,
152
+ infoHighlight: L(e.infoHighlight),
153
+ infoLabel: L(P.value.columnInfo),
154
+ columnTemplate: V
155
+ }
156
+ };
157
+ }
158
+ let ae = b(() => {
159
+ let t = [];
160
+ if (j) {
161
+ let n = e("dragHandle", F.value.dragHandle, void 0, I);
162
+ t.push({
163
+ prop: "_drag",
164
+ name: "",
165
+ size: 30,
166
+ pin: "colPinStart",
167
+ rowDrag: !0,
168
+ cellProperties: () => ({ class: "well-grid-drag-cell" }),
169
+ ...n && { cellTemplate: R(s, { part: n }) }
170
+ });
171
+ }
172
+ return t.push(...N.value.map(Y)), M && t.push({
173
+ prop: "_delete",
174
+ name: "",
175
+ size: 40,
176
+ readonly: !0,
177
+ pin: "colPinEnd",
178
+ cellProperties: () => ({ class: "well-grid-delete-cell" }),
179
+ cellTemplate: R(te, {
180
+ part: e("deleteButton", F.value.deleteButton, y, I),
181
+ label: L(w(x.deleteLabel)),
182
+ requestDelete: S
183
+ })
184
+ }), t;
185
+ });
186
+ function X(e, t) {
187
+ return N.value.find((t) => t.prop === e)?.type === "checkbox" && typeof t == "string" ? t === "true" || t === "1" || t.toLowerCase() === "yes" : t;
188
+ }
189
+ let Z = C(null), Q = C(null), $ = !1;
190
+ function oe(e) {
191
+ let { rowIndex: t, colIndex: n, column: r } = e.detail;
192
+ Q.value = r ? {
193
+ rowIndex: t,
194
+ colIndex: n,
195
+ prop: String(r.prop)
196
+ } : null, $ = !0;
197
+ }
198
+ function se() {
199
+ $ = !1;
200
+ }
201
+ function ce(e) {
202
+ if ($) {
203
+ $ = !1;
204
+ return;
205
+ }
206
+ let t = Q.value;
207
+ if (!t) return;
208
+ let n = e.target.closest("[data-rgrow][data-rgcol]");
209
+ if (!n || Number(n.dataset.rgrow) !== t.rowIndex || Number(n.dataset.rgcol) !== t.colIndex) return;
210
+ let r = N.value.find((e) => e.prop === t.prop);
211
+ !r || r.readonly || (Z.value?.querySelector("revo-grid"))?.setCellEdit(t.rowIndex, t.prop);
212
+ }
213
+ function le(e) {
214
+ let t = e.detail;
215
+ if ("rowIndex" in t) {
216
+ let { rowIndex: e, prop: n, val: r } = t;
217
+ O(e, String(n), X(String(n), r));
218
+ return;
219
+ }
220
+ let n = t.data;
221
+ if (n) for (let [e, t] of Object.entries(n)) {
222
+ let n = Number(e);
223
+ for (let [e, r] of Object.entries(t)) O(n, e, X(e, r));
224
+ }
225
+ }
226
+ return {
227
+ gridEditors: B,
228
+ revoColumns: ae,
229
+ gridStretch: W,
230
+ plugins: G,
231
+ coerceCellValue: X,
232
+ handleAfterEdit: le,
233
+ gridContainerRef: Z,
234
+ handleAfterFocus: oe,
235
+ handleGridMousedown: se,
236
+ handleGridClick: ce
237
+ };
238
+ }
239
+ //#endregion
240
+ export { j as useWellGridColumns };
241
+
242
+ //# sourceMappingURL=useWellGridColumns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWellGridColumns.js","names":[],"sources":["../../src/grid/useWellGridColumns.ts"],"sourcesContent":["import type {\n AfterEditEvent,\n BeforeSaveDataDetails,\n ColumnRegular,\n Editors,\n FocusAfterRenderEvent,\n GridPlugin,\n} from '@revolist/revogrid';\nimport {\n BasePlugin,\n VGridVueEditor,\n type PluginProviders,\n} from '@revolist/vue3-datagrid';\nimport type { LanguageTextInput } from '@welldot/core';\nimport {\n computed,\n defineComponent,\n h,\n ref,\n toValue,\n type Component,\n type MaybeRefOrGetter,\n} from 'vue';\nimport { useWellText } from '../composables/useWellText';\nimport type { DisplayUnitType } from '../composables/useWellUnits';\nimport { resolvePart, useWelldotConfig } from '../config';\nimport GridCheckboxCell from './cells/GridCheckboxCell.vue';\nimport GridColorCell from './cells/GridColorCell.vue';\nimport GridColorPickerEditor from './cells/GridColorPickerEditor.vue';\nimport GridComboEditor from './cells/GridComboEditor.vue';\nimport GridDeleteCell from './cells/GridDeleteCell.vue';\nimport GridDragCell from './cells/GridDragCell.vue';\nimport GridFormattedCell from './cells/GridFormattedCell.vue';\nimport GridHeaderCell from './cells/GridHeaderCell.vue';\nimport GridNumberEditor from './cells/GridNumberEditor.vue';\nimport GridSelectButtonCell from './cells/GridSelectButtonCell.vue';\nimport GridSelectCell from './cells/GridSelectCell.vue';\nimport GridSelectEditor from './cells/GridSelectEditor.vue';\nimport GridTextEditor from './cells/GridTextEditor.vue';\nimport GridTextureSelectCell from './cells/GridTextureSelectCell.vue';\nimport GridTextureSelectEditor from './cells/GridTextureSelectEditor.vue';\nimport GridUnitCell from './cells/GridUnitCell.vue';\nimport GridUnitEditor from './cells/GridUnitEditor.vue';\nimport { columnStretchPlugin } from './columnStretchPlugin';\nimport {\n useCellTemplate,\n type GridVueTemplate,\n} from './composables/useCellTemplate';\nimport { useUnitSuffix } from './composables/useUnitSuffix';\nimport WellGridDeleteButton from './parts/WellGridDeleteButton.vue';\nimport type {\n ResolvedGridOption,\n WellDataGridComponents,\n WellDataGridLabels,\n WellGridColumn,\n WellGridOption,\n} from './types';\n\n// ─── Column kinds ──────────────────────────────────────────────────────────\n// Declares how each column \"kind\" renders and edits.\n// `resolveColumnKind` decides which kind a column declaration maps to.\n\ntype ColumnKind =\n | 'text'\n | 'number'\n | 'unit'\n | 'color'\n | 'select'\n | 'select-button'\n | 'combo'\n | 'formatted'\n | 'checkbox'\n | 'texture';\n\n/** What a kind needs from one column, with its text already resolved. */\ninterface ResolvedColumn {\n col: WellGridColumn;\n options?: ResolvedGridOption[];\n}\n\ninterface ColumnKindDef {\n editor?: string;\n numeric?: boolean;\n cellProperties?: ColumnRegular['cellProperties'];\n cellTemplate?: (c: ResolvedColumn) => GridVueTemplate;\n /** Per-column props handed to the editor (read from `column.editorProps`). */\n editorProps?: (c: ResolvedColumn) => Record<string, unknown>;\n}\n\nfunction resolveColumnKind(col: WellGridColumn): ColumnKind {\n if (col.type === 'texture') return 'texture';\n if (col.type === 'select') return 'select';\n if (col.type === 'select-button') return 'select-button';\n if (col.type === 'combo') return 'combo';\n if (col.type === 'color') return 'color';\n if (col.type === 'checkbox') return 'checkbox';\n if (col.unitType) return 'unit';\n if (col.formatter) return 'formatted';\n return col.type === 'number' ? 'number' : 'text';\n}\n\nconst UNIT_TYPES: readonly DisplayUnitType[] = [\n 'length',\n 'diameter',\n 'flow',\n 'power',\n 'volume',\n];\n\n/** Props RevoGrid hands to every editor (`EditorType`). */\ninterface GridEditorProps {\n val?: unknown;\n save: (value: unknown, preventFocus?: boolean) => void;\n close: (focusNext?: boolean) => void;\n /** Cell data model; `column.column` is the `ColumnRegular`. */\n column?: { column?: { editorProps?: Record<string, unknown> } };\n}\n\n/* eslint-disable vue/one-component-per-file -- tiny render-function editor\n adapters, not SFCs */\n\nconst EDITOR_PROP_KEYS: Array<keyof GridEditorProps> = [\n 'val',\n 'save',\n 'close',\n 'column',\n];\n\n/**\n * Editor that forwards `val`/`save`/`close` plus the column's\n * `editorProps` (and optional grid-wide props) to `component`. Lets one\n * editor per kind — registered once in setup — serve every column.\n */\nfunction columnEditor(\n component: Component,\n extraProps?: () => Record<string, unknown>,\n) {\n return VGridVueEditor(\n defineComponent(\n (p: GridEditorProps) => () =>\n h(component, {\n val: p.val,\n save: p.save,\n close: p.close,\n ...p.column?.column?.editorProps,\n ...extraProps?.(),\n }),\n { inheritAttrs: false, props: EDITOR_PROP_KEYS },\n ),\n );\n}\n\nconst NoopEditor = defineComponent(\n (p: GridEditorProps) => {\n p.close();\n return () => null;\n },\n { inheritAttrs: false, props: EDITOR_PROP_KEYS },\n);\n\n/* eslint-enable vue/one-component-per-file */\n\nexport interface UseWellGridColumnsOptions {\n columns: MaybeRefOrGetter<WellGridColumn[]>;\n onDelete: (rowIndex: number, model: Record<string, unknown>) => void;\n onChange: (rowIndex: number, prop: string, value: unknown) => void;\n /** Include the pinned-start drag-handle column (default true) */\n enableDrag?: boolean;\n /** Include the pinned-end delete-row column (default true) */\n enableDelete?: boolean;\n /** Label handed to the delete-button part (its aria-label by default). */\n deleteLabel?: MaybeRefOrGetter<LanguageTextInput>;\n /** Grid-internal text (texture editor, header info trigger). */\n labels?: MaybeRefOrGetter<WellDataGridLabels | undefined>;\n /** Part overrides; `addButton` is rendered by `WellDataGrid` itself. */\n components?: MaybeRefOrGetter<WellDataGridComponents | undefined>;\n}\n\n/**\n * Editor registry, column-kind resolution and RevoGrid column builder for a\n * well feature grid. **Call it in `setup`**: cell templates and editors are\n * bound to the calling component's app context there (see\n * `useCellTemplate`), which is what lets cells reach `createWelldot` and\n * PrimeVue.\n */\nexport function useWellGridColumns(options: UseWellGridColumnsOptions) {\n const {\n onDelete,\n onChange,\n enableDrag = true,\n enableDelete = true,\n } = options;\n const cols = computed(() => toValue(options.columns));\n const labels = computed(() => toValue(options.labels) ?? {});\n const parts = computed(() => toValue(options.components) ?? {});\n\n const config = useWelldotConfig();\n const text = useWellText();\n const cellTemplate = useCellTemplate();\n const suffixes = Object.fromEntries(\n UNIT_TYPES.map(type => [type, useUnitSuffix(type)]),\n ) as Record<DisplayUnitType, ReturnType<typeof useUnitSuffix>>;\n\n // ─── Editors ───────────────────────────────────────────────────────────────\n // Created once, here in setup: `VGridVueEditor` captures the current\n // instance's app context when called. Per-column data (unit type, options)\n // travels on the column as `editorProps`.\n\n const gridEditors: Editors = {\n noop: VGridVueEditor(NoopEditor),\n text: VGridVueEditor(GridTextEditor),\n number: VGridVueEditor(GridNumberEditor),\n color: VGridVueEditor(GridColorPickerEditor),\n unit: columnEditor(GridUnitEditor),\n select: columnEditor(GridSelectEditor),\n combo: columnEditor(GridComboEditor, () => ({\n hint: labels.value.comboHint,\n })),\n texture: columnEditor(GridTextureSelectEditor, () => ({\n placeholder: labels.value.texturePlaceholder,\n showPending: labels.value.showPendingTextures,\n })),\n };\n\n const headerTemplate = cellTemplate(GridHeaderCell);\n\n const stretchCol = computed(() => cols.value.find(c => c.stretch) ?? null);\n const stretchProp = computed(() => stretchCol.value?.prop ?? null);\n const gridStretch = computed(() => stretchProp.value === null);\n\n const plugins = computed(() => {\n const list: GridPlugin[] = [];\n if (enableDrag) {\n list.push(\n class HRPlugin extends BasePlugin {\n constructor(r: HTMLRevoGridElement, p: PluginProviders) {\n super(r, p);\n this.addEventListener('rowdragstart', e => {\n const name = e.detail.model?.['name'];\n if (typeof name === 'string' && name) {\n e.detail.text = name;\n }\n });\n }\n },\n );\n }\n if (stretchProp.value !== null) {\n list.push(\n columnStretchPlugin(stretchProp.value, stretchCol.value?.minSize),\n );\n }\n return list;\n });\n\n const checkboxCellProperties = () => ({ class: 'well-grid-checkbox-cell' });\n\n const columnKinds: Record<ColumnKind, ColumnKindDef> = {\n text: {},\n number: { numeric: true },\n unit: {\n editor: 'unit',\n numeric: true,\n editorProps: ({ col }) => ({ unitType: col.unitType }),\n cellTemplate: ({ col }) =>\n cellTemplate(GridUnitCell, { unitType: col.unitType }),\n },\n color: {\n editor: 'color',\n cellTemplate: () => cellTemplate(GridColorCell),\n },\n select: {\n editor: 'select',\n editorProps: ({ options }) => ({ options }),\n cellTemplate: ({ options }) => cellTemplate(GridSelectCell, { options }),\n },\n combo: {\n editor: 'combo',\n editorProps: ({ options }) => ({ options }),\n // GridSelectCell already falls back to the raw value when it isn't\n // one of the suggested options, which is exactly what free text needs.\n cellTemplate: ({ options }) => cellTemplate(GridSelectCell, { options }),\n },\n formatted: {\n cellTemplate: ({ col }) =>\n cellTemplate(GridFormattedCell, { formatter: col.formatter }),\n },\n checkbox: {\n editor: 'noop',\n cellProperties: checkboxCellProperties,\n cellTemplate: ({ col }) =>\n cellTemplate(GridCheckboxCell, {\n prop: col.prop,\n onToggle: (rowIndex: number, prop: string, value: boolean) =>\n onChange(rowIndex, prop, value),\n }),\n },\n 'select-button': {\n editor: 'noop',\n cellProperties: checkboxCellProperties,\n cellTemplate: ({ col, options }) =>\n cellTemplate(GridSelectButtonCell, {\n prop: col.prop,\n options,\n onChange: (rowIndex: number, prop: string, value: unknown) =>\n onChange(rowIndex, prop, value),\n }),\n },\n texture: {\n editor: 'texture',\n cellTemplate: () => cellTemplate(GridTextureSelectCell),\n },\n };\n\n function resolveOptions(\n list: readonly WellGridOption[],\n ): ResolvedGridOption[] {\n return list.map(o => ({\n value: o.value,\n label: text(o.label) ?? o.value,\n ...(o.deprecated && { deprecated: true }),\n }));\n }\n\n function buildColumn(col: WellGridColumn): ColumnRegular {\n const kind = columnKinds[resolveColumnKind(col)];\n const resolved: ResolvedColumn = {\n col,\n options: 'options' in col ? resolveOptions(col.options) : undefined,\n };\n const label = text(col.label) ?? '';\n const unit = col.unitType ? suffixes[col.unitType].value : null;\n const readonly = col.readonly ?? false;\n const info = text(col.info);\n\n return {\n prop: col.prop,\n name: unit ? `${label} (${unit})` : label,\n autoSize: !col.size && !col.stretch,\n size: col.size,\n readonly,\n editor: readonly\n ? undefined\n : (kind.editor ??\n col.editor ??\n (col.type === 'number' ? 'number' : 'text')),\n editorProps: kind.editorProps?.(resolved),\n pin: col.pin,\n cellProperties:\n kind.cellProperties ??\n (kind.numeric ? () => ({ class: 'num' }) : undefined),\n cellTemplate: kind.cellTemplate?.(resolved),\n ...(info && {\n info,\n infoHighlight: text(col.infoHighlight),\n infoLabel: text(labels.value.columnInfo),\n columnTemplate: headerTemplate,\n }),\n };\n }\n\n const revoColumns = computed<ColumnRegular[]>(() => {\n const result: ColumnRegular[] = [];\n if (enableDrag) {\n const dragHandle = resolvePart(\n 'dragHandle',\n parts.value.dragHandle,\n undefined,\n config,\n );\n result.push({\n prop: '_drag',\n name: '',\n size: 30,\n pin: 'colPinStart',\n rowDrag: true,\n cellProperties: () => ({ class: 'well-grid-drag-cell' }),\n // Without an override RevoGrid draws its own handle (styled by\n // grid.css). A template replaces it, so GridDragCell re-emits the\n // drag start RevoGrid's handle would have emitted.\n ...(dragHandle && {\n cellTemplate: cellTemplate(GridDragCell, { part: dragHandle }),\n }),\n });\n }\n result.push(...cols.value.map(buildColumn));\n if (enableDelete) {\n result.push({\n prop: '_delete',\n name: '',\n size: 40,\n readonly: true,\n pin: 'colPinEnd',\n cellProperties: () => ({ class: 'well-grid-delete-cell' }),\n cellTemplate: cellTemplate(GridDeleteCell, {\n part: resolvePart(\n 'deleteButton',\n parts.value.deleteButton,\n WellGridDeleteButton,\n config,\n ),\n label: text(toValue(options.deleteLabel)),\n requestDelete: onDelete,\n }),\n });\n }\n return result;\n });\n\n function coerceCellValue(prop: string, val: unknown): unknown {\n const col = cols.value.find(c => c.prop === prop);\n if (col?.type === 'checkbox' && typeof val === 'string') {\n return val === 'true' || val === '1' || val.toLowerCase() === 'yes';\n }\n return val;\n }\n\n // ─── Click-on-focused-cell → enter edit mode ───────────────────────────────\n // `afterfocus` only fires when focus moves to a new cell. A click that\n // triggers such a focus change is suppressed; a second click on the cell\n // that's already focused enters edit mode for it.\n\n const gridContainerRef = ref<HTMLElement | null>(null);\n const focusedCell = ref<{\n rowIndex: number;\n colIndex: number;\n prop: string;\n } | null>(null);\n let suppressNextClick = false;\n\n function handleAfterFocus(event: CustomEvent<FocusAfterRenderEvent>) {\n const { rowIndex, colIndex, column } = event.detail;\n focusedCell.value = column\n ? { rowIndex, colIndex, prop: String(column.prop) }\n : null;\n suppressNextClick = true;\n }\n\n function handleGridMousedown() {\n suppressNextClick = false;\n }\n\n function handleGridClick(event: MouseEvent) {\n if (suppressNextClick) {\n suppressNextClick = false;\n return;\n }\n const cell = focusedCell.value;\n if (!cell) return;\n\n const target = (event.target as HTMLElement).closest<HTMLElement>(\n '[data-rgrow][data-rgcol]',\n );\n if (!target) return;\n if (\n Number(target.dataset.rgrow) !== cell.rowIndex ||\n Number(target.dataset.rgcol) !== cell.colIndex\n ) {\n return;\n }\n\n const col = cols.value.find(c => c.prop === cell.prop);\n if (!col || col.readonly) return;\n\n const gridEl = gridContainerRef.value?.querySelector('revo-grid') as\n | HTMLRevoGridElement\n | undefined;\n gridEl?.setCellEdit(cell.rowIndex, cell.prop);\n }\n\n function handleAfterEdit(event: CustomEvent<AfterEditEvent>) {\n const detail = event.detail as Record<string, unknown>;\n\n // Single-cell edit: detail has rowIndex + prop + val\n if ('rowIndex' in detail) {\n const { rowIndex, prop, val } =\n detail as unknown as BeforeSaveDataDetails;\n onChange(rowIndex, String(prop), coerceCellValue(String(prop), val));\n return;\n }\n\n // Block edit (paste, range clear, etc.): detail has data keyed by row index\n const blockData = detail.data as\n | Record<string, Record<string, unknown>>\n | undefined;\n if (!blockData) return;\n\n for (const [rowKey, rowData] of Object.entries(blockData)) {\n const rowIndex = Number(rowKey);\n for (const [prop, val] of Object.entries(rowData)) {\n onChange(rowIndex, prop, coerceCellValue(prop, val));\n }\n }\n }\n\n return {\n gridEditors,\n revoColumns,\n gridStretch,\n plugins,\n coerceCellValue,\n handleAfterEdit,\n gridContainerRef,\n handleAfterFocus,\n handleGridMousedown,\n handleGridClick,\n };\n}\n"],"mappings":"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"}