lumen-plus 0.0.3 → 0.0.4

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 (518) hide show
  1. package/dist/components/Alert/Alert.svelte +1 -1
  2. package/dist/components/Autocomplete/Autocomplete.svelte +1 -1
  3. package/dist/components/Backtop/Backtop.svelte +1 -1
  4. package/dist/components/Breadcrumb/Breadcrumb.svelte +1 -1
  5. package/dist/components/Button/Button.svelte +1 -1
  6. package/dist/components/Calendar/Calendar.svelte +1 -1
  7. package/dist/components/Carousel/Carousel.svelte +1 -1
  8. package/dist/components/Cascader/Cascader.svelte +2 -2
  9. package/dist/components/Checkbox/Checkbox.svelte +1 -1
  10. package/dist/components/Collapse/CollapseItem.svelte +1 -1
  11. package/dist/components/ColorPicker/ColorPicker.svelte +2 -2
  12. package/dist/components/DatePicker/DatePicker.svelte +2 -2
  13. package/dist/components/DateTimePicker/DateTimePicker.svelte +2 -2
  14. package/dist/components/Dialog/Dialog.svelte +1 -1
  15. package/dist/components/Drawer/Drawer.svelte +1 -1
  16. package/dist/components/Dropdown/Dropdown.svelte +1 -1
  17. package/dist/components/Image/Image.svelte +1 -1
  18. package/dist/components/Input/Input.svelte +1 -1
  19. package/dist/components/InputNumber/InputNumber.svelte +1 -1
  20. package/dist/components/InputTag/InputTag.svelte +1 -1
  21. package/dist/components/Loading/Loading.svelte +1 -1
  22. package/dist/components/Menu/Menu.svelte +1 -1
  23. package/dist/components/Message/MessageBox.svelte +1 -1
  24. package/dist/components/MessageBox/MessageBox.svelte +2 -2
  25. package/dist/components/Notification/Notification.svelte +1 -1
  26. package/dist/components/Pagination/Pagination.svelte +4 -4
  27. package/dist/components/Popconfirm/Popconfirm.svelte +2 -2
  28. package/dist/components/Result/Result.svelte +1 -1
  29. package/dist/components/Select/Select.svelte +2 -2
  30. package/dist/components/Slider/Slider.svelte +1 -1
  31. package/dist/components/Steps/Step.svelte +1 -1
  32. package/dist/components/Switch/Switch.svelte +1 -1
  33. package/dist/components/Table/Table.svelte +5 -5
  34. package/dist/components/Tabs/Tabs.svelte +1 -1
  35. package/dist/components/Tag/Tag.svelte +1 -1
  36. package/dist/components/Textarea/Textarea.svelte +1 -1
  37. package/dist/components/TimePicker/TimePicker.svelte +2 -2
  38. package/dist/components/Transfer/Transfer.svelte +2 -2
  39. package/dist/components/Tree/TreeNode.svelte +2 -2
  40. package/dist/components/TreeSelect/TreeSelect.svelte +4 -4
  41. package/dist/components/Upload/Upload.svelte +1 -1
  42. package/dist/index.js +2 -0
  43. package/dist/theme-chalk/_index.scss +69 -0
  44. package/dist/theme-chalk/_reset.scss +16 -0
  45. package/dist/theme-chalk/_variables.scss +91 -0
  46. package/dist/theme-chalk/affix.scss +8 -0
  47. package/dist/theme-chalk/alert.scss +140 -0
  48. package/dist/theme-chalk/autocomplete.scss +238 -0
  49. package/dist/theme-chalk/avatar.scss +49 -0
  50. package/dist/theme-chalk/backtop.scss +55 -0
  51. package/dist/theme-chalk/badge.scss +47 -0
  52. package/dist/theme-chalk/breadcrumb.scss +50 -0
  53. package/dist/theme-chalk/button.scss +472 -0
  54. package/dist/theme-chalk/calendar.scss +166 -0
  55. package/dist/theme-chalk/card.scss +70 -0
  56. package/dist/theme-chalk/carousel.scss +167 -0
  57. package/dist/theme-chalk/cascader.scss +265 -0
  58. package/dist/theme-chalk/checkbox.scss +127 -0
  59. package/dist/theme-chalk/collapse.scss +100 -0
  60. package/dist/theme-chalk/color-picker.scss +247 -0
  61. package/dist/theme-chalk/container.scss +79 -0
  62. package/dist/theme-chalk/date-picker.scss +352 -0
  63. package/dist/theme-chalk/date-time-picker.scss +396 -0
  64. package/dist/theme-chalk/descriptions.scss +160 -0
  65. package/dist/theme-chalk/dialog.scss +154 -0
  66. package/dist/theme-chalk/divider.scss +61 -0
  67. package/dist/theme-chalk/drawer.scss +211 -0
  68. package/dist/theme-chalk/dropdown.scss +230 -0
  69. package/dist/theme-chalk/empty.scss +36 -0
  70. package/dist/theme-chalk/form.scss +187 -0
  71. package/dist/theme-chalk/icon.scss +16 -0
  72. package/dist/theme-chalk/image.scss +171 -0
  73. package/dist/theme-chalk/input-number.scss +229 -0
  74. package/dist/theme-chalk/input-tag.scss +119 -0
  75. package/dist/theme-chalk/input.scss +249 -0
  76. package/dist/theme-chalk/link.scss +28 -0
  77. package/dist/theme-chalk/loading.scss +68 -0
  78. package/dist/theme-chalk/menu.scss +239 -0
  79. package/dist/theme-chalk/message.scss +150 -0
  80. package/dist/theme-chalk/messagebox.scss +76 -0
  81. package/dist/theme-chalk/mixins/_bem.scss +103 -0
  82. package/dist/theme-chalk/mixins/_function.scss +12 -0
  83. package/dist/theme-chalk/notification.scss +164 -0
  84. package/dist/theme-chalk/pagination.scss +130 -0
  85. package/dist/theme-chalk/pin-input.scss +192 -0
  86. package/dist/theme-chalk/popconfirm.scss +194 -0
  87. package/dist/theme-chalk/popover.scss +196 -0
  88. package/dist/theme-chalk/progress.scss +51 -0
  89. package/dist/theme-chalk/radio.scss +128 -0
  90. package/dist/theme-chalk/rating.scss +227 -0
  91. package/dist/theme-chalk/result.scss +80 -0
  92. package/dist/theme-chalk/segmented.scss +108 -0
  93. package/dist/theme-chalk/select.scss +301 -0
  94. package/dist/theme-chalk/skeleton.scss +113 -0
  95. package/dist/theme-chalk/slider.scss +259 -0
  96. package/dist/theme-chalk/space.scss +44 -0
  97. package/dist/theme-chalk/statistic.scss +49 -0
  98. package/dist/theme-chalk/steps.scss +255 -0
  99. package/dist/theme-chalk/switch.scss +277 -0
  100. package/dist/theme-chalk/table.scss +343 -0
  101. package/dist/theme-chalk/tabs.scss +433 -0
  102. package/dist/theme-chalk/tag.scss +143 -0
  103. package/dist/theme-chalk/textarea.scss +125 -0
  104. package/dist/theme-chalk/time-picker.scss +321 -0
  105. package/dist/theme-chalk/timeline.scss +119 -0
  106. package/dist/theme-chalk/tooltip.scss +165 -0
  107. package/dist/theme-chalk/transfer.scss +219 -0
  108. package/dist/theme-chalk/tree-select.scss +384 -0
  109. package/dist/theme-chalk/tree.scss +101 -0
  110. package/dist/theme-chalk/upload.scss +457 -0
  111. package/dist/theme-chalk/watermark.scss +30 -0
  112. package/dist/utils/index.js +1 -0
  113. package/dist/utils/node_modules/.bin/tsc +2 -0
  114. package/dist/utils/node_modules/.bin/tsserver +2 -0
  115. package/dist/utils/node_modules/svelte/LICENSE.md +7 -0
  116. package/dist/utils/node_modules/svelte/README.md +41 -0
  117. package/dist/utils/node_modules/svelte/compiler/index.js +1 -0
  118. package/dist/utils/node_modules/svelte/compiler/package.json +3 -0
  119. package/dist/utils/node_modules/svelte/package.json +184 -0
  120. package/dist/utils/node_modules/svelte/src/animate/index.js +78 -0
  121. package/dist/utils/node_modules/svelte/src/attachments/index.js +113 -0
  122. package/dist/utils/node_modules/svelte/src/compiler/errors.js +1719 -0
  123. package/dist/utils/node_modules/svelte/src/compiler/index.js +198 -0
  124. package/dist/utils/node_modules/svelte/src/compiler/legacy.js +632 -0
  125. package/dist/utils/node_modules/svelte/src/compiler/migrate/index.js +1996 -0
  126. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/acorn.js +198 -0
  127. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/index.js +326 -0
  128. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/read/context.js +116 -0
  129. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/read/expression.js +93 -0
  130. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/read/options.js +261 -0
  131. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/read/script.js +97 -0
  132. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/read/style.js +633 -0
  133. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/remove_typescript_nodes.js +180 -0
  134. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/state/element.js +877 -0
  135. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/state/fragment.js +17 -0
  136. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/state/tag.js +751 -0
  137. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/state/text.js +23 -0
  138. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/utils/bracket.js +213 -0
  139. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/utils/create.js +16 -0
  140. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/utils/entities.js +2234 -0
  141. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/utils/fuzzymatch.js +280 -0
  142. package/dist/utils/node_modules/svelte/src/compiler/phases/1-parse/utils/html.js +127 -0
  143. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/css/css-analyze.js +331 -0
  144. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/css/css-prune.js +1160 -0
  145. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/css/css-warn.js +47 -0
  146. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/css/utils.js +177 -0
  147. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/index.js +1283 -0
  148. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/utils/check_graph_for_cycles.js +47 -0
  149. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/AnimateDirective.js +15 -0
  150. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ArrowFunctionExpression.js +11 -0
  151. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/AssignmentExpression.js +31 -0
  152. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/AttachTag.js +17 -0
  153. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/Attribute.js +66 -0
  154. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/AwaitBlock.js +48 -0
  155. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/AwaitExpression.js +150 -0
  156. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/BindDirective.js +280 -0
  157. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/CallExpression.js +339 -0
  158. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ClassBody.js +156 -0
  159. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ClassDeclaration.js +25 -0
  160. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ClassDirective.js +13 -0
  161. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/Component.js +26 -0
  162. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ConstTag.js +45 -0
  163. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/DebugTag.js +15 -0
  164. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/EachBlock.js +97 -0
  165. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ExportDefaultDeclaration.js +20 -0
  166. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ExportNamedDeclaration.js +70 -0
  167. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ExportSpecifier.js +30 -0
  168. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ExpressionStatement.js +38 -0
  169. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ExpressionTag.js +26 -0
  170. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/Fragment.js +10 -0
  171. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/FunctionDeclaration.js +16 -0
  172. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/FunctionExpression.js +11 -0
  173. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/HtmlTag.js +19 -0
  174. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/Identifier.js +193 -0
  175. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/IfBlock.js +27 -0
  176. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/ImportDeclaration.js +31 -0
  177. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/KeyBlock.js +21 -0
  178. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/LabeledStatement.js +95 -0
  179. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/LetDirective.js +24 -0
  180. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/Literal.js +14 -0
  181. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/MemberExpression.js +28 -0
  182. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/NewExpression.js +17 -0
  183. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/OnDirective.js +28 -0
  184. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/PropertyDefinition.js +21 -0
  185. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/RegularElement.js +210 -0
  186. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/RenderTag.js +68 -0
  187. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SlotElement.js +42 -0
  188. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SnippetBlock.js +113 -0
  189. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SpreadAttribute.js +13 -0
  190. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SpreadElement.js +16 -0
  191. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/StyleDirective.js +39 -0
  192. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteBody.js +22 -0
  193. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteBoundary.js +30 -0
  194. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteComponent.js +18 -0
  195. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteDocument.js +24 -0
  196. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteElement.js +78 -0
  197. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteFragment.js +27 -0
  198. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteHead.js +18 -0
  199. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteSelf.js +36 -0
  200. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/SvelteWindow.js +24 -0
  201. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/TaggedTemplateExpression.js +16 -0
  202. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/TemplateElement.js +12 -0
  203. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/Text.js +52 -0
  204. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/TitleElement.js +21 -0
  205. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/TransitionDirective.js +19 -0
  206. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/UpdateExpression.js +29 -0
  207. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/UseDirective.js +18 -0
  208. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/VariableDeclarator.js +160 -0
  209. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/a11y/constants.js +319 -0
  210. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/a11y/index.js +977 -0
  211. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/attribute.js +125 -0
  212. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/component.js +177 -0
  213. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/element.js +160 -0
  214. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/fragment.js +15 -0
  215. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/function.js +24 -0
  216. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/snippets.js +17 -0
  217. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/special-element.js +16 -0
  218. package/dist/utils/node_modules/svelte/src/compiler/phases/2-analyze/visitors/shared/utils.js +301 -0
  219. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/transform-client.js +709 -0
  220. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/transform-template/fix-attribute-casing.js +18 -0
  221. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/transform-template/index.js +67 -0
  222. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/transform-template/template.js +162 -0
  223. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/utils.js +181 -0
  224. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/AnimateDirective.js +38 -0
  225. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/ArrowFunctionExpression.js +11 -0
  226. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js +225 -0
  227. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/AttachTag.js +26 -0
  228. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/Attribute.js +14 -0
  229. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/AwaitBlock.js +124 -0
  230. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/AwaitExpression.js +25 -0
  231. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/BinaryExpression.js +34 -0
  232. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/BindDirective.js +290 -0
  233. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/BlockStatement.js +32 -0
  234. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/BreakStatement.js +20 -0
  235. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/CallExpression.js +136 -0
  236. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/ClassBody.js +111 -0
  237. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/Comment.js +11 -0
  238. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/Component.js +12 -0
  239. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/ConstTag.js +134 -0
  240. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/DebugTag.js +28 -0
  241. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/EachBlock.js +367 -0
  242. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/ExportNamedDeclaration.js +19 -0
  243. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/ExpressionStatement.js +20 -0
  244. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/ForOfStatement.js +25 -0
  245. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/Fragment.js +181 -0
  246. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/FunctionDeclaration.js +12 -0
  247. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/FunctionExpression.js +11 -0
  248. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/HtmlTag.js +49 -0
  249. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/Identifier.js +45 -0
  250. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/IfBlock.js +90 -0
  251. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/KeyBlock.js +39 -0
  252. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/LabeledStatement.js +64 -0
  253. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/LetDirective.js +55 -0
  254. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/MemberExpression.js +23 -0
  255. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/OnDirective.js +38 -0
  256. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/Program.js +153 -0
  257. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/RegularElement.js +791 -0
  258. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/RenderTag.js +91 -0
  259. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SlotElement.js +94 -0
  260. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SnippetBlock.js +94 -0
  261. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SpreadAttribute.js +10 -0
  262. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteBody.js +11 -0
  263. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteBoundary.js +126 -0
  264. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteComponent.js +13 -0
  265. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteDocument.js +11 -0
  266. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteElement.js +157 -0
  267. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteFragment.js +17 -0
  268. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteHead.js +23 -0
  269. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteSelf.js +13 -0
  270. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/SvelteWindow.js +11 -0
  271. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/TitleElement.js +48 -0
  272. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/TransitionDirective.js +41 -0
  273. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/UpdateExpression.js +55 -0
  274. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/UseDirective.js +49 -0
  275. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/VariableDeclaration.js +422 -0
  276. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/component.js +530 -0
  277. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/declarations.js +53 -0
  278. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/element.js +263 -0
  279. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/events.js +176 -0
  280. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js +185 -0
  281. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/function.js +17 -0
  282. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/special_element.js +22 -0
  283. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/client/visitors/shared/utils.js +513 -0
  284. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/css/index.js +479 -0
  285. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/index.js +118 -0
  286. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/transform-server.js +423 -0
  287. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/AssignmentExpression.js +107 -0
  288. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/AwaitBlock.js +37 -0
  289. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/AwaitExpression.js +40 -0
  290. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/CallExpression.js +71 -0
  291. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/ClassBody.js +81 -0
  292. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/Component.js +12 -0
  293. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/ConstTag.js +49 -0
  294. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/DebugTag.js +24 -0
  295. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/EachBlock.js +80 -0
  296. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/ExpressionStatement.js +23 -0
  297. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/Fragment.js +53 -0
  298. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/HtmlTag.js +26 -0
  299. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/Identifier.js +19 -0
  300. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/IfBlock.js +39 -0
  301. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/KeyBlock.js +22 -0
  302. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/LabeledStatement.js +24 -0
  303. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/MemberExpression.js +19 -0
  304. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/Program.js +25 -0
  305. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/PropertyDefinition.js +37 -0
  306. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/RegularElement.js +255 -0
  307. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/RenderTag.js +51 -0
  308. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SlotElement.js +77 -0
  309. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SnippetBlock.js +29 -0
  310. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SpreadAttribute.js +10 -0
  311. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SvelteBoundary.js +71 -0
  312. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SvelteComponent.js +12 -0
  313. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SvelteElement.js +102 -0
  314. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SvelteFragment.js +11 -0
  315. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SvelteHead.js +25 -0
  316. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/SvelteSelf.js +12 -0
  317. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/TitleElement.js +21 -0
  318. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/UpdateExpression.js +26 -0
  319. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/VariableDeclaration.js +212 -0
  320. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/shared/component.js +360 -0
  321. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/shared/element.js +563 -0
  322. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/server/visitors/shared/utils.js +407 -0
  323. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/shared/assignments.js +93 -0
  324. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/shared/transform-async.js +114 -0
  325. package/dist/utils/node_modules/svelte/src/compiler/phases/3-transform/utils.js +451 -0
  326. package/dist/utils/node_modules/svelte/src/compiler/phases/bindings.js +227 -0
  327. package/dist/utils/node_modules/svelte/src/compiler/phases/css.js +14 -0
  328. package/dist/utils/node_modules/svelte/src/compiler/phases/nodes.js +245 -0
  329. package/dist/utils/node_modules/svelte/src/compiler/phases/patterns.js +27 -0
  330. package/dist/utils/node_modules/svelte/src/compiler/phases/scope.js +1412 -0
  331. package/dist/utils/node_modules/svelte/src/compiler/preprocess/decode_sourcemap.js +96 -0
  332. package/dist/utils/node_modules/svelte/src/compiler/preprocess/index.js +368 -0
  333. package/dist/utils/node_modules/svelte/src/compiler/preprocess/replace_in_code.js +72 -0
  334. package/dist/utils/node_modules/svelte/src/compiler/print/index.js +890 -0
  335. package/dist/utils/node_modules/svelte/src/compiler/state.js +144 -0
  336. package/dist/utils/node_modules/svelte/src/compiler/utils/assert.js +9 -0
  337. package/dist/utils/node_modules/svelte/src/compiler/utils/ast.js +639 -0
  338. package/dist/utils/node_modules/svelte/src/compiler/utils/builders.js +698 -0
  339. package/dist/utils/node_modules/svelte/src/compiler/utils/compile_diagnostic.js +107 -0
  340. package/dist/utils/node_modules/svelte/src/compiler/utils/extract_svelte_ignore.js +104 -0
  341. package/dist/utils/node_modules/svelte/src/compiler/utils/mapped_code.js +454 -0
  342. package/dist/utils/node_modules/svelte/src/compiler/utils/push_array.js +13 -0
  343. package/dist/utils/node_modules/svelte/src/compiler/utils/sanitize_template_string.js +7 -0
  344. package/dist/utils/node_modules/svelte/src/compiler/utils/slot.js +20 -0
  345. package/dist/utils/node_modules/svelte/src/compiler/utils/string.js +9 -0
  346. package/dist/utils/node_modules/svelte/src/compiler/validate-options.js +324 -0
  347. package/dist/utils/node_modules/svelte/src/compiler/warnings.js +845 -0
  348. package/dist/utils/node_modules/svelte/src/constants.js +64 -0
  349. package/dist/utils/node_modules/svelte/src/easing/index.js +286 -0
  350. package/dist/utils/node_modules/svelte/src/escaping.js +26 -0
  351. package/dist/utils/node_modules/svelte/src/events/index.js +1 -0
  352. package/dist/utils/node_modules/svelte/src/html-tree-validation.js +238 -0
  353. package/dist/utils/node_modules/svelte/src/index-client.js +255 -0
  354. package/dist/utils/node_modules/svelte/src/index-server.js +56 -0
  355. package/dist/utils/node_modules/svelte/src/internal/client/constants.js +73 -0
  356. package/dist/utils/node_modules/svelte/src/internal/client/context.js +258 -0
  357. package/dist/utils/node_modules/svelte/src/internal/client/dev/assign.js +78 -0
  358. package/dist/utils/node_modules/svelte/src/internal/client/dev/console-log.js +35 -0
  359. package/dist/utils/node_modules/svelte/src/internal/client/dev/css.js +31 -0
  360. package/dist/utils/node_modules/svelte/src/internal/client/dev/debug.js +500 -0
  361. package/dist/utils/node_modules/svelte/src/internal/client/dev/elements.js +63 -0
  362. package/dist/utils/node_modules/svelte/src/internal/client/dev/equality.js +101 -0
  363. package/dist/utils/node_modules/svelte/src/internal/client/dev/hmr.js +89 -0
  364. package/dist/utils/node_modules/svelte/src/internal/client/dev/inspect.js +72 -0
  365. package/dist/utils/node_modules/svelte/src/internal/client/dev/legacy.js +25 -0
  366. package/dist/utils/node_modules/svelte/src/internal/client/dev/ownership.js +81 -0
  367. package/dist/utils/node_modules/svelte/src/internal/client/dev/tracing.js +162 -0
  368. package/dist/utils/node_modules/svelte/src/internal/client/dev/validation.js +16 -0
  369. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/async.js +64 -0
  370. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/await.js +142 -0
  371. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/boundary.js +507 -0
  372. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/branches.js +227 -0
  373. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/css-props.js +28 -0
  374. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/each.js +666 -0
  375. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/html.js +121 -0
  376. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/if.js +70 -0
  377. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/key.js +33 -0
  378. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/slot.js +44 -0
  379. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/snippet.js +103 -0
  380. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/svelte-component.js +26 -0
  381. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/svelte-element.js +152 -0
  382. package/dist/utils/node_modules/svelte/src/internal/client/dom/blocks/svelte-head.js +59 -0
  383. package/dist/utils/node_modules/svelte/src/internal/client/dom/css.js +32 -0
  384. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/actions.js +43 -0
  385. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/attachments.js +33 -0
  386. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/attributes.js +657 -0
  387. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/document.js +17 -0
  388. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/input.js +312 -0
  389. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/media.js +232 -0
  390. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/navigator.js +11 -0
  391. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/props.js +22 -0
  392. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/select.js +159 -0
  393. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/shared.js +76 -0
  394. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/size.js +108 -0
  395. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/this.js +61 -0
  396. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/universal.js +75 -0
  397. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/bindings/window.js +66 -0
  398. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/class.js +51 -0
  399. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/custom-element.js +338 -0
  400. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/customizable-select.js +98 -0
  401. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/events.js +338 -0
  402. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/misc.js +58 -0
  403. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/style.js +57 -0
  404. package/dist/utils/node_modules/svelte/src/internal/client/dom/elements/transitions.js +472 -0
  405. package/dist/utils/node_modules/svelte/src/internal/client/dom/hydration.js +120 -0
  406. package/dist/utils/node_modules/svelte/src/internal/client/dom/legacy/event-modifiers.js +127 -0
  407. package/dist/utils/node_modules/svelte/src/internal/client/dom/legacy/lifecycle.js +82 -0
  408. package/dist/utils/node_modules/svelte/src/internal/client/dom/legacy/misc.js +68 -0
  409. package/dist/utils/node_modules/svelte/src/internal/client/dom/operations.js +260 -0
  410. package/dist/utils/node_modules/svelte/src/internal/client/dom/reconciler.js +6 -0
  411. package/dist/utils/node_modules/svelte/src/internal/client/dom/task.js +42 -0
  412. package/dist/utils/node_modules/svelte/src/internal/client/dom/template.js +388 -0
  413. package/dist/utils/node_modules/svelte/src/internal/client/error-handling.js +116 -0
  414. package/dist/utils/node_modules/svelte/src/internal/client/errors.js +491 -0
  415. package/dist/utils/node_modules/svelte/src/internal/client/hydratable.js +33 -0
  416. package/dist/utils/node_modules/svelte/src/internal/client/index.js +184 -0
  417. package/dist/utils/node_modules/svelte/src/internal/client/legacy.js +46 -0
  418. package/dist/utils/node_modules/svelte/src/internal/client/loop.js +48 -0
  419. package/dist/utils/node_modules/svelte/src/internal/client/proxy.js +432 -0
  420. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/async.js +302 -0
  421. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/batch.js +988 -0
  422. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/deriveds.js +394 -0
  423. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/effects.js +717 -0
  424. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/equality.js +31 -0
  425. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/props.js +430 -0
  426. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/sources.js +368 -0
  427. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/status.js +25 -0
  428. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/store.js +203 -0
  429. package/dist/utils/node_modules/svelte/src/internal/client/reactivity/utils.js +40 -0
  430. package/dist/utils/node_modules/svelte/src/internal/client/render.js +319 -0
  431. package/dist/utils/node_modules/svelte/src/internal/client/runtime.js +831 -0
  432. package/dist/utils/node_modules/svelte/src/internal/client/timing.js +16 -0
  433. package/dist/utils/node_modules/svelte/src/internal/client/validate.js +88 -0
  434. package/dist/utils/node_modules/svelte/src/internal/client/warnings.js +271 -0
  435. package/dist/utils/node_modules/svelte/src/internal/disclose-version.js +6 -0
  436. package/dist/utils/node_modules/svelte/src/internal/flags/async.js +3 -0
  437. package/dist/utils/node_modules/svelte/src/internal/flags/index.js +23 -0
  438. package/dist/utils/node_modules/svelte/src/internal/flags/legacy.js +3 -0
  439. package/dist/utils/node_modules/svelte/src/internal/flags/tracing.js +3 -0
  440. package/dist/utils/node_modules/svelte/src/internal/index.js +5 -0
  441. package/dist/utils/node_modules/svelte/src/internal/server/abort-signal.js +13 -0
  442. package/dist/utils/node_modules/svelte/src/internal/server/blocks/html.js +11 -0
  443. package/dist/utils/node_modules/svelte/src/internal/server/blocks/snippet.js +24 -0
  444. package/dist/utils/node_modules/svelte/src/internal/server/context.js +122 -0
  445. package/dist/utils/node_modules/svelte/src/internal/server/crypto.js +41 -0
  446. package/dist/utils/node_modules/svelte/src/internal/server/dev.js +115 -0
  447. package/dist/utils/node_modules/svelte/src/internal/server/errors.js +118 -0
  448. package/dist/utils/node_modules/svelte/src/internal/server/hydratable.js +142 -0
  449. package/dist/utils/node_modules/svelte/src/internal/server/hydration.js +6 -0
  450. package/dist/utils/node_modules/svelte/src/internal/server/index.js +490 -0
  451. package/dist/utils/node_modules/svelte/src/internal/server/render-context.js +86 -0
  452. package/dist/utils/node_modules/svelte/src/internal/server/renderer.js +770 -0
  453. package/dist/utils/node_modules/svelte/src/internal/server/warnings.js +29 -0
  454. package/dist/utils/node_modules/svelte/src/internal/shared/attributes.js +223 -0
  455. package/dist/utils/node_modules/svelte/src/internal/shared/clone.js +137 -0
  456. package/dist/utils/node_modules/svelte/src/internal/shared/dev.js +65 -0
  457. package/dist/utils/node_modules/svelte/src/internal/shared/errors.js +134 -0
  458. package/dist/utils/node_modules/svelte/src/internal/shared/utils.js +118 -0
  459. package/dist/utils/node_modules/svelte/src/internal/shared/validate.js +47 -0
  460. package/dist/utils/node_modules/svelte/src/internal/shared/warnings.js +40 -0
  461. package/dist/utils/node_modules/svelte/src/legacy/legacy-client.js +280 -0
  462. package/dist/utils/node_modules/svelte/src/legacy/legacy-server.js +112 -0
  463. package/dist/utils/node_modules/svelte/src/motion/index.js +32 -0
  464. package/dist/utils/node_modules/svelte/src/motion/spring.js +369 -0
  465. package/dist/utils/node_modules/svelte/src/motion/tweened.js +306 -0
  466. package/dist/utils/node_modules/svelte/src/motion/utils.js +7 -0
  467. package/dist/utils/node_modules/svelte/src/reactivity/create-subscriber.js +95 -0
  468. package/dist/utils/node_modules/svelte/src/reactivity/date.js +118 -0
  469. package/dist/utils/node_modules/svelte/src/reactivity/index-client.js +7 -0
  470. package/dist/utils/node_modules/svelte/src/reactivity/index-server.js +23 -0
  471. package/dist/utils/node_modules/svelte/src/reactivity/map.js +273 -0
  472. package/dist/utils/node_modules/svelte/src/reactivity/media-query.js +55 -0
  473. package/dist/utils/node_modules/svelte/src/reactivity/reactive-value.js +24 -0
  474. package/dist/utils/node_modules/svelte/src/reactivity/set.js +213 -0
  475. package/dist/utils/node_modules/svelte/src/reactivity/url-search-params.js +174 -0
  476. package/dist/utils/node_modules/svelte/src/reactivity/url.js +205 -0
  477. package/dist/utils/node_modules/svelte/src/reactivity/window/index.js +161 -0
  478. package/dist/utils/node_modules/svelte/src/server/index.js +1 -0
  479. package/dist/utils/node_modules/svelte/src/store/index-client.js +169 -0
  480. package/dist/utils/node_modules/svelte/src/store/index-server.js +101 -0
  481. package/dist/utils/node_modules/svelte/src/store/shared/index.js +209 -0
  482. package/dist/utils/node_modules/svelte/src/store/utils.js +36 -0
  483. package/dist/utils/node_modules/svelte/src/transition/index.js +300 -0
  484. package/dist/utils/node_modules/svelte/src/utils.js +491 -0
  485. package/dist/utils/node_modules/svelte/src/version.js +8 -0
  486. package/dist/utils/node_modules/typescript/LICENSE.txt +55 -0
  487. package/dist/utils/node_modules/typescript/README.md +50 -0
  488. package/dist/utils/node_modules/typescript/SECURITY.md +41 -0
  489. package/dist/utils/node_modules/typescript/ThirdPartyNoticeText.txt +193 -0
  490. package/dist/utils/node_modules/typescript/bin/tsc +2 -0
  491. package/dist/utils/node_modules/typescript/bin/tsserver +2 -0
  492. package/dist/utils/node_modules/typescript/lib/_tsc.js +133818 -0
  493. package/dist/utils/node_modules/typescript/lib/_tsserver.js +659 -0
  494. package/dist/utils/node_modules/typescript/lib/_typingsInstaller.js +222 -0
  495. package/dist/utils/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +2122 -0
  496. package/dist/utils/node_modules/typescript/lib/de/diagnosticMessages.generated.json +2122 -0
  497. package/dist/utils/node_modules/typescript/lib/es/diagnosticMessages.generated.json +2122 -0
  498. package/dist/utils/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +2122 -0
  499. package/dist/utils/node_modules/typescript/lib/it/diagnosticMessages.generated.json +2122 -0
  500. package/dist/utils/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +2122 -0
  501. package/dist/utils/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +2122 -0
  502. package/dist/utils/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +2122 -0
  503. package/dist/utils/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +2122 -0
  504. package/dist/utils/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +2122 -0
  505. package/dist/utils/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +2122 -0
  506. package/dist/utils/node_modules/typescript/lib/tsc.js +8 -0
  507. package/dist/utils/node_modules/typescript/lib/tsserver.js +8 -0
  508. package/dist/utils/node_modules/typescript/lib/tsserverlibrary.js +21 -0
  509. package/dist/utils/node_modules/typescript/lib/typesMap.json +497 -0
  510. package/dist/utils/node_modules/typescript/lib/typescript.js +200276 -0
  511. package/dist/utils/node_modules/typescript/lib/typingsInstaller.js +8 -0
  512. package/dist/utils/node_modules/typescript/lib/watchGuard.js +53 -0
  513. package/dist/utils/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +2122 -0
  514. package/dist/utils/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +2122 -0
  515. package/dist/utils/node_modules/typescript/package.json +120 -0
  516. package/dist/utils/package.json +27 -0
  517. package/dist/utils/transitions.js +31 -0
  518. package/package.json +8 -2
