@shwfed/config 2.12.4 → 2.12.6

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 (250) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +5 -0
  3. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/runtime.vue +9 -2
  4. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/schema.d.ts +8 -2
  5. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/schema.js +3 -3
  6. package/dist/runtime/components/actions/components/group.vue +3 -1
  7. package/dist/runtime/components/actions/schema.d.ts +16 -4
  8. package/dist/runtime/components/actions/schema.js +5 -5
  9. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +68 -68
  10. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +68 -68
  11. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +68 -68
  12. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +68 -68
  13. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +34 -34
  14. package/dist/runtime/components/config/footer.d.vue.ts +4 -0
  15. package/dist/runtime/components/config/footer.vue +25 -12
  16. package/dist/runtime/components/config/footer.vue.d.ts +4 -0
  17. package/dist/runtime/components/config/history-picker.d.vue.ts +15 -0
  18. package/dist/runtime/components/config/history-picker.vue +155 -0
  19. package/dist/runtime/components/config/history-picker.vue.d.ts +15 -0
  20. package/dist/runtime/components/config/index.d.vue.ts +4 -0
  21. package/dist/runtime/components/config/index.vue +31 -4
  22. package/dist/runtime/components/config/index.vue.d.ts +4 -0
  23. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/runtime.vue +5 -3
  24. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.d.ts +8 -2
  25. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.js +2 -2
  26. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/runtime.vue +5 -3
  27. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/schema.d.ts +8 -2
  28. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/schema.js +2 -2
  29. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/runtime.vue +4 -3
  30. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/schema.d.ts +8 -2
  31. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/schema.js +1 -1
  32. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/runtime.vue +5 -3
  33. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/schema.d.ts +8 -2
  34. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/schema.js +2 -2
  35. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.d.vue.ts +6 -6
  36. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.vue.d.ts +6 -6
  37. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/runtime.vue +5 -3
  38. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/schema.d.ts +8 -2
  39. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/schema.js +2 -2
  40. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.d.vue.ts +2 -2
  41. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.vue.d.ts +2 -2
  42. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/runtime.vue +5 -3
  43. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/schema.d.ts +8 -2
  44. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/schema.js +2 -2
  45. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.d.vue.ts +8 -8
  46. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.vue.d.ts +8 -8
  47. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/runtime.vue +5 -3
  48. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/schema.d.ts +8 -2
  49. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/schema.js +2 -2
  50. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/config.d.vue.ts +2 -2
  51. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/config.vue.d.ts +2 -2
  52. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/runtime.vue +5 -3
  53. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/schema.d.ts +8 -2
  54. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/schema.js +2 -2
  55. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.d.vue.ts +4 -4
  56. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.vue.d.ts +4 -4
  57. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/runtime.vue +5 -3
  58. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/schema.d.ts +8 -2
  59. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/schema.js +2 -2
  60. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.d.vue.ts +2 -2
  61. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue.d.ts +2 -2
  62. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue +5 -3
  63. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.d.ts +8 -2
  64. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.js +2 -2
  65. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.d.vue.ts +2 -2
  66. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.vue.d.ts +2 -2
  67. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/runtime.vue +5 -3
  68. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/schema.d.ts +8 -2
  69. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/schema.js +2 -2
  70. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/runtime.vue +5 -3
  71. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/schema.d.ts +8 -2
  72. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/schema.js +2 -2
  73. package/dist/runtime/components/form/fields/2026-04-29/com.shwfed.form.field.combobox.single/runtime.vue +4 -3
  74. package/dist/runtime/components/form/fields/2026-04-29/com.shwfed.form.field.combobox.single/schema.d.ts +8 -2
  75. package/dist/runtime/components/form/fields/2026-04-29/com.shwfed.form.field.combobox.single/schema.js +1 -1
  76. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/runtime.vue +5 -3
  77. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/schema.d.ts +8 -2
  78. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/schema.js +1 -1
  79. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/runtime.vue +4 -3
  80. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/schema.d.ts +8 -2
  81. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/schema.js +1 -1
  82. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/config.d.vue.ts +2 -2
  83. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/config.vue.d.ts +2 -2
  84. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/runtime.vue +5 -3
  85. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.d.ts +9 -3
  86. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.js +2 -2
  87. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/runtime.vue +4 -3
  88. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/schema.d.ts +8 -2
  89. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/schema.js +1 -1
  90. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/runtime.vue +4 -3
  91. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/schema.d.ts +8 -2
  92. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/schema.js +1 -1
  93. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/runtime.vue +5 -3
  94. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.d.ts +8 -2
  95. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.js +2 -1
  96. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.d.vue.ts +18 -18
  97. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.vue.d.ts +18 -18
  98. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/runtime.vue +4 -3
  99. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/schema.d.ts +8 -2
  100. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/schema.js +1 -1
  101. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/runtime.vue +5 -3
  102. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/schema.d.ts +8 -2
  103. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/schema.js +2 -2
  104. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.d.vue.ts +6 -6
  105. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.vue.d.ts +6 -6
  106. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/runtime.vue +5 -3
  107. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/schema.d.ts +8 -2
  108. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/schema.js +2 -2
  109. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/runtime.vue +4 -3
  110. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/schema.d.ts +8 -2
  111. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/schema.js +1 -1
  112. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +18 -18
  113. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +18 -18
  114. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/runtime.vue +4 -3
  115. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +8 -2
  116. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/schema.js +1 -1
  117. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +18 -18
  118. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +18 -18
  119. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/runtime.vue +4 -3
  120. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/schema.d.ts +8 -2
  121. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/schema.js +1 -1
  122. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/runtime.vue +4 -3
  123. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/schema.d.ts +8 -2
  124. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/schema.js +1 -1
  125. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/runtime.vue +4 -3
  126. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/schema.d.ts +8 -2
  127. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/schema.js +1 -1
  128. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +18 -18
  129. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +18 -18
  130. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue +4 -3
  131. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +8 -2
  132. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.js +1 -1
  133. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +18 -18
  134. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +18 -18
  135. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue +4 -3
  136. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.d.ts +8 -2
  137. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.js +1 -1
  138. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.d.vue.ts +18 -18
  139. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue.d.ts +18 -18
  140. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/runtime.vue +4 -3
  141. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.d.ts +8 -2
  142. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.js +1 -1
  143. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.d.vue.ts +18 -18
  144. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue.d.ts +18 -18
  145. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/runtime.vue +4 -3
  146. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.d.ts +8 -2
  147. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.js +1 -1
  148. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/runtime.vue +5 -3
  149. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/schema.d.ts +8 -2
  150. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/schema.js +1 -1
  151. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/runtime.vue +5 -3
  152. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/schema.d.ts +8 -2
  153. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/schema.js +1 -1
  154. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/runtime.vue +4 -3
  155. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/schema.d.ts +8 -2
  156. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/schema.js +1 -1
  157. package/dist/runtime/components/sidebar/index.d.vue.ts +22 -3
  158. package/dist/runtime/components/sidebar/index.vue +66 -5
  159. package/dist/runtime/components/sidebar/index.vue.d.ts +22 -3
  160. package/dist/runtime/components/sidebar/node.d.vue.ts +1 -1
  161. package/dist/runtime/components/sidebar/node.vue +33 -13
  162. package/dist/runtime/components/sidebar/node.vue.d.ts +1 -1
  163. package/dist/runtime/components/sidebar/tree.vue +113 -83
  164. package/dist/runtime/components/sidebar/types.d.ts +8 -0
  165. package/dist/runtime/components/sidebar/types.js +1 -0
  166. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +2 -2
  167. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +2 -2
  168. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.d.vue.ts +2 -2
  169. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue.d.ts +2 -2
  170. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +2 -2
  171. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +2 -2
  172. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.d.vue.ts +2 -2
  173. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue.d.ts +2 -2
  174. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.d.vue.ts +2 -2
  175. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue.d.ts +2 -2
  176. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.d.vue.ts +2 -2
  177. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue.d.ts +2 -2
  178. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
  179. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
  180. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
  181. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
  182. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -2
  183. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -2
  184. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -2
  185. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -2
  186. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
  187. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
  188. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
  189. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
  190. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -2
  191. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/config.vue +224 -133
  192. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -2
  193. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -2
  194. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/config.vue +224 -133
  195. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -2
  196. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
  197. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
  198. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
  199. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
  200. package/dist/runtime/components/table/customization.d.vue.ts +15 -0
  201. package/dist/runtime/components/table/customization.vue +633 -0
  202. package/dist/runtime/components/table/customization.vue.d.ts +15 -0
  203. package/dist/runtime/components/table/index.vue +69 -6
  204. package/dist/runtime/components/table/schema.d.ts +68 -68
  205. package/dist/runtime/components/table/utils/customization.d.ts +158 -0
  206. package/dist/runtime/components/table/utils/customization.js +315 -0
  207. package/dist/runtime/components/table/utils/row-reorder.d.ts +3 -2
  208. package/dist/runtime/components/table/utils/row-reorder.js +1 -12
  209. package/dist/runtime/components/tabs/index.d.vue.ts +9 -0
  210. package/dist/runtime/components/tabs/index.vue +92 -0
  211. package/dist/runtime/components/tabs/index.vue.d.ts +9 -0
  212. package/dist/runtime/components/tabs/tab.d.vue.ts +22 -0
  213. package/dist/runtime/components/tabs/tab.vue +85 -0
  214. package/dist/runtime/components/tabs/tab.vue.d.ts +22 -0
  215. package/dist/runtime/components/tabs/types.d.ts +19 -0
  216. package/dist/runtime/components/tabs/types.js +0 -0
  217. package/dist/runtime/components/tabs/use-reorder.d.ts +10 -0
  218. package/dist/runtime/components/tabs/use-reorder.js +90 -0
  219. package/dist/runtime/components/tabs/use-tabs.d.ts +46 -0
  220. package/dist/runtime/components/tabs/use-tabs.js +101 -0
  221. package/dist/runtime/components/ui/date-picker/DatePickerInput.d.vue.ts +1 -1
  222. package/dist/runtime/components/ui/date-picker/DatePickerInput.vue.d.ts +1 -1
  223. package/dist/runtime/components/ui/date-picker/DatePickerTimeInput.d.vue.ts +1 -1
  224. package/dist/runtime/components/ui/date-picker/DatePickerTimeInput.vue.d.ts +1 -1
  225. package/dist/runtime/components/ui/date-range-picker/DateRangePickerInput.d.vue.ts +1 -1
  226. package/dist/runtime/components/ui/date-range-picker/DateRangePickerInput.vue.d.ts +1 -1
  227. package/dist/runtime/components/ui/date-range-picker/DateRangePickerTimeInput.d.vue.ts +2 -2
  228. package/dist/runtime/components/ui/date-range-picker/DateRangePickerTimeInput.vue.d.ts +2 -2
  229. package/dist/runtime/components/ui/sidebar/SidebarMenuAction.vue +1 -1
  230. package/dist/runtime/components/ui/sidebar/index.js +2 -2
  231. package/dist/runtime/share/reorder.d.ts +2 -0
  232. package/dist/runtime/share/reorder.js +12 -0
  233. package/dist/runtime/utils/nav-registry.d.ts +19 -0
  234. package/dist/runtime/utils/nav-registry.js +14 -0
  235. package/dist/runtime/utils/page-title-registry.d.ts +3 -0
  236. package/dist/runtime/utils/page-title-registry.js +11 -0
  237. package/dist/runtime/vendor/cel-js/CLAUDE.md +6 -5
  238. package/dist/runtime/vendor/cel-js/PROMPT.md +97 -19
  239. package/dist/runtime/vendor/cel-js/lib/decimal.d.ts +4 -0
  240. package/dist/runtime/vendor/cel-js/lib/decimal.js +35 -0
  241. package/dist/runtime/vendor/cel-js/lib/evaluator.js +2 -0
  242. package/dist/runtime/vendor/cel-js/lib/functions.js +107 -134
  243. package/dist/runtime/vendor/cel-js/lib/macros.js +125 -16
  244. package/dist/runtime/vendor/cel-js/lib/math-builtins.d.ts +2 -0
  245. package/dist/runtime/vendor/cel-js/lib/math-builtins.js +39 -0
  246. package/dist/runtime/vendor/cel-js/lib/optional.d.ts +4 -0
  247. package/dist/runtime/vendor/cel-js/lib/optional.js +73 -21
  248. package/dist/runtime/vendor/cel-js/lib/parser.js +2 -6
  249. package/dist/runtime/vendor/cel-js/lib/registry.js +2 -2
  250. package/package.json +1 -1
