nebula-cms 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/.claude/settings.local.json +42 -0
  2. package/.github/workflows/ci.yml +31 -0
  3. package/.mcp.json +12 -0
  4. package/.prettierignore +5 -0
  5. package/.prettierrc.cjs +22 -0
  6. package/AGENTS.md +183 -0
  7. package/LICENSE +201 -0
  8. package/README.md +128 -0
  9. package/package.json +74 -0
  10. package/playground/.claude/settings.local.json +5 -0
  11. package/playground/astro.config.mjs +7 -0
  12. package/playground/node_modules/.bin/astro +21 -0
  13. package/playground/node_modules/.bin/rollup +21 -0
  14. package/playground/node_modules/.bin/tsc +21 -0
  15. package/playground/node_modules/.bin/tsserver +21 -0
  16. package/playground/node_modules/.bin/vite +21 -0
  17. package/playground/node_modules/.vite/_svelte_metadata.json +1 -0
  18. package/playground/node_modules/.vite/deps/@astrojs_svelte_client__js.js +80 -0
  19. package/playground/node_modules/.vite/deps/@astrojs_svelte_client__js.js.map +7 -0
  20. package/playground/node_modules/.vite/deps/_metadata.json +184 -0
  21. package/playground/node_modules/.vite/deps/astro___aria-query.js +6776 -0
  22. package/playground/node_modules/.vite/deps/astro___aria-query.js.map +7 -0
  23. package/playground/node_modules/.vite/deps/astro___axobject-query.js +3754 -0
  24. package/playground/node_modules/.vite/deps/astro___axobject-query.js.map +7 -0
  25. package/playground/node_modules/.vite/deps/astro___html-escaper.js +34 -0
  26. package/playground/node_modules/.vite/deps/astro___html-escaper.js.map +7 -0
  27. package/playground/node_modules/.vite/deps/chunk-AJXJMYAF.js +0 -0
  28. package/playground/node_modules/.vite/deps/chunk-AJXJMYAF.js.map +7 -0
  29. package/playground/node_modules/.vite/deps/chunk-ALJIOON6.js +1005 -0
  30. package/playground/node_modules/.vite/deps/chunk-ALJIOON6.js.map +7 -0
  31. package/playground/node_modules/.vite/deps/chunk-BUSYA2B4.js +8 -0
  32. package/playground/node_modules/.vite/deps/chunk-BUSYA2B4.js.map +7 -0
  33. package/playground/node_modules/.vite/deps/chunk-CNYJBM5F.js +21 -0
  34. package/playground/node_modules/.vite/deps/chunk-CNYJBM5F.js.map +7 -0
  35. package/playground/node_modules/.vite/deps/chunk-DBPNBGEI.js +223 -0
  36. package/playground/node_modules/.vite/deps/chunk-DBPNBGEI.js.map +7 -0
  37. package/playground/node_modules/.vite/deps/chunk-G3C2FXJT.js +204 -0
  38. package/playground/node_modules/.vite/deps/chunk-G3C2FXJT.js.map +7 -0
  39. package/playground/node_modules/.vite/deps/chunk-GKDKFWC5.js +27 -0
  40. package/playground/node_modules/.vite/deps/chunk-GKDKFWC5.js.map +7 -0
  41. package/playground/node_modules/.vite/deps/chunk-HNCLEOC5.js +4376 -0
  42. package/playground/node_modules/.vite/deps/chunk-HNCLEOC5.js.map +7 -0
  43. package/playground/node_modules/.vite/deps/chunk-JICYXBFU.js +688 -0
  44. package/playground/node_modules/.vite/deps/chunk-JICYXBFU.js.map +7 -0
  45. package/playground/node_modules/.vite/deps/chunk-KCUTL6DD.js +5099 -0
  46. package/playground/node_modules/.vite/deps/chunk-KCUTL6DD.js.map +7 -0
  47. package/playground/node_modules/.vite/deps/chunk-ZP4UNCSN.js +23 -0
  48. package/playground/node_modules/.vite/deps/chunk-ZP4UNCSN.js.map +7 -0
  49. package/playground/node_modules/.vite/deps/chunk-ZREFNRZZ.js +148 -0
  50. package/playground/node_modules/.vite/deps/chunk-ZREFNRZZ.js.map +7 -0
  51. package/playground/node_modules/.vite/deps/package.json +3 -0
  52. package/playground/node_modules/.vite/deps/smol-toml.js +843 -0
  53. package/playground/node_modules/.vite/deps/smol-toml.js.map +7 -0
  54. package/playground/node_modules/.vite/deps/svelte.js +55 -0
  55. package/playground/node_modules/.vite/deps/svelte.js.map +7 -0
  56. package/playground/node_modules/.vite/deps/svelte___clsx.js +9 -0
  57. package/playground/node_modules/.vite/deps/svelte___clsx.js.map +7 -0
  58. package/playground/node_modules/.vite/deps/svelte_animate.js +57 -0
  59. package/playground/node_modules/.vite/deps/svelte_animate.js.map +7 -0
  60. package/playground/node_modules/.vite/deps/svelte_attachments.js +15 -0
  61. package/playground/node_modules/.vite/deps/svelte_attachments.js.map +7 -0
  62. package/playground/node_modules/.vite/deps/svelte_easing.js +67 -0
  63. package/playground/node_modules/.vite/deps/svelte_easing.js.map +7 -0
  64. package/playground/node_modules/.vite/deps/svelte_events.js +11 -0
  65. package/playground/node_modules/.vite/deps/svelte_events.js.map +7 -0
  66. package/playground/node_modules/.vite/deps/svelte_internal.js +5 -0
  67. package/playground/node_modules/.vite/deps/svelte_internal.js.map +7 -0
  68. package/playground/node_modules/.vite/deps/svelte_internal_client.js +402 -0
  69. package/playground/node_modules/.vite/deps/svelte_internal_client.js.map +7 -0
  70. package/playground/node_modules/.vite/deps/svelte_internal_disclose-version.js +10 -0
  71. package/playground/node_modules/.vite/deps/svelte_internal_disclose-version.js.map +7 -0
  72. package/playground/node_modules/.vite/deps/svelte_internal_flags_async.js +8 -0
  73. package/playground/node_modules/.vite/deps/svelte_internal_flags_async.js.map +7 -0
  74. package/playground/node_modules/.vite/deps/svelte_internal_flags_legacy.js +8 -0
  75. package/playground/node_modules/.vite/deps/svelte_internal_flags_legacy.js.map +7 -0
  76. package/playground/node_modules/.vite/deps/svelte_internal_flags_tracing.js +8 -0
  77. package/playground/node_modules/.vite/deps/svelte_internal_flags_tracing.js.map +7 -0
  78. package/playground/node_modules/.vite/deps/svelte_legacy.js +35 -0
  79. package/playground/node_modules/.vite/deps/svelte_legacy.js.map +7 -0
  80. package/playground/node_modules/.vite/deps/svelte_motion.js +545 -0
  81. package/playground/node_modules/.vite/deps/svelte_motion.js.map +7 -0
  82. package/playground/node_modules/.vite/deps/svelte_reactivity.js +29 -0
  83. package/playground/node_modules/.vite/deps/svelte_reactivity.js.map +7 -0
  84. package/playground/node_modules/.vite/deps/svelte_reactivity_window.js +127 -0
  85. package/playground/node_modules/.vite/deps/svelte_reactivity_window.js.map +7 -0
  86. package/playground/node_modules/.vite/deps/svelte_store.js +103 -0
  87. package/playground/node_modules/.vite/deps/svelte_store.js.map +7 -0
  88. package/playground/node_modules/.vite/deps/svelte_transition.js +208 -0
  89. package/playground/node_modules/.vite/deps/svelte_transition.js.map +7 -0
  90. package/playground/package.json +16 -0
  91. package/playground/pnpm-lock.yaml +3167 -0
  92. package/playground/src/content/authors/jane-doe.json +8 -0
  93. package/playground/src/content/config/build.toml +2 -0
  94. package/playground/src/content/courses/web-fundamentals.json +29 -0
  95. package/playground/src/content/docs/advanced.mdx +6 -0
  96. package/playground/src/content/docs/intro.md +6 -0
  97. package/playground/src/content/guides/getting-started.mdx +6 -0
  98. package/playground/src/content/posts/hello-world.md +7 -0
  99. package/playground/src/content/products/t-shirt.json +16 -0
  100. package/playground/src/content/recipes/pancakes.mdoc +8 -0
  101. package/playground/src/content/settings/site.yml +2 -0
  102. package/playground/src/content.config.ts +198 -0
  103. package/playground/src/env.d.ts +1 -0
  104. package/playground/src/pages/index.astro +11 -0
  105. package/playground/src/pages/nebula.astro +14 -0
  106. package/pnpm-workspace.yaml +2 -0
  107. package/scripts/subset-icons.mjs +178 -0
  108. package/src/astro/index.ts +295 -0
  109. package/src/client/Admin.svelte +283 -0
  110. package/src/client/components/BackendPicker.svelte +291 -0
  111. package/src/client/components/DraftChip.svelte +46 -0
  112. package/src/client/components/MetadataForm.svelte +56 -0
  113. package/src/client/components/ThemeToggle.svelte +18 -0
  114. package/src/client/components/dialogs/DeleteDraftDialog.svelte +51 -0
  115. package/src/client/components/dialogs/FilenameDialog.svelte +129 -0
  116. package/src/client/components/editor/EditorPane.svelte +227 -0
  117. package/src/client/components/editor/EditorTabs.svelte +81 -0
  118. package/src/client/components/editor/EditorToolbar.svelte +131 -0
  119. package/src/client/components/editor/FormatSelector.svelte +66 -0
  120. package/src/client/components/editor/Toolbar.svelte +17 -0
  121. package/src/client/components/fields/ArrayField.svelte +339 -0
  122. package/src/client/components/fields/ArrayItem.svelte +325 -0
  123. package/src/client/components/fields/BooleanField.svelte +114 -0
  124. package/src/client/components/fields/DateField.svelte +82 -0
  125. package/src/client/components/fields/EnumField.svelte +74 -0
  126. package/src/client/components/fields/FieldWrapper.svelte +96 -0
  127. package/src/client/components/fields/NumberField.svelte +99 -0
  128. package/src/client/components/fields/ObjectField.svelte +121 -0
  129. package/src/client/components/fields/SchemaField.svelte +107 -0
  130. package/src/client/components/fields/StringField.svelte +104 -0
  131. package/src/client/components/sidebar/AdminSidebar.svelte +339 -0
  132. package/src/client/components/sidebar/AdminSidebarSort.svelte +123 -0
  133. package/src/client/css/a11y.css +14 -0
  134. package/src/client/css/btn.css +113 -0
  135. package/src/client/css/dialog.css +29 -0
  136. package/src/client/css/field-input.css +39 -0
  137. package/src/client/css/reset.css +59 -0
  138. package/src/client/css/theme.css +77 -0
  139. package/src/client/index.ts +1 -0
  140. package/src/client/js/drafts/merge.svelte.ts +121 -0
  141. package/src/client/js/drafts/ops.svelte.ts +227 -0
  142. package/src/client/js/drafts/storage.ts +108 -0
  143. package/src/client/js/drafts/workers/diff.ts +40 -0
  144. package/src/client/js/editor/editor.svelte.ts +343 -0
  145. package/src/client/js/editor/languages.ts +98 -0
  146. package/src/client/js/editor/link-wrap.ts +45 -0
  147. package/src/client/js/editor/markdown-shortcuts.ts +261 -0
  148. package/src/client/js/handlers/admin.ts +246 -0
  149. package/src/client/js/state/dialogs.svelte.ts +35 -0
  150. package/src/client/js/state/router.svelte.ts +156 -0
  151. package/src/client/js/state/schema.svelte.ts +140 -0
  152. package/src/client/js/state/state.svelte.ts +334 -0
  153. package/src/client/js/state/theme.svelte.ts +173 -0
  154. package/src/client/js/storage/adapter.ts +102 -0
  155. package/src/client/js/storage/client.ts +150 -0
  156. package/src/client/js/storage/db.ts +36 -0
  157. package/src/client/js/storage/fsa.ts +110 -0
  158. package/src/client/js/storage/github.ts +297 -0
  159. package/src/client/js/storage/storage.ts +83 -0
  160. package/src/client/js/storage/workers/frontmatter.ts +320 -0
  161. package/src/client/js/storage/workers/storage.ts +177 -0
  162. package/src/client/js/storage/workers/toml-parser.ts +106 -0
  163. package/src/client/js/storage/workers/yaml-parser.ts +132 -0
  164. package/src/client/js/utils/file-types.ts +192 -0
  165. package/src/client/js/utils/format.ts +16 -0
  166. package/src/client/js/utils/frontmatter.ts +38 -0
  167. package/src/client/js/utils/schema-utils.ts +295 -0
  168. package/src/client/js/utils/slug.ts +18 -0
  169. package/src/client/js/utils/sort.ts +84 -0
  170. package/src/client/js/utils/stable-stringify.ts +27 -0
  171. package/src/client/js/utils/url-utils.ts +38 -0
  172. package/src/types.ts +25 -0
  173. package/src/virtual.d.ts +22 -0
  174. package/svelte.config.js +4 -0
  175. package/tests/astro/build.test.ts +63 -0
  176. package/tests/astro/index.test.ts +689 -0
  177. package/tests/client/components/Admin.test.ts +446 -0
  178. package/tests/client/components/BackendPicker.test.ts +239 -0
  179. package/tests/client/components/DraftChip.test.ts +53 -0
  180. package/tests/client/components/MetadataForm.test.ts +164 -0
  181. package/tests/client/components/dialogs/DeleteDraftDialog.test.ts +91 -0
  182. package/tests/client/components/dialogs/FilenameDialog.test.ts +209 -0
  183. package/tests/client/components/dialogs/dialog-stubs.ts +19 -0
  184. package/tests/client/components/editor/EditorPane.test.ts +100 -0
  185. package/tests/client/components/editor/EditorTabs.test.ts +253 -0
  186. package/tests/client/components/editor/EditorToolbar.test.ts +252 -0
  187. package/tests/client/components/editor/fixtures.ts +31 -0
  188. package/tests/client/components/fields/ArrayField.test.ts +197 -0
  189. package/tests/client/components/fields/BooleanField.test.ts +206 -0
  190. package/tests/client/components/fields/DateField.test.ts +210 -0
  191. package/tests/client/components/fields/EnumField.test.ts +246 -0
  192. package/tests/client/components/fields/NumberField.test.ts +240 -0
  193. package/tests/client/components/fields/ObjectField.test.ts +157 -0
  194. package/tests/client/components/fields/SchemaField.test.ts +190 -0
  195. package/tests/client/components/fields/StringField.test.ts +223 -0
  196. package/tests/client/components/sidebar/AdminSidebar.test.ts +285 -0
  197. package/tests/client/components/sidebar/AdminSidebarSort.test.ts +135 -0
  198. package/tests/client/components/sidebar/sort-mock.ts +23 -0
  199. package/tests/client/js/drafts/fixtures.ts +22 -0
  200. package/tests/client/js/drafts/merge.test.ts +282 -0
  201. package/tests/client/js/drafts/ops.test.ts +658 -0
  202. package/tests/client/js/drafts/storage.test.ts +200 -0
  203. package/tests/client/js/drafts/workers/diff.test.ts +165 -0
  204. package/tests/client/js/editor/editor.test.ts +616 -0
  205. package/tests/client/js/editor/link-wrap.test.ts +225 -0
  206. package/tests/client/js/editor/markdown-shortcuts.test.ts +370 -0
  207. package/tests/client/js/handlers/admin.test.ts +467 -0
  208. package/tests/client/js/state/router.test.ts +619 -0
  209. package/tests/client/js/state/schema.test.ts +266 -0
  210. package/tests/client/js/state/state.test.ts +328 -0
  211. package/tests/client/js/storage/adapter.test.ts +115 -0
  212. package/tests/client/js/storage/client.test.ts +250 -0
  213. package/tests/client/js/storage/db.test.ts +59 -0
  214. package/tests/client/js/storage/fsa.test.ts +284 -0
  215. package/tests/client/js/storage/github.test.ts +349 -0
  216. package/tests/client/js/storage/mock-port.ts +95 -0
  217. package/tests/client/js/storage/storage.test.ts +77 -0
  218. package/tests/client/js/storage/workers/frontmatter.test.ts +479 -0
  219. package/tests/client/js/storage/workers/storage.test.ts +299 -0
  220. package/tests/client/js/storage/workers/toml-parser.test.ts +169 -0
  221. package/tests/client/js/storage/workers/yaml-parser.test.ts +168 -0
  222. package/tests/client/js/utils/file-types.test.ts +268 -0
  223. package/tests/client/js/utils/frontmatter.test.ts +87 -0
  224. package/tests/client/js/utils/schema-utils.test.ts +318 -0
  225. package/tests/client/js/utils/slug.test.ts +58 -0
  226. package/tests/client/js/utils/sort.test.ts +276 -0
  227. package/tests/client/js/utils/stable-stringify.test.ts +68 -0
  228. package/tests/client/js/utils/url-utils.test.ts +70 -0
  229. package/tests/e2e/backend-connection.test.ts +301 -0
  230. package/tests/e2e/draft-lifecycle.test.ts +388 -0
  231. package/tests/e2e/editing.test.ts +355 -0
  232. package/tests/e2e/github-adapter.test.ts +330 -0
  233. package/tests/e2e/helpers/mock-adapter.ts +166 -0
  234. package/tests/e2e/helpers/test-app.ts +155 -0
  235. package/tests/e2e/navigation.test.ts +358 -0
  236. package/tests/e2e/publishing.test.ts +345 -0
  237. package/tests/e2e/unsaved-changes.test.ts +317 -0
  238. package/tests/setup.ts +2 -0
  239. package/tests/stubs/codemirror.ts +197 -0
  240. package/tsconfig.json +19 -0
  241. package/vitest.config.ts +178 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../node_modules/.pnpm/svelte@5.54.1/node_modules/svelte/src/reactivity/date.js", "../../../../node_modules/.pnpm/svelte@5.54.1/node_modules/svelte/src/reactivity/set.js", "../../../../node_modules/.pnpm/svelte@5.54.1/node_modules/svelte/src/reactivity/map.js", "../../../../node_modules/.pnpm/svelte@5.54.1/node_modules/svelte/src/reactivity/url-search-params.js", "../../../../node_modules/.pnpm/svelte@5.54.1/node_modules/svelte/src/reactivity/url.js", "../../../../node_modules/.pnpm/svelte@5.54.1/node_modules/svelte/src/reactivity/media-query.js"],
