@svgrid/grid 2.2.32 → 2.4.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 (405) hide show
  1. package/README.md +199 -199
  2. package/dist/DockNodeView.svelte +1 -1
  3. package/dist/FlexRender.svelte +96 -96
  4. package/dist/GridFooter.svelte +178 -179
  5. package/dist/GridMenus.svelte +705 -782
  6. package/dist/SvAutoComplete.svelte +165 -165
  7. package/dist/SvAvatar.svelte +75 -75
  8. package/dist/SvCalendar.svelte +503 -503
  9. package/dist/SvCarousel.svelte +141 -141
  10. package/dist/SvCheckBox.svelte +102 -102
  11. package/dist/SvCircularProgress.svelte +109 -109
  12. package/dist/SvColorInput.svelte +181 -181
  13. package/dist/SvComboBox.svelte +275 -275
  14. package/dist/SvContextMenu.svelte +116 -116
  15. package/dist/SvCountryInput.svelte +160 -160
  16. package/dist/SvDateRangeInput.svelte +1 -1
  17. package/dist/SvDrawer.svelte +254 -254
  18. package/dist/SvDropDownList.svelte +374 -374
  19. package/dist/SvDurationInput.svelte +126 -126
  20. package/dist/SvField.svelte +293 -293
  21. package/dist/SvForm.svelte +437 -437
  22. package/dist/SvGrid.css +2814 -2804
  23. package/dist/SvGrid.svelte +3490 -3513
  24. package/dist/SvGridChart.svelte +1716 -1724
  25. package/dist/SvGridChartPanel.svelte +485 -485
  26. package/dist/SvGridChartView.svelte +70 -70
  27. package/dist/SvGridDropdown.svelte +728 -728
  28. package/dist/SvGridSelect.svelte +266 -268
  29. package/dist/SvGroupCell.svelte +116 -116
  30. package/dist/SvKbd.svelte +1 -1
  31. package/dist/SvList.svelte +1 -1
  32. package/dist/SvListBox.svelte +326 -326
  33. package/dist/SvMaskedInput.svelte +122 -122
  34. package/dist/SvMenu.svelte +124 -124
  35. package/dist/SvMenuList.svelte +146 -146
  36. package/dist/SvMenubar.svelte +1 -1
  37. package/dist/SvMultiSelect.svelte +289 -290
  38. package/dist/SvNumberInput.svelte +168 -168
  39. package/dist/SvOtpInput.svelte +158 -158
  40. package/dist/SvPasswordInput.svelte +151 -151
  41. package/dist/SvPhoneInput.svelte +133 -133
  42. package/dist/SvPopover.svelte +197 -197
  43. package/dist/SvProgress.svelte +116 -116
  44. package/dist/SvRadioGroup.svelte +107 -107
  45. package/dist/SvRating.svelte +112 -112
  46. package/dist/SvResult.svelte +73 -73
  47. package/dist/SvRichText.svelte +211 -207
  48. package/dist/SvRowGroupPanel.svelte +170 -170
  49. package/dist/SvScrollArea.svelte +61 -61
  50. package/dist/SvSlider.svelte +200 -200
  51. package/dist/SvSwitchButton.svelte +108 -108
  52. package/dist/SvTagsInput.svelte +112 -112
  53. package/dist/SvTextInput.svelte +147 -147
  54. package/dist/SvTimePicker.svelte +245 -245
  55. package/dist/SvToaster.svelte +159 -159
  56. package/dist/SvToggleButton.svelte +85 -85
  57. package/dist/SvTooltip.svelte +161 -161
  58. package/dist/SvTour.svelte +208 -204
  59. package/dist/SvTree.svelte +444 -444
  60. package/dist/SvTreeSelect.svelte +235 -237
  61. package/dist/cdn/{GridMenus-C6ixSGWW.js → GridMenus-BpVcKyUr.js} +5 -7
  62. package/dist/cdn/{GridMenus-Cyk3qpJ7.js → GridMenus-CeXL5IW4.js} +153 -152
  63. package/dist/cdn/{SvDateTimePicker-ClqtVIj3.js → SvDateTimePicker-DSUhIta8.js} +165 -165
  64. package/dist/cdn/{SvDateTimePicker-CdqaP61H.js → SvDateTimePicker-h9kPyszT.js} +572 -555
  65. package/dist/cdn/{SvGridChart-BcLCYvw9.js → SvGridChart-Bs2GIR2Q.js} +28 -21
  66. package/dist/cdn/{SvGridChart-BhnFdLd0.js → SvGridChart-CwhFz7GV.js} +2 -2
  67. package/dist/cdn/{SvGridChartPanel-Cmx9DHAS.js → SvGridChartPanel-1WXuStzM.js} +2 -2
  68. package/dist/cdn/{SvGridChartPanel-DvjwxLvK.js → SvGridChartPanel-e5_nqNP9.js} +22 -14
  69. package/dist/cdn/{SvGridChartView-PwqI4s02.js → SvGridChartView-SmPW10dI.js} +3 -3
  70. package/dist/cdn/{SvGridChartView-B40DTJSX.js → SvGridChartView-eSPuJE6g.js} +2 -2
  71. package/dist/cdn/{SvGridDropdown-D0VdjeR8.js → SvGridDropdown-B1ZcLpgs.js} +1 -1
  72. package/dist/cdn/{SvGridDropdown-Dh-2ej8j.js → SvGridDropdown-CtdbHcIS.js} +6 -5
  73. package/dist/cdn/{chart-T1usDN0o.js → chart-i4XcXyHJ.js} +12 -10
  74. package/dist/cdn/disclose-version-Dr7rEVv-.js +2866 -0
  75. package/dist/cdn/{export-format-JT5pWVT8.js → export-format-Cv1Dll6k.js} +66 -245
  76. package/dist/cdn/{src-CgD-wiuS.js → src-DbeN1ReZ.js} +9223 -8944
  77. package/dist/cdn/{src-BgHjWF0Q.js → src-DmEQFW5_.js} +9023 -8828
  78. package/dist/cdn/svgrid.js +9 -9
  79. package/dist/cdn/svgrid.svelte-external.js +9 -9
  80. package/dist/chart-export.js +8 -8
  81. package/dist/chart.d.ts +2 -0
  82. package/dist/chart.js +1 -4
  83. package/dist/columns.js +9 -2
  84. package/dist/createMenu.svelte.js +0 -1
  85. package/dist/createPopoverSelect.svelte.d.ts +2 -2
  86. package/dist/editing.js +1 -1
  87. package/dist/export-format.js +3 -0
  88. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/_svelte_metadata.json +1 -0
  89. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/_metadata.json +178 -0
  90. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js +3843 -0
  91. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js.map +1 -0
  92. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js +23 -0
  93. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js.map +1 -0
  94. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js +1925 -0
  95. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js.map +1 -0
  96. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js +206 -0
  97. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js.map +1 -0
  98. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js +20 -0
  99. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js.map +1 -0
  100. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js +264 -0
  101. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js.map +1 -0
  102. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js +698 -0
  103. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js.map +1 -0
  104. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/package.json +3 -0
  105. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js +135 -0
  106. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js.map +1 -0
  107. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js +57 -0
  108. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js.map +1 -0
  109. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_attachments.js +2 -0
  110. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js +46691 -0
  111. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js.map +1 -0
  112. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js +239 -0
  113. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js.map +1 -0
  114. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_events.js +2 -0
  115. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js +6 -0
  116. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js.map +1 -0
  117. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_client.js +7 -0
  118. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js +6 -0
  119. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js.map +1 -0
  120. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js +7 -0
  121. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js.map +1 -0
  122. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js +7 -0
  123. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js.map +1 -0
  124. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js +7 -0
  125. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js.map +1 -0
  126. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_server.js +6 -0
  127. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js +85 -0
  128. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js.map +1 -0
  129. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js +561 -0
  130. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js.map +1 -0
  131. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js +26 -0
  132. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js.map +1 -0
  133. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js +124 -0
  134. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js.map +1 -0
  135. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_server.js +2 -0
  136. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js +91 -0
  137. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js.map +1 -0
  138. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js +242 -0
  139. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js.map +1 -0
  140. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js +497 -0
  141. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js.map +1 -0
  142. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js +4929 -0
  143. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js.map +1 -0
  144. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js +192 -0
  145. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js.map +1 -0
  146. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js +10 -0
  147. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js.map +1 -0
  148. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js +140 -0
  149. package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js.map +1 -0
  150. package/dist/selection.js +0 -1
  151. package/package.json +11 -10
  152. package/src/DockNodeView.svelte +1 -1
  153. package/src/FlexRender.svelte +96 -96
  154. package/src/GridFooter.svelte +178 -179
  155. package/src/GridMenus.svelte +705 -782
  156. package/src/SvAutoComplete.svelte +165 -165
  157. package/src/SvAvatar.svelte +75 -75
  158. package/src/SvCalendar.svelte +503 -503
  159. package/src/SvCalendar.test.ts +226 -226
  160. package/src/SvCarousel.svelte +141 -141
  161. package/src/SvCheckBox.svelte +102 -102
  162. package/src/SvCircularProgress.svelte +109 -109
  163. package/src/SvColorInput.svelte +181 -181
  164. package/src/SvComboBox.svelte +275 -275
  165. package/src/SvContextMenu.svelte +116 -116
  166. package/src/SvCountryInput.svelte +160 -160
  167. package/src/SvDateRangeInput.svelte +1 -1
  168. package/src/SvDrawer.svelte +254 -254
  169. package/src/SvDropDownList.svelte +374 -374
  170. package/src/SvDurationInput.svelte +126 -126
  171. package/src/SvField.svelte +293 -293
  172. package/src/SvForm.svelte +437 -437
  173. package/src/SvForm.test.ts +411 -411
  174. package/src/SvGrid.controller.svelte.ts +3680 -3685
  175. package/src/SvGrid.css +2814 -2804
  176. package/src/SvGrid.svelte +3490 -3513
  177. package/src/SvGrid.types.ts +1708 -1709
  178. package/src/SvGridChart.svelte +1716 -1724
  179. package/src/SvGridChartPanel.svelte +485 -485
  180. package/src/SvGridChartView.svelte +70 -70
  181. package/src/SvGridDropdown.svelte +728 -728
  182. package/src/SvGridSelect.svelte +266 -268
  183. package/src/SvGroupCell.svelte +116 -116
  184. package/src/SvKbd.svelte +1 -1
  185. package/src/SvList.svelte +1 -1
  186. package/src/SvListBox.svelte +326 -326
  187. package/src/SvMaskedInput.svelte +122 -122
  188. package/src/SvMenu.svelte +124 -124
  189. package/src/SvMenu.test.ts +97 -97
  190. package/src/SvMenuList.svelte +146 -146
  191. package/src/SvMenubar.svelte +1 -1
  192. package/src/SvMultiSelect.svelte +289 -290
  193. package/src/SvNumberInput.svelte +168 -168
  194. package/src/SvOtpInput.svelte +158 -158
  195. package/src/SvPasswordInput.svelte +151 -151
  196. package/src/SvPhoneInput.svelte +133 -133
  197. package/src/SvPopover.svelte +197 -197
  198. package/src/SvProgress.svelte +116 -116
  199. package/src/SvRadioGroup.svelte +107 -107
  200. package/src/SvRating.svelte +112 -112
  201. package/src/SvResult.svelte +73 -73
  202. package/src/SvRichText.svelte +211 -207
  203. package/src/SvRowGroupPanel.svelte +170 -170
  204. package/src/SvScrollArea.svelte +61 -61
  205. package/src/SvSlider.svelte +200 -200
  206. package/src/SvSwitchButton.svelte +108 -108
  207. package/src/SvTagsInput.svelte +112 -112
  208. package/src/SvTextInput.svelte +147 -147
  209. package/src/SvTimePicker.svelte +245 -245
  210. package/src/SvToaster.svelte +159 -159
  211. package/src/SvToaster.test.ts +95 -95
  212. package/src/SvToggleButton.svelte +85 -85
  213. package/src/SvTooltip.svelte +161 -161
  214. package/src/SvTour.svelte +208 -204
  215. package/src/SvTree.svelte +444 -444
  216. package/src/SvTreeSelect.svelte +235 -237
  217. package/src/a11y/dismissable.test.ts +119 -119
  218. package/src/a11y/dismissable.ts +114 -114
  219. package/src/a11y.contract.test.ts +49 -49
  220. package/src/a11y.test.ts +59 -59
  221. package/src/a11y.ts +61 -61
  222. package/src/ai.test.ts +502 -502
  223. package/src/ai.ts +1391 -1391
  224. package/src/build-api.coverage.test.ts +633 -633
  225. package/src/build-api.ts +805 -910
  226. package/src/builtin-editors.grid.test.ts +85 -85
  227. package/src/cell-formatting.test.ts +1 -1
  228. package/src/cell-formatting.ts +169 -169
  229. package/src/cell-render.test.ts +513 -513
  230. package/src/cell-render.ts +496 -590
  231. package/src/cell-values.ts +118 -118
  232. package/src/chart-export.ts +201 -201
  233. package/src/chart-view.svelte.ts +36 -36
  234. package/src/chart.ts +2295 -2296
  235. package/src/clipboard.ts +0 -102
  236. package/src/collaboration.test.ts +104 -104
  237. package/src/collaboration.ts +167 -167
  238. package/src/columns.ts +7 -117
  239. package/src/core.performance.test.ts +30 -30
  240. package/src/core.ts +1261 -1261
  241. package/src/createAutocomplete.svelte.ts +132 -132
  242. package/src/createCombobox.svelte.ts +191 -191
  243. package/src/createCountryInput.svelte.ts +157 -157
  244. package/src/createDropdownList.svelte.ts +168 -168
  245. package/src/createForm.svelte.ts +386 -386
  246. package/src/createGrid.svelte.ts +42 -42
  247. package/src/createGrid.test.ts +10 -10
  248. package/src/createGridState.svelte.ts +17 -17
  249. package/src/createListbox.svelte.ts +250 -250
  250. package/src/createMenu.svelte.ts +224 -225
  251. package/src/createPopoverSelect.svelte.ts +213 -213
  252. package/src/createSlider.svelte.ts +191 -191
  253. package/src/createTooltip.svelte.ts +144 -144
  254. package/src/createTree.svelte.ts +319 -319
  255. package/src/editing.test.ts +949 -949
  256. package/src/editing.ts +606 -709
  257. package/src/editor-contract.ts +164 -164
  258. package/src/editor-registry.grid.test.ts +144 -146
  259. package/src/editor-registry.ts +122 -122
  260. package/src/export-data-api.test.ts +126 -126
  261. package/src/export-format.test.ts +107 -107
  262. package/src/export-format.ts +601 -598
  263. package/src/features.ts +0 -90
  264. package/src/filter-operators.ts +157 -157
  265. package/src/flex-render.ts +3 -3
  266. package/src/form-field.ts +127 -127
  267. package/src/group-display.test.ts +167 -167
  268. package/src/group-display.ts +200 -200
  269. package/src/index.ts +724 -724
  270. package/src/js-scroller.svelte.ts +173 -173
  271. package/src/keyboard-handlers.coverage.test.ts +1 -1
  272. package/src/keyboard-handlers.ts +270 -390
  273. package/src/keyboard.test.ts +59 -59
  274. package/src/keyboard.ts +97 -97
  275. package/src/list-nav.test.ts +49 -49
  276. package/src/list-nav.ts +29 -29
  277. package/src/list-option.test.ts +56 -56
  278. package/src/list-option.ts +172 -172
  279. package/src/menus.test.ts +0 -1
  280. package/src/menus.ts +567 -679
  281. package/src/merge-objects.ts +48 -48
  282. package/src/new-features.test.ts +3 -1
  283. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/_svelte_metadata.json +1 -0
  284. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/_metadata.json +178 -0
  285. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js +3843 -0
  286. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js.map +1 -0
  287. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js +23 -0
  288. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js.map +1 -0
  289. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js +1925 -0
  290. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js.map +1 -0
  291. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js +206 -0
  292. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js.map +1 -0
  293. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js +20 -0
  294. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js.map +1 -0
  295. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js +264 -0
  296. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js.map +1 -0
  297. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js +698 -0
  298. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js.map +1 -0
  299. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/package.json +3 -0
  300. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js +135 -0
  301. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js.map +1 -0
  302. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js +57 -0
  303. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js.map +1 -0
  304. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_attachments.js +2 -0
  305. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js +46691 -0
  306. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js.map +1 -0
  307. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js +239 -0
  308. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js.map +1 -0
  309. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_events.js +2 -0
  310. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js +6 -0
  311. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js.map +1 -0
  312. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_client.js +7 -0
  313. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js +6 -0
  314. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js.map +1 -0
  315. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js +7 -0
  316. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js.map +1 -0
  317. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js +7 -0
  318. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js.map +1 -0
  319. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js +7 -0
  320. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js.map +1 -0
  321. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_server.js +6 -0
  322. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js +85 -0
  323. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js.map +1 -0
  324. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js +561 -0
  325. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js.map +1 -0
  326. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js +26 -0
  327. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js.map +1 -0
  328. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js +124 -0
  329. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js.map +1 -0
  330. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_server.js +2 -0
  331. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js +91 -0
  332. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js.map +1 -0
  333. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js +242 -0
  334. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js.map +1 -0
  335. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js +497 -0
  336. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js.map +1 -0
  337. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js +4929 -0
  338. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js.map +1 -0
  339. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js +192 -0
  340. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js.map +1 -0
  341. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js +10 -0
  342. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js.map +1 -0
  343. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js +140 -0
  344. package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js.map +1 -0
  345. package/src/overlays.test.ts +90 -90
  346. package/src/render-component.ts +28 -28
  347. package/src/row-drag.test.ts +1 -1
  348. package/src/row-resize.test.ts +1 -2
  349. package/src/row-resize.ts +210 -210
  350. package/src/scheduler-model.test.ts +562 -562
  351. package/src/scheduler-model.ts +872 -872
  352. package/src/scroll-sync.test.ts +4 -7
  353. package/src/scroll-sync.ts +0 -122
  354. package/src/selection.test.ts +754 -754
  355. package/src/selection.ts +491 -600
  356. package/src/server-data-source.test.ts +289 -289
  357. package/src/server-data-source.ts +413 -413
  358. package/src/server-group-model.test.ts +2 -2
  359. package/src/sparkline.test.ts +68 -68
  360. package/src/sparkline.ts +169 -169
  361. package/src/spreadsheet.test.ts +488 -488
  362. package/src/spreadsheet.ts +312 -312
  363. package/src/static-functions.ts +11 -11
  364. package/src/subscribe.ts +38 -38
  365. package/src/summaries.ts +0 -112
  366. package/src/svgrid-wrapper.types.ts +526 -526
  367. package/src/svgrid.async-editor-options.test.ts +271 -271
  368. package/src/svgrid.auto-row-height.test.ts +204 -204
  369. package/src/svgrid.behavior.test.ts +705 -706
  370. package/src/svgrid.charting.test.ts +534 -534
  371. package/src/svgrid.column-reorder.test.ts +0 -8
  372. package/src/svgrid.comments-autocomplete.test.ts +123 -123
  373. package/src/svgrid.context-menu.test.ts +147 -147
  374. package/src/svgrid.features.test.ts +157 -157
  375. package/src/svgrid.filter-depth.test.ts +163 -163
  376. package/src/svgrid.filter-menu-listbox.svelte.test.ts +322 -322
  377. package/src/svgrid.filter-menu-scroll.test.ts +112 -112
  378. package/src/svgrid.footer-pagesize.svelte.test.ts +86 -0
  379. package/src/svgrid.grand-total.test.ts +188 -188
  380. package/src/svgrid.group-display-mode.test.ts +171 -171
  381. package/src/svgrid.group-footers.test.ts +121 -121
  382. package/src/svgrid.group-pagination.test.ts +153 -153
  383. package/src/svgrid.new-features.wrapper.test.ts +251 -251
  384. package/src/svgrid.tree-data.test.ts +186 -186
  385. package/src/svgrid.wrapper.test.ts +40 -40
  386. package/src/svgriddropdown.async-panel.svelte.test.ts +195 -195
  387. package/src/test-setup.ts +62 -62
  388. package/src/themes/index.ts +257 -257
  389. package/src/toast-store.svelte.ts +246 -246
  390. package/src/toast-store.test.ts +147 -147
  391. package/src/tree-row-model.test.ts +168 -169
  392. package/src/ui-buttons.test.ts +144 -144
  393. package/src/ui-inputs.test.ts +118 -118
  394. package/src/ui-localization.test.ts +113 -113
  395. package/src/ui-range.test.ts +70 -70
  396. package/src/ui-selection.test.ts +155 -155
  397. package/src/ui-tier1.test.ts +142 -142
  398. package/src/virtual.test.ts +88 -88
  399. package/src/virtualization/column-virtualizer.test.ts +27 -27
  400. package/src/virtualization/column-virtualizer.ts +30 -30
  401. package/src/virtualization/svelte-virtualizer.svelte.ts +26 -26
  402. package/src/virtualization/types.ts +30 -30
  403. package/src/virtualization/virtualizer.test.ts +47 -47
  404. package/src/virtualization/virtualizer.ts +296 -296
  405. package/dist/cdn/disclose-version-DoD9AFD_.js +0 -2958
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-client-B0ZUlbSQ.js","names":["#instance","#events"],"sources":["../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/client/dom/reconciler.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/client/dom/template.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/client/render.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/client/dom/legacy/event-modifiers.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/legacy/legacy-client.js"],"sourcesContent":["import { create_element } from './operations.js';\n\nconst policy =\n\t// We gotta write it like this because after downleveling the pure comment may end up in the wrong location\n\tglobalThis?.window?.trustedTypes &&\n\t/* @__PURE__ */ globalThis.window.trustedTypes.createPolicy('svelte-trusted-html', {\n\t\t/** @param {string} html */\n\t\tcreateHTML: (html) => {\n\t\t\treturn html;\n\t\t}\n\t});\n\n/** @param {string} html */\nexport function create_trusted_html(html) {\n\treturn /** @type {string} */ (policy?.createHTML(html) ?? html);\n}\n\n/**\n * @param {string} html\n */\nexport function create_fragment_from_html(html) {\n\tvar elem = create_element('template');\n\telem.innerHTML = create_trusted_html(html.replaceAll('<!>', '<!---->')); // XHTML compliance\n\treturn elem.content;\n}\n","/** @import { Effect, EffectNodes, TemplateNode } from '#client' */\n/** @import { TemplateStructure } from './types' */\nimport { hydrate_next, hydrate_node, hydrating, set_hydrate_node } from './hydration.js';\nimport {\n\tcreate_text,\n\tget_first_child,\n\tget_next_sibling,\n\tis_firefox,\n\tcreate_element,\n\tcreate_fragment,\n\tcreate_comment,\n\tset_attribute,\n\tmerge_text_nodes\n} from './operations.js';\nimport { create_fragment_from_html } from './reconciler.js';\nimport { active_effect } from '../runtime.js';\nimport {\n\tNAMESPACE_MATHML,\n\tNAMESPACE_SVG,\n\tTEMPLATE_FRAGMENT,\n\tTEMPLATE_USE_IMPORT_NODE,\n\tTEMPLATE_USE_MATHML,\n\tTEMPLATE_USE_SVG\n} from '../../../constants.js';\nimport {\n\tCOMMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE,\n\tIS_XHTML,\n\tREACTION_RAN,\n\tTEXT_NODE\n} from '#client/constants';\n\nconst TEMPLATE_TAG = IS_XHTML ? 'template' : 'TEMPLATE';\nconst SCRIPT_TAG = IS_XHTML ? 'script' : 'SCRIPT';\n\n/**\n * @param {TemplateNode} start\n * @param {TemplateNode | null} end\n */\nexport function assign_nodes(start, end) {\n\tvar effect = /** @type {Effect} */ (active_effect);\n\tif (effect.nodes === null) {\n\t\teffect.nodes = { start, end, a: null, t: null };\n\t}\n}\n\n/**\n * @param {string} content\n * @param {number} flags\n * @returns {() => Node | Node[]}\n */\n/*#__NO_SIDE_EFFECTS__*/\nexport function from_html(content, flags) {\n\tvar is_fragment = (flags & TEMPLATE_FRAGMENT) !== 0;\n\tvar use_import_node = (flags & TEMPLATE_USE_IMPORT_NODE) !== 0;\n\n\t/** @type {Node} */\n\tvar node;\n\n\t/**\n\t * Whether or not the first item is a text/element node. If not, we need to\n\t * create an additional comment node to act as `effect.nodes.start`\n\t */\n\tvar has_start = !content.startsWith('<!>');\n\n\treturn () => {\n\t\tif (hydrating) {\n\t\t\tassign_nodes(hydrate_node, null);\n\t\t\treturn hydrate_node;\n\t\t}\n\n\t\tif (node === undefined) {\n\t\t\tnode = create_fragment_from_html(has_start ? content : '<!>' + content);\n\t\t\tif (!is_fragment) node = /** @type {TemplateNode} */ (get_first_child(node));\n\t\t}\n\n\t\tvar clone = /** @type {TemplateNode} */ (\n\t\t\tuse_import_node || is_firefox ? document.importNode(node, true) : node.cloneNode(true)\n\t\t);\n\n\t\tif (is_fragment) {\n\t\t\tvar start = /** @type {TemplateNode} */ (get_first_child(clone));\n\t\t\tvar end = /** @type {TemplateNode} */ (clone.lastChild);\n\n\t\t\tassign_nodes(start, end);\n\t\t} else {\n\t\t\tassign_nodes(clone, clone);\n\t\t}\n\n\t\treturn clone;\n\t};\n}\n\n/**\n * @param {string} content\n * @param {number} flags\n * @param {'svg' | 'math'} ns\n * @returns {() => Node | Node[]}\n */\n/*#__NO_SIDE_EFFECTS__*/\nfunction from_namespace(content, flags, ns = 'svg') {\n\t/**\n\t * Whether or not the first item is a text/element node. If not, we need to\n\t * create an additional comment node to act as `effect.nodes.start`\n\t */\n\tvar has_start = !content.startsWith('<!>');\n\n\tvar is_fragment = (flags & TEMPLATE_FRAGMENT) !== 0;\n\tvar wrapped = `<${ns}>${has_start ? content : '<!>' + content}</${ns}>`;\n\n\t/** @type {Element | DocumentFragment} */\n\tvar node;\n\n\treturn () => {\n\t\tif (hydrating) {\n\t\t\tassign_nodes(hydrate_node, null);\n\t\t\treturn hydrate_node;\n\t\t}\n\n\t\tif (!node) {\n\t\t\tvar fragment = /** @type {DocumentFragment} */ (create_fragment_from_html(wrapped));\n\t\t\tvar root = /** @type {Element} */ (get_first_child(fragment));\n\n\t\t\tif (is_fragment) {\n\t\t\t\tnode = document.createDocumentFragment();\n\t\t\t\twhile (get_first_child(root)) {\n\t\t\t\t\tnode.appendChild(/** @type {TemplateNode} */ (get_first_child(root)));\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnode = /** @type {Element} */ (get_first_child(root));\n\t\t\t}\n\t\t}\n\n\t\tvar clone = /** @type {TemplateNode} */ (node.cloneNode(true));\n\n\t\tif (is_fragment) {\n\t\t\tvar start = /** @type {TemplateNode} */ (get_first_child(clone));\n\t\t\tvar end = /** @type {TemplateNode} */ (clone.lastChild);\n\n\t\t\tassign_nodes(start, end);\n\t\t} else {\n\t\t\tassign_nodes(clone, clone);\n\t\t}\n\n\t\treturn clone;\n\t};\n}\n\n/**\n * @param {string} content\n * @param {number} flags\n */\n/*#__NO_SIDE_EFFECTS__*/\nexport function from_svg(content, flags) {\n\treturn from_namespace(content, flags, 'svg');\n}\n\n/**\n * @param {string} content\n * @param {number} flags\n */\n/*#__NO_SIDE_EFFECTS__*/\nexport function from_mathml(content, flags) {\n\treturn from_namespace(content, flags, 'math');\n}\n\n/**\n * @param {TemplateStructure[]} structure\n * @param {typeof NAMESPACE_SVG | typeof NAMESPACE_MATHML | undefined} [ns]\n */\nfunction fragment_from_tree(structure, ns) {\n\tvar fragment = create_fragment();\n\n\tfor (var item of structure) {\n\t\tif (typeof item === 'string') {\n\t\t\tfragment.append(create_text(item));\n\t\t\tcontinue;\n\t\t}\n\n\t\t// if `preserveComments === true`, comments are represented as `['// <data>']`\n\t\tif (item === undefined || item[0][0] === '/') {\n\t\t\tfragment.append(create_comment(item ? item[0].slice(3) : ''));\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst [name, attributes, ...children] = item;\n\n\t\tconst namespace = name === 'svg' ? NAMESPACE_SVG : name === 'math' ? NAMESPACE_MATHML : ns;\n\n\t\tvar element = create_element(name, namespace, attributes?.is);\n\n\t\tfor (var key in attributes) {\n\t\t\tset_attribute(element, key, attributes[key]);\n\t\t}\n\n\t\tif (children.length > 0) {\n\t\t\tvar target =\n\t\t\t\telement.nodeName === TEMPLATE_TAG\n\t\t\t\t\t? /** @type {HTMLTemplateElement} */ (element).content\n\t\t\t\t\t: element;\n\n\t\t\ttarget.append(\n\t\t\t\tfragment_from_tree(children, element.nodeName === 'foreignObject' ? undefined : namespace)\n\t\t\t);\n\t\t}\n\n\t\tfragment.append(element);\n\t}\n\n\treturn fragment;\n}\n\n/**\n * @param {TemplateStructure[]} structure\n * @param {number} flags\n * @returns {() => Node | Node[]}\n */\n/*#__NO_SIDE_EFFECTS__*/\nexport function from_tree(structure, flags) {\n\tvar is_fragment = (flags & TEMPLATE_FRAGMENT) !== 0;\n\tvar use_import_node = (flags & TEMPLATE_USE_IMPORT_NODE) !== 0;\n\n\t/** @type {Node} */\n\tvar node;\n\n\treturn () => {\n\t\tif (hydrating) {\n\t\t\tassign_nodes(hydrate_node, null);\n\t\t\treturn hydrate_node;\n\t\t}\n\n\t\tif (node === undefined) {\n\t\t\tconst ns =\n\t\t\t\t(flags & TEMPLATE_USE_SVG) !== 0\n\t\t\t\t\t? NAMESPACE_SVG\n\t\t\t\t\t: (flags & TEMPLATE_USE_MATHML) !== 0\n\t\t\t\t\t\t? NAMESPACE_MATHML\n\t\t\t\t\t\t: undefined;\n\n\t\t\tnode = fragment_from_tree(structure, ns);\n\t\t\tif (!is_fragment) node = /** @type {TemplateNode} */ (get_first_child(node));\n\t\t}\n\n\t\tvar clone = /** @type {TemplateNode} */ (\n\t\t\tuse_import_node || is_firefox ? document.importNode(node, true) : node.cloneNode(true)\n\t\t);\n\n\t\tif (is_fragment) {\n\t\t\tvar start = /** @type {TemplateNode} */ (get_first_child(clone));\n\t\t\tvar end = /** @type {TemplateNode} */ (clone.lastChild);\n\n\t\t\tassign_nodes(start, end);\n\t\t} else {\n\t\t\tassign_nodes(clone, clone);\n\t\t}\n\n\t\treturn clone;\n\t};\n}\n\n/**\n * @param {() => Element | DocumentFragment} fn\n */\nexport function with_script(fn) {\n\treturn () => run_scripts(fn());\n}\n\n/**\n * Creating a document fragment from HTML that contains script tags will not execute\n * the scripts. We need to replace the script tags with new ones so that they are executed.\n * @param {Element | DocumentFragment} node\n * @returns {Node | Node[]}\n */\nfunction run_scripts(node) {\n\t// scripts were SSR'd, in which case they will run\n\tif (hydrating) return node;\n\n\tconst is_fragment = node.nodeType === DOCUMENT_FRAGMENT_NODE;\n\tconst scripts =\n\t\t/** @type {HTMLElement} */ (node).nodeName === SCRIPT_TAG\n\t\t\t? [/** @type {HTMLScriptElement} */ (node)]\n\t\t\t: node.querySelectorAll('script');\n\n\tconst effect = /** @type {Effect & { nodes: EffectNodes }} */ (active_effect);\n\n\tfor (const script of scripts) {\n\t\tconst clone = create_element('script');\n\t\tfor (var attribute of script.attributes) {\n\t\t\tclone.setAttribute(attribute.name, attribute.value);\n\t\t}\n\n\t\tclone.textContent = script.textContent;\n\n\t\t// The script has changed - if it's at the edges, the effect now points at dead nodes\n\t\tif (is_fragment ? node.firstChild === script : node === script) {\n\t\t\teffect.nodes.start = clone;\n\t\t}\n\t\tif (is_fragment ? node.lastChild === script : node === script) {\n\t\t\teffect.nodes.end = clone;\n\t\t}\n\n\t\tscript.replaceWith(clone);\n\t}\n\treturn node;\n}\n\n/**\n * Don't mark this as side-effect-free, hydration needs to walk all nodes\n * @param {any} value\n */\nexport function text(value = '') {\n\tif (!hydrating) {\n\t\tvar t = create_text(value + '');\n\t\tassign_nodes(t, t);\n\t\treturn t;\n\t}\n\n\tvar node = hydrate_node;\n\n\tif (node.nodeType !== TEXT_NODE) {\n\t\t// if an {expression} is empty during SSR, we need to insert an empty text node\n\t\tnode.before((node = create_text()));\n\t\tset_hydrate_node(node);\n\t} else {\n\t\tmerge_text_nodes(/** @type {Text} */ (node));\n\t}\n\n\tassign_nodes(node, node);\n\treturn node;\n}\n\n/**\n * @returns {TemplateNode | DocumentFragment}\n */\nexport function comment() {\n\t// we're not delegating to `template` here for performance reasons\n\tif (hydrating) {\n\t\tassign_nodes(hydrate_node, null);\n\t\treturn hydrate_node;\n\t}\n\n\tvar frag = document.createDocumentFragment();\n\tvar start = document.createComment('');\n\tvar anchor = create_text();\n\tfrag.append(start, anchor);\n\n\tassign_nodes(start, anchor);\n\n\treturn frag;\n}\n\n/**\n * Assign the created (or in hydration mode, traversed) dom elements to the current block\n * and insert the elements into the dom (in client mode).\n * @param {Text | Comment | Element} anchor\n * @param {DocumentFragment | Element} dom\n */\nexport function append(anchor, dom) {\n\tif (hydrating) {\n\t\tvar effect = /** @type {Effect & { nodes: EffectNodes }} */ (active_effect);\n\n\t\t// When hydrating and outer component and an inner component is async, i.e. blocked on a promise,\n\t\t// then by the time the inner resolves we have already advanced to the end of the hydrated nodes\n\t\t// of the parent component. Check for defined for that reason to avoid rewinding the parent's end marker.\n\t\tif ((effect.f & REACTION_RAN) === 0 || effect.nodes.end === null) {\n\t\t\teffect.nodes.end = hydrate_node;\n\t\t}\n\n\t\thydrate_next();\n\t\treturn;\n\t}\n\n\tif (anchor === null) {\n\t\t// edge case — void `<svelte:element>` with content\n\t\treturn;\n\t}\n\n\tanchor.before(/** @type {Node} */ (dom));\n}\n\n/**\n * Create (or hydrate) an unique UID for the component instance.\n */\nexport function props_id() {\n\tif (\n\t\thydrating &&\n\t\thydrate_node &&\n\t\thydrate_node.nodeType === COMMENT_NODE &&\n\t\thydrate_node.textContent?.startsWith(`$`)\n\t) {\n\t\tconst id = hydrate_node.textContent.substring(1);\n\t\thydrate_next();\n\t\treturn id;\n\t}\n\n\t// @ts-expect-error This way we ensure the id is unique even across Svelte runtimes\n\t(window.__svelte ??= {}).uid ??= 1;\n\n\t// @ts-expect-error\n\treturn `c${window.__svelte.uid++}`;\n}\n","/** @import { ComponentContext, Effect, EffectNodes, TemplateNode } from '#client' */\n/** @import { Component, ComponentType, SvelteComponent, MountOptions } from '../../index.js' */\nimport { DEV } from 'esm-env';\nimport {\n\tclear_text_content,\n\tcreate_text,\n\tget_first_child,\n\tget_next_sibling,\n\tinit_operations\n} from './dom/operations.js';\nimport { HYDRATION_END, HYDRATION_ERROR, HYDRATION_START } from '../../constants.js';\nimport { active_effect } from './runtime.js';\nimport { push, pop, component_context } from './context.js';\nimport { component_root } from './reactivity/effects.js';\nimport { hydrate_node, hydrating, set_hydrate_node, set_hydrating } from './dom/hydration.js';\nimport { array_from } from '../shared/utils.js';\nimport {\n\tall_registered_events,\n\thandle_event_propagation,\n\troot_event_handles\n} from './dom/elements/events.js';\nimport * as w from './warnings.js';\nimport * as e from './errors.js';\nimport { assign_nodes } from './dom/template.js';\nimport { is_passive_event } from '../../utils.js';\nimport { COMMENT_NODE, STATE_SYMBOL, TEXT_CACHE } from './constants.js';\nimport { boundary } from './dom/blocks/boundary.js';\n\n/**\n * This is normally true — block effects should run their intro transitions —\n * but is false during hydration (unless `options.intro` is `true`) and\n * when creating the children of a `<svelte:element>` that just changed tag\n */\nexport let should_intro = true;\n\n/** @param {boolean} value */\nexport function set_should_intro(value) {\n\tshould_intro = value;\n}\n\n/**\n * @param {Element} text\n * @param {string} value\n * @returns {void}\n */\nexport function set_text(text, value) {\n\t// For objects, we apply string coercion (which might make things like $state array references in the template reactive) before diffing\n\tvar str = value == null ? '' : typeof value === 'object' ? `${value}` : value;\n\t// prettier-ignore\n\tif (str !== (/** @type {any} */ (text)[TEXT_CACHE] ??= text.nodeValue)) {\n\t\t/** @type {any} */ (text)[TEXT_CACHE] = str;\n\t\ttext.nodeValue = `${str}`;\n\t}\n}\n\n/**\n * Mounts a component to the given target and returns the exports and potentially the props (if compiled with `accessors: true`) of the component.\n * Transitions will play during the initial render unless the `intro` option is set to `false`.\n *\n * @template {Record<string, any>} Props\n * @template {Record<string, any>} Exports\n * @param {ComponentType<SvelteComponent<Props>> | Component<Props, Exports, any>} component\n * @param {MountOptions<Props>} options\n * @returns {Exports}\n */\nexport function mount(component, options) {\n\treturn _mount(component, options);\n}\n\n/**\n * Hydrates a component on the given target and returns the exports and potentially the props (if compiled with `accessors: true`) of the component\n *\n * @template {Record<string, any>} Props\n * @template {Record<string, any>} Exports\n * @param {ComponentType<SvelteComponent<Props>> | Component<Props, Exports, any>} component\n * @param {{} extends Props ? {\n * \t\ttarget: Document | Element | ShadowRoot;\n * \t\tprops?: Props;\n * \t\tevents?: Record<string, (e: any) => any>;\n * \tcontext?: Map<any, any>;\n * \t\tintro?: boolean;\n * \t\trecover?: boolean;\n *\t\ttransformError?: (error: unknown) => unknown;\n * \t} : {\n * \t\ttarget: Document | Element | ShadowRoot;\n * \t\tprops: Props;\n * \t\tevents?: Record<string, (e: any) => any>;\n * \tcontext?: Map<any, any>;\n * \t\tintro?: boolean;\n * \t\trecover?: boolean;\n *\t\ttransformError?: (error: unknown) => unknown;\n * \t}} options\n * @returns {Exports}\n */\nexport function hydrate(component, options) {\n\tinit_operations();\n\toptions.intro = options.intro ?? false;\n\tconst target = options.target;\n\tconst was_hydrating = hydrating;\n\tconst previous_hydrate_node = hydrate_node;\n\n\ttry {\n\t\tvar anchor = get_first_child(target);\n\n\t\twhile (\n\t\t\tanchor &&\n\t\t\t(anchor.nodeType !== COMMENT_NODE || /** @type {Comment} */ (anchor).data !== HYDRATION_START)\n\t\t) {\n\t\t\tanchor = get_next_sibling(anchor);\n\t\t}\n\n\t\tif (!anchor) {\n\t\t\tthrow HYDRATION_ERROR;\n\t\t}\n\n\t\tset_hydrating(true);\n\t\tset_hydrate_node(/** @type {Comment} */ (anchor));\n\n\t\tconst instance = _mount(component, { ...options, anchor });\n\n\t\tset_hydrating(false);\n\n\t\treturn /** @type {Exports} */ (instance);\n\t} catch (error) {\n\t\t// re-throw Svelte errors - they are certainly not related to hydration\n\t\tif (\n\t\t\terror instanceof Error &&\n\t\t\terror.message.split('\\n').some((line) => line.startsWith('https://svelte.dev/e/'))\n\t\t) {\n\t\t\tthrow error;\n\t\t}\n\t\tif (error !== HYDRATION_ERROR) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn('Failed to hydrate: ', error);\n\t\t}\n\n\t\tif (options.recover === false) {\n\t\t\te.hydration_failed();\n\t\t}\n\n\t\t// If an error occurred above, the operations might not yet have been initialised.\n\t\tinit_operations();\n\t\tclear_text_content(target);\n\n\t\tset_hydrating(false);\n\t\treturn mount(component, options);\n\t} finally {\n\t\tset_hydrating(was_hydrating);\n\t\tset_hydrate_node(previous_hydrate_node);\n\t}\n}\n\n/** @type {Map<EventTarget, Map<string, number>>} */\nconst listeners = new Map();\n\n/**\n * @template {Record<string, any>} Exports\n * @param {ComponentType<SvelteComponent<any>> | Component<any>} Component\n * @param {MountOptions} options\n * @returns {Exports}\n */\nfunction _mount(\n\tComponent,\n\t{ target, anchor, props = {}, events, context, intro = true, transformError }\n) {\n\tinit_operations();\n\n\t/** @type {Exports} */\n\t// @ts-expect-error will be defined because the render effect runs synchronously\n\tvar component = undefined;\n\n\tvar unmount = component_root(() => {\n\t\tvar anchor_node = anchor ?? target.appendChild(create_text());\n\n\t\tboundary(\n\t\t\t/** @type {TemplateNode} */ (anchor_node),\n\t\t\t{\n\t\t\t\tpending: () => {}\n\t\t\t},\n\t\t\t(anchor_node) => {\n\t\t\t\tpush({});\n\t\t\t\tvar ctx = /** @type {ComponentContext} */ (component_context);\n\t\t\t\tif (context) ctx.c = context;\n\n\t\t\t\tif (events) {\n\t\t\t\t\t// We can't spread the object or else we'd lose the state proxy stuff, if it is one\n\t\t\t\t\t/** @type {any} */ (props).$$events = events;\n\t\t\t\t}\n\n\t\t\t\tif (hydrating) {\n\t\t\t\t\tassign_nodes(/** @type {TemplateNode} */ (anchor_node), null);\n\t\t\t\t}\n\n\t\t\t\tshould_intro = intro;\n\t\t\t\t// @ts-expect-error the public typings are not what the actual function looks like\n\t\t\t\tcomponent = Component(anchor_node, props) || {};\n\t\t\t\tshould_intro = true;\n\n\t\t\t\tif (hydrating) {\n\t\t\t\t\t/** @type {Effect & { nodes: EffectNodes }} */ (active_effect).nodes.end = hydrate_node;\n\n\t\t\t\t\tif (\n\t\t\t\t\t\thydrate_node === null ||\n\t\t\t\t\t\thydrate_node.nodeType !== COMMENT_NODE ||\n\t\t\t\t\t\t/** @type {Comment} */ (hydrate_node).data !== HYDRATION_END\n\t\t\t\t\t) {\n\t\t\t\t\t\tw.hydration_mismatch();\n\t\t\t\t\t\tthrow HYDRATION_ERROR;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tpop();\n\t\t\t},\n\t\t\ttransformError\n\t\t);\n\n\t\t// Setup event delegation _after_ component is mounted - if an error would happen during mount, it would otherwise not be cleaned up\n\t\t/** @type {Set<string>} */\n\t\tvar registered_events = new Set();\n\n\t\t/** @param {Array<string>} events */\n\t\tvar event_handle = (events) => {\n\t\t\tfor (var i = 0; i < events.length; i++) {\n\t\t\t\tvar event_name = events[i];\n\n\t\t\t\tif (registered_events.has(event_name)) continue;\n\t\t\t\tregistered_events.add(event_name);\n\n\t\t\t\tvar passive = is_passive_event(event_name);\n\n\t\t\t\t// Add the event listener to both the container and the document.\n\t\t\t\t// The container listener ensures we catch events from within in case\n\t\t\t\t// the outer content stops propagation of the event.\n\t\t\t\t//\n\t\t\t\t// The document listener ensures we catch events that originate from elements that were\n\t\t\t\t// manually moved outside of the container (e.g. via manual portals).\n\t\t\t\tfor (const node of [target, document]) {\n\t\t\t\t\tvar counts = listeners.get(node);\n\n\t\t\t\t\tif (counts === undefined) {\n\t\t\t\t\t\tcounts = new Map();\n\t\t\t\t\t\tlisteners.set(node, counts);\n\t\t\t\t\t}\n\n\t\t\t\t\tvar count = counts.get(event_name);\n\n\t\t\t\t\tif (count === undefined) {\n\t\t\t\t\t\tnode.addEventListener(event_name, handle_event_propagation, { passive });\n\t\t\t\t\t\tcounts.set(event_name, 1);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcounts.set(event_name, count + 1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tevent_handle(array_from(all_registered_events));\n\t\troot_event_handles.add(event_handle);\n\n\t\treturn () => {\n\t\t\tfor (var event_name of registered_events) {\n\t\t\t\tfor (const node of [target, document]) {\n\t\t\t\t\tvar counts = /** @type {Map<string, number>} */ (listeners.get(node));\n\t\t\t\t\tvar count = /** @type {number} */ (counts.get(event_name));\n\n\t\t\t\t\tif (--count == 0) {\n\t\t\t\t\t\tnode.removeEventListener(event_name, handle_event_propagation);\n\t\t\t\t\t\tcounts.delete(event_name);\n\n\t\t\t\t\t\tif (counts.size === 0) {\n\t\t\t\t\t\t\tlisteners.delete(node);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcounts.set(event_name, count);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\troot_event_handles.delete(event_handle);\n\n\t\t\tif (anchor_node !== anchor) {\n\t\t\t\tanchor_node.parentNode?.removeChild(anchor_node);\n\t\t\t}\n\t\t};\n\t});\n\n\tmounted_components.set(component, unmount);\n\treturn component;\n}\n\n/**\n * References of the components that were mounted or hydrated.\n * Uses a `WeakMap` to avoid memory leaks.\n */\nlet mounted_components = new WeakMap();\n\n/**\n * Unmounts a component that was previously mounted using `mount` or `hydrate`.\n *\n * Since 5.13.0, if `options.outro` is `true`, [transitions](https://svelte.dev/docs/svelte/transition) will play before the component is removed from the DOM.\n *\n * Returns a `Promise` that resolves after transitions have completed if `options.outro` is true, or immediately otherwise (prior to 5.13.0, returns `void`).\n *\n * ```js\n * import { mount, unmount } from 'svelte';\n * import App from './App.svelte';\n *\n * const app = mount(App, { target: document.body });\n *\n * // later...\n * unmount(app, { outro: true });\n * ```\n * @param {Record<string, any>} component\n * @param {{ outro?: boolean }} [options]\n * @returns {Promise<void>}\n */\nexport function unmount(component, options) {\n\tconst fn = mounted_components.get(component);\n\n\tif (fn) {\n\t\tmounted_components.delete(component);\n\t\treturn fn(options);\n\t}\n\n\tif (DEV) {\n\t\tif (STATE_SYMBOL in component) {\n\t\t\tw.state_proxy_unmount();\n\t\t} else {\n\t\t\tw.lifecycle_double_unmount();\n\t\t}\n\t}\n\n\treturn Promise.resolve();\n}\n","import { noop } from '../../../shared/utils.js';\nimport { user_pre_effect } from '../../reactivity/effects.js';\nimport { on } from '../elements/events.js';\n\n/**\n * Substitute for the `trusted` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function trusted(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tif (event.isTrusted) {\n\t\t\t// @ts-ignore\n\t\t\tfn?.apply(this, args);\n\t\t}\n\t};\n}\n\n/**\n * Substitute for the `self` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function self(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\t// @ts-ignore\n\t\tif (event.target === this) {\n\t\t\t// @ts-ignore\n\t\t\tfn?.apply(this, args);\n\t\t}\n\t};\n}\n\n/**\n * Substitute for the `stopPropagation` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function stopPropagation(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tevent.stopPropagation();\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `once` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function once(fn) {\n\tvar ran = false;\n\n\treturn function (...args) {\n\t\tif (ran) return;\n\t\tran = true;\n\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `stopImmediatePropagation` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function stopImmediatePropagation(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tevent.stopImmediatePropagation();\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `preventDefault` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function preventDefault(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tevent.preventDefault();\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `passive` event modifier, implemented as an action\n * @deprecated\n * @param {HTMLElement} node\n * @param {[event: string, handler: () => EventListener]} options\n */\nexport function passive(node, [event, handler]) {\n\tuser_pre_effect(() => {\n\t\treturn on(node, event, handler() ?? noop, {\n\t\t\tpassive: true\n\t\t});\n\t});\n}\n\n/**\n * Substitute for the `nonpassive` event modifier, implemented as an action\n * @deprecated\n * @param {HTMLElement} node\n * @param {[event: string, handler: () => EventListener]} options\n */\nexport function nonpassive(node, [event, handler]) {\n\tuser_pre_effect(() => {\n\t\treturn on(node, event, handler() ?? noop, {\n\t\t\tpassive: false\n\t\t});\n\t});\n}\n","/** @import { ComponentConstructorOptions, ComponentType, SvelteComponent, Component } from 'svelte' */\nimport { DIRTY, LEGACY_PROPS, MAYBE_DIRTY } from '../internal/client/constants.js';\nimport { user_pre_effect } from '../internal/client/reactivity/effects.js';\nimport { mutable_source, set } from '../internal/client/reactivity/sources.js';\nimport { hydrate, mount, unmount } from '../internal/client/render.js';\nimport { active_effect, get } from '../internal/client/runtime.js';\nimport { flushSync } from '../internal/client/reactivity/batch.js';\nimport { define_property, is_array } from '../internal/shared/utils.js';\nimport * as e from '../internal/client/errors.js';\nimport * as w from '../internal/client/warnings.js';\nimport { DEV } from 'esm-env';\nimport { FILENAME } from '../constants.js';\nimport { component_context, dev_current_component_function } from '../internal/client/context.js';\nimport { async_mode_flag } from '../internal/flags/index.js';\nimport { set_signal_status } from '../internal/client/reactivity/status.js';\n\n/**\n * Takes the same options as a Svelte 4 component and the component function and returns a Svelte 4 compatible component.\n *\n * @deprecated Use this only as a temporary solution to migrate your imperative component code to Svelte 5.\n *\n * @template {Record<string, any>} Props\n * @template {Record<string, any>} Exports\n * @template {Record<string, any>} Events\n * @template {Record<string, any>} Slots\n *\n * @param {ComponentConstructorOptions<Props> & {\n * \tcomponent: ComponentType<SvelteComponent<Props, Events, Slots>> | Component<Props>;\n * }} options\n * @returns {SvelteComponent<Props, Events, Slots> & Exports}\n */\nexport function createClassComponent(options) {\n\t// @ts-expect-error $$prop_def etc are not actually defined\n\treturn new Svelte4Component(options);\n}\n\n/**\n * Takes the component function and returns a Svelte 4 compatible component constructor.\n *\n * @deprecated Use this only as a temporary solution to migrate your imperative component code to Svelte 5.\n *\n * @template {Record<string, any>} Props\n * @template {Record<string, any>} Exports\n * @template {Record<string, any>} Events\n * @template {Record<string, any>} Slots\n *\n * @param {SvelteComponent<Props, Events, Slots> | Component<Props>} component\n * @returns {ComponentType<SvelteComponent<Props, Events, Slots> & Exports>}\n */\nexport function asClassComponent(component) {\n\t// @ts-expect-error $$prop_def etc are not actually defined\n\treturn class extends Svelte4Component {\n\t\t/** @param {any} options */\n\t\tconstructor(options) {\n\t\t\tsuper({\n\t\t\t\tcomponent,\n\t\t\t\t...options\n\t\t\t});\n\t\t}\n\t};\n}\n\n/**\n * Support using the component as both a class and function during the transition period\n * @typedef {{new (o: ComponentConstructorOptions): SvelteComponent;(...args: Parameters<Component<Record<string, any>>>): ReturnType<Component<Record<string, any>, Record<string, any>>>;}} LegacyComponentType\n */\n\nclass Svelte4Component {\n\t/** @type {any} */\n\t#events;\n\n\t/** @type {Record<string, any>} */\n\t#instance;\n\n\t/**\n\t * @param {ComponentConstructorOptions & {\n\t * component: any;\n\t * }} options\n\t */\n\tconstructor(options) {\n\t\tvar sources = new Map();\n\n\t\t/**\n\t\t * @param {string | symbol} key\n\t\t * @param {unknown} value\n\t\t */\n\t\tvar add_source = (key, value) => {\n\t\t\tvar s = mutable_source(value, false, false);\n\t\t\tsources.set(key, s);\n\t\t\treturn s;\n\t\t};\n\n\t\t// Replicate coarse-grained props through a proxy that has a version source for\n\t\t// each property, which is incremented on updates to the property itself. Do not\n\t\t// use our $state proxy because that one has fine-grained reactivity.\n\t\tconst props = new Proxy(\n\t\t\t{ ...(options.props || {}), $$events: {} },\n\t\t\t{\n\t\t\t\tget(target, prop) {\n\t\t\t\t\treturn get(sources.get(prop) ?? add_source(prop, Reflect.get(target, prop)));\n\t\t\t\t},\n\t\t\t\thas(target, prop) {\n\t\t\t\t\t// Necessary to not throw \"invalid binding\" validation errors on the component side\n\t\t\t\t\tif (prop === LEGACY_PROPS) return true;\n\n\t\t\t\t\tget(sources.get(prop) ?? add_source(prop, Reflect.get(target, prop)));\n\t\t\t\t\treturn Reflect.has(target, prop);\n\t\t\t\t},\n\t\t\t\tset(target, prop, value) {\n\t\t\t\t\tset(sources.get(prop) ?? add_source(prop, value), value);\n\t\t\t\t\treturn Reflect.set(target, prop, value);\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tthis.#instance = (options.hydrate ? hydrate : mount)(options.component, {\n\t\t\ttarget: options.target,\n\t\t\tanchor: options.anchor,\n\t\t\tprops,\n\t\t\tcontext: options.context,\n\t\t\tintro: options.intro ?? false,\n\t\t\trecover: options.recover,\n\t\t\ttransformError: options.transformError\n\t\t});\n\n\t\t// We don't flushSync for custom element wrappers or if the user doesn't want it,\n\t\t// or if we're in async mode since `flushSync()` will fail\n\t\tif (!async_mode_flag && (!options?.props?.$$host || options.sync === false)) {\n\t\t\tflushSync();\n\t\t}\n\n\t\tthis.#events = props.$$events;\n\n\t\tfor (const key of Object.keys(this.#instance)) {\n\t\t\tif (key === '$set' || key === '$destroy' || key === '$on') continue;\n\t\t\tdefine_property(this, key, {\n\t\t\t\tget() {\n\t\t\t\t\treturn this.#instance[key];\n\t\t\t\t},\n\t\t\t\t/** @param {any} value */\n\t\t\t\tset(value) {\n\t\t\t\t\tthis.#instance[key] = value;\n\t\t\t\t},\n\t\t\t\tenumerable: true\n\t\t\t});\n\t\t}\n\n\t\tthis.#instance.$set = /** @param {Record<string, any>} next */ (next) => {\n\t\t\tObject.assign(props, next);\n\t\t};\n\n\t\tthis.#instance.$destroy = () => {\n\t\t\tunmount(this.#instance);\n\t\t};\n\t}\n\n\t/** @param {Record<string, any>} props */\n\t$set(props) {\n\t\tthis.#instance.$set(props);\n\t}\n\n\t/**\n\t * @param {string} event\n\t * @param {(...args: any[]) => any} callback\n\t * @returns {any}\n\t */\n\t$on(event, callback) {\n\t\tthis.#events[event] = this.#events[event] || [];\n\n\t\t/** @param {any[]} args */\n\t\tconst cb = (...args) => callback.call(this, ...args);\n\t\tthis.#events[event].push(cb);\n\t\treturn () => {\n\t\t\tthis.#events[event] = this.#events[event].filter(/** @param {any} fn */ (fn) => fn !== cb);\n\t\t};\n\t}\n\n\t$destroy() {\n\t\tthis.#instance.$destroy();\n\t}\n}\n\n/**\n * Runs the given function once immediately on the server, and works like `$effect.pre` on the client.\n *\n * @deprecated Use this only as a temporary solution to migrate your component code to Svelte 5.\n * @param {() => void | (() => void)} fn\n * @returns {void}\n */\nexport function run(fn) {\n\tuser_pre_effect(() => {\n\t\tfn();\n\t\tvar effect = /** @type {import('#client').Effect} */ (active_effect);\n\t\t// If the effect is immediately made dirty again, mark it as maybe dirty to emulate legacy behaviour\n\t\tif ((effect.f & DIRTY) !== 0) {\n\t\t\tlet filename = \"a file (we can't know which one)\";\n\t\t\tif (DEV) {\n\t\t\t\t// @ts-ignore\n\t\t\t\tfilename = dev_current_component_function?.[FILENAME] ?? filename;\n\t\t\t}\n\t\t\tw.legacy_recursive_reactive_block(filename);\n\t\t\tset_signal_status(effect, MAYBE_DIRTY);\n\t\t}\n\t});\n}\n\n/**\n * Function to mimic the multiple listeners available in svelte 4\n * @deprecated\n * @param {EventListener[]} handlers\n * @returns {EventListener}\n */\nexport function handlers(...handlers) {\n\treturn function (event) {\n\t\tconst { stopImmediatePropagation } = event;\n\t\tlet stopped = false;\n\n\t\tevent.stopImmediatePropagation = () => {\n\t\t\tstopped = true;\n\t\t\tstopImmediatePropagation.call(event);\n\t\t};\n\n\t\tconst errors = [];\n\n\t\tfor (const handler of handlers) {\n\t\t\ttry {\n\t\t\t\t// @ts-expect-error `this` is not typed\n\t\t\t\thandler?.call(this, event);\n\t\t\t} catch (e) {\n\t\t\t\terrors.push(e);\n\t\t\t}\n\n\t\t\tif (stopped) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tfor (let error of errors) {\n\t\t\tqueueMicrotask(() => {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}\n\t};\n}\n\n/**\n * Function to create a `bubble` function that mimic the behavior of `on:click` without handler available in svelte 4.\n * @deprecated Use this only as a temporary solution to migrate your automatically delegated events in Svelte 5.\n */\nexport function createBubbler() {\n\tconst active_component_context = component_context;\n\tif (active_component_context === null) {\n\t\te.lifecycle_outside_component('createBubbler');\n\t}\n\n\treturn (/**@type {string}*/ type) => (/**@type {Event}*/ event) => {\n\t\tconst events = /** @type {Record<string, Function | Function[]>} */ (\n\t\t\tactive_component_context.s.$$events\n\t\t)?.[/** @type {any} */ (type)];\n\n\t\tif (events) {\n\t\t\tconst callbacks = is_array(events) ? events.slice() : [events];\n\t\t\tfor (const fn of callbacks) {\n\t\t\t\tfn.call(active_component_context.x, event);\n\t\t\t}\n\t\t\treturn !event.defaultPrevented;\n\t\t}\n\t\treturn true;\n\t};\n}\n\nexport {\n\tonce,\n\tpreventDefault,\n\tself,\n\tstopImmediatePropagation,\n\tstopPropagation,\n\ttrusted,\n\tpassive,\n\tnonpassive\n} from '../internal/client/dom/legacy/event-modifiers.js';\n"],"x_google_ignoreList":[0,1,2,3,4],"mappings":"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"}
@@ -0,0 +1,135 @@
1
+ import { _r as run, br as experimental_async_required, hr as noop } from "./utils-mR9mAWyK.js";
2
+ import { B as hasContext, F as get_render_context, G as hydratable_serialization_failed, H as setContext, I as getAbortSignal, K as lifecycle_function_unavailable, L as createContext, P as uneval, R as getAllContexts, U as ssr_context, W as hydratable_clobbering, t as get_user_code_location, z as getContext } from "./dev-DPd12uEU.js";
3
+ import { t as async_mode_flag } from "./flags-BD-lYX7s.js";
4
+ //#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/server/hydratable.js
5
+ /** @import { HydratableLookupEntry } from '#server' */
6
+ /**
7
+ * @template T
8
+ * @param {string} key
9
+ * @param {() => T} fn
10
+ * @returns {T}
11
+ */
12
+ function hydratable(key, fn) {
13
+ if (!async_mode_flag) experimental_async_required("hydratable");
14
+ const { hydratable } = get_render_context();
15
+ let entry = hydratable.lookup.get(key);
16
+ if (entry !== void 0) {
17
+ {
18
+ const comparison = compare(key, entry, encode(key, fn()));
19
+ comparison.catch(() => {});
20
+ hydratable.comparisons.push(comparison);
21
+ }
22
+ return entry.value;
23
+ }
24
+ const value = fn();
25
+ entry = encode(key, value, hydratable.unresolved_promises);
26
+ hydratable.lookup.set(key, entry);
27
+ return value;
28
+ }
29
+ /**
30
+ * @param {string} key
31
+ * @param {any} value
32
+ * @param {Map<Promise<any>, string>} [unresolved]
33
+ */
34
+ function encode(key, value, unresolved) {
35
+ /** @type {HydratableLookupEntry} */
36
+ const entry = {
37
+ value,
38
+ serialized: ""
39
+ };
40
+ entry.stack = get_user_code_location();
41
+ let uid = 1;
42
+ entry.serialized = uneval(entry.value, (value, uneval) => {
43
+ if (is_promise(value)) {
44
+ const placeholder = `"${uid++}"`;
45
+ const p = value.then((v) => {
46
+ entry.serialized = entry.serialized.replace(placeholder, () => `r(${uneval(v)})`);
47
+ }).catch((devalue_error) => hydratable_serialization_failed(key, serialization_stack(entry.stack, devalue_error?.stack)));
48
+ unresolved?.set(p, key);
49
+ p.catch(() => {}).finally(() => unresolved?.delete(p));
50
+ (entry.promises ??= []).push(p);
51
+ return placeholder;
52
+ }
53
+ });
54
+ return entry;
55
+ }
56
+ /**
57
+ * @param {any} value
58
+ * @returns {value is Promise<any>}
59
+ */
60
+ function is_promise(value) {
61
+ return Object.prototype.toString.call(value) === "[object Promise]";
62
+ }
63
+ /**
64
+ * @param {string} key
65
+ * @param {HydratableLookupEntry} a
66
+ * @param {HydratableLookupEntry} b
67
+ */
68
+ async function compare(key, a, b) {
69
+ for (const p of a?.promises ?? []) await p;
70
+ for (const p of b?.promises ?? []) await p;
71
+ if (a.serialized !== b.serialized) {
72
+ const a_stack = a.stack;
73
+ const b_stack = b.stack;
74
+ hydratable_clobbering(key, a_stack === b_stack ? `Occurred at:\n${a_stack}` : `First occurrence at:\n${a_stack}\n\nSecond occurrence at:\n${b_stack}`);
75
+ }
76
+ }
77
+ /**
78
+ * @param {string | undefined} root_stack
79
+ * @param {string | undefined} uneval_stack
80
+ */
81
+ function serialization_stack(root_stack, uneval_stack) {
82
+ let out = "";
83
+ if (root_stack) out += root_stack + "\n";
84
+ if (uneval_stack) out += "Caused by:\n" + uneval_stack + "\n";
85
+ return out || "<missing stack trace>";
86
+ }
87
+ //#endregion
88
+ //#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/server/blocks/snippet.js
89
+ /** @import { Snippet } from 'svelte' */
90
+ /** @import { Renderer } from '../renderer' */
91
+ /** @import { Getters } from '#shared' */
92
+ /**
93
+ * Create a snippet programmatically
94
+ * @template {unknown[]} Params
95
+ * @param {(...params: Getters<Params>) => {
96
+ * render: () => string
97
+ * setup?: (element: Element) => void | (() => void)
98
+ * }} fn
99
+ * @returns {Snippet<Params>}
100
+ */
101
+ function createRawSnippet(fn) {
102
+ return (renderer, ...args) => {
103
+ var getters = args.map((value) => () => value);
104
+ renderer.push(fn(...getters).render().trim());
105
+ };
106
+ }
107
+ //#endregion
108
+ //#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/index-server.js
109
+ /** @import { SSRContext } from '#server' */
110
+ /** @import { Renderer } from './internal/server/renderer.js' */
111
+ /** @param {() => void} fn */
112
+ function onDestroy(fn) {
113
+ /** @type {Renderer} */ ssr_context.r.on_destroy(fn);
114
+ }
115
+ function createEventDispatcher() {
116
+ return noop;
117
+ }
118
+ function mount() {
119
+ lifecycle_function_unavailable("mount");
120
+ }
121
+ function hydrate() {
122
+ lifecycle_function_unavailable("hydrate");
123
+ }
124
+ function unmount() {
125
+ lifecycle_function_unavailable("unmount");
126
+ }
127
+ function fork() {
128
+ lifecycle_function_unavailable("fork");
129
+ }
130
+ async function tick() {}
131
+ async function settled() {}
132
+ //#endregion
133
+ export { noop as afterUpdate, noop as beforeUpdate, noop as flushSync, noop as onMount, createContext, createEventDispatcher, createRawSnippet, fork, getAbortSignal, getAllContexts, getContext, hasContext, hydratable, hydrate, mount, onDestroy, setContext, settled, tick, unmount, run as untrack };
134
+
135
+ //# sourceMappingURL=svelte.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svelte.js","names":["devalue.uneval","e.hydratable_serialization_failed"],"sources":["../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/server/hydratable.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/server/blocks/snippet.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/index-server.js"],"sourcesContent":["/** @import { HydratableLookupEntry } from '#server' */\nimport { async_mode_flag } from '../flags/index.js';\nimport { get_render_context } from './render-context.js';\nimport * as e from './errors.js';\nimport * as devalue from 'devalue';\nimport { DEV } from 'esm-env';\nimport { get_user_code_location } from './dev.js';\n\n/**\n * @template T\n * @param {string} key\n * @param {() => T} fn\n * @returns {T}\n */\nexport function hydratable(key, fn) {\n\tif (!async_mode_flag) {\n\t\te.experimental_async_required('hydratable');\n\t}\n\n\tconst { hydratable } = get_render_context();\n\n\tlet entry = hydratable.lookup.get(key);\n\n\tif (entry !== undefined) {\n\t\tif (DEV) {\n\t\t\tconst comparison = compare(key, entry, encode(key, fn()));\n\t\t\tcomparison.catch(() => {});\n\t\t\thydratable.comparisons.push(comparison);\n\t\t}\n\n\t\treturn /** @type {T} */ (entry.value);\n\t}\n\n\tconst value = fn();\n\n\tentry = encode(key, value, hydratable.unresolved_promises);\n\thydratable.lookup.set(key, entry);\n\n\treturn value;\n}\n\n/**\n * @param {string} key\n * @param {any} value\n * @param {Map<Promise<any>, string>} [unresolved]\n */\nfunction encode(key, value, unresolved) {\n\t/** @type {HydratableLookupEntry} */\n\tconst entry = { value, serialized: '' };\n\n\tif (DEV) {\n\t\tentry.stack = get_user_code_location();\n\t}\n\n\tlet uid = 1;\n\n\tentry.serialized = devalue.uneval(entry.value, (value, uneval) => {\n\t\tif (is_promise(value)) {\n\t\t\t// we serialize promises as `\"${i}\"`, because it's impossible for that string\n\t\t\t// to occur 'naturally' (since the quote marks would have to be escaped)\n\t\t\t// this placeholder is returned synchronously from `uneval`, which includes it in the\n\t\t\t// serialized string. Later (at least one microtask from now), when `p.then` runs, it'll\n\t\t\t// be replaced.\n\t\t\tconst placeholder = `\"${uid++}\"`;\n\t\t\tconst p = value\n\t\t\t\t.then((v) => {\n\t\t\t\t\tentry.serialized = entry.serialized.replace(\n\t\t\t\t\t\tplaceholder,\n\t\t\t\t\t\t// use the function form here to prevent any string replacement characters from being interpreted\n\t\t\t\t\t\t// in `v`, as it's potentially user-controlled and therefore potentially malicious.\n\t\t\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#specifying_a_string_as_the_replacement\n\t\t\t\t\t\t() => `r(${uneval(v)})`\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t\t.catch((devalue_error) =>\n\t\t\t\t\te.hydratable_serialization_failed(\n\t\t\t\t\t\tkey,\n\t\t\t\t\t\tserialization_stack(entry.stack, devalue_error?.stack)\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\tunresolved?.set(p, key);\n\t\t\t// prevent unhandled rejections from crashing the server, track which promises are still resolving when render is complete\n\t\t\tp.catch(() => {}).finally(() => unresolved?.delete(p));\n\n\t\t\t(entry.promises ??= []).push(p);\n\t\t\treturn placeholder;\n\t\t}\n\t});\n\n\treturn entry;\n}\n\n/**\n * @param {any} value\n * @returns {value is Promise<any>}\n */\nfunction is_promise(value) {\n\t// we use this check rather than `instanceof Promise`\n\t// because it works cross-realm\n\treturn Object.prototype.toString.call(value) === '[object Promise]';\n}\n\n/**\n * @param {string} key\n * @param {HydratableLookupEntry} a\n * @param {HydratableLookupEntry} b\n */\nasync function compare(key, a, b) {\n\t// note: these need to be loops (as opposed to Promise.all) because\n\t// additional promises can get pushed to them while we're awaiting\n\t// an earlier one\n\tfor (const p of a?.promises ?? []) {\n\t\tawait p;\n\t}\n\n\tfor (const p of b?.promises ?? []) {\n\t\tawait p;\n\t}\n\n\tif (a.serialized !== b.serialized) {\n\t\tconst a_stack = /** @type {string} */ (a.stack);\n\t\tconst b_stack = /** @type {string} */ (b.stack);\n\n\t\tconst stack =\n\t\t\ta_stack === b_stack\n\t\t\t\t? `Occurred at:\\n${a_stack}`\n\t\t\t\t: `First occurrence at:\\n${a_stack}\\n\\nSecond occurrence at:\\n${b_stack}`;\n\n\t\te.hydratable_clobbering(key, stack);\n\t}\n}\n\n/**\n * @param {string | undefined} root_stack\n * @param {string | undefined} uneval_stack\n */\nfunction serialization_stack(root_stack, uneval_stack) {\n\tlet out = '';\n\tif (root_stack) {\n\t\tout += root_stack + '\\n';\n\t}\n\tif (uneval_stack) {\n\t\tout += 'Caused by:\\n' + uneval_stack + '\\n';\n\t}\n\treturn out || '<missing stack trace>';\n}\n","/** @import { Snippet } from 'svelte' */\n/** @import { Renderer } from '../renderer' */\n/** @import { Getters } from '#shared' */\n\n/**\n * Create a snippet programmatically\n * @template {unknown[]} Params\n * @param {(...params: Getters<Params>) => {\n * render: () => string\n * setup?: (element: Element) => void | (() => void)\n * }} fn\n * @returns {Snippet<Params>}\n */\nexport function createRawSnippet(fn) {\n\t// @ts-expect-error the types are a lie\n\treturn (/** @type {Renderer} */ renderer, /** @type {Params} */ ...args) => {\n\t\tvar getters = /** @type {Getters<Params>} */ (args.map((value) => () => value));\n\t\trenderer.push(\n\t\t\tfn(...getters)\n\t\t\t\t.render()\n\t\t\t\t.trim()\n\t\t);\n\t};\n}\n","/** @import { SSRContext } from '#server' */\n/** @import { Renderer } from './internal/server/renderer.js' */\nimport { ssr_context } from './internal/server/context.js';\nimport { noop } from './internal/shared/utils.js';\nimport * as e from './internal/server/errors.js';\n\n/** @param {() => void} fn */\nexport function onDestroy(fn) {\n\t/** @type {Renderer} */ (/** @type {SSRContext} */ (ssr_context).r).on_destroy(fn);\n}\n\nexport {\n\tnoop as beforeUpdate,\n\tnoop as afterUpdate,\n\tnoop as onMount,\n\tnoop as flushSync,\n\trun as untrack\n} from './internal/shared/utils.js';\n\nexport function createEventDispatcher() {\n\treturn noop;\n}\n\nexport function mount() {\n\te.lifecycle_function_unavailable('mount');\n}\n\nexport function hydrate() {\n\te.lifecycle_function_unavailable('hydrate');\n}\n\nexport function unmount() {\n\te.lifecycle_function_unavailable('unmount');\n}\n\nexport function fork() {\n\te.lifecycle_function_unavailable('fork');\n}\n\nexport async function tick() {}\n\nexport async function settled() {}\n\nexport { getAbortSignal } from './internal/server/abort-signal.js';\n\nexport {\n\tcreateContext,\n\tgetAllContexts,\n\tgetContext,\n\thasContext,\n\tsetContext\n} from './internal/server/context.js';\n\nexport { hydratable } from './internal/server/hydratable.js';\n\nexport { createRawSnippet } from './internal/server/blocks/snippet.js';\n"],"x_google_ignoreList":[0,1,2],"mappings":";;;;;;;;;;;AAcA,SAAgB,WAAW,KAAK,IAAI;CACnC,IAAI,CAAC,iBACJ,4BAA8B,YAAY;CAG3C,MAAM,EAAE,eAAe,mBAAmB;CAE1C,IAAI,QAAQ,WAAW,OAAO,IAAI,GAAG;CAErC,IAAI,UAAU,KAAA,GAAW;EACf;GACR,MAAM,aAAa,QAAQ,KAAK,OAAO,OAAO,KAAK,GAAG,CAAC,CAAC;GACxD,WAAW,YAAY,CAAC,CAAC;GACzB,WAAW,YAAY,KAAK,UAAU;EACvC;EAEA,OAAyB,MAAM;CAChC;CAEA,MAAM,QAAQ,GAAG;CAEjB,QAAQ,OAAO,KAAK,OAAO,WAAW,mBAAmB;CACzD,WAAW,OAAO,IAAI,KAAK,KAAK;CAEhC,OAAO;AACR;;;;;;AAOA,SAAS,OAAO,KAAK,OAAO,YAAY;;CAEvC,MAAM,QAAQ;EAAE;EAAO,YAAY;CAAG;CAGrC,MAAM,QAAQ,uBAAuB;CAGtC,IAAI,MAAM;CAEV,MAAM,aAAaA,OAAe,MAAM,QAAQ,OAAO,WAAW;EACjE,IAAI,WAAW,KAAK,GAAG;GAMtB,MAAM,cAAc,IAAI,MAAM;GAC9B,MAAM,IAAI,MACR,MAAM,MAAM;IACZ,MAAM,aAAa,MAAM,WAAW,QACnC,mBAIM,KAAK,OAAO,CAAC,EAAE,EACtB;GACD,CAAC,EACA,OAAO,kBACPC,gCACC,KACA,oBAAoB,MAAM,OAAO,eAAe,KAAK,CACtD,CACD;GAED,YAAY,IAAI,GAAG,GAAG;GAEtB,EAAE,YAAY,CAAC,CAAC,EAAE,cAAc,YAAY,OAAO,CAAC,CAAC;GAErD,CAAC,MAAM,aAAa,CAAC,GAAG,KAAK,CAAC;GAC9B,OAAO;EACR;CACD,CAAC;CAED,OAAO;AACR;;;;;AAMA,SAAS,WAAW,OAAO;CAG1B,OAAO,OAAO,UAAU,SAAS,KAAK,KAAK,MAAM;AAClD;;;;;;AAOA,eAAe,QAAQ,KAAK,GAAG,GAAG;CAIjC,KAAK,MAAM,KAAK,GAAG,YAAY,CAAC,GAC/B,MAAM;CAGP,KAAK,MAAM,KAAK,GAAG,YAAY,CAAC,GAC/B,MAAM;CAGP,IAAI,EAAE,eAAe,EAAE,YAAY;EAClC,MAAM,UAAiC,EAAE;EACzC,MAAM,UAAiC,EAAE;EAOzC,sBAAwB,KAJvB,YAAY,UACT,iBAAiB,YACjB,yBAAyB,QAAQ,6BAA6B,SAEhC;CACnC;AACD;;;;;AAMA,SAAS,oBAAoB,YAAY,cAAc;CACtD,IAAI,MAAM;CACV,IAAI,YACH,OAAO,aAAa;CAErB,IAAI,cACH,OAAO,iBAAiB,eAAe;CAExC,OAAO,OAAO;AACf;;;;;;;;;;;;;;;ACrIA,SAAgB,iBAAiB,IAAI;CAEpC,QAAgC,UAAgC,GAAG,SAAS;EAC3E,IAAI,UAA0C,KAAK,KAAK,gBAAgB,KAAK;EAC7E,SAAS,KACR,GAAG,GAAG,OAAO,EACX,OAAO,EACP,KAAK,CACR;CACD;AACD;;;;;;AChBA,SAAgB,UAAU,IAAI;yBACL,YAAyC,EAAG,WAAW,EAAE;AAClF;AAUA,SAAgB,wBAAwB;CACvC,OAAO;AACR;AAEA,SAAgB,QAAQ;CACvB,+BAAiC,OAAO;AACzC;AAEA,SAAgB,UAAU;CACzB,+BAAiC,SAAS;AAC3C;AAEA,SAAgB,UAAU;CACzB,+BAAiC,SAAS;AAC3C;AAEA,SAAgB,OAAO;CACtB,+BAAiC,MAAM;AACxC;AAEA,eAAsB,OAAO,CAAC;AAE9B,eAAsB,UAAU,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { cubicOut } from "./svelte_easing.js";
2
+ //#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/animate/index.js
3
+ /** @import { FlipParams, AnimationConfig } from './public.js' */
4
+ /**
5
+ * The flip function calculates the start and end position of an element and animates between them, translating the x and y values.
6
+ * `flip` stands for [First, Last, Invert, Play](https://aerotwist.com/blog/flip-your-animations/).
7
+ *
8
+ * @param {Element} node
9
+ * @param {{ from: DOMRect; to: DOMRect }} fromTo
10
+ * @param {FlipParams} params
11
+ * @returns {AnimationConfig}
12
+ */
13
+ function flip(node, { from, to }, params = {}) {
14
+ var { delay = 0, duration = (d) => Math.sqrt(d) * 120, easing = cubicOut } = params;
15
+ var style = getComputedStyle(node);
16
+ var transform = style.transform === "none" ? "" : style.transform;
17
+ var [ox, oy] = style.transformOrigin.split(" ").map(parseFloat);
18
+ ox /= node.clientWidth;
19
+ oy /= node.clientHeight;
20
+ var zoom = get_zoom(node);
21
+ var sx = node.clientWidth / to.width / zoom;
22
+ var sy = node.clientHeight / to.height / zoom;
23
+ var fx = from.left + from.width * ox;
24
+ var fy = from.top + from.height * oy;
25
+ var tx = to.left + to.width * ox;
26
+ var ty = to.top + to.height * oy;
27
+ var dx = (fx - tx) * sx;
28
+ var dy = (fy - ty) * sy;
29
+ var dsx = from.width / to.width;
30
+ var dsy = from.height / to.height;
31
+ return {
32
+ delay,
33
+ duration: typeof duration === "function" ? duration(Math.sqrt(dx * dx + dy * dy)) : duration,
34
+ easing,
35
+ css: (t, u) => {
36
+ return `transform: ${transform} translate(${u * dx}px, ${u * dy}px) scale(${t + u * dsx}, ${t + u * dsy});`;
37
+ }
38
+ };
39
+ }
40
+ /**
41
+ * @param {Element} element
42
+ */
43
+ function get_zoom(element) {
44
+ if ("currentCSSZoom" in element) return element.currentCSSZoom;
45
+ /** @type {Element | null} */
46
+ var current = element;
47
+ var zoom = 1;
48
+ while (current !== null) {
49
+ zoom *= +getComputedStyle(current).zoom;
50
+ current = current.parentElement;
51
+ }
52
+ return zoom;
53
+ }
54
+ //#endregion
55
+ export { flip };
56
+
57
+ //# sourceMappingURL=svelte_animate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svelte_animate.js","names":[],"sources":["../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/animate/index.js"],"sourcesContent":["/** @import { FlipParams, AnimationConfig } from './public.js' */\nimport { cubicOut } from '../easing/index.js';\n\n/**\n * The flip function calculates the start and end position of an element and animates between them, translating the x and y values.\n * `flip` stands for [First, Last, Invert, Play](https://aerotwist.com/blog/flip-your-animations/).\n *\n * @param {Element} node\n * @param {{ from: DOMRect; to: DOMRect }} fromTo\n * @param {FlipParams} params\n * @returns {AnimationConfig}\n */\nexport function flip(node, { from, to }, params = {}) {\n\tvar { delay = 0, duration = (d) => Math.sqrt(d) * 120, easing = cubicOut } = params;\n\n\tvar style = getComputedStyle(node);\n\n\t// find the transform origin, expressed as a pair of values between 0 and 1\n\tvar transform = style.transform === 'none' ? '' : style.transform;\n\tvar [ox, oy] = style.transformOrigin.split(' ').map(parseFloat);\n\tox /= node.clientWidth;\n\toy /= node.clientHeight;\n\n\t// calculate effect of parent transforms and zoom\n\tvar zoom = get_zoom(node); // https://drafts.csswg.org/css-viewport/#effective-zoom\n\tvar sx = node.clientWidth / to.width / zoom;\n\tvar sy = node.clientHeight / to.height / zoom;\n\n\t// find the starting position of the transform origin\n\tvar fx = from.left + from.width * ox;\n\tvar fy = from.top + from.height * oy;\n\n\t// find the ending position of the transform origin\n\tvar tx = to.left + to.width * ox;\n\tvar ty = to.top + to.height * oy;\n\n\t// find the translation at the start of the transform\n\tvar dx = (fx - tx) * sx;\n\tvar dy = (fy - ty) * sy;\n\n\t// find the relative scale at the start of the transform\n\tvar dsx = from.width / to.width;\n\tvar dsy = from.height / to.height;\n\n\treturn {\n\t\tdelay,\n\t\tduration: typeof duration === 'function' ? duration(Math.sqrt(dx * dx + dy * dy)) : duration,\n\t\teasing,\n\t\tcss: (t, u) => {\n\t\t\tvar x = u * dx;\n\t\t\tvar y = u * dy;\n\t\t\tvar sx = t + u * dsx;\n\t\t\tvar sy = t + u * dsy;\n\n\t\t\treturn `transform: ${transform} translate(${x}px, ${y}px) scale(${sx}, ${sy});`;\n\t\t}\n\t};\n}\n\n/**\n * @param {Element} element\n */\nfunction get_zoom(element) {\n\tif ('currentCSSZoom' in element) {\n\t\treturn /** @type {number} */ (element.currentCSSZoom);\n\t}\n\n\t/** @type {Element | null} */\n\tvar current = element;\n\tvar zoom = 1;\n\n\twhile (current !== null) {\n\t\tzoom *= +getComputedStyle(current).zoom;\n\t\tcurrent = /** @type {Element | null} */ (current.parentElement);\n\t}\n\n\treturn zoom;\n}\n"],"x_google_ignoreList":[0],"mappings":";;;;;;;;;;;;AAYA,SAAgB,KAAK,MAAM,EAAE,MAAM,MAAM,SAAS,CAAC,GAAG;CACrD,IAAI,EAAE,QAAQ,GAAG,YAAY,MAAM,KAAK,KAAK,CAAC,IAAI,KAAK,SAAS,aAAa;CAE7E,IAAI,QAAQ,iBAAiB,IAAI;CAGjC,IAAI,YAAY,MAAM,cAAc,SAAS,KAAK,MAAM;CACxD,IAAI,CAAC,IAAI,MAAM,MAAM,gBAAgB,MAAM,GAAG,EAAE,IAAI,UAAU;CAC9D,MAAM,KAAK;CACX,MAAM,KAAK;CAGX,IAAI,OAAO,SAAS,IAAI;CACxB,IAAI,KAAK,KAAK,cAAc,GAAG,QAAQ;CACvC,IAAI,KAAK,KAAK,eAAe,GAAG,SAAS;CAGzC,IAAI,KAAK,KAAK,OAAO,KAAK,QAAQ;CAClC,IAAI,KAAK,KAAK,MAAM,KAAK,SAAS;CAGlC,IAAI,KAAK,GAAG,OAAO,GAAG,QAAQ;CAC9B,IAAI,KAAK,GAAG,MAAM,GAAG,SAAS;CAG9B,IAAI,MAAM,KAAK,MAAM;CACrB,IAAI,MAAM,KAAK,MAAM;CAGrB,IAAI,MAAM,KAAK,QAAQ,GAAG;CAC1B,IAAI,MAAM,KAAK,SAAS,GAAG;CAE3B,OAAO;EACN;EACA,UAAU,OAAO,aAAa,aAAa,SAAS,KAAK,KAAK,KAAK,KAAK,KAAK,EAAE,CAAC,IAAI;EACpF;EACA,MAAM,GAAG,MAAM;GAMd,OAAO,cAAc,UAAU,aALvB,IAAI,GAKkC,MAJtC,IAAI,GAI0C,YAH7C,IAAI,IAAI,IAGoD,IAF5D,IAAI,IAAI,IAE2D;EAC7E;CACD;AACD;;;;AAKA,SAAS,SAAS,SAAS;CAC1B,IAAI,oBAAoB,SACvB,OAA8B,QAAQ;;CAIvC,IAAI,UAAU;CACd,IAAI,OAAO;CAEX,OAAO,YAAY,MAAM;EACxB,QAAQ,CAAC,iBAAiB,OAAO,EAAE;EACnC,UAAyC,QAAQ;CAClD;CAEA,OAAO;AACR"}
@@ -0,0 +1,2 @@
1
+ import { n as fromAction, t as createAttachmentKey } from "./attachments-qzRy9DX4.js";
2
+ export { createAttachmentKey, fromAction };