druxt 0.25.1-dev.20261031205554 → 0.25.1-dev.20261031211906

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.
@@ -12,6 +12,10 @@ import DruxtWrapper from './DruxtWrapper.vue'
12
12
  * NaN as `null`, so two different values can write the same text. Anything
13
13
  * JSON does not hold exactly is compared by identity instead.
14
14
  *
15
+ * `undefined` is comparable. JSON leaves out an undefined property, as a prop
16
+ * does, which makes `{ included: undefined }` the same propsData as `{}`. In
17
+ * an array it writes as `null`, so there it is not.
18
+ *
15
19
  * @private
16
20
  *
17
21
  * @param {*} value - The value to check.
@@ -20,7 +24,7 @@ import DruxtWrapper from './DruxtWrapper.vue'
20
24
  * @returns {boolean} Whether JSON.stringify represents the value exactly.
21
25
  */
22
26
  const isComparable = (value, seen = new WeakSet()) => {
23
- if (value === null) return true
27
+ if (value === null || value === undefined) return true
24
28
 
25
29
  const type = typeof value
26
30
  if (type === 'string' || type === 'boolean') return true
@@ -30,7 +34,7 @@ const isComparable = (value, seen = new WeakSet()) => {
30
34
  if (seen.has(value)) return false
31
35
  seen.add(value)
32
36
 
33
- if (Array.isArray(value)) return value.every((item) => isComparable(item, seen))
37
+ if (Array.isArray(value)) return value.every((item) => item !== undefined && isComparable(item, seen))
34
38
 
35
39
  // A Map, a Set, a Date or any class instance writes as something other than itself.
36
40
  const prototype = Object.getPrototypeOf(value)
package/dist/druxt.esm.js CHANGED
@@ -563,7 +563,7 @@ const cacheClearHandler = (secret) => (req, res) => {
563
563
  };
564
564
 
565
565
  var name = "druxt";
566
- var version = "0.25.1-dev.20261031205554";
566
+ var version = "0.25.1-dev.20261031211906";
567
567
  var description = "The Fully Decoupled Drupal Framework for Nuxt.js.";
568
568
  var keywords = [
569
569
  "cms",
package/dist/druxt.ssr.js CHANGED
@@ -576,7 +576,7 @@ const cacheClearHandler = (secret) => (req, res) => {
576
576
  };
577
577
 
578
578
  var name = "druxt";
579
- var version = "0.25.1-dev.20261031205554";
579
+ var version = "0.25.1-dev.20261031211906";
580
580
  var description = "The Fully Decoupled Drupal Framework for Nuxt.js.";
581
581
  var keywords = [
582
582
  "cms",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "druxt",
3
- "version": "0.25.1-dev.20261031205554",
3
+ "version": "0.25.1-dev.20261031211906",
4
4
  "description": "The Fully Decoupled Drupal Framework for Nuxt.js.",
5
5
  "keywords": [
6
6
  "cms",