From 72d493aaa51de46221aa11edb25f29a016e380b7 Mon Sep 17 00:00:00 2001 From: Puru Vijay <47742487+PuruVJ@users.noreply.github.com> Date: Fri, 10 May 2024 01:08:22 +0530 Subject: [PATCH 1/3] docs(blog): Introducing Runes - mention .svelte.js suffix (#11522) * Update 2023-09-20-runes.md * More file names * update import * remove unnecessary .svelte.js * Note for runes * Apply suggestions from code review Co-authored-by: Rich Harris * Fix language, remove NOTE: * Reword the note * , -> and * Update documentation/blog/2023-09-20-runes.md Co-authored-by: Rich Harris --------- Co-authored-by: Rich Harris --- documentation/blog/2023-09-20-runes.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/documentation/blog/2023-09-20-runes.md b/documentation/blog/2023-09-20-runes.md index cb72feda067a..e5139f1e13c3 100644 --- a/documentation/blog/2023-09-20-runes.md +++ b/documentation/blog/2023-09-20-runes.md @@ -8,6 +8,7 @@ authorURL: / In 2019, Svelte 3 turned JavaScript into a [reactive language](/blog/svelte-3-rethinking-reactivity). Svelte is a web UI framework that uses a compiler to turn declarative component code like this... ```svelte + @@ -143,6 +151,8 @@ export function createCounter() { ``` +> Outside `.svelte` components, runes can only be used in `.svelte.js` and `.svelte.ts` modules. + Note that we're using a [get property](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get) in the returned object, so that `counter.count` always refers to the current value rather than the value at the time the function was called. ## Runtime reactivity From 8592914fdd332378ca14d33831c381fff333a5ea Mon Sep 17 00:00:00 2001 From: Simon H <5968653+dummdidumm@users.noreply.github.com> Date: Mon, 13 May 2024 21:06:11 +0200 Subject: [PATCH 2/3] fix: correctly handle falsy values of style directives in SSR mode (#11584) fixes #11044 --- .changeset/long-owls-eat.md | 5 +++++ packages/svelte/src/runtime/internal/ssr.js | 2 +- .../inline-style-directive-falsy-value/_config.js | 9 +++++++++ .../inline-style-directive-falsy-value/main.svelte | 5 +++++ 4 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 .changeset/long-owls-eat.md create mode 100644 packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/_config.js create mode 100644 packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/main.svelte diff --git a/.changeset/long-owls-eat.md b/.changeset/long-owls-eat.md new file mode 100644 index 000000000000..2855a756c85e --- /dev/null +++ b/.changeset/long-owls-eat.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: correctly handle falsy values of style directives in SSR mode diff --git a/packages/svelte/src/runtime/internal/ssr.js b/packages/svelte/src/runtime/internal/ssr.js index 85d6f443df44..1917f0cfbc69 100644 --- a/packages/svelte/src/runtime/internal/ssr.js +++ b/packages/svelte/src/runtime/internal/ssr.js @@ -193,7 +193,7 @@ export function add_classes(classes) { /** @returns {string} */ function style_object_to_string(style_object) { return Object.keys(style_object) - .filter((key) => style_object[key]) + .filter((key) => style_object[key] != null && style_object[key] !== '') .map((key) => `${key}: ${escape_attribute_value(style_object[key])};`) .join(' '); } diff --git a/packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/_config.js b/packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/_config.js new file mode 100644 index 000000000000..695b63f584ed --- /dev/null +++ b/packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/_config.js @@ -0,0 +1,9 @@ +export default { + html: ` +

+

+

+

+

+ ` +}; diff --git a/packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/main.svelte b/packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/main.svelte new file mode 100644 index 000000000000..bed3e7c0b5a5 --- /dev/null +++ b/packages/svelte/test/runtime/samples/inline-style-directive-falsy-value/main.svelte @@ -0,0 +1,5 @@ +

+

+

+

+

From a8deae9323f942be6a9cffe414fdc2a7484f70ca Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 13 May 2024 18:19:47 -0400 Subject: [PATCH 3/3] Version Packages (#11594) Co-authored-by: github-actions[bot] --- .changeset/long-owls-eat.md | 5 ----- packages/svelte/CHANGELOG.md | 6 ++++++ packages/svelte/package.json | 2 +- packages/svelte/src/shared/version.js | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) delete mode 100644 .changeset/long-owls-eat.md diff --git a/.changeset/long-owls-eat.md b/.changeset/long-owls-eat.md deleted file mode 100644 index 2855a756c85e..000000000000 --- a/.changeset/long-owls-eat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly handle falsy values of style directives in SSR mode diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 159c15d24e84..c2fa7111b8ee 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,11 @@ # svelte +## 4.2.17 + +### Patch Changes + +- fix: correctly handle falsy values of style directives in SSR mode ([#11584](https://github.com/sveltejs/svelte/pull/11584)) + ## 4.2.16 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index b3d800de615b..d48530137592 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -1,6 +1,6 @@ { "name": "svelte", - "version": "4.2.16", + "version": "4.2.17", "description": "Cybernetically enhanced web apps", "type": "module", "module": "src/runtime/index.js", diff --git a/packages/svelte/src/shared/version.js b/packages/svelte/src/shared/version.js index 2fc7259808cf..067fc853a2c2 100644 --- a/packages/svelte/src/shared/version.js +++ b/packages/svelte/src/shared/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '4.2.16'; +export const VERSION = '4.2.17'; export const PUBLIC_VERSION = '4';