@@ -0,0 +1,770 @@
1
+ /** @import { Component } from 'svelte' */
2
+ /** @import { Csp, HydratableContext, RenderOutput, SSRContext, SyncRenderOutput, Sha256Source } from './types.js' */
3
+ /** @import { MaybePromise } from '#shared' */
4
+ import { async_mode_flag } from '../flags/index.js';
5
+ import { abort } from './abort-signal.js';
6
+ import { pop, push, set_ssr_context, ssr_context, save } from './context.js';
7
+ import * as e from './errors.js';
8
+ import * as w from './warnings.js';
9
+ import { BLOCK_CLOSE, BLOCK_OPEN } from './hydration.js';
10
+ import { attributes } from './index.js';
11
+ import { get_render_context, with_render_context, init_render_context } from './render-context.js';
12
+ import { sha256 } from './crypto.js';
13
+ import * as devalue from 'devalue';
14
+
15
+ /** @typedef {'head' | 'body'} RendererType */
16
+ /** @typedef {{ [key in RendererType]: string }} AccumulatedContent */
17
+
18
+ /**
19
+ * @typedef {string | Renderer} RendererItem
20
+ */
21
+
22
+ /**
23
+ * Renderers are basically a tree of `string | Renderer`s, where each `Renderer` in the tree represents
24
+ * work that may or may not have completed. A renderer can be {@link collect}ed to aggregate the
25
+ * content from itself and all of its children, but this will throw if any of the children are
26
+ * performing asynchronous work. To asynchronously collect a renderer, just `await` it.
27
+ *
28
+ * The `string` values within a renderer are always associated with the {@link type} of that renderer. To switch types,
29
+ * call {@link child} with a different `type` argument.
30
+ */
31
+ export class Renderer {
32
+ /**
33
+ * The contents of the renderer.
34
+ * @type {RendererItem[]}
35
+ */
36
+ #out = [];
37
+
38
+ /**
39
+ * Any `onDestroy` callbacks registered during execution of this renderer.
40
+ * @type {(() => void)[] | undefined}
41
+ */
42
+ #on_destroy = undefined;
43
+
44
+ /**
45
+ * Whether this renderer is a component body.
46
+ * @type {boolean}
47
+ */
48
+ #is_component_body = false;
49
+
50
+ /**
51
+ * The type of string content that this renderer is accumulating.
52
+ * @type {RendererType}
53
+ */
54
+ type;
55
+
56
+ /** @type {Renderer | undefined} */
57
+ #parent;
58
+
59
+ /**
60
+ * Asynchronous work associated with this renderer
61
+ * @type {Promise<void> | undefined}
62
+ */
63
+ promise = undefined;
64
+
65
+ /**
66
+ * State which is associated with the content tree as a whole.
67
+ * It will be re-exposed, uncopied, on all children.
68
+ * @type {SSRState}
69
+ * @readonly
70
+ */
71
+ global;
72
+
73
+ /**
74
+ * State that is local to the branch it is declared in.
75
+ * It will be shallow-copied to all children.
76
+ *
77
+ * @type {{ select_value: string | undefined }}
78
+ */
79
+ local;
80
+
81
+ /**
82
+ * @param {SSRState} global
83
+ * @param {Renderer | undefined} [parent]
84
+ */
85
+ constructor(global, parent) {
86
+ this.#parent = parent;
87
+
88
+ this.global = global;
89
+ this.local = parent ? { ...parent.local } : { select_value: undefined };
90
+ this.type = parent ? parent.type : 'body';
91
+ }
92
+
93
+ /**
94
+ * @param {(renderer: Renderer) => void} fn
95
+ */
96
+ head(fn) {
97
+ const head = new Renderer(this.global, this);
98
+ head.type = 'head';
99
+
100
+ this.#out.push(head);
101
+ head.child(fn);
102
+ }
103
+
104
+ /**
105
+ * @param {Array<Promise<void>>} blockers
106
+ * @param {(renderer: Renderer) => void} fn
107
+ */
108
+ async_block(blockers, fn) {
109
+ this.#out.push(BLOCK_OPEN);
110
+ this.async(blockers, fn);
111
+ this.#out.push(BLOCK_CLOSE);
112
+ }
113
+
114
+ /**
115
+ * @param {Array<Promise<void>>} blockers
116
+ * @param {(renderer: Renderer) => void} fn
117
+ */
118
+ async(blockers, fn) {
119
+ let callback = fn;
120
+
121
+ if (blockers.length > 0) {
122
+ const context = ssr_context;
123
+
124
+ callback = (renderer) => {
125
+ return Promise.all(blockers).then(() => {
126
+ const previous_context = ssr_context;
127
+
128
+ try {
129
+ set_ssr_context(context);
130
+ return fn(renderer);
131
+ } finally {
132
+ set_ssr_context(previous_context);
133
+ }
134
+ });
135
+ };
136
+ }
137
+
138
+ this.child(callback);
139
+ }
140
+
141
+ /**
142
+ * @param {Array<() => void>} thunks
143
+ */
144
+ run(thunks) {
145
+ const context = ssr_context;
146
+
147
+ let promise = Promise.resolve(thunks[0]());
148
+ const promises = [promise];
149
+
150
+ for (const fn of thunks.slice(1)) {
151
+ promise = promise.then(() => {
152
+ const previous_context = ssr_context;
153
+ set_ssr_context(context);
154
+
155
+ try {
156
+ return fn();
157
+ } finally {
158
+ set_ssr_context(previous_context);
159
+ }
160
+ });
161
+
162
+ promises.push(promise);
163
+ }
164
+
165
+ return promises;
166
+ }
167
+
168
+ /**
169
+ * Create a child renderer. The child renderer inherits the state from the parent,
170
+ * but has its own content.
171
+ * @param {(renderer: Renderer) => MaybePromise<void>} fn
172
+ */
173
+ child(fn) {
174
+ const child = new Renderer(this.global, this);
175
+ this.#out.push(child);
176
+
177
+ const parent = ssr_context;
178
+
179
+ set_ssr_context({
180
+ ...ssr_context,
181
+ p: parent,
182
+ c: null,
183
+ r: child
184
+ });
185
+
186
+ const result = fn(child);
187
+
188
+ set_ssr_context(parent);
189
+
190
+ if (result instanceof Promise) {
191
+ if (child.global.mode === 'sync') {
192
+ e.await_invalid();
193
+ }
194
+ // just to avoid unhandled promise rejections -- we'll end up throwing in `collect_async` if something fails
195
+ result.catch(() => {});
196
+ child.promise = result;
197
+ }
198
+
199
+ return child;
200
+ }
201
+
202
+ /**
203
+ * Create a component renderer. The component renderer inherits the state from the parent,
204
+ * but has its own content. It is treated as an ordering boundary for ondestroy callbacks.
205
+ * @param {(renderer: Renderer) => MaybePromise<void>} fn
206
+ * @param {Function} [component_fn]
207
+ * @returns {void}
208
+ */
209
+ component(fn, component_fn) {
210
+ push(component_fn);
211
+ const child = this.child(fn);
212
+ child.#is_component_body = true;
213
+ pop();
214
+ }
215
+
216
+ /**
217
+ * @param {Record<string, any>} attrs
218
+ * @param {(renderer: Renderer) => void} fn
219
+ * @param {string | undefined} [css_hash]
220
+ * @param {Record<string, boolean> | undefined} [classes]
221
+ * @param {Record<string, string> | undefined} [styles]
222
+ * @param {number | undefined} [flags]
223
+ * @param {boolean | undefined} [is_rich]
224
+ * @returns {void}
225
+ */
226
+ select(attrs, fn, css_hash, classes, styles, flags, is_rich) {
227
+ const { value, ...select_attrs } = attrs;
228
+
229
+ this.push(`<select${attributes(select_attrs, css_hash, classes, styles, flags)}>`);
230
+ this.child((renderer) => {
231
+ renderer.local.select_value = value;
232
+ fn(renderer);
233
+ });
234
+ this.push(`${is_rich ? '<!>' : ''}</select>`);
235
+ }
236
+
237
+ /**
238
+ * @param {Record<string, any>} attrs
239
+ * @param {string | number | boolean | ((renderer: Renderer) => void)} body
240
+ * @param {string | undefined} [css_hash]
241
+ * @param {Record<string, boolean> | undefined} [classes]
242
+ * @param {Record<string, string> | undefined} [styles]
243
+ * @param {number | undefined} [flags]
244
+ * @param {boolean | undefined} [is_rich]
245
+ */
246
+ option(attrs, body, css_hash, classes, styles, flags, is_rich) {
247
+ this.#out.push(`<option${attributes(attrs, css_hash, classes, styles, flags)}`);
248
+
249
+ /**
250
+ * @param {Renderer} renderer
251
+ * @param {any} value
252
+ * @param {{ head?: string, body: any }} content
253
+ */
254
+ const close = (renderer, value, { head, body }) => {
255
+ if ('value' in attrs) {
256
+ value = attrs.value;
257
+ }
258
+
259
+ if (value === this.local.select_value) {
260
+ renderer.#out.push(' selected');
261
+ }
262
+
263
+ renderer.#out.push(`>${body}${is_rich ? '<!>' : ''}</option>`);
264
+
265
+ // super edge case, but may as well handle it
266
+ if (head) {
267
+ renderer.head((child) => child.push(head));
268
+ }
269
+ };
270
+
271
+ if (typeof body === 'function') {
272
+ this.child((renderer) => {
273
+ const r = new Renderer(this.global, this);
274
+ body(r);
275
+
276
+ if (this.global.mode === 'async') {
277
+ return r.#collect_content_async().then((content) => {
278
+ close(renderer, content.body.replaceAll('<!---->', ''), content);
279
+ });
280
+ } else {
281
+ const content = r.#collect_content();
282
+ close(renderer, content.body.replaceAll('<!---->', ''), content);
283
+ }
284
+ });
285
+ } else {
286
+ close(this, body, { body });
287
+ }
288
+ }
289
+
290
+ /**
291
+ * @param {(renderer: Renderer) => void} fn
292
+ */
293
+ title(fn) {
294
+ const path = this.get_path();
295
+
296
+ /** @param {string} head */
297
+ const close = (head) => {
298
+ this.global.set_title(head, path);
299
+ };
300
+
301
+ this.child((renderer) => {
302
+ const r = new Renderer(renderer.global, renderer);
303
+ fn(r);
304
+
305
+ if (renderer.global.mode === 'async') {
306
+ return r.#collect_content_async().then((content) => {
307
+ close(content.head);
308
+ });
309
+ } else {
310
+ const content = r.#collect_content();
311
+ close(content.head);
312
+ }
313
+ });
314
+ }
315
+
316
+ /**
317
+ * @param {string | (() => Promise<string>)} content
318
+ */
319
+ push(content) {
320
+ if (typeof content === 'function') {
321
+ this.child(async (renderer) => renderer.push(await content()));
322
+ } else {
323
+ this.#out.push(content);
324
+ }
325
+ }
326
+
327
+ /**
328
+ * @param {() => void} fn
329
+ */
330
+ on_destroy(fn) {
331
+ (this.#on_destroy ??= []).push(fn);
332
+ }
333
+
334
+ /**
335
+ * @returns {number[]}
336
+ */
337
+ get_path() {
338
+ return this.#parent ? [...this.#parent.get_path(), this.#parent.#out.indexOf(this)] : [];
339
+ }
340
+
341
+ /**
342
+ * @deprecated this is needed for legacy component bindings
343
+ */
344
+ copy() {
345
+ const copy = new Renderer(this.global, this.#parent);
346
+ copy.#out = this.#out.map((item) => (item instanceof Renderer ? item.copy() : item));
347
+ copy.promise = this.promise;
348
+ return copy;
349
+ }
350
+
351
+ /**
352
+ * @param {Renderer} other
353
+ * @deprecated this is needed for legacy component bindings
354
+ */
355
+ subsume(other) {
356
+ if (this.global.mode !== other.global.mode) {
357
+ throw new Error(
358
+ "invariant: A renderer cannot switch modes. If you're seeing this, there's a compiler bug. File an issue!"
359
+ );
360
+ }
361
+
362
+ this.local = other.local;
363
+ this.#out = other.#out.map((item) => {
364
+ if (item instanceof Renderer) {
365
+ item.subsume(item);
366
+ }
367
+ return item;
368
+ });
369
+ this.promise = other.promise;
370
+ this.type = other.type;
371
+ }
372
+
373
+ get length() {
374
+ return this.#out.length;
375
+ }
376
+
377
+ /**
378
+ * Only available on the server and when compiling with the `server` option.
379
+ * Takes a component and returns an object with `body` and `head` properties on it, which you can use to populate the HTML when server-rendering your app.
380
+ * @template {Record<string, any>} Props
381
+ * @param {Component<Props>} component
382
+ * @param {{ props?: Omit<Props, '$$slots' | '$$events'>; context?: Map<any, any>; idPrefix?: string; csp?: Csp }} [options]
383
+ * @returns {RenderOutput}
384
+ */
385
+ static render(component, options = {}) {
386
+ /** @type {AccumulatedContent | undefined} */
387
+ let sync;
388
+ /** @type {Promise<AccumulatedContent & { hashes: { script: Sha256Source[] } }> | undefined} */
389
+ let async;
390
+
391
+ const result = /** @type {RenderOutput} */ ({});
392
+ // making these properties non-enumerable so that console.logging
393
+ // doesn't trigger a sync render
394
+ Object.defineProperties(result, {
395
+ html: {
396
+ get: () => {
397
+ return (sync ??= Renderer.#render(component, options)).body;
398
+ }
399
+ },
400
+ head: {
401
+ get: () => {
402
+ return (sync ??= Renderer.#render(component, options)).head;
403
+ }
404
+ },
405
+ body: {
406
+ get: () => {
407
+ return (sync ??= Renderer.#render(component, options)).body;
408
+ }
409
+ },
410
+ hashes: {
411
+ value: {
412
+ script: ''
413
+ }
414
+ },
415
+ then: {
416
+ value:
417
+ /**
418
+ * this is not type-safe, but honestly it's the best I can do right now, and it's a straightforward function.
419
+ *
420
+ * @template TResult1
421
+ * @template [TResult2=never]
422
+ * @param { (value: SyncRenderOutput) => TResult1 } onfulfilled
423
+ * @param { (reason: unknown) => TResult2 } onrejected
424
+ */
425
+ (onfulfilled, onrejected) => {
426
+ if (!async_mode_flag) {
427
+ const result = (sync ??= Renderer.#render(component, options));
428
+ const user_result = onfulfilled({
429
+ head: result.head,
430
+ body: result.body,
431
+ html: result.body,
432
+ hashes: { script: [] }
433
+ });
434
+ return Promise.resolve(user_result);
435
+ }
436
+ async ??= init_render_context().then(() =>
437
+ with_render_context(() => Renderer.#render_async(component, options))
438
+ );
439
+ return async.then((result) => {
440
+ Object.defineProperty(result, 'html', {
441
+ // eslint-disable-next-line getter-return
442
+ get: () => {
443
+ e.html_deprecated();
444
+ }
445
+ });
446
+ return onfulfilled(/** @type {SyncRenderOutput} */ (result));
447
+ }, onrejected);
448
+ }
449
+ }
450
+ });
451
+
452
+ return result;
453
+ }
454
+
455
+ /**
456
+ * Collect all of the `onDestroy` callbacks registered during rendering. In an async context, this is only safe to call
457
+ * after awaiting `collect_async`.
458
+ *
459
+ * Child renderers are "porous" and don't affect execution order, but component body renderers
460
+ * create ordering boundaries. Within a renderer, callbacks run in order until hitting a component boundary.
461
+ * @returns {Iterable<() => void>}
462
+ */
463
+ *#collect_on_destroy() {
464
+ for (const component of this.#traverse_components()) {
465
+ yield* component.#collect_ondestroy();
466
+ }
467
+ }
468
+
469
+ /**
470
+ * Performs a depth-first search of renderers, yielding the deepest components first, then additional components as we backtrack up the tree.
471
+ * @returns {Iterable<Renderer>}
472
+ */
473
+ *#traverse_components() {
474
+ for (const child of this.#out) {
475
+ if (typeof child !== 'string') {
476
+ yield* child.#traverse_components();
477
+ }
478
+ }
479
+ if (this.#is_component_body) {
480
+ yield this;
481
+ }
482
+ }
483
+
484
+ /**
485
+ * @returns {Iterable<() => void>}
486
+ */
487
+ *#collect_ondestroy() {
488
+ if (this.#on_destroy) {
489
+ for (const fn of this.#on_destroy) {
490
+ yield fn;
491
+ }
492
+ }
493
+ for (const child of this.#out) {
494
+ if (child instanceof Renderer && !child.#is_component_body) {
495
+ yield* child.#collect_ondestroy();
496
+ }
497
+ }
498
+ }
499
+
500
+ /**
501
+ * Render a component. Throws if any of the children are performing asynchronous work.
502
+ *
503
+ * @template {Record<string, any>} Props
504
+ * @param {Component<Props>} component
505
+ * @param {{ props?: Omit<Props, '$$slots' | '$$events'>; context?: Map<any, any>; idPrefix?: string }} options
506
+ * @returns {AccumulatedContent}
507
+ */
508
+ static #render(component, options) {
509
+ var previous_context = ssr_context;
510
+ try {
511
+ const renderer = Renderer.#open_render('sync', component, options);
512
+
513
+ const content = renderer.#collect_content();
514
+ return Renderer.#close_render(content, renderer);
515
+ } finally {
516
+ abort();
517
+ set_ssr_context(previous_context);
518
+ }
519
+ }
520
+
521
+ /**
522
+ * Render a component.
523
+ *
524
+ * @template {Record<string, any>} Props
525
+ * @param {Component<Props>} component
526
+ * @param {{ props?: Omit<Props, '$$slots' | '$$events'>; context?: Map<any, any>; idPrefix?: string; csp?: Csp }} options
527
+ * @returns {Promise<AccumulatedContent & { hashes: { script: Sha256Source[] } }>}
528
+ */
529
+ static async #render_async(component, options) {
530
+ const previous_context = ssr_context;
531
+
532
+ try {
533
+ const renderer = Renderer.#open_render('async', component, options);
534
+ const content = await renderer.#collect_content_async();
535
+ const hydratables = await renderer.#collect_hydratables();
536
+ if (hydratables !== null) {
537
+ content.head = hydratables + content.head;
538
+ }
539
+ return Renderer.#close_render(content, renderer);
540
+ } finally {
541
+ set_ssr_context(previous_context);
542
+ abort();
543
+ }
544
+ }
545
+
546
+ /**
547
+ * Collect all of the code from the `out` array and return it as a string, or a promise resolving to a string.
548
+ * @param {AccumulatedContent} content
549
+ * @returns {AccumulatedContent}
550
+ */
551
+ #collect_content(content = { head: '', body: '' }) {
552
+ for (const item of this.#out) {
553
+ if (typeof item === 'string') {
554
+ content[this.type] += item;
555
+ } else if (item instanceof Renderer) {
556
+ item.#collect_content(content);
557
+ }
558
+ }
559
+
560
+ return content;
561
+ }
562
+
563
+ /**
564
+ * Collect all of the code from the `out` array and return it as a string.
565
+ * @param {AccumulatedContent} content
566
+ * @returns {Promise<AccumulatedContent>}
567
+ */
568
+ async #collect_content_async(content = { head: '', body: '' }) {
569
+ await this.promise;
570
+
571
+ // no danger to sequentially awaiting stuff in here; all of the work is already kicked off
572
+ for (const item of this.#out) {
573
+ if (typeof item === 'string') {
574
+ content[this.type] += item;
575
+ } else if (item instanceof Renderer) {
576
+ await item.#collect_content_async(content);
577
+ }
578
+ }
579
+
580
+ return content;
581
+ }
582
+
583
+ async #collect_hydratables() {
584
+ const ctx = get_render_context().hydratable;
585
+
586
+ for (const [_, key] of ctx.unresolved_promises) {
587
+ // this is a problem -- it means we've finished the render but we're still waiting on a promise to resolve so we can
588
+ // serialize it, so we're blocking the response on useless content.
589
+ w.unresolved_hydratable(key, ctx.lookup.get(key)?.stack ?? '<missing stack trace>');
590
+ }
591
+
592
+ for (const comparison of ctx.comparisons) {
593
+ // these reject if there's a mismatch
594
+ await comparison;
595
+ }
596
+
597
+ return await this.#hydratable_block(ctx);
598
+ }
599
+
600
+ /**
601
+ * @template {Record<string, any>} Props
602
+ * @param {'sync' | 'async'} mode
603
+ * @param {import('svelte').Component<Props>} component
604
+ * @param {{ props?: Omit<Props, '$$slots' | '$$events'>; context?: Map<any, any>; idPrefix?: string; csp?: Csp }} options
605
+ * @returns {Renderer}
606
+ */
607
+ static #open_render(mode, component, options) {
608
+ const renderer = new Renderer(
609
+ new SSRState(mode, options.idPrefix ? options.idPrefix + '-' : '', options.csp)
610
+ );
611
+
612
+ renderer.push(BLOCK_OPEN);
613
+
614
+ if (options.context) {
615
+ push();
616
+ /** @type {SSRContext} */ (ssr_context).c = options.context;
617
+ /** @type {SSRContext} */ (ssr_context).r = renderer;
618
+ }
619
+
620
+ // @ts-expect-error
621
+ component(renderer, options.props ?? {});
622
+
623
+ if (options.context) {
624
+ pop();
625
+ }
626
+
627
+ renderer.push(BLOCK_CLOSE);
628
+
629
+ return renderer;
630
+ }
631
+
632
+ /**
633
+ * @param {AccumulatedContent} content
634
+ * @param {Renderer} renderer
635
+ * @returns {AccumulatedContent & { hashes: { script: Sha256Source[] } }}
636
+ */
637
+ static #close_render(content, renderer) {
638
+ for (const cleanup of renderer.#collect_on_destroy()) {
639
+ cleanup();
640
+ }
641
+
642
+ let head = content.head + renderer.global.get_title();
643
+ let body = content.body;
644
+
645
+ for (const { hash, code } of renderer.global.css) {
646
+ head += `<style id="${hash}">${code}</style>`;
647
+ }
648
+
649
+ return {
650
+ head,
651
+ body,
652
+ hashes: {
653
+ script: renderer.global.csp.script_hashes
654
+ }
655
+ };
656
+ }
657
+
658
+ /**
659
+ * @param {HydratableContext} ctx
660
+ */
661
+ async #hydratable_block(ctx) {
662
+ if (ctx.lookup.size === 0) {
663
+ return null;
664
+ }
665
+
666
+ let entries = [];
667
+ let has_promises = false;
668
+
669
+ for (const [k, v] of ctx.lookup) {
670
+ if (v.promises) {
671
+ has_promises = true;
672
+ for (const p of v.promises) await p;
673
+ }
674
+
675
+ entries.push(`[${devalue.uneval(k)},${v.serialized}]`);
676
+ }
677
+
678
+ let prelude = `const h = (window.__svelte ??= {}).h ??= new Map();`;
679
+
680
+ if (has_promises) {
681
+ prelude = `const r = (v) => Promise.resolve(v);
682
+ ${prelude}`;
683
+ }
684
+
685
+ const body = `
686
+ {
687
+ ${prelude}
688
+
689
+ for (const [k, v] of [
690
+ ${entries.join(',\n\t\t\t\t\t')}
691
+ ]) {
692
+ h.set(k, v);
693
+ }
694
+ }
695
+ `;
696
+
697
+ let csp_attr = '';
698
+ if (this.global.csp.nonce) {
699
+ csp_attr = ` nonce="${this.global.csp.nonce}"`;
700
+ } else if (this.global.csp.hash) {
701
+ // note to future selves: this doesn't need to be optimized with a Map<body, hash>
702
+ // because the it's impossible for identical data to occur multiple times in a single render
703
+ // (this would require the same hydratable key:value pair to be serialized multiple times)
704
+ const hash = await sha256(body);
705
+ this.global.csp.script_hashes.push(`sha256-${hash}`);
706
+ }
707
+
708
+ return `\n\t\t<script${csp_attr}>${body}</script>`;
709
+ }
710
+ }
711
+
712
+ export class SSRState {
713
+ /** @readonly @type {Csp & { script_hashes: Sha256Source[] }} */
714
+ csp;
715
+
716
+ /** @readonly @type {'sync' | 'async'} */
717
+ mode;
718
+
719
+ /** @readonly @type {() => string} */
720
+ uid;
721
+
722
+ /** @readonly @type {Set<{ hash: string; code: string }>} */
723
+ css = new Set();
724
+
725
+ /** @type {{ path: number[], value: string }} */
726
+ #title = { path: [], value: '' };
727
+
728
+ /**
729
+ * @param {'sync' | 'async'} mode
730
+ * @param {string} id_prefix
731
+ * @param {Csp} csp
732
+ */
733
+ constructor(mode, id_prefix = '', csp = { hash: false }) {
734
+ this.mode = mode;
735
+ this.csp = { ...csp, script_hashes: [] };
736
+
737
+ let uid = 1;
738
+ this.uid = () => `${id_prefix}s${uid++}`;
739
+ }
740
+
741
+ get_title() {
742
+ return this.#title.value;
743
+ }
744
+
745
+ /**
746
+ * Performs a depth-first (lexicographic) comparison using the path. Rejects sets
747
+ * from earlier than or equal to the current value.
748
+ * @param {string} value
749
+ * @param {number[]} path
750
+ */
751
+ set_title(value, path) {
752
+ const current = this.#title.path;
753
+
754
+ let i = 0;
755
+ let l = Math.min(path.length, current.length);
756
+
757
+ // skip identical prefixes - [1, 2, 3, ...] === [1, 2, 3, ...]
758
+ while (i < l && path[i] === current[i]) i += 1;
759
+
760
+ if (path[i] === undefined) return;
761
+
762
+ // replace title if
763
+ // - incoming path is longer - [7, 8, 9] > [7, 8]
764
+ // - incoming path is later - [7, 8, 9] > [7, 8, 8]
765
+ if (current[i] === undefined || path[i] > current[i]) {
766
+ this.#title.path = path;
767
+ this.#title.value = value;
768
+ }
769
+ }
770
+ }