@design-edito/tools 0.4.6 → 0.4.11

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 (53) hide show
  1. package/agnostic/arrays/index.d.ts +1 -1
  2. package/agnostic/arrays/index.js +1 -1
  3. package/agnostic/arrays/make/index.d.ts +1 -1
  4. package/agnostic/colors/index.d.ts +2 -2
  5. package/agnostic/colors/index.js +2 -2
  6. package/agnostic/css/index.d.ts +1 -1
  7. package/agnostic/css/index.js +1 -1
  8. package/agnostic/css/scale/index.d.ts +46 -16
  9. package/agnostic/css/scale/index.js +67 -38
  10. package/agnostic/css/scale/index.test.js +81 -64
  11. package/agnostic/html/hyper-json/smart-tags/coalesced/index.d.ts +17 -17
  12. package/agnostic/html/hyper-json/smart-tags/coalesced/index.js +17 -17
  13. package/agnostic/html/hyper-json/smart-tags/isolated/index.d.ts +3 -3
  14. package/agnostic/html/hyper-json/smart-tags/isolated/index.js +3 -3
  15. package/agnostic/html/index.d.ts +1 -1
  16. package/agnostic/html/index.js +1 -1
  17. package/agnostic/index.d.ts +3 -3
  18. package/agnostic/index.js +3 -3
  19. package/agnostic/misc/index.d.ts +4 -4
  20. package/agnostic/misc/index.js +4 -4
  21. package/agnostic/misc/logs/index.d.ts +1 -1
  22. package/agnostic/misc/logs/index.js +1 -1
  23. package/agnostic/numbers/index.d.ts +2 -2
  24. package/agnostic/numbers/index.js +2 -2
  25. package/agnostic/objects/index.d.ts +3 -3
  26. package/agnostic/objects/index.js +3 -3
  27. package/agnostic/optim/index.d.ts +1 -1
  28. package/agnostic/optim/index.js +1 -1
  29. package/agnostic/random/index.d.ts +1 -1
  30. package/agnostic/random/index.js +1 -1
  31. package/agnostic/sanitization/index.d.ts +1 -1
  32. package/agnostic/sanitization/index.js +1 -1
  33. package/agnostic/strings/index.d.ts +1 -1
  34. package/agnostic/strings/index.js +1 -1
  35. package/components/index.d.ts +2 -2
  36. package/components/index.js +2 -2
  37. package/index.d.ts +1 -1
  38. package/index.js +1 -1
  39. package/node/@aws-s3/storage/directory/index.d.ts +1 -1
  40. package/node/@aws-s3/storage/directory/index.js +1 -1
  41. package/node/@aws-s3/storage/file/index.d.ts +1 -1
  42. package/node/@aws-s3/storage/file/index.js +1 -1
  43. package/node/@google-cloud/storage/file/index.d.ts +1 -1
  44. package/node/@google-cloud/storage/file/index.js +1 -1
  45. package/node/ftps/file/index.d.ts +3 -3
  46. package/node/ftps/file/index.js +3 -3
  47. package/node/images/transform/operations/index.d.ts +2 -2
  48. package/node/images/transform/operations/index.js +2 -2
  49. package/node/index.d.ts +4 -4
  50. package/node/index.js +4 -4
  51. package/node/sftp/file/index.d.ts +2 -2
  52. package/node/sftp/file/index.js +2 -2
  53. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  export * as dedupe from './dedupe/index.js'
2
- export * as isArrayOf from './is-array-of/index.js'
3
2
  export * as findDuplicates from './find-duplicates/index.js'
4
3
  export * as make from './make/index.js'
4
+ export * as isArrayOf from './is-array-of/index.js'
5
5
  export * as randomPick from './random-pick/index.js'
6
6
  export * as shuffle from './shuffle/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as dedupe from './dedupe/index.js'
2
- export * as isArrayOf from './is-array-of/index.js'
3
2
  export * as findDuplicates from './find-duplicates/index.js'
4
3
  export * as make from './make/index.js'
4
+ export * as isArrayOf from './is-array-of/index.js'
5
5
  export * as randomPick from './random-pick/index.js'
6
6
  export * as shuffle from './shuffle/index.js'
@@ -1,5 +1,5 @@
1
1
  /** Function that generates a value for each array position. */