4
+ "sourcesContent": ["/** @import { Source } from '#client' */\nimport { derived } from '../internal/client/index.js';\nimport { set, state } from '../internal/client/reactivity/sources.js';\nimport { tag } from '../internal/client/dev/tracing.js';\nimport { active_reaction, get, set_active_reaction } from '../internal/client/runtime.js';\nimport { DEV } from 'esm-env';\n\nvar inited = false;\n\n/**\n * A reactive version of the built-in [`Date`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) object.\n * Reading the date (whether with methods like `date.getTime()` or `date.toString()`, or via things like [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat))\n * in an [effect](https://svelte.dev/docs/svelte/$effect) or [derived](https://svelte.dev/docs/svelte/$derived)\n * will cause it to be re-evaluated when the value of the date changes.\n *\n * ```svelte\n * <script>\n * \timport { SvelteDate } from 'svelte/reactivity';\n *\n * \tconst date = new SvelteDate();\n *\n * \tconst formatter = new Intl.DateTimeFormat(undefined, {\n * \t hour: 'numeric',\n * \t minute: 'numeric',\n * \t second: 'numeric'\n * \t});\n *\n * \t$effect(() => {\n * \t\tconst interval = setInterval(() => {\n * \t\t\tdate.setTime(Date.now());\n * \t\t}, 1000);\n *\n * \t\treturn () => {\n * \t\t\tclearInterval(interval);\n * \t\t};\n * \t});\n * </script>\n *\n * <p>The time is {formatter.format(date)}</p>\n * ```\n */\nexport class SvelteDate extends Date {\n\t#time = state(super.getTime());\n\n\t/** @type {Map<keyof Date, Source<unknown>>} */\n\t#deriveds = new Map();\n\n\t#reaction = active_reaction;\n\n\t/** @param {any[]} params */\n\tconstructor(...params) {\n\t\t// @ts-ignore\n\t\tsuper(...params);\n\n\t\tif (DEV) {\n\t\t\ttag(this.#time, 'SvelteDate.#time');\n\t\t}\n\n\t\tif (!inited) this.#init();\n\t}\n\n\t#init() {\n\t\tinited = true;\n\n\t\tvar proto = SvelteDate.prototype;\n\t\tvar date_proto = Date.prototype;\n\n\t\tvar methods = /** @type {Array<keyof Date & string>} */ (\n\t\t\tObject.getOwnPropertyNames(date_proto)\n\t\t);\n\n\t\tfor (const method of methods) {\n\t\t\tif (method.startsWith('get') || method.startsWith('to') || method === 'valueOf') {\n\t\t\t\t// @ts-ignore\n\t\t\t\tproto[method] = function (...args) {\n\t\t\t\t\t// don't memoize if there are arguments\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\tif (args.length > 0) {\n\t\t\t\t\t\tget(this.#time);\n\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\treturn date_proto[method].apply(this, args);\n\t\t\t\t\t}\n\n\t\t\t\t\tvar d = this.#deriveds.get(method);\n\n\t\t\t\t\tif (d === undefined) {\n\t\t\t\t\t\t// lazily create the derived, but as though it were being\n\t\t\t\t\t\t// created at the same time as the class instance\n\t\t\t\t\t\tconst reaction = active_reaction;\n\t\t\t\t\t\tset_active_reaction(this.#reaction);\n\n\t\t\t\t\t\td = derived(() => {\n\t\t\t\t\t\t\tget(this.#time);\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\treturn date_proto[method].apply(this, args);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tthis.#deriveds.set(method, d);\n\n\t\t\t\t\t\tset_active_reaction(reaction);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn get(d);\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (method.startsWith('set')) {\n\t\t\t\t// @ts-ignore\n\t\t\t\tproto[method] = function (...args) {\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\tvar result = date_proto[method].apply(this, args);\n\t\t\t\t\tset(this.#time, date_proto.getTime.call(this));\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n}\n", "/** @import { Source } from '#client' */\nimport { DEV } from 'esm-env';\nimport { source, set, state, increment } from '../internal/client/reactivity/sources.js';\nimport { label, tag } from '../internal/client/dev/tracing.js';\nimport { get, update_version } from '../internal/client/runtime.js';\n\nvar read_methods = ['forEach', 'isDisjointFrom', 'isSubsetOf', 'isSupersetOf'];\nvar set_like_methods = ['difference', 'intersection', 'symmetricDifference', 'union'];\n\nvar inited = false;\n\n/**\n * A reactive version of the built-in [`Set`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) object.\n * Reading contents of the set (by iterating, or by reading `set.size` or calling `set.has(...)` as in the [example](https://svelte.dev/playground/53438b51194b4882bcc18cddf9f96f15) below) in an [effect](https://svelte.dev/docs/svelte/$effect) or [derived](https://svelte.dev/docs/svelte/$derived)\n * will cause it to be re-evaluated as necessary when the set is updated.\n *\n * Note that values in a reactive set are _not_ made [deeply reactive](https://svelte.dev/docs/svelte/$state#Deep-state).\n *\n * ```svelte\n * <script>\n * \timport { SvelteSet } from 'svelte/reactivity';\n * \tlet monkeys = new SvelteSet();\n *\n * \tfunction toggle(monkey) {\n * \t\tif (monkeys.has(monkey)) {\n * \t\t\tmonkeys.delete(monkey);\n * \t\t} else {\n * \t\t\tmonkeys.add(monkey);\n * \t\t}\n * \t}\n * </script>\n *\n * {#each ['🙈', '🙉', '🙊'] as monkey}\n * \t<button onclick={() => toggle(monkey)}>{monkey}</button>\n * {/each}\n *\n * <button onclick={() => monkeys.clear()}>clear</button>\n *\n * {#if monkeys.has('🙈')}<p>see no evil</p>{/if}\n * {#if monkeys.has('🙉')}<p>hear no evil</p>{/if}\n * {#if monkeys.has('🙊')}<p>speak no evil</p>{/if}\n * ```\n *\n * @template T\n * @extends {Set<T>}\n */\nexport class SvelteSet extends Set {\n\t/** @type {Map<T, Source<boolean>>} */\n\t#sources = new Map();\n\t#version = state(0);\n\t#size = state(0);\n\t#update_version = update_version || -1;\n\n\t/**\n\t * @param {Iterable<T> | null | undefined} [value]\n\t */\n\tconstructor(value) {\n\t\tsuper();\n\n\t\tif (DEV) {\n\t\t\t// If the value is invalid then the native exception will fire here\n\t\t\tvalue = new Set(value);\n\n\t\t\ttag(this.#version, 'SvelteSet version');\n\t\t\ttag(this.#size, 'SvelteSet.size');\n\t\t}\n\n\t\tif (value) {\n\t\t\tfor (var element of value) {\n\t\t\t\tsuper.add(element);\n\t\t\t}\n\t\t\tthis.#size.v = super.size;\n\t\t}\n\n\t\tif (!inited) this.#init();\n\t}\n\n\t/**\n\t * If the source is being created inside the same reaction as the SvelteSet instance,\n\t * we use `state` so that it will not be a dependency of the reaction. Otherwise we\n\t * use `source` so it will be.\n\t *\n\t * @template T\n\t * @param {T} value\n\t * @returns {Source<T>}\n\t */\n\t#source(value) {\n\t\treturn update_version === this.#update_version ? state(value) : source(value);\n\t}\n\n\t// We init as part of the first instance so that we can treeshake this class\n\t#init() {\n\t\tinited = true;\n\n\t\tvar proto = SvelteSet.prototype;\n\t\tvar set_proto = Set.prototype;\n\n\t\tfor (const method of read_methods) {\n\t\t\t// @ts-ignore\n\t\t\tproto[method] = function (...v) {\n\t\t\t\tget(this.#version);\n\t\t\t\t// @ts-ignore\n\t\t\t\treturn set_proto[method].apply(this, v);\n\t\t\t};\n\t\t}\n\n\t\tfor (const method of set_like_methods) {\n\t\t\t// @ts-ignore\n\t\t\tproto[method] = function (...v) {\n\t\t\t\tget(this.#version);\n\t\t\t\t// @ts-ignore\n\t\t\t\tvar set = /** @type {Set<T>} */ (set_proto[method].apply(this, v));\n\t\t\t\treturn new SvelteSet(set);\n\t\t\t};\n\t\t}\n\t}\n\n\t/** @param {T} value */\n\thas(value) {\n\t\tvar has = super.has(value);\n\t\tvar sources = this.#sources;\n\t\tvar s = sources.get(value);\n\n\t\tif (s === undefined) {\n\t\t\tif (!has) {\n\t\t\t\t// If the value doesn't exist, track the version in case it's added later\n\t\t\t\t// but don't create sources willy-nilly to track all possible values\n\t\t\t\tget(this.#version);\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\ts = this.#source(true);\n\n\t\t\tif (DEV) {\n\t\t\t\ttag(s, `SvelteSet has(${label(value)})`);\n\t\t\t}\n\n\t\t\tsources.set(value, s);\n\t\t}\n\n\t\tget(s);\n\t\treturn has;\n\t}\n\n\t/** @param {T} value */\n\tadd(value) {\n\t\tif (!super.has(value)) {\n\t\t\tsuper.add(value);\n\t\t\tset(this.#size, super.size);\n\t\t\tincrement(this.#version);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\t/** @param {T} value */\n\tdelete(value) {\n\t\tvar deleted = super.delete(value);\n\t\tvar sources = this.#sources;\n\t\tvar s = sources.get(value);\n\n\t\tif (s !== undefined) {\n\t\t\tsources.delete(value);\n\t\t\tset(s, false);\n\t\t}\n\n\t\tif (deleted) {\n\t\t\tset(this.#size, super.size);\n\t\t\tincrement(this.#version);\n\t\t}\n\n\t\treturn deleted;\n\t}\n\n\tclear() {\n\t\tif (super.size === 0) {\n\t\t\treturn;\n\t\t}\n\t\t// Clear first, so we get nice console.log outputs with $inspect\n\t\tsuper.clear();\n\t\tvar sources = this.#sources;\n\n\t\tfor (var s of sources.values()) {\n\t\t\tset(s, false);\n\t\t}\n\n\t\tsources.clear();\n\t\tset(this.#size, 0);\n\t\tincrement(this.#version);\n\t}\n\n\tkeys() {\n\t\treturn this.values();\n\t}\n\n\tvalues() {\n\t\tget(this.#version);\n\t\treturn super.values();\n\t}\n\n\tentries() {\n\t\tget(this.#version);\n\t\treturn super.entries();\n\t}\n\n\t[Symbol.iterator]() {\n\t\treturn this.keys();\n\t}\n\n\tget size() {\n\t\treturn get(this.#size);\n\t}\n}\n", "/** @import { Source } from '#client' */\nimport { DEV } from 'esm-env';\nimport { set, source, state, increment } from '../internal/client/reactivity/sources.js';\nimport { label, tag } from '../internal/client/dev/tracing.js';\nimport { get, update_version } from '../internal/client/runtime.js';\n\n/**\n * A reactive version of the built-in [`Map`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) object.\n * Reading contents of the map (by iterating, or by reading `map.size` or calling `map.get(...)` or `map.has(...)` as in the [tic-tac-toe example](https://svelte.dev/playground/0b0ff4aa49c9443f9b47fe5203c78293) below) in an [effect](https://svelte.dev/docs/svelte/$effect) or [derived](https://svelte.dev/docs/svelte/$derived)\n * will cause it to be re-evaluated as necessary when the map is updated.\n *\n * Note that values in a reactive map are _not_ made [deeply reactive](https://svelte.dev/docs/svelte/$state#Deep-state).\n *\n * ```svelte\n * <script>\n * \timport { SvelteMap } from 'svelte/reactivity';\n * \timport { result } from './game.js';\n *\n * \tlet board = new SvelteMap();\n * \tlet player = $state('x');\n * \tlet winner = $derived(result(board));\n *\n * \tfunction reset() {\n * \t\tplayer = 'x';\n * \t\tboard.clear();\n * \t}\n * </script>\n *\n * <div class=\"board\">\n * \t{#each Array(9), i}\n * \t\t<button\n * \t\t\tdisabled={board.has(i) || winner}\n * \t\t\tonclick={() => {\n * \t\t\t\tboard.set(i, player);\n * \t\t\t\tplayer = player === 'x' ? 'o' : 'x';\n * \t\t\t}}\n * \t\t>{board.get(i)}</button>\n * \t{/each}\n * </div>\n *\n * {#if winner}\n * \t<p>{winner} wins!</p>\n * \t<button onclick={reset}>reset</button>\n * {:else}\n * \t<p>{player} is next</p>\n * {/if}\n * ```\n *\n * @template K\n * @template V\n * @extends {Map<K, V>}\n */\nexport class SvelteMap extends Map {\n\t/** @type {Map<K, Source<number>>} */\n\t#sources = new Map();\n\t#version = state(0);\n\t#size = state(0);\n\t#update_version = update_version || -1;\n\n\t/**\n\t * @param {Iterable<readonly [K, V]> | null | undefined} [value]\n\t */\n\tconstructor(value) {\n\t\tsuper();\n\n\t\tif (DEV) {\n\t\t\t// If the value is invalid then the native exception will fire here\n\t\t\tvalue = new Map(value);\n\n\t\t\ttag(this.#version, 'SvelteMap version');\n\t\t\ttag(this.#size, 'SvelteMap.size');\n\t\t}\n\n\t\tif (value) {\n\t\t\tfor (var [key, v] of value) {\n\t\t\t\tsuper.set(key, v);\n\t\t\t}\n\t\t\tthis.#size.v = super.size;\n\t\t}\n\t}\n\n\t/**\n\t * If the source is being created inside the same reaction as the SvelteMap instance,\n\t * we use `state` so that it will not be a dependency of the reaction. Otherwise we\n\t * use `source` so it will be.\n\t *\n\t * @template T\n\t * @param {T} value\n\t * @returns {Source<T>}\n\t */\n\t#source(value) {\n\t\treturn update_version === this.#update_version ? state(value) : source(value);\n\t}\n\n\t/** @param {K} key */\n\thas(key) {\n\t\tvar sources = this.#sources;\n\t\tvar s = sources.get(key);\n\n\t\tif (s === undefined) {\n\t\t\tif (super.has(key)) {\n\t\t\t\ts = this.#source(0);\n\n\t\t\t\tif (DEV) {\n\t\t\t\t\ttag(s, `SvelteMap get(${label(key)})`);\n\t\t\t\t}\n\n\t\t\t\tsources.set(key, s);\n\t\t\t} else {\n\t\t\t\t// We should always track the version in case\n\t\t\t\t// the Set ever gets this value in the future.\n\t\t\t\tget(this.#version);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tget(s);\n\t\treturn true;\n\t}\n\n\t/**\n\t * @param {(value: V, key: K, map: Map<K, V>) => void} callbackfn\n\t * @param {any} [this_arg]\n\t */\n\tforEach(callbackfn, this_arg) {\n\t\tthis.#read_all();\n\t\tsuper.forEach(callbackfn, this_arg);\n\t}\n\n\t/** @param {K} key */\n\tget(key) {\n\t\tvar sources = this.#sources;\n\t\tvar s = sources.get(key);\n\n\t\tif (s === undefined) {\n\t\t\tif (super.has(key)) {\n\t\t\t\ts = this.#source(0);\n\n\t\t\t\tif (DEV) {\n\t\t\t\t\ttag(s, `SvelteMap get(${label(key)})`);\n\t\t\t\t}\n\n\t\t\t\tsources.set(key, s);\n\t\t\t} else {\n\t\t\t\t// We should always track the version in case\n\t\t\t\t// the Set ever gets this value in the future.\n\t\t\t\tget(this.#version);\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t}\n\n\t\tget(s);\n\t\treturn super.get(key);\n\t}\n\n\t/**\n\t * @param {K} key\n\t * @param {V} value\n\t * */\n\tset(key, value) {\n\t\tvar sources = this.#sources;\n\t\tvar s = sources.get(key);\n\t\tvar prev_res = super.get(key);\n\t\tvar res = super.set(key, value);\n\t\tvar version = this.#version;\n\n\t\tif (s === undefined) {\n\t\t\ts = this.#source(0);\n\n\t\t\tif (DEV) {\n\t\t\t\ttag(s, `SvelteMap get(${label(key)})`);\n\t\t\t}\n\n\t\t\tsources.set(key, s);\n\t\t\tset(this.#size, super.size);\n\t\t\tincrement(version);\n\t\t} else if (prev_res !== value) {\n\t\t\tincrement(s);\n\n\t\t\t// if not every reaction of s is a reaction of version we need to also include version\n\t\t\tvar v_reactions = version.reactions === null ? null : new Set(version.reactions);\n\t\t\tvar needs_version_increase =\n\t\t\t\tv_reactions === null ||\n\t\t\t\t!s.reactions?.every((r) =>\n\t\t\t\t\t/** @type {NonNullable<typeof v_reactions>} */ (v_reactions).has(r)\n\t\t\t\t);\n\t\t\tif (needs_version_increase) {\n\t\t\t\tincrement(version);\n\t\t\t}\n\t\t}\n\n\t\treturn res;\n\t}\n\n\t/** @param {K} key */\n\tdelete(key) {\n\t\tvar sources = this.#sources;\n\t\tvar s = sources.get(key);\n\t\tvar res = super.delete(key);\n\n\t\tif (s !== undefined) {\n\t\t\tsources.delete(key);\n\t\t\tset(s, -1);\n\t\t}\n\n\t\tif (res) {\n\t\t\tset(this.#size, super.size);\n\t\t\tincrement(this.#version);\n\t\t}\n\n\t\treturn res;\n\t}\n\n\tclear() {\n\t\tif (super.size === 0) {\n\t\t\treturn;\n\t\t}\n\t\t// Clear first, so we get nice console.log outputs with $inspect\n\t\tsuper.clear();\n\t\tvar sources = this.#sources;\n\t\tset(this.#size, 0);\n\t\tfor (var s of sources.values()) {\n\t\t\tset(s, -1);\n\t\t}\n\t\tincrement(this.#version);\n\t\tsources.clear();\n\t}\n\n\t#read_all() {\n\t\tget(this.#version);\n\n\t\tvar sources = this.#sources;\n\t\tif (this.#size.v !== sources.size) {\n\t\t\tfor (var key of super.keys()) {\n\t\t\t\tif (!sources.has(key)) {\n\t\t\t\t\tvar s = this.#source(0);\n\t\t\t\t\tif (DEV) {\n\t\t\t\t\t\ttag(s, `SvelteMap get(${label(key)})`);\n\t\t\t\t\t}\n\n\t\t\t\t\tsources.set(key, s);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfor ([, s] of this.#sources) {\n\t\t\tget(s);\n\t\t}\n\t}\n\n\tkeys() {\n\t\tget(this.#version);\n\t\treturn super.keys();\n\t}\n\n\tvalues() {\n\t\tthis.#read_all();\n\t\treturn super.values();\n\t}\n\n\tentries() {\n\t\tthis.#read_all();\n\t\treturn super.entries();\n\t}\n\n\t[Symbol.iterator]() {\n\t\treturn this.entries();\n\t}\n\n\tget size() {\n\t\tget(this.#size);\n\t\treturn super.size;\n\t}\n}\n", "import { DEV } from 'esm-env';\nimport { state, increment } from '../internal/client/reactivity/sources.js';\nimport { tag } from '../internal/client/dev/tracing.js';\nimport { get } from '../internal/client/runtime.js';\nimport { get_current_url } from './url.js';\n\nexport const REPLACE = Symbol();\n\n/**\n * A reactive version of the built-in [`URLSearchParams`](https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams) object.\n * Reading its contents (by iterating, or by calling `params.get(...)` or `params.getAll(...)` as in the [example](https://svelte.dev/playground/b3926c86c5384bab9f2cf993bc08c1c8) below) in an [effect](https://svelte.dev/docs/svelte/$effect) or [derived](https://svelte.dev/docs/svelte/$derived)\n * will cause it to be re-evaluated as necessary when the params are updated.\n *\n * ```svelte\n * <script>\n * \timport { SvelteURLSearchParams } from 'svelte/reactivity';\n *\n * \tconst params = new SvelteURLSearchParams('message=hello');\n *\n * \tlet key = $state('key');\n * \tlet value = $state('value');\n * </script>\n *\n * <input bind:value={key} />\n * <input bind:value={value} />\n * <button onclick={() => params.append(key, value)}>append</button>\n *\n * <p>?{params.toString()}</p>\n *\n * {#each params as [key, value]}\n * \t<p>{key}: {value}</p>\n * {/each}\n * ```\n */\nexport class SvelteURLSearchParams extends URLSearchParams {\n\t#version = DEV ? tag(state(0), 'SvelteURLSearchParams version') : state(0);\n\t#url = get_current_url();\n\n\t#updating = false;\n\n\t#update_url() {\n\t\tif (!this.#url || this.#updating) return;\n\t\tthis.#updating = true;\n\n\t\tconst search = this.toString();\n\t\tthis.#url.search = search && `?${search}`;\n\n\t\tthis.#updating = false;\n\t}\n\n\t/**\n\t * @param {URLSearchParams} params\n\t * @internal\n\t */\n\t[REPLACE](params) {\n\t\tif (this.#updating) return;\n\t\tthis.#updating = true;\n\n\t\tfor (const key of [...super.keys()]) {\n\t\t\tsuper.delete(key);\n\t\t}\n\n\t\tfor (const [key, value] of params) {\n\t\t\tsuper.append(key, value);\n\t\t}\n\n\t\tincrement(this.#version);\n\t\tthis.#updating = false;\n\t}\n\n\t/**\n\t * @param {string} name\n\t * @param {string} value\n\t * @returns {void}\n\t */\n\tappend(name, value) {\n\t\tsuper.append(name, value);\n\t\tthis.#update_url();\n\t\tincrement(this.#version);\n\t}\n\n\t/**\n\t * @param {string} name\n\t * @param {string=} value\n\t * @returns {void}\n\t */\n\tdelete(name, value) {\n\t\tvar has_value = super.has(name, value);\n\t\tsuper.delete(name, value);\n\t\tif (has_value) {\n\t\t\tthis.#update_url();\n\t\t\tincrement(this.#version);\n\t\t}\n\t}\n\n\t/**\n\t * @param {string} name\n\t * @returns {string|null}\n\t */\n\tget(name) {\n\t\tget(this.#version);\n\t\treturn super.get(name);\n\t}\n\n\t/**\n\t * @param {string} name\n\t * @returns {string[]}\n\t */\n\tgetAll(name) {\n\t\tget(this.#version);\n\t\treturn super.getAll(name);\n\t}\n\n\t/**\n\t * @param {string} name\n\t * @param {string=} value\n\t * @returns {boolean}\n\t */\n\thas(name, value) {\n\t\tget(this.#version);\n\t\treturn super.has(name, value);\n\t}\n\n\tkeys() {\n\t\tget(this.#version);\n\t\treturn super.keys();\n\t}\n\n\t/**\n\t * @param {string} name\n\t * @param {string} value\n\t * @returns {void}\n\t */\n\tset(name, value) {\n\t\tvar previous = super.getAll(name).join('');\n\t\tsuper.set(name, value);\n\t\t// can't use has(name, value), because for something like https://svelte.dev?foo=1&bar=2&foo=3\n\t\t// if you set `foo` to 1, then foo=3 gets deleted whilst `has(\"foo\", \"1\")` returns true\n\t\tif (previous !== super.getAll(name).join('')) {\n\t\t\tthis.#update_url();\n\t\t\tincrement(this.#version);\n\t\t}\n\t}\n\n\tsort() {\n\t\tsuper.sort();\n\t\tthis.#update_url();\n\t\tincrement(this.#version);\n\t}\n\n\ttoString() {\n\t\tget(this.#version);\n\t\treturn super.toString();\n\t}\n\n\tvalues() {\n\t\tget(this.#version);\n\t\treturn super.values();\n\t}\n\n\tentries() {\n\t\tget(this.#version);\n\t\treturn super.entries();\n\t}\n\n\t[Symbol.iterator]() {\n\t\treturn this.entries();\n\t}\n\n\tget size() {\n\t\tget(this.#version);\n\t\treturn super.size;\n\t}\n}\n", "import { DEV } from 'esm-env';\nimport { set, state } from '../internal/client/reactivity/sources.js';\nimport { tag } from '../internal/client/dev/tracing.js';\nimport { get } from '../internal/client/runtime.js';\nimport { REPLACE, SvelteURLSearchParams } from './url-search-params.js';\n\n/** @type {SvelteURL | null} */\nlet current_url = null;\n\nexport function get_current_url() {\n\t// ideally we'd just export `current_url` directly, but it seems Vitest doesn't respect live bindings\n\treturn current_url;\n}\n\n/**\n * A reactive version of the built-in [`URL`](https://developer.mozilla.org/en-US/docs/Web/API/URL) object.\n * Reading properties of the URL (such as `url.href` or `url.pathname`) in an [effect](https://svelte.dev/docs/svelte/$effect) or [derived](https://svelte.dev/docs/svelte/$derived)\n * will cause it to be re-evaluated as necessary when the URL changes.\n *\n * The `searchParams` property is an instance of [SvelteURLSearchParams](https://svelte.dev/docs/svelte/svelte-reactivity#SvelteURLSearchParams).\n *\n * [Example](https://svelte.dev/playground/5a694758901b448c83dc40dc31c71f2a):\n *\n * ```svelte\n * <script>\n * \timport { SvelteURL } from 'svelte/reactivity';\n *\n * \tconst url = new SvelteURL('https://example.com/path');\n * </script>\n *\n * <!-- changes to these... -->\n * <input bind:value={url.protocol} />\n * <input bind:value={url.hostname} />\n * <input bind:value={url.pathname} />\n *\n * <hr />\n *\n * <!-- will update `href` and vice versa -->\n * <input bind:value={url.href} size=\"65\" />\n * ```\n */\nexport class SvelteURL extends URL {\n\t#protocol = state(super.protocol);\n\t#username = state(super.username);\n\t#password = state(super.password);\n\t#hostname = state(super.hostname);\n\t#port = state(super.port);\n\t#pathname = state(super.pathname);\n\t#hash = state(super.hash);\n\t#search = state(super.search);\n\t#searchParams;\n\n\t/**\n\t * @param {string | URL} url\n\t * @param {string | URL} [base]\n\t */\n\tconstructor(url, base) {\n\t\turl = new URL(url, base);\n\t\tsuper(url);\n\n\t\tif (DEV) {\n\t\t\ttag(this.#protocol, 'SvelteURL.protocol');\n\t\t\ttag(this.#username, 'SvelteURL.username');\n\t\t\ttag(this.#password, 'SvelteURL.password');\n\t\t\ttag(this.#hostname, 'SvelteURL.hostname');\n\t\t\ttag(this.#port, 'SvelteURL.port');\n\t\t\ttag(this.#pathname, 'SvelteURL.pathname');\n\t\t\ttag(this.#hash, 'SvelteURL.hash');\n\t\t\ttag(this.#search, 'SvelteURL.search');\n\t\t}\n\n\t\tcurrent_url = this;\n\t\tthis.#searchParams = new SvelteURLSearchParams(url.searchParams);\n\t\tcurrent_url = null;\n\t}\n\n\tget hash() {\n\t\treturn get(this.#hash);\n\t}\n\n\tset hash(value) {\n\t\tsuper.hash = value;\n\t\tset(this.#hash, super.hash);\n\t}\n\n\tget host() {\n\t\tget(this.#hostname);\n\t\tget(this.#port);\n\t\treturn super.host;\n\t}\n\n\tset host(value) {\n\t\tsuper.host = value;\n\t\tset(this.#hostname, super.hostname);\n\t\tset(this.#port, super.port);\n\t}\n\n\tget hostname() {\n\t\treturn get(this.#hostname);\n\t}\n\n\tset hostname(value) {\n\t\tsuper.hostname = value;\n\t\tset(this.#hostname, super.hostname);\n\t}\n\n\tget href() {\n\t\tget(this.#protocol);\n\t\tget(this.#username);\n\t\tget(this.#password);\n\t\tget(this.#hostname);\n\t\tget(this.#port);\n\t\tget(this.#pathname);\n\t\tget(this.#hash);\n\t\tget(this.#search);\n\t\treturn super.href;\n\t}\n\n\tset href(value) {\n\t\tsuper.href = value;\n\t\tset(this.#protocol, super.protocol);\n\t\tset(this.#username, super.username);\n\t\tset(this.#password, super.password);\n\t\tset(this.#hostname, super.hostname);\n\t\tset(this.#port, super.port);\n\t\tset(this.#pathname, super.pathname);\n\t\tset(this.#hash, super.hash);\n\t\tset(this.#search, super.search);\n\t\tthis.#searchParams[REPLACE](super.searchParams);\n\t}\n\n\tget password() {\n\t\treturn get(this.#password);\n\t}\n\n\tset password(value) {\n\t\tsuper.password = value;\n\t\tset(this.#password, super.password);\n\t}\n\n\tget pathname() {\n\t\treturn get(this.#pathname);\n\t}\n\n\tset pathname(value) {\n\t\tsuper.pathname = value;\n\t\tset(this.#pathname, super.pathname);\n\t}\n\n\tget port() {\n\t\treturn get(this.#port);\n\t}\n\n\tset port(value) {\n\t\tsuper.port = value;\n\t\tset(this.#port, super.port);\n\t}\n\n\tget protocol() {\n\t\treturn get(this.#protocol);\n\t}\n\n\tset protocol(value) {\n\t\tsuper.protocol = value;\n\t\tset(this.#protocol, super.protocol);\n\t}\n\n\tget search() {\n\t\treturn get(this.#search);\n\t}\n\n\tset search(value) {\n\t\tsuper.search = value;\n\t\tset(this.#search, super.search);\n\t\tthis.#searchParams[REPLACE](super.searchParams);\n\t}\n\n\tget username() {\n\t\treturn get(this.#username);\n\t}\n\n\tset username(value) {\n\t\tsuper.username = value;\n\t\tset(this.#username, super.username);\n\t}\n\n\tget origin() {\n\t\tget(this.#protocol);\n\t\tget(this.#hostname);\n\t\tget(this.#port);\n\t\treturn super.origin;\n\t}\n\n\tget searchParams() {\n\t\treturn this.#searchParams;\n\t}\n\n\ttoString() {\n\t\treturn this.href;\n\t}\n\n\ttoJSON() {\n\t\treturn this.href;\n\t}\n}\n", "import { on } from '../events/index.js';\nimport { ReactiveValue } from './reactive-value.js';\n\nconst parenthesis_regex = /\\(.+\\)/;\n\n// these keywords are valid media queries but they need to be without parenthesis\n//\n// eg: new MediaQuery('screen')\n//\n// however because of the auto-parenthesis logic in the constructor since there's no parenthesis\n// in the media query they'll be surrounded by parenthesis\n//\n// however we can check if the media query is only composed of these keywords\n// and skip the auto-parenthesis\n//\n// https://github.com/sveltejs/svelte/issues/15930\nconst non_parenthesized_keywords = new Set(['all', 'print', 'screen', 'and', 'or', 'not', 'only']);\n\n/**\n * Creates a media query and provides a `current` property that reflects whether or not it matches.\n *\n * Use it carefully — during server-side rendering, there is no way to know what the correct value should be, potentially causing content to change upon hydration.\n * If you can use the media query in CSS to achieve the same effect, do that.\n *\n * ```svelte\n * <script>\n * \timport { MediaQuery } from 'svelte/reactivity';\n *\n * \tconst large = new MediaQuery('min-width: 800px');\n * </script>\n *\n * <h1>{large.current ? 'large screen' : 'small screen'}</h1>\n * ```\n * @extends {ReactiveValue<boolean>}\n * @since 5.7.0\n */\nexport class MediaQuery extends ReactiveValue {\n\t/**\n\t * @param {string} query A media query string\n\t * @param {boolean} [fallback] Fallback value for the server\n\t */\n\tconstructor(query, fallback) {\n\t\tlet final_query =\n\t\t\tparenthesis_regex.test(query) ||\n\t\t\t// we need to use `some` here because technically this `window.matchMedia('random,screen')` still returns true\n\t\t\tquery.split(/[\\s,]+/).some((keyword) => non_parenthesized_keywords.has(keyword.trim()))\n\t\t\t\t? query\n\t\t\t\t: `(${query})`;\n\t\tconst q = window.matchMedia(final_query);\n\t\tsuper(\n\t\t\t() => q.matches,\n\t\t\t(update) => on(q, 'change', update)\n\t\t);\n\t}\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["inited", "set"]
7
+ }