@symbo.ls/scratch 3.1.2 → 3.2.7

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 (67) hide show
  1. package/dist/cjs/factory.js +23 -475
  2. package/dist/cjs/index.js +11 -2684
  3. package/dist/cjs/set.js +66 -1992
  4. package/dist/esm/factory.js +43 -0
  5. package/dist/esm/index.js +12 -0
  6. package/dist/esm/set.js +148 -0
  7. package/dist/iife/index.js +2580 -0
  8. package/package.json +26 -16
  9. package/src/set.js +22 -7
  10. package/src/system/color.js +48 -11
  11. package/src/system/font.js +19 -5
  12. package/src/system/reset.js +12 -3
  13. package/src/system/shadow.js +20 -13
  14. package/src/system/spacing.js +63 -56
  15. package/src/system/theme.js +4 -3
  16. package/src/system/timing.js +1 -1
  17. package/src/system/typography.js +12 -20
  18. package/src/transforms/index.js +212 -95
  19. package/src/utils/color.js +121 -31
  20. package/src/utils/font.js +54 -14
  21. package/src/utils/sequence.js +94 -39
  22. package/src/utils/sprite.js +10 -6
  23. package/src/utils/unit.js +69 -2
  24. package/src/utils/var.js +1 -2
  25. package/dist/cjs/defaultConfig/animation.js +0 -26
  26. package/dist/cjs/defaultConfig/cases.js +0 -26
  27. package/dist/cjs/defaultConfig/class.js +0 -27
  28. package/dist/cjs/defaultConfig/color.js +0 -28
  29. package/dist/cjs/defaultConfig/document.js +0 -26
  30. package/dist/cjs/defaultConfig/font-family.js +0 -34
  31. package/dist/cjs/defaultConfig/font.js +0 -26
  32. package/dist/cjs/defaultConfig/grid.js +0 -27
  33. package/dist/cjs/defaultConfig/icons.js +0 -28
  34. package/dist/cjs/defaultConfig/index.js +0 -222
  35. package/dist/cjs/defaultConfig/media.js +0 -31
  36. package/dist/cjs/defaultConfig/responsive.js +0 -52
  37. package/dist/cjs/defaultConfig/sequence.js +0 -51
  38. package/dist/cjs/defaultConfig/shadow.js +0 -26
  39. package/dist/cjs/defaultConfig/spacing.js +0 -87
  40. package/dist/cjs/defaultConfig/svg.js +0 -28
  41. package/dist/cjs/defaultConfig/templates.js +0 -26
  42. package/dist/cjs/defaultConfig/theme.js +0 -26
  43. package/dist/cjs/defaultConfig/timing.js +0 -68
  44. package/dist/cjs/defaultConfig/typography.js +0 -72
  45. package/dist/cjs/defaultConfig/unit.js +0 -28
  46. package/dist/cjs/package.json +0 -4
  47. package/dist/cjs/system/color.js +0 -1096
  48. package/dist/cjs/system/document.js +0 -906
  49. package/dist/cjs/system/font.js +0 -928
  50. package/dist/cjs/system/index.js +0 -2163
  51. package/dist/cjs/system/reset.js +0 -1018
  52. package/dist/cjs/system/shadow.js +0 -1305
  53. package/dist/cjs/system/spacing.js +0 -1257
  54. package/dist/cjs/system/svg.js +0 -1007
  55. package/dist/cjs/system/theme.js +0 -1197
  56. package/dist/cjs/system/timing.js +0 -1132
  57. package/dist/cjs/system/typography.js +0 -1243
  58. package/dist/cjs/tests/index.js +0 -30
  59. package/dist/cjs/transforms/index.js +0 -1534
  60. package/dist/cjs/utils/color.js +0 -336
  61. package/dist/cjs/utils/font.js +0 -69
  62. package/dist/cjs/utils/index.js +0 -1477
  63. package/dist/cjs/utils/sequence.js +0 -1125
  64. package/dist/cjs/utils/sprite.js +0 -554
  65. package/dist/cjs/utils/theme.js +0 -31
  66. package/dist/cjs/utils/unit.js +0 -28
  67. package/dist/cjs/utils/var.js +0 -967
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
+ var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
5
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
8
  var __export = (target, all) => {
7
9
  for (var name in all)
@@ -15,9 +17,15 @@ var __copyProps = (to, from, except, desc) => {
15
17
  }
16
18
  return to;
17
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
18
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/factory.js
21
29
  var factory_exports = {};
22
30
  __export(factory_exports, {
23
31
  CONFIG: () => CONFIG,
@@ -28,493 +36,33 @@ __export(factory_exports, {
28
36
  setActiveConfig: () => setActiveConfig
29
37
  });
30
38
  module.exports = __toCommonJS(factory_exports);
31
-
32
- // ../../../domql/packages/utils/globals.js
33
- var window2 = globalThis;
34
- var document2 = window2.document;
35
-
36
- // ../../../domql/packages/utils/node.js
37
- var isDOMNode = (obj) => {
38
- return typeof window2 !== "undefined" && (obj instanceof window2.Node || obj instanceof window2.Window || obj === window2 || obj === document);
39
- };
40
-
41
- // ../../../domql/packages/utils/types.js
42
- var isObject = (arg) => {
43
- if (arg === null) return false;
44
- return typeof arg === "object" && arg.constructor === Object;
45
- };
46
- var isString = (arg) => typeof arg === "string";
47
- var isNumber = (arg) => typeof arg === "number";
48
- var isFunction = (arg) => typeof arg === "function";
49
- var isBoolean = (arg) => arg === true || arg === false;
50
- var isNull = (arg) => arg === null;
51
- var isArray = (arg) => Array.isArray(arg);
52
- var isDate = (d) => d instanceof Date;
53
- var isObjectLike = (arg) => {
54
- if (arg === null) return false;
55
- return typeof arg === "object";
56
- };
57
- var isDefined = (arg) => {
58
- return isObject(arg) || isObjectLike(arg) || isString(arg) || isNumber(arg) || isFunction(arg) || isArray(arg) || isObjectLike(arg) || isBoolean(arg) || isDate(arg) || isNull(arg);
59
- };
60
- var isUndefined = (arg) => {
61
- return arg === void 0;
62
- };
63
-
64
- // ../../../domql/packages/utils/array.js
65
- var unstackArrayOfObjects = (arr, exclude = []) => {
66
- return arr.reduce(
67
- (a, c) => deepMerge(a, deepClone(c, { exclude }), exclude),
68
- {}
69
- );
70
- };
71
-
72
- // ../../../domql/packages/utils/keys.js
73
- var STATE_METHODS = [
74
- "update",
75
- "parse",
76
- "clean",
77
- "create",
78
- "destroy",
79
- "add",
80
- "toggle",
81
- "remove",
82
- "apply",
83
- "set",
84
- "reset",
85
- "replace",
86
- "quietReplace",
87
- "quietUpdate",
88
- "applyReplace",
89
- "applyFunction",
90
- "keys",
91
- "values",
92
- "ref",
93
- "rootUpdate",
94
- "parentUpdate",
95
- "parent",
96
- "__element",
97
- "__depends",
98
- "__ref",
99
- "__children",
100
- "root",
101
- "setByPath",
102
- "setPathCollection",
103
- "removeByPath",
104
- "removePathCollection",
105
- "getByPath"
106
- ];
107
- var PROPS_METHODS = ["update", "__element"];
108
- var METHODS = [
109
- "set",
110
- "reset",
111
- "update",
112
- "remove",
113
- "updateContent",
114
- "removeContent",
115
- "lookup",
116
- "lookdown",
117
- "lookdownAll",
118
- "getRef",
119
- "getPath",
120
- "setNodeStyles",
121
- "spotByPath",
122
- "keys",
123
- "parse",
124
- "setProps",
125
- "parseDeep",
126
- "variables",
127
- "if",
128
- "log",
129
- "verbose",
130
- "warn",
131
- "error",
132
- "call",
133
- "nextElement",
134
- "previousElement"
135
- ];
136
- var METHODS_EXL = [
137
- ...["node", "context", "extends", "__element", "__ref"],
138
- ...METHODS,
139
- ...STATE_METHODS,
140
- ...PROPS_METHODS
141
- ];
142
-
143
- // ../../../domql/packages/utils/object.js
144
- var deepMerge = (element, extend, excludeFrom = METHODS_EXL) => {
145
- for (const e in extend) {
146
- const hasOwnProperty = Object.prototype.hasOwnProperty.call(extend, e);
147
- if (!hasOwnProperty || excludeFrom.includes(e) || e.startsWith("__")) {
148
- continue;
149
- }
150
- const elementProp = element[e];
151
- const extendProp = extend[e];
152
- if (isObjectLike(elementProp) && isObjectLike(extendProp)) {
153
- deepMerge(elementProp, extendProp, excludeFrom);
154
- } else if (elementProp === void 0) {
155
- element[e] = extendProp;
156
- }
157
- }
158
- return element;
159
- };
160
- var deepClone = (obj, options = {}) => {
161
- const {
162
- exclude = [],
163
- cleanUndefined = false,
164
- cleanNull = false,
165
- window: targetWindow,
166
- visited = /* @__PURE__ */ new WeakMap(),
167
- handleExtends = false
168
- } = options;
169
- if (!isObjectLike(obj) || isDOMNode(obj)) {
170
- return obj;
171
- }
172
- if (visited.has(obj)) {
173
- return visited.get(obj);
174
- }
175
- const clone = targetWindow ? isArray(obj) ? new targetWindow.Array() : new targetWindow.Object() : isArray(obj) ? [] : {};
176
- visited.set(obj, clone);
177
- for (const key in obj) {
178
- if (!Object.prototype.hasOwnProperty.call(obj, key)) continue;
179
- if (exclude.includes(key) || key.startsWith("__") || key === "__proto__") {
180
- continue;
181
- }
182
- const value = obj[key];
183
- if (cleanUndefined && isUndefined(value) || cleanNull && isNull(value)) {
184
- continue;
185
- }
186
- if (isDOMNode(value)) {
187
- clone[key] = value;
188
- continue;
189
- }
190
- if (handleExtends && key === "extends" && isArray(value)) {
191
- clone[key] = unstackArrayOfObjects(value, exclude);
192
- continue;
193
- }
194
- if (isFunction(value) && targetWindow) {
195
- clone[key] = targetWindow.eval("(" + value.toString() + ")");
196
- continue;
197
- }
198
- if (isObjectLike(value)) {
199
- clone[key] = deepClone(value, {
200
- ...options,
201
- visited
202
- });
203
- } else {
204
- clone[key] = value;
205
- }
206
- }
207
- return clone;
208
- };
209
-
210
- // ../../../domql/packages/utils/cookie.js
211
- var isMobile = (() => typeof navigator === "undefined" ? false : /Mobi/.test(navigator.userAgent))();
212
-
213
- // ../../../domql/packages/event/dist/esm/keys.js
214
- var STATE_METHODS2 = [
215
- "update",
216
- "parse",
217
- "clean",
218
- "create",
219
- "destroy",
220
- "add",
221
- "toggle",
222
- "remove",
223
- "apply",
224
- "set",
225
- "reset",
226
- "replace",
227
- "quietReplace",
228
- "quietUpdate",
229
- "applyReplace",
230
- "applyFunction",
231
- "keys",
232
- "values",
233
- "ref",
234
- "rootUpdate",
235
- "parentUpdate",
236
- "parent",
237
- "__element",
238
- "__depends",
239
- "__ref",
240
- "__children",
241
- "root",
242
- "setByPath",
243
- "setPathCollection",
244
- "removeByPath",
245
- "removePathCollection",
246
- "getByPath"
247
- ];
248
- var PROPS_METHODS2 = ["update", "__element"];
249
- var METHODS2 = [
250
- "set",
251
- "reset",
252
- "update",
253
- "remove",
254
- "updateContent",
255
- "removeContent",
256
- "lookup",
257
- "lookdown",
258
- "lookdownAll",
259
- "getRef",
260
- "getPath",
261
- "setNodeStyles",
262
- "spotByPath",
263
- "keys",
264
- "parse",
265
- "setProps",
266
- "parseDeep",
267
- "variables",
268
- "if",
269
- "log",
270
- "verbose",
271
- "warn",
272
- "error",
273
- "call",
274
- "nextElement",
275
- "previousElement"
276
- ];
277
- var METHODS_EXL2 = [
278
- ...["node", "context", "extends", "__element", "__ref"],
279
- ...METHODS2,
280
- ...STATE_METHODS2,
281
- ...PROPS_METHODS2
282
- ];
283
-
284
- // ../../../domql/packages/event/dist/esm/globals.js
285
- var window3 = globalThis;
286
- var document3 = window3.document;
287
-
288
- // src/defaultConfig/index.js
289
- var defaultConfig_exports = {};
290
- __export(defaultConfig_exports, {
291
- ANIMATION: () => ANIMATION,
292
- BREAKPOINTS: () => BREAKPOINTS,
293
- CASES: () => CASES,
294
- CLASS: () => CLASS,
295
- COLOR: () => COLOR,
296
- DEVICES: () => DEVICES,
297
- DOCUMENT: () => DOCUMENT,
298
- FONT: () => FONT,
299
- FONT_FACE: () => FONT_FACE,
300
- FONT_FAMILY: () => FONT_FAMILY,
301
- FONT_FAMILY_TYPES: () => FONT_FAMILY_TYPES,
302
- GRADIENT: () => GRADIENT,
303
- GRID: () => GRID,
304
- ICONS: () => ICONS,
305
- MEDIA: () => MEDIA,
306
- RESET: () => RESET,
307
- SEMANTIC_ICONS: () => SEMANTIC_ICONS,
308
- SEQUENCE: () => SEQUENCE,
309
- SHADOW: () => SHADOW,
310
- SPACING: () => SPACING,
311
- SVG: () => SVG,
312
- SVG_DATA: () => SVG_DATA,
313
- TEMPLATES: () => TEMPLATES,
314
- THEME: () => THEME,
315
- TIMING: () => TIMING,
316
- TYPOGRAPHY: () => TYPOGRAPHY,
317
- UNIT: () => UNIT
318
- });
319
-
320
- // src/defaultConfig/sequence.js
321
- var SEQUENCE = {
322
- "minor-second": 1.067,
323
- "major-second": 1.125,
324
- "minor-third": 1.2,
325
- "major-third": 1.25,
326
- "perfect-fourth": 1.333,
327
- "augmented-fourth": 1.414,
328
- "perfect-fifth": 1.5,
329
- "minor-sixth": 1.6,
330
- phi: 1.618,
331
- // golden-ratio
332
- "major-sixth": 1.667,
333
- "square-root-3": 1.732,
334
- // theodorus
335
- "minor-seventh": 1.778,
336
- "major-seventh": 1.875,
337
- octave: 2,
338
- "square-root-5": 2.23,
339
- // pythagoras
340
- "major-tenth": 2.5,
341
- "major-eleventh": 2.667,
342
- "major-twelfth": 3,
343
- pi: 3.14,
344
- // archimedes
345
- "double-octave": 4
346
- };
347
-
348
- // src/defaultConfig/unit.js
349
- var UNIT = {
350
- default: "em"
351
- };
352
-
353
- // src/defaultConfig/typography.js
354
- var defaultProps = {
355
- browserDefault: 16,
356
- base: 16,
357
- type: "font-size",
358
- ratio: SEQUENCE["minor-third"],
359
- range: [-3, 12],
360
- h1Matches: 6,
361
- lineHeight: 1.5,
362
- subSequence: true,
363
- mediaRegenerate: false,
364
- unit: "em",
365
- templates: {},
366
- sequence: {},
367
- scales: {},
368
- vars: {}
369
- };
370
- var TYPOGRAPHY = defaultProps;
371
-
372
- // src/defaultConfig/font.js
373
- var FONT = {};
374
-
375
- // src/defaultConfig/font-family.js
376
- var FONT_FAMILY = {};
377
- var FONT_FAMILY_TYPES = {
378
- "sans-serif": "Helvetica, Arial, sans-serif, --system-default",
379
- serif: "Times New Roman, Georgia, serif, --system-default",
380
- monospace: "Courier New, monospace, --system-default"
381
- };
382
- var FONT_FACE = {};
383
-
384
- // src/defaultConfig/media.js
385
- var MEDIA = {
386
- tv: "(min-width: 2780px)",
387
- light: "(prefers-color-scheme: light)",
388
- dark: "(prefers-color-scheme: dark)",
389
- print: "print"
390
- };
391
-
392
- // src/defaultConfig/spacing.js
393
- var defaultProps2 = {
394
- base: TYPOGRAPHY.base,
395
- type: "spacing",
396
- ratio: SEQUENCE.phi,
397
- range: [-5, 15],
398
- subSequence: true,
399
- mediaRegenerate: false,
400
- unit: "em",
401
- sequence: {},
402
- scales: {},
403
- vars: {}
404
- };
405
- var SPACING = defaultProps2;
406
-
407
- // src/defaultConfig/color.js
408
- var COLOR = {};
409
- var GRADIENT = {};
410
-
411
- // src/defaultConfig/theme.js
412
- var THEME = {};
413
-
414
- // src/defaultConfig/shadow.js
415
- var SHADOW = {};
416
-
417
- // src/defaultConfig/icons.js
418
- var ICONS = {};
419
- var SEMANTIC_ICONS = {};
420
-
421
- // src/defaultConfig/timing.js
422
- var defaultProps3 = {
423
- default: 150,
424
- base: 150,
425
- type: "timing",
426
- ratio: SEQUENCE["perfect-fourth"],
427
- range: [-3, 12],
428
- mediaRegenerate: false,
429
- unit: "ms",
430
- sequence: {},
431
- scales: {},
432
- vars: {}
433
- };
434
- var TIMING = defaultProps3;
435
-
436
- // src/defaultConfig/document.js
437
- var DOCUMENT = {};
438
-
439
- // src/defaultConfig/responsive.js
440
- var BREAKPOINTS = {
441
- screenL: 1920,
442
- screenM: 1680,
443
- screenS: 1440,
444
- tabletL: 1366,
445
- tabletM: 1280,
446
- tabletS: 1024,
447
- mobileL: 768,
448
- mobileM: 560,
449
- mobileS: 480,
450
- mobileXS: 375
451
- };
452
- var DEVICES = {
453
- screenXXL: [2560, 1440],
454
- screenXL: [2240, 1260],
455
- screenL: [1920, 1024],
456
- screenM: [1680, 1024],
457
- screenS: [1440, 720],
458
- tabletL: [1366, 926],
459
- tabletM: [1280, 768],
460
- tabletS: [1024, 768],
461
- mobileL: [768, 375],
462
- mobileM: [560, 768],
463
- mobileS: [480, 768],
464
- mobileXS: [375, 768]
465
- };
466
-
467
- // src/defaultConfig/cases.js
468
- var CASES = {};
469
-
470
- // src/defaultConfig/animation.js
471
- var ANIMATION = {};
472
-
473
- // src/defaultConfig/svg.js
474
- var SVG = {};
475
- var SVG_DATA = {};
476
-
477
- // src/defaultConfig/templates.js
478
- var TEMPLATES = {};
479
-
480
- // src/defaultConfig/grid.js
481
- var defaultProps4 = {};
482
- var GRID = defaultProps4;
483
-
484
- // src/defaultConfig/class.js
485
- var defaultProps5 = {};
486
- var CLASS = defaultProps5;
487
-
488
- // src/defaultConfig/index.js
489
- var RESET = {};
490
-
491
- // src/factory.js
492
- var CSS_VARS = {};
493
- var CONFIG = {
39
+ var import_utils = require("@domql/utils");
40
+ var CONF = __toESM(require("./defaultConfig"), 1);
41
+ const CSS_VARS = {};
42
+ const CONFIG = {
494
43
  verbose: false,
495
44
  useVariable: true,
496
45
  useReset: true,
497
46
  CSS_VARS,
498
- ...void 0 || defaultConfig_exports
47
+ ...CONF.default || CONF
499
48
  };
500
- var cachedConfig = deepClone(CONFIG);
501
- var FACTORY = {
49
+ const cachedConfig = (0, import_utils.deepClone)(CONFIG);
50
+ const FACTORY = {
502
51
  active: "0",
503
52
  0: CONFIG
504
53
  };
505
- var activateConfig = (def) => {
506
- if (isDefined(def)) {
54
+ const activateConfig = (def) => {
55
+ if ((0, import_utils.isDefined)(def)) {
507
56
  FACTORY.active = def;
508
57
  }
509
58
  return FACTORY[def || FACTORY.active];
510
59
  };
511
- var getActiveConfig = (def) => {
60
+ const getActiveConfig = (def) => {
512
61
  return FACTORY[def || FACTORY.active] || CONFIG;
513
62
  };
514
- var setActiveConfig = (newConfig) => {
515
- if (!isObject(newConfig)) return;
63
+ const setActiveConfig = (newConfig) => {
64
+ if (!(0, import_utils.isObject)(newConfig)) return;
516
65
  FACTORY.active = "1";
517
- FACTORY["1"] = deepMerge(newConfig, deepClone(cachedConfig));
66
+ FACTORY["1"] = (0, import_utils.deepMerge)(newConfig, (0, import_utils.deepClone)(cachedConfig));
518
67
  return newConfig;
519
68
  };
520
- // @preserve-env