svelte 5.47.0 → 5.48.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.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "svelte",
3
3
  "description": "Cybernetically enhanced web apps",
4
4
  "license": "MIT",
5
- "version": "5.47.0",
5
+ "version": "5.48.0",
6
6
  "type": "module",
7
7
  "types": "./types/index.d.ts",
8
8
  "engines": {
@@ -3,8 +3,9 @@
3
3
  /** @import { AST } from './public.js' */
4
4
  import { walk as zimmerframe_walk } from 'zimmerframe';
5
5
  import { convert } from './legacy.js';
6
- import { parse as _parse } from './phases/1-parse/index.js';
6
+ import { parse as _parse, Parser } from './phases/1-parse/index.js';
7
7
  import { remove_typescript_nodes } from './phases/1-parse/remove_typescript_nodes.js';
8
+ import { parse_stylesheet } from './phases/1-parse/read/style.js';
8
9
  import { analyze_component, analyze_module } from './phases/2-analyze/index.js';
9
10
  import { transform_component, transform_module } from './phases/3-transform/index.js';
10
11
  import { validate_component_options, validate_module_options } from './validate-options.js';
@@ -118,6 +119,29 @@ export function parse(source, { modern, loose } = {}) {
118
119
  return to_public_ast(source, ast, modern);
119
120
  }
120
121
 
122
+ /**
123
+ * The parseCss function parses a CSS stylesheet, returning its abstract syntax tree.
124
+ *
125
+ * @param {string} source The CSS source code
126
+ * @returns {Omit<AST.CSS.StyleSheet, 'attributes' | 'content'>}
127
+ */
128
+ export function parseCss(source) {
129
+ source = remove_bom(source);
130
+ state.reset({ warning: () => false, filename: undefined });
131
+
132
+ state.set_source(source);
133
+
134
+ const parser = Parser.forCss(source);
135
+ const children = parse_stylesheet(parser);
136
+
137
+ return {
138
+ type: 'StyleSheet',
139
+ start: 0,
140
+ end: source.length,
141
+ children
142
+ };
143
+ }
144
+
121
145
  /**
122
146
  * @param {string} source
123
147
  * @param {AST.Root} ast
@@ -34,6 +34,20 @@ export class Parser {
34
34
  /** */
35
35
  index = 0;
36
36
 
37
+ /**
38
+ * Creates a minimal parser instance for CSS-only parsing.
39
+ * Skips Svelte component parsing setup.
40
+ * @param {string} source
41
+ * @returns {Parser}
42
+ */
43
+ static forCss(source) {
44
+ const parser = Object.create(Parser.prototype);
45
+ parser.template = source;
46
+ parser.index = 0;
47
+ parser.loose = false;
48
+ return parser;
49
+ }
50
+
37
51
  /** Whether we're parsing in TypeScript mode */
38
52
  ts = false;
39
53
 
@@ -24,10 +24,11 @@ const REGEX_HTML_COMMENT_CLOSE = /-->/;
24
24
  */
25
25
  export default function read_style(parser, start, attributes) {
26
26
  const content_start = parser.index;
27
- const children = read_body(parser, '</style');
27
+ const children = read_body(parser, (p) => p.match('</style') || p.index >= p.template.length);
28
28
  const content_end = parser.index;
29
29
 
30
- parser.read(/^<\/style\s*>/);
30
+ parser.eat('</style', true);
31
+ parser.read(/^\s*>/);
31
32
 
32
33
  return {
33
34
  type: 'StyleSheet',
@@ -46,20 +47,14 @@ export default function read_style(parser, start, attributes) {
46
47
 
47
48
  /**
48
49
  * @param {Parser} parser
49
- * @param {string} close
50
- * @returns {any[]}
50
+ * @param {(parser: Parser) => boolean} finished
51
+ * @returns {Array<AST.CSS.Rule | AST.CSS.Atrule>}
51
52
  */
52
- function read_body(parser, close) {
53
+ function read_body(parser, finished) {
53
54
  /** @type {Array<AST.CSS.Rule | AST.CSS.Atrule>} */
54
55
  const children = [];
55
56
 
56
- while (parser.index < parser.template.length) {
57
- allow_comment_or_whitespace(parser);
58
-
59
- if (parser.match(close)) {
60
- return children;
61
- }
62
-
57
+ while ((allow_comment_or_whitespace(parser), !finished(parser))) {
63
58
  if (parser.match('@')) {
64
59
  children.push(read_at_rule(parser));
65
60
  } else {
@@ -67,7 +62,7 @@ function read_body(parser, close) {
67
62
  }
68
63
  }
69
64
 
70
- e.expected_token(parser.template.length, close);
65
+ return children;
71
66
  }
72
67
 
73
68
  /**
@@ -627,3 +622,12 @@ function allow_comment_or_whitespace(parser) {
627
622
  parser.allow_whitespace();
628
623
  }
629
624
  }
625
+
626
+ /**
627
+ * Parse standalone CSS content (not wrapped in `<style>`).
628
+ * @param {Parser} parser
629
+ * @returns {Array<AST.CSS.Rule | AST.CSS.Atrule>}
630
+ */
631
+ export function parse_stylesheet(parser) {
632
+ return read_body(parser, (p) => p.index >= p.template.length);
633
+ }
@@ -80,7 +80,7 @@ export function RegularElement(node, context) {
80
80
 
81
81
  // Special case: <select>, <option> or <optgroup> with rich content needs special hydration handling
82
82
  // We mark the subtree as dynamic so parent elements properly include the child init code
83
- if (is_customizable_select_element(node)) {
83
+ if (is_customizable_select_element(node) || node.name === 'selectedcontent') {
84
84
  // Mark the element's own fragment as dynamic so it's not treated as static
85
85
  node.fragment.metadata.dynamic = true;
86
86
  // Also mark ancestor fragments so parents properly include the child init code
@@ -457,6 +457,18 @@ export function RegularElement(node, context) {
457
457
  context.state.after_update.push(...element_state.after_update);
458
458
  }
459
459
 
460
+ if (node.name === 'selectedcontent') {
461
+ context.state.init.push(
462
+ b.stmt(
463
+ b.call(
464
+ '$.selectedcontent',
465
+ context.state.node,
466
+ b.arrow([b.id('$$element')], b.assignment('=', context.state.node, b.id('$$element')))
467
+ )
468
+ )
469
+ );
470
+ }
471
+
460
472
  if (lookup.has('dir')) {
461
473
  // This fixes an issue with Chromium where updates to text content within an element
462
474
  // does not update the direction when set to auto. If we just re-assign the dir, this fixes it.
@@ -117,10 +117,10 @@ export function SvelteElement(node, context) {
117
117
  );
118
118
 
119
119
  if (dev) {
120
+ statements.push(b.stmt(b.call('$.validate_dynamic_element_tag', get_tag)));
120
121
  if (node.fragment.nodes.length > 0) {
121
122
  statements.push(b.stmt(b.call('$.validate_void_dynamic_element', get_tag)));
122
123
  }
123
- statements.push(b.stmt(b.call('$.validate_dynamic_element_tag', get_tag)));
124
124
  }
125
125
 
126
126
  const location = dev && locator(node.start);
@@ -29,10 +29,10 @@ export function SvelteElement(node, context) {
29
29
  tag = b.id(tag_id);
30
30
  }
31
31
 
32
+ context.state.init.push(b.stmt(b.call('$.validate_dynamic_element_tag', b.thunk(tag))));
32
33
  if (node.fragment.nodes.length > 0) {
33
34
  context.state.init.push(b.stmt(b.call('$.validate_void_dynamic_element', b.thunk(tag))));
34
35
  }
35
- context.state.init.push(b.stmt(b.call('$.validate_dynamic_element_tag', b.thunk(tag))));
36
36
  }
37
37
 
38
38
  const state = {
@@ -1,5 +1,6 @@
1
1
  import { hydrating, reset, set_hydrate_node, set_hydrating } from '../hydration.js';
2
2
  import { create_comment } from '../operations.js';
3
+ import { attach } from './attachments.js';
3
4
 
4
5
  /** @type {boolean | null} */
5
6
  let supported = null;
@@ -20,6 +21,52 @@ function is_supported() {
20
21
  return supported;
21
22
  }
22
23
 
24
+ /**
25
+ *
26
+ * @param {HTMLElement} element
27
+ * @param {(new_element: HTMLElement) => void} update_element
28
+ */
29
+ export function selectedcontent(element, update_element) {
30
+ // if it's not supported no need for special logic
31
+ if (!is_supported()) return;
32
+
33
+ // we use the attach function directly just to make sure is executed when is mounted to the dom
34
+ attach(element, () => () => {
35
+ const select = element.closest('select');
36
+ if (!select) return;
37
+
38
+ const observer = new MutationObserver((entries) => {
39
+ var selected = false;
40
+
41
+ for (const entry of entries) {
42
+ if (entry.target === element) {
43
+ // the `<selectedcontent>` already changed, no need to replace it
44
+ return;
45
+ }
46
+
47
+ // if the changes doesn't include the selected `<option>` we don't need to do anything
48
+ selected ||= !!entry.target.parentElement?.closest('option')?.selected;
49
+ }
50
+
51
+ if (selected) {
52
+ // replace the `<selectedcontent>` with a clone
53
+ element.replaceWith((element = /** @type {HTMLElement} */ (element.cloneNode(true))));
54
+ update_element(element);
55
+ }
56
+ });
57
+
58
+ observer.observe(select, {
59
+ childList: true,
60
+ characterData: true,
61
+ subtree: true
62
+ });
63
+
64
+ return () => {
65
+ observer.disconnect();
66
+ };
67
+ });
68
+ }
69
+
23
70
  /**
24
71
  * Handles rich HTML content inside `<option>`, `<optgroup>`, or `<select>` elements with browser-specific branching.
25
72
  * Modern browsers preserve HTML inside options, while older browsers strip it to text only.
@@ -42,7 +42,7 @@ export {
42
42
  export { set_class } from './dom/elements/class.js';
43
43
  export { apply, event, delegate, replay_events } from './dom/elements/events.js';
44
44
  export { autofocus, remove_textarea_child } from './dom/elements/misc.js';
45
- export { customizable_select } from './dom/elements/customizable-select.js';
45
+ export { customizable_select, selectedcontent } from './dom/elements/customizable-select.js';
46
46
  export { set_style } from './dom/elements/style.js';
47
47
  export { animation, transition } from './dom/elements/transitions.js';
48
48
  export { bind_active_element } from './dom/elements/bindings/document.js';
@@ -309,6 +309,20 @@ export function update_reaction(reaction) {
309
309
  if (previous_reaction !== null && previous_reaction !== reaction) {
310
310
  read_version++;
311
311
 
312
+ // update the `rv` of the previous reaction's deps — both existing and new —
313
+ // so that they are not added again
314
+ if (previous_reaction.deps !== null) {
315
+ for (let i = 0; i < previous_skipped_deps; i += 1) {
316
+ previous_reaction.deps[i].rv = read_version;
317
+ }
318
+ }
319
+
320
+ if (previous_deps !== null) {
321
+ for (const dep of previous_deps) {
322
+ dep.rv = read_version;
323
+ }
324
+ }
325
+
312
326
  if (untracked_writes !== null) {
313
327
  if (previous_untracked_writes === null) {
314
328
  previous_untracked_writes = untracked_writes;
@@ -526,7 +540,7 @@ export function get(signal) {
526
540
  skipped_deps++;
527
541
  } else if (new_deps === null) {
528
542
  new_deps = [signal];
529
- } else if (!new_deps.includes(signal)) {
543
+ } else {
530
544
  new_deps.push(signal);
531
545
  }
532
546
  }
package/src/version.js CHANGED
@@ -4,5 +4,5 @@
4
4
  * The current version, as set in package.json.
5
5
  * @type {string}
6
6
  */
7
- export const VERSION = '5.47.0';
7
+ export const VERSION = '5.48.0';
8
8
  export const PUBLIC_VERSION = '5';
package/types/index.d.ts CHANGED
@@ -884,6 +884,12 @@ declare module 'svelte/compiler' {
884
884
  modern?: false;
885
885
  loose?: boolean;
886
886
  } | undefined): Record<string, any>;
887
+ /**
888
+ * The parseCss function parses a CSS stylesheet, returning its abstract syntax tree.
889
+ *
890
+ * @param source The CSS source code
891
+ * */
892
+ export function parseCss(source: string): Omit<AST.CSS.StyleSheet, "attributes" | "content">;
887
893
  /**
888
894
  * @deprecated Replace this with `import { walk } from 'estree-walker'`
889
895
  * */
@@ -46,6 +46,7 @@
46
46
  "createAttachmentKey",
47
47
  "compile",
48
48
  "compileModule",
49
+ "parseCss",
49
50
  "walk",
50
51
  "Processed",
51
52
  "MarkupPreprocessor",
@@ -274,6 +275,6 @@
274
275
  null,
275
276
  null
276
277
  ],
277
- "mappings": "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",
278
+ "mappings": "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",
278
279
  "ignoreList": []
279
280
  }