@feugene/granularity 0.13.0 → 0.16.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 (1223) hide show
  1. package/README.md +14 -1
  2. package/dist/chunks/adapter-CAOxmn2G.js.map +1 -1
  3. package/dist/chunks/check-BZI24Qs4.js +23 -0
  4. package/dist/chunks/check-BZI24Qs4.js.map +1 -0
  5. package/dist/chunks/chevron-down-CQS2OG_s.js +23 -0
  6. package/dist/chunks/chevron-down-CQS2OG_s.js.map +1 -0
  7. package/dist/chunks/chevron-right-BfqMVpbB.js +44 -0
  8. package/dist/chunks/chevron-right-BfqMVpbB.js.map +1 -0
  9. package/dist/chunks/config-06SQjBx0.js +96 -0
  10. package/dist/chunks/config-06SQjBx0.js.map +1 -0
  11. package/dist/chunks/config-A-bBiotF.js +12 -0
  12. package/dist/chunks/config-A-bBiotF.js.map +1 -0
  13. package/dist/chunks/config-B-g6lT19.js +19 -0
  14. package/dist/chunks/config-B-g6lT19.js.map +1 -0
  15. package/dist/chunks/config-B-iNaGdw.js +199 -0
  16. package/dist/chunks/config-B-iNaGdw.js.map +1 -0
  17. package/dist/chunks/config-B84z1aos.js +19 -0
  18. package/dist/chunks/config-B84z1aos.js.map +1 -0
  19. package/dist/chunks/config-BE6n20np.js +27 -0
  20. package/dist/chunks/config-BE6n20np.js.map +1 -0
  21. package/dist/chunks/config-BKvX0q10.js +89 -0
  22. package/dist/chunks/config-BKvX0q10.js.map +1 -0
  23. package/dist/chunks/config-BN4sXYXn.js +77 -0
  24. package/dist/chunks/config-BN4sXYXn.js.map +1 -0
  25. package/dist/chunks/config-BNfQwyL4.js +97 -0
  26. package/dist/chunks/config-BNfQwyL4.js.map +1 -0
  27. package/dist/chunks/config-BNu8lFQB.js.map +1 -1
  28. package/dist/chunks/config-BSyiFlbi.js +17 -0
  29. package/dist/chunks/config-BSyiFlbi.js.map +1 -0
  30. package/dist/chunks/config-BViooYNv.js +13 -0
  31. package/dist/chunks/config-BViooYNv.js.map +1 -0
  32. package/dist/chunks/config-BbY2SKGE.js +90 -0
  33. package/dist/chunks/config-BbY2SKGE.js.map +1 -0
  34. package/dist/chunks/config-BeZRuonp.js +54 -0
  35. package/dist/chunks/config-BeZRuonp.js.map +1 -0
  36. package/dist/chunks/config-BoNR7_PD.js +140 -0
  37. package/dist/chunks/config-BoNR7_PD.js.map +1 -0
  38. package/dist/chunks/config-Bpt9Xbxm.js +49 -0
  39. package/dist/chunks/config-Bpt9Xbxm.js.map +1 -0
  40. package/dist/chunks/config-BqFjr3tN.js +131 -0
  41. package/dist/chunks/config-BqFjr3tN.js.map +1 -0
  42. package/dist/chunks/config-BsuDM3Hb.js +55 -0
  43. package/dist/chunks/config-BsuDM3Hb.js.map +1 -0
  44. package/dist/chunks/config-BtXRpAtq.js +48 -0
  45. package/dist/chunks/config-BtXRpAtq.js.map +1 -0
  46. package/dist/chunks/config-BuGlNPE9.js +8 -0
  47. package/dist/chunks/config-BuGlNPE9.js.map +1 -0
  48. package/dist/chunks/config-C0Ea9ePP.js +15 -0
  49. package/dist/chunks/config-C0Ea9ePP.js.map +1 -0
  50. package/dist/chunks/config-CN2ULSQL2.js +36 -0
  51. package/dist/chunks/config-CN2ULSQL2.js.map +1 -0
  52. package/dist/chunks/config-CN970ZcJ.js +113 -0
  53. package/dist/chunks/config-CN970ZcJ.js.map +1 -0
  54. package/dist/chunks/config-COvrUfhR.js +83 -0
  55. package/dist/chunks/config-COvrUfhR.js.map +1 -0
  56. package/dist/chunks/config-CQzGyi1C.js +54 -0
  57. package/dist/chunks/config-CQzGyi1C.js.map +1 -0
  58. package/dist/chunks/config-CY0_6cMi.js +51 -0
  59. package/dist/chunks/config-CY0_6cMi.js.map +1 -0
  60. package/dist/chunks/config-CjXjhphs.js +12 -0
  61. package/dist/chunks/config-CjXjhphs.js.map +1 -0
  62. package/dist/chunks/config-CjnbevbD.js +13 -0
  63. package/dist/chunks/config-CjnbevbD.js.map +1 -0
  64. package/dist/chunks/config-Cl4ST6Qd.js +21 -0
  65. package/dist/chunks/config-Cl4ST6Qd.js.map +1 -0
  66. package/dist/chunks/config-Cp0DE0GH.js +12 -0
  67. package/dist/chunks/config-Cp0DE0GH.js.map +1 -0
  68. package/dist/chunks/config-CpwwkFBO.js +72 -0
  69. package/dist/chunks/config-CpwwkFBO.js.map +1 -0
  70. package/dist/chunks/config-CvC0sX8p.js +81 -0
  71. package/dist/chunks/config-CvC0sX8p.js.map +1 -0
  72. package/dist/chunks/config-Cw6TDzWv2.js +72 -0
  73. package/dist/chunks/config-Cw6TDzWv2.js.map +1 -0
  74. package/dist/chunks/config-Cwd3yjRw.js +41 -0
  75. package/dist/chunks/config-Cwd3yjRw.js.map +1 -0
  76. package/dist/chunks/config-D3_g2KIn.js +120 -0
  77. package/dist/chunks/config-D3_g2KIn.js.map +1 -0
  78. package/dist/chunks/config-D6W1rnlp.js +26 -0
  79. package/dist/chunks/config-D6W1rnlp.js.map +1 -0
  80. package/dist/chunks/config-D8tSR2uS.js +103 -0
  81. package/dist/chunks/config-D8tSR2uS.js.map +1 -0
  82. package/dist/chunks/config-D94Z9po52.js +126 -0
  83. package/dist/chunks/config-D94Z9po52.js.map +1 -0
  84. package/dist/chunks/config-DBmdgoVf.js.map +1 -1
  85. package/dist/chunks/config-DCFvmHEv.js +76 -0
  86. package/dist/chunks/config-DCFvmHEv.js.map +1 -0
  87. package/dist/chunks/config-DKdlqXiY.js +109 -0
  88. package/dist/chunks/config-DKdlqXiY.js.map +1 -0
  89. package/dist/chunks/config-DP7eseR1.js +92 -0
  90. package/dist/chunks/config-DP7eseR1.js.map +1 -0
  91. package/dist/chunks/config-DSJY6aEl.js +80 -0
  92. package/dist/chunks/config-DSJY6aEl.js.map +1 -0
  93. package/dist/chunks/config-DU2DNSRx2.js +116 -0
  94. package/dist/chunks/config-DU2DNSRx2.js.map +1 -0
  95. package/dist/chunks/config-DhHbU3zO.js +37 -0
  96. package/dist/chunks/config-DhHbU3zO.js.map +1 -0
  97. package/dist/chunks/config-DpeQchsV.js +21 -0
  98. package/dist/chunks/config-DpeQchsV.js.map +1 -0
  99. package/dist/chunks/config-DpqOnJiz2.js.map +1 -0
  100. package/dist/chunks/config-DvQIb4kb.js +98 -0
  101. package/dist/chunks/config-DvQIb4kb.js.map +1 -0
  102. package/dist/chunks/config-DxCTVBfx.js +97 -0
  103. package/dist/chunks/config-DxCTVBfx.js.map +1 -0
  104. package/dist/chunks/config-K0C2tcLB.js +84 -0
  105. package/dist/chunks/config-K0C2tcLB.js.map +1 -0
  106. package/dist/chunks/config-QaIc_gRa.js.map +1 -0
  107. package/dist/chunks/config-Rw9OyW70.js +87 -0
  108. package/dist/chunks/config-Rw9OyW70.js.map +1 -0
  109. package/dist/chunks/config-T3qdQBgU.js +40 -0
  110. package/dist/chunks/config-T3qdQBgU.js.map +1 -0
  111. package/dist/chunks/config-WTNhdh6T2.js +20 -0
  112. package/dist/chunks/config-WTNhdh6T2.js.map +1 -0
  113. package/dist/chunks/config-Zc_bUvZY2.js +23 -0
  114. package/dist/chunks/config-Zc_bUvZY2.js.map +1 -0
  115. package/dist/chunks/config-_qPUfb6-2.js +165 -0
  116. package/dist/chunks/config-_qPUfb6-2.js.map +1 -0
  117. package/dist/chunks/config-eXB87DOi2.js.map +1 -0
  118. package/dist/chunks/config-esdviAPL.js +41 -0
  119. package/dist/chunks/config-esdviAPL.js.map +1 -0
  120. package/dist/chunks/config-gwro_7yn.js +55 -0
  121. package/dist/chunks/config-gwro_7yn.js.map +1 -0
  122. package/dist/chunks/config-qVg3Zz_A.js +30 -0
  123. package/dist/chunks/config-qVg3Zz_A.js.map +1 -0
  124. package/dist/chunks/config-zjeAJ4ho.js +64 -0
  125. package/dist/chunks/config-zjeAJ4ho.js.map +1 -0
  126. package/dist/chunks/context-BSYR7RZs.js +152 -0
  127. package/dist/chunks/context-BSYR7RZs.js.map +1 -0
  128. package/dist/chunks/context-BfIQv7m1.js +18 -0
  129. package/dist/chunks/context-BfIQv7m1.js.map +1 -0
  130. package/dist/chunks/context-Bfrgsluh.js.map +1 -1
  131. package/dist/chunks/context-DdNIxa1w.js.map +1 -1
  132. package/dist/chunks/dialogShared-CxW62PQE.js.map +1 -1
  133. package/dist/chunks/en-B3xMeswz.js +327 -0
  134. package/dist/chunks/en-B3xMeswz.js.map +1 -0
  135. package/dist/chunks/es-Bv8vvqdT.js +20 -0
  136. package/dist/chunks/es-Bv8vvqdT.js.map +1 -0
  137. package/dist/chunks/es-CA-mkU--.js +329 -0
  138. package/dist/chunks/es-CA-mkU--.js.map +1 -0
  139. package/dist/chunks/fileValidation-D5TFBhbv.js +296 -0
  140. package/dist/chunks/fileValidation-D5TFBhbv.js.map +1 -0
  141. package/dist/chunks/focusables-BkzK42SQ.js +87 -0
  142. package/dist/chunks/focusables-BkzK42SQ.js.map +1 -0
  143. package/dist/chunks/grBadgeStyles-C2wLlkjF.js +61 -0
  144. package/dist/chunks/grBadgeStyles-C2wLlkjF.js.map +1 -0
  145. package/dist/chunks/grButtonStyles-B_-YRE__.js +221 -0
  146. package/dist/chunks/grButtonStyles-B_-YRE__.js.map +1 -0
  147. package/dist/chunks/grCheckboxStyles-hOAgURZG.js +82 -0
  148. package/dist/chunks/grCheckboxStyles-hOAgURZG.js.map +1 -0
  149. package/dist/chunks/grDropdownStyles-V7TRiCXn.js +24 -0
  150. package/dist/chunks/grDropdownStyles-V7TRiCXn.js.map +1 -0
  151. package/dist/chunks/grFormFieldStyles-BkeZHIw0.js +32 -0
  152. package/dist/chunks/grFormFieldStyles-BkeZHIw0.js.map +1 -0
  153. package/dist/chunks/grIconStyles-BwJrml2L.js +44 -0
  154. package/dist/chunks/grIconStyles-BwJrml2L.js.map +1 -0
  155. package/dist/chunks/grInputStyles-CJeMhUe5.js +66 -0
  156. package/dist/chunks/grInputStyles-CJeMhUe5.js.map +1 -0
  157. package/dist/chunks/grKbdStyles-DAoxiytu.js +31 -0
  158. package/dist/chunks/grKbdStyles-DAoxiytu.js.map +1 -0
  159. package/dist/chunks/grLinkStyles-BoL8QYcV.js +84 -0
  160. package/dist/chunks/grLinkStyles-BoL8QYcV.js.map +1 -0
  161. package/dist/chunks/grLoadingStyles-DEmji2wv.js +30 -0
  162. package/dist/chunks/grLoadingStyles-DEmji2wv.js.map +1 -0
  163. package/dist/chunks/grModalStyles-EZfuEiw_.js +77 -0
  164. package/dist/chunks/grModalStyles-EZfuEiw_.js.map +1 -0
  165. package/dist/chunks/grPopoverStyles-Rz_Z5nLW.js +46 -0
  166. package/dist/chunks/grPopoverStyles-Rz_Z5nLW.js.map +1 -0
  167. package/dist/chunks/grSelectStyles-eTz4uPMP.js +147 -0
  168. package/dist/chunks/grSelectStyles-eTz4uPMP.js.map +1 -0
  169. package/dist/chunks/grSliderStyles-B5uNxNJq.js +133 -0
  170. package/dist/chunks/grSliderStyles-B5uNxNJq.js.map +1 -0
  171. package/dist/chunks/grStyle-CrgLQKKf.js +46 -0
  172. package/dist/chunks/grStyle-CrgLQKKf.js.map +1 -0
  173. package/dist/chunks/grTableStyles-C-iaqQUN.js +26 -0
  174. package/dist/chunks/grTableStyles-C-iaqQUN.js.map +1 -0
  175. package/dist/chunks/grTextareaStyles-CWI2SqC8.js +50 -0
  176. package/dist/chunks/grTextareaStyles-CWI2SqC8.js.map +1 -0
  177. package/dist/chunks/granular-provider-CtrXGa7c.js +193 -0
  178. package/dist/chunks/granular-provider-CtrXGa7c.js.map +1 -0
  179. package/dist/chunks/granularityI18n-BC5zsj_d.js +68 -0
  180. package/dist/chunks/granularityI18n-BC5zsj_d.js.map +1 -0
  181. package/dist/chunks/inert-DIHCCn_1.js +78 -0
  182. package/dist/chunks/inert-DIHCCn_1.js.map +1 -0
  183. package/dist/chunks/keyboard-zYvvyHd4.js +61 -0
  184. package/dist/chunks/keyboard-zYvvyHd4.js.map +1 -0
  185. package/dist/chunks/loader-2-B1fdsdWW.js +23 -0
  186. package/dist/chunks/loader-2-B1fdsdWW.js.map +1 -0
  187. package/dist/chunks/minus-oxdbHF33.js +23 -0
  188. package/dist/chunks/minus-oxdbHF33.js.map +1 -0
  189. package/dist/chunks/optionFilter-BVY988pC.js +149 -0
  190. package/dist/chunks/optionFilter-BVY988pC.js.map +1 -0
  191. package/dist/chunks/portalRoot-CWD4zHBm.js +35 -0
  192. package/dist/chunks/portalRoot-CWD4zHBm.js.map +1 -0
  193. package/dist/chunks/ru-COWxgh2A.js +331 -0
  194. package/dist/chunks/ru-COWxgh2A.js.map +1 -0
  195. package/dist/chunks/safelist-CudBLyAD.js +26 -0
  196. package/dist/chunks/safelist-CudBLyAD.js.map +1 -0
  197. package/dist/chunks/slotNodes-DxNXpC7v.js +39 -0
  198. package/dist/chunks/slotNodes-DxNXpC7v.js.map +1 -0
  199. package/dist/chunks/useControlAddons-asUr10Pf.js +128 -0
  200. package/dist/chunks/useControlAddons-asUr10Pf.js.map +1 -0
  201. package/dist/chunks/useControlledOpen-DV3SqLTP.js +27 -0
  202. package/dist/chunks/useControlledOpen-DV3SqLTP.js.map +1 -0
  203. package/dist/chunks/useFilePreviews-DnwgdyBs.js +53 -0
  204. package/dist/chunks/useFilePreviews-DnwgdyBs.js.map +1 -0
  205. package/dist/chunks/useFocusWithin-BwHE0rzm.js +33 -0
  206. package/dist/chunks/useFocusWithin-BwHE0rzm.js.map +1 -0
  207. package/dist/chunks/useModalOverlay-DCM4d3yA.js +212 -0
  208. package/dist/chunks/useModalOverlay-DCM4d3yA.js.map +1 -0
  209. package/dist/chunks/useOverlayLayer-BupuP_hs.js +149 -0
  210. package/dist/chunks/useOverlayLayer-BupuP_hs.js.map +1 -0
  211. package/dist/chunks/usePortalTarget-RyzEgNTb.js +77 -0
  212. package/dist/chunks/usePortalTarget-RyzEgNTb.js.map +1 -0
  213. package/dist/chunks/validation-5HhpanPP.js +178 -0
  214. package/dist/chunks/validation-5HhpanPP.js.map +1 -0
  215. package/dist/components/GrAlert/chunks/GrAlert-BC1lplbY.js +272 -0
  216. package/dist/components/GrAlert/chunks/GrAlert-BC1lplbY.js.map +1 -0
  217. package/dist/components/GrAlert/index.js +2 -2
  218. package/dist/components/GrAutocomplete/chunks/GrAutocomplete-CQ9T7Lly.js +851 -0
  219. package/dist/components/GrAutocomplete/chunks/GrAutocomplete-CQ9T7Lly.js.map +1 -0
  220. package/dist/components/GrAutocomplete/index.js +2 -2
  221. package/dist/components/GrAutocomplete/styles.css +1 -0
  222. package/dist/components/GrAvatar/chunks/GrAvatar-CVUujLmn.js +222 -0
  223. package/dist/components/GrAvatar/chunks/GrAvatar-CVUujLmn.js.map +1 -0
  224. package/dist/components/GrAvatar/index.js +3 -3
  225. package/dist/components/GrBadge/chunks/GrBadge-B1tgqfGQ.js +40 -0
  226. package/dist/components/GrBadge/chunks/GrBadge-B1tgqfGQ.js.map +1 -0
  227. package/dist/components/GrBadge/index.js +2 -2
  228. package/dist/components/GrBadge/styles.css +1 -0
  229. package/dist/components/GrBadge/themes/dark.css +19 -0
  230. package/dist/components/GrBadge/themes/light.css +18 -0
  231. package/dist/components/GrBadgeWrap/chunks/GrBadgeWrap-C-E9betg.js +97 -0
  232. package/dist/components/GrBadgeWrap/chunks/GrBadgeWrap-C-E9betg.js.map +1 -0
  233. package/dist/components/GrBadgeWrap/index.js +3 -3
  234. package/dist/components/GrBadgeWrap/styles.css +1 -0
  235. package/dist/components/GrBottomNav/chunks/GrBottomNav-9GH7Dd9E.js +117 -0
  236. package/dist/components/GrBottomNav/chunks/GrBottomNav-9GH7Dd9E.js.map +1 -0
  237. package/dist/components/GrBottomNav/index.js +3 -3
  238. package/dist/components/GrBreadcrumbs/chunks/GrBreadcrumbs-BCNGDS6k.js +266 -0
  239. package/dist/components/GrBreadcrumbs/chunks/GrBreadcrumbs-BCNGDS6k.js.map +1 -0
  240. package/dist/components/GrBreadcrumbs/index.js +3 -0
  241. package/dist/components/GrButton/chunks/GrButton-D0m_z0XW.js +153 -0
  242. package/dist/components/GrButton/chunks/GrButton-D0m_z0XW.js.map +1 -0
  243. package/dist/components/GrButton/index.js +5 -5
  244. package/dist/components/GrButton/themes/dark.css +46 -0
  245. package/dist/components/GrButton/themes/light.css +82 -0
  246. package/dist/components/GrButtonGroup/chunks/GrButtonGroup-CKyiAV8K.js +44 -0
  247. package/dist/components/GrButtonGroup/chunks/GrButtonGroup-CKyiAV8K.js.map +1 -0
  248. package/dist/components/GrButtonGroup/index.js +3 -2
  249. package/dist/components/GrButtonGroup/styles.css +1 -0
  250. package/dist/components/GrCard/chunks/GrCard-DOrGHf2x.js +89 -0
  251. package/dist/components/GrCard/chunks/GrCard-DOrGHf2x.js.map +1 -0
  252. package/dist/components/GrCard/index.js +3 -3
  253. package/dist/components/GrCheckbox/chunks/GrCheckbox-BLOp8452.js +262 -0
  254. package/dist/components/GrCheckbox/chunks/GrCheckbox-BLOp8452.js.map +1 -0
  255. package/dist/components/GrCheckbox/index.js +3 -3
  256. package/dist/components/GrCheckboxGroup/chunks/GrCheckboxGroup-CXTx2Z5H.js +140 -0
  257. package/dist/components/GrCheckboxGroup/chunks/GrCheckboxGroup-CXTx2Z5H.js.map +1 -0
  258. package/dist/components/GrCheckboxGroup/index.js +3 -0
  259. package/dist/components/GrCollapse/chunks/GrCollapse-B2Fc6A9r.js +308 -0
  260. package/dist/components/GrCollapse/chunks/GrCollapse-B2Fc6A9r.js.map +1 -0
  261. package/dist/components/GrCollapse/index.js +3 -3
  262. package/dist/components/GrColorPicker/chunks/GrColorPicker-bnYBRGk8.js +584 -0
  263. package/dist/components/GrColorPicker/chunks/GrColorPicker-bnYBRGk8.js.map +1 -0
  264. package/dist/components/GrColorPicker/index.js +3 -0
  265. package/dist/components/GrColorPicker/styles.css +1 -0
  266. package/dist/components/GrCommandPalette/chunks/GrCommandPalette-MWDYDPNC.js +566 -0
  267. package/dist/components/GrCommandPalette/chunks/GrCommandPalette-MWDYDPNC.js.map +1 -0
  268. package/dist/components/GrCommandPalette/index.js +2 -2
  269. package/dist/components/GrCommandPalette/styles.css +1 -0
  270. package/dist/components/GrConfigProvider/chunks/GrConfigProvider-BA6JO7V6.js +144 -0
  271. package/dist/components/GrConfigProvider/chunks/GrConfigProvider-BA6JO7V6.js.map +1 -0
  272. package/dist/components/GrConfigProvider/index.js +2 -2
  273. package/dist/components/GrConfirmDialog/chunks/GrConfirmDialog-DaQmlp1_.js +200 -0
  274. package/dist/components/GrConfirmDialog/chunks/GrConfirmDialog-DaQmlp1_.js.map +1 -0
  275. package/dist/components/GrConfirmDialog/index.js +2 -2
  276. package/dist/components/GrDataTable/chunks/GrDataTable-DVFho9Cj.js +605 -0
  277. package/dist/components/GrDataTable/chunks/GrDataTable-DVFho9Cj.js.map +1 -0
  278. package/dist/components/GrDataTable/index.js +3 -3
  279. package/dist/components/GrDialog/chunks/GrDialog-AE1gIZuz.js +255 -0
  280. package/dist/components/GrDialog/chunks/GrDialog-AE1gIZuz.js.map +1 -0
  281. package/dist/components/GrDialog/index.js +1 -1
  282. package/dist/components/GrDialogService/chunks/GrDialogService-B4DYWDkA.js +656 -0
  283. package/dist/components/GrDialogService/chunks/GrDialogService-B4DYWDkA.js.map +1 -0
  284. package/dist/components/GrDialogService/index.js +3 -3
  285. package/dist/components/GrDivider/chunks/GrDivider-B2Xwc_QO.js +109 -0
  286. package/dist/components/GrDivider/chunks/GrDivider-B2Xwc_QO.js.map +1 -0
  287. package/dist/components/GrDivider/index.js +3 -3
  288. package/dist/components/GrDrawer/chunks/GrDrawer-DQwi6aRw.js +251 -0
  289. package/dist/components/GrDrawer/chunks/GrDrawer-DQwi6aRw.js.map +1 -0
  290. package/dist/components/GrDrawer/index.js +2 -2
  291. package/dist/components/GrDropdown/chunks/GrDropdown-BLng6V1m.js +300 -0
  292. package/dist/components/GrDropdown/chunks/GrDropdown-BLng6V1m.js.map +1 -0
  293. package/dist/components/GrDropdown/index.js +2 -2
  294. package/dist/components/GrDropdownMenu/chunks/GrDropdownMenu-BImk2Vs7.js +421 -0
  295. package/dist/components/GrDropdownMenu/chunks/GrDropdownMenu-BImk2Vs7.js.map +1 -0
  296. package/dist/components/GrDropdownMenu/index.js +3 -3
  297. package/dist/components/GrEmptyState/chunks/GrEmptyState-W7Irx3vc.js +86 -0
  298. package/dist/components/GrEmptyState/chunks/GrEmptyState-W7Irx3vc.js.map +1 -0
  299. package/dist/components/GrEmptyState/index.js +3 -3
  300. package/dist/components/GrFileUpload/chunks/GrFileUpload-D0B-BEsd.js +1080 -0
  301. package/dist/components/GrFileUpload/chunks/GrFileUpload-D0B-BEsd.js.map +1 -0
  302. package/dist/components/GrFileUpload/index.js +4 -4
  303. package/dist/components/GrForm/chunks/GrForm-BCHCfIMv.js +326 -0
  304. package/dist/components/GrForm/chunks/GrForm-BCHCfIMv.js.map +1 -0
  305. package/dist/components/GrForm/index.js +3 -2
  306. package/dist/components/GrFormField/chunks/GrFormField-CL5rcgj6.js +190 -0
  307. package/dist/components/GrFormField/chunks/GrFormField-CL5rcgj6.js.map +1 -0
  308. package/dist/components/GrFormField/index.js +3 -3
  309. package/dist/components/GrFormFile/chunks/GrFormFile-BikSD7bg.js +452 -0
  310. package/dist/components/GrFormFile/chunks/GrFormFile-BikSD7bg.js.map +1 -0
  311. package/dist/components/GrFormFile/index.js +3 -3
  312. package/dist/components/GrFormFile/styles.css +1 -0
  313. package/dist/components/GrFormSection/chunks/GrFormSection-BEh5n4jF.js +63 -0
  314. package/dist/components/GrFormSection/chunks/GrFormSection-BEh5n4jF.js.map +1 -0
  315. package/dist/components/GrFormSection/index.js +3 -3
  316. package/dist/components/GrIcon/chunks/GrIcon-BvA2ZGXP.js +57 -0
  317. package/dist/components/GrIcon/chunks/GrIcon-BvA2ZGXP.js.map +1 -0
  318. package/dist/components/GrIcon/index.js +3 -3
  319. package/dist/components/GrIcon/styles.css +1 -0
  320. package/dist/components/GrImageViewer/chunks/GrImageViewer-BeCnE8XQ.js +1103 -0
  321. package/dist/components/GrImageViewer/chunks/GrImageViewer-BeCnE8XQ.js.map +1 -0
  322. package/dist/components/GrImageViewer/index.js +3 -3
  323. package/dist/components/GrImageViewer/themes/dark.css +17 -0
  324. package/dist/components/GrImageViewer/themes/light.css +16 -0
  325. package/dist/components/GrInput/chunks/GrInput-DD2gYdqS.js +348 -0
  326. package/dist/components/GrInput/chunks/GrInput-DD2gYdqS.js.map +1 -0
  327. package/dist/components/GrInput/index.js +2 -2
  328. package/dist/components/GrInputTag/chunks/GrInputTag-DmNunixz.js +525 -0
  329. package/dist/components/GrInputTag/chunks/GrInputTag-DmNunixz.js.map +1 -0
  330. package/dist/components/GrInputTag/index.js +2 -2
  331. package/dist/components/GrKbd/chunks/GrKbd-DRFPvW3G.js +192 -0
  332. package/dist/components/GrKbd/chunks/GrKbd-DRFPvW3G.js.map +1 -0
  333. package/dist/components/GrKbd/index.js +3 -3
  334. package/dist/components/GrLink/chunks/GrLink-D-cgUMXW.js +163 -0
  335. package/dist/components/GrLink/chunks/GrLink-D-cgUMXW.js.map +1 -0
  336. package/dist/components/GrLink/index.js +2 -2
  337. package/dist/components/GrList/chunks/GrList-4YU1NZtM.js +277 -0
  338. package/dist/components/GrList/chunks/GrList-4YU1NZtM.js.map +1 -0
  339. package/dist/components/GrList/index.js +3 -3
  340. package/dist/components/GrList/styles.css +1 -0
  341. package/dist/components/GrLoading/chunks/GrLoading-CH95CFzS.js +101 -0
  342. package/dist/components/GrLoading/chunks/GrLoading-CH95CFzS.js.map +1 -0
  343. package/dist/components/GrLoading/index.js +2 -2
  344. package/dist/components/GrModal/chunks/GrModal-B8I78T0N.js +313 -0
  345. package/dist/components/GrModal/chunks/GrModal-B8I78T0N.js.map +1 -0
  346. package/dist/components/GrModal/index.js +3 -4
  347. package/dist/components/GrNavbar/chunks/GrNavbar-CF0KbM_6.js +104 -0
  348. package/dist/components/GrNavbar/chunks/GrNavbar-CF0KbM_6.js.map +1 -0
  349. package/dist/components/GrNavbar/index.js +3 -3
  350. package/dist/components/GrNumberInput/chunks/GrNumberInput-CZOyPz4J.js +658 -0
  351. package/dist/components/GrNumberInput/chunks/GrNumberInput-CZOyPz4J.js.map +1 -0
  352. package/dist/components/GrNumberInput/index.js +2 -2
  353. package/dist/components/GrPagination/chunks/GrPagination-B6N0QZBf.js +283 -0
  354. package/dist/components/GrPagination/chunks/GrPagination-B6N0QZBf.js.map +1 -0
  355. package/dist/components/GrPagination/index.js +3 -3
  356. package/dist/components/GrPopover/chunks/GrPopover-B1eRCOoO.js +216 -0
  357. package/dist/components/GrPopover/chunks/GrPopover-B1eRCOoO.js.map +1 -0
  358. package/dist/components/GrPopover/index.js +3 -0
  359. package/dist/components/GrProgressBar/chunks/GrProgressBar-BiHnaitu.js +90 -0
  360. package/dist/components/GrProgressBar/chunks/GrProgressBar-BiHnaitu.js.map +1 -0
  361. package/dist/components/GrProgressBar/index.js +2 -2
  362. package/dist/components/GrProgressBar/styles.css +1 -0
  363. package/dist/components/GrProgressBar/themes/dark.css +13 -0
  364. package/dist/components/GrProgressBar/themes/light.css +12 -0
  365. package/dist/components/GrProgressCircle/chunks/GrProgressCircle-CTogjcHz.js +210 -0
  366. package/dist/components/GrProgressCircle/chunks/GrProgressCircle-CTogjcHz.js.map +1 -0
  367. package/dist/components/GrProgressCircle/index.js +3 -0
  368. package/dist/components/GrProgressCircle/styles.css +1 -0
  369. package/dist/components/GrPromptDialog/chunks/GrPromptDialog-Ct174NVD.js +348 -0
  370. package/dist/components/GrPromptDialog/chunks/GrPromptDialog-Ct174NVD.js.map +1 -0
  371. package/dist/components/GrPromptDialog/index.js +2 -2
  372. package/dist/components/GrRadio/chunks/GrRadio-DksDro_U.js +277 -0
  373. package/dist/components/GrRadio/chunks/GrRadio-DksDro_U.js.map +1 -0
  374. package/dist/components/GrRadio/index.js +2 -2
  375. package/dist/components/GrRadioGroup/chunks/GrRadioGroup-BOIhejE6.js +189 -0
  376. package/dist/components/GrRadioGroup/chunks/GrRadioGroup-BOIhejE6.js.map +1 -0
  377. package/dist/components/GrRadioGroup/index.js +2 -2
  378. package/dist/components/GrRating/chunks/GrRating-JrHXz0Rv.js +315 -0
  379. package/dist/components/GrRating/chunks/GrRating-JrHXz0Rv.js.map +1 -0
  380. package/dist/components/GrRating/index.js +2 -2
  381. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-C7W9mgYN.js +777 -0
  382. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-C7W9mgYN.js.map +1 -0
  383. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-DhX4jjay.js +224 -0
  384. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-DhX4jjay.js.map +1 -0
  385. package/dist/components/GrResponseErrorBanner/index.js +2 -2
  386. package/dist/components/GrSegmented/chunks/GrSegmented-BQIlH5KI.js +406 -0
  387. package/dist/components/GrSegmented/chunks/GrSegmented-BQIlH5KI.js.map +1 -0
  388. package/dist/components/GrSegmented/index.js +3 -3
  389. package/dist/components/GrSelect/chunks/GrSelect-aqkPCqjd.js +1372 -0
  390. package/dist/components/GrSelect/chunks/GrSelect-aqkPCqjd.js.map +1 -0
  391. package/dist/components/GrSelect/index.js +2 -2
  392. package/dist/components/GrSelect/styles.css +1 -0
  393. package/dist/components/GrSidebar/chunks/GrSidebar-DRGnnViw.js +257 -0
  394. package/dist/components/GrSidebar/chunks/GrSidebar-DRGnnViw.js.map +1 -0
  395. package/dist/components/GrSidebar/index.js +3 -3
  396. package/dist/components/GrSkeleton/chunks/GrSkeleton-DEvNE3bC.js +84 -0
  397. package/dist/components/GrSkeleton/chunks/GrSkeleton-DEvNE3bC.js.map +1 -0
  398. package/dist/components/GrSkeleton/index.js +2 -2
  399. package/dist/components/GrSlider/chunks/GrSlider-DkU9IQSX.js +392 -0
  400. package/dist/components/GrSlider/chunks/GrSlider-DkU9IQSX.js.map +1 -0
  401. package/dist/components/GrSlider/index.js +2 -2
  402. package/dist/components/GrSplitter/chunks/GrSplitter-7To8jbJ8.js +288 -0
  403. package/dist/components/GrSplitter/chunks/GrSplitter-7To8jbJ8.js.map +1 -0
  404. package/dist/components/GrSplitter/index.js +3 -0
  405. package/dist/components/GrSplitter/styles.css +1 -0
  406. package/dist/components/GrStatistic/chunks/GrStatistic-CttyoYPT.js +319 -0
  407. package/dist/components/GrStatistic/chunks/GrStatistic-CttyoYPT.js.map +1 -0
  408. package/dist/components/GrStatistic/index.js +2 -2
  409. package/dist/components/GrSwitch/chunks/GrSwitch-B9TYbiih.js +183 -0
  410. package/dist/components/GrSwitch/chunks/GrSwitch-B9TYbiih.js.map +1 -0
  411. package/dist/components/GrSwitch/index.js +2 -2
  412. package/dist/components/GrTabPanels/chunks/GrTabPanels-BVe1CZdJ.js +81 -0
  413. package/dist/components/GrTabPanels/chunks/GrTabPanels-BVe1CZdJ.js.map +1 -0
  414. package/dist/components/GrTabPanels/index.js +2 -2
  415. package/dist/components/GrTable/chunks/GrTable-BB-mI_NM.js +163 -0
  416. package/dist/components/GrTable/chunks/GrTable-BB-mI_NM.js.map +1 -0
  417. package/dist/components/GrTable/index.js +3 -3
  418. package/dist/components/GrTabs/chunks/GrTabs-B8CDq2D9.js +272 -0
  419. package/dist/components/GrTabs/chunks/GrTabs-B8CDq2D9.js.map +1 -0
  420. package/dist/components/GrTabs/index.js +3 -3
  421. package/dist/components/GrTextarea/chunks/GrTextarea-DUh5Tlo4.js +241 -0
  422. package/dist/components/GrTextarea/chunks/GrTextarea-DUh5Tlo4.js.map +1 -0
  423. package/dist/components/GrTextarea/index.js +2 -2
  424. package/dist/components/GrTimeline/chunks/GrTimeline-CE9b3s18.js +285 -0
  425. package/dist/components/GrTimeline/chunks/GrTimeline-CE9b3s18.js.map +1 -0
  426. package/dist/components/GrTimeline/index.js +3 -0
  427. package/dist/components/GrTimeline/styles.css +1 -0
  428. package/dist/components/GrToaster/chunks/GrToaster-BKQy3Srm.js +272 -0
  429. package/dist/components/GrToaster/chunks/GrToaster-BKQy3Srm.js.map +1 -0
  430. package/dist/components/GrToaster/index.js +1 -1
  431. package/dist/components/GrToaster/styles.css +1 -0
  432. package/dist/components/GrTooltip/chunks/GrTooltip-DEbejfhA.js +185 -0
  433. package/dist/components/GrTooltip/chunks/GrTooltip-DEbejfhA.js.map +1 -0
  434. package/dist/components/GrTooltip/index.js +3 -3
  435. package/dist/components/GrTree/chunks/GrTree-wfdbvygw.js +1339 -0
  436. package/dist/components/GrTree/chunks/GrTree-wfdbvygw.js.map +1 -0
  437. package/dist/components/GrTree/index.js +2 -2
  438. package/dist/components/GrTree/styles.css +1 -0
  439. package/dist/components/GrTreeSelect/chunks/GrTreeSelect-lLWmAMtI.js +623 -0
  440. package/dist/components/GrTreeSelect/chunks/GrTreeSelect-lLWmAMtI.js.map +1 -0
  441. package/dist/components/GrTreeSelect/index.js +2 -2
  442. package/dist/composables/useAnnouncer.js +114 -0
  443. package/dist/composables/useAnnouncer.js.map +1 -0
  444. package/dist/composables/useDismissible.js +31 -0
  445. package/dist/composables/useDismissible.js.map +1 -0
  446. package/dist/composables/useFloating.js +112 -0
  447. package/dist/composables/useFloating.js.map +1 -0
  448. package/dist/composables/useFocusTrap.js +124 -0
  449. package/dist/composables/useFocusTrap.js.map +1 -0
  450. package/dist/composables/useGrFormControl.js +24 -0
  451. package/dist/composables/useGrFormControl.js.map +1 -0
  452. package/dist/composables/useOverlayLayer.js +2 -0
  453. package/dist/composables/usePortalTarget.js +2 -0
  454. package/dist/composables/useTheme.js +106 -36
  455. package/dist/composables/useTheme.js.map +1 -1
  456. package/dist/composables/useToast.js +123 -7
  457. package/dist/composables/useToast.js.map +1 -1
  458. package/dist/composables/useVirtualList.js +244 -0
  459. package/dist/composables/useVirtualList.js.map +1 -0
  460. package/dist/directives/dropzone.js +1 -1
  461. package/dist/directives/hotkey.js +9 -15
  462. package/dist/directives/hotkey.js.map +1 -1
  463. package/dist/directives/loading.js +43 -7
  464. package/dist/directives/loading.js.map +1 -1
  465. package/dist/fileValidation/index.js +2 -2
  466. package/dist/granular-provider-node.js +1 -31
  467. package/dist/granular-provider.js +1 -4
  468. package/dist/i18n/all.js +1 -1
  469. package/dist/i18n/index.js +1 -1
  470. package/dist/index.js +148 -140
  471. package/dist/styles/base.css +32 -0
  472. package/dist/styles/preflight.css +33 -0
  473. package/dist/styles/themes/dark.css +81 -26
  474. package/dist/styles/themes/light.css +86 -15
  475. package/dist/styles/tokens.css +63 -4
  476. package/dist/tokens.js +3132 -0
  477. package/dist/tokens.js.map +1 -0
  478. package/dist/types/src/components/GrAlert/GrAlert.vue.d.ts +42 -10
  479. package/dist/types/src/components/GrAlert/config.d.ts +1 -1
  480. package/dist/types/src/components/GrAlert/defaults.d.ts +9 -3
  481. package/dist/types/src/components/GrAlert/grAlertStyles.d.ts +0 -7
  482. package/dist/types/src/components/GrAlert/index.d.ts +3 -2
  483. package/dist/types/src/components/GrAutocomplete/GrAutocomplete.vue.d.ts +112 -99
  484. package/dist/types/src/components/GrAutocomplete/config.d.ts +1 -1
  485. package/dist/types/src/components/GrAutocomplete/grAutocompleteStyles.d.ts +43 -7
  486. package/dist/types/src/components/GrAutocomplete/index.d.ts +4 -0
  487. package/dist/types/src/components/GrAvatar/GrAvatar.vue.d.ts +40 -17
  488. package/dist/types/src/components/GrAvatar/GrAvatarGroup.vue.d.ts +70 -0
  489. package/dist/types/src/components/GrAvatar/avatarContext.d.ts +12 -0
  490. package/dist/types/src/components/GrAvatar/config.d.ts +1 -1
  491. package/dist/types/src/components/GrAvatar/defaults.d.ts +16 -0
  492. package/dist/types/src/components/GrAvatar/grAvatarStyles.d.ts +38 -0
  493. package/dist/types/src/components/GrAvatar/index.d.ts +5 -0
  494. package/dist/types/src/components/GrAvatar/safelist.d.ts +4 -0
  495. package/dist/types/src/components/GrBadge/GrBadge.vue.d.ts +4 -4
  496. package/dist/types/src/components/GrBadge/config.d.ts +1 -1
  497. package/dist/types/src/components/GrBadge/grBadgeStyles.d.ts +13 -1
  498. package/dist/types/src/components/GrBadge/index.d.ts +1 -0
  499. package/dist/types/src/components/GrBadgeWrap/GrBadgeWrap.vue.d.ts +42 -5
  500. package/dist/types/src/components/GrBadgeWrap/config.d.ts +1 -1
  501. package/dist/types/src/components/GrBadgeWrap/grBadgeWrapStyles.d.ts +46 -0
  502. package/dist/types/src/components/GrBadgeWrap/index.d.ts +4 -0
  503. package/dist/types/src/components/GrBadgeWrap/safelist.d.ts +1 -0
  504. package/dist/types/src/components/GrBottomNav/GrBottomNav.vue.d.ts +91 -4
  505. package/dist/types/src/components/GrBottomNav/config.d.ts +1 -1
  506. package/dist/types/src/components/GrBottomNav/defaults.d.ts +16 -0
  507. package/dist/types/src/components/GrBottomNav/grBottomNavStyles.d.ts +56 -0
  508. package/dist/types/src/components/GrBottomNav/index.d.ts +6 -1
  509. package/dist/types/src/components/GrBottomNav/safelist.d.ts +1 -0
  510. package/dist/types/src/components/GrBreadcrumbs/GrBreadcrumbs.vue.d.ts +117 -0
  511. package/dist/types/src/components/GrBreadcrumbs/config.d.ts +1 -0
  512. package/dist/types/src/components/GrBreadcrumbs/defaults.d.ts +15 -0
  513. package/dist/types/src/components/GrBreadcrumbs/grBreadcrumbsStyles.d.ts +86 -0
  514. package/dist/types/src/components/GrBreadcrumbs/index.d.ts +8 -0
  515. package/dist/types/src/components/GrBreadcrumbs/safelist.d.ts +1 -0
  516. package/dist/types/src/components/GrButton/GrButton.vue.d.ts +31 -7
  517. package/dist/types/src/components/GrButton/config.d.ts +1 -1
  518. package/dist/types/src/components/GrButton/grButtonStyles.d.ts +27 -3
  519. package/dist/types/src/components/GrButton/index.d.ts +5 -1
  520. package/dist/types/src/components/GrButton/safelist.d.ts +1 -0
  521. package/dist/types/src/components/GrButtonGroup/GrButtonGroup.vue.d.ts +32 -4
  522. package/dist/types/src/components/GrButtonGroup/config.d.ts +1 -1
  523. package/dist/types/src/components/GrButtonGroup/context.d.ts +20 -0
  524. package/dist/types/src/components/GrButtonGroup/index.d.ts +3 -0
  525. package/dist/types/src/components/GrCard/GrCard.vue.d.ts +80 -3
  526. package/dist/types/src/components/GrCard/config.d.ts +1 -1
  527. package/dist/types/src/components/GrCard/defaults.d.ts +15 -0
  528. package/dist/types/src/components/GrCard/grCardStyles.d.ts +24 -0
  529. package/dist/types/src/components/GrCard/index.d.ts +5 -0
  530. package/dist/types/src/components/GrCard/safelist.d.ts +1 -0
  531. package/dist/types/src/components/GrCheckbox/GrCheckbox.vue.d.ts +56 -10
  532. package/dist/types/src/components/GrCheckbox/config.d.ts +1 -1
  533. package/dist/types/src/components/GrCheckbox/defaults.d.ts +14 -0
  534. package/dist/types/src/components/GrCheckbox/grCheckboxGroupContext.d.ts +19 -0
  535. package/dist/types/src/components/GrCheckbox/grCheckboxStyles.d.ts +44 -0
  536. package/dist/types/src/components/GrCheckbox/index.d.ts +9 -0
  537. package/dist/types/src/components/GrCheckbox/safelist.d.ts +13 -0
  538. package/dist/types/src/components/GrCheckboxGroup/GrCheckboxGroup.vue.d.ts +105 -0
  539. package/dist/types/src/components/GrCheckboxGroup/config.d.ts +1 -0
  540. package/dist/types/src/components/GrCheckboxGroup/defaults.d.ts +14 -0
  541. package/dist/types/src/components/GrCheckboxGroup/index.d.ts +9 -0
  542. package/dist/types/src/components/GrCollapse/GrCollapse.vue.d.ts +55 -7
  543. package/dist/types/src/components/GrCollapse/GrCollapseItem.vue.d.ts +13 -3
  544. package/dist/types/src/components/GrCollapse/config.d.ts +1 -1
  545. package/dist/types/src/components/GrCollapse/defaults.d.ts +19 -0
  546. package/dist/types/src/components/GrCollapse/grCollapseContext.d.ts +20 -0
  547. package/dist/types/src/components/GrCollapse/grCollapseStyles.d.ts +42 -0
  548. package/dist/types/src/components/GrCollapse/index.d.ts +3 -0
  549. package/dist/types/src/components/GrCollapse/safelist.d.ts +15 -0
  550. package/dist/types/src/components/GrColorPicker/GrColorPicker.vue.d.ts +104 -0
  551. package/dist/types/src/components/GrColorPicker/color.d.ts +38 -0
  552. package/dist/types/src/components/GrColorPicker/config.d.ts +1 -0
  553. package/dist/types/src/components/GrColorPicker/defaults.d.ts +15 -0
  554. package/dist/types/src/components/GrColorPicker/grColorPickerStyles.d.ts +39 -0
  555. package/dist/types/src/components/GrColorPicker/index.d.ts +11 -0
  556. package/dist/types/src/components/GrColorPicker/safelist.d.ts +1 -0
  557. package/dist/types/src/components/GrCommandPalette/GrCommandPalette.vue.d.ts +45 -10
  558. package/dist/types/src/components/GrCommandPalette/config.d.ts +1 -1
  559. package/dist/types/src/components/GrCommandPalette/defaults.d.ts +14 -0
  560. package/dist/types/src/components/GrCommandPalette/filtering.d.ts +24 -0
  561. package/dist/types/src/components/GrCommandPalette/grCommandPaletteStyles.d.ts +33 -8
  562. package/dist/types/src/components/GrCommandPalette/index.d.ts +4 -0
  563. package/dist/types/src/components/GrConfigProvider/GrConfigProvider.vue.d.ts +38 -4
  564. package/dist/types/src/components/GrConfigProvider/config.d.ts +1 -1
  565. package/dist/types/src/components/GrConfigProvider/context.d.ts +27 -0
  566. package/dist/types/src/components/GrConfigProvider/index.d.ts +1 -0
  567. package/dist/types/src/components/GrConfigProvider/zIndexScale.d.ts +23 -0
  568. package/dist/types/src/components/GrConfirmDialog/GrConfirmDialog.vue.d.ts +33 -4
  569. package/dist/types/src/components/GrConfirmDialog/config.d.ts +1 -1
  570. package/dist/types/src/components/GrConfirmDialog/defaults.d.ts +14 -0
  571. package/dist/types/src/components/GrConfirmDialog/index.d.ts +2 -1
  572. package/dist/types/src/components/GrDataTable/GrDataTable.vue.d.ts +92 -27
  573. package/dist/types/src/components/GrDataTable/config.d.ts +1 -1
  574. package/dist/types/src/components/GrDataTable/defaults.d.ts +10 -0
  575. package/dist/types/src/components/GrDataTable/grDataTableSort.d.ts +25 -0
  576. package/dist/types/src/components/GrDataTable/grDataTableStyles.d.ts +29 -0
  577. package/dist/types/src/components/GrDataTable/index.d.ts +10 -1
  578. package/dist/types/src/components/GrDataTable/safelist.d.ts +1 -0
  579. package/dist/types/src/components/GrDialog/GrDialog.vue.d.ts +51 -4
  580. package/dist/types/src/components/GrDialog/GrDialogCloseButton.vue.d.ts +3 -0
  581. package/dist/types/src/components/GrDialog/GrDialogHeader.vue.d.ts +3 -0
  582. package/dist/types/src/components/GrDialog/config.d.ts +1 -1
  583. package/dist/types/src/components/GrDialog/defaults.d.ts +14 -0
  584. package/dist/types/src/components/GrDialog/dialogShared.d.ts +2 -1
  585. package/dist/types/src/components/GrDialog/index.d.ts +5 -0
  586. package/dist/types/src/components/GrDialogService/GrDialogServiceHost.vue.d.ts +18 -1
  587. package/dist/types/src/components/GrDialogService/GrDialogServiceItem.vue.d.ts +15 -0
  588. package/dist/types/src/components/GrDialogService/config.d.ts +1 -1
  589. package/dist/types/src/components/GrDialogService/index.d.ts +3 -1
  590. package/dist/types/src/components/GrDialogService/store.d.ts +78 -7
  591. package/dist/types/src/components/GrDialogService/types.d.ts +22 -1
  592. package/dist/types/src/components/GrDialogService/useDialogService.d.ts +31 -1
  593. package/dist/types/src/components/GrDivider/GrDivider.vue.d.ts +44 -9
  594. package/dist/types/src/components/GrDivider/config.d.ts +1 -1
  595. package/dist/types/src/components/GrDivider/defaults.d.ts +15 -0
  596. package/dist/types/src/components/GrDivider/grDividerStyles.d.ts +19 -0
  597. package/dist/types/src/components/GrDivider/index.d.ts +4 -1
  598. package/dist/types/src/components/GrDivider/safelist.d.ts +1 -0
  599. package/dist/types/src/components/GrDrawer/GrDrawer.vue.d.ts +93 -17
  600. package/dist/types/src/components/GrDrawer/config.d.ts +1 -1
  601. package/dist/types/src/components/GrDrawer/defaults.d.ts +19 -0
  602. package/dist/types/src/components/GrDrawer/grDrawerStyles.d.ts +48 -2
  603. package/dist/types/src/components/GrDrawer/index.d.ts +6 -1
  604. package/dist/types/src/components/GrDropdown/GrDropdown.vue.d.ts +66 -13
  605. package/dist/types/src/components/GrDropdown/config.d.ts +1 -1
  606. package/dist/types/src/components/GrDropdown/grDropdownStyles.d.ts +4 -5
  607. package/dist/types/src/components/GrDropdown/index.d.ts +5 -2
  608. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenu.vue.d.ts +79 -16
  609. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenuColumn.vue.d.ts +2 -1
  610. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenuColumns.vue.d.ts +3 -2
  611. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenuGroup.vue.d.ts +2 -2
  612. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenuHeader.vue.d.ts +3 -2
  613. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenuItem.vue.d.ts +51 -5
  614. package/dist/types/src/components/GrDropdownMenu/GrDropdownMenuList.vue.d.ts +5 -0
  615. package/dist/types/src/components/GrDropdownMenu/config.d.ts +1 -1
  616. package/dist/types/src/components/GrDropdownMenu/grDropdownMenuStyles.d.ts +33 -0
  617. package/dist/types/src/components/GrDropdownMenu/index.d.ts +6 -2
  618. package/dist/types/src/components/GrDropdownMenu/menuModel.d.ts +42 -0
  619. package/dist/types/src/components/GrDropdownMenu/safelist.d.ts +7 -0
  620. package/dist/types/src/components/GrEmptyState/GrEmptyState.vue.d.ts +33 -10
  621. package/dist/types/src/components/GrEmptyState/config.d.ts +1 -1
  622. package/dist/types/src/components/GrEmptyState/defaults.d.ts +16 -0
  623. package/dist/types/src/components/GrEmptyState/grEmptyStateStyles.d.ts +32 -0
  624. package/dist/types/src/components/GrEmptyState/index.d.ts +4 -0
  625. package/dist/types/src/components/GrEmptyState/safelist.d.ts +1 -0
  626. package/dist/types/src/components/GrFileUpload/GrFileUpload.vue.d.ts +158 -148
  627. package/dist/types/src/components/GrFileUpload/config.d.ts +1 -1
  628. package/dist/types/src/components/GrFileUpload/defaults.d.ts +10 -0
  629. package/dist/types/src/components/GrFileUpload/fileEntry.d.ts +26 -0
  630. package/dist/types/src/components/GrFileUpload/grFileUploadStyles.d.ts +45 -0
  631. package/dist/types/src/components/GrFileUpload/index.d.ts +10 -1
  632. package/dist/types/src/components/GrFileUpload/maxFileSize.d.ts +2 -0
  633. package/dist/types/src/components/GrFileUpload/safelist.d.ts +1 -0
  634. package/dist/types/src/components/GrFileUpload/useDropZone.d.ts +24 -0
  635. package/dist/types/src/components/GrFileUpload/usePerFileUpload.d.ts +38 -0
  636. package/dist/types/src/components/GrFileUpload/useUploadState.d.ts +30 -0
  637. package/dist/types/src/components/GrForm/GrForm.vue.d.ts +38 -2
  638. package/dist/types/src/components/GrForm/config.d.ts +1 -1
  639. package/dist/types/src/components/GrForm/context.d.ts +22 -3
  640. package/dist/types/src/components/GrForm/fileRule.d.ts +43 -0
  641. package/dist/types/src/components/GrForm/index.d.ts +6 -2
  642. package/dist/types/src/components/GrForm/modelSnapshot.d.ts +17 -0
  643. package/dist/types/src/components/GrForm/validation.d.ts +16 -1
  644. package/dist/types/src/components/GrFormField/GrFormField.vue.d.ts +56 -10
  645. package/dist/types/src/components/GrFormField/config.d.ts +1 -1
  646. package/dist/types/src/components/GrFormField/context.d.ts +19 -0
  647. package/dist/types/src/components/GrFormField/defaults.d.ts +15 -0
  648. package/dist/types/src/components/GrFormField/grFormFieldStyles.d.ts +19 -0
  649. package/dist/types/src/components/GrFormField/index.d.ts +5 -1
  650. package/dist/types/src/components/GrFormField/safelist.d.ts +1 -0
  651. package/dist/types/src/components/GrFormFile/GrFormFile.vue.d.ts +70 -16
  652. package/dist/types/src/components/GrFormFile/config.d.ts +1 -1
  653. package/dist/types/src/components/GrFormFile/defaults.d.ts +10 -0
  654. package/dist/types/src/components/GrFormFile/grFormFileStyles.d.ts +22 -0
  655. package/dist/types/src/components/GrFormFile/index.d.ts +7 -0
  656. package/dist/types/src/components/GrFormFile/safelist.d.ts +1 -0
  657. package/dist/types/src/components/GrFormSection/GrFormSection.vue.d.ts +34 -7
  658. package/dist/types/src/components/GrFormSection/config.d.ts +1 -1
  659. package/dist/types/src/components/GrFormSection/defaults.d.ts +14 -0
  660. package/dist/types/src/components/GrFormSection/grFormSectionStyles.d.ts +12 -0
  661. package/dist/types/src/components/GrFormSection/index.d.ts +4 -0
  662. package/dist/types/src/components/GrFormSection/safelist.d.ts +1 -0
  663. package/dist/types/src/components/GrIcon/GrIcon.vue.d.ts +40 -4
  664. package/dist/types/src/components/GrIcon/config.d.ts +1 -1
  665. package/dist/types/src/components/GrIcon/defaults.d.ts +14 -0
  666. package/dist/types/src/components/GrIcon/grIconStyles.d.ts +25 -0
  667. package/dist/types/src/components/GrIcon/index.d.ts +4 -0
  668. package/dist/types/src/components/GrIcon/safelist.d.ts +1 -0
  669. package/dist/types/src/components/GrImageViewer/GrImageViewer.vue.d.ts +87 -16
  670. package/dist/types/src/components/GrImageViewer/composables/usePointerGestures.d.ts +36 -0
  671. package/dist/types/src/components/GrImageViewer/composables/useViewerKeyboard.d.ts +7 -4
  672. package/dist/types/src/components/GrImageViewer/composables/useWheelGesture.d.ts +3 -2
  673. package/dist/types/src/components/GrImageViewer/composables/useZoomPan.d.ts +17 -3
  674. package/dist/types/src/components/GrImageViewer/config.d.ts +1 -1
  675. package/dist/types/src/components/GrImageViewer/grImageViewerStyles.d.ts +21 -0
  676. package/dist/types/src/components/GrImageViewer/index.d.ts +7 -0
  677. package/dist/types/src/components/GrImageViewer/safelist.d.ts +1 -0
  678. package/dist/types/src/components/GrInput/GrInput.vue.d.ts +66 -21
  679. package/dist/types/src/components/GrInput/config.d.ts +1 -1
  680. package/dist/types/src/components/GrInput/grInputStyles.d.ts +53 -7
  681. package/dist/types/src/components/GrInput/index.d.ts +5 -0
  682. package/dist/types/src/components/GrInputTag/GrInputTag.vue.d.ts +97 -14
  683. package/dist/types/src/components/GrInputTag/config.d.ts +1 -1
  684. package/dist/types/src/components/GrInputTag/defaults.d.ts +17 -0
  685. package/dist/types/src/components/GrInputTag/grInputTagStyles.d.ts +24 -1
  686. package/dist/types/src/components/GrInputTag/index.d.ts +5 -0
  687. package/dist/types/src/components/GrKbd/GrKbd.vue.d.ts +31 -10
  688. package/dist/types/src/components/GrKbd/config.d.ts +1 -1
  689. package/dist/types/src/components/GrKbd/defaults.d.ts +14 -0
  690. package/dist/types/src/components/GrKbd/grKbdStyles.d.ts +15 -0
  691. package/dist/types/src/components/GrKbd/index.d.ts +4 -1
  692. package/dist/types/src/components/GrKbd/safelist.d.ts +1 -0
  693. package/dist/types/src/components/GrLink/GrLink.vue.d.ts +23 -10
  694. package/dist/types/src/components/GrLink/config.d.ts +1 -1
  695. package/dist/types/src/components/GrLink/defaults.d.ts +14 -0
  696. package/dist/types/src/components/GrLink/grLinkStyles.d.ts +11 -13
  697. package/dist/types/src/components/GrLink/index.d.ts +2 -0
  698. package/dist/types/src/components/GrList/GrList.vue.d.ts +57 -32
  699. package/dist/types/src/components/GrList/GrListItem.vue.d.ts +42 -9
  700. package/dist/types/src/components/GrList/config.d.ts +1 -1
  701. package/dist/types/src/components/GrList/grListStyles.d.ts +25 -0
  702. package/dist/types/src/components/GrList/index.d.ts +5 -0
  703. package/dist/types/src/components/GrList/safelist.d.ts +1 -0
  704. package/dist/types/src/components/GrLoading/GrLoading.vue.d.ts +59 -19
  705. package/dist/types/src/components/GrLoading/config.d.ts +1 -1
  706. package/dist/types/src/components/GrLoading/grLoadingStyles.d.ts +10 -2
  707. package/dist/types/src/components/GrLoading/index.d.ts +1 -0
  708. package/dist/types/src/components/GrModal/GrModal.vue.d.ts +58 -12
  709. package/dist/types/src/components/GrModal/config.d.ts +1 -1
  710. package/dist/types/src/components/GrModal/context.d.ts +37 -0
  711. package/dist/types/src/components/GrModal/defaults.d.ts +14 -0
  712. package/dist/types/src/components/GrModal/grModalStyles.d.ts +25 -10
  713. package/dist/types/src/components/GrModal/index.d.ts +6 -3
  714. package/dist/types/src/components/GrNavbar/GrNavbar.vue.d.ts +28 -9
  715. package/dist/types/src/components/GrNavbar/config.d.ts +1 -1
  716. package/dist/types/src/components/GrNavbar/grNavbarStyles.d.ts +23 -0
  717. package/dist/types/src/components/GrNavbar/index.d.ts +2 -0
  718. package/dist/types/src/components/GrNavbar/safelist.d.ts +1 -0
  719. package/dist/types/src/components/GrNumberInput/GrNumberInput.vue.d.ts +64 -17
  720. package/dist/types/src/components/GrNumberInput/config.d.ts +1 -1
  721. package/dist/types/src/components/GrNumberInput/defaults.d.ts +1 -0
  722. package/dist/types/src/components/GrNumberInput/grNumberInputStyles.d.ts +20 -4
  723. package/dist/types/src/components/GrNumberInput/index.d.ts +4 -0
  724. package/dist/types/src/components/GrNumberInput/numberInputMath.d.ts +17 -0
  725. package/dist/types/src/components/GrPagination/GrPagination.vue.d.ts +47 -1
  726. package/dist/types/src/components/GrPagination/config.d.ts +1 -1
  727. package/dist/types/src/components/GrPagination/defaults.d.ts +10 -0
  728. package/dist/types/src/components/GrPagination/grPaginationStyles.d.ts +19 -0
  729. package/dist/types/src/components/GrPagination/index.d.ts +4 -0
  730. package/dist/types/src/components/GrPagination/safelist.d.ts +1 -0
  731. package/dist/types/src/components/GrPopover/GrPopover.vue.d.ts +161 -0
  732. package/dist/types/src/components/GrPopover/config.d.ts +1 -0
  733. package/dist/types/src/components/GrPopover/defaults.d.ts +15 -0
  734. package/dist/types/src/components/GrPopover/grPopoverStyles.d.ts +28 -0
  735. package/dist/types/src/components/GrPopover/index.d.ts +11 -0
  736. package/dist/types/src/components/GrPopover/safelist.d.ts +1 -0
  737. package/dist/types/src/components/GrProgressBar/GrProgressBar.vue.d.ts +37 -5
  738. package/dist/types/src/components/GrProgressBar/config.d.ts +1 -1
  739. package/dist/types/src/components/GrProgressBar/defaults.d.ts +11 -0
  740. package/dist/types/src/components/GrProgressBar/grStyle.d.ts +14 -0
  741. package/dist/types/src/components/GrProgressBar/index.d.ts +2 -1
  742. package/dist/types/src/components/GrProgressBar/safelist.d.ts +4 -0
  743. package/dist/types/src/components/GrProgressCircle/GrProgressCircle.vue.d.ts +103 -0
  744. package/dist/types/src/components/GrProgressCircle/config.d.ts +1 -0
  745. package/dist/types/src/components/GrProgressCircle/defaults.d.ts +18 -0
  746. package/dist/types/src/components/GrProgressCircle/geometry.d.ts +29 -0
  747. package/dist/types/src/components/GrProgressCircle/grProgressCircleStyles.d.ts +34 -0
  748. package/dist/types/src/components/GrProgressCircle/index.d.ts +11 -0
  749. package/dist/types/src/components/GrProgressCircle/safelist.d.ts +1 -0
  750. package/dist/types/src/components/GrPromptDialog/GrPromptDialog.vue.d.ts +78 -10
  751. package/dist/types/src/components/GrPromptDialog/config.d.ts +1 -1
  752. package/dist/types/src/components/GrPromptDialog/defaults.d.ts +14 -0
  753. package/dist/types/src/components/GrPromptDialog/index.d.ts +1 -0
  754. package/dist/types/src/components/GrRadio/GrRadio.vue.d.ts +28 -9
  755. package/dist/types/src/components/GrRadio/config.d.ts +1 -1
  756. package/dist/types/src/components/GrRadio/grRadioGroupContext.d.ts +37 -2
  757. package/dist/types/src/components/GrRadio/grRadioStyles.d.ts +49 -6
  758. package/dist/types/src/components/GrRadio/index.d.ts +1 -0
  759. package/dist/types/src/components/GrRadioGroup/GrRadioGroup.vue.d.ts +54 -10
  760. package/dist/types/src/components/GrRadioGroup/config.d.ts +1 -1
  761. package/dist/types/src/components/GrRadioGroup/index.d.ts +4 -0
  762. package/dist/types/src/components/GrRating/GrRating.vue.d.ts +66 -17
  763. package/dist/types/src/components/GrRating/config.d.ts +1 -1
  764. package/dist/types/src/components/GrRating/grRatingStyles.d.ts +4 -1
  765. package/dist/types/src/components/GrRating/index.d.ts +4 -0
  766. package/dist/types/src/components/GrResponseErrorBanner/GrFormErrorBanner.vue.d.ts +8 -4
  767. package/dist/types/src/components/GrResponseErrorBanner/GrResponseErrorBanner.vue.d.ts +8 -4
  768. package/dist/types/src/components/GrResponseErrorBanner/GrUploadErrorBanner.vue.d.ts +11 -4
  769. package/dist/types/src/components/GrResponseErrorBanner/config.d.ts +1 -1
  770. package/dist/types/src/components/GrResponseErrorBanner/index.d.ts +6 -0
  771. package/dist/types/src/components/GrResponseErrorBanner/parsers/httpStatusParser.d.ts +3 -1
  772. package/dist/types/src/components/GrResponseErrorBanner/parsers/plainMessageParser.d.ts +4 -1
  773. package/dist/types/src/components/GrResponseErrorBanner/responseError.types.d.ts +12 -2
  774. package/dist/types/src/components/GrSegmented/GrSegmented.vue.d.ts +48 -9
  775. package/dist/types/src/components/GrSegmented/config.d.ts +1 -1
  776. package/dist/types/src/components/GrSegmented/grSegmentedStyles.d.ts +31 -5
  777. package/dist/types/src/components/GrSegmented/index.d.ts +5 -1
  778. package/dist/types/src/components/GrSegmented/safelist.d.ts +3 -1
  779. package/dist/types/src/components/GrSelect/GrSelect.vue.d.ts +138 -114
  780. package/dist/types/src/components/GrSelect/composables/useSelectNavigation.d.ts +52 -0
  781. package/dist/types/src/components/GrSelect/composables/useSelectPanelItems.d.ts +67 -0
  782. package/dist/types/src/components/GrSelect/composables/useSelectValues.d.ts +37 -0
  783. package/dist/types/src/components/GrSelect/composables/useSelectVirtualization.d.ts +27 -0
  784. package/dist/types/src/components/GrSelect/config.d.ts +1 -1
  785. package/dist/types/src/components/GrSelect/grSelectStyles.d.ts +64 -9
  786. package/dist/types/src/components/GrSelect/index.d.ts +5 -1
  787. package/dist/types/src/components/GrSelect/selectValue.d.ts +20 -0
  788. package/dist/types/src/components/GrSidebar/GrSidebar.vue.d.ts +30 -5
  789. package/dist/types/src/components/GrSidebar/GrSidebarGroup.vue.d.ts +43 -0
  790. package/dist/types/src/components/GrSidebar/GrSidebarItem.vue.d.ts +4 -4
  791. package/dist/types/src/components/GrSidebar/config.d.ts +1 -1
  792. package/dist/types/src/components/GrSidebar/grSidebarStyles.d.ts +48 -0
  793. package/dist/types/src/components/GrSidebar/index.d.ts +6 -0
  794. package/dist/types/src/components/GrSidebar/safelist.d.ts +1 -0
  795. package/dist/types/src/components/GrSkeleton/GrSkeleton.vue.d.ts +22 -6
  796. package/dist/types/src/components/GrSkeleton/config.d.ts +1 -1
  797. package/dist/types/src/components/GrSkeleton/grSkeletonStyles.d.ts +9 -0
  798. package/dist/types/src/components/GrSkeleton/index.d.ts +1 -0
  799. package/dist/types/src/components/GrSlider/GrSlider.vue.d.ts +54 -4
  800. package/dist/types/src/components/GrSlider/config.d.ts +1 -1
  801. package/dist/types/src/components/GrSlider/grSliderStyles.d.ts +47 -8
  802. package/dist/types/src/components/GrSlider/index.d.ts +4 -0
  803. package/dist/types/src/components/GrSplitter/GrSplitter.vue.d.ts +121 -0
  804. package/dist/types/src/components/GrSplitter/config.d.ts +1 -0
  805. package/dist/types/src/components/GrSplitter/defaults.d.ts +16 -0
  806. package/dist/types/src/components/GrSplitter/grSplitterStyles.d.ts +9 -0
  807. package/dist/types/src/components/GrSplitter/index.d.ts +11 -0
  808. package/dist/types/src/components/GrSplitter/safelist.d.ts +1 -0
  809. package/dist/types/src/components/GrSplitter/splitterGeometry.d.ts +39 -0
  810. package/dist/types/src/components/GrStatistic/GrStatistic.vue.d.ts +65 -16
  811. package/dist/types/src/components/GrStatistic/config.d.ts +1 -1
  812. package/dist/types/src/components/GrStatistic/countUp.d.ts +17 -0
  813. package/dist/types/src/components/GrStatistic/defaults.d.ts +14 -0
  814. package/dist/types/src/components/GrStatistic/formatStatisticValue.d.ts +6 -2
  815. package/dist/types/src/components/GrStatistic/grStatisticStyles.d.ts +14 -1
  816. package/dist/types/src/components/GrStatistic/index.d.ts +2 -1
  817. package/dist/types/src/components/GrSwitch/GrSwitch.vue.d.ts +68 -6
  818. package/dist/types/src/components/GrSwitch/config.d.ts +1 -1
  819. package/dist/types/src/components/GrSwitch/grSwitchStyles.d.ts +45 -4
  820. package/dist/types/src/components/GrSwitch/index.d.ts +5 -1
  821. package/dist/types/src/components/GrSwitch/safelist.d.ts +4 -1
  822. package/dist/types/src/components/GrTabPanels/GrTabPanel.vue.d.ts +12 -9
  823. package/dist/types/src/components/GrTabPanels/GrTabPanels.vue.d.ts +4 -14
  824. package/dist/types/src/components/GrTabPanels/config.d.ts +1 -1
  825. package/dist/types/src/components/GrTabPanels/context.d.ts +1 -1
  826. package/dist/types/src/components/GrTabPanels/index.d.ts +2 -0
  827. package/dist/types/src/components/GrTable/GrTable.vue.d.ts +85 -15
  828. package/dist/types/src/components/GrTable/config.d.ts +1 -1
  829. package/dist/types/src/components/GrTable/defaults.d.ts +10 -0
  830. package/dist/types/src/components/GrTable/grTableStyles.d.ts +20 -0
  831. package/dist/types/src/components/GrTable/index.d.ts +7 -1
  832. package/dist/types/src/components/GrTable/safelist.d.ts +1 -0
  833. package/dist/types/src/components/GrTabs/GrTabs.vue.d.ts +92 -6
  834. package/dist/types/src/components/GrTabs/config.d.ts +1 -1
  835. package/dist/types/src/components/GrTabs/defaults.d.ts +12 -0
  836. package/dist/types/src/components/GrTabs/grTabsStyles.d.ts +71 -0
  837. package/dist/types/src/components/GrTabs/index.d.ts +5 -0
  838. package/dist/types/src/components/GrTabs/safelist.d.ts +1 -0
  839. package/dist/types/src/components/GrTextarea/GrTextarea.vue.d.ts +89 -24
  840. package/dist/types/src/components/GrTextarea/config.d.ts +1 -1
  841. package/dist/types/src/components/GrTextarea/defaults.d.ts +18 -0
  842. package/dist/types/src/components/GrTextarea/grTextareaStyles.d.ts +33 -1
  843. package/dist/types/src/components/GrTextarea/index.d.ts +6 -1
  844. package/dist/types/src/components/GrTimeline/GrTimeline.vue.d.ts +70 -0
  845. package/dist/types/src/components/GrTimeline/GrTimelineItem.vue.d.ts +84 -0
  846. package/dist/types/src/components/GrTimeline/config.d.ts +1 -0
  847. package/dist/types/src/components/GrTimeline/defaults.d.ts +19 -0
  848. package/dist/types/src/components/GrTimeline/grTimelineContext.d.ts +18 -0
  849. package/dist/types/src/components/GrTimeline/grTimelineStyles.d.ts +37 -0
  850. package/dist/types/src/components/GrTimeline/index.d.ts +12 -0
  851. package/dist/types/src/components/GrTimeline/safelist.d.ts +1 -0
  852. package/dist/types/src/components/GrTimeline/timelineGroups.d.ts +23 -0
  853. package/dist/types/src/components/GrToaster/GrToaster.vue.d.ts +25 -1
  854. package/dist/types/src/components/GrToaster/config.d.ts +1 -1
  855. package/dist/types/src/components/GrToaster/index.d.ts +3 -0
  856. package/dist/types/src/components/GrTooltip/GrTooltip.vue.d.ts +57 -6
  857. package/dist/types/src/components/GrTooltip/config.d.ts +1 -1
  858. package/dist/types/src/components/GrTooltip/defaults.d.ts +10 -0
  859. package/dist/types/src/components/GrTooltip/grTooltipStyles.d.ts +8 -0
  860. package/dist/types/src/components/GrTooltip/index.d.ts +5 -1
  861. package/dist/types/src/components/GrTooltip/safelist.d.ts +1 -0
  862. package/dist/types/src/components/GrTree/GrTree.vue.d.ts +20 -7
  863. package/dist/types/src/components/GrTree/config.d.ts +1 -1
  864. package/dist/types/src/components/GrTree/defaults.d.ts +10 -0
  865. package/dist/types/src/components/GrTree/grTreeChecking.d.ts +31 -0
  866. package/dist/types/src/components/GrTree/grTreeDataAdapter.d.ts +2 -0
  867. package/dist/types/src/components/GrTree/grTreeInteractionContext.d.ts +9 -0
  868. package/dist/types/src/components/GrTree/grTreeProps.d.ts +60 -11
  869. package/dist/types/src/components/GrTree/grTreeStore.d.ts +27 -1
  870. package/dist/types/src/components/GrTree/grTreeStyles.d.ts +22 -0
  871. package/dist/types/src/components/GrTree/grTreeTypes.d.ts +15 -0
  872. package/dist/types/src/components/GrTree/index.d.ts +5 -1
  873. package/dist/types/src/components/GrTreeSelect/GrTreeSelect.vue.d.ts +30 -9
  874. package/dist/types/src/components/GrTreeSelect/config.d.ts +1 -1
  875. package/dist/types/src/components/GrTreeSelect/defaults.d.ts +10 -0
  876. package/dist/types/src/components/GrTreeSelect/grTreeSelectStyles.d.ts +29 -1
  877. package/dist/types/src/components/GrTreeSelect/grTreeSelectTypes.d.ts +43 -0
  878. package/dist/types/src/components/GrTreeSelect/index.d.ts +5 -0
  879. package/dist/types/src/components/shared/hotkey.d.ts +46 -0
  880. package/dist/types/src/components/shared/instance.d.ts +15 -0
  881. package/dist/types/src/components/shared/optionFilter.d.ts +61 -0
  882. package/dist/types/src/components/shared/sizes.d.ts +30 -0
  883. package/dist/types/src/components/shared/slotNodes.d.ts +19 -0
  884. package/dist/types/src/composables/internal/focusables.d.ts +30 -0
  885. package/dist/types/src/composables/internal/inert.d.ts +35 -0
  886. package/dist/types/src/composables/internal/overlayStack.d.ts +60 -0
  887. package/dist/types/src/composables/internal/portalRoot.d.ts +27 -0
  888. package/dist/types/src/composables/internal/useAddonMeasurement.d.ts +1 -1
  889. package/dist/types/src/composables/internal/useComboboxNavigation.d.ts +51 -0
  890. package/dist/types/src/composables/internal/useControlAddons.d.ts +61 -0
  891. package/dist/types/src/composables/internal/useControlledOpen.d.ts +14 -0
  892. package/dist/types/src/composables/internal/useFilePreviews.d.ts +26 -0
  893. package/dist/types/src/composables/internal/useFocusWithin.d.ts +32 -0
  894. package/dist/types/src/composables/internal/useInertOthers.d.ts +9 -0
  895. package/dist/types/src/composables/internal/useModalOverlay.d.ts +95 -0
  896. package/dist/types/src/composables/internal/useOverlayPresence.d.ts +24 -0
  897. package/dist/types/src/composables/internal/useScrollLock.d.ts +10 -5
  898. package/dist/types/src/composables/internal/useTeleportEnabled.d.ts +35 -0
  899. package/dist/types/src/composables/useAnnouncer.d.ts +44 -0
  900. package/dist/types/src/composables/useDismissible.d.ts +32 -0
  901. package/dist/types/src/composables/useFocusTrap.d.ts +50 -0
  902. package/dist/types/src/composables/useGrFormControl.d.ts +52 -0
  903. package/dist/types/src/composables/useOverlayLayer.d.ts +67 -0
  904. package/dist/types/src/composables/usePortalTarget.d.ts +28 -0
  905. package/dist/types/src/composables/useTheme.d.ts +48 -2
  906. package/dist/types/src/composables/useToast.d.ts +20 -11
  907. package/dist/types/src/composables/useVirtualList.d.ts +119 -0
  908. package/dist/types/src/directives/loading.d.ts +7 -1
  909. package/dist/types/src/fileValidation/i18n.d.ts +24 -0
  910. package/dist/types/src/fileValidation/index.d.ts +4 -2
  911. package/dist/types/src/fileValidation/maxCountValidator.d.ts +9 -0
  912. package/dist/types/src/fileValidation/maxFileSize.d.ts +16 -0
  913. package/dist/types/src/fileValidation/types.d.ts +8 -2
  914. package/dist/types/src/granular-provider/index.d.ts +1 -1
  915. package/dist/types/src/granular-provider/node.d.ts +2 -3
  916. package/dist/types/src/granular-provider/shared.d.ts +13 -18
  917. package/dist/types/src/i18n/adapter.d.ts +24 -0
  918. package/dist/types/src/i18n/messages/en.d.ts +286 -2
  919. package/dist/types/src/i18n/messages/es.d.ts +290 -2
  920. package/dist/types/src/i18n/messages/ru.d.ts +294 -2
  921. package/dist/types/src/index.d.ts +26 -3
  922. package/dist/types/src/internal/granularityFormat.d.ts +19 -0
  923. package/dist/types/src/internal/granularityI18n.d.ts +6 -0
  924. package/dist/types/src/internal/keyboard.d.ts +46 -0
  925. package/dist/types/src/tokens/generated.d.ts +6 -0
  926. package/dist/types/src/tokens/index.d.ts +13 -0
  927. package/dist/types/src/tokens/types.d.ts +54 -0
  928. package/dist/vue/index.js.map +1 -1
  929. package/dist/web-types.json +6309 -2024
  930. package/package.json +90 -17
  931. package/tokens/derived.json +142 -0
  932. package/tokens/foundation.json +558 -0
  933. package/tokens/themes/dark.json +499 -0
  934. package/tokens/themes/light.json +499 -0
  935. package/dist/GrBadge.css +0 -1
  936. package/dist/GrButtonGroup.css +0 -1
  937. package/dist/GrFormFile.css +0 -1
  938. package/dist/GrIcon.css +0 -1
  939. package/dist/GrLoading.css +0 -1
  940. package/dist/GrToaster.css +0 -1
  941. package/dist/GrTree.css +0 -1
  942. package/dist/chunks/config-23WtUiAL.js +0 -53
  943. package/dist/chunks/config-23WtUiAL.js.map +0 -1
  944. package/dist/chunks/config-B0i5r8kH.js +0 -23
  945. package/dist/chunks/config-B0i5r8kH.js.map +0 -1
  946. package/dist/chunks/config-B0qIpo8m.js +0 -5
  947. package/dist/chunks/config-B0qIpo8m.js.map +0 -1
  948. package/dist/chunks/config-B5Rknzkd.js +0 -100
  949. package/dist/chunks/config-B5Rknzkd.js.map +0 -1
  950. package/dist/chunks/config-BDSHekVC.js +0 -84
  951. package/dist/chunks/config-BDSHekVC.js.map +0 -1
  952. package/dist/chunks/config-BEegFP74.js +0 -5
  953. package/dist/chunks/config-BEegFP74.js.map +0 -1
  954. package/dist/chunks/config-BLHqZhy-.js +0 -5
  955. package/dist/chunks/config-BLHqZhy-.js.map +0 -1
  956. package/dist/chunks/config-BMKNHFMD2.js +0 -171
  957. package/dist/chunks/config-BMKNHFMD2.js.map +0 -1
  958. package/dist/chunks/config-BUHuGBik2.js +0 -13
  959. package/dist/chunks/config-BUHuGBik2.js.map +0 -1
  960. package/dist/chunks/config-BWGGp7uV.js +0 -8
  961. package/dist/chunks/config-BWGGp7uV.js.map +0 -1
  962. package/dist/chunks/config-BWiPnygb.js +0 -5
  963. package/dist/chunks/config-BWiPnygb.js.map +0 -1
  964. package/dist/chunks/config-BX1JTrkV.js +0 -14
  965. package/dist/chunks/config-BX1JTrkV.js.map +0 -1
  966. package/dist/chunks/config-BXtAmU3s.js +0 -8
  967. package/dist/chunks/config-BXtAmU3s.js.map +0 -1
  968. package/dist/chunks/config-BZFUM3Ky.js +0 -75
  969. package/dist/chunks/config-BZFUM3Ky.js.map +0 -1
  970. package/dist/chunks/config-Bah4oHwL.js +0 -8
  971. package/dist/chunks/config-Bah4oHwL.js.map +0 -1
  972. package/dist/chunks/config-BmNT0Fmx.js +0 -45
  973. package/dist/chunks/config-BmNT0Fmx.js.map +0 -1
  974. package/dist/chunks/config-BvVq2gbd.js +0 -13
  975. package/dist/chunks/config-BvVq2gbd.js.map +0 -1
  976. package/dist/chunks/config-C4hJxXDa.js +0 -58
  977. package/dist/chunks/config-C4hJxXDa.js.map +0 -1
  978. package/dist/chunks/config-C86UzUYf.js +0 -13
  979. package/dist/chunks/config-C86UzUYf.js.map +0 -1
  980. package/dist/chunks/config-C9AcVDkv.js +0 -5
  981. package/dist/chunks/config-C9AcVDkv.js.map +0 -1
  982. package/dist/chunks/config-CB4RVt9M.js +0 -66
  983. package/dist/chunks/config-CB4RVt9M.js.map +0 -1
  984. package/dist/chunks/config-CGHLoBlH2.js +0 -5
  985. package/dist/chunks/config-CGHLoBlH2.js.map +0 -1
  986. package/dist/chunks/config-COE_vZ-l.js +0 -52
  987. package/dist/chunks/config-COE_vZ-l.js.map +0 -1
  988. package/dist/chunks/config-CPdmr7tC.js +0 -39
  989. package/dist/chunks/config-CPdmr7tC.js.map +0 -1
  990. package/dist/chunks/config-CThzliFi.js +0 -5
  991. package/dist/chunks/config-CThzliFi.js.map +0 -1
  992. package/dist/chunks/config-Cb2PAlSD.js +0 -8
  993. package/dist/chunks/config-Cb2PAlSD.js.map +0 -1
  994. package/dist/chunks/config-D7GZO-Dx.js +0 -8
  995. package/dist/chunks/config-D7GZO-Dx.js.map +0 -1
  996. package/dist/chunks/config-DICOd-2X.js +0 -5
  997. package/dist/chunks/config-DICOd-2X.js.map +0 -1
  998. package/dist/chunks/config-DPDFYzIa.js +0 -40
  999. package/dist/chunks/config-DPDFYzIa.js.map +0 -1
  1000. package/dist/chunks/config-DRKXJ9PW2.js +0 -22
  1001. package/dist/chunks/config-DRKXJ9PW2.js.map +0 -1
  1002. package/dist/chunks/config-DToHb81g.js +0 -45
  1003. package/dist/chunks/config-DToHb81g.js.map +0 -1
  1004. package/dist/chunks/config-D_myOZbA.js +0 -20
  1005. package/dist/chunks/config-D_myOZbA.js.map +0 -1
  1006. package/dist/chunks/config-Dg_6FTvJ.js +0 -35
  1007. package/dist/chunks/config-Dg_6FTvJ.js.map +0 -1
  1008. package/dist/chunks/config-Dlm49Jp5.js +0 -5
  1009. package/dist/chunks/config-Dlm49Jp5.js.map +0 -1
  1010. package/dist/chunks/config-DpqOnJiz.js.map +0 -1
  1011. package/dist/chunks/config-Dqy0rPPO2.js +0 -17
  1012. package/dist/chunks/config-Dqy0rPPO2.js.map +0 -1
  1013. package/dist/chunks/config-Dxuwwepq.js +0 -5
  1014. package/dist/chunks/config-Dxuwwepq.js.map +0 -1
  1015. package/dist/chunks/config-HZto2PVy.js +0 -5
  1016. package/dist/chunks/config-HZto2PVy.js.map +0 -1
  1017. package/dist/chunks/config-JOtB4mzs.js +0 -8
  1018. package/dist/chunks/config-JOtB4mzs.js.map +0 -1
  1019. package/dist/chunks/config-JpHA4Xx0.js +0 -8
  1020. package/dist/chunks/config-JpHA4Xx0.js.map +0 -1
  1021. package/dist/chunks/config-KXuionN3.js +0 -9
  1022. package/dist/chunks/config-KXuionN3.js.map +0 -1
  1023. package/dist/chunks/config-LqDC_rvp.js +0 -78
  1024. package/dist/chunks/config-LqDC_rvp.js.map +0 -1
  1025. package/dist/chunks/config-PFg39mYo.js +0 -5
  1026. package/dist/chunks/config-PFg39mYo.js.map +0 -1
  1027. package/dist/chunks/config-QYGvEBu5.js +0 -22
  1028. package/dist/chunks/config-QYGvEBu5.js.map +0 -1
  1029. package/dist/chunks/config-QaIc_gRa2.js.map +0 -1
  1030. package/dist/chunks/config-U4m9PSql2.js +0 -8
  1031. package/dist/chunks/config-U4m9PSql2.js.map +0 -1
  1032. package/dist/chunks/config-XmTv4pnI.js +0 -26
  1033. package/dist/chunks/config-XmTv4pnI.js.map +0 -1
  1034. package/dist/chunks/config-ZiXWIRBX.js +0 -8
  1035. package/dist/chunks/config-ZiXWIRBX.js.map +0 -1
  1036. package/dist/chunks/config-eXB87DOi.js.map +0 -1
  1037. package/dist/chunks/config-gZWR75Bh2.js +0 -44
  1038. package/dist/chunks/config-gZWR75Bh2.js.map +0 -1
  1039. package/dist/chunks/config-ipvU0lzP.js +0 -5
  1040. package/dist/chunks/config-ipvU0lzP.js.map +0 -1
  1041. package/dist/chunks/config-xR4XVmcy2.js +0 -8
  1042. package/dist/chunks/config-xR4XVmcy2.js.map +0 -1
  1043. package/dist/chunks/context-DfWYCBB-.js +0 -129
  1044. package/dist/chunks/context-DfWYCBB-.js.map +0 -1
  1045. package/dist/chunks/en-Cr6EkG8c.js +0 -186
  1046. package/dist/chunks/en-Cr6EkG8c.js.map +0 -1
  1047. package/dist/chunks/es-DuYb1Qju.js +0 -20
  1048. package/dist/chunks/es-DuYb1Qju.js.map +0 -1
  1049. package/dist/chunks/es-i08e9Sdo.js +0 -186
  1050. package/dist/chunks/es-i08e9Sdo.js.map +0 -1
  1051. package/dist/chunks/fileValidation-C3WFaWU2.js +0 -220
  1052. package/dist/chunks/fileValidation-C3WFaWU2.js.map +0 -1
  1053. package/dist/chunks/grBadgeStyles-D3dFjr_N.js +0 -50
  1054. package/dist/chunks/grBadgeStyles-D3dFjr_N.js.map +0 -1
  1055. package/dist/chunks/grButtonStyles-DRBgDmOp.js +0 -191
  1056. package/dist/chunks/grButtonStyles-DRBgDmOp.js.map +0 -1
  1057. package/dist/chunks/grDropdownStyles-HBPkghVr.js +0 -35
  1058. package/dist/chunks/grDropdownStyles-HBPkghVr.js.map +0 -1
  1059. package/dist/chunks/grLoadingStyles-R5sreH__.js +0 -17
  1060. package/dist/chunks/grLoadingStyles-R5sreH__.js.map +0 -1
  1061. package/dist/chunks/grModalEscStack-BXk-9mv7.js +0 -43
  1062. package/dist/chunks/grModalEscStack-BXk-9mv7.js.map +0 -1
  1063. package/dist/chunks/grModalStyles-D8-shx9A.js +0 -47
  1064. package/dist/chunks/grModalStyles-D8-shx9A.js.map +0 -1
  1065. package/dist/chunks/grSelectStyles-CwMUQrBZ.js +0 -97
  1066. package/dist/chunks/grSelectStyles-CwMUQrBZ.js.map +0 -1
  1067. package/dist/chunks/grStyle-CdvxTXPH.js +0 -19
  1068. package/dist/chunks/grStyle-CdvxTXPH.js.map +0 -1
  1069. package/dist/chunks/granularityI18n-SH0I--GW.js +0 -61
  1070. package/dist/chunks/granularityI18n-SH0I--GW.js.map +0 -1
  1071. package/dist/chunks/ru-B5XOOYZt.js +0 -186
  1072. package/dist/chunks/ru-B5XOOYZt.js.map +0 -1
  1073. package/dist/chunks/safelist-BvO8HPnE.js +0 -24
  1074. package/dist/chunks/safelist-BvO8HPnE.js.map +0 -1
  1075. package/dist/chunks/shared-D-v9lit0.js +0 -188
  1076. package/dist/chunks/shared-D-v9lit0.js.map +0 -1
  1077. package/dist/chunks/useAddonMeasurement-DM0akF4C.js +0 -65
  1078. package/dist/chunks/useAddonMeasurement-DM0akF4C.js.map +0 -1
  1079. package/dist/chunks/useEscapeToClose-C2t_S1gh.js +0 -27
  1080. package/dist/chunks/useEscapeToClose-C2t_S1gh.js.map +0 -1
  1081. package/dist/chunks/useFloating-DtM6TyE4.js +0 -1249
  1082. package/dist/chunks/useFloating-DtM6TyE4.js.map +0 -1
  1083. package/dist/chunks/useScrollLock-K7kaP2Ud.js +0 -1757
  1084. package/dist/chunks/useScrollLock-K7kaP2Ud.js.map +0 -1
  1085. package/dist/components/GrAlert/chunks/GrAlert-B9gmpoPC.js +0 -251
  1086. package/dist/components/GrAlert/chunks/GrAlert-B9gmpoPC.js.map +0 -1
  1087. package/dist/components/GrAutocomplete/chunks/GrAutocomplete-BVLoQ5tZ.js +0 -499
  1088. package/dist/components/GrAutocomplete/chunks/GrAutocomplete-BVLoQ5tZ.js.map +0 -1
  1089. package/dist/components/GrAvatar/chunks/GrAvatar-CTOUVBF7.js +0 -41
  1090. package/dist/components/GrAvatar/chunks/GrAvatar-CTOUVBF7.js.map +0 -1
  1091. package/dist/components/GrBadge/chunks/GrBadge-D1jefy4S.js +0 -40
  1092. package/dist/components/GrBadge/chunks/GrBadge-D1jefy4S.js.map +0 -1
  1093. package/dist/components/GrBadgeWrap/chunks/GrBadgeWrap-DWDxHdiQ.js +0 -33
  1094. package/dist/components/GrBadgeWrap/chunks/GrBadgeWrap-DWDxHdiQ.js.map +0 -1
  1095. package/dist/components/GrBottomNav/chunks/GrBottomNav-vSE4LXmk.js +0 -31
  1096. package/dist/components/GrBottomNav/chunks/GrBottomNav-vSE4LXmk.js.map +0 -1
  1097. package/dist/components/GrButton/chunks/GrButton-DCi4CUpo.js +0 -128
  1098. package/dist/components/GrButton/chunks/GrButton-DCi4CUpo.js.map +0 -1
  1099. package/dist/components/GrButtonGroup/chunks/GrButtonGroup-Bs9dEKfA.js +0 -21
  1100. package/dist/components/GrButtonGroup/chunks/GrButtonGroup-Bs9dEKfA.js.map +0 -1
  1101. package/dist/components/GrCard/chunks/GrCard-CxCjyHMb.js +0 -11
  1102. package/dist/components/GrCard/chunks/GrCard-CxCjyHMb.js.map +0 -1
  1103. package/dist/components/GrCheckbox/chunks/GrCheckbox-BbIDRXtl.js +0 -182
  1104. package/dist/components/GrCheckbox/chunks/GrCheckbox-BbIDRXtl.js.map +0 -1
  1105. package/dist/components/GrCollapse/chunks/GrCollapse-DApXztn8.js +0 -205
  1106. package/dist/components/GrCollapse/chunks/GrCollapse-DApXztn8.js.map +0 -1
  1107. package/dist/components/GrCommandPalette/chunks/GrCommandPalette-6OyvNbek.js +0 -410
  1108. package/dist/components/GrCommandPalette/chunks/GrCommandPalette-6OyvNbek.js.map +0 -1
  1109. package/dist/components/GrConfigProvider/chunks/GrConfigProvider-BtyeBGm8.js +0 -57
  1110. package/dist/components/GrConfigProvider/chunks/GrConfigProvider-BtyeBGm8.js.map +0 -1
  1111. package/dist/components/GrConfirmDialog/chunks/GrConfirmDialog-e4120mWw.js +0 -160
  1112. package/dist/components/GrConfirmDialog/chunks/GrConfirmDialog-e4120mWw.js.map +0 -1
  1113. package/dist/components/GrDataTable/chunks/GrDataTable-C1CzxV0p.js +0 -307
  1114. package/dist/components/GrDataTable/chunks/GrDataTable-C1CzxV0p.js.map +0 -1
  1115. package/dist/components/GrDialog/chunks/GrDialog-BPMvDHOz.js +0 -223
  1116. package/dist/components/GrDialog/chunks/GrDialog-BPMvDHOz.js.map +0 -1
  1117. package/dist/components/GrDialogService/chunks/GrDialogService-CYXCTGm3.js +0 -450
  1118. package/dist/components/GrDialogService/chunks/GrDialogService-CYXCTGm3.js.map +0 -1
  1119. package/dist/components/GrDivider/chunks/GrDivider-BdENZ1w0.js +0 -54
  1120. package/dist/components/GrDivider/chunks/GrDivider-BdENZ1w0.js.map +0 -1
  1121. package/dist/components/GrDrawer/chunks/GrDrawer-KevdZ5BB.js +0 -184
  1122. package/dist/components/GrDrawer/chunks/GrDrawer-KevdZ5BB.js.map +0 -1
  1123. package/dist/components/GrDropdown/chunks/GrDropdown-BKoy8hm-.js +0 -181
  1124. package/dist/components/GrDropdown/chunks/GrDropdown-BKoy8hm-.js.map +0 -1
  1125. package/dist/components/GrDropdownMenu/chunks/GrDropdownMenu-zCatXzmt.js +0 -309
  1126. package/dist/components/GrDropdownMenu/chunks/GrDropdownMenu-zCatXzmt.js.map +0 -1
  1127. package/dist/components/GrEmptyState/chunks/GrEmptyState-CNb0BzjG.js +0 -62
  1128. package/dist/components/GrEmptyState/chunks/GrEmptyState-CNb0BzjG.js.map +0 -1
  1129. package/dist/components/GrFileUpload/chunks/GrFileUpload-CnLgUGDF.js +0 -592
  1130. package/dist/components/GrFileUpload/chunks/GrFileUpload-CnLgUGDF.js.map +0 -1
  1131. package/dist/components/GrForm/chunks/GrForm-CdaFjcyl.js +0 -234
  1132. package/dist/components/GrForm/chunks/GrForm-CdaFjcyl.js.map +0 -1
  1133. package/dist/components/GrFormField/chunks/GrFormField-CXCDBd99.js +0 -100
  1134. package/dist/components/GrFormField/chunks/GrFormField-CXCDBd99.js.map +0 -1
  1135. package/dist/components/GrFormFile/chunks/GrFormFile-CqacSbUl.js +0 -320
  1136. package/dist/components/GrFormFile/chunks/GrFormFile-CqacSbUl.js.map +0 -1
  1137. package/dist/components/GrFormSection/chunks/GrFormSection-C3w9DQJf.js +0 -35
  1138. package/dist/components/GrFormSection/chunks/GrFormSection-C3w9DQJf.js.map +0 -1
  1139. package/dist/components/GrIcon/chunks/GrIcon-D9AWQLk2.js +0 -32
  1140. package/dist/components/GrIcon/chunks/GrIcon-D9AWQLk2.js.map +0 -1
  1141. package/dist/components/GrImageViewer/chunks/GrImageViewer-DDLJkvIU.js +0 -650
  1142. package/dist/components/GrImageViewer/chunks/GrImageViewer-DDLJkvIU.js.map +0 -1
  1143. package/dist/components/GrInput/chunks/GrInput-C1VBL0dg.js +0 -337
  1144. package/dist/components/GrInput/chunks/GrInput-C1VBL0dg.js.map +0 -1
  1145. package/dist/components/GrInputTag/chunks/GrInputTag-BMk9jm42.js +0 -260
  1146. package/dist/components/GrInputTag/chunks/GrInputTag-BMk9jm42.js.map +0 -1
  1147. package/dist/components/GrKbd/chunks/GrKbd-DTspwtoN.js +0 -22
  1148. package/dist/components/GrKbd/chunks/GrKbd-DTspwtoN.js.map +0 -1
  1149. package/dist/components/GrLink/chunks/GrLink-BP0YrnL9.js +0 -100
  1150. package/dist/components/GrLink/chunks/GrLink-BP0YrnL9.js.map +0 -1
  1151. package/dist/components/GrList/chunks/GrList-5RA-tZzE.js +0 -77
  1152. package/dist/components/GrList/chunks/GrList-5RA-tZzE.js.map +0 -1
  1153. package/dist/components/GrLoading/chunks/GrLoading-fRDtVfi7.js +0 -69
  1154. package/dist/components/GrLoading/chunks/GrLoading-fRDtVfi7.js.map +0 -1
  1155. package/dist/components/GrModal/chunks/GrModal-BTu1-5eY.js +0 -233
  1156. package/dist/components/GrModal/chunks/GrModal-BTu1-5eY.js.map +0 -1
  1157. package/dist/components/GrNavbar/chunks/GrNavbar-keKT_mIM.js +0 -75
  1158. package/dist/components/GrNavbar/chunks/GrNavbar-keKT_mIM.js.map +0 -1
  1159. package/dist/components/GrNumberInput/chunks/GrNumberInput-l9ZOHG9D.js +0 -471
  1160. package/dist/components/GrNumberInput/chunks/GrNumberInput-l9ZOHG9D.js.map +0 -1
  1161. package/dist/components/GrPagination/chunks/GrPagination-C5Y69CuK.js +0 -208
  1162. package/dist/components/GrPagination/chunks/GrPagination-C5Y69CuK.js.map +0 -1
  1163. package/dist/components/GrProgressBar/chunks/GrProgressBar-Dqg4Fj9S.js +0 -39
  1164. package/dist/components/GrProgressBar/chunks/GrProgressBar-Dqg4Fj9S.js.map +0 -1
  1165. package/dist/components/GrPromptDialog/chunks/GrPromptDialog-DNUjRVB9.js +0 -224
  1166. package/dist/components/GrPromptDialog/chunks/GrPromptDialog-DNUjRVB9.js.map +0 -1
  1167. package/dist/components/GrRadio/chunks/GrRadio-DlhxPGqf.js +0 -182
  1168. package/dist/components/GrRadio/chunks/GrRadio-DlhxPGqf.js.map +0 -1
  1169. package/dist/components/GrRadioGroup/chunks/GrRadioGroup-BXt9iw4q.js +0 -82
  1170. package/dist/components/GrRadioGroup/chunks/GrRadioGroup-BXt9iw4q.js.map +0 -1
  1171. package/dist/components/GrRating/chunks/GrRating-Co-3Rk4h.js +0 -241
  1172. package/dist/components/GrRating/chunks/GrRating-Co-3Rk4h.js.map +0 -1
  1173. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-2CvM7Z08.js +0 -224
  1174. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-2CvM7Z08.js.map +0 -1
  1175. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-C8NGx8pE.js +0 -782
  1176. package/dist/components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-C8NGx8pE.js.map +0 -1
  1177. package/dist/components/GrSegmented/chunks/GrSegmented-CTd3n4PA.js +0 -326
  1178. package/dist/components/GrSegmented/chunks/GrSegmented-CTd3n4PA.js.map +0 -1
  1179. package/dist/components/GrSelect/chunks/GrSelect-Dn3FgJ3Z.js +0 -730
  1180. package/dist/components/GrSelect/chunks/GrSelect-Dn3FgJ3Z.js.map +0 -1
  1181. package/dist/components/GrSidebar/chunks/GrSidebar-cvnzBfj3.js +0 -238
  1182. package/dist/components/GrSidebar/chunks/GrSidebar-cvnzBfj3.js.map +0 -1
  1183. package/dist/components/GrSkeleton/chunks/GrSkeleton-BucA5F4J.js +0 -33
  1184. package/dist/components/GrSkeleton/chunks/GrSkeleton-BucA5F4J.js.map +0 -1
  1185. package/dist/components/GrSlider/chunks/GrSlider-CzzJ3bD-.js +0 -286
  1186. package/dist/components/GrSlider/chunks/GrSlider-CzzJ3bD-.js.map +0 -1
  1187. package/dist/components/GrStatistic/chunks/GrStatistic-gHiAwrX5.js +0 -128
  1188. package/dist/components/GrStatistic/chunks/GrStatistic-gHiAwrX5.js.map +0 -1
  1189. package/dist/components/GrSwitch/chunks/GrSwitch-CJdRvS0s.js +0 -88
  1190. package/dist/components/GrSwitch/chunks/GrSwitch-CJdRvS0s.js.map +0 -1
  1191. package/dist/components/GrTabPanels/chunks/GrTabPanels-DeEMgb_y.js +0 -68
  1192. package/dist/components/GrTabPanels/chunks/GrTabPanels-DeEMgb_y.js.map +0 -1
  1193. package/dist/components/GrTable/chunks/GrTable-sNvsA8wa.js +0 -70
  1194. package/dist/components/GrTable/chunks/GrTable-sNvsA8wa.js.map +0 -1
  1195. package/dist/components/GrTabs/chunks/GrTabs-BqTak0SR.js +0 -123
  1196. package/dist/components/GrTabs/chunks/GrTabs-BqTak0SR.js.map +0 -1
  1197. package/dist/components/GrTextarea/chunks/GrTextarea-DIYBAPpP.js +0 -81
  1198. package/dist/components/GrTextarea/chunks/GrTextarea-DIYBAPpP.js.map +0 -1
  1199. package/dist/components/GrToaster/chunks/GrToaster-BVHjIHcM.js +0 -230
  1200. package/dist/components/GrToaster/chunks/GrToaster-BVHjIHcM.js.map +0 -1
  1201. package/dist/components/GrTooltip/chunks/GrTooltip-BMKH2lIx.js +0 -109
  1202. package/dist/components/GrTooltip/chunks/GrTooltip-BMKH2lIx.js.map +0 -1
  1203. package/dist/components/GrTree/chunks/GrTree-_12ChXRQ.js +0 -838
  1204. package/dist/components/GrTree/chunks/GrTree-_12ChXRQ.js.map +0 -1
  1205. package/dist/components/GrTreeSelect/chunks/GrTreeSelect-CdaLG7Xq.js +0 -426
  1206. package/dist/components/GrTreeSelect/chunks/GrTreeSelect-CdaLG7Xq.js.map +0 -1
  1207. package/dist/granular-provider-node.js.map +0 -1
  1208. package/dist/granular-provider.js.map +0 -1
  1209. package/dist/index.js.map +0 -1
  1210. package/dist/types/src/components/GrButton/config.node.d.ts +0 -1
  1211. package/dist/types/src/components/GrCommandPalette/hotkey.d.ts +0 -23
  1212. package/dist/types/src/components/GrFileUpload/maxSizeMbValidator.d.ts +0 -1
  1213. package/dist/types/src/components/GrModal/grModalEscStack.d.ts +0 -30
  1214. package/dist/types/src/components/GrModal/grModalTopStack.d.ts +0 -31
  1215. package/dist/types/src/components/GrProgressBar/config.node.d.ts +0 -1
  1216. package/dist/types/src/composables/internal/useEscapeToClose.d.ts +0 -11
  1217. package/dist/types/src/fileValidation/maxFileSizeBytesValidator.d.ts +0 -2
  1218. package/dist/types/src/fileValidation/maxSizeMbValidator.d.ts +0 -2
  1219. /package/dist/chunks/{config-DpqOnJiz.js → config-DpqOnJiz2.js} +0 -0
  1220. /package/dist/chunks/{config-QaIc_gRa2.js → config-QaIc_gRa.js} +0 -0
  1221. /package/dist/chunks/{config-eXB87DOi.js → config-eXB87DOi2.js} +0 -0
  1222. /package/dist/{GrSkeleton.css → components/GrSkeleton/styles.css} +0 -0
  1223. /package/dist/types/src/composables/{internal/useFloating.d.ts → useFloating.d.ts} +0 -0
