buildgrid-ui 1.14.6 → 1.14.8

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 (370) hide show
  1. package/dist/assets/en-US-BUOWLxFp.js +2 -0
  2. package/dist/assets/en-US-BUOWLxFp.js.map +1 -0
  3. package/dist/assets/jsx-runtime-D_zvdyIk.js +10 -0
  4. package/dist/assets/jsx-runtime-D_zvdyIk.js.map +1 -0
  5. package/dist/assets/magic-string.es-CTSuTltI.js +11 -0
  6. package/dist/assets/magic-string.es-CTSuTltI.js.map +1 -0
  7. package/dist/assets/vi.bdSIJ99Y-C6e_ZQS2.js +482 -0
  8. package/dist/assets/vi.bdSIJ99Y-C6e_ZQS2.js.map +1 -0
  9. package/dist/blocks/bento-grid/bento-grid.js +2 -0
  10. package/dist/blocks/bento-grid/bento-grid.js.map +1 -0
  11. package/dist/blocks/bento-grid/bento-grid.stories.js +2 -0
  12. package/dist/blocks/bento-grid/bento-grid.stories.js.map +1 -0
  13. package/dist/blocks/bento-grid/index.js +2 -0
  14. package/dist/blocks/bento-grid/index.js.map +1 -0
  15. package/dist/blocks/data-table/components/active-filters.js +2 -0
  16. package/dist/blocks/data-table/components/active-filters.js.map +1 -0
  17. package/dist/blocks/data-table/components/column-visibility-dropdown.js +2 -0
  18. package/dist/blocks/data-table/components/column-visibility-dropdown.js.map +1 -0
  19. package/dist/blocks/data-table/components/filter-dropdown.js +2 -0
  20. package/dist/blocks/data-table/components/filter-dropdown.js.map +1 -0
  21. package/dist/blocks/data-table/components/search-input.js +2 -0
  22. package/dist/blocks/data-table/components/search-input.js.map +1 -0
  23. package/dist/blocks/data-table/components/selection-info.js +2 -0
  24. package/dist/blocks/data-table/components/selection-info.js.map +1 -0
  25. package/dist/blocks/data-table/components/table-header.js +2 -0
  26. package/dist/blocks/data-table/components/table-header.js.map +1 -0
  27. package/dist/blocks/data-table/components/table-row.js +2 -0
  28. package/dist/blocks/data-table/components/table-row.js.map +1 -0
  29. package/dist/blocks/data-table/components/table-skeleton.js +2 -0
  30. package/dist/blocks/data-table/components/table-skeleton.js.map +1 -0
  31. package/dist/blocks/data-table/data-table.js +2 -0
  32. package/dist/blocks/data-table/data-table.js.map +1 -0
  33. package/dist/blocks/data-table/data-table.stories.js +2 -0
  34. package/dist/blocks/data-table/data-table.stories.js.map +1 -0
  35. package/dist/blocks/data-table/index.js +2 -0
  36. package/dist/blocks/data-table/index.js.map +1 -0
  37. package/dist/blocks/data-table/types/data-table.js +2 -0
  38. package/dist/blocks/data-table/types/data-table.js.map +1 -0
  39. package/dist/blocks/data-table/utils/export.js +3 -0
  40. package/dist/blocks/data-table/utils/export.js.map +1 -0
  41. package/dist/blocks/empty-message/empty-message.js +2 -0
  42. package/dist/blocks/empty-message/empty-message.js.map +1 -0
  43. package/dist/blocks/empty-message/empty-message.stories.js +2 -0
  44. package/dist/blocks/empty-message/empty-message.stories.js.map +1 -0
  45. package/dist/blocks/empty-message/index.js +2 -0
  46. package/dist/blocks/empty-message/index.js.map +1 -0
  47. package/dist/blocks/help-carousel/help-carousel.js +2 -0
  48. package/dist/blocks/help-carousel/help-carousel.js.map +1 -0
  49. package/dist/blocks/help-carousel/help-carousel.stories.js +2 -0
  50. package/dist/blocks/help-carousel/help-carousel.stories.js.map +1 -0
  51. package/dist/blocks/help-carousel/index.js +2 -0
  52. package/dist/blocks/help-carousel/index.js.map +1 -0
  53. package/dist/blocks/html-text-editor/html-text-area.js +2 -0
  54. package/dist/blocks/html-text-editor/html-text-area.js.map +1 -0
  55. package/dist/blocks/html-text-editor/html-text-area.stories.js +8 -0
  56. package/dist/blocks/html-text-editor/html-text-area.stories.js.map +1 -0
  57. package/dist/blocks/html-text-editor/html-text-editor.js +2 -0
  58. package/dist/blocks/html-text-editor/html-text-editor.js.map +1 -0
  59. package/dist/blocks/html-text-editor/html-text-editor.stories.js +2 -0
  60. package/dist/blocks/html-text-editor/html-text-editor.stories.js.map +1 -0
  61. package/dist/blocks/html-text-editor/index.js +2 -0
  62. package/dist/blocks/html-text-editor/index.js.map +1 -0
  63. package/dist/blocks/html-text-editor/options-bar.js +2 -0
  64. package/dist/blocks/html-text-editor/options-bar.js.map +1 -0
  65. package/dist/blocks/index.js +2 -0
  66. package/dist/blocks/index.js.map +1 -0
  67. package/dist/blocks/lazy-image-gallery/index.js +2 -0
  68. package/dist/blocks/lazy-image-gallery/index.js.map +1 -0
  69. package/dist/blocks/lazy-image-gallery/lazy-image-gallery.js +2 -0
  70. package/dist/blocks/lazy-image-gallery/lazy-image-gallery.js.map +1 -0
  71. package/dist/blocks/lazy-image-gallery/lazy-image-gallery.stories.js +2 -0
  72. package/dist/blocks/lazy-image-gallery/lazy-image-gallery.stories.js.map +1 -0
  73. package/dist/blocks/month-navigator/index.js +2 -0
  74. package/dist/blocks/month-navigator/index.js.map +1 -0
  75. package/dist/blocks/month-navigator/month-navigator.js +2 -0
  76. package/dist/blocks/month-navigator/month-navigator.js.map +1 -0
  77. package/dist/blocks/month-navigator/month-navigator.stories.js +2 -0
  78. package/dist/blocks/month-navigator/month-navigator.stories.js.map +1 -0
  79. package/dist/blocks/navigable-list/index.js +2 -0
  80. package/dist/blocks/navigable-list/index.js.map +1 -0
  81. package/dist/blocks/navigable-list/navigable-list.js +2 -0
  82. package/dist/blocks/navigable-list/navigable-list.js.map +1 -0
  83. package/dist/blocks/navigable-list/navigable-list.stories.js +2 -0
  84. package/dist/blocks/navigable-list/navigable-list.stories.js.map +1 -0
  85. package/dist/blocks/paginated-items/index.js +2 -0
  86. package/dist/blocks/paginated-items/index.js.map +1 -0
  87. package/dist/blocks/paginated-items/paginated-items.js +2 -0
  88. package/dist/blocks/paginated-items/paginated-items.js.map +1 -0
  89. package/dist/blocks/paginated-items/paginated-items.stories.js +2 -0
  90. package/dist/blocks/paginated-items/paginated-items.stories.js.map +1 -0
  91. package/dist/blocks/pagination-controls/index.js +2 -0
  92. package/dist/blocks/pagination-controls/index.js.map +1 -0
  93. package/dist/blocks/pagination-controls/pagination-controls.js +2 -0
  94. package/dist/blocks/pagination-controls/pagination-controls.js.map +1 -0
  95. package/dist/blocks/pagination-controls/pagination-controls.stories.js +2 -0
  96. package/dist/blocks/pagination-controls/pagination-controls.stories.js.map +1 -0
  97. package/dist/blocks/sidebar/index.js +2 -0
  98. package/dist/blocks/sidebar/index.js.map +1 -0
  99. package/dist/blocks/sidebar/sidebar.js +2 -0
  100. package/dist/blocks/sidebar/sidebar.js.map +1 -0
  101. package/dist/blocks/sidebar/sidebar.stories.js +2 -0
  102. package/dist/blocks/sidebar/sidebar.stories.js.map +1 -0
  103. package/dist/components/accordion/accordion.js +2 -0
  104. package/dist/components/accordion/accordion.js.map +1 -0
  105. package/dist/components/accordion/accordion.stories.js +2 -0
  106. package/dist/components/accordion/accordion.stories.js.map +1 -0
  107. package/dist/components/accordion/index.js +2 -0
  108. package/dist/components/accordion/index.js.map +1 -0
  109. package/dist/components/adaptive-input/adaptive-input.js +2 -0
  110. package/dist/components/adaptive-input/adaptive-input.js.map +1 -0
  111. package/dist/components/adaptive-input/adaptive-input.stories.js +2 -0
  112. package/dist/components/adaptive-input/adaptive-input.stories.js.map +1 -0
  113. package/dist/components/adaptive-input/index.js +2 -0
  114. package/dist/components/adaptive-input/index.js.map +1 -0
  115. package/dist/components/alert-dialog/alert-dialog.js +2 -0
  116. package/dist/components/alert-dialog/alert-dialog.js.map +1 -0
  117. package/dist/components/alert-dialog/alert-dialog.stories.js +2 -0
  118. package/dist/components/alert-dialog/alert-dialog.stories.js.map +1 -0
  119. package/dist/components/alert-dialog/index.js +2 -0
  120. package/dist/components/alert-dialog/index.js.map +1 -0
  121. package/dist/components/autocomplete/autocomplete.js +2 -0
  122. package/dist/components/autocomplete/autocomplete.js.map +1 -0
  123. package/dist/components/autocomplete/autocomplete.stories.js +2 -0
  124. package/dist/components/autocomplete/autocomplete.stories.js.map +1 -0
  125. package/dist/components/autocomplete/autocomplete.test.js +2 -0
  126. package/dist/components/autocomplete/autocomplete.test.js.map +1 -0
  127. package/dist/components/autocomplete/index.js +2 -0
  128. package/dist/components/autocomplete/index.js.map +1 -0
  129. package/dist/components/avatar/avatar.js +2 -0
  130. package/dist/components/avatar/avatar.js.map +1 -0
  131. package/dist/components/avatar/avatar.stories.js +2 -0
  132. package/dist/components/avatar/avatar.stories.js.map +1 -0
  133. package/dist/components/avatar/index.js +2 -0
  134. package/dist/components/avatar/index.js.map +1 -0
  135. package/dist/components/badge/badge.js +2 -0
  136. package/dist/components/badge/badge.js.map +1 -0
  137. package/dist/components/badge/badge.stories.js +2 -0
  138. package/dist/components/badge/badge.stories.js.map +1 -0
  139. package/dist/components/badge/index.js +2 -0
  140. package/dist/components/badge/index.js.map +1 -0
  141. package/dist/components/button/button.js +2 -0
  142. package/dist/components/button/button.js.map +1 -0
  143. package/dist/components/button/button.stories.js +2 -0
  144. package/dist/components/button/button.stories.js.map +1 -0
  145. package/dist/components/button/button.test.js +2 -0
  146. package/dist/components/button/button.test.js.map +1 -0
  147. package/dist/components/button/button.types.js +2 -0
  148. package/dist/components/button/button.types.js.map +1 -0
  149. package/dist/components/button/index.js +2 -0
  150. package/dist/components/button/index.js.map +1 -0
  151. package/dist/components/calendar/calendar.js +2 -0
  152. package/dist/components/calendar/calendar.js.map +1 -0
  153. package/dist/components/calendar/calendar.stories.js +2 -0
  154. package/dist/components/calendar/calendar.stories.js.map +1 -0
  155. package/dist/components/calendar/index.js +2 -0
  156. package/dist/components/calendar/index.js.map +1 -0
  157. package/dist/components/card/card.js +2 -0
  158. package/dist/components/card/card.js.map +1 -0
  159. package/dist/components/card/card.stories.js +2 -0
  160. package/dist/components/card/card.stories.js.map +1 -0
  161. package/dist/components/card/index.js +2 -0
  162. package/dist/components/card/index.js.map +1 -0
  163. package/dist/components/checkbox/checkbox.js +2 -0
  164. package/dist/components/checkbox/checkbox.js.map +1 -0
  165. package/dist/components/checkbox/checkbox.stories.js +2 -0
  166. package/dist/components/checkbox/checkbox.stories.js.map +1 -0
  167. package/dist/components/checkbox/index.js +2 -0
  168. package/dist/components/checkbox/index.js.map +1 -0
  169. package/dist/components/command/command.js +2 -0
  170. package/dist/components/command/command.js.map +1 -0
  171. package/dist/components/command/command.stories.js +2 -0
  172. package/dist/components/command/command.stories.js.map +1 -0
  173. package/dist/components/command/index.js +2 -0
  174. package/dist/components/command/index.js.map +1 -0
  175. package/dist/components/currency-input/currency-input.js +2 -0
  176. package/dist/components/currency-input/currency-input.js.map +1 -0
  177. package/dist/components/currency-input/currency-input.stories.js +2 -0
  178. package/dist/components/currency-input/currency-input.stories.js.map +1 -0
  179. package/dist/components/currency-input/index.js +2 -0
  180. package/dist/components/currency-input/index.js.map +1 -0
  181. package/dist/components/dialog/dialog.js +2 -0
  182. package/dist/components/dialog/dialog.js.map +1 -0
  183. package/dist/components/dialog/dialog.stories.js +2 -0
  184. package/dist/components/dialog/dialog.stories.js.map +1 -0
  185. package/dist/components/dialog/index.js +2 -0
  186. package/dist/components/dialog/index.js.map +1 -0
  187. package/dist/components/dropdown-menu/dropdown-menu.js +2 -0
  188. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -0
  189. package/dist/components/dropdown-menu/dropdown-menu.stories.js +2 -0
  190. package/dist/components/dropdown-menu/dropdown-menu.stories.js.map +1 -0
  191. package/dist/components/dropdown-menu/index.js +2 -0
  192. package/dist/components/dropdown-menu/index.js.map +1 -0
  193. package/dist/components/index.js +2 -0
  194. package/dist/components/index.js.map +1 -0
  195. package/dist/components/input/index.js +2 -0
  196. package/dist/components/input/index.js.map +1 -0
  197. package/dist/components/input/input.js +2 -0
  198. package/dist/components/input/input.js.map +1 -0
  199. package/dist/components/input/input.stories.js +2 -0
  200. package/dist/components/input/input.stories.js.map +1 -0
  201. package/dist/components/label/index.js +2 -0
  202. package/dist/components/label/index.js.map +1 -0
  203. package/dist/components/label/label.js +2 -0
  204. package/dist/components/label/label.js.map +1 -0
  205. package/dist/components/label/label.stories.js +2 -0
  206. package/dist/components/label/label.stories.js.map +1 -0
  207. package/dist/components/multi-select/index.js +2 -0
  208. package/dist/components/multi-select/index.js.map +1 -0
  209. package/dist/components/multi-select/multi-select.js +2 -0
  210. package/dist/components/multi-select/multi-select.js.map +1 -0
  211. package/dist/components/multi-select/multi-select.stories.js +2 -0
  212. package/dist/components/multi-select/multi-select.stories.js.map +1 -0
  213. package/dist/components/navigation-menu/index.js +2 -0
  214. package/dist/components/navigation-menu/index.js.map +1 -0
  215. package/dist/components/navigation-menu/navigation-menu.js +2 -0
  216. package/dist/components/navigation-menu/navigation-menu.js.map +1 -0
  217. package/dist/components/navigation-menu/navigation-menu.stories.js +2 -0
  218. package/dist/components/navigation-menu/navigation-menu.stories.js.map +1 -0
  219. package/dist/components/pagination/index.js +2 -0
  220. package/dist/components/pagination/index.js.map +1 -0
  221. package/dist/components/pagination/pagination.js +2 -0
  222. package/dist/components/pagination/pagination.js.map +1 -0
  223. package/dist/components/pagination/pagination.stories.js +2 -0
  224. package/dist/components/pagination/pagination.stories.js.map +1 -0
  225. package/dist/components/password-input/index.js +2 -0
  226. package/dist/components/password-input/index.js.map +1 -0
  227. package/dist/components/password-input/password-input.js +2 -0
  228. package/dist/components/password-input/password-input.js.map +1 -0
  229. package/dist/components/password-input/password-input.stories.js +2 -0
  230. package/dist/components/password-input/password-input.stories.js.map +1 -0
  231. package/dist/components/popover/index.js +2 -0
  232. package/dist/components/popover/index.js.map +1 -0
  233. package/dist/components/popover/popover.js +2 -0
  234. package/dist/components/popover/popover.js.map +1 -0
  235. package/dist/components/popover/popover.stories.js +2 -0
  236. package/dist/components/popover/popover.stories.js.map +1 -0
  237. package/dist/components/progress/index.js +2 -0
  238. package/dist/components/progress/index.js.map +1 -0
  239. package/dist/components/progress/progress.js +2 -0
  240. package/dist/components/progress/progress.js.map +1 -0
  241. package/dist/components/progress/progress.stories.js +2 -0
  242. package/dist/components/progress/progress.stories.js.map +1 -0
  243. package/dist/components/radio-group/index.js +2 -0
  244. package/dist/components/radio-group/index.js.map +1 -0
  245. package/dist/components/radio-group/radio-group.js +2 -0
  246. package/dist/components/radio-group/radio-group.js.map +1 -0
  247. package/dist/components/radio-group/radio-group.stories.js +2 -0
  248. package/dist/components/radio-group/radio-group.stories.js.map +1 -0
  249. package/dist/components/select/index.js +2 -0
  250. package/dist/components/select/index.js.map +1 -0
  251. package/dist/components/select/select.js +2 -0
  252. package/dist/components/select/select.js.map +1 -0
  253. package/dist/components/select/select.stories.js +2 -0
  254. package/dist/components/select/select.stories.js.map +1 -0
  255. package/dist/components/separator/index.js +2 -0
  256. package/dist/components/separator/index.js.map +1 -0
  257. package/dist/components/separator/separator.js +2 -0
  258. package/dist/components/separator/separator.js.map +1 -0
  259. package/dist/components/separator/separator.stories.js +2 -0
  260. package/dist/components/separator/separator.stories.js.map +1 -0
  261. package/dist/components/skeleton/index.js +2 -0
  262. package/dist/components/skeleton/index.js.map +1 -0
  263. package/dist/components/skeleton/skeleton.js +2 -0
  264. package/dist/components/skeleton/skeleton.js.map +1 -0
  265. package/dist/components/skeleton/skeleton.stories.js +2 -0
  266. package/dist/components/skeleton/skeleton.stories.js.map +1 -0
  267. package/dist/components/spinner/index.js +2 -0
  268. package/dist/components/spinner/index.js.map +1 -0
  269. package/dist/components/spinner/spinner.js +2 -0
  270. package/dist/components/spinner/spinner.js.map +1 -0
  271. package/dist/components/spinner/spinner.stories.js +2 -0
  272. package/dist/components/spinner/spinner.stories.js.map +1 -0
  273. package/dist/components/switch/index.js +2 -0
  274. package/dist/components/switch/index.js.map +1 -0
  275. package/dist/components/switch/switch.js +2 -0
  276. package/dist/components/switch/switch.js.map +1 -0
  277. package/dist/components/switch/switch.stories.js +2 -0
  278. package/dist/components/switch/switch.stories.js.map +1 -0
  279. package/dist/components/table/index.js +2 -0
  280. package/dist/components/table/index.js.map +1 -0
  281. package/dist/components/table/table.js +2 -0
  282. package/dist/components/table/table.js.map +1 -0
  283. package/dist/components/table/table.stories.js +2 -0
  284. package/dist/components/table/table.stories.js.map +1 -0
  285. package/dist/components/tabs/index.js +2 -0
  286. package/dist/components/tabs/index.js.map +1 -0
  287. package/dist/components/tabs/tabs.js +2 -0
  288. package/dist/components/tabs/tabs.js.map +1 -0
  289. package/dist/components/tabs/tabs.stories.js +2 -0
  290. package/dist/components/tabs/tabs.stories.js.map +1 -0
  291. package/dist/components/textarea/index.js +2 -0
  292. package/dist/components/textarea/index.js.map +1 -0
  293. package/dist/components/textarea/textarea.js +2 -0
  294. package/dist/components/textarea/textarea.js.map +1 -0
  295. package/dist/components/textarea/textarea.stories.js +2 -0
  296. package/dist/components/textarea/textarea.stories.js.map +1 -0
  297. package/dist/components/toaster/index.js +2 -0
  298. package/dist/components/toaster/index.js.map +1 -0
  299. package/dist/components/toaster/toast.js +2 -0
  300. package/dist/components/toaster/toast.js.map +1 -0
  301. package/dist/components/toaster/toaster.js +2 -0
  302. package/dist/components/toaster/toaster.js.map +1 -0
  303. package/dist/components/toaster/toaster.stories.js +2 -0
  304. package/dist/components/toaster/toaster.stories.js.map +1 -0
  305. package/dist/components/toggle/index.js +2 -0
  306. package/dist/components/toggle/index.js.map +1 -0
  307. package/dist/components/toggle/toggle.js +2 -0
  308. package/dist/components/toggle/toggle.js.map +1 -0
  309. package/dist/components/toggle/toggle.stories.js +2 -0
  310. package/dist/components/toggle/toggle.stories.js.map +1 -0
  311. package/dist/components/toggle-group/index.js +2 -0
  312. package/dist/components/toggle-group/index.js.map +1 -0
  313. package/dist/components/toggle-group/toggle-group.js +2 -0
  314. package/dist/components/toggle-group/toggle-group.js.map +1 -0
  315. package/dist/components/toggle-group/toggle-group.stories.js +2 -0
  316. package/dist/components/toggle-group/toggle-group.stories.js.map +1 -0
  317. package/dist/components/tooltip/index.js +2 -0
  318. package/dist/components/tooltip/index.js.map +1 -0
  319. package/dist/components/tooltip/tooltip.js +2 -0
  320. package/dist/components/tooltip/tooltip.js.map +1 -0
  321. package/dist/components/tooltip/tooltip.stories.js +2 -0
  322. package/dist/components/tooltip/tooltip.stories.js.map +1 -0
  323. package/dist/index.js +2 -0
  324. package/dist/index.js.map +1 -0
  325. package/dist/lib/hooks/index.js +2 -0
  326. package/dist/lib/hooks/index.js.map +1 -0
  327. package/dist/lib/hooks/use-array.js +2 -0
  328. package/dist/lib/hooks/use-array.js.map +1 -0
  329. package/dist/lib/hooks/use-copy-to-clipboard.js +2 -0
  330. package/dist/lib/hooks/use-copy-to-clipboard.js.map +1 -0
  331. package/dist/lib/hooks/use-debounce.js +2 -0
  332. package/dist/lib/hooks/use-debounce.js.map +1 -0
  333. package/dist/lib/hooks/use-dialog.js +2 -0
  334. package/dist/lib/hooks/use-dialog.js.map +1 -0
  335. package/dist/lib/hooks/use-dialog.stories.js +2 -0
  336. package/dist/lib/hooks/use-dialog.stories.js.map +1 -0
  337. package/dist/lib/hooks/use-disclosure-bool.js +2 -0
  338. package/dist/lib/hooks/use-disclosure-bool.js.map +1 -0
  339. package/dist/lib/hooks/use-disclosure.js +2 -0
  340. package/dist/lib/hooks/use-disclosure.js.map +1 -0
  341. package/dist/lib/hooks/use-file-utilities.js +2 -0
  342. package/dist/lib/hooks/use-file-utilities.js.map +1 -0
  343. package/dist/lib/hooks/use-key-press.js +2 -0
  344. package/dist/lib/hooks/use-key-press.js.map +1 -0
  345. package/dist/lib/hooks/use-local-storage.js +2 -0
  346. package/dist/lib/hooks/use-local-storage.js.map +1 -0
  347. package/dist/lib/hooks/use-media-query.js +2 -0
  348. package/dist/lib/hooks/use-media-query.js.map +1 -0
  349. package/dist/lib/hooks/use-mobile.js +2 -0
  350. package/dist/lib/hooks/use-mobile.js.map +1 -0
  351. package/dist/lib/hooks/use-pwa-install.js +2 -0
  352. package/dist/lib/hooks/use-pwa-install.js.map +1 -0
  353. package/dist/lib/types/ts-utilities.js +2 -0
  354. package/dist/lib/types/ts-utilities.js.map +1 -0
  355. package/dist/lib/utils/cn.js +2 -0
  356. package/dist/lib/utils/cn.js.map +1 -0
  357. package/dist/lib/utils/date-formatters.js +2 -0
  358. package/dist/lib/utils/date-formatters.js.map +1 -0
  359. package/dist/lib/utils/formatters.js +2 -0
  360. package/dist/lib/utils/formatters.js.map +1 -0
  361. package/dist/lib/utils/index.js +2 -0
  362. package/dist/lib/utils/index.js.map +1 -0
  363. package/dist/lib/utils/merge-objects.js +2 -0
  364. package/dist/lib/utils/merge-objects.js.map +1 -0
  365. package/dist/lib/utils/string.js +2 -0
  366. package/dist/lib/utils/string.js.map +1 -0
  367. package/package.json +15 -19
  368. package/dist/buildgrid-ui.es.js +0 -17094
  369. package/dist/buildgrid-ui.umd.js +0 -277
  370. /package/dist/{buildgrid-ui.css → assets/unreset.css} +0 -0