2
- type Filler<T = any> = (pos?: number) => T;
2
+ type Filler<T = any> = (pos: number) => T;
3
3
  /**
4
4
  * Creates an array of a specified length using a filler function.
5
5
  *
@@ -4,9 +4,9 @@ export * as convert from './convert/index.js'
4
4
  export * as distance from './distance/index.js'
5
5
  export * as grayscale from './grayscale/index.js'
6
6
  export * as invert from './invert/index.js'
7
- export * as lerp from './lerp/index.js'
8
7
  export * as luminance from './luminance/index.js'
9
8
  export * as palette from './palette/index.js'
9
+ export * as lerp from './lerp/index.js'
10
10
  export * as rotate from './rotate/index.js'
11
- export * as tidy from './tidy/index.js'
12
11
  export * as typechecks from './typechecks/index.js'
12
+ export * as tidy from './tidy/index.js'
@@ -4,9 +4,9 @@ export * as convert from './convert/index.js'
4
4
  export * as distance from './distance/index.js'
5
5
  export * as grayscale from './grayscale/index.js'
6
6
  export * as invert from './invert/index.js'
7
- export * as lerp from './lerp/index.js'
8
7
  export * as luminance from './luminance/index.js'
9
8
  export * as palette from './palette/index.js'
9
+ export * as lerp from './lerp/index.js'
10
10
  export * as rotate from './rotate/index.js'
11
- export * as tidy from './tidy/index.js'
12
11
  export * as typechecks from './typechecks/index.js'
12
+ export * as tidy from './tidy/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as bem from './bem/index.js'
2
2
  export * as clss from './clss/index.js'
3
+ export * as generateNiceColor from './generate-nice-color/index.js'
3
4
  export * as isValidCssClassName from './is-valid-css-class-name/index.js'
4
5
  export * as scale from './scale/index.js'
5
- export * as generateNiceColor from './generate-nice-color/index.js'
6
6
  export * as stylesSet from './styles-set/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as bem from './bem/index.js'
2
2
  export * as clss from './clss/index.js'
3
+ export * as generateNiceColor from './generate-nice-color/index.js'
3
4
  export * as isValidCssClassName from './is-valid-css-class-name/index.js'
4
5
  export * as scale from './scale/index.js'
5
- export * as generateNiceColor from './generate-nice-color/index.js'
6
6
  export * as stylesSet from './styles-set/index.js'
@@ -1,20 +1,50 @@
1
- /** Describes a scale configuration for generating CSS values across levels and screen widths. */
2
- export type ScaleDescriptor = {
3
- /** The lower and upper bounds for screen width in pixels, e.g., `[minWidth, maxWidth]`. */ screenBounds: [number, number];
4
- /** The minimum and maximum values for the low-level range, used at the lower end of the scale. */ lowLevel: [number, number];
5
- /** The minimum and maximum values for the high-level range, used at the higher end of the scale. */ highLevel: [number, number];
6
- /** The total number of discrete steps in the scale (must be 2 for interpolation). */ steps: number;
7
- /** Optional. Whether to wrap the resulting CSS value in a `clamp()` function to enforce bounds. */ clamp?: boolean;
1
+ /**
2
+ * Generates an array of interpolated values between a minimum and maximum using a geometric progression.
3
+ *
4
+ * @param {number} min - The starting value of the scale.
5
+ * @param {number} max - The ending value of the scale.
6
+ * @param {number} intermediateLevels - The number of intermediate levels between min and max.
7
+ * @returns {number[]} An array of rounded values including the minimum and interpolated steps up to the maximum.
8
+ */
9
+ export declare const interpolateLevels: (min: number, max: number, intermediateLevels: number) => number[];
10
+ /** Describes the configuration used to compute scale values across breakpoints. */
11
+ export type ScaleDataOptions = {
12
+ /** Ordered list of breakpoint widths in pixels. Must contain at least two values. */ breakpoints: number[];
13
+ /** The minimum and maximum values for the low end of the scale. */ loScaleBounds: [number, number];
14
+ /** The minimum and maximum values for the high end of the scale. */ hiScaleBounds: [number, number];
15
+ /** Number of intermediate levels between the minimum and maximum values. */ intermediateLevels: number;
16
+ };
17
+ /**
18
+ * Computes scale data for each breakpoint, including interpolated levels.
19
+ *
20
+ * @param {ScaleDataOptions} options - Configuration for generating scale data.
21
+ * @param {number[]} options.breakpoints - Ordered list of breakpoint widths in pixels.
22
+ * @param {[number, number]} options.loScaleBounds - Minimum and maximum values for the low end of the scale.
23
+ * @param {[number, number]} options.hiScaleBounds - Minimum and maximum values for the high end of the scale.
24
+ * @param {number} options.intermediateLevels - Number of intermediate levels between bounds.
25
+ * @throws Will throw if `breakpoints` contains fewer than two values.
26
+ */
27
+ export declare const getScaleData: ({ breakpoints, loScaleBounds, hiScaleBounds, intermediateLevels }: ScaleDataOptions) => Array<{
28
+ breakpoint: number;
29
+ levels: number[];
30
+ }>;
31
+ /** Extends scale data options with CSS generation parameters. */
32
+ export type GenerateScaleCssOptions = ScaleDataOptions & {
33
+ /** The base name used for generated CSS custom properties. */ scaleName: string;
34
+ /** The CSS selector that will receive the custom properties. */ targetSelector: string;
35
+ /** The unit to append to each generated value (e.g., `px`, `rem`). */ unit: string;
8
36
  };
9
37
  /**
10
- * Creates a scale function that maps a level to a CSS size value using harmonic interpolation.
38
+ * Generates responsive CSS custom properties for a scale across breakpoints.
11
39
  *
12
- * @param {ScaleDescriptor} descriptor - The scale configuration.
13
- * @param {[number, number]} descriptor.screenBounds - The lower and upper bounds for screen width in pixels.
14
- * @param {[number, number]} descriptor.lowLevel - Minimum and maximum values for the low level range.
15
- * @param {[number, number]} descriptor.highLevel - Minimum and maximum values for the high level range.
16
- * @param {number} descriptor.steps - Number of discrete steps in the scale.
17
- * @param {boolean} [descriptor.clamp] - Whether to wrap the resulting CSS value in a `clamp()` function.
18
- * @returns {(level: number) => string | undefined} A function mapping a level to a CSS value string.
40
+ * @param {GenerateScaleCssOptions} options - Configuration for generating the CSS output.
41
+ * @param {string} options.scaleName - Base name for CSS custom properties.
42
+ * @param {string} options.targetSelector - CSS selector to which the properties will be applied.
43
+ * @param {string} options.unit - Unit appended to each value.
44
+ * @param {number[]} options.breakpoints - Ordered list of breakpoint widths in pixels.
45
+ * @param {[number, number]} options.loScaleBounds - Minimum and maximum values for the low end of the scale.
46
+ * @param {[number, number]} options.hiScaleBounds - Minimum and maximum values for the high end of the scale.
47
+ * @param {number} options.intermediateLevels - Number of intermediate levels between bounds.
48
+ * @returns {string} A CSS string containing custom properties for each breakpoint, wrapped in media queries where applicable.
19
49
  */
20
- export declare function createScale(descriptor: ScaleDescriptor): (level: number) => string | undefined;
50
+ export declare const generateScaleCss: ({ scaleName, targetSelector, unit, ...options }: GenerateScaleCssOptions) => string;
@@ -1,42 +1,71 @@
1
- import { round } from '../../numbers/round/index.js';
2
1
  import { getGeometricStep } from '../../numbers/geometric-progressions/index.js';
2
+ import { round } from '../../numbers/round/index.js';
3
+ import { make as makeArr } from '../../arrays/make/index.js';
4
+ /**
5
+ * Generates an array of interpolated values between a minimum and maximum using a geometric progression.
6
+ *
7
+ * @param {number} min - The starting value of the scale.
8
+ * @param {number} max - The ending value of the scale.
9
+ * @param {number} intermediateLevels - The number of intermediate levels between min and max.
10
+ * @returns {number[]} An array of rounded values including the minimum and interpolated steps up to the maximum.
11
+ */
12
+ export const interpolateLevels = (min, max, intermediateLevels) => [
13
+ round(min, 2),
14
+ ...makeArr(pos => round(getGeometricStep(min, max, pos + 1, intermediateLevels + 1), 2), intermediateLevels + 1)
15
+ ];
16
+ /**
17
+ * Computes scale data for each breakpoint, including interpolated levels.
18
+ *
19
+ * @param {ScaleDataOptions} options - Configuration for generating scale data.
20
+ * @param {number[]} options.breakpoints - Ordered list of breakpoint widths in pixels.
21
+ * @param {[number, number]} options.loScaleBounds - Minimum and maximum values for the low end of the scale.
22
+ * @param {[number, number]} options.hiScaleBounds - Minimum and maximum values for the high end of the scale.
23
+ * @param {number} options.intermediateLevels - Number of intermediate levels between bounds.
24
+ * @throws Will throw if `breakpoints` contains fewer than two values.
25
+ */
26
+ export const getScaleData = ({ breakpoints, loScaleBounds, hiScaleBounds, intermediateLevels }) => {
27
+ const [loMinValuePx, loMaxValuePx] = loScaleBounds;
28
+ const [hiMinValuePx, hiMaxValuePx] = hiScaleBounds;
29
+ const loValueDiff = loMaxValuePx - loMinValuePx;
30
+ const hiValueDiff = hiMaxValuePx - hiMinValuePx;
31
+ const maxBreakpoint = breakpoints.at(-1);
32
+ const minBreakpoint = breakpoints.at(0);
33
+ if (breakpoints.length < 2
34
+ || maxBreakpoint === undefined
35
+ || minBreakpoint === undefined)
36
+ throw new Error(`\`breakpoints\` length must be at least 2. Found ${breakpoints.length}`);
37
+ return breakpoints.map(breakpoint => {
38
+ const thisBreakpointRatio = (breakpoint - minBreakpoint) / (maxBreakpoint - minBreakpoint);
39
+ const lo = (thisBreakpointRatio * loValueDiff) + loMinValuePx;
40
+ const hi = (thisBreakpointRatio * hiValueDiff) + hiMinValuePx;
41
+ return {
42
+ breakpoint,
43
+ levels: interpolateLevels(lo, hi, intermediateLevels)
44
+ };
45
+ });
46
+ };
3
47
  /**
4
- * Creates a scale function that maps a level to a CSS size value using harmonic interpolation.
48
+ * Generates responsive CSS custom properties for a scale across breakpoints.
5
49
  *
6
- * @param {ScaleDescriptor} descriptor - The scale configuration.
7
- * @param {[number, number]} descriptor.screenBounds - The lower and upper bounds for screen width in pixels.
8
- * @param {[number, number]} descriptor.lowLevel - Minimum and maximum values for the low level range.
9
- * @param {[number, number]} descriptor.highLevel - Minimum and maximum values for the high level range.
10
- * @param {number} descriptor.steps - Number of discrete steps in the scale.
11
- * @param {boolean} [descriptor.clamp] - Whether to wrap the resulting CSS value in a `clamp()` function.
12
- * @returns {(level: number) => string | undefined} A function mapping a level to a CSS value string.
50
+ * @param {GenerateScaleCssOptions} options - Configuration for generating the CSS output.
51
+ * @param {string} options.scaleName - Base name for CSS custom properties.
52
+ * @param {string} options.targetSelector - CSS selector to which the properties will be applied.
53
+ * @param {string} options.unit - Unit appended to each value.
54
+ * @param {number[]} options.breakpoints - Ordered list of breakpoint widths in pixels.
55
+ * @param {[number, number]} options.loScaleBounds - Minimum and maximum values for the low end of the scale.
56
+ * @param {[number, number]} options.hiScaleBounds - Minimum and maximum values for the high end of the scale.
57
+ * @param {number} options.intermediateLevels - Number of intermediate levels between bounds.
58
+ * @returns {string} A CSS string containing custom properties for each breakpoint, wrapped in media queries where applicable.
13
59
  */
14
- export function createScale(descriptor) {
15
- const { screenBounds: [loBound, hiBound], lowLevel: [loLevelMin, loLevelMax], highLevel: [hiLevelMin, hiLevelMax], steps, clamp } = descriptor;
16
- return function scale(level) {
17
- if (steps < 2)
18
- return;
19
- const loBoundVal = getGeometricStep(loLevelMin, hiLevelMin, level - 1, steps - 1);
20
- const hiBoundVal = getGeometricStep(loLevelMax, hiLevelMax, level - 1, steps - 1);
21
- if (loBoundVal === undefined)
22
- return;
23
- if (hiBoundVal === undefined)
24
- return;
25
- const affine = getAffineFunction(loBound, loBoundVal, hiBound, hiBoundVal);
26
- const cssFormula = getCssValueFromAffine(affine);
27
- return clamp === true
28
- ? `clamp(${round(loBoundVal, 2)}px, ${cssFormula}, ${round(hiBoundVal, 2)}px)`
29
- : cssFormula;
30
- };
31
- }
32
- function getAffineFunction(x1, y1, x2, y2) {
33
- const slope = (y2 - y1) / (x2 - x1);
34
- const yIntercept = y1 - (x1 * slope);
35
- return { slope, yIntercept };
36
- }
37
- function getCssValueFromAffine(affine) {
38
- const { slope, yIntercept } = affine;
39
- const roundedSlope = round(100 * slope, 3);
40
- const roundedIntercept = round(yIntercept, 2);
41
- return `calc(${roundedSlope}vw + ${roundedIntercept}px)`;
42
- }
60
+ export const generateScaleCss = ({ scaleName, targetSelector, unit, ...options }) => getScaleData(options).map(({ breakpoint, levels }, pos) => {
61
+ const levelsCss = levels.map((lvlVal, lvlPos) => `--${scaleName}-${lvlPos}: ${lvlVal}${unit};`);
62
+ if (pos === 0)
63
+ return `${targetSelector} {
64
+ ${levelsCss.join('\n ')}
65
+ }\n`;
66
+ return `@media (min-width: ${breakpoint}px) {
67
+ ${targetSelector} {
68
+ ${levelsCss.join('\n ')}
69
+ }
70
+ }\n`;
71
+ }).join('\n');
@@ -1,71 +1,88 @@
1
- import { describe, it, expect, vi } from 'vitest';
2
- import { createScale } from './index.js';
3
- import * as geo from '../../numbers/geometric-progressions/index.js';
4
- describe('createScale', () => {
5
- it('returns a function', () => {
6
- const descriptor = {
7
- screenBounds: [320, 1280],
8
- lowLevel: [10, 20],
9
- highLevel: [30, 60],
10
- steps: 5
11
- };
12
- const scaleFn = createScale(descriptor);
13
- expect(typeof scaleFn).toBe('function');
1
+ import { describe, it, expect } from 'vitest';
2
+ import { interpolateLevels, getScaleData, generateScaleCss } from './index.js';
3
+ describe('interpolateLevels', () => {
4
+ it('returns an array including min and interpolated values', () => {
5
+ const result = interpolateLevels(10, 20, 2);
6
+ expect(result.length).toBe(4);
7
+ expect(result[0]).toBe(10);
8
+ expect(result.at(-1)).toBeCloseTo(20, 2);
14
9
  });
15
- it('produces CSS calc() formula for intermediate levels', () => {
16
- const descriptor = {
17
- screenBounds: [320, 1280],
18
- lowLevel: [10, 20],
19
- highLevel: [30, 60],
20
- steps: 5
21
- };
22
- const scaleFn = createScale(descriptor);
23
- const cssValue = scaleFn(3);
24
- expect(cssValue).toMatch(/^calc\([\d.]+vw \+ [\d.]+px\)$/);
10
+ it('rounds values to 2 decimals', () => {
11
+ const result = interpolateLevels(10, 20, 3);
12
+ result.forEach(val => {
13
+ expect(Number(val.toFixed(2))).toBe(val);
14
+ });
25
15
  });
26
- it('wraps result in clamp() when clamp is true', () => {
27
- const descriptor = {
28
- screenBounds: [320, 1280],
29
- lowLevel: [10, 20],
30
- highLevel: [30, 60],
31
- steps: 5,
32
- clamp: true
33
- };
34
- const scaleFn = createScale(descriptor);
35
- const cssValue = scaleFn(3);
36
- expect(cssValue).toMatch(/^clamp\([\d.]+px, calc\([\d.]+vw \+ [\d.]+px\), [\d.]+px\)$/);
16
+ it('handles descending ranges', () => {
17
+ const result = interpolateLevels(20, 10, 2);
18
+ expect(result[0]).toBe(20);
19
+ expect(result.at(-1)).toBeCloseTo(10, 2);
37
20
  });
38
- it('returns undefined if steps < 2', () => {
39
- const descriptor = {
40
- screenBounds: [320, 1280],
41
- lowLevel: [10, 20],
42
- highLevel: [30, 60],
43
- steps: 1
44
- };
45
- const scaleFn = createScale(descriptor);
46
- expect(scaleFn(1)).toBeUndefined();
21
+ });
22
+ describe('getScaleData', () => {
23
+ const baseOptions = {
24
+ breakpoints: [320, 768, 1280],
25
+ loScaleBounds: [10, 20],
26
+ hiScaleBounds: [30, 60],
27
+ intermediateLevels: 2
28
+ };
29
+ it('returns one entry per breakpoint', () => {
30
+ const result = getScaleData(baseOptions);
31
+ expect(result.length).toBe(baseOptions.breakpoints.length);
32
+ });
33
+ it('includes breakpoint and levels', () => {
34
+ const result = getScaleData(baseOptions);
35
+ result.forEach(entry => {
36
+ expect(entry).toHaveProperty('breakpoint');
37
+ expect(entry).toHaveProperty('levels');
38
+ expect(Array.isArray(entry.levels)).toBe(true);
39
+ });
40
+ });
41
+ it('interpolates values between low and high bounds', () => {
42
+ const result = getScaleData(baseOptions);
43
+ const first = result[0];
44
+ const last = result.at(-1);
45
+ expect(first?.levels[0]).toBeCloseTo(10, 2);
46
+ expect(last?.levels.at(-1)).toBeCloseTo(60, 2);
47
+ });
48
+ it('throws if breakpoints length < 2', () => {
49
+ expect(() => getScaleData({
50
+ ...baseOptions,
51
+ breakpoints: [320]
52
+ })).toThrow();
53
+ });
54
+ });
55
+ describe('generateScaleCss', () => {
56
+ const options = {
57
+ scaleName: 'size',
58
+ targetSelector: ':root',
59
+ unit: 'px',
60
+ breakpoints: [320, 768],
61
+ loScaleBounds: [10, 20],
62
+ hiScaleBounds: [30, 40],
63
+ intermediateLevels: 1
64
+ };
65
+ it('generates base CSS block for first breakpoint', () => {
66
+ const css = generateScaleCss(options);
67
+ expect(css).toMatch(/:root\s*{[^}]+}/);
68
+ });
69
+ it('generates media queries for subsequent breakpoints', () => {
70
+ const css = generateScaleCss(options);
71
+ expect(css).toMatch(/@media \(min-width: 768px\)/);
72
+ });
73
+ it('generates CSS custom properties with correct naming', () => {
74
+ const css = generateScaleCss(options);
75
+ expect(css).toMatch(/--size-0:/);
76
+ expect(css).toMatch(/--size-1:/);
47
77
  });
48
- it('handles descending low/high levels', () => {
49
- const descriptor = {
50
- screenBounds: [320, 1280],
51
- lowLevel: [20, 10],
52
- highLevel: [60, 30],
53
- steps: 5
54
- };
55
- const scaleFn = createScale(descriptor);
56
- const cssValue = scaleFn(3);
57
- expect(cssValue).toMatch(/^calc\(-?[\d.]+vw \+ -?[\d.]+px\)$/);
78
+ it('applies the provided unit', () => {
79
+ const css = generateScaleCss(options);
80
+ expect(css).toMatch(/px;/);
58
81
  });
59
- it('propagates NaN from getGeometricStep', () => {
60
- vi.spyOn(geo, 'getGeometricStep').mockReturnValueOnce(NaN);
61
- const descriptor = {
62
- screenBounds: [320, 1280],
63
- lowLevel: [10, 20],
64
- highLevel: [30, 60],
65
- steps: 5
66
- };
67
- const scaleFn = createScale(descriptor);
68
- const result = scaleFn(2);
69
- expect(result).toBe('calc(NaNvw + NaNpx)');
82
+ it('produces consistent number of variables per breakpoint', () => {
83
+ const css = generateScaleCss(options);
84
+ const matches = css.match(/--size-\d+:/g) ?? [];
85
+ // 3 levels * 2 breakpoints
86
+ expect(matches.length).toBe(6);
70
87
  });
71
88
  });
@@ -1,52 +1,52 @@
1
- export * as addclass from './addclass/index.js'
2
1
  export * as add from './add/index.js'
3
2
  export * as and from './and/index.js'
4
- export * as at from './at/index.js'
5
3
  export * as append from './append/index.js'
4
+ export * as at from './at/index.js'
6
5
  export * as call from './call/index.js'
6
+ export * as addclass from './addclass/index.js'
7
+ export * as clone from './clone/index.js'
7
8
  export * as deleteproperties from './deleteproperties/index.js'
8
- export * as equals from './equals/index.js'
9
9
  export * as getattribute from './getattribute/index.js'
10
- export * as clone from './clone/index.js'
10
+ export * as getproperties from './getproperties/index.js'
11
11
  export * as getproperty from './getproperty/index.js'
12
12
  export * as hjparse from './hjparse/index.js'
13
+ export * as equals from './equals/index.js'
13
14
  export * as hjstringify from './hjstringify/index.js'
14
- export * as initialize from './initialize/index.js'
15
15
  export * as if from './if/index.js'
16
+ export * as initialize from './initialize/index.js'
16
17
  export * as join from './join/index.js'
17
- export * as getproperties from './getproperties/index.js'
18
18
  export * as length from './length/index.js'
19
19
  export * as map from './map/index.js'
20
+ export * as negate from './negate/index.js'
20
21
  export * as notrailing from './notrailing/index.js'
21
22
  export * as or from './or/index.js'
22
- export * as negate from './negate/index.js'
23
23
  export * as pickrandom from './pickrandom/index.js'
24
- export * as print from './print/index.js'
25
24
  export * as populate from './populate/index.js'
26
25
  export * as push from './push/index.js'
27
26
  export * as pusheach from './pusheach/index.js'
28
27
  export * as removeattribute from './removeattribute/index.js'
28
+ export * as removeclass from './removeclass/index.js'
29
29
  export * as recordtoarray from './recordtoarray/index.js'
30
+ export * as print from './print/index.js'
30
31
  export * as renameproperty from './renameproperty/index.js'
31
- export * as removeclass from './removeclass/index.js'
32
32
  export * as replace from './replace/index.js'
33
33
  export * as select from './select/index.js'
34
- export * as setproperty from './setproperty/index.js'
34
+ export * as set from './set/index.js'
35
+ export * as setattribute from './setattribute/index.js'
35
36
  export * as sorton from './sorton/index.js'
36
37
  export * as split from './split/index.js'
37
38
  export * as spread from './spread/index.js'
38
- export * as set from './set/index.js'
39
- export * as setattribute from './setattribute/index.js'
40
- export * as toarray from './toarray/index.js'
41
- export * as toboolean from './toboolean/index.js'
39
+ export * as setproperty from './setproperty/index.js'
42
40
  export * as toelement from './toelement/index.js'
41
+ export * as toboolean from './toboolean/index.js'
42
+ export * as toarray from './toarray/index.js'
43
43
  export * as toggleclass from './toggleclass/index.js'
44
- export * as tonodelist from './tonodelist/index.js'
45
- export * as tonumber from './tonumber/index.js'
46
44
  export * as tonull from './tonull/index.js'
45
+ export * as tonumber from './tonumber/index.js'
47
46
  export * as torecord from './torecord/index.js'
48
47
  export * as toref from './toref/index.js'
49
- export * as totext from './totext/index.js'
50
48
  export * as tostring from './tostring/index.js'
49
+ export * as totext from './totext/index.js'
51
50
  export * as transformselected from './transformselected/index.js'
52
51
  export * as trim from './trim/index.js'
52
+ export * as tonodelist from './tonodelist/index.js'
@@ -1,52 +1,52 @@
1
- export * as addclass from './addclass/index.js'
2
1
  export * as add from './add/index.js'
3
2
  export * as and from './and/index.js'
4
- export * as at from './at/index.js'
5
3
  export * as append from './append/index.js'
4
+ export * as at from './at/index.js'
6
5
  export * as call from './call/index.js'
6
+ export * as addclass from './addclass/index.js'
7
+ export * as clone from './clone/index.js'
7
8
  export * as deleteproperties from './deleteproperties/index.js'
8
- export * as equals from './equals/index.js'
9
9
  export * as getattribute from './getattribute/index.js'
10
- export * as clone from './clone/index.js'
10
+ export * as getproperties from './getproperties/index.js'
11
11
  export * as getproperty from './getproperty/index.js'
12
12
  export * as hjparse from './hjparse/index.js'
13
+ export * as equals from './equals/index.js'
13
14
  export * as hjstringify from './hjstringify/index.js'
14
- export * as initialize from './initialize/index.js'
15
15
  export * as if from './if/index.js'
16
+ export * as initialize from './initialize/index.js'
16
17
  export * as join from './join/index.js'
17
- export * as getproperties from './getproperties/index.js'
18
18
  export * as length from './length/index.js'
19
19
  export * as map from './map/index.js'
20
+ export * as negate from './negate/index.js'
20
21
  export * as notrailing from './notrailing/index.js'
21
22
  export * as or from './or/index.js'
22
- export * as negate from './negate/index.js'
23
23
  export * as pickrandom from './pickrandom/index.js'
24
- export * as print from './print/index.js'
25
24
  export * as populate from './populate/index.js'
26
25
  export * as push from './push/index.js'
27
26
  export * as pusheach from './pusheach/index.js'
28
27
  export * as removeattribute from './removeattribute/index.js'
28
+ export * as removeclass from './removeclass/index.js'
29
29
  export * as recordtoarray from './recordtoarray/index.js'
30
+ export * as print from './print/index.js'
30
31
  export * as renameproperty from './renameproperty/index.js'
31
- export * as removeclass from './removeclass/index.js'
32
32
  export * as replace from './replace/index.js'
33
33
  export * as select from './select/index.js'
34
- export * as setproperty from './setproperty/index.js'
34
+ export * as set from './set/index.js'
35
+ export * as setattribute from './setattribute/index.js'
35
36
  export * as sorton from './sorton/index.js'
36
37
  export * as split from './split/index.js'
37
38
  export * as spread from './spread/index.js'
38
- export * as set from './set/index.js'
39
- export * as setattribute from './setattribute/index.js'
40
- export * as toarray from './toarray/index.js'
41
- export * as toboolean from './toboolean/index.js'
39
+ export * as setproperty from './setproperty/index.js'
42
40
  export * as toelement from './toelement/index.js'
41
+ export * as toboolean from './toboolean/index.js'
42
+ export * as toarray from './toarray/index.js'
43
43
  export * as toggleclass from './toggleclass/index.js'
44
- export * as tonodelist from './tonodelist/index.js'
45
- export * as tonumber from './tonumber/index.js'
46
44
  export * as tonull from './tonull/index.js'
45
+ export * as tonumber from './tonumber/index.js'
47
46
  export * as torecord from './torecord/index.js'
48
47
  export * as toref from './toref/index.js'
49
- export * as totext from './totext/index.js'
50
48
  export * as tostring from './tostring/index.js'
49
+ export * as totext from './totext/index.js'
51
50
  export * as transformselected from './transformselected/index.js'
52
51
  export * as trim from './trim/index.js'
52
+ export * as tonodelist from './tonodelist/index.js'
@@ -1,13 +1,13 @@
1
1
  export * as any from './any/index.js'
2
2
  export * as array from './array/index.js'
3
- export * as boolean from './boolean/index.js'
4
3
  export * as element from './element/index.js'
4
+ export * as boolean from './boolean/index.js'
5
5
  export * as get from './get/index.js'
6
- export * as nodelist from './nodelist/index.js'
7
6
  export * as guess from './guess/index.js'
7
+ export * as nodelist from './nodelist/index.js'
8
8
  export * as null from './null/index.js'
9
9
  export * as number from './number/index.js'
10
10
  export * as record from './record/index.js'
11
11
  export * as ref from './ref/index.js'
12
- export * as string from './string/index.js'
13
12
  export * as text from './text/index.js'
13
+ export * as string from './string/index.js'
@@ -1,13 +1,13 @@
1
1
  export * as any from './any/index.js'
2
2
  export * as array from './array/index.js'
3
- export * as boolean from './boolean/index.js'
4
3
  export * as element from './element/index.js'
4
+ export * as boolean from './boolean/index.js'
5
5
  export * as get from './get/index.js'
6
- export * as nodelist from './nodelist/index.js'
7
6
  export * as guess from './guess/index.js'
7
+ export * as nodelist from './nodelist/index.js'
8
8
  export * as null from './null/index.js'
9
9
  export * as number from './number/index.js'
10
10
  export * as record from './record/index.js'
11
11
  export * as ref from './ref/index.js'
12
- export * as string from './string/index.js'
13
12
  export * as text from './text/index.js'
13
+ export * as string from './string/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as getNodeAncestors from './get-node-ancestors/index.js'
2
- export * as hyperJson from './hyper-json/index.js'
3
2
  export * as getPositionInsideParent from './get-position-inside-parent/index.js'
3
+ export * as hyperJson from './hyper-json/index.js'
4
4
  export * as insertNode from './insert-node/index.js'
5
5
  export * as placeholders from './placeholders/index.js'
6
6
  export * as replaceInElement from './replace-in-element/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as getNodeAncestors from './get-node-ancestors/index.js'
2
- export * as hyperJson from './hyper-json/index.js'
3
2
  export * as getPositionInsideParent from './get-position-inside-parent/index.js'
3
+ export * as hyperJson from './hyper-json/index.js'
4
4
  export * as insertNode from './insert-node/index.js'
5
5
  export * as placeholders from './placeholders/index.js'
6
6
  export * as replaceInElement from './replace-in-element/index.js'
@@ -1,16 +1,16 @@
1
- export * as arrays from './arrays/index.js'
2
1
  export * as booleans from './booleans/index.js'
3
2
  export * as colors from './colors/index.js'
4
3
  export * as css from './css/index.js'
5
4
  export * as errors from './errors/index.js'
6
5
  export * as html from './html/index.js'
7
- export * as misc from './misc/index.js'
8
6
  export * as numbers from './numbers/index.js'
7
+ export * as misc from './misc/index.js'
8
+ export * as arrays from './arrays/index.js'
9
9
  export * as objects from './objects/index.js'
10
10
  export * as optim from './optim/index.js'
11
11
  export * as random from './random/index.js'
12
+ export * as regexps from './regexps/index.js'
12
13
  export * as sanitization from './sanitization/index.js'
13
14
  export * as strings from './strings/index.js'
14
15
  export * as time from './time/index.js'
15
- export * as regexps from './regexps/index.js'
16
16
  export * as typescript from './typescript/index.js'
package/agnostic/index.js CHANGED
@@ -1,16 +1,16 @@
1
- export * as arrays from './arrays/index.js'
2
1
  export * as booleans from './booleans/index.js'
3
2
  export * as colors from './colors/index.js'
4
3
  export * as css from './css/index.js'
5
4
  export * as errors from './errors/index.js'
6
5
  export * as html from './html/index.js'
7
- export * as misc from './misc/index.js'
8
6
  export * as numbers from './numbers/index.js'
7
+ export * as misc from './misc/index.js'
8
+ export * as arrays from './arrays/index.js'
9
9
  export * as objects from './objects/index.js'
10
10
  export * as optim from './optim/index.js'
11
11
  export * as random from './random/index.js'
12
+ export * as regexps from './regexps/index.js'
12
13
  export * as sanitization from './sanitization/index.js'
13
14
  export * as strings from './strings/index.js'
14
15
  export * as time from './time/index.js'
15
- export * as regexps from './regexps/index.js'
16
16
  export * as typescript from './typescript/index.js'
@@ -1,12 +1,12 @@
1
1
  export * as assert from './assert/index.js'
2
- export * as cast from './cast/index.js'
3
2
  export * as connection from './connection/index.js'
3
+ export * as cast from './cast/index.js'
4
4
  export * as crawler from './crawler/index.js'
5
5
  export * as crossenv from './crossenv/index.js'
6
6
  export * as dataSize from './data-size/index.js'
7
- export * as isConstructorFunction from './is-constructor-function/index.js'
8
- export * as logs from './logs/index.js'
9
7
  export * as isNullish from './is-nullish/index.js'
10
- export * as loremIpsum from './lorem-ipsum/index.js'
8
+ export * as logs from './logs/index.js'
9
+ export * as isConstructorFunction from './is-constructor-function/index.js'
11
10
  export * as normalizeExtension from './normalize-extension/index.js'
12
11
  export * as outcome from './outcome/index.js'
12
+ export * as loremIpsum from './lorem-ipsum/index.js'
@@ -1,12 +1,12 @@
1
1
  export * as assert from './assert/index.js'
2
- export * as cast from './cast/index.js'
3
2
  export * as connection from './connection/index.js'
3
+ export * as cast from './cast/index.js'
4
4
  export * as crawler from './crawler/index.js'
5
5
  export * as crossenv from './crossenv/index.js'
6
6
  export * as dataSize from './data-size/index.js'
7
- export * as isConstructorFunction from './is-constructor-function/index.js'
8
- export * as logs from './logs/index.js'
9
7
  export * as isNullish from './is-nullish/index.js'
10
- export * as loremIpsum from './lorem-ipsum/index.js'
8
+ export * as logs from './logs/index.js'
9
+ export * as isConstructorFunction from './is-constructor-function/index.js'
11
10
  export * as normalizeExtension from './normalize-extension/index.js'
12
11
  export * as outcome from './outcome/index.js'
12
+ export * as loremIpsum from './lorem-ipsum/index.js'
@@ -1,3 +1,3 @@
1
- export * as logger from './logger/index.js'
2
1
  export * as makeTextBlock from './make-text-block/index.js'
3
2
  export * as styles from './styles/index.js'
3
+ export * as logger from './logger/index.js'
@@ -1,3 +1,3 @@
1
- export * as logger from './logger/index.js'
2
1
  export * as makeTextBlock from './make-text-block/index.js'
3
2
  export * as styles from './styles/index.js'
3
+ export * as logger from './logger/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as absoluteModulo from './absolute-modulo/index.js'
2
- export * as approximateRational from './approximate-rational/index.js'
2
+ export * as geometricProgressions from './geometric-progressions/index.js'
3
3
  export * as clamp from './clamp/index.js'
4
4
  export * as interpolate from './interpolate/index.js'
5
5
  export * as round from './round/index.js'
6
- export * as geometricProgressions from './geometric-progressions/index.js'
6
+ export * as approximateRational from './approximate-rational/index.js'
@@ -1,6 +1,6 @@
1
1
  export * as absoluteModulo from './absolute-modulo/index.js'
2
- export * as approximateRational from './approximate-rational/index.js'
2
+ export * as geometricProgressions from './geometric-progressions/index.js'
3
3
  export * as clamp from './clamp/index.js'
4
4
  export * as interpolate from './interpolate/index.js'
5
5
  export * as round from './round/index.js'
6
- export * as geometricProgressions from './geometric-progressions/index.js'
6
+ export * as approximateRational from './approximate-rational/index.js'
@@ -1,9 +1,9 @@
1
- export * as deepGetProperty from './deep-get-property/index.js'
2
1
  export * as enums from './enums/index.js'
3
- export * as flattenGetters from './flatten-getters/index.js'
4
2
  export * as isObject from './is-object/index.js'
3
+ export * as flattenGetters from './flatten-getters/index.js'
5
4
  export * as isRecord from './is-record/index.js'
5
+ export * as deepGetProperty from './deep-get-property/index.js'
6
6
  export * as recordFormat from './record-format/index.js'
7
- export * as sortKeys from './sort-keys/index.js'
8
7
  export * as recordMap from './record-map/index.js'
8
+ export * as sortKeys from './sort-keys/index.js'
9
9
  export * as validation from './validation/index.js'
@@ -1,9 +1,9 @@
1
- export * as deepGetProperty from './deep-get-property/index.js'
2
1
  export * as enums from './enums/index.js'
3
- export * as flattenGetters from './flatten-getters/index.js'
4
2
  export * as isObject from './is-object/index.js'
3
+ export * as flattenGetters from './flatten-getters/index.js'
5
4
  export * as isRecord from './is-record/index.js'
5
+ export * as deepGetProperty from './deep-get-property/index.js'
6
6
  export * as recordFormat from './record-format/index.js'
7
- export * as sortKeys from './sort-keys/index.js'
8
7
  export * as recordMap from './record-map/index.js'
8
+ export * as sortKeys from './sort-keys/index.js'
9
9
  export * as validation from './validation/index.js'
@@ -1,2 +1,2 @@
1
- export * as throttleDebounce from './throttle-debounce/index.js'
2
1
  export * as memoize from './memoize/index.js'
2
+ export * as throttleDebounce from './throttle-debounce/index.js'
@@ -1,2 +1,2 @@
1
- export * as throttleDebounce from './throttle-debounce/index.js'
2
1
  export * as memoize from './memoize/index.js'
2
+ export * as throttleDebounce from './throttle-debounce/index.js'
@@ -1,3 +1,3 @@
1
- export * as hexChar from './hex-char/index.js'
2
1
  export * as random from './random/index.js'
2
+ export * as hexChar from './hex-char/index.js'
3
3
  export * as uuid from './uuid/index.js'
@@ -1,3 +1,3 @@
1
- export * as hexChar from './hex-char/index.js'
2
1
  export * as random from './random/index.js'
2
+ export * as hexChar from './hex-char/index.js'
3
3
  export * as uuid from './uuid/index.js'
@@ -1,4 +1,4 @@
1
1
  export * as fileName from './file-name/index.js'
2
- export * as html from './html/index.js'
3
2
  export * as path from './path/index.js'
3
+ export * as html from './html/index.js'
4
4
  export * as userInput from './user-input/index.js'
@@ -1,4 +1,4 @@
1
1
  export * as fileName from './file-name/index.js'
2
- export * as html from './html/index.js'
3
2
  export * as path from './path/index.js'
3
+ export * as html from './html/index.js'
4
4
  export * as userInput from './user-input/index.js'
@@ -1,7 +1,7 @@
1
- export * as charCodes from './char-codes/index.js'
2
1
  export * as matches from './matches/index.js'
3
2
  export * as normalizeIndent from './normalize-indent/index.js'
4
3
  export * as parseTable from './parse-table/index.js'
5
4
  export * as replaceAll from './replace-all/index.js'
6
5
  export * as toAlphanum from './to-alphanum/index.js'
7
6
  export * as trim from './trim/index.js'
7
+ export * as charCodes from './char-codes/index.js'
@@ -1,7 +1,7 @@
1
- export * as charCodes from './char-codes/index.js'
2
1
  export * as matches from './matches/index.js'
3
2
  export * as normalizeIndent from './normalize-indent/index.js'
4
3
  export * as parseTable from './parse-table/index.js'
5
4
  export * as replaceAll from './replace-all/index.js'
6
5
  export * as toAlphanum from './to-alphanum/index.js'
7
6
  export * as trim from './trim/index.js'
7
+ export * as charCodes from './char-codes/index.js'
@@ -1,15 +1,15 @@
1
1
  export * as beforeAfter from './BeforeAfter/index.js'
2
+ export * as disclaimer from './Disclaimer/index.js'
2
3
  export * as drawer from './Drawer/index.js'
3
4
  export * as eventListener from './EventListener/index.js'
4
- export * as disclaimer from './Disclaimer/index.js'
5
5
  export * as gallery from './Gallery/index.js'
6
6
  export * as image from './Image/index.js'
7
7
  export * as intersectionObserver from './IntersectionObserver/index.js'
8
8
  export * as overlayer from './Overlayer/index.js'
9
9
  export * as paginator from './Paginator/index.js'
10
10
  export * as resizeObserver from './ResizeObserver/index.js'
11
- export * as scrollListener from './ScrollListener/index.js'
12
11
  export * as scrllgngn from './Scrllgngn/index.js'
12
+ export * as scrollListener from './ScrollListener/index.js'
13
13
  export * as sequencer from './Sequencer/index.js'
14
14
  export * as shadowRoot from './ShadowRoot/index.js'
15
15
  export * as subtitles from './Subtitles/index.js'
@@ -1,15 +1,15 @@
1
1
  export * as beforeAfter from './BeforeAfter/index.js'
2
+ export * as disclaimer from './Disclaimer/index.js'
2
3
  export * as drawer from './Drawer/index.js'
3
4
  export * as eventListener from './EventListener/index.js'
4
- export * as disclaimer from './Disclaimer/index.js'
5
5
  export * as gallery from './Gallery/index.js'
6
6
  export * as image from './Image/index.js'
7
7
  export * as intersectionObserver from './IntersectionObserver/index.js'
8
8
  export * as overlayer from './Overlayer/index.js'
9
9
  export * as paginator from './Paginator/index.js'
10
10
  export * as resizeObserver from './ResizeObserver/index.js'
11
- export * as scrollListener from './ScrollListener/index.js'
12
11
  export * as scrllgngn from './Scrllgngn/index.js'
12
+ export * as scrollListener from './ScrollListener/index.js'
13
13
  export * as sequencer from './Sequencer/index.js'
14
14
  export * as shadowRoot from './ShadowRoot/index.js'
15
15
  export * as subtitles from './Subtitles/index.js'
package/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export * as components from './components/index.js'
2
- export * as node from './node/index.js'
3
2
  export * as agnostic from './agnostic/index.js'
3
+ export * as node from './node/index.js'
package/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  export * as components from './components/index.js'
2
- export * as node from './node/index.js'
3
2
  export * as agnostic from './agnostic/index.js'
3
+ export * as node from './node/index.js'
@@ -1,4 +1,4 @@
1
1
  export * as copyDir from './copy-dir/index.js'
2
2
  export * as list from './list/index.js'
3
- export * as removeDir from './remove-dir/index.js'
4
3
  export * as moveDir from './move-dir/index.js'
4
+ export * as removeDir from './remove-dir/index.js'
@@ -1,4 +1,4 @@
1
1
  export * as copyDir from './copy-dir/index.js'
2
2
  export * as list from './list/index.js'
3
- export * as removeDir from './remove-dir/index.js'
4
3
  export * as moveDir from './move-dir/index.js'
4
+ export * as removeDir from './remove-dir/index.js'
@@ -1,6 +1,6 @@
1
+ export * as copy from './copy/index.js'
1
2
  export * as download from './download/index.js'
2
3
  export * as exists from './exists/index.js'
3
- export * as copy from './copy/index.js'
4
4
  export * as move from './move/index.js'
5
5
  export * as remove from './remove/index.js'
6
6
  export * as stat from './stat/index.js'
@@ -1,6 +1,6 @@
1
+ export * as copy from './copy/index.js'
1
2
  export * as download from './download/index.js'
2
3
  export * as exists from './exists/index.js'
3
- export * as copy from './copy/index.js'
4
4
  export * as move from './move/index.js'
5
5
  export * as remove from './remove/index.js'
6
6
  export * as stat from './stat/index.js'
@@ -1,8 +1,8 @@
1
1
  export * as copy from './copy/index.js'
2
2
  export * as download from './download/index.js'
3
3
  export * as exists from './exists/index.js'
4
- export * as generateSignedUrl from './generate-signed-url/index.js'
5
4
  export * as getMetadata from './get-metadata/index.js'
5
+ export * as generateSignedUrl from './generate-signed-url/index.js'
6
6
  export * as getPermissions from './get-permissions/index.js'
7
7
  export * as move from './move/index.js'
8
8
  export * as remove from './remove/index.js'
@@ -1,8 +1,8 @@
1
1
  export * as copy from './copy/index.js'
2
2
  export * as download from './download/index.js'
3
3
  export * as exists from './exists/index.js'
4
- export * as generateSignedUrl from './generate-signed-url/index.js'
5
4
  export * as getMetadata from './get-metadata/index.js'
5
+ export * as generateSignedUrl from './generate-signed-url/index.js'
6
6
  export * as getPermissions from './get-permissions/index.js'
7
7
  export * as move from './move/index.js'
8
8
  export * as remove from './remove/index.js'
@@ -1,7 +1,7 @@
1
1
  export * as copy from './copy/index.js'
2
2
  export * as download from './download/index.js'
3
- export * as exists from './exists/index.js'
4
- export * as move from './move/index.js'
5
3
  export * as remove from './remove/index.js'
6
- export * as upload from './upload/index.js'
4
+ export * as move from './move/index.js'
5
+ export * as exists from './exists/index.js'
7
6
  export * as stat from './stat/index.js'
7
+ export * as upload from './upload/index.js'
@@ -1,7 +1,7 @@
1
1
  export * as copy from './copy/index.js'
2
2
  export * as download from './download/index.js'
3
- export * as exists from './exists/index.js'
4
- export * as move from './move/index.js'
5
3
  export * as remove from './remove/index.js'
6
- export * as upload from './upload/index.js'
4
+ export * as move from './move/index.js'
5
+ export * as exists from './exists/index.js'
7
6
  export * as stat from './stat/index.js'
7
+ export * as upload from './upload/index.js'
@@ -1,6 +1,6 @@
1
- export * as brighten from './brighten/index.js'
2
1
  export * as blur from './blur/index.js'
3
2
  export * as extend from './extend/index.js'
3
+ export * as brighten from './brighten/index.js'
4
4
  export * as extract from './extract/index.js'
5
5
  export * as flatten from './flatten/index.js'
6
6
  export * as flip from './flip/index.js'
@@ -11,5 +11,5 @@ export * as lighten from './lighten/index.js'
11
11
  export * as normalize from './normalize/index.js'
12
12
  export * as overlay from './overlay/index.js'
13
13
  export * as resize from './resize/index.js'
14
- export * as saturate from './saturate/index.js'
15
14
  export * as rotate from './rotate/index.js'
15
+ export * as saturate from './saturate/index.js'
@@ -1,6 +1,6 @@
1
- export * as brighten from './brighten/index.js'
2
1
  export * as blur from './blur/index.js'
3
2
  export * as extend from './extend/index.js'
3
+ export * as brighten from './brighten/index.js'
4
4
  export * as extract from './extract/index.js'
5
5
  export * as flatten from './flatten/index.js'
6
6
  export * as flip from './flip/index.js'
@@ -11,5 +11,5 @@ export * as lighten from './lighten/index.js'
11
11
  export * as normalize from './normalize/index.js'
12
12
  export * as overlay from './overlay/index.js'
13
13
  export * as resize from './resize/index.js'
14
- export * as saturate from './saturate/index.js'
15
14
  export * as rotate from './rotate/index.js'
15
+ export * as saturate from './saturate/index.js'
package/node/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
- export * as designEdito from './@design-edito/index.js'
2
1
  export * as awsS3 from './@aws-s3/index.js'
2
+ export * as designEdito from './@design-edito/index.js'
3
3
  export * as express from './@express/index.js'
4
4
  export * as googleCloud from './@google-cloud/index.js'
5
- export * as cloudStorage from './cloud-storage/index.js'
6
5
  export * as encryption from './encryption/index.js'
6
+ export * as cloudStorage from './cloud-storage/index.js'
7
7
  export * as files from './files/index.js'
8
- export * as images from './images/index.js'
9
8
  export * as ftps from './ftps/index.js'
10
- export * as sftp from './sftp/index.js'
9
+ export * as images from './images/index.js'
11
10
  export * as process from './process/index.js'
11
+ export * as sftp from './sftp/index.js'
package/node/index.js CHANGED
@@ -1,11 +1,11 @@
1
- export * as designEdito from './@design-edito/index.js'
2
1
  export * as awsS3 from './@aws-s3/index.js'
2
+ export * as designEdito from './@design-edito/index.js'
3
3
  export * as express from './@express/index.js'
4
4
  export * as googleCloud from './@google-cloud/index.js'
5
- export * as cloudStorage from './cloud-storage/index.js'
6
5
  export * as encryption from './encryption/index.js'
6
+ export * as cloudStorage from './cloud-storage/index.js'
7
7
  export * as files from './files/index.js'
8
- export * as images from './images/index.js'
9
8
  export * as ftps from './ftps/index.js'
10
- export * as sftp from './sftp/index.js'
9
+ export * as images from './images/index.js'
11
10
  export * as process from './process/index.js'
11
+ export * as sftp from './sftp/index.js'
@@ -1,7 +1,7 @@
1
1
  export * as copy from './copy/index.js'
2
- export * as exists from './exists/index.js'
3
2
  export * as download from './download/index.js'
3
+ export * as exists from './exists/index.js'
4
+ export * as move from './move/index.js'
4
5
  export * as remove from './remove/index.js'
5
6
  export * as stat from './stat/index.js'
6
7
  export * as upload from './upload/index.js'
7
- export * as move from './move/index.js'
@@ -1,7 +1,7 @@
1
1
  export * as copy from './copy/index.js'
2
- export * as exists from './exists/index.js'
3
2
  export * as download from './download/index.js'
3
+ export * as exists from './exists/index.js'
4
+ export * as move from './move/index.js'
4
5
  export * as remove from './remove/index.js'
5
6
  export * as stat from './stat/index.js'
6
7
  export * as upload from './upload/index.js'
7
- export * as move from './move/index.js'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@design-edito/tools",
3
- "version": "0.4.6",
3
+ "version": "0.4.11",
4
4
  "description": "",
5
5
  "author": "Maxime Fabas",
6
6
  "license": "ISC",