@@ -0,0 +1,39 @@
1
+ import { Comment, Fragment, Text } from "vue";
2
+ //#region src/components/shared/slotNodes.ts
3
+ /**
4
+ * Разбор содержимого слота.
5
+ *
6
+ * Общий модуль, а не приватные функции внутри SFC: то же самое нужно и
7
+ * `GrFileUpload` («слот с кастомным UI или просто текст»), и `GrList` («в
8
+ * списке пусто»). Импорт из чужой компонентной директории на сборке дал бы
9
+ * ребро между компонентами, которого в разметке нет.
10
+ */
11
+ /** `v-for` и `<template>` приходят фрагментами — разворачиваем до реальных узлов. */
12
+ function flattenSlotNodes(nodes) {
13
+ const out = [];
14
+ for (const node of nodes) {
15
+ if (node.type === Fragment && Array.isArray(node.children)) {
16
+ out.push(...flattenSlotNodes(node.children));
17
+ continue;
18
+ }
19
+ out.push(node);
20
+ }
21
+ return out;
22
+ }
23
+ function isWhitespaceTextNode(node) {
24
+ if (node.type !== Text) return false;
25
+ return typeof node.children === "string" && node.children.trim().length === 0;
26
+ }
27
+ /**
28
+ * Узлы, которые пользователь действительно видит: без комментариев (их
29
+ * оставляет после себя каждый `v-if`) и без переносов строк из шаблона.
30
+ */
31
+ function meaningfulSlotNodes(nodes) {
32
+ return flattenSlotNodes(nodes).filter((node) => node.type !== Comment && !isWhitespaceTextNode(node));
33
+ }
34
+ /** Есть ли в слоте хоть что-то, кроме комментариев и пробелов. */
35
+ function hasMeaningfulSlotContent(nodes) {
36
+ return meaningfulSlotNodes(nodes).length > 0;
37
+ }
38
+ //#endregion
39
+ export { hasMeaningfulSlotContent as n, meaningfulSlotNodes as r, flattenSlotNodes as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slotNodes-DxNXpC7v.js","names":[],"sources":["../../src/components/shared/slotNodes.ts"],"sourcesContent":["import { Comment, Fragment, Text, type VNode } from 'vue'\n\n/**\n * Разбор содержимого слота.\n *\n * Общий модуль, а не приватные функции внутри SFC: то же самое нужно и\n * `GrFileUpload` («слот с кастомным UI или просто текст»), и `GrList` («в\n * списке пусто»). Импорт из чужой компонентной директории на сборке дал бы\n * ребро между компонентами, которого в разметке нет.\n */\n\n/** `v-for` и `<template>` приходят фрагментами — разворачиваем до реальных узлов. */\nexport function flattenSlotNodes(nodes: VNode[]): VNode[] {\n const out: VNode[] = []\n\n for (const node of nodes) {\n if (node.type === Fragment && Array.isArray(node.children)) {\n out.push(...flattenSlotNodes(node.children as VNode[]))\n continue\n }\n\n out.push(node)\n }\n\n return out\n}\n\nexport function isWhitespaceTextNode(node: VNode): boolean {\n if (node.type !== Text) return false\n return typeof node.children === 'string' && node.children.trim().length === 0\n}\n\n/**\n * Узлы, которые пользователь действительно видит: без комментариев (их\n * оставляет после себя каждый `v-if`) и без переносов строк из шаблона.\n */\nexport function meaningfulSlotNodes(nodes: VNode[]): VNode[] {\n return flattenSlotNodes(nodes).filter(node => node.type !== Comment && !isWhitespaceTextNode(node))\n}\n\n/** Есть ли в слоте хоть что-то, кроме комментариев и пробелов. */\nexport function hasMeaningfulSlotContent(nodes: VNode[]): boolean {\n return meaningfulSlotNodes(nodes).length > 0\n}\n"],"mappings":";;;;;;;;;;;AAYA,SAAgB,iBAAiB,OAAyB;CACxD,MAAM,MAAe,CAAC;CAEtB,KAAK,MAAM,QAAQ,OAAO;EACxB,IAAI,KAAK,SAAS,YAAY,MAAM,QAAQ,KAAK,QAAQ,GAAG;GAC1D,IAAI,KAAK,GAAG,iBAAiB,KAAK,QAAmB,CAAC;GACtD;EACF;EAEA,IAAI,KAAK,IAAI;CACf;CAEA,OAAO;AACT;AAEA,SAAgB,qBAAqB,MAAsB;CACzD,IAAI,KAAK,SAAS,MAAM,OAAO;CAC/B,OAAO,OAAO,KAAK,aAAa,YAAY,KAAK,SAAS,KAAK,CAAC,CAAC,WAAW;AAC9E;;;;;AAMA,SAAgB,oBAAoB,OAAyB;CAC3D,OAAO,iBAAiB,KAAK,CAAC,CAAC,QAAO,SAAQ,KAAK,SAAS,WAAW,CAAC,qBAAqB,IAAI,CAAC;AACpG;;AAGA,SAAgB,yBAAyB,OAAyB;CAChE,OAAO,oBAAoB,KAAK,CAAC,CAAC,SAAS;AAC7C"}
@@ -0,0 +1,128 @@
1
+ import { computed, nextTick, onBeforeUnmount, onMounted, onUpdated, ref, useSlots } from "vue";
2
+ //#region src/composables/internal/useAddonMeasurement.ts
3
+ /**
4
+ * Измерение фактической ширины prefix/suffix add-on'ов через `ResizeObserver`.
5
+ * Общая логика GrInput/GrNumberInput.
6
+ *
7
+ * Потребитель вешает возвращённые `prefixEl`/`suffixEl` на DOM-элементы аддонов
8
+ * и передаёт реактивные `hasPrefix`/`hasSuffix` (обычно — наличие слотов).
9
+ * Возвращает измеренные ширины (`"<n>px"` или `undefined`, если элемент
10
+ * отсутствует/скрыт/нулевой — например, в jsdom).
11
+ */
12
+ function useAddonMeasurement(hasPrefix, hasSuffix) {
13
+ const prefixEl = ref(null);
14
+ const suffixEl = ref(null);
15
+ const measuredPrefixWidth = ref(void 0);
16
+ const measuredSuffixWidth = ref(void 0);
17
+ let ro = null;
18
+ let scheduled = false;
19
+ function readWidthPx(el) {
20
+ if (!el) return void 0;
21
+ const width = Math.ceil(el.getBoundingClientRect().width || 0);
22
+ if (width <= 0) return void 0;
23
+ return `${width}px`;
24
+ }
25
+ function measure() {
26
+ measuredPrefixWidth.value = hasPrefix.value ? readWidthPx(prefixEl.value) : void 0;
27
+ measuredSuffixWidth.value = hasSuffix.value ? readWidthPx(suffixEl.value) : void 0;
28
+ }
29
+ function refreshObserver() {
30
+ if (typeof ResizeObserver === "undefined") return;
31
+ if (!ro) ro = new ResizeObserver(() => measure());
32
+ ro.disconnect();
33
+ if (prefixEl.value) ro.observe(prefixEl.value);
34
+ if (suffixEl.value) ro.observe(suffixEl.value);
35
+ }
36
+ function scheduleMeasure() {
37
+ if (scheduled) return;
38
+ scheduled = true;
39
+ nextTick(() => {
40
+ scheduled = false;
41
+ measure();
42
+ refreshObserver();
43
+ });
44
+ }
45
+ onMounted(() => scheduleMeasure());
46
+ onUpdated(() => scheduleMeasure());
47
+ onBeforeUnmount(() => ro?.disconnect());
48
+ return {
49
+ prefixEl,
50
+ suffixEl,
51
+ measuredPrefixWidth,
52
+ measuredSuffixWidth
53
+ };
54
+ }
55
+ /** Складывает две CSS-длины: числовые `px` — арифметически, иначе через `calc()`. */
56
+ function addLen(a, b) {
57
+ if (a === "0px") return b;
58
+ if (b === "0px") return a;
59
+ const apx = a.endsWith("px") ? Number(a.slice(0, -2)) : null;
60
+ const bpx = b.endsWith("px") ? Number(b.slice(0, -2)) : null;
61
+ if (apx !== null && Number.isFinite(apx) && bpx !== null && Number.isFinite(bpx)) return `${apx + bpx}px`;
62
+ return `calc(${a} + ${b})`;
63
+ }
64
+ //#endregion
65
+ //#region src/composables/internal/useControlAddons.ts
66
+ function useControlAddons(props, options) {
67
+ const slots = useSlots();
68
+ const hasPrefix = computed(() => Boolean(slots.prefix));
69
+ const hasSuffix = computed(() => Boolean(slots.suffix));
70
+ const prefixMinWidth = computed(() => props().prefixMinWidth ?? options.defaultMinWidth());
71
+ const suffixMinWidth = computed(() => props().suffixMinWidth ?? options.defaultMinWidth());
72
+ const prefixFixedWidth = computed(() => props().prefixMaxWidth ?? props().prefixMinWidth ?? options.defaultMinWidth());
73
+ const suffixFixedWidth = computed(() => props().suffixMaxWidth ?? props().suffixMinWidth ?? options.defaultMinWidth());
74
+ const { prefixEl, suffixEl, measuredPrefixWidth, measuredSuffixWidth } = useAddonMeasurement(hasPrefix, hasSuffix);
75
+ const prefixLen = computed(() => {
76
+ if (!hasPrefix.value) return "0px";
77
+ return props().prefixFixed ? prefixFixedWidth.value : measuredPrefixWidth.value ?? prefixMinWidth.value;
78
+ });
79
+ const suffixLen = computed(() => {
80
+ if (!hasSuffix.value) return "0px";
81
+ return props().suffixFixed ? suffixFixedWidth.value : measuredSuffixWidth.value ?? suffixMinWidth.value;
82
+ });
83
+ return {
84
+ hasPrefix,
85
+ hasSuffix,
86
+ prefixEl,
87
+ suffixEl,
88
+ prefixLen,
89
+ suffixLen,
90
+ prefixStyle: computed(() => {
91
+ if (props().prefixFixed) return {
92
+ width: prefixFixedWidth.value,
93
+ minWidth: prefixFixedWidth.value,
94
+ maxWidth: prefixFixedWidth.value
95
+ };
96
+ return {
97
+ minWidth: prefixMinWidth.value,
98
+ maxWidth: props().prefixMaxWidth
99
+ };
100
+ }),
101
+ suffixStyle: computed(() => {
102
+ const anchor = options.anchorSuffixRight ? { right: "0px" } : {};
103
+ if (props().suffixFixed) return {
104
+ ...anchor,
105
+ width: suffixFixedWidth.value,
106
+ minWidth: suffixFixedWidth.value,
107
+ maxWidth: suffixFixedWidth.value
108
+ };
109
+ return {
110
+ ...anchor,
111
+ minWidth: suffixMinWidth.value,
112
+ maxWidth: props().suffixMaxWidth
113
+ };
114
+ }),
115
+ fieldPadding: computed(() => {
116
+ const leading = options.leadingReserve?.() ?? "0px";
117
+ const trailing = options.trailingReserve?.() ?? "0px";
118
+ const left = addLen(prefixLen.value, leading);
119
+ const right = addLen(suffixLen.value, trailing);
120
+ return {
121
+ paddingLeft: hasPrefix.value || leading !== "0px" ? addLen(left, options.paddingX()) : void 0,
122
+ paddingRight: hasSuffix.value || trailing !== "0px" ? addLen(right, options.paddingX()) : void 0
123
+ };
124
+ })
125
+ };
126
+ }
127
+ //#endregion
128
+ export { addLen as n, useControlAddons as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useControlAddons-asUr10Pf.js","names":[],"sources":["../../src/composables/internal/useAddonMeasurement.ts","../../src/composables/internal/useControlAddons.ts"],"sourcesContent":["import { nextTick, onBeforeUnmount, onMounted, onUpdated, ref } from 'vue'\nimport type { Ref } from 'vue'\n\n/**\n * Измерение фактической ширины prefix/suffix add-on'ов через `ResizeObserver`.\n * Общая логика GrInput/GrNumberInput.\n *\n * Потребитель вешает возвращённые `prefixEl`/`suffixEl` на DOM-элементы аддонов\n * и передаёт реактивные `hasPrefix`/`hasSuffix` (обычно — наличие слотов).\n * Возвращает измеренные ширины (`\"<n>px\"` или `undefined`, если элемент\n * отсутствует/скрыт/нулевой — например, в jsdom).\n */\nexport function useAddonMeasurement(hasPrefix: Ref<boolean>, hasSuffix: Ref<boolean>) {\n const prefixEl = ref<HTMLElement | null>(null)\n const suffixEl = ref<HTMLElement | null>(null)\n\n const measuredPrefixWidth = ref<string | undefined>(undefined)\n const measuredSuffixWidth = ref<string | undefined>(undefined)\n\n let ro: ResizeObserver | null = null\n let scheduled = false\n\n function readWidthPx(el: HTMLElement | null): string | undefined {\n if (!el) return undefined\n\n const width = Math.ceil(el.getBoundingClientRect().width || 0)\n // jsdom часто отдаёт 0; не перезатираем fallback minWidth в этом случае.\n if (width <= 0) return undefined\n\n return `${width}px`\n }\n\n function measure(): void {\n measuredPrefixWidth.value = hasPrefix.value ? readWidthPx(prefixEl.value) : undefined\n measuredSuffixWidth.value = hasSuffix.value ? readWidthPx(suffixEl.value) : undefined\n }\n\n function refreshObserver(): void {\n if (typeof ResizeObserver === 'undefined') return\n if (!ro) ro = new ResizeObserver(() => measure())\n\n ro.disconnect()\n if (prefixEl.value) ro.observe(prefixEl.value)\n if (suffixEl.value) ro.observe(suffixEl.value)\n }\n\n function scheduleMeasure(): void {\n if (scheduled) return\n scheduled = true\n\n void nextTick(() => {\n scheduled = false\n measure()\n refreshObserver()\n })\n }\n\n onMounted(() => scheduleMeasure())\n onUpdated(() => scheduleMeasure())\n onBeforeUnmount(() => ro?.disconnect())\n\n return {\n prefixEl,\n suffixEl,\n measuredPrefixWidth,\n measuredSuffixWidth,\n }\n}\n\n/** Складывает две CSS-длины: числовые `px` — арифметически, иначе через `calc()`. */\nexport function addLen(a: string, b: string): string {\n if (a === '0px') return b\n if (b === '0px') return a\n\n const apx = a.endsWith('px') ? Number(a.slice(0, -2)) : null\n const bpx = b.endsWith('px') ? Number(b.slice(0, -2)) : null\n\n if (apx !== null && Number.isFinite(apx) && bpx !== null && Number.isFinite(bpx)) {\n return `${apx + bpx}px`\n }\n\n return `calc(${a} + ${b})`\n}\n","import type { ComputedRef, Ref } from 'vue'\nimport { computed, useSlots } from 'vue'\n\nimport { addLen, useAddonMeasurement } from './useAddonMeasurement'\n\n/**\n * Аддоны контрола: слоты `prefix`/`suffix` и геометрия вокруг них.\n *\n * Слот здесь — вершина айсберга. Контракт аддона состоит из шести пропов ширины,\n * замера фактического размера через `ResizeObserver` и пересчёта внутренних\n * отступов поля, чтобы текст не заезжал под аддон. Эта математика была написана\n * дважды — в `GrInput` и `GrNumberInput`, — и раскатать её ещё на четыре\n * контрола копипастой значило бы завести шесть копий одного расчёта.\n *\n * Правило, которое держит композабл: **аддон резервирует место, а не заменяет\n * отступ**. Поле с аддоном и без него выглядит одинаково отбитым от края —\n * ширина аддона прибавляется к базовому паддингу ступени, а не вытесняет его.\n *\n * Карта ширины по умолчанию остаётся у компонента (`defaultMinWidth`): у\n * `GrInput` она в `rem`, у `GrNumberInput` — в тех же значениях, но в пикселях,\n * потому что оттуда же считаются ширины степперов. Сводить их к одной строке\n * значило бы менять то, что уезжает в `style`, ради косметики.\n */\nexport interface GrControlAddonProps {\n /** Минимальная ширина префикса. По умолчанию — ширина аддона для ступени размера. */\n prefixMinWidth?: string\n /** Максимальная ширина префикса: содержимое шире — обрезается. */\n prefixMaxWidth?: string\n suffixMinWidth?: string\n suffixMaxWidth?: string\n /**\n * Жёсткая ширина префикса (из `prefixMaxWidth` → `prefixMinWidth` → дефолт).\n * Нужна, когда аддоны соседних полей обязаны совпасть по ширине: без этого\n * каждое поле меряет свой аддон и колонка «плывёт».\n */\n prefixFixed?: boolean\n suffixFixed?: boolean\n}\n\nexport interface UseControlAddonsOptions {\n /** Ширина аддона по умолчанию для текущей ступени размера. */\n defaultMinWidth: () => string\n /** Базовый горизонтальный отступ поля из size-мапы. */\n paddingX: () => string\n /** Место, занятое собственными элементами контрола слева (степперы `GrNumberInput`). */\n leadingReserve?: () => string\n /** То же справа: кнопки очистки и показа пароля, спиннер, степперы. */\n trailingReserve?: () => string\n /** Прижать суффикс к правому краю — там, где аддон позиционируется абсолютно. */\n anchorSuffixRight?: boolean\n}\n\nexport interface ControlAddons {\n hasPrefix: ComputedRef<boolean>\n hasSuffix: ComputedRef<boolean>\n /** Вешаются на DOM-элементы аддонов: по ним идёт замер. */\n prefixEl: Ref<HTMLElement | null>\n suffixEl: Ref<HTMLElement | null>\n /** Занятое аддоном место (`0px`, если слота нет) — контролу нужно для своих кнопок. */\n prefixLen: ComputedRef<string>\n suffixLen: ComputedRef<string>\n prefixStyle: ComputedRef<Record<string, string | undefined>>\n suffixStyle: ComputedRef<Record<string, string | undefined>>\n /** `paddingLeft`/`paddingRight` поля с учётом аддонов и собственных кнопок. */\n fieldPadding: ComputedRef<Record<string, string | undefined>>\n}\n\nexport function useControlAddons(\n props: () => GrControlAddonProps,\n options: UseControlAddonsOptions,\n): ControlAddons {\n const slots = useSlots()\n\n const hasPrefix = computed(() => Boolean(slots.prefix))\n const hasSuffix = computed(() => Boolean(slots.suffix))\n\n const prefixMinWidth = computed(() => props().prefixMinWidth ?? options.defaultMinWidth())\n const suffixMinWidth = computed(() => props().suffixMinWidth ?? options.defaultMinWidth())\n\n // Жёсткая ширина для fixed-режима: max → min → дефолт.\n const prefixFixedWidth = computed(() => props().prefixMaxWidth ?? props().prefixMinWidth ?? options.defaultMinWidth())\n const suffixFixedWidth = computed(() => props().suffixMaxWidth ?? props().suffixMinWidth ?? options.defaultMinWidth())\n\n const { prefixEl, suffixEl, measuredPrefixWidth, measuredSuffixWidth } = useAddonMeasurement(hasPrefix, hasSuffix)\n\n const prefixLen = computed(() => {\n if (!hasPrefix.value) return '0px'\n return props().prefixFixed ? prefixFixedWidth.value : measuredPrefixWidth.value ?? prefixMinWidth.value\n })\n\n const suffixLen = computed(() => {\n if (!hasSuffix.value) return '0px'\n return props().suffixFixed ? suffixFixedWidth.value : measuredSuffixWidth.value ?? suffixMinWidth.value\n })\n\n const prefixStyle = computed<Record<string, string | undefined>>(() => {\n if (props().prefixFixed) {\n return {\n width: prefixFixedWidth.value,\n minWidth: prefixFixedWidth.value,\n maxWidth: prefixFixedWidth.value,\n }\n }\n\n return {\n minWidth: prefixMinWidth.value,\n maxWidth: props().prefixMaxWidth,\n }\n })\n\n const suffixStyle = computed<Record<string, string | undefined>>(() => {\n const anchor = options.anchorSuffixRight ? { right: '0px' } : {}\n\n if (props().suffixFixed) {\n return {\n ...anchor,\n width: suffixFixedWidth.value,\n minWidth: suffixFixedWidth.value,\n maxWidth: suffixFixedWidth.value,\n }\n }\n\n return {\n ...anchor,\n minWidth: suffixMinWidth.value,\n maxWidth: props().suffixMaxWidth,\n }\n })\n\n const fieldPadding = computed<Record<string, string | undefined>>(() => {\n const leading = options.leadingReserve?.() ?? '0px'\n const trailing = options.trailingReserve?.() ?? '0px'\n\n const left = addLen(prefixLen.value, leading)\n const right = addLen(suffixLen.value, trailing)\n\n return {\n // Отступ добавляется поверх зарезервированного места: поле с аддоном и без\n // него отбито от края одинаково.\n paddingLeft: hasPrefix.value || leading !== '0px' ? addLen(left, options.paddingX()) : undefined,\n paddingRight: hasSuffix.value || trailing !== '0px' ? addLen(right, options.paddingX()) : undefined,\n }\n })\n\n return {\n hasPrefix,\n hasSuffix,\n prefixEl,\n suffixEl,\n prefixLen,\n suffixLen,\n prefixStyle,\n suffixStyle,\n fieldPadding,\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { computed, ref } from "vue";
2
+ //#region src/composables/internal/useControlledOpen.ts
3
+ /**
4
+ * Контролируемое состояние открытия оверлея — единый контракт `v-model:open`
5
+ * панельных компонентов (Popover, Select, TreeSelect, Autocomplete, Dropdown).
6
+ *
7
+ * Uncontrolled-состояние; в controlled-режиме перекрывается пропом `open`.
8
+ * Без пропа `v-model` был бы обязателен, а поповер без модели — самый частый
9
+ * случай использования. Гарды компонента (disabled/readonly) остаются на его
10
+ * стороне — примитив ведёт только состояние и эмит.
11
+ */
12
+ function useControlledOpen(controlled, onChange) {
13
+ const internalOpen = ref(false);
14
+ const isControlled = computed(() => controlled() !== void 0);
15
+ const open = computed(() => controlled() ?? internalOpen.value);
16
+ function setOpen(next) {
17
+ if (next === open.value) return;
18
+ if (!isControlled.value) internalOpen.value = next;
19
+ onChange(next);
20
+ }
21
+ return {
22
+ open,
23
+ setOpen
24
+ };
25
+ }
26
+ //#endregion
27
+ export { useControlledOpen as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useControlledOpen-DV3SqLTP.js","names":[],"sources":["../../src/composables/internal/useControlledOpen.ts"],"sourcesContent":["import type { ComputedRef } from 'vue'\nimport { computed, ref } from 'vue'\n\n/**\n * Контролируемое состояние открытия оверлея — единый контракт `v-model:open`\n * панельных компонентов (Popover, Select, TreeSelect, Autocomplete, Dropdown).\n *\n * Uncontrolled-состояние; в controlled-режиме перекрывается пропом `open`.\n * Без пропа `v-model` был бы обязателен, а поповер без модели — самый частый\n * случай использования. Гарды компонента (disabled/readonly) остаются на его\n * стороне — примитив ведёт только состояние и эмит.\n */\nexport function useControlledOpen(\n controlled: () => boolean | undefined,\n onChange: (value: boolean) => void,\n): { open: ComputedRef<boolean>, setOpen: (next: boolean) => void } {\n const internalOpen = ref(false)\n const isControlled = computed(() => controlled() !== undefined)\n const open = computed(() => controlled() ?? internalOpen.value)\n\n function setOpen(next: boolean): void {\n // Сравнение — ДО мутации: в uncontrolled-режиме запись в `internalOpen`\n // немедленно меняет `open`, и проверка после неё всегда была бы ложной,\n // то есть `onChange` не вызывался бы никогда.\n if (next === open.value) return\n\n if (!isControlled.value) internalOpen.value = next\n\n onChange(next)\n }\n\n return { open, setOpen }\n}\n"],"mappings":";;;;;;;;;;;AAYA,SAAgB,kBACd,YACA,UACkE;CAClE,MAAM,eAAe,IAAI,KAAK;CAC9B,MAAM,eAAe,eAAe,WAAW,MAAM,KAAA,CAAS;CAC9D,MAAM,OAAO,eAAe,WAAW,KAAK,aAAa,KAAK;CAE9D,SAAS,QAAQ,MAAqB;EAIpC,IAAI,SAAS,KAAK,OAAO;EAEzB,IAAI,CAAC,aAAa,OAAO,aAAa,QAAQ;EAE9C,SAAS,IAAI;CACf;CAEA,OAAO;EAAE;EAAM;CAAQ;AACzB"}
@@ -0,0 +1,53 @@
1
+ //#region src/composables/internal/useFilePreviews.ts
2
+ /**
3
+ * Ключи списка и миниатюры превью. Общий на файловые компоненты пакета:
4
+ * `GrFileUpload` (отправка) и `GrFormFile` (поле формы) показывают один и тот
5
+ * же набор одинаково, и правила «что считать картинкой» у них обязаны совпадать.
6
+ *
7
+ * Ключ считается от самого файла, а не от имени: два одноимённых файла из
8
+ * разных папок делили бы один `<li>`, и кнопка удаления в строке снимала бы
9
+ * не тот файл.
10
+ *
11
+ * `object URL` живёт ровно столько, сколько файл в наборе: без отзыва blob
12
+ * висит в памяти вкладки до перезагрузки — утечка тем заметнее, чем чаще
13
+ * пользователь перевыбирает файлы.
14
+ */
15
+ function useFilePreviews(options) {
16
+ const keys = /* @__PURE__ */ new WeakMap();
17
+ const urls = /* @__PURE__ */ new Map();
18
+ let counter = 0;
19
+ function fileKey(file) {
20
+ const existing = keys.get(file);
21
+ if (existing !== void 0) return existing;
22
+ counter += 1;
23
+ const key = `gr-file-${counter}`;
24
+ keys.set(file, key);
25
+ return key;
26
+ }
27
+ function previewUrl(file) {
28
+ if (!options.enabled() || !file.type.startsWith("image/")) return void 0;
29
+ const existing = urls.get(file);
30
+ if (existing) return existing;
31
+ if (typeof URL === "undefined" || typeof URL.createObjectURL !== "function") return void 0;
32
+ const url = URL.createObjectURL(file);
33
+ urls.set(file, url);
34
+ return url;
35
+ }
36
+ function revokePreview(file) {
37
+ const url = urls.get(file);
38
+ if (!url) return;
39
+ URL.revokeObjectURL(url);
40
+ urls.delete(file);
41
+ }
42
+ function revokeAllPreviews() {
43
+ for (const file of [...urls.keys()]) revokePreview(file);
44
+ }
45
+ return {
46
+ fileKey,
47
+ previewUrl,
48
+ revokePreview,
49
+ revokeAllPreviews
50
+ };
51
+ }
52
+ //#endregion
53
+ export { useFilePreviews as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFilePreviews-DnwgdyBs.js","names":[],"sources":["../../src/composables/internal/useFilePreviews.ts"],"sourcesContent":["export interface UseFilePreviewsOptions {\n /** Включены ли миниатюры. Геттер — проп реактивен. */\n enabled: () => boolean\n}\n\nexport interface UseFilePreviewsReturn {\n /** Стабильный ключ файла для `v-for`. */\n fileKey: (file: File) => string\n /** `object URL` миниатюры или `undefined`, если файл не картинка. */\n previewUrl: (file: File) => string | undefined\n revokePreview: (file: File) => void\n revokeAllPreviews: () => void\n}\n\n/**\n * Ключи списка и миниатюры превью. Общий на файловые компоненты пакета:\n * `GrFileUpload` (отправка) и `GrFormFile` (поле формы) показывают один и тот\n * же набор одинаково, и правила «что считать картинкой» у них обязаны совпадать.\n *\n * Ключ считается от самого файла, а не от имени: два одноимённых файла из\n * разных папок делили бы один `<li>`, и кнопка удаления в строке снимала бы\n * не тот файл.\n *\n * `object URL` живёт ровно столько, сколько файл в наборе: без отзыва blob\n * висит в памяти вкладки до перезагрузки — утечка тем заметнее, чем чаще\n * пользователь перевыбирает файлы.\n */\nexport function useFilePreviews(options: UseFilePreviewsOptions): UseFilePreviewsReturn {\n const keys = new WeakMap<File, string>()\n const urls = new Map<File, string>()\n let counter = 0\n\n function fileKey(file: File): string {\n const existing = keys.get(file)\n if (existing !== undefined) return existing\n\n counter += 1\n const key = `gr-file-${counter}`\n keys.set(file, key)\n return key\n }\n\n function previewUrl(file: File): string | undefined {\n if (!options.enabled() || !file.type.startsWith('image/')) return undefined\n\n const existing = urls.get(file)\n if (existing) return existing\n\n if (typeof URL === 'undefined' || typeof URL.createObjectURL !== 'function') return undefined\n\n const url = URL.createObjectURL(file)\n urls.set(file, url)\n return url\n }\n\n function revokePreview(file: File): void {\n const url = urls.get(file)\n if (!url) return\n\n URL.revokeObjectURL(url)\n urls.delete(file)\n }\n\n function revokeAllPreviews(): void {\n for (const file of [...urls.keys()]) revokePreview(file)\n }\n\n return { fileKey, previewUrl, revokePreview, revokeAllPreviews }\n}\n"],"mappings":";;;;;;;;;;;;;;AA2BA,SAAgB,gBAAgB,SAAwD;CACtF,MAAM,uBAAO,IAAI,QAAsB;CACvC,MAAM,uBAAO,IAAI,IAAkB;CACnC,IAAI,UAAU;CAEd,SAAS,QAAQ,MAAoB;EACnC,MAAM,WAAW,KAAK,IAAI,IAAI;EAC9B,IAAI,aAAa,KAAA,GAAW,OAAO;EAEnC,WAAW;EACX,MAAM,MAAM,WAAW;EACvB,KAAK,IAAI,MAAM,GAAG;EAClB,OAAO;CACT;CAEA,SAAS,WAAW,MAAgC;EAClD,IAAI,CAAC,QAAQ,QAAQ,KAAK,CAAC,KAAK,KAAK,WAAW,QAAQ,GAAG,OAAO,KAAA;EAElE,MAAM,WAAW,KAAK,IAAI,IAAI;EAC9B,IAAI,UAAU,OAAO;EAErB,IAAI,OAAO,QAAQ,eAAe,OAAO,IAAI,oBAAoB,YAAY,OAAO,KAAA;EAEpF,MAAM,MAAM,IAAI,gBAAgB,IAAI;EACpC,KAAK,IAAI,MAAM,GAAG;EAClB,OAAO;CACT;CAEA,SAAS,cAAc,MAAkB;EACvC,MAAM,MAAM,KAAK,IAAI,IAAI;EACzB,IAAI,CAAC,KAAK;EAEV,IAAI,gBAAgB,GAAG;EACvB,KAAK,OAAO,IAAI;CAClB;CAEA,SAAS,oBAA0B;EACjC,KAAK,MAAM,QAAQ,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,cAAc,IAAI;CACzD;CAEA,OAAO;EAAE;EAAS;EAAY;EAAe;CAAkB;AACjE"}
@@ -0,0 +1,33 @@
1
+ //#region src/composables/internal/useFocusWithin.ts
2
+ /**
3
+ * Граница фокуса составного контрола.
4
+ *
5
+ * Нативные `focus`/`blur` не всплывают, поэтому у группы (радиогруппа,
6
+ * сегменты, набор чекбоксов) их не поймать на корне вовсе — всплывают только
7
+ * `focusin`/`focusout`. Но всплывают они и когда фокус переезжает **внутри**
8
+ * группы: между её пунктами, с поля на его же кнопку очистки. Для потребителя
9
+ * это не уход и не приход — контрол всё это время в фокусе, — а необработанный
10
+ * переход дал бы `blur` + `focus` на каждую стрелку клавиатуры.
11
+ *
12
+ * Поэтому событие считается состоявшимся, только если `relatedTarget` лежит вне
13
+ * корня. `relatedTarget: null` (клик по body, уход из окна, программный фокус)
14
+ * — тоже пересечение границы.
15
+ */
16
+ function useFocusWithin(root, options) {
17
+ function crossedBoundary(event) {
18
+ const other = event.relatedTarget;
19
+ if (!other) return true;
20
+ if (root.value?.contains(other)) return false;
21
+ return !options.containers?.().some((node) => node?.contains(other));
22
+ }
23
+ return {
24
+ onFocusIn(event) {
25
+ if (crossedBoundary(event)) options.enter?.(event);
26
+ },
27
+ onFocusOut(event) {
28
+ if (crossedBoundary(event)) options.leave?.(event);
29
+ }
30
+ };
31
+ }
32
+ //#endregion
33
+ export { useFocusWithin as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocusWithin-BwHE0rzm.js","names":[],"sources":["../../src/composables/internal/useFocusWithin.ts"],"sourcesContent":["import type { Ref } from 'vue'\n\nexport interface UseFocusWithinOptions {\n /** Фокус пришёл снаружи внутрь. */\n enter?: (event: FocusEvent) => void\n /** Фокус ушёл изнутри наружу. */\n leave?: (event: FocusEvent) => void\n /**\n * Узлы, которые считаются частью контрола, хотя лежат вне корня. Нужны там,\n * где панель телепортирована в `body`, а фокус в неё уходит по-настоящему:\n * без них переход в поле фильтра открытой панели выглядел бы уходом наружу.\n */\n containers?: () => (HTMLElement | null | undefined)[]\n}\n\nexport interface UseFocusWithinHandlers {\n onFocusIn: (event: FocusEvent) => void\n onFocusOut: (event: FocusEvent) => void\n}\n\n/**\n * Граница фокуса составного контрола.\n *\n * Нативные `focus`/`blur` не всплывают, поэтому у группы (радиогруппа,\n * сегменты, набор чекбоксов) их не поймать на корне вовсе — всплывают только\n * `focusin`/`focusout`. Но всплывают они и когда фокус переезжает **внутри**\n * группы: между её пунктами, с поля на его же кнопку очистки. Для потребителя\n * это не уход и не приход — контрол всё это время в фокусе, — а необработанный\n * переход дал бы `blur` + `focus` на каждую стрелку клавиатуры.\n *\n * Поэтому событие считается состоявшимся, только если `relatedTarget` лежит вне\n * корня. `relatedTarget: null` (клик по body, уход из окна, программный фокус)\n * — тоже пересечение границы.\n */\nexport function useFocusWithin(\n root: Ref<HTMLElement | null>,\n options: UseFocusWithinOptions,\n): UseFocusWithinHandlers {\n function crossedBoundary(event: FocusEvent): boolean {\n const other = event.relatedTarget as Node | null\n if (!other) return true\n\n if (root.value?.contains(other)) return false\n\n return !options.containers?.().some(node => node?.contains(other))\n }\n\n return {\n onFocusIn(event) {\n if (crossedBoundary(event)) options.enter?.(event)\n },\n onFocusOut(event) {\n if (crossedBoundary(event)) options.leave?.(event)\n },\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAkCA,SAAgB,eACd,MACA,SACwB;CACxB,SAAS,gBAAgB,OAA4B;EACnD,MAAM,QAAQ,MAAM;EACpB,IAAI,CAAC,OAAO,OAAO;EAEnB,IAAI,KAAK,OAAO,SAAS,KAAK,GAAG,OAAO;EAExC,OAAO,CAAC,QAAQ,aAAa,CAAC,CAAC,MAAK,SAAQ,MAAM,SAAS,KAAK,CAAC;CACnE;CAEA,OAAO;EACL,UAAU,OAAO;GACf,IAAI,gBAAgB,KAAK,GAAG,QAAQ,QAAQ,KAAK;EACnD;EACA,WAAW,OAAO;GAChB,IAAI,gBAAgB,KAAK,GAAG,QAAQ,QAAQ,KAAK;EACnD;CACF;AACF"}
@@ -0,0 +1,212 @@
1
+ import { c as useGrThemeAttrs } from "./context-BSYR7RZs.js";
2
+ import { t as usePortalTarget } from "./usePortalTarget-RyzEgNTb.js";
3
+ import { n as markInert, t as inertableOutside } from "./inert-DIHCCn_1.js";
4
+ import { t as useOverlayLayer } from "./useOverlayLayer-BupuP_hs.js";
5
+ import { useFocusTrap } from "../composables/useFocusTrap.js";
6
+ import { computed, onBeforeUnmount, onScopeDispose, ref, watch } from "vue";
7
+ //#region src/composables/internal/useInertOthers.ts
8
+ /**
9
+ * Пока слой активен, всё вне его ветки помечено `inert`: от корня оверлея вверх
10
+ * до `<body>`, на каждом уровне — соседи.
11
+ *
12
+ * Это вторая половина модальности: `z-index` перекрывает страницу глазами,
13
+ * `inert` — клавиатурой и скринридером.
14
+ */
15
+ function useInertOthers(root, active) {
16
+ let release;
17
+ function apply() {
18
+ release?.();
19
+ release = markInert(inertableOutside(root.value));
20
+ }
21
+ function clear() {
22
+ release?.();
23
+ release = void 0;
24
+ }
25
+ watch(() => Boolean(active()) && Boolean(root.value), (isActive) => {
26
+ if (isActive) apply();
27
+ else clear();
28
+ }, {
29
+ immediate: true,
30
+ flush: "post"
31
+ });
32
+ onScopeDispose(clear);
33
+ }
34
+ //#endregion
35
+ //#region src/composables/internal/useOverlayPresence.ts
36
+ /**
37
+ * Присутствие оверлея в DOM отдельно от его видимости.
38
+ *
39
+ * Штатный `<Transition>` анимирует свой элемент, но не координирует соседей:
40
+ * убери обёртку по `v-if` — и подложка с панелью исчезнут мгновенно, без
41
+ * leave-анимации. Поэтому присутствие поддерева и видимость слоя — два разных
42
+ * флага: первый снимается только по концу leave-анимации панели.
43
+ *
44
+ * Видимость включается **в том же такте**, что и монтирование: содержимое окна
45
+ * обязано появляться в DOM сразу после открытия — на этом стоит и код
46
+ * потребителя, и внутренние компоненты, которые ищут в панели свои элементы.
47
+ * Enter-анимацию это не отменяет: `<Transition appear>` проигрывает её и на
48
+ * первом рендере ребёнка.
49
+ */
50
+ function useOverlayPresence(open) {
51
+ const mounted = ref(open.value);
52
+ const visible = ref(open.value);
53
+ watch(open, (isOpen) => {
54
+ if (isOpen) mounted.value = true;
55
+ visible.value = isOpen;
56
+ });
57
+ function onPanelAfterLeave() {
58
+ if (!open.value) mounted.value = false;
59
+ }
60
+ return {
61
+ mounted,
62
+ visible,
63
+ onPanelAfterLeave
64
+ };
65
+ }
66
+ //#endregion
67
+ //#region src/composables/internal/useScrollLock.ts
68
+ var lockCount = 0;
69
+ var saved = null;
70
+ var savedScrollY = 0;
71
+ var releaseTouchGuard = null;
72
+ /**
73
+ * iOS определяем по платформе, а не по ширине экрана: лечение специфично для
74
+ * движка, а не для размера. `maxTouchPoints` отличает iPadOS, который со времён
75
+ * 13-й версии представляется десктопным Mac.
76
+ */
77
+ function isIOS() {
78
+ if (typeof navigator === "undefined") return false;
79
+ return /iP(?:hone|ad|od)/.test(navigator.platform) || navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1;
80
+ }
81
+ /** Прокручиваемая область оверлея — единственное, чему `touchmove` разрешён. */
82
+ function isScrollableOverlayArea(target) {
83
+ if (!(target instanceof Element)) return false;
84
+ for (let node = target; node; node = node.parentElement) {
85
+ if (!(node instanceof HTMLElement)) continue;
86
+ if (node.hasAttribute("data-gr-overlay-root")) return true;
87
+ }
88
+ return false;
89
+ }
90
+ function applyTouchGuard() {
91
+ if (!isIOS()) return;
92
+ const onTouchMove = (event) => {
93
+ if (isScrollableOverlayArea(event.target)) return;
94
+ if (event.cancelable) event.preventDefault();
95
+ };
96
+ document.addEventListener("touchmove", onTouchMove, { passive: false });
97
+ releaseTouchGuard = () => document.removeEventListener("touchmove", onTouchMove);
98
+ }
99
+ function getScrollbarWidth() {
100
+ return window.innerWidth - document.documentElement.clientWidth;
101
+ }
102
+ function applyLock() {
103
+ const body = document.body;
104
+ saved = {
105
+ overflow: body.style.overflow,
106
+ paddingRight: body.style.paddingRight,
107
+ overscrollBehavior: body.style.overscrollBehavior
108
+ };
109
+ savedScrollY = window.scrollY;
110
+ const scrollbarWidth = getScrollbarWidth();
111
+ body.style.overflow = "hidden";
112
+ body.style.overscrollBehavior = "contain";
113
+ if (scrollbarWidth > 0) {
114
+ const currentPadding = Number.parseFloat(getComputedStyle(body).paddingRight) || 0;
115
+ body.style.paddingRight = `${currentPadding + scrollbarWidth}px`;
116
+ }
117
+ applyTouchGuard();
118
+ }
119
+ function releaseLock() {
120
+ releaseTouchGuard?.();
121
+ releaseTouchGuard = null;
122
+ if (!saved) return;
123
+ document.body.style.overflow = saved.overflow;
124
+ document.body.style.paddingRight = saved.paddingRight;
125
+ document.body.style.overscrollBehavior = saved.overscrollBehavior;
126
+ saved = null;
127
+ if (isIOS() && window.scrollY !== savedScrollY) window.scrollTo(0, savedScrollY);
128
+ }
129
+ /**
130
+ * Возвращает пару `lock`/`unlock`, идемпотентную **в пределах одного инстанса**
131
+ * (повторный `lock()` без `unlock()` не увеличивает глобальный счётчик дважды).
132
+ * Глобальный счётчик разделяется всеми оверлеями.
133
+ */
134
+ function useScrollLock() {
135
+ const isClient = typeof window !== "undefined";
136
+ let held = false;
137
+ function lock() {
138
+ if (!isClient || held) return;
139
+ held = true;
140
+ lockCount += 1;
141
+ if (lockCount === 1) applyLock();
142
+ }
143
+ function unlock() {
144
+ if (!isClient || !held) return;
145
+ held = false;
146
+ lockCount = Math.max(0, lockCount - 1);
147
+ if (lockCount === 0) releaseLock();
148
+ }
149
+ return {
150
+ lock,
151
+ unlock
152
+ };
153
+ }
154
+ //#endregion
155
+ //#region src/composables/internal/useModalOverlay.ts
156
+ function useModalOverlay(open, onDismiss, options) {
157
+ const isModal = () => typeof options.modal === "function" ? options.modal() : options.modal ?? true;
158
+ const rootEl = options.root ?? ref(null);
159
+ const isTopmost = ref(true);
160
+ const inertAttr = computed(() => open.value && isModal() && !isTopmost.value ? true : void 0);
161
+ const { target: portalTarget, enabled: teleportEnabled } = usePortalTarget(options.teleportTo);
162
+ const themeAttrs = useGrThemeAttrs();
163
+ const { mounted: isMounted, visible: isVisible, onPanelAfterLeave } = useOverlayPresence(open);
164
+ const layer = useOverlayLayer(open, onDismiss, {
165
+ modal: isModal,
166
+ closeOnEscape: options.closeOnEscape,
167
+ onTopmostChange: (value) => {
168
+ isTopmost.value = value;
169
+ },
170
+ root: rootEl
171
+ });
172
+ useFocusTrap(options.panel, {
173
+ active: () => open.value && isModal() && isTopmost.value,
174
+ initialFocus: options.initialFocus,
175
+ fallbackFocus: () => options.panel.value,
176
+ containers: layer.rootsAbove,
177
+ restoreFocus: false
178
+ });
179
+ useInertOthers(rootEl, () => open.value && isModal() && isTopmost.value);
180
+ const { lock, unlock } = useScrollLock();
181
+ watch(() => options.lockScroll?.() ?? (open.value && isModal()), (locked) => {
182
+ if (locked) lock();
183
+ else unlock();
184
+ }, { immediate: true });
185
+ onBeforeUnmount(unlock);
186
+ let pointerDownOnBackdrop = false;
187
+ return {
188
+ rootEl,
189
+ isMounted,
190
+ isVisible,
191
+ isTopmost,
192
+ inertAttr,
193
+ portalTarget,
194
+ teleportEnabled,
195
+ themeAttrs,
196
+ onPanelAfterLeave,
197
+ backdrop: {
198
+ mousedown(event) {
199
+ pointerDownOnBackdrop = event.target === event.currentTarget;
200
+ },
201
+ click(event) {
202
+ const startedHere = pointerDownOnBackdrop;
203
+ pointerDownOnBackdrop = false;
204
+ if (!startedHere || event.target !== event.currentTarget) return;
205
+ if (options.closeOnBackdrop?.() === false) return;
206
+ onDismiss();
207
+ }
208
+ }
209
+ };
210
+ }
211
+ //#endregion
212
+ export { useModalOverlay as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useModalOverlay-DCM4d3yA.js","names":[],"sources":["../../src/composables/internal/useInertOthers.ts","../../src/composables/internal/useOverlayPresence.ts","../../src/composables/internal/useScrollLock.ts","../../src/composables/internal/useModalOverlay.ts"],"sourcesContent":["import type { Ref } from 'vue'\nimport { onScopeDispose, watch } from 'vue'\n\nimport { inertableOutside, markInert } from './inert'\n\n/**\n * Пока слой активен, всё вне его ветки помечено `inert`: от корня оверлея вверх\n * до `<body>`, на каждом уровне — соседи.\n *\n * Это вторая половина модальности: `z-index` перекрывает страницу глазами,\n * `inert` — клавиатурой и скринридером.\n */\nexport function useInertOthers(root: Ref<HTMLElement | null>, active: () => boolean): void {\n let release: (() => void) | undefined\n\n function apply(): void {\n release?.()\n release = markInert(inertableOutside(root.value))\n }\n\n function clear(): void {\n release?.()\n release = undefined\n }\n\n watch(\n () => Boolean(active()) && Boolean(root.value),\n (isActive) => {\n if (isActive) apply()\n else clear()\n },\n { immediate: true, flush: 'post' },\n )\n\n onScopeDispose(clear)\n}\n","import type { Ref } from 'vue'\nimport { ref, watch } from 'vue'\n\nexport interface OverlayPresence {\n /** Смонтировано ли поддерево слоя: держится до конца leave-анимации. */\n mounted: Ref<boolean>\n /** Показан ли слой: этим переключаются `<Transition>` внутри. */\n visible: Ref<boolean>\n /** Вызывается из `@after-leave` панели. */\n onPanelAfterLeave: () => void\n}\n\n/**\n * Присутствие оверлея в DOM отдельно от его видимости.\n *\n * Штатный `<Transition>` анимирует свой элемент, но не координирует соседей:\n * убери обёртку по `v-if` — и подложка с панелью исчезнут мгновенно, без\n * leave-анимации. Поэтому присутствие поддерева и видимость слоя — два разных\n * флага: первый снимается только по концу leave-анимации панели.\n *\n * Видимость включается **в том же такте**, что и монтирование: содержимое окна\n * обязано появляться в DOM сразу после открытия — на этом стоит и код\n * потребителя, и внутренние компоненты, которые ищут в панели свои элементы.\n * Enter-анимацию это не отменяет: `<Transition appear>` проигрывает её и на\n * первом рендере ребёнка.\n */\nexport function useOverlayPresence(open: Ref<boolean>): OverlayPresence {\n const mounted = ref(open.value)\n const visible = ref(open.value)\n\n watch(open, (isOpen) => {\n if (isOpen) mounted.value = true\n visible.value = isOpen\n })\n\n function onPanelAfterLeave(): void {\n // Пока панель уезжала, слой могли открыть заново — тогда размонтировать\n // нечего и незачем.\n if (!open.value) mounted.value = false\n }\n\n return { mounted, visible, onPanelAfterLeave }\n}\n","/**\n * useScrollLock — общий **reference-counted** lock скролла `<body>` для оверлеев\n * (GrModal, GrDrawer, GrImageViewer).\n *\n * Зачем счётчик: состояние `<body>` принадлежит не оверлею, а их совокупности.\n * Держи каждый свой `savedBodyOverflow`, и закрытие A при ещё открытой B вернуло\n * бы странице прокрутку под открытым окном — закрывают не всегда в порядке\n * открытия. Поэтому состояние сохраняется один раз (переход счётчика 0→1) и\n * восстанавливается только когда закрыт последний оверлей (1→0).\n *\n * Плюс компенсация ширины скроллбара: при `overflow: hidden` скроллбар исчезает и\n * контент дёргается вправо — добавляем `padding-right` на его ширину.\n *\n * Отдельная ветка — iOS Safari: там `overflow: hidden` фон не держит, страница\n * продолжает «резинить» под открытым окном. Лечится тем же, чем лечил\n * HeadlessUI (`handleIOSLocking`): гасим `touchmove` вне скроллящихся областей\n * оверлея и возвращаем позицию прокрутки после снятия лока.\n */\n\ninterface SavedBodyStyle {\n overflow: string\n paddingRight: string\n overscrollBehavior: string\n}\n\nlet lockCount = 0\nlet saved: SavedBodyStyle | null = null\nlet savedScrollY = 0\nlet releaseTouchGuard: (() => void) | null = null\n\n/**\n * iOS определяем по платформе, а не по ширине экрана: лечение специфично для\n * движка, а не для размера. `maxTouchPoints` отличает iPadOS, который со времён\n * 13-й версии представляется десктопным Mac.\n */\nfunction isIOS(): boolean {\n if (typeof navigator === 'undefined') return false\n return /iP(?:hone|ad|od)/.test(navigator.platform)\n || (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1)\n}\n\n/** Прокручиваемая область оверлея — единственное, чему `touchmove` разрешён. */\nfunction isScrollableOverlayArea(target: EventTarget | null): boolean {\n if (!(target instanceof Element)) return false\n\n for (let node: Element | null = target; node; node = node.parentElement) {\n if (!(node instanceof HTMLElement)) continue\n if (node.hasAttribute('data-gr-overlay-root')) return true\n }\n\n return false\n}\n\nfunction applyTouchGuard(): void {\n if (!isIOS()) return\n\n const onTouchMove = (event: TouchEvent): void => {\n // Внутри оверлея скролл законен (длинное окно, лента изображений), а всё\n // остальное — это и есть фон, который лок обязан держать.\n if (isScrollableOverlayArea(event.target)) return\n if (event.cancelable) event.preventDefault()\n }\n\n document.addEventListener('touchmove', onTouchMove, { passive: false })\n releaseTouchGuard = () => document.removeEventListener('touchmove', onTouchMove)\n}\n\nfunction getScrollbarWidth(): number {\n return window.innerWidth - document.documentElement.clientWidth\n}\n\nfunction applyLock(): void {\n const body = document.body\n saved = {\n overflow: body.style.overflow,\n paddingRight: body.style.paddingRight,\n overscrollBehavior: body.style.overscrollBehavior,\n }\n savedScrollY = window.scrollY\n\n // Ширину скроллбара считаем ДО `overflow: hidden` (после — `clientWidth` меняется).\n const scrollbarWidth = getScrollbarWidth()\n\n body.style.overflow = 'hidden'\n // Прокрутка, «доехавшая» до края внутри окна, не должна продолжаться фоном.\n body.style.overscrollBehavior = 'contain'\n if (scrollbarWidth > 0) {\n const currentPadding = Number.parseFloat(getComputedStyle(body).paddingRight) || 0\n body.style.paddingRight = `${currentPadding + scrollbarWidth}px`\n }\n\n applyTouchGuard()\n}\n\nfunction releaseLock(): void {\n releaseTouchGuard?.()\n releaseTouchGuard = null\n\n if (!saved) return\n document.body.style.overflow = saved.overflow\n document.body.style.paddingRight = saved.paddingRight\n document.body.style.overscrollBehavior = saved.overscrollBehavior\n saved = null\n\n // iOS сдвигает страницу, пока фон заблокирован; возвращаем её на место.\n if (isIOS() && window.scrollY !== savedScrollY) window.scrollTo(0, savedScrollY)\n}\n\n/**\n * Возвращает пару `lock`/`unlock`, идемпотентную **в пределах одного инстанса**\n * (повторный `lock()` без `unlock()` не увеличивает глобальный счётчик дважды).\n * Глобальный счётчик разделяется всеми оверлеями.\n */\nexport function useScrollLock() {\n const isClient = typeof window !== 'undefined'\n let held = false\n\n function lock(): void {\n if (!isClient || held) return\n held = true\n lockCount += 1\n if (lockCount === 1) applyLock()\n }\n\n function unlock(): void {\n if (!isClient || !held) return\n held = false\n lockCount = Math.max(0, lockCount - 1)\n if (lockCount === 0) releaseLock()\n }\n\n return { lock, unlock }\n}\n\n/** Тестовая/служебная очистка глобального состояния. */\nexport function resetScrollLock(): void {\n lockCount = 0\n if (typeof document !== 'undefined') releaseLock()\n saved = null\n}\n","import type { ComputedRef, Ref } from 'vue'\nimport { computed, onBeforeUnmount, ref, watch } from 'vue'\n\nimport { useGrThemeAttrs } from '../../components/GrConfigProvider/context'\nimport { useFocusTrap } from '../useFocusTrap'\nimport { useOverlayLayer } from '../useOverlayLayer'\nimport { usePortalTarget } from '../usePortalTarget'\nimport { useInertOthers } from './useInertOthers'\nimport { useOverlayPresence } from './useOverlayPresence'\nimport { useScrollLock } from './useScrollLock'\n\n/**\n * Модальный слой целиком: одна сборка на весь пакет.\n *\n * Модальность собиралась вручную в трёх компонентах (`GrModal`, `GrDrawer`,\n * `GrImageViewer`) из шести примитивов, и сборка повторялась дословно. Дело не\n * в объёме: в этой проводке сидят инварианты, каждый из которых при пропуске\n * даёт тихий баг доступности, а не заметную поломку. Здесь они собраны в одном\n * месте — забыть часть модального слоя больше нельзя.\n *\n * Что именно неочевидно:\n *\n * - **`restoreFocus: false` у ловушки.** Возврат фокуса принадлежит стеку\n * слоёв: у него правило строже — вернуть, только если на момент закрытия\n * фокус ещё был внутри слоя. Две системы возврата подрались бы за фокус.\n * - **`containers: layer.rootsAbove`.** Панель селекта, открытого ВНУТРИ окна,\n * телепортирована в `body` и лежит вне поддерева панели. Без этого списка\n * ловушка считала бы её «снаружи» и отбирала фокус.\n * - **Ловушка и `inert` работают, только пока слой верхний.** Иначе нижнее\n * окно ворует фокус у открытого поверх него, а `inert` гасит собственную\n * панель вместе со страницей.\n * - **Клик по подложке считается только тот, что на ней и начался.** Иначе\n * выделение текста мышью или перетаскивание, отпущенное за пределами панели,\n * закрывает слой.\n *\n * Чего композабл НЕ делает: не рисует разметку. Корневой `div`, подложка и\n * панель у трёх компонентов различаются по существу (обёртки скролла у окна,\n * сквозные клики у немодальной панели, слои хрома у просмотрщика), а классами\n * общий модуль владеть не вправе — пресет гранулярности подмешивает safelist\n * только по директориям выбранных компонентов.\n */\nexport interface UseModalOverlayOptions {\n /**\n * Модальный ли слой: блокирует страницу, держит фокус, гасит нижние окна.\n * Геттером — там, где модальность включается пропом (`GrDrawer`).\n */\n modal?: boolean | (() => boolean)\n /** Закрывать ли по Esc. Геттер — проп компонента реактивен. */\n closeOnEscape?: () => boolean\n /** Закрывать ли по клику в подложку; читается обработчиками `backdrop`. */\n closeOnBackdrop?: () => boolean\n /** Панель слоя: контейнер ловушки фокуса и её запасной приёмник. */\n panel: Ref<HTMLElement | null>\n /**\n * Свой корень слоя. У якорного оверлея (`GrPopover`) корень и панель — один\n * элемент: в портал уезжает сама панель, отдельной обёртки нет. Не задан —\n * композабл заводит корень сам, как у центрированных окон.\n */\n root?: Ref<HTMLElement | null>\n /**\n * Точечное переопределение точки монтирования (проп `teleportTo`). По\n * умолчанию — общий портал оверлеев.\n */\n teleportTo?: () => string | HTMLElement | undefined\n /**\n * Кому отдать фокус при открытии. Не задан — первому фокусируемому внутри\n * панели (правило `useFocusTrap`): просмотрщику нужна именно кнопка тулбара,\n * а окну — сама панель, и оно передаёт её явно.\n */\n initialFocus?: () => HTMLElement | null | undefined\n /**\n * Блокировать ли скролл страницы. По умолчанию — пока слой открыт и модален:\n * немодальная панель существует ровно ради работы со страницей под ней.\n */\n lockScroll?: () => boolean\n}\n\nexport interface ModalOverlay {\n /** Корень слоя: цель `ref` в шаблоне, хозяин `inert` и корень для стека слоёв. */\n rootEl: Ref<HTMLElement | null>\n /** Смонтировано ли поддерево: держится до конца leave-анимации панели. */\n isMounted: Ref<boolean>\n /** Показан ли слой: этим переключаются `<Transition>` внутри. */\n isVisible: Ref<boolean>\n /** Верхний ли это слой сейчас. */\n isTopmost: Ref<boolean>\n /** Значение атрибута `inert` для корня: слой перестал быть верхним. */\n inertAttr: ComputedRef<true | undefined>\n portalTarget: ComputedRef<string | HTMLElement>\n teleportEnabled: ComputedRef<boolean>\n /** `data-theme` на телепортированный корень: в DOM он вне обёртки провайдера. */\n themeAttrs: ComputedRef<{ 'data-theme'?: string }>\n /** Для `@after-leave` панели. Компонент оборачивает, если ему нужен эмит `closed`. */\n onPanelAfterLeave: () => void\n /**\n * Обработчики подложки вместе с guard'ом «клик начался на ней». Имена — под\n * `v-on=\"backdrop\"`: объектный синтаксис ждёт имена событий, а не пропов.\n */\n backdrop: {\n mousedown: (event: MouseEvent) => void\n click: (event: MouseEvent) => void\n }\n}\n\nexport function useModalOverlay(\n open: Ref<boolean>,\n onDismiss: () => void,\n options: UseModalOverlayOptions,\n): ModalOverlay {\n const isModal = (): boolean =>\n typeof options.modal === 'function' ? options.modal() : options.modal ?? true\n\n const rootEl = options.root ?? ref<HTMLElement | null>(null)\n const isTopmost = ref(true)\n\n const inertAttr = computed(() => (open.value && isModal() && !isTopmost.value ? true : undefined))\n\n // Телепорт включается только ПОСЛЕ монтирования: иначе первый клиентский\n // рендер не совпадёт с серверным и сломается гидрация.\n const { target: portalTarget, enabled: teleportEnabled } = usePortalTarget(options.teleportTo)\n\n // Панель уезжает в `body`, то есть вне обёртки провайдера, и `data-theme` с\n // неё не наследуется. В дереве компонентов слой остаётся внутри — `inject`\n // доходит, и тему он ставит себе сам.\n const themeAttrs = useGrThemeAttrs()\n\n const { mounted: isMounted, visible: isVisible, onPanelAfterLeave } = useOverlayPresence(open)\n\n const layer = useOverlayLayer(open, onDismiss, {\n modal: isModal,\n closeOnEscape: options.closeOnEscape,\n onTopmostChange: (value) => { isTopmost.value = value },\n root: rootEl,\n })\n\n useFocusTrap(options.panel, {\n active: () => open.value && isModal() && isTopmost.value,\n initialFocus: options.initialFocus,\n fallbackFocus: () => options.panel.value,\n containers: layer.rootsAbove,\n restoreFocus: false,\n })\n\n useInertOthers(rootEl, () => open.value && isModal() && isTopmost.value)\n\n // Общий reference-counted lock: несколько открытых оверлеев снимают блокировку\n // независимо от порядка закрытия, ширина скроллбара компенсируется.\n const { lock, unlock } = useScrollLock()\n\n watch(\n () => options.lockScroll?.() ?? (open.value && isModal()),\n (locked) => {\n if (locked) lock()\n else unlock()\n },\n { immediate: true },\n )\n\n onBeforeUnmount(unlock)\n\n let pointerDownOnBackdrop = false\n\n return {\n rootEl,\n isMounted,\n isVisible,\n isTopmost,\n inertAttr,\n portalTarget,\n teleportEnabled,\n themeAttrs,\n onPanelAfterLeave,\n backdrop: {\n mousedown(event: MouseEvent): void {\n pointerDownOnBackdrop = event.target === event.currentTarget\n },\n click(event: MouseEvent): void {\n const startedHere = pointerDownOnBackdrop\n pointerDownOnBackdrop = false\n\n if (!startedHere || event.target !== event.currentTarget) return\n if (options.closeOnBackdrop?.() === false) return\n\n onDismiss()\n },\n },\n }\n}\n"],"mappings":"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"}