@@ -0,0 +1,2 @@
1
+ function l(t){return(n={})=>{const e=n.width?String(n.width):t.defaultWidth;return t.formats[e]||t.formats[t.defaultWidth]}}function d(t){return(n,e)=>{const a=e!=null&&e.context?String(e.context):"standalone";let i;if(a==="formatting"&&t.formattingValues){const r=t.defaultFormattingWidth||t.defaultWidth,o=e!=null&&e.width?String(e.width):r;i=t.formattingValues[o]||t.formattingValues[r]}else{const r=t.defaultWidth,o=e!=null&&e.width?String(e.width):t.defaultWidth;i=t.values[o]||t.values[r]}const s=t.argumentCallback?t.argumentCallback(n):n;return i[s]}}function h(t){return(n,e={})=>{const a=e.width,i=a&&t.matchPatterns[a]||t.matchPatterns[t.defaultMatchWidth],s=n.match(i);if(!s)return null;const r=s[0],o=a&&t.parsePatterns[a]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(o)?b(o,m=>m.test(r)):y(o,m=>m.test(r));let u;u=t.valueCallback?t.valueCallback(c):c,u=e.valueCallback?e.valueCallback(u):u;const f=n.slice(r.length);return{value:u,rest:f}}}function y(t,n){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e)&&n(t[e]))return e}function b(t,n){for(let e=0;e<t.length;e++)if(n(t[e]))return e}function g(t){return(n,e={})=>{const a=n.match(t.matchPattern);if(!a)return null;const i=a[0],s=n.match(t.parsePattern);if(!s)return null;let r=t.valueCallback?t.valueCallback(s[0]):s[0];r=e.valueCallback?e.valueCallback(r):r;const o=n.slice(i.length);return{value:r,rest:o}}}const w={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},v=(t,n,e)=>{let a;const i=w[t];return typeof i=="string"?a=i:n===1?a=i.one:a=i.other.replace("{{count}}",n.toString()),e!=null&&e.addSuffix?e.comparison&&e.comparison>0?"in "+a:a+" ago":a},P={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},M=(t,n,e,a)=>P[t],W={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},p={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},k={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},S={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},F={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},C={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},D=(t,n)=>{const e=Number(t),a=e%100;if(a>20||a<10)switch(a%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"},x={ordinalNumber:D,era:d({values:W,defaultWidth:"wide"}),quarter:d({values:p,defaultWidth:"wide",argumentCallback:t=>t-1}),month:d({values:k,defaultWidth:"wide"}),day:d({values:S,defaultWidth:"wide"}),dayPeriod:d({values:F,defaultWidth:"wide",formattingValues:C,defaultFormattingWidth:"wide"})},A=/^(\d+)(th|st|nd|rd)?/i,j=/\d+/i,T={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},V={any:[/^b/i,/^(a|c)/i]},q={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},J={any:[/1/i,/2/i,/3/i,/4/i]},z={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},N={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},O={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},X={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},E={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},L={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Q={ordinalNumber:g({matchPattern:A,parsePattern:j,valueCallback:t=>parseInt(t,10)}),era:h({matchPatterns:T,defaultMatchWidth:"wide",parsePatterns:V,defaultParseWidth:"any"}),quarter:h({matchPatterns:q,defaultMatchWidth:"wide",parsePatterns:J,defaultParseWidth:"any",valueCallback:t=>t+1}),month:h({matchPatterns:z,defaultMatchWidth:"wide",parsePatterns:N,defaultParseWidth:"any"}),day:h({matchPatterns:O,defaultMatchWidth:"wide",parsePatterns:X,defaultParseWidth:"any"}),dayPeriod:h({matchPatterns:E,defaultMatchWidth:"any",parsePatterns:L,defaultParseWidth:"any"})},R={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Y={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},_={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},B={date:l({formats:R,defaultWidth:"full"}),time:l({formats:Y,defaultWidth:"full"}),dateTime:l({formats:_,defaultWidth:"full"})},H={code:"en-US",formatDistance:v,formatLong:B,formatRelative:M,localize:x,match:Q,options:{weekStartsOn:0,firstWeekContainsDate:1}};export{d as a,l as b,h as c,g as d,H as e};
2
+ //# sourceMappingURL=en-US-BUOWLxFp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"en-US-BUOWLxFp.js","sources":["../../node_modules/date-fns/locale/_lib/buildFormatLongFn.js","../../node_modules/date-fns/locale/_lib/buildLocalizeFn.js","../../node_modules/date-fns/locale/_lib/buildMatchFn.js","../../node_modules/date-fns/locale/_lib/buildMatchPatternFn.js","../../node_modules/date-fns/locale/en-US/_lib/formatDistance.js","../../node_modules/date-fns/locale/en-US/_lib/formatRelative.js","../../node_modules/date-fns/locale/en-US/_lib/localize.js","../../node_modules/date-fns/locale/en-US/_lib/match.js","../../node_modules/date-fns/locale/en-US/_lib/formatLong.js","../../node_modules/date-fns/locale/en-US.js"],"sourcesContent":["export function buildFormatLongFn(args) {\n return (options = {}) => {\n // TODO: Remove String()\n const width = options.width ? String(options.width) : args.defaultWidth;\n const format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}\n","/**\n * The localize function argument callback which allows to convert raw value to\n * the actual type.\n *\n * @param value - The value to convert\n *\n * @returns The converted value\n */\n\n/**\n * The map of localized values for each width.\n */\n\n/**\n * The index type of the locale unit value. It types conversion of units of\n * values that don't start at 0 (i.e. quarters).\n */\n\n/**\n * Converts the unit value to the tuple of values.\n */\n\n/**\n * The tuple of localized era values. The first element represents BC,\n * the second element represents AD.\n */\n\n/**\n * The tuple of localized quarter values. The first element represents Q1.\n */\n\n/**\n * The tuple of localized day values. The first element represents Sunday.\n */\n\n/**\n * The tuple of localized month values. The first element represents January.\n */\n\nexport function buildLocalizeFn(args) {\n return (value, options) => {\n const context = options?.context ? String(options.context) : \"standalone\";\n\n let valuesArray;\n if (context === \"formatting\" && args.formattingValues) {\n const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n const width = options?.width ? String(options.width) : defaultWidth;\n\n valuesArray =\n args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n const defaultWidth = args.defaultWidth;\n const width = options?.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[width] || args.values[defaultWidth];\n }\n const index = args.argumentCallback ? args.argumentCallback(value) : value;\n\n // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n return valuesArray[index];\n };\n}\n","export function buildMatchFn(args) {\n return (string, options = {}) => {\n const width = options.width;\n\n const matchPattern =\n (width && args.matchPatterns[width]) ||\n args.matchPatterns[args.defaultMatchWidth];\n const matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n const matchedString = matchResult[0];\n\n const parsePatterns =\n (width && args.parsePatterns[width]) ||\n args.parsePatterns[args.defaultParseWidth];\n\n const key = Array.isArray(parsePatterns)\n ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString))\n : // [TODO] -- I challenge you to fix the type\n findKey(parsePatterns, (pattern) => pattern.test(matchedString));\n\n let value;\n\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback\n ? // [TODO] -- I challenge you to fix the type\n options.valueCallback(value)\n : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n\nfunction findKey(object, predicate) {\n for (const key in object) {\n if (\n Object.prototype.hasOwnProperty.call(object, key) &&\n predicate(object[key])\n ) {\n return key;\n }\n }\n return undefined;\n}\n\nfunction findIndex(array, predicate) {\n for (let key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n return undefined;\n}\n","export function buildMatchPatternFn(args) {\n return (string, options = {}) => {\n const matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n const matchedString = matchResult[0];\n\n const parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n let value = args.valueCallback\n ? args.valueCallback(parseResult[0])\n : parseResult[0];\n\n // [TODO] I challenge you to fix the type\n value = options.valueCallback ? options.valueCallback(value) : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n","const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"less than a second\",\n other: \"less than {{count}} seconds\",\n },\n\n xSeconds: {\n one: \"1 second\",\n other: \"{{count}} seconds\",\n },\n\n halfAMinute: \"half a minute\",\n\n lessThanXMinutes: {\n one: \"less than a minute\",\n other: \"less than {{count}} minutes\",\n },\n\n xMinutes: {\n one: \"1 minute\",\n other: \"{{count}} minutes\",\n },\n\n aboutXHours: {\n one: \"about 1 hour\",\n other: \"about {{count}} hours\",\n },\n\n xHours: {\n one: \"1 hour\",\n other: \"{{count}} hours\",\n },\n\n xDays: {\n one: \"1 day\",\n other: \"{{count}} days\",\n },\n\n aboutXWeeks: {\n one: \"about 1 week\",\n other: \"about {{count}} weeks\",\n },\n\n xWeeks: {\n one: \"1 week\",\n other: \"{{count}} weeks\",\n },\n\n aboutXMonths: {\n one: \"about 1 month\",\n other: \"about {{count}} months\",\n },\n\n xMonths: {\n one: \"1 month\",\n other: \"{{count}} months\",\n },\n\n aboutXYears: {\n one: \"about 1 year\",\n other: \"about {{count}} years\",\n },\n\n xYears: {\n one: \"1 year\",\n other: \"{{count}} years\",\n },\n\n overXYears: {\n one: \"over 1 year\",\n other: \"over {{count}} years\",\n },\n\n almostXYears: {\n one: \"almost 1 year\",\n other: \"almost {{count}} years\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", count.toString());\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"in \" + result;\n } else {\n return result + \" ago\";\n }\n }\n\n return result;\n};\n","const formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: \"P\",\n};\n\nexport const formatRelative = (token, _date, _baseDate, _options) =>\n formatRelativeLocale[token];\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"B\", \"A\"],\n abbreviated: [\"BC\", \"AD\"],\n wide: [\"Before Christ\", \"Anno Domini\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"Q1\", \"Q2\", \"Q3\", \"Q4\"],\n wide: [\"1st quarter\", \"2nd quarter\", \"3rd quarter\", \"4th quarter\"],\n};\n\n// Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\nconst monthValues = {\n narrow: [\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"],\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"S\", \"M\", \"T\", \"W\", \"T\", \"F\", \"S\"],\n short: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n abbreviated: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n};\n\nconst formattingDayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, _options) => {\n const number = Number(dirtyNumber);\n\n // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`.\n //\n // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'.\n\n const rem100 = number % 100;\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + \"st\";\n case 2:\n return number + \"nd\";\n case 3:\n return number + \"rd\";\n }\n }\n return number + \"th\";\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i,\n};\nconst parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^j/i,\n /^f/i,\n /^m/i,\n /^a/i,\n /^m/i,\n /^j/i,\n /^j/i,\n /^a/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n\n any: [\n /^ja/i,\n /^f/i,\n /^mar/i,\n /^ap/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^au/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, MMMM do, y\",\n long: \"MMMM do, y\",\n medium: \"MMM d, y\",\n short: \"MM/dd/yyyy\",\n};\n\nconst timeFormats = {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","import { formatDistance } from \"./en-US/_lib/formatDistance.js\";\nimport { formatLong } from \"./en-US/_lib/formatLong.js\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.js\";\nimport { localize } from \"./en-US/_lib/localize.js\";\nimport { match } from \"./en-US/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n"],"names":["buildFormatLongFn","args","options","width","buildLocalizeFn","value","context","valuesArray","defaultWidth","index","buildMatchFn","string","matchPattern","matchResult","matchedString","parsePatterns","key","findIndex","pattern","findKey","rest","object","predicate","array","buildMatchPatternFn","parseResult","formatDistanceLocale","formatDistance","token","count","result","tokenValue","formatRelativeLocale","formatRelative","_date","_baseDate","_options","eraValues","quarterValues","monthValues","dayValues","dayPeriodValues","formattingDayPeriodValues","ordinalNumber","dirtyNumber","number","rem100","localize","quarter","matchOrdinalNumberPattern","parseOrdinalNumberPattern","matchEraPatterns","parseEraPatterns","matchQuarterPatterns","parseQuarterPatterns","matchMonthPatterns","parseMonthPatterns","matchDayPatterns","parseDayPatterns","matchDayPeriodPatterns","parseDayPeriodPatterns","match","dateFormats","timeFormats","dateTimeFormats","formatLong","enUS"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9]}
@@ -0,0 +1,10 @@
1
+ var s={exports:{}},e={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.js
4
+ *
5
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var o;function d(){if(o)return e;o=1;var R=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function i(v,r,t){var u=null;if(t!==void 0&&(u=""+t),r.key!==void 0&&(u=""+r.key),"key"in r){t={};for(var n in r)n!=="key"&&(t[n]=r[n])}else t=r;return r=t.ref,{$$typeof:R,type:v,key:u,ref:r!==void 0?r:null,props:t}}return e.Fragment=a,e.jsx=i,e.jsxs=i,e}var x;function l(){return x||(x=1,s.exports=d()),s.exports}var p=l();export{p as j};
10
+ //# sourceMappingURL=jsx-runtime-D_zvdyIk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-runtime-D_zvdyIk.js","sources":["../../node_modules/react/cjs/react-jsx-runtime.production.js","../../node_modules/react/jsx-runtime.js"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","jsxRuntimeModule","require$$0"],"mappings":";;;;;;;;wCAWA,IAAIA,EAAqB,OAAO,IAAI,4BAA4B,EAC9DC,EAAsB,OAAO,IAAI,gBAAgB,EACnD,SAASC,EAAQC,EAAMC,EAAQC,EAAU,CACvC,IAAIC,EAAM,KAGV,GAFWD,IAAX,SAAwBC,EAAM,GAAKD,GACxBD,EAAO,MAAlB,SAA0BE,EAAM,GAAKF,EAAO,KACxC,QAASA,EAAQ,CACnBC,EAAW,CAAA,EACX,QAASE,KAAYH,EACTG,IAAV,QAAuBF,EAASE,CAAQ,EAAIH,EAAOG,CAAQ,QACxDF,EAAWD,EAClB,OAAAA,EAASC,EAAS,IACX,CACL,SAAUL,EACV,KAAMG,EACN,IAAKG,EACL,IAAgBF,IAAX,OAAoBA,EAAS,KAClC,MAAOC,EAEX,CACA,OAAAG,EAAA,SAAmBP,EACnBO,EAAA,IAAcN,EACdM,EAAA,KAAeN,sCC9BbO,EAAA,QAAiBC,EAAA","x_google_ignoreList":[0,1]}
@@ -0,0 +1,11 @@
1
+ var x=44,E=59,m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",S=new Uint8Array(64),k=new Uint8Array(128);for(let u=0;u<m.length;u++){const t=m.charCodeAt(u);S[u]=t,k[t]=u}function c(u,t,e){let i=t-e;i=i<0?-i<<1|1:i<<1;do{let n=i&31;i>>>=5,i>0&&(n|=32),u.write(S[n])}while(i>0);return t}var b=1024*16,C=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(u){return Buffer.from(u.buffer,u.byteOffset,u.byteLength).toString()}}:{decode(u){let t="";for(let e=0;e<u.length;e++)t+=String.fromCharCode(u[e]);return t}},L=class{constructor(){this.pos=0,this.out="",this.buffer=new Uint8Array(b)}write(u){const{buffer:t}=this;t[this.pos++]=u,this.pos===b&&(this.out+=C.decode(t),this.pos=0)}flush(){const{buffer:u,out:t,pos:e}=this;return e>0?t+C.decode(u.subarray(0,e)):t}};function R(u){const t=new L;let e=0,i=0,n=0,r=0;for(let s=0;s<u.length;s++){const h=u[s];if(s>0&&t.write(E),h.length===0)continue;let o=0;for(let l=0;l<h.length;l++){const a=h[l];l>0&&t.write(x),o=c(t,a[0],o),a.length!==1&&(e=c(t,a[1],e),i=c(t,a[2],i),n=c(t,a[3],n),a.length!==4&&(r=c(t,a[4],r)))}}return t.flush()}class p{constructor(t){this.bits=t instanceof p?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}}class g{constructor(t,e,i){this.start=t,this.end=e,this.original=i,this.intro="",this.outro="",this.content=i,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){const t=new g(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.start<t&&t<this.end}eachNext(t){let e=this;for(;e;)t(e),e=e.next}eachPrevious(t){let e=this;for(;e;)t(e),e=e.previous}edit(t,e,i){return this.content=t,i||(this.intro="",this.outro=""),this.storeName=e,this.edited=!0,this}prependLeft(t){this.outro=t+this.outro}prependRight(t){this.intro=t+this.intro}reset(){this.intro="",this.outro="",this.edited&&(this.content=this.original,this.storeName=!1,this.edited=!1)}split(t){const e=t-this.start,i=this.original.slice(0,e),n=this.original.slice(e);this.original=i;const r=new g(t,this.end,n);return r.outro=this.outro,this.outro="",this.end=t,this.edited?(r.edit("",!1),this.content=""):this.content=i,r.next=this.next,r.next&&(r.next.previous=r),r.previous=this,this.next=r,r}toString(){return this.intro+this.content+this.outro}trimEnd(t){if(this.outro=this.outro.replace(t,""),this.outro.length)return!0;const e=this.content.replace(t,"");if(e.length)return e!==this.content&&(this.split(this.start+e.length).edit("",void 0,!0),this.edited&&this.edit(e,this.storeName,!0)),!0;if(this.edit("",void 0,!0),this.intro=this.intro.replace(t,""),this.intro.length)return!0}trimStart(t){if(this.intro=this.intro.replace(t,""),this.intro.length)return!0;const e=this.content.replace(t,"");if(e.length){if(e!==this.content){const i=this.split(this.end-e.length);this.edited&&i.edit(e,this.storeName,!0),this.edit("",void 0,!0)}return!0}else if(this.edit("",void 0,!0),this.outro=this.outro.replace(t,""),this.outro.length)return!0}}function _(){return typeof globalThis<"u"&&typeof globalThis.btoa=="function"?u=>globalThis.btoa(unescape(encodeURIComponent(u))):typeof Buffer=="function"?u=>Buffer.from(u,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}const O=_();class N{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=R(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+O(this.toString())}}function I(u){const t=u.split(`
2
+ `),e=t.filter(r=>/^\t+/.test(r)),i=t.filter(r=>/^ {2,}/.test(r));if(e.length===0&&i.length===0)return null;if(e.length>=i.length)return" ";const n=i.reduce((r,s)=>{const h=/^ +/.exec(s)[0].length;return Math.min(h,r)},1/0);return new Array(n+1).join(" ")}function A(u,t){const e=u.split(/[/\\]/),i=t.split(/[/\\]/);for(e.pop();e[0]===i[0];)e.shift(),i.shift();if(e.length){let n=e.length;for(;n--;)e[n]=".."}return e.concat(i).join("/")}const T=Object.prototype.toString;function j(u){return T.call(u)==="[object Object]"}function y(u){const t=u.split(`
3
+ `),e=[];for(let i=0,n=0;i<t.length;i++)e.push(n),n+=t[i].length+1;return function(n){let r=0,s=e.length;for(;r<s;){const l=r+s>>1;n<e[l]?s=l:r=l+1}const h=r-1,o=n-e[h];return{line:h,column:o}}}const $=/\w/;class U{constructor(t){this.hires=t,this.generatedCodeLine=0,this.generatedCodeColumn=0,this.raw=[],this.rawSegments=this.raw[this.generatedCodeLine]=[],this.pending=null}addEdit(t,e,i,n){if(e.length){const r=e.length-1;let s=e.indexOf(`
4
+ `,0),h=-1;for(;s>=0&&r>s;){const l=[this.generatedCodeColumn,t,i.line,i.column];n>=0&&l.push(n),this.rawSegments.push(l),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,h=s,s=e.indexOf(`
5
+ `,s+1)}const o=[this.generatedCodeColumn,t,i.line,i.column];n>=0&&o.push(n),this.rawSegments.push(o),this.advance(e.slice(h+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(e));this.pending=null}addUneditedChunk(t,e,i,n,r){let s=e.start,h=!0,o=!1;for(;s<e.end;){if(i[s]===`
6
+ `)n.line+=1,n.column=0,this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,h=!0,o=!1;else{if(this.hires||h||r.has(s)){const l=[this.generatedCodeColumn,t,n.line,n.column];this.hires==="boundary"?$.test(i[s])?o||(this.rawSegments.push(l),o=!0):(this.rawSegments.push(l),o=!1):this.rawSegments.push(l)}n.column+=1,this.generatedCodeColumn+=1,h=!1}s+=1}this.pending=null}advance(t){if(!t)return;const e=t.split(`
7
+ `);if(e.length>1){for(let i=0;i<e.length-1;i++)this.generatedCodeLine++,this.raw[this.generatedCodeLine]=this.rawSegments=[];this.generatedCodeColumn=0}this.generatedCodeColumn+=e[e.length-1].length}}const d=`
8
+ `,f={insertLeft:!1,insertRight:!1,storeName:!1};class v{constructor(t,e={}){const i=new g(0,t.length,t);Object.defineProperties(this,{original:{writable:!0,value:t},outro:{writable:!0,value:""},intro:{writable:!0,value:""},firstChunk:{writable:!0,value:i},lastChunk:{writable:!0,value:i},lastSearchedChunk:{writable:!0,value:i},byStart:{writable:!0,value:{}},byEnd:{writable:!0,value:{}},filename:{writable:!0,value:e.filename},indentExclusionRanges:{writable:!0,value:e.indentExclusionRanges},sourcemapLocations:{writable:!0,value:new p},storedNames:{writable:!0,value:{}},indentStr:{writable:!0,value:void 0},ignoreList:{writable:!0,value:e.ignoreList},offset:{writable:!0,value:e.offset||0}}),this.byStart[0]=i,this.byEnd[t.length]=i}addSourcemapLocation(t){this.sourcemapLocations.add(t)}append(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.outro+=t,this}appendLeft(t,e){if(t=t+this.offset,typeof e!="string")throw new TypeError("inserted content must be a string");this._split(t);const i=this.byEnd[t];return i?i.appendLeft(e):this.intro+=e,this}appendRight(t,e){if(t=t+this.offset,typeof e!="string")throw new TypeError("inserted content must be a string");this._split(t);const i=this.byStart[t];return i?i.appendRight(e):this.outro+=e,this}clone(){const t=new v(this.original,{filename:this.filename,offset:this.offset});let e=this.firstChunk,i=t.firstChunk=t.lastSearchedChunk=e.clone();for(;e;){t.byStart[i.start]=i,t.byEnd[i.end]=i;const n=e.next,r=n&&n.clone();r&&(i.next=r,r.previous=i,i=r),e=n}return t.lastChunk=i,this.indentExclusionRanges&&(t.indentExclusionRanges=this.indentExclusionRanges.slice()),t.sourcemapLocations=new p(this.sourcemapLocations),t.intro=this.intro,t.outro=this.outro,t}generateDecodedMap(t){t=t||{};const e=0,i=Object.keys(this.storedNames),n=new U(t.hires),r=y(this.original);return this.intro&&n.advance(this.intro),this.firstChunk.eachNext(s=>{const h=r(s.start);s.intro.length&&n.advance(s.intro),s.edited?n.addEdit(e,s.content,h,s.storeName?i.indexOf(s.original):-1):n.addUneditedChunk(e,s,this.original,h,this.sourcemapLocations),s.outro.length&&n.advance(s.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?A(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:i,mappings:n.raw,x_google_ignoreList:this.ignoreList?[e]:void 0}}generateMap(t){return new N(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=I(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,e){const i=/^[^\r\n]/gm;if(j(t)&&(e=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;e=e||{};const n={};e.exclude&&(typeof e.exclude[0]=="number"?[e.exclude]:e.exclude).forEach(a=>{for(let w=a[0];w<a[1];w+=1)n[w]=!0});let r=e.indentStart!==!1;const s=l=>r?`${t}${l}`:(r=!0,l);this.intro=this.intro.replace(i,s);let h=0,o=this.firstChunk;for(;o;){const l=o.end;if(o.edited)n[h]||(o.content=o.content.replace(i,s),o.content.length&&(r=o.content[o.content.length-1]===`
9
+ `));else for(h=o.start;h<l;){if(!n[h]){const a=this.original[h];a===`
10
+ `?r=!0:a!=="\r"&&r&&(r=!1,h===o.start||(this._splitChunk(o,h),o=o.next),o.prependRight(t))}h+=1}h=o.end,o=o.next}return this.outro=this.outro.replace(i,s),this}insert(){throw new Error("magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)")}insertLeft(t,e){return f.insertLeft||(console.warn("magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead"),f.insertLeft=!0),this.appendLeft(t,e)}insertRight(t,e){return f.insertRight||(console.warn("magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead"),f.insertRight=!0),this.prependRight(t,e)}move(t,e,i){if(t=t+this.offset,e=e+this.offset,i=i+this.offset,i>=t&&i<=e)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(e),this._split(i);const n=this.byStart[t],r=this.byEnd[e],s=n.previous,h=r.next,o=this.byStart[i];if(!o&&r===this.lastChunk)return this;const l=o?o.previous:this.lastChunk;return s&&(s.next=h),h&&(h.previous=s),l&&(l.next=n),o&&(o.previous=r),n.previous||(this.firstChunk=r.next),r.next||(this.lastChunk=n.previous,this.lastChunk.next=null),n.previous=l,r.next=o||null,l||(this.firstChunk=n),o||(this.lastChunk=r),this}overwrite(t,e,i,n){return n=n||{},this.update(t,e,i,{...n,overwrite:!n.contentOnly})}update(t,e,i,n){if(t=t+this.offset,e=e+this.offset,typeof i!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length}if(e>this.original.length)throw new Error("end is out of bounds");if(t===e)throw new Error("Cannot overwrite a zero-length range – use appendLeft or prependRight instead");this._split(t),this._split(e),n===!0&&(f.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),f.storeName=!0),n={storeName:!0});const r=n!==void 0?n.storeName:!1,s=n!==void 0?n.overwrite:!1;if(r){const l=this.original.slice(t,e);Object.defineProperty(this.storedNames,l,{writable:!0,value:!0,enumerable:!0})}const h=this.byStart[t],o=this.byEnd[e];if(h){let l=h;for(;l!==o;){if(l.next!==this.byStart[l.end])throw new Error("Cannot overwrite across a split point");l=l.next,l.edit("",!1)}h.edit(i,r,!s)}else{const l=new g(t,e,"").edit(i,r);o.next=l,l.previous=o}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,e){if(t=t+this.offset,typeof e!="string")throw new TypeError("inserted content must be a string");this._split(t);const i=this.byEnd[t];return i?i.prependLeft(e):this.intro=e+this.intro,this}prependRight(t,e){if(t=t+this.offset,typeof e!="string")throw new TypeError("inserted content must be a string");this._split(t);const i=this.byStart[t];return i?i.prependRight(e):this.outro=e+this.outro,this}remove(t,e){if(t=t+this.offset,e=e+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length}if(t===e)return this;if(t<0||e>this.original.length)throw new Error("Character is out of bounds");if(t>e)throw new Error("end must be greater than start");this._split(t),this._split(e);let i=this.byStart[t];for(;i;)i.intro="",i.outro="",i.edit(""),i=e>i.end?this.byStart[i.end]:null;return this}reset(t,e){if(t=t+this.offset,e=e+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length}if(t===e)return this;if(t<0||e>this.original.length)throw new Error("Character is out of bounds");if(t>e)throw new Error("end must be greater than start");this._split(t),this._split(e);let i=this.byStart[t];for(;i;)i.reset(),i=e>i.end?this.byStart[i.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(d);if(t!==-1)return this.outro.substr(t+1);let e=this.outro,i=this.lastChunk;do{if(i.outro.length>0){if(t=i.outro.lastIndexOf(d),t!==-1)return i.outro.substr(t+1)+e;e=i.outro+e}if(i.content.length>0){if(t=i.content.lastIndexOf(d),t!==-1)return i.content.substr(t+1)+e;e=i.content+e}if(i.intro.length>0){if(t=i.intro.lastIndexOf(d),t!==-1)return i.intro.substr(t+1)+e;e=i.intro+e}}while(i=i.previous);return t=this.intro.lastIndexOf(d),t!==-1?this.intro.substr(t+1)+e:this.intro+e}slice(t=0,e=this.original.length-this.offset){if(t=t+this.offset,e=e+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length}let i="",n=this.firstChunk;for(;n&&(n.start>t||n.end<=t);){if(n.start<e&&n.end>=e)return i;n=n.next}if(n&&n.edited&&n.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);const r=n;for(;n;){n.intro&&(r!==n||n.start===t)&&(i+=n.intro);const s=n.start<e&&n.end>=e;if(s&&n.edited&&n.end!==e)throw new Error(`Cannot use replaced character ${e} as slice end anchor.`);const h=r===n?t-n.start:0,o=s?n.content.length+e-n.end:n.content.length;if(i+=n.content.slice(h,o),n.outro&&(!s||n.end===e)&&(i+=n.outro),s)break;n=n.next}return i}snip(t,e){const i=this.clone();return i.remove(0,t),i.remove(e,i.original.length),i}_split(t){if(this.byStart[t]||this.byEnd[t])return;let e=this.lastSearchedChunk;const i=t>e.end;for(;e;){if(e.contains(t))return this._splitChunk(e,t);e=i?this.byStart[e.end]:this.byEnd[e.start]}}_splitChunk(t,e){if(t.edited&&t.content.length){const n=y(this.original)(e);throw new Error(`Cannot split a chunk that has already been edited (${n.line}:${n.column} – "${t.original}")`)}const i=t.split(e);return this.byEnd[e]=t,this.byStart[e]=i,this.byEnd[i.end]=i,t===this.lastChunk&&(this.lastChunk=i),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,e=this.firstChunk;for(;e;)t+=e.toString(),e=e.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,e=0;do e+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return e}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){const e=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(e,""),this.outro.length)return!0;let i=this.lastChunk;do{const n=i.end,r=i.trimEnd(e);if(i.end!==n&&(this.lastChunk===i&&(this.lastChunk=i.next),this.byEnd[i.end]=i,this.byStart[i.next.start]=i.next,this.byEnd[i.next.end]=i.next),r)return!0;i=i.previous}while(i);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){const e=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(e,""),this.intro.length)return!0;let i=this.firstChunk;do{const n=i.end,r=i.trimStart(e);if(i.end!==n&&(i===this.lastChunk&&(this.lastChunk=i.next),this.byEnd[i.end]=i,this.byStart[i.next.start]=i.next,this.byEnd[i.next.end]=i.next),r)return!0;i=i.next}while(i);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,e){function i(r,s){return typeof e=="string"?e.replace(/\$(\$|&|\d+)/g,(h,o)=>o==="$"?"$":o==="&"?r[0]:+o<r.length?r[+o]:`$${o}`):e(...r,r.index,s,r.groups)}function n(r,s){let h;const o=[];for(;h=r.exec(s);)o.push(h);return o}if(t.global)n(t,this.original).forEach(s=>{if(s.index!=null){const h=i(s,this.original);h!==s[0]&&this.overwrite(s.index,s.index+s[0].length,h)}});else{const r=this.original.match(t);if(r&&r.index!=null){const s=i(r,this.original);s!==r[0]&&this.overwrite(r.index,r.index+r[0].length,s)}}return this}_replaceString(t,e){const{original:i}=this,n=i.indexOf(t);return n!==-1&&this.overwrite(n,n+t.length,e),this}replace(t,e){return typeof t=="string"?this._replaceString(t,e):this._replaceRegexp(t,e)}_replaceAllString(t,e){const{original:i}=this,n=t.length;for(let r=i.indexOf(t);r!==-1;r=i.indexOf(t,r+n))i.slice(r,r+n)!==e&&this.overwrite(r,r+n,e);return this}replaceAll(t,e){if(typeof t=="string")return this._replaceAllString(t,e);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,e)}}export{N as SourceMap,v as default};
11
+ //# sourceMappingURL=magic-string.es-CTSuTltI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magic-string.es-CTSuTltI.js","sources":["../../node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs","../../node_modules/magic-string/dist/magic-string.es.mjs"],"sourcesContent":["// src/vlq.ts\nvar comma = \",\".charCodeAt(0);\nvar semicolon = \";\".charCodeAt(0);\nvar chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar intToChar = new Uint8Array(64);\nvar charToInt = new Uint8Array(128);\nfor (let i = 0; i < chars.length; i++) {\n const c = chars.charCodeAt(i);\n intToChar[i] = c;\n charToInt[c] = i;\n}\nfunction decodeInteger(reader, relative) {\n let value = 0;\n let shift = 0;\n let integer = 0;\n do {\n const c = reader.next();\n integer = charToInt[c];\n value |= (integer & 31) << shift;\n shift += 5;\n } while (integer & 32);\n const shouldNegate = value & 1;\n value >>>= 1;\n if (shouldNegate) {\n value = -2147483648 | -value;\n }\n return relative + value;\n}\nfunction encodeInteger(builder, num, relative) {\n let delta = num - relative;\n delta = delta < 0 ? -delta << 1 | 1 : delta << 1;\n do {\n let clamped = delta & 31;\n delta >>>= 5;\n if (delta > 0) clamped |= 32;\n builder.write(intToChar[clamped]);\n } while (delta > 0);\n return num;\n}\nfunction hasMoreVlq(reader, max) {\n if (reader.pos >= max) return false;\n return reader.peek() !== comma;\n}\n\n// src/strings.ts\nvar bufLength = 1024 * 16;\nvar td = typeof TextDecoder !== \"undefined\" ? /* @__PURE__ */ new TextDecoder() : typeof Buffer !== \"undefined\" ? {\n decode(buf) {\n const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);\n return out.toString();\n }\n} : {\n decode(buf) {\n let out = \"\";\n for (let i = 0; i < buf.length; i++) {\n out += String.fromCharCode(buf[i]);\n }\n return out;\n }\n};\nvar StringWriter = class {\n constructor() {\n this.pos = 0;\n this.out = \"\";\n this.buffer = new Uint8Array(bufLength);\n }\n write(v) {\n const { buffer } = this;\n buffer[this.pos++] = v;\n if (this.pos === bufLength) {\n this.out += td.decode(buffer);\n this.pos = 0;\n }\n }\n flush() {\n const { buffer, out, pos } = this;\n return pos > 0 ? out + td.decode(buffer.subarray(0, pos)) : out;\n }\n};\nvar StringReader = class {\n constructor(buffer) {\n this.pos = 0;\n this.buffer = buffer;\n }\n next() {\n return this.buffer.charCodeAt(this.pos++);\n }\n peek() {\n return this.buffer.charCodeAt(this.pos);\n }\n indexOf(char) {\n const { buffer, pos } = this;\n const idx = buffer.indexOf(char, pos);\n return idx === -1 ? buffer.length : idx;\n }\n};\n\n// src/scopes.ts\nvar EMPTY = [];\nfunction decodeOriginalScopes(input) {\n const { length } = input;\n const reader = new StringReader(input);\n const scopes = [];\n const stack = [];\n let line = 0;\n for (; reader.pos < length; reader.pos++) {\n line = decodeInteger(reader, line);\n const column = decodeInteger(reader, 0);\n if (!hasMoreVlq(reader, length)) {\n const last = stack.pop();\n last[2] = line;\n last[3] = column;\n continue;\n }\n const kind = decodeInteger(reader, 0);\n const fields = decodeInteger(reader, 0);\n const hasName = fields & 1;\n const scope = hasName ? [line, column, 0, 0, kind, decodeInteger(reader, 0)] : [line, column, 0, 0, kind];\n let vars = EMPTY;\n if (hasMoreVlq(reader, length)) {\n vars = [];\n do {\n const varsIndex = decodeInteger(reader, 0);\n vars.push(varsIndex);\n } while (hasMoreVlq(reader, length));\n }\n scope.vars = vars;\n scopes.push(scope);\n stack.push(scope);\n }\n return scopes;\n}\nfunction encodeOriginalScopes(scopes) {\n const writer = new StringWriter();\n for (let i = 0; i < scopes.length; ) {\n i = _encodeOriginalScopes(scopes, i, writer, [0]);\n }\n return writer.flush();\n}\nfunction _encodeOriginalScopes(scopes, index, writer, state) {\n const scope = scopes[index];\n const { 0: startLine, 1: startColumn, 2: endLine, 3: endColumn, 4: kind, vars } = scope;\n if (index > 0) writer.write(comma);\n state[0] = encodeInteger(writer, startLine, state[0]);\n encodeInteger(writer, startColumn, 0);\n encodeInteger(writer, kind, 0);\n const fields = scope.length === 6 ? 1 : 0;\n encodeInteger(writer, fields, 0);\n if (scope.length === 6) encodeInteger(writer, scope[5], 0);\n for (const v of vars) {\n encodeInteger(writer, v, 0);\n }\n for (index++; index < scopes.length; ) {\n const next = scopes[index];\n const { 0: l, 1: c } = next;\n if (l > endLine || l === endLine && c >= endColumn) {\n break;\n }\n index = _encodeOriginalScopes(scopes, index, writer, state);\n }\n writer.write(comma);\n state[0] = encodeInteger(writer, endLine, state[0]);\n encodeInteger(writer, endColumn, 0);\n return index;\n}\nfunction decodeGeneratedRanges(input) {\n const { length } = input;\n const reader = new StringReader(input);\n const ranges = [];\n const stack = [];\n let genLine = 0;\n let definitionSourcesIndex = 0;\n let definitionScopeIndex = 0;\n let callsiteSourcesIndex = 0;\n let callsiteLine = 0;\n let callsiteColumn = 0;\n let bindingLine = 0;\n let bindingColumn = 0;\n do {\n const semi = reader.indexOf(\";\");\n let genColumn = 0;\n for (; reader.pos < semi; reader.pos++) {\n genColumn = decodeInteger(reader, genColumn);\n if (!hasMoreVlq(reader, semi)) {\n const last = stack.pop();\n last[2] = genLine;\n last[3] = genColumn;\n continue;\n }\n const fields = decodeInteger(reader, 0);\n const hasDefinition = fields & 1;\n const hasCallsite = fields & 2;\n const hasScope = fields & 4;\n let callsite = null;\n let bindings = EMPTY;\n let range;\n if (hasDefinition) {\n const defSourcesIndex = decodeInteger(reader, definitionSourcesIndex);\n definitionScopeIndex = decodeInteger(\n reader,\n definitionSourcesIndex === defSourcesIndex ? definitionScopeIndex : 0\n );\n definitionSourcesIndex = defSourcesIndex;\n range = [genLine, genColumn, 0, 0, defSourcesIndex, definitionScopeIndex];\n } else {\n range = [genLine, genColumn, 0, 0];\n }\n range.isScope = !!hasScope;\n if (hasCallsite) {\n const prevCsi = callsiteSourcesIndex;\n const prevLine = callsiteLine;\n callsiteSourcesIndex = decodeInteger(reader, callsiteSourcesIndex);\n const sameSource = prevCsi === callsiteSourcesIndex;\n callsiteLine = decodeInteger(reader, sameSource ? callsiteLine : 0);\n callsiteColumn = decodeInteger(\n reader,\n sameSource && prevLine === callsiteLine ? callsiteColumn : 0\n );\n callsite = [callsiteSourcesIndex, callsiteLine, callsiteColumn];\n }\n range.callsite = callsite;\n if (hasMoreVlq(reader, semi)) {\n bindings = [];\n do {\n bindingLine = genLine;\n bindingColumn = genColumn;\n const expressionsCount = decodeInteger(reader, 0);\n let expressionRanges;\n if (expressionsCount < -1) {\n expressionRanges = [[decodeInteger(reader, 0)]];\n for (let i = -1; i > expressionsCount; i--) {\n const prevBl = bindingLine;\n bindingLine = decodeInteger(reader, bindingLine);\n bindingColumn = decodeInteger(reader, bindingLine === prevBl ? bindingColumn : 0);\n const expression = decodeInteger(reader, 0);\n expressionRanges.push([expression, bindingLine, bindingColumn]);\n }\n } else {\n expressionRanges = [[expressionsCount]];\n }\n bindings.push(expressionRanges);\n } while (hasMoreVlq(reader, semi));\n }\n range.bindings = bindings;\n ranges.push(range);\n stack.push(range);\n }\n genLine++;\n reader.pos = semi + 1;\n } while (reader.pos < length);\n return ranges;\n}\nfunction encodeGeneratedRanges(ranges) {\n if (ranges.length === 0) return \"\";\n const writer = new StringWriter();\n for (let i = 0; i < ranges.length; ) {\n i = _encodeGeneratedRanges(ranges, i, writer, [0, 0, 0, 0, 0, 0, 0]);\n }\n return writer.flush();\n}\nfunction _encodeGeneratedRanges(ranges, index, writer, state) {\n const range = ranges[index];\n const {\n 0: startLine,\n 1: startColumn,\n 2: endLine,\n 3: endColumn,\n isScope,\n callsite,\n bindings\n } = range;\n if (state[0] < startLine) {\n catchupLine(writer, state[0], startLine);\n state[0] = startLine;\n state[1] = 0;\n } else if (index > 0) {\n writer.write(comma);\n }\n state[1] = encodeInteger(writer, range[1], state[1]);\n const fields = (range.length === 6 ? 1 : 0) | (callsite ? 2 : 0) | (isScope ? 4 : 0);\n encodeInteger(writer, fields, 0);\n if (range.length === 6) {\n const { 4: sourcesIndex, 5: scopesIndex } = range;\n if (sourcesIndex !== state[2]) {\n state[3] = 0;\n }\n state[2] = encodeInteger(writer, sourcesIndex, state[2]);\n state[3] = encodeInteger(writer, scopesIndex, state[3]);\n }\n if (callsite) {\n const { 0: sourcesIndex, 1: callLine, 2: callColumn } = range.callsite;\n if (sourcesIndex !== state[4]) {\n state[5] = 0;\n state[6] = 0;\n } else if (callLine !== state[5]) {\n state[6] = 0;\n }\n state[4] = encodeInteger(writer, sourcesIndex, state[4]);\n state[5] = encodeInteger(writer, callLine, state[5]);\n state[6] = encodeInteger(writer, callColumn, state[6]);\n }\n if (bindings) {\n for (const binding of bindings) {\n if (binding.length > 1) encodeInteger(writer, -binding.length, 0);\n const expression = binding[0][0];\n encodeInteger(writer, expression, 0);\n let bindingStartLine = startLine;\n let bindingStartColumn = startColumn;\n for (let i = 1; i < binding.length; i++) {\n const expRange = binding[i];\n bindingStartLine = encodeInteger(writer, expRange[1], bindingStartLine);\n bindingStartColumn = encodeInteger(writer, expRange[2], bindingStartColumn);\n encodeInteger(writer, expRange[0], 0);\n }\n }\n }\n for (index++; index < ranges.length; ) {\n const next = ranges[index];\n const { 0: l, 1: c } = next;\n if (l > endLine || l === endLine && c >= endColumn) {\n break;\n }\n index = _encodeGeneratedRanges(ranges, index, writer, state);\n }\n if (state[0] < endLine) {\n catchupLine(writer, state[0], endLine);\n state[0] = endLine;\n state[1] = 0;\n } else {\n writer.write(comma);\n }\n state[1] = encodeInteger(writer, endColumn, state[1]);\n return index;\n}\nfunction catchupLine(writer, lastLine, line) {\n do {\n writer.write(semicolon);\n } while (++lastLine < line);\n}\n\n// src/sourcemap-codec.ts\nfunction decode(mappings) {\n const { length } = mappings;\n const reader = new StringReader(mappings);\n const decoded = [];\n let genColumn = 0;\n let sourcesIndex = 0;\n let sourceLine = 0;\n let sourceColumn = 0;\n let namesIndex = 0;\n do {\n const semi = reader.indexOf(\";\");\n const line = [];\n let sorted = true;\n let lastCol = 0;\n genColumn = 0;\n while (reader.pos < semi) {\n let seg;\n genColumn = decodeInteger(reader, genColumn);\n if (genColumn < lastCol) sorted = false;\n lastCol = genColumn;\n if (hasMoreVlq(reader, semi)) {\n sourcesIndex = decodeInteger(reader, sourcesIndex);\n sourceLine = decodeInteger(reader, sourceLine);\n sourceColumn = decodeInteger(reader, sourceColumn);\n if (hasMoreVlq(reader, semi)) {\n namesIndex = decodeInteger(reader, namesIndex);\n seg = [genColumn, sourcesIndex, sourceLine, sourceColumn, namesIndex];\n } else {\n seg = [genColumn, sourcesIndex, sourceLine, sourceColumn];\n }\n } else {\n seg = [genColumn];\n }\n line.push(seg);\n reader.pos++;\n }\n if (!sorted) sort(line);\n decoded.push(line);\n reader.pos = semi + 1;\n } while (reader.pos <= length);\n return decoded;\n}\nfunction sort(line) {\n line.sort(sortComparator);\n}\nfunction sortComparator(a, b) {\n return a[0] - b[0];\n}\nfunction encode(decoded) {\n const writer = new StringWriter();\n let sourcesIndex = 0;\n let sourceLine = 0;\n let sourceColumn = 0;\n let namesIndex = 0;\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n if (i > 0) writer.write(semicolon);\n if (line.length === 0) continue;\n let genColumn = 0;\n for (let j = 0; j < line.length; j++) {\n const segment = line[j];\n if (j > 0) writer.write(comma);\n genColumn = encodeInteger(writer, segment[0], genColumn);\n if (segment.length === 1) continue;\n sourcesIndex = encodeInteger(writer, segment[1], sourcesIndex);\n sourceLine = encodeInteger(writer, segment[2], sourceLine);\n sourceColumn = encodeInteger(writer, segment[3], sourceColumn);\n if (segment.length === 4) continue;\n namesIndex = encodeInteger(writer, segment[4], namesIndex);\n }\n }\n return writer.flush();\n}\nexport {\n decode,\n decodeGeneratedRanges,\n decodeOriginalScopes,\n encode,\n encodeGeneratedRanges,\n encodeOriginalScopes\n};\n//# sourceMappingURL=sourcemap-codec.mjs.map\n","import { encode } from '@jridgewell/sourcemap-codec';\n\nclass BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[n >> 5] |= 1 << (n & 31);\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[n >> 5] & (1 << (n & 31)));\n\t}\n}\n\nclass Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t{\n\t\t\tthis.previous = null;\n\t\t\tthis.next = null;\n\t\t}\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\treset() {\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\t\tif (this.edited) {\n\t\t\tthis.content = this.original;\n\t\t\tthis.storeName = false;\n\t\t\tthis.edited = false;\n\t\t}\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// after split we should save the edit content record into the correct chunk\n\t\t\t// to make sure sourcemap correct\n\t\t\t// For example:\n\t\t\t// ' test'.trim()\n\t\t\t// split -> ' ' + 'test'\n\t\t\t// ✔️ edit -> '' + 'test'\n\t\t\t// ✖️ edit -> 'test' + ''\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t\tif (this.edited) {\n\t\t\t\t\t// save the change, if it has been edited\n\t\t\t\t\tthis.edit(trimmed, this.storeName, true);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tconst newChunk = this.split(this.end - trimmed.length);\n\t\t\t\tif (this.edited) {\n\t\t\t\t\t// save the change, if it has been edited\n\t\t\t\t\tnewChunk.edit(trimmed, this.storeName, true);\n\t\t\t\t}\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n\nfunction getBtoa() {\n\tif (typeof globalThis !== 'undefined' && typeof globalThis.btoa === 'function') {\n\t\treturn (str) => globalThis.btoa(unescape(encodeURIComponent(str)));\n\t} else if (typeof Buffer === 'function') {\n\t\treturn (str) => Buffer.from(str, 'utf-8').toString('base64');\n\t} else {\n\t\treturn () => {\n\t\t\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n\t\t};\n\t}\n}\n\nconst btoa = /*#__PURE__*/ getBtoa();\n\nclass SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t\tif (typeof properties.x_google_ignoreList !== 'undefined') {\n\t\t\tthis.x_google_ignoreList = properties.x_google_ignoreList;\n\t\t}\n\t\tif (typeof properties.debugId !== 'undefined') {\n\t\t\tthis.debugId = properties.debugId;\n\t\t}\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n\nfunction guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter((line) => /^\\t+/.test(line));\n\tconst spaced = lines.filter((line) => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n\nfunction getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n\nconst toString = Object.prototype.toString;\n\nfunction isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n\nfunction getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n\nconst wordRegex = /\\w/;\n\nclass Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst contentLengthMinusOne = content.length - 1;\n\t\t\tlet contentLineEnd = content.indexOf('\\n', 0);\n\t\t\tlet previousContentLineEnd = -1;\n\t\t\t// Loop through each line in the content and add a segment, but stop if the last line is empty,\n\t\t\t// else code afterwards would fill one line too many\n\t\t\twhile (contentLineEnd >= 0 && contentLengthMinusOne > contentLineEnd) {\n\t\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\t\tif (nameIndex >= 0) {\n\t\t\t\t\tsegment.push(nameIndex);\n\t\t\t\t}\n\t\t\t\tthis.rawSegments.push(segment);\n\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\n\t\t\t\tpreviousContentLineEnd = contentLineEnd;\n\t\t\t\tcontentLineEnd = content.indexOf('\\n', contentLineEnd + 1);\n\t\t\t}\n\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\n\t\t\tthis.advance(content.slice(previousContentLineEnd + 1));\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t\tthis.advance(content);\n\t\t}\n\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\t\t// when iterating each char, check if it's in a word boundary\n\t\tlet charInHiresBoundary = false;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t\tcharInHiresBoundary = false;\n\t\t\t} else {\n\t\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\n\t\t\t\t\tif (this.hires === 'boundary') {\n\t\t\t\t\t\t// in hires \"boundary\", group segments per word boundary than per char\n\t\t\t\t\t\tif (wordRegex.test(original[originalCharIndex])) {\n\t\t\t\t\t\t\t// for first char in the boundary found, start the boundary by pushing a segment\n\t\t\t\t\t\t\tif (!charInHiresBoundary) {\n\t\t\t\t\t\t\t\tthis.rawSegments.push(segment);\n\t\t\t\t\t\t\t\tcharInHiresBoundary = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// for non-word char, end the boundary by pushing a segment\n\t\t\t\t\t\t\tthis.rawSegments.push(segment);\n\t\t\t\t\t\t\tcharInHiresBoundary = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.rawSegments.push(segment);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false,\n};\n\nclass MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: undefined },\n\t\t\tignoreList: { writable: true, value: options.ignoreList },\n\t\t\toffset: { writable: true, value: options.offset || 0 },\n\t\t});\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tindex = index + this.offset;\n\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tindex = index + this.offset;\n\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename, offset: this.offset });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext((chunk) => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1,\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : undefined,\n\t\t\tsources: [\n\t\t\t\toptions.source ? getRelativePath(options.file || '', options.source) : options.file || '',\n\t\t\t],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : undefined,\n\t\t\tnames,\n\t\t\tmappings: mappings.raw,\n\t\t\tx_google_ignoreList: this.ignoreList ? [sourceIndex] : undefined,\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\t_ensureindentStr() {\n\t\tif (this.indentStr === undefined) {\n\t\t\tthis.indentStr = guessIndent(this.original);\n\t\t}\n\t}\n\n\t_getRawIndentString() {\n\t\tthis._ensureindentStr();\n\t\treturn this.indentStr;\n\t}\n\n\tgetIndentString() {\n\t\tthis._ensureindentStr();\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tif (indentStr === undefined) {\n\t\t\tthis._ensureindentStr();\n\t\t\tindentStr = this.indentStr || '\\t';\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach((exclusion) => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = (match) => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error(\n\t\t\t'magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)',\n\t\t);\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn(\n\t\t\t\t'magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead',\n\t\t\t);\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn(\n\t\t\t\t'magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead',\n\t\t\t);\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\t\tindex = index + this.offset;\n\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\toptions = options || {};\n\t\treturn this.update(start, end, content, { ...options, overwrite: !options.contentOnly });\n\t}\n\n\tupdate(start, end, content, options) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\tif (this.original.length !== 0) {\n\t\t\twhile (start < 0) start += this.original.length;\n\t\t\twhile (end < 0) end += this.original.length;\n\t\t}\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error(\n\t\t\t\t'Cannot overwrite a zero-length range – use appendLeft or prependRight instead',\n\t\t\t);\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t'The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string',\n\t\t\t\t);\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst overwrite = options !== undefined ? options.overwrite : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tObject.defineProperty(this.storedNames, original, {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: true,\n\t\t\t\tenumerable: true,\n\t\t\t});\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tlet chunk = first;\n\t\t\twhile (chunk !== last) {\n\t\t\t\tif (chunk.next !== this.byStart[chunk.end]) {\n\t\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t\t}\n\t\t\t\tchunk = chunk.next;\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, !overwrite);\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tindex = index + this.offset;\n\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tindex = index + this.offset;\n\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\n\t\tif (this.original.length !== 0) {\n\t\t\twhile (start < 0) start += this.original.length;\n\t\t\twhile (end < 0) end += this.original.length;\n\t\t}\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\t\treturn this;\n\t}\n\n\treset(start, end) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\n\t\tif (this.original.length !== 0) {\n\t\t\twhile (start < 0) start += this.original.length;\n\t\t\twhile (end < 0) end += this.original.length;\n\t\t}\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.reset();\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length) return this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length) return chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length) return chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length) return chunk.intro[chunk.intro.length - 1];\n\t\t} while ((chunk = chunk.previous));\n\t\tif (this.intro.length) return this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1) return this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1) return chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1) return chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1) return chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while ((chunk = chunk.previous));\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1) return this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length - this.offset) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\n\t\tif (this.original.length !== 0) {\n\t\t\twhile (start < 0) start += this.original.length;\n\t\t\twhile (end < 0) end += this.original.length;\n\t\t}\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${chunk.original}\")`,\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (\n\t\t\t\t(chunk.intro.length && chunk.intro.trim()) ||\n\t\t\t\t(chunk.content.length && chunk.content.trim()) ||\n\t\t\t\t(chunk.outro.length && chunk.outro.trim())\n\t\t\t)\n\t\t\t\treturn false;\n\t\t} while ((chunk = chunk.next));\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while ((chunk = chunk.next));\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n\n\thasChanged() {\n\t\treturn this.original !== this.toString();\n\t}\n\n\t_replaceRegexp(searchValue, replacement) {\n\t\tfunction getReplacement(match, str) {\n\t\t\tif (typeof replacement === 'string') {\n\t\t\t\treturn replacement.replace(/\\$(\\$|&|\\d+)/g, (_, i) => {\n\t\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#specifying_a_string_as_a_parameter\n\t\t\t\t\tif (i === '$') return '$';\n\t\t\t\t\tif (i === '&') return match[0];\n\t\t\t\t\tconst num = +i;\n\t\t\t\t\tif (num < match.length) return match[+i];\n\t\t\t\t\treturn `$${i}`;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn replacement(...match, match.index, str, match.groups);\n\t\t\t}\n\t\t}\n\t\tfunction matchAll(re, str) {\n\t\t\tlet match;\n\t\t\tconst matches = [];\n\t\t\twhile ((match = re.exec(str))) {\n\t\t\t\tmatches.push(match);\n\t\t\t}\n\t\t\treturn matches;\n\t\t}\n\t\tif (searchValue.global) {\n\t\t\tconst matches = matchAll(searchValue, this.original);\n\t\t\tmatches.forEach((match) => {\n\t\t\t\tif (match.index != null) {\n\t\t\t\t\tconst replacement = getReplacement(match, this.original);\n\t\t\t\t\tif (replacement !== match[0]) {\n\t\t\t\t\t\tthis.overwrite(match.index, match.index + match[0].length, replacement);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tconst match = this.original.match(searchValue);\n\t\t\tif (match && match.index != null) {\n\t\t\t\tconst replacement = getReplacement(match, this.original);\n\t\t\t\tif (replacement !== match[0]) {\n\t\t\t\t\tthis.overwrite(match.index, match.index + match[0].length, replacement);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\t_replaceString(string, replacement) {\n\t\tconst { original } = this;\n\t\tconst index = original.indexOf(string);\n\n\t\tif (index !== -1) {\n\t\t\tthis.overwrite(index, index + string.length, replacement);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\treplace(searchValue, replacement) {\n\t\tif (typeof searchValue === 'string') {\n\t\t\treturn this._replaceString(searchValue, replacement);\n\t\t}\n\n\t\treturn this._replaceRegexp(searchValue, replacement);\n\t}\n\n\t_replaceAllString(string, replacement) {\n\t\tconst { original } = this;\n\t\tconst stringLength = string.length;\n\t\tfor (\n\t\t\tlet index = original.indexOf(string);\n\t\t\tindex !== -1;\n\t\t\tindex = original.indexOf(string, index + stringLength)\n\t\t) {\n\t\t\tconst previous = original.slice(index, index + stringLength);\n\t\t\tif (previous !== replacement) this.overwrite(index, index + stringLength, replacement);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\treplaceAll(searchValue, replacement) {\n\t\tif (typeof searchValue === 'string') {\n\t\t\treturn this._replaceAllString(searchValue, replacement);\n\t\t}\n\n\t\tif (!searchValue.global) {\n\t\t\tthrow new TypeError(\n\t\t\t\t'MagicString.prototype.replaceAll called with a non-global RegExp argument',\n\t\t\t);\n\t\t}\n\n\t\treturn this._replaceRegexp(searchValue, replacement);\n\t}\n}\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nclass Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator,\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error(\n\t\t\t\t'bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`',\n\t\t\t);\n\t\t}\n\n\t\t['filename', 'ignoreList', 'indentExclusionRanges', 'separator'].forEach((option) => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || '',\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator,\n\t\t});\n\n\t\tthis.sources.forEach((source) => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator,\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tlet x_google_ignoreList = undefined;\n\t\tthis.sources.forEach((source) => {\n\t\t\tObject.keys(source.content.storedNames).forEach((name) => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext((chunk) => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1,\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\n\t\t\tif (source.ignoreList && sourceIndex !== -1) {\n\t\t\t\tif (x_google_ignoreList === undefined) {\n\t\t\t\t\tx_google_ignoreList = [];\n\t\t\t\t}\n\t\t\t\tx_google_ignoreList.push(sourceIndex);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : undefined,\n\t\t\tsources: this.uniqueSources.map((source) => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map((source) => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw,\n\t\t\tx_google_ignoreList,\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach((source) => {\n\t\t\tconst indentStr = source.content._getRawIndentString();\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart, //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty() {\n\t\tif (this.intro.length && this.intro.trim()) return false;\n\t\tif (this.sources.some((source) => !source.content.isEmpty())) return false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce(\n\t\t\t(length, source) => length + source.content.length(),\n\t\t\tthis.intro.length,\n\t\t);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n\nexport { Bundle, SourceMap, MagicString as default };\n//# sourceMappingURL=magic-string.es.mjs.map\n"],"names":["comma","semicolon","chars","intToChar","charToInt","i","c","encodeInteger","builder","num","relative","delta","clamped","bufLength","td","buf","out","StringWriter","v","buffer","pos","encode","decoded","writer","sourcesIndex","sourceLine","sourceColumn","namesIndex","line","genColumn","j","segment","BitSet","arg","n","Chunk","start","end","content","chunk","index","fn","storeName","contentOnly","sliceIndex","originalBefore","originalAfter","newChunk","rx","trimmed","getBtoa","str","btoa","SourceMap","properties","guessIndent","code","lines","tabbed","spaced","min","previous","current","numSpaces","getRelativePath","from","to","fromParts","toParts","toString","isObject","thing","getLocator","source","originalLines","lineOffsets","m","column","wordRegex","Mappings","hires","sourceIndex","loc","nameIndex","contentLengthMinusOne","contentLineEnd","previousContentLineEnd","original","sourcemapLocations","originalCharIndex","first","charInHiresBoundary","warned","MagicString","string","options","char","cloned","originalChunk","clonedChunk","nextOriginalChunk","nextClonedChunk","names","mappings","locate","indentStr","pattern","isExcluded","exclusion","shouldIndentNextCharacter","replacer","match","charIndex","last","oldLeft","oldRight","newRight","newLeft","overwrite","lineIndex","lineStr","result","startChunk","containsEnd","sliceStart","sliceEnd","clone","searchForward","length","charType","aborted","searchValue","replacement","getReplacement","_","matchAll","re","matches","stringLength"],"mappings":"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","x_google_ignoreList":[0,1]}