@symbo.ls/scratch 2.11.261 → 2.11.265

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/dist/cjs/index.js CHANGED
@@ -247,12 +247,12 @@ var require_types = __commonJS({
247
247
  isDefined: () => isDefined2,
248
248
  isFunction: () => isFunction2,
249
249
  isNot: () => isNot,
250
- isNull: () => isNull,
250
+ isNull: () => isNull2,
251
251
  isNumber: () => isNumber3,
252
252
  isObject: () => isObject8,
253
253
  isObjectLike: () => isObjectLike3,
254
254
  isString: () => isString10,
255
- isUndefined: () => isUndefined
255
+ isUndefined: () => isUndefined2
256
256
  });
257
257
  module2.exports = __toCommonJS2(types_exports);
258
258
  var import_node = require_node();
@@ -265,7 +265,7 @@ var require_types = __commonJS({
265
265
  var isNumber3 = (arg) => typeof arg === "number";
266
266
  var isFunction2 = (arg) => typeof arg === "function";
267
267
  var isBoolean = (arg) => arg === true || arg === false;
268
- var isNull = (arg) => arg === null;
268
+ var isNull2 = (arg) => arg === null;
269
269
  var isArray9 = (arg) => Array.isArray(arg);
270
270
  var isDate = (d) => d instanceof Date;
271
271
  var isObjectLike3 = (arg) => {
@@ -274,9 +274,9 @@ var require_types = __commonJS({
274
274
  return typeof arg === "object";
275
275
  };
276
276
  var isDefined2 = (arg) => {
277
- return isObject8(arg) || isObjectLike3(arg) || isString10(arg) || isNumber3(arg) || isFunction2(arg) || isArray9(arg) || isObjectLike3(arg) || isBoolean(arg) || isDate(arg) || isNull(arg);
277
+ return isObject8(arg) || isObjectLike3(arg) || isString10(arg) || isNumber3(arg) || isFunction2(arg) || isArray9(arg) || isObjectLike3(arg) || isBoolean(arg) || isDate(arg) || isNull2(arg);
278
278
  };
279
- var isUndefined = (arg) => {
279
+ var isUndefined2 = (arg) => {
280
280
  return arg === void 0;
281
281
  };
282
282
  var TYPES = {
@@ -286,7 +286,7 @@ var require_types = __commonJS({
286
286
  string: isString10,
287
287
  date: isDate,
288
288
  number: isNumber3,
289
- null: isNull,
289
+ null: isNull2,
290
290
  function: isFunction2,
291
291
  objectLike: isObjectLike3,
292
292
  node: import_node.isNode,
@@ -2188,7 +2188,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
2188
2188
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
2189
2189
  if (typeof value !== "string") {
2190
2190
  console.warn(propertyName, value, "is not a string");
2191
- return {};
2191
+ return { [propertyName]: value };
2192
2192
  }
2193
2193
  if (value === "-" || value === "")
2194
2194
  return {};
@@ -2711,22 +2711,24 @@ var findModifier = (val, modifier) => {
2711
2711
  else
2712
2712
  return val;
2713
2713
  };
2714
- var getMediaTheme = (val, mod) => {
2715
- const CONFIG2 = getActiveConfig();
2716
- if ((0, import_utils11.isString)(val) && val.slice(0, 2) === "--")
2717
- val = getMediaTheme(val.slice(2));
2718
- if (!val || !(0, import_utils11.isString)(val)) {
2719
- if (CONFIG2.verbose)
2720
- console.warn(val, "- theme is not string");
2714
+ var getMediaTheme = (value, modifier) => {
2715
+ const activeConfig = getActiveConfig();
2716
+ if ((0, import_utils11.isString)(value) && value.slice(0, 2) === "--") {
2717
+ value = getMediaTheme(value.slice(2));
2718
+ }
2719
+ if (!value || !(0, import_utils11.isString)(value)) {
2720
+ if (activeConfig.verbose) {
2721
+ console.warn(`${value} - Theme is not a string`);
2722
+ }
2721
2723
  return;
2722
2724
  }
2723
- const [name, ...modifier] = (0, import_utils11.isArray)(val) ? val : val.split(" ");
2724
- let value = CONFIG2.THEME[name];
2725
- if (value && (modifier || mod)) {
2726
- value = findModifier(value, modifier.length ? modifier : mod);
2725
+ const [themeName, ...themeModifiers] = (0, import_utils11.isArray)(value) ? value : value.split(" ");
2726
+ let themeValue = activeConfig.THEME[themeName];
2727
+ if (themeValue && (themeModifiers || modifier)) {
2728
+ themeValue = findModifier(themeValue, themeModifiers.length ? themeModifiers : modifier);
2727
2729
  }
2728
- const r = recursiveTheme(value);
2729
- return r;
2730
+ const resolvedTheme = recursiveTheme(themeValue);
2731
+ return resolvedTheme;
2730
2732
  };
2731
2733
 
2732
2734
  // src/system/font.js
@@ -3318,8 +3320,8 @@ var checkIfBoxSize = (propertyName) => {
3318
3320
  return (prop.includes("width") || prop.includes("height")) && !prop.includes("border");
3319
3321
  };
3320
3322
  var transformSize = (propertyName, val, props = {}, opts = {}) => {
3321
- let value = val !== void 0 ? val : props[propertyName];
3322
- if (value === void 0)
3323
+ let value = val || props[propertyName];
3324
+ if ((0, import_utils27.isUndefined)(value) && (0, import_utils27.isNull)(value))
3323
3325
  return;
3324
3326
  const shouldScaleBoxSize = props.scaleBoxSize;
3325
3327
  const isBoxSize = checkIfBoxSize(propertyName);
package/dist/cjs/set.js CHANGED
@@ -1938,7 +1938,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1938
1938
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1939
1939
  if (typeof value !== "string") {
1940
1940
  console.warn(propertyName, value, "is not a string");
1941
- return {};
1941
+ return { [propertyName]: value };
1942
1942
  }
1943
1943
  if (value === "-" || value === "")
1944
1944
  return {};
@@ -2371,22 +2371,24 @@ var findModifier = (val, modifier) => {
2371
2371
  else
2372
2372
  return val;
2373
2373
  };
2374
- var getMediaTheme = (val, mod) => {
2375
- const CONFIG2 = getActiveConfig();
2376
- if ((0, import_utils11.isString)(val) && val.slice(0, 2) === "--")
2377
- val = getMediaTheme(val.slice(2));
2378
- if (!val || !(0, import_utils11.isString)(val)) {
2379
- if (CONFIG2.verbose)
2380
- console.warn(val, "- theme is not string");
2374
+ var getMediaTheme = (value, modifier) => {
2375
+ const activeConfig = getActiveConfig();
2376
+ if ((0, import_utils11.isString)(value) && value.slice(0, 2) === "--") {
2377
+ value = getMediaTheme(value.slice(2));
2378
+ }
2379
+ if (!value || !(0, import_utils11.isString)(value)) {
2380
+ if (activeConfig.verbose) {
2381
+ console.warn(`${value} - Theme is not a string`);
2382
+ }
2381
2383
  return;
2382
2384
  }
2383
- const [name, ...modifier] = (0, import_utils11.isArray)(val) ? val : val.split(" ");
2384
- let value = CONFIG2.THEME[name];
2385
- if (value && (modifier || mod)) {
2386
- value = findModifier(value, modifier.length ? modifier : mod);
2385
+ const [themeName, ...themeModifiers] = (0, import_utils11.isArray)(value) ? value : value.split(" ");
2386
+ let themeValue = activeConfig.THEME[themeName];
2387
+ if (themeValue && (themeModifiers || modifier)) {
2388
+ themeValue = findModifier(themeValue, themeModifiers.length ? themeModifiers : modifier);
2387
2389
  }
2388
- const r = recursiveTheme(value);
2389
- return r;
2390
+ const resolvedTheme = recursiveTheme(themeValue);
2391
+ return resolvedTheme;
2390
2392
  };
2391
2393
 
2392
2394
  // src/system/font.js
@@ -1961,7 +1961,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1961
1961
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1962
1962
  if (typeof value !== "string") {
1963
1963
  console.warn(propertyName, value, "is not a string");
1964
- return {};
1964
+ return { [propertyName]: value };
1965
1965
  }
1966
1966
  if (value === "-" || value === "")
1967
1967
  return {};
@@ -2441,22 +2441,24 @@ var findModifier = (val, modifier) => {
2441
2441
  else
2442
2442
  return val;
2443
2443
  };
2444
- var getMediaTheme = (val, mod) => {
2445
- const CONFIG2 = getActiveConfig();
2446
- if ((0, import_utils11.isString)(val) && val.slice(0, 2) === "--")
2447
- val = getMediaTheme(val.slice(2));
2448
- if (!val || !(0, import_utils11.isString)(val)) {
2449
- if (CONFIG2.verbose)
2450
- console.warn(val, "- theme is not string");
2444
+ var getMediaTheme = (value, modifier) => {
2445
+ const activeConfig = getActiveConfig();
2446
+ if ((0, import_utils11.isString)(value) && value.slice(0, 2) === "--") {
2447
+ value = getMediaTheme(value.slice(2));
2448
+ }
2449
+ if (!value || !(0, import_utils11.isString)(value)) {
2450
+ if (activeConfig.verbose) {
2451
+ console.warn(`${value} - Theme is not a string`);
2452
+ }
2451
2453
  return;
2452
2454
  }
2453
- const [name, ...modifier] = (0, import_utils11.isArray)(val) ? val : val.split(" ");
2454
- let value = CONFIG2.THEME[name];
2455
- if (value && (modifier || mod)) {
2456
- value = findModifier(value, modifier.length ? modifier : mod);
2455
+ const [themeName, ...themeModifiers] = (0, import_utils11.isArray)(value) ? value : value.split(" ");
2456
+ let themeValue = activeConfig.THEME[themeName];
2457
+ if (themeValue && (themeModifiers || modifier)) {
2458
+ themeValue = findModifier(themeValue, themeModifiers.length ? themeModifiers : modifier);
2457
2459
  }
2458
- const r = recursiveTheme(value);
2459
- return r;
2460
+ const resolvedTheme = recursiveTheme(themeValue);
2461
+ return resolvedTheme;
2460
2462
  };
2461
2463
 
2462
2464
  // src/system/font.js
@@ -1640,22 +1640,24 @@ var findModifier = (val, modifier) => {
1640
1640
  else
1641
1641
  return val;
1642
1642
  };
1643
- var getMediaTheme = (val, mod) => {
1644
- const CONFIG2 = getActiveConfig();
1645
- if ((0, import_utils11.isString)(val) && val.slice(0, 2) === "--")
1646
- val = getMediaTheme(val.slice(2));
1647
- if (!val || !(0, import_utils11.isString)(val)) {
1648
- if (CONFIG2.verbose)
1649
- console.warn(val, "- theme is not string");
1643
+ var getMediaTheme = (value, modifier) => {
1644
+ const activeConfig = getActiveConfig();
1645
+ if ((0, import_utils11.isString)(value) && value.slice(0, 2) === "--") {
1646
+ value = getMediaTheme(value.slice(2));
1647
+ }
1648
+ if (!value || !(0, import_utils11.isString)(value)) {
1649
+ if (activeConfig.verbose) {
1650
+ console.warn(`${value} - Theme is not a string`);
1651
+ }
1650
1652
  return;
1651
1653
  }
1652
- const [name, ...modifier] = (0, import_utils11.isArray)(val) ? val : val.split(" ");
1653
- let value = CONFIG2.THEME[name];
1654
- if (value && (modifier || mod)) {
1655
- value = findModifier(value, modifier.length ? modifier : mod);
1654
+ const [themeName, ...themeModifiers] = (0, import_utils11.isArray)(value) ? value : value.split(" ");
1655
+ let themeValue = activeConfig.THEME[themeName];
1656
+ if (themeValue && (themeModifiers || modifier)) {
1657
+ themeValue = findModifier(themeValue, themeModifiers.length ? themeModifiers : modifier);
1656
1658
  }
1657
- const r = recursiveTheme(value);
1658
- return r;
1659
+ const resolvedTheme = recursiveTheme(themeValue);
1660
+ return resolvedTheme;
1659
1661
  };
1660
1662
 
1661
1663
  // src/system/reset.js
@@ -1900,7 +1900,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1900
1900
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1901
1901
  if (typeof value !== "string") {
1902
1902
  console.warn(propertyName, value, "is not a string");
1903
- return {};
1903
+ return { [propertyName]: value };
1904
1904
  }
1905
1905
  if (value === "-" || value === "")
1906
1906
  return {};
@@ -1808,7 +1808,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1808
1808
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1809
1809
  if (typeof value !== "string") {
1810
1810
  console.warn(propertyName, value, "is not a string");
1811
- return {};
1811
+ return { [propertyName]: value };
1812
1812
  }
1813
1813
  if (value === "-" || value === "")
1814
1814
  return {};
@@ -1941,20 +1941,22 @@ var findModifier = (val, modifier) => {
1941
1941
  else
1942
1942
  return val;
1943
1943
  };
1944
- var getMediaTheme = (val, mod) => {
1945
- const CONFIG2 = getActiveConfig();
1946
- if ((0, import_utils11.isString)(val) && val.slice(0, 2) === "--")
1947
- val = getMediaTheme(val.slice(2));
1948
- if (!val || !(0, import_utils11.isString)(val)) {
1949
- if (CONFIG2.verbose)
1950
- console.warn(val, "- theme is not string");
1944
+ var getMediaTheme = (value, modifier) => {
1945
+ const activeConfig = getActiveConfig();
1946
+ if ((0, import_utils11.isString)(value) && value.slice(0, 2) === "--") {
1947
+ value = getMediaTheme(value.slice(2));
1948
+ }
1949
+ if (!value || !(0, import_utils11.isString)(value)) {
1950
+ if (activeConfig.verbose) {
1951
+ console.warn(`${value} - Theme is not a string`);
1952
+ }
1951
1953
  return;
1952
1954
  }
1953
- const [name, ...modifier] = (0, import_utils11.isArray)(val) ? val : val.split(" ");
1954
- let value = CONFIG2.THEME[name];
1955
- if (value && (modifier || mod)) {
1956
- value = findModifier(value, modifier.length ? modifier : mod);
1955
+ const [themeName, ...themeModifiers] = (0, import_utils11.isArray)(value) ? value : value.split(" ");
1956
+ let themeValue = activeConfig.THEME[themeName];
1957
+ if (themeValue && (themeModifiers || modifier)) {
1958
+ themeValue = findModifier(themeValue, themeModifiers.length ? themeModifiers : modifier);
1957
1959
  }
1958
- const r = recursiveTheme(value);
1959
- return r;
1960
+ const resolvedTheme = recursiveTheme(themeValue);
1961
+ return resolvedTheme;
1960
1962
  };
@@ -1800,7 +1800,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1800
1800
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1801
1801
  if (typeof value !== "string") {
1802
1802
  console.warn(propertyName, value, "is not a string");
1803
- return {};
1803
+ return { [propertyName]: value };
1804
1804
  }
1805
1805
  if (value === "-" || value === "")
1806
1806
  return {};
@@ -1799,7 +1799,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1799
1799
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1800
1800
  if (typeof value !== "string") {
1801
1801
  console.warn(propertyName, value, "is not a string");
1802
- return {};
1802
+ return { [propertyName]: value };
1803
1803
  }
1804
1804
  if (value === "-" || value === "")
1805
1805
  return {};
@@ -211,12 +211,12 @@ var require_types = __commonJS({
211
211
  isDefined: () => isDefined2,
212
212
  isFunction: () => isFunction,
213
213
  isNot: () => isNot,
214
- isNull: () => isNull,
214
+ isNull: () => isNull2,
215
215
  isNumber: () => isNumber3,
216
216
  isObject: () => isObject8,
217
217
  isObjectLike: () => isObjectLike3,
218
218
  isString: () => isString10,
219
- isUndefined: () => isUndefined
219
+ isUndefined: () => isUndefined2
220
220
  });
221
221
  module2.exports = __toCommonJS2(types_exports);
222
222
  var import_node = require_node();
@@ -229,7 +229,7 @@ var require_types = __commonJS({
229
229
  var isNumber3 = (arg) => typeof arg === "number";
230
230
  var isFunction = (arg) => typeof arg === "function";
231
231
  var isBoolean = (arg) => arg === true || arg === false;
232
- var isNull = (arg) => arg === null;
232
+ var isNull2 = (arg) => arg === null;
233
233
  var isArray9 = (arg) => Array.isArray(arg);
234
234
  var isDate = (d) => d instanceof Date;
235
235
  var isObjectLike3 = (arg) => {
@@ -238,9 +238,9 @@ var require_types = __commonJS({
238
238
  return typeof arg === "object";
239
239
  };
240
240
  var isDefined2 = (arg) => {
241
- return isObject8(arg) || isObjectLike3(arg) || isString10(arg) || isNumber3(arg) || isFunction(arg) || isArray9(arg) || isObjectLike3(arg) || isBoolean(arg) || isDate(arg) || isNull(arg);
241
+ return isObject8(arg) || isObjectLike3(arg) || isString10(arg) || isNumber3(arg) || isFunction(arg) || isArray9(arg) || isObjectLike3(arg) || isBoolean(arg) || isDate(arg) || isNull2(arg);
242
242
  };
243
- var isUndefined = (arg) => {
243
+ var isUndefined2 = (arg) => {
244
244
  return arg === void 0;
245
245
  };
246
246
  var TYPES = {
@@ -250,7 +250,7 @@ var require_types = __commonJS({
250
250
  string: isString10,
251
251
  date: isDate,
252
252
  number: isNumber3,
253
- null: isNull,
253
+ null: isNull2,
254
254
  function: isFunction,
255
255
  objectLike: isObjectLike3,
256
256
  node: import_node.isNode,
@@ -1919,7 +1919,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1919
1919
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1920
1920
  if (typeof value !== "string") {
1921
1921
  console.warn(propertyName, value, "is not a string");
1922
- return {};
1922
+ return { [propertyName]: value };
1923
1923
  }
1924
1924
  if (value === "-" || value === "")
1925
1925
  return {};
@@ -2303,8 +2303,8 @@ var checkIfBoxSize = (propertyName) => {
2303
2303
  return (prop.includes("width") || prop.includes("height")) && !prop.includes("border");
2304
2304
  };
2305
2305
  var transformSize = (propertyName, val, props = {}, opts = {}) => {
2306
- let value = val !== void 0 ? val : props[propertyName];
2307
- if (value === void 0)
2306
+ let value = val || props[propertyName];
2307
+ if ((0, import_utils27.isUndefined)(value) && (0, import_utils27.isNull)(value))
2308
2308
  return;
2309
2309
  const shouldScaleBoxSize = props.scaleBoxSize;
2310
2310
  const isBoxSize = checkIfBoxSize(propertyName);
@@ -2035,7 +2035,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
2035
2035
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
2036
2036
  if (typeof value !== "string") {
2037
2037
  console.warn(propertyName, value, "is not a string");
2038
- return {};
2038
+ return { [propertyName]: value };
2039
2039
  }
2040
2040
  if (value === "-" || value === "")
2041
2041
  return {};
@@ -1763,7 +1763,7 @@ var getSequenceValue = (value = "A", sequenceProps) => {
1763
1763
  var getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
1764
1764
  if (typeof value !== "string") {
1765
1765
  console.warn(propertyName, value, "is not a string");
1766
- return {};
1766
+ return { [propertyName]: value };
1767
1767
  }
1768
1768
  if (value === "-" || value === "")
1769
1769
  return {};
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@symbo.ls/scratch",
3
3
  "description": "Φ / CSS framework and methodology.",
4
4
  "author": "symbo.ls",
5
- "version": "2.11.261",
5
+ "version": "2.11.265",
6
6
  "files": [
7
7
  "src",
8
8
  "dist"
@@ -29,5 +29,5 @@
29
29
  "@symbo.ls/utils": "latest",
30
30
  "color-contrast-checker": "^1.5.0"
31
31
  },
32
- "gitHead": "53e63702105d8c7baf0f136c5756383533bf3b30"
32
+ "gitHead": "e96a45d1a191dbcd8ee2d02c969398821e1f446d"
33
33
  }
@@ -221,21 +221,27 @@ const checkForReference = (val, callback) => {
221
221
 
222
222
  const checkThemeReference = (val) => checkForReference(val, checkThemeReference) // eslint-disable-line
223
223
 
224
- export const getMediaTheme = (val, mod) => {
225
- const CONFIG = getActiveConfig()
226
- if (isString(val) && val.slice(0, 2) === '--') val = getMediaTheme(val.slice(2))
224
+ export const getMediaTheme = (value, modifier) => {
225
+ const activeConfig = getActiveConfig()
226
+
227
+ if (isString(value) && value.slice(0, 2) === '--') {
228
+ value = getMediaTheme(value.slice(2))
229
+ }
227
230
 
228
- if (!val || !isString(val)) {
229
- if (CONFIG.verbose) console.warn(val, '- theme is not string')
231
+ if (!value || !isString(value)) {
232
+ if (activeConfig.verbose) {
233
+ console.warn(`${value} - Theme is not a string`)
234
+ }
230
235
  return
231
236
  }
232
237
 
233
- const [name, ...modifier] = isArray(val) ? val : val.split(' ')
234
- let value = CONFIG.THEME[name]
235
- if (value && (modifier || mod)) {
236
- value = findModifier(value, modifier.length ? modifier : mod)
238
+ const [themeName, ...themeModifiers] = isArray(value) ? value : value.split(' ')
239
+ let themeValue = activeConfig.THEME[themeName]
240
+
241
+ if (themeValue && (themeModifiers || modifier)) {
242
+ themeValue = findModifier(themeValue, themeModifiers.length ? themeModifiers : modifier)
237
243
  }
238
244
 
239
- const r = recursiveTheme(value)
240
- return r
245
+ const resolvedTheme = recursiveTheme(themeValue)
246
+ return resolvedTheme
241
247
  }
@@ -1,6 +1,6 @@
1
1
  'use strict'
2
2
 
3
- import { isString } from '@domql/utils'
3
+ import { isNull, isString, isUndefined } from '@domql/utils'
4
4
  import { getActiveConfig } from '../factory'
5
5
  import {
6
6
  getSpacingByKey,
@@ -112,9 +112,9 @@ export const checkIfBoxSize = propertyName => {
112
112
  }
113
113
 
114
114
  export const transformSize = (propertyName, val, props = {}, opts = {}) => {
115
- let value = val !== undefined ? val : props[propertyName]
115
+ let value = val || props[propertyName]
116
116
 
117
- if (value === undefined) return
117
+ if (isUndefined(value) && isNull(value)) return
118
118
 
119
119
  const shouldScaleBoxSize = props.scaleBoxSize
120
120
  const isBoxSize = checkIfBoxSize(propertyName)
@@ -249,7 +249,7 @@ export const getSequenceValue = (value = 'A', sequenceProps) => {
249
249
  export const getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {
250
250
  if (typeof value !== 'string') {
251
251
  console.warn(propertyName, value, 'is not a string')
252
- return ({})
252
+ return ({ [propertyName]: value })
253
253
  }
254
254
  if (value === '-' || value === '') return ({})
255
255
  return { [propertyName]: getSequenceValue(value, sequenceProps) }