@@ -28,6 +28,11 @@ import ShwfedActions from "../actions/components/group.vue";
28
28
  import ShwfedForm from "../form/index.vue";
29
29
  import { evaluateInitial } from "../form/utils/initial";
30
30
  import { provideTableInstanceId } from "./utils/instance";
31
+ import {
32
+ mergeCustomization,
33
+ useTableCustomization
34
+ } from "./utils/customization";
35
+ import TableCustomization from "./customization.vue";
31
36
  import { provideSharedFetchLayer } from "./utils/shared-fetch";
32
37
  import { provideEventTarget } from "../../share/event-bus";
33
38
  import { usePersistedQuery } from "../../share/use-persisted-query";
@@ -50,6 +55,8 @@ const persistedQuery = usePersistedQuery(
50
55
  queryState,
51
56
  () => config.value?.persistQuery === true
52
57
  );
58
+ const customization = useTableCustomization(config.value?.id);
59
+ customization.load();
53
60
  const { t, locale } = useI18n({
54
61
  inheritLocale: true,
55
62
  messages: {
@@ -118,9 +125,20 @@ function freezeGrowColumns() {
118
125
  frozenGrowColumns.value = next;
119
126
  }
120
127
  function onResizeMouseDown(header, event) {
128
+ resizeGestureSeen = true;
121
129
  freezeGrowColumns();
122
130
  header.getResizeHandler()(event);
123
131
  }
132
+ let resizeGestureSeen = false;
133
+ function restoreFrozenGrowColumns() {
134
+ const userSizing = customization.snapshot()?.columnSizing;
135
+ if (!userSizing) return;
136
+ const grows = (config.value?.columns ?? []).filter((c) => c.grow === true && userSizing[c.id] !== void 0);
137
+ if (grows.length === 0) return;
138
+ const next = new Set(frozenGrowColumns.value);
139
+ grows.forEach((c) => next.add(c.id));
140
+ frozenGrowColumns.value = next;
141
+ }
124
142
  function growLeafCount(header) {
125
143
  return header.getLeafHeaders().filter((h2) => isEffectiveGrow(h2.column)).length;
126
144
  }
@@ -301,6 +319,10 @@ const tableApi = useVueTable({
301
319
  getSortedRowModel: getSortedRowModel(),
302
320
  columnResizeMode: "onChange"
303
321
  });
322
+ watch(() => tableApi.getState().columnSizing, (sizing) => {
323
+ if (!resizeGestureSeen) return;
324
+ customization.persistPatch({ columnSizing: { ...sizing } });
325
+ });
304
326
  provideCELContext({
305
327
  selected: {
306
328
  type: "list<dyn>",
@@ -519,7 +541,7 @@ const sortedRowIndexMap = computed(() => {
519
541
  function getDisplayIndex(row) {
520
542
  return sortedRowIndexMap.value.get(row.id) ?? row.index;
521
543
  }
522
- watch(config, (config2) => {
544
+ watch([config, customization.revision], ([config2]) => {
523
545
  if (!config2) return;
524
546
  const initialState = config2.initialState;
525
547
  const hiddenSeed = {};
@@ -528,17 +550,47 @@ watch(config, (config2) => {
528
550
  }
529
551
  const hasSeed = Object.keys(hiddenSeed).length > 0;
530
552
  const effective = initialState || hasSeed ? { ...initialState ?? {}, columnVisibility: { ...hiddenSeed, ...initialState?.columnVisibility ?? {} } } : void 0;
531
- const nextKey = effective ? JSON.stringify(effective) : "";
532
- if (appliedInitialStateKey.value === nextKey || !effective) {
553
+ const { state: merged, pageSize: pageSizeOverride } = mergeCustomization(
554
+ effective,
555
+ customization.snapshot(),
556
+ buildCustomizationContext(config2),
557
+ { explicit: customization.wasCustomized() }
558
+ );
559
+ const nextKey = merged ? JSON.stringify({ merged, pageSize: pageSizeOverride ?? null }) : "";
560
+ if (appliedInitialStateKey.value === nextKey || !merged) {
533
561
  appliedInitialStateKey.value = nextKey;
534
562
  syncPaginationPageSize();
535
563
  return;
536
564
  }
537
- tableApi.initialState = mergeInitialState(tableApi.initialState, effective);
565
+ tableApi.initialState = mergeInitialState(tableApi.initialState, merged, pageSizeOverride);
538
566
  tableApi.reset();
567
+ restoreFrozenGrowColumns();
539
568
  appliedInitialStateKey.value = nextKey;
540
569
  syncPaginationPageSize();
541
570
  }, { immediate: true });
571
+ function buildCustomizationContext(config2) {
572
+ return {
573
+ columnIds: new Set(config2.columns.map((c) => c.id)),
574
+ pageSizes: config2.pagination?.pageSizes ?? [],
575
+ paginationEnabled: config2.pagination !== void 0
576
+ };
577
+ }
578
+ function onCustomizationConfirm(payload) {
579
+ customization.persistPatch(payload);
580
+ if (payload.columnVisibility) tableApi.setColumnVisibility({ ...payload.columnVisibility });
581
+ if (payload.columnOrder) tableApi.setColumnOrder([...payload.columnOrder]);
582
+ if (payload.columnPinning) {
583
+ tableApi.setColumnPinning({
584
+ left: [...payload.columnPinning.left],
585
+ right: [...payload.columnPinning.right]
586
+ });
587
+ }
588
+ }
589
+ function resetCustomization() {
590
+ customization.clear();
591
+ resizeGestureSeen = false;
592
+ frozenGrowColumns.value = /* @__PURE__ */ new Set();
593
+ }
542
594
  defineExpose(tableApi);
543
595
  const rows = computed(() => isPaginationEnabled.value ? tableApi.getRowModel().rows : tableApi.getPrePaginationRowModel().rows);
544
596
  const maxPage = computed(() => isPaginationEnabled.value ? Math.max(tableApi.getPageCount(), 1) : 1);
@@ -635,6 +687,7 @@ const currentPageSize = computed({
635
687
  const nextPageSize = Number(value);
636
688
  if (!Number.isInteger(nextPageSize) || nextPageSize <= 0) return;
637
689
  tableApi.setPageSize(nextPageSize);
690
+ customization.persistPatch({ pageSize: nextPageSize });
638
691
  }
639
692
  });
640
693
  function syncPaginationPageSize() {
@@ -659,7 +712,7 @@ function normalizeExpandedState(expanded, current) {
659
712
  if (expanded === false) return {};
660
713
  return expanded;
661
714
  }
662
- function mergeInitialState(current, initialState) {
715
+ function mergeInitialState(current, initialState, pageSizeOverride) {
663
716
  return {
664
717
  ...current,
665
718
  columnVisibility: initialState.columnVisibility ?? current.columnVisibility,
@@ -680,7 +733,7 @@ function mergeInitialState(current, initialState) {
680
733
  columnSizing: initialState.columnSizing ?? current.columnSizing,
681
734
  pagination: isPaginationEnabled.value ? {
682
735
  pageIndex: paginationConfig.value?.pageIndex ?? current.pagination.pageIndex,
683
- pageSize: paginationConfig.value?.pageSize ?? current.pagination.pageSize
736
+ pageSize: pageSizeOverride ?? paginationConfig.value?.pageSize ?? current.pagination.pageSize
684
737
  } : current.pagination,
685
738
  rowSelection: initialState.rowSelection ?? current.rowSelection
686
739
  };
@@ -724,6 +777,16 @@ export { TableConfig, createTableConfig, getColumnTechnicalKey } from "./schema"
724
777
  class="absolute inset-0 bg-white/20 z-30 pointer-events-auto"
725
778
  aria-hidden="true"
726
779
  />
780
+ <!-- User-land customization trigger: floats over the sticky thead's
781
+ far-right corner, outside the scroll container so it neither moves
782
+ on horizontal scroll nor collides with right-pinned columns. -->
783
+ <TableCustomization
784
+ v-if="config?.id"
785
+ :config="config"
786
+ :table-api="tableApi"
787
+ @confirm="onCustomizationConfirm"
788
+ @reset="resetCustomization"
789
+ />
727
790
  <ClientOnly>
728
791
  <!-- Scrollable table container -->
729
792
  <div
@@ -157,40 +157,6 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
157
157
  readonly message: string;
158
158
  }[]] | undefined;
159
159
  }[];
160
- readonly query?: {
161
- readonly style?: string | undefined;
162
- readonly id?: string | undefined;
163
- readonly initial?: {
164
- readonly data: string;
165
- readonly request?: string | undefined;
166
- } | undefined;
167
- readonly displayName?: string | undefined;
168
- readonly kind: "shwfed.component.form";
169
- readonly fields: readonly any[];
170
- readonly layouts: readonly {
171
- readonly name: string;
172
- readonly layout: {
173
- readonly style?: string | undefined;
174
- readonly columns: number;
175
- readonly gap?: number | undefined;
176
- readonly rows?: number | undefined;
177
- readonly placements: {
178
- readonly [x: string]: {
179
- readonly area: readonly [readonly [number, number], readonly [number, number]];
180
- readonly v?: "stretch" | "center" | "end" | "start" | undefined;
181
- readonly h?: "stretch" | "center" | "end" | "start" | undefined;
182
- };
183
- };
184
- };
185
- readonly media?: string | undefined;
186
- }[];
187
- readonly readonly?: string | undefined;
188
- } | undefined;
189
- readonly dataSource?: {
190
- readonly data: string;
191
- readonly total?: string | undefined;
192
- readonly request?: string | undefined;
193
- } | undefined;
194
160
  readonly actions?: {
195
161
  readonly size: "default" | "sm" | "xs";
196
162
  readonly style?: string | undefined;
@@ -258,6 +224,40 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
258
224
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
259
225
  }[];
260
226
  } | undefined;
227
+ readonly query?: {
228
+ readonly style?: string | undefined;
229
+ readonly id?: string | undefined;
230
+ readonly initial?: {
231
+ readonly data: string;
232
+ readonly request?: string | undefined;
233
+ } | undefined;
234
+ readonly displayName?: string | undefined;
235
+ readonly kind: "shwfed.component.form";
236
+ readonly fields: readonly any[];
237
+ readonly layouts: readonly {
238
+ readonly name: string;
239
+ readonly layout: {
240
+ readonly style?: string | undefined;
241
+ readonly columns: number;
242
+ readonly gap?: number | undefined;
243
+ readonly rows?: number | undefined;
244
+ readonly placements: {
245
+ readonly [x: string]: {
246
+ readonly area: readonly [readonly [number, number], readonly [number, number]];
247
+ readonly v?: "stretch" | "center" | "end" | "start" | undefined;
248
+ readonly h?: "stretch" | "center" | "end" | "start" | undefined;
249
+ };
250
+ };
251
+ };
252
+ readonly media?: string | undefined;
253
+ }[];
254
+ readonly readonly?: string | undefined;
255
+ } | undefined;
256
+ readonly dataSource?: {
257
+ readonly data: string;
258
+ readonly total?: string | undefined;
259
+ readonly request?: string | undefined;
260
+ } | undefined;
261
261
  readonly bottomActions?: {
262
262
  readonly size: "default" | "sm" | "xs";
263
263
  readonly style?: string | undefined;
@@ -826,40 +826,6 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
826
826
  readonly message: string;
827
827
  }[]] | undefined;
828
828
  }[];
829
- query?: {
830
- readonly style?: string | undefined;
831
- readonly id?: string | undefined;
832
- readonly initial?: {
833
- readonly data: string;
834
- readonly request?: string | undefined;
835
- } | undefined;
836
- readonly displayName?: string | undefined;
837
- readonly kind: "shwfed.component.form";
838
- readonly fields: readonly any[];
839
- readonly layouts: readonly {
840
- readonly name: string;
841
- readonly layout: {
842
- readonly style?: string | undefined;
843
- readonly columns: number;
844
- readonly gap?: number | undefined;
845
- readonly rows?: number | undefined;
846
- readonly placements: {
847
- readonly [x: string]: {
848
- readonly area: readonly [readonly [number, number], readonly [number, number]];
849
- readonly v?: "stretch" | "center" | "end" | "start" | undefined;
850
- readonly h?: "stretch" | "center" | "end" | "start" | undefined;
851
- };
852
- };
853
- };
854
- readonly media?: string | undefined;
855
- }[];
856
- readonly readonly?: string | undefined;
857
- } | undefined;
858
- dataSource?: {
859
- readonly data: string;
860
- readonly total?: string | undefined;
861
- readonly request?: string | undefined;
862
- } | undefined;
863
829
  actions?: {
864
830
  readonly size: "default" | "sm" | "xs";
865
831
  readonly style?: string | undefined;
@@ -927,6 +893,40 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
927
893
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
928
894
  }[];
929
895
  } | undefined;
896
+ query?: {
897
+ readonly style?: string | undefined;
898
+ readonly id?: string | undefined;
899
+ readonly initial?: {
900
+ readonly data: string;
901
+ readonly request?: string | undefined;
902
+ } | undefined;
903
+ readonly displayName?: string | undefined;
904
+ readonly kind: "shwfed.component.form";
905
+ readonly fields: readonly any[];
906
+ readonly layouts: readonly {
907
+ readonly name: string;
908
+ readonly layout: {
909
+ readonly style?: string | undefined;
910
+ readonly columns: number;
911
+ readonly gap?: number | undefined;
912
+ readonly rows?: number | undefined;
913
+ readonly placements: {
914
+ readonly [x: string]: {
915
+ readonly area: readonly [readonly [number, number], readonly [number, number]];
916
+ readonly v?: "stretch" | "center" | "end" | "start" | undefined;
917
+ readonly h?: "stretch" | "center" | "end" | "start" | undefined;
918
+ };
919
+ };
920
+ };
921
+ readonly media?: string | undefined;
922
+ }[];
923
+ readonly readonly?: string | undefined;
924
+ } | undefined;
925
+ dataSource?: {
926
+ readonly data: string;
927
+ readonly total?: string | undefined;
928
+ readonly request?: string | undefined;
929
+ } | undefined;
930
930
  bottomActions?: {
931
931
  readonly size: "default" | "sm" | "xs";
932
932
  readonly style?: string | undefined;
@@ -0,0 +1,158 @@
1
+ import type { InitialStateValue } from '../schema.js';
2
+ export interface TableCustomizationSnapshot {
3
+ v: 1;
4
+ columnVisibility?: Record<string, boolean>;
5
+ columnOrder?: string[];
6
+ columnPinning?: {
7
+ left: string[];
8
+ right: string[];
9
+ };
10
+ columnSizing?: Record<string, number>;
11
+ pageSize?: number;
12
+ }
13
+ export type TableCustomizationPatch = Partial<Omit<TableCustomizationSnapshot, 'v'>>;
14
+ export interface CustomizationContext {
15
+ columnIds: ReadonlySet<string>;
16
+ pageSizes: ReadonlyArray<number>;
17
+ paginationEnabled: boolean;
18
+ }
19
+ /**
20
+ * Parse a raw localStorage value into a snapshot. Anything off — null, bad
21
+ * JSON, wrong version, non-object — yields `undefined` (treated as "no
22
+ * customization"). Slices are validated individually so one corrupted field
23
+ * drops alone instead of discarding the whole snapshot.
24
+ */
25
+ export declare function parseSnapshot(raw: string | null): TableCustomizationSnapshot | undefined;
26
+ /**
27
+ * Reconcile a snapshot against the live column set: entries referencing
28
+ * columns the designer has since deleted are dropped, and a persisted
29
+ * `pageSize` survives only while it is still one of the configured
30
+ * `pageSizes`.
31
+ *
32
+ * Emptied-by-prune rule for the wholesale slices (`columnOrder`,
33
+ * `columnPinning`): a slice that was non-empty but lost every entry to
34
+ * pruning is removed entirely — the user's whole choice referenced dead
35
+ * columns, so the designer's slice should apply again. A slice the user
36
+ * deliberately saved empty (e.g. unpinned everything) stays authoritative.
37
+ */
38
+ export declare function pruneSnapshot(snapshot: TableCustomizationSnapshot, ctx: CustomizationContext): TableCustomizationSnapshot;
39
+ export interface MergedCustomization {
40
+ state?: InitialStateValue;
41
+ pageSize?: number;
42
+ }
43
+ /**
44
+ * Fold a user snapshot over the designer's effective initial state.
45
+ *
46
+ * - Per-key slices (`columnVisibility`, `columnSizing`) merge entry-wise, user
47
+ * over design — an explicit user `true` re-shows a designer-hidden column.
48
+ * - Wholesale slices (`columnOrder`, `columnPinning`) are taken from the user
49
+ * when present (after pruning), else from the design.
50
+ * - `sorting` / `rowPinning` / `expanded` / `grouping` / `rowSelection` are
51
+ * designer-only and pass through untouched.
52
+ *
53
+ * With a snapshot present, every user-editable slice is emitted explicitly
54
+ * (empty rather than absent) so the host's `mergeInitialState` overrides stale
55
+ * live state instead of falling through to it. `explicit` forces that same
56
+ * fully-specified output when the snapshot is absent — the reset path, where
57
+ * previously-applied user state must not survive the fall-through. Without a
58
+ * snapshot and without `explicit`, the design passes through unchanged
59
+ * (identical to pre-customization behavior).
60
+ */
61
+ export declare function mergeCustomization(design: InitialStateValue | undefined, snapshot: TableCustomizationSnapshot | undefined, ctx: CustomizationContext, options?: {
62
+ explicit?: boolean;
63
+ }): MergedCustomization;
64
+ /**
65
+ * Rebuild a full leaf `columnOrder` from the modal's draft. Locked columns
66
+ * (select / drag-handle — structural, not shown in the modal) keep their
67
+ * current slots; the remaining slots are filled with the draft order. Draft
68
+ * ids missing from the current order (shouldn't happen, but a stale draft is
69
+ * cheap to tolerate) append at the end.
70
+ */
71
+ export declare function weaveLockedColumns(currentLeafOrder: ReadonlyArray<string>, lockedIds: ReadonlySet<string>, draftOrder: ReadonlyArray<string>): string[];
72
+ export type DraftBand = 'left' | 'main' | 'right' | 'hidden';
73
+ export type DraftBands = Record<DraftBand, string[]>;
74
+ export type GroupOf = (id: string) => string | undefined;
75
+ export type DraftAnchor = {
76
+ at: 'append';
77
+ } | {
78
+ at: 'before' | 'after';
79
+ ref: string;
80
+ };
81
+ export declare function bandOf(bands: DraftBands, id: string): DraftBand | undefined;
82
+ /** A group's members currently in the visible bands, in order. */
83
+ export declare function groupVisibleMembers(bands: DraftBands, groupOf: GroupOf, groupId: string): string[];
84
+ /** A group's members currently in the hidden band, in order. */
85
+ export declare function groupHiddenMembers(bands: DraftBands, groupOf: GroupOf, groupId: string): string[];
86
+ /** The single visible band a group occupies, or undefined when fully hidden. */
87
+ export declare function bandOfGroup(bands: DraftBands, groupOf: GroupOf, groupId: string): DraftBand | undefined;
88
+ export declare function groupEdgeMember(bands: DraftBands, groupOf: GroupOf, groupId: string, edge: 'first' | 'last'): string | undefined;
89
+ /**
90
+ * Remove `runIds` from wherever they sit, then reinsert them — contiguous, in
91
+ * the given order — at `anchor` within `band`.
92
+ */
93
+ export declare function moveRun(bands: DraftBands, runIds: readonly string[], band: DraftBand, anchor: DraftAnchor): DraftBands;
94
+ /**
95
+ * Safety weld: re-collect each group's members into one contiguous run.
96
+ *
97
+ * - Visible members collapse into the group's "home" band (the first visible
98
+ * band holding any member) as a single run.
99
+ * - Hidden members are welded WITHIN the hidden band only — never merged with
100
+ * the visible bands (that would silently un-hide them), so a fully-hidden
101
+ * group still renders as one folder in the hidden pane.
102
+ *
103
+ * A no-op on already-welded input — the only state the designer or a prior
104
+ * confirm ever produce — it exists so a drifted / corrupted snapshot, or a
105
+ * multi-step drag, can't render a fragmented group.
106
+ */
107
+ export declare function weldGroups(bands: DraftBands, groupOf: GroupOf): DraftBands;
108
+ export interface DraftRowDrop {
109
+ sourceKind: 'group' | 'column';
110
+ sourceId: string;
111
+ sourceGroupId?: string;
112
+ targetKind: 'group' | 'column';
113
+ targetId: string;
114
+ before: boolean;
115
+ }
116
+ /**
117
+ * Resolve a row-to-row drop into the next bands. Assumes the drop already
118
+ * passed the modal's `canDrop` gate (group↔group, group↔standalone,
119
+ * same-group member reorder, standalone↔standalone) — combinations outside
120
+ * that set return the bands unchanged. A group source carries its whole run,
121
+ * which is its hidden members when the group is being revived from a
122
+ * fully-hidden state (see `groupRun`).
123
+ */
124
+ export declare function applyRowDrop(bands: DraftBands, groupOf: GroupOf, drop: DraftRowDrop): DraftBands;
125
+ export interface DraftZoneDrop {
126
+ sourceKind: 'group' | 'column';
127
+ sourceId: string;
128
+ band: DraftBand;
129
+ }
130
+ /**
131
+ * Resolve a drop onto a band zone (pin-left / pin-right / main filler /
132
+ * hidden). A group source carries its whole run — its visible members when
133
+ * hiding / re-pinning a visible group, or its hidden members when reviving a
134
+ * fully-hidden group back into a visible band (see `groupRun`).
135
+ */
136
+ export declare function applyZoneDrop(bands: DraftBands, groupOf: GroupOf, drop: DraftZoneDrop): DraftBands;
137
+ /**
138
+ * Owns the localStorage-backed customization snapshot for one table.
139
+ *
140
+ * Modeled on `usePersistedQuery`: storage is keyed on the table's stable
141
+ * `config.id`, every access is SSR- and privacy-mode-guarded, and the feature
142
+ * is fully off without an id.
143
+ *
144
+ * The snapshot itself is deliberately NON-reactive; `revision` is bumped only
145
+ * by `load()` and `clear()`. Live captures (resize, page size) and the modal
146
+ * confirm go through `persistPatch`, which updates storage and the in-memory
147
+ * snapshot WITHOUT bumping `revision` — so they never re-trigger the host's
148
+ * `watch([config, revision])` and its `tableApi.reset()` (which would nuke row
149
+ * selection). A later config change still re-reads the fresh snapshot.
150
+ */
151
+ export declare function useTableCustomization(tableId: string | undefined): {
152
+ revision: import("vue").Ref<number, number>;
153
+ load: () => void;
154
+ snapshot: () => TableCustomizationSnapshot | undefined;
155
+ persistPatch: (patch: TableCustomizationPatch) => void;
156
+ clear: () => void;
157
+ wasCustomized: () => boolean;
158
+ };