@codeleap/utils 7.0.2 → 7.1.1

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/array.js CHANGED
@@ -1,9 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.objectFromArray = objectFromArray;
4
- exports.uniqueArrayByProperty = uniqueArrayByProperty;
5
- exports.flatten = flatten;
6
- exports.range = range;
7
1
  /**
8
2
  * Indexes an array into an object keyed by a derived value.
9
3
  *
@@ -11,7 +5,7 @@ exports.range = range;
11
5
  * key. When omitted, array indices are used as keys. Duplicate keys silently
12
6
  * overwrite earlier entries.
13
7
  */
14
- function objectFromArray(arr, keyAccessor) {
8
+ export function objectFromArray(arr, keyAccessor) {
15
9
  let getObjectKey = (_, idx) => idx;
16
10
  if (keyAccessor) {
17
11
  switch (typeof keyAccessor) {
@@ -33,7 +27,7 @@ function objectFromArray(arr, keyAccessor) {
33
27
  * When duplicates exist, the **last** occurrence wins because `objectFromArray`
34
28
  * overwrites earlier entries with the same key.
35
29
  */
36
- function uniqueArrayByProperty(array, getProperty) {
30
+ export function uniqueArrayByProperty(array, getProperty) {
37
31
  return Object.values(objectFromArray(array, getProperty));
38
32
  }
39
33
  /**
@@ -42,7 +36,7 @@ function uniqueArrayByProperty(array, getProperty) {
42
36
  * Unlike `Array.prototype.flat(Infinity)`, this implementation does not rely on
43
37
  * native flat support and works identically across all environments.
44
38
  */
45
- function flatten(arr) {
39
+ export function flatten(arr) {
46
40
  let newArr = [];
47
41
  arr.forEach((item) => {
48
42
  if (Array.isArray(item)) {
@@ -59,7 +53,7 @@ function flatten(arr) {
59
53
  *
60
54
  * Both bounds are included: `range(1, 3)` → `[1, 2, 3]`.
61
55
  */
62
- function range(start, end) {
56
+ export function range(start, end) {
63
57
  const length = end - start + 1;
64
58
  return Array.from({ length }, (_, index) => index + start);
65
59
  }
package/dist/array.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":";;AAWA,0CAoBC;AASD,sDAKC;AAQD,0BAYC;AAOD,sBAGC;AAvED;;;;;;GAMG;AACH,SAAgB,eAAe,CAC7B,GAAQ,EACR,WAAoB;IAEpB,IAAI,YAAY,GAA+C,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAA;IAE9E,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,OAAO,WAAW,EAAE,CAAC;YAC3B,KAAK,QAAQ;gBACX,YAAY,GAAG,CAAC,KAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,WAAsB,CAA+B,CAAA;gBACxF,MAAK;YACP,KAAK,UAAU;gBACb,YAAY,GAAG,WAAyD,CAAA;gBACxE,MAAK;QACT,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAE7E,OAAO,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CACnC,KAAU,EACV,WAAc;IAEd,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CAAoB,GAAQ;IACjD,IAAI,MAAM,GAAG,EAAS,CAAA;IAEtB,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QACxC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,SAAgB,KAAK,CAAC,KAAa,EAAE,GAAW;IAC9C,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,CAAA;IAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,CAAA;AAC5D,CAAC"}
1
+ {"version":3,"file":"array.js","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,GAAQ,EACR,WAAoB;IAEpB,IAAI,YAAY,GAA+C,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAA;IAE9E,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,OAAO,WAAW,EAAE,CAAC;YAC3B,KAAK,QAAQ;gBACX,YAAY,GAAG,CAAC,KAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,WAAsB,CAA+B,CAAA;gBACxF,MAAK;YACP,KAAK,UAAU;gBACb,YAAY,GAAG,WAAyD,CAAA;gBACxE,MAAK;QACT,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAE7E,OAAO,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAU,EACV,WAAc;IAEd,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAoB,GAAQ;IACjD,IAAI,MAAM,GAAG,EAAS,CAAA;IAEtB,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QACxC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,GAAW;IAC9C,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,CAAA;IAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,CAAA;AAC5D,CAAC"}
package/dist/cloneDeep.js CHANGED
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cloneDeep = cloneDeep;
4
1
  /**
5
2
  * Produces a full recursive clone of `value` without any external dependencies.
6
3
  *
@@ -9,7 +6,7 @@ exports.cloneDeep = cloneDeep;
9
6
  * these built-ins are cloned as plain objects — prototype chain is not preserved.
10
7
  * Circular references will cause a stack overflow.
11
8
  */
12
- function cloneDeep(value) {
9
+ export function cloneDeep(value) {
13
10
  if (value === null || typeof value !== 'object') {
14
11
  return value;
15
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cloneDeep.js","sourceRoot":"","sources":["../src/cloneDeep.ts"],"names":[],"mappings":";;AAQA,8BA0CC;AAlDD;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAU,KAAQ;IACzC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAiB,CAAA;IAC7C,CAAC;IAED,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAiB,CAAA;IAClD,CAAC;IAED,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC3B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACrB,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;QACF,OAAO,SAAyB,CAAA;IAClC,CAAC;IAED,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC3B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QACF,OAAO,SAAyB,CAAA;IAClC,CAAC;IAED,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAiB,CAAA;IAC9D,CAAC;IAED,MAAM,SAAS,GAA4B,EAAE,CAAA;IAE7C,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;YACrD,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,KAAiC,CAAC,GAAG,CAAC,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IAED,OAAO,SAAyB,CAAA;AAClC,CAAC"}
1
+ {"version":3,"file":"cloneDeep.js","sourceRoot":"","sources":["../src/cloneDeep.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAU,KAAQ;IACzC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAiB,CAAA;IAC7C,CAAC;IAED,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAiB,CAAA;IAClD,CAAC;IAED,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC3B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACrB,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;QACF,OAAO,SAAyB,CAAA;IAClC,CAAC;IAED,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC3B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QACF,OAAO,SAAyB,CAAA;IAClC,CAAC;IAED,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAiB,CAAA;IAC9D,CAAC;IAED,MAAM,SAAS,GAA4B,EAAE,CAAA;IAE7C,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;YACrD,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,KAAiC,CAAC,GAAG,CAAC,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IAED,OAAO,SAAyB,CAAA;AAClC,CAAC"}
package/dist/colors.js CHANGED
@@ -1,19 +1,12 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.hexToRgb = hexToRgb;
7
- exports.shadeColor = shadeColor;
8
- const tinycolor2_1 = __importDefault(require("tinycolor2"));
9
- const types_1 = require("@codeleap/types");
1
+ import tinycolor from 'tinycolor2';
2
+ import { TypeGuards } from '@codeleap/types';
10
3
  /**
11
4
  * Parses a 6-digit hex colour string (with or without leading `#`) into its
12
5
  * `{ r, g, b }` components.
13
6
  *
14
7
  * Returns `null` for invalid or short (3-digit) hex values.
15
8
  */
16
- function hexToRgb(hex) {
9
+ export function hexToRgb(hex) {
17
10
  const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
18
11
  return result
19
12
  ? {
@@ -33,17 +26,17 @@ const shadeColorCache = {};
33
26
  * - Results are memoised in a module-level cache keyed by the serialised parameters,
34
27
  * so repeated calls with identical arguments are effectively free.
35
28
  */
36
- function shadeColor(color, percent = 0, opacity = null) {
29
+ export function shadeColor(color, percent = 0, opacity = null) {
37
30
  const _color = color.trim();
38
31
  const serialParams = [_color, percent.toString()];
39
- if (types_1.TypeGuards.isNumber(opacity)) {
32
+ if (TypeGuards.isNumber(opacity)) {
40
33
  serialParams.push(opacity.toString());
41
34
  }
42
35
  const cacheKey = serialParams.join('/');
43
36
  if (!!shadeColorCache[cacheKey]) {
44
37
  return shadeColorCache[cacheKey];
45
38
  }
46
- const cl = (0, tinycolor2_1.default)(_color);
39
+ const cl = tinycolor(_color);
47
40
  if (percent !== 0) {
48
41
  const shouldDarken = percent < 0;
49
42
  if (shouldDarken) {
@@ -53,7 +46,7 @@ function shadeColor(color, percent = 0, opacity = null) {
53
46
  cl.lighten(percent);
54
47
  }
55
48
  }
56
- if (types_1.TypeGuards.isNumber(opacity)) {
49
+ if (TypeGuards.isNumber(opacity)) {
57
50
  cl.setAlpha(opacity);
58
51
  }
59
52
  const rgbObj = cl.toRgb();
@@ -1 +1 @@
1
- {"version":3,"file":"colors.js","sourceRoot":"","sources":["../src/colors.ts"],"names":[],"mappings":";;;;;AASA,4BASC;AAaD,gCA+BC;AA9DD,4DAAkC;AAClC,2CAA4C;AAE5C;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,GAAW;IAClC,MAAM,MAAM,GAAG,2CAA2C,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACpE,OAAO,MAAM;QACX,CAAC,CAAC;YACA,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;SAC3B;QACD,CAAC,CAAC,IAAI,CAAA;AACV,CAAC;AAED,MAAM,eAAe,GAA2B,EAAE,CAAA;AAElD;;;;;;;;GAQG;AACH,SAAgB,UAAU,CAAC,KAAa,EAAE,OAAO,GAAG,CAAC,EAAE,UAAyB,IAAI;IAClF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC3B,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IACjD,IAAI,kBAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IACvC,CAAC;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEvC,IAAI,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAA;IAClC,CAAC;IACD,MAAM,EAAE,GAAG,IAAA,oBAAS,EAAC,MAAM,CAAC,CAAA;IAC5B,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAElB,MAAM,YAAY,GAAG,OAAO,GAAG,CAAC,CAAA;QAEhC,IAAI,YAAY,EAAE,CAAC;YACjB,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IACD,IAAI,kBAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEtB,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE,CAAA;IACzB,MAAM,MAAM,GAAG,QAAQ,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAA;IACtE,eAAe,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;IAClC,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"colors.js","sourceRoot":"","sources":["../src/colors.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,MAAM,MAAM,GAAG,2CAA2C,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACpE,OAAO,MAAM;QACX,CAAC,CAAC;YACA,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;SAC3B;QACD,CAAC,CAAC,IAAI,CAAA;AACV,CAAC;AAED,MAAM,eAAe,GAA2B,EAAE,CAAA;AAElD;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,OAAO,GAAG,CAAC,EAAE,UAAyB,IAAI;IAClF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC3B,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IACjD,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IACvC,CAAC;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEvC,IAAI,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAA;IAClC,CAAC;IACD,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAC5B,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAElB,MAAM,YAAY,GAAG,OAAO,GAAG,CAAC,CAAA;QAEhC,IAAI,YAAY,EAAE,CAAC;YACjB,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEtB,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE,CAAA;IACzB,MAAM,MAAM,GAAG,QAAQ,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAA;IACtE,eAAe,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;IAClC,OAAO,MAAM,CAAA;AACf,CAAC"}
package/dist/date.js CHANGED
@@ -1,10 +1,4 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.dateUtils = void 0;
7
- const dayjs_1 = __importDefault(require("dayjs"));
1
+ import dayjs from 'dayjs';
8
2
  const removeTimezoneAndFormat = (date, format = 'YYYY-MM-DD') => {
9
3
  if (!date)
10
4
  return '';
@@ -15,7 +9,7 @@ const removeTimezoneAndFormat = (date, format = 'YYYY-MM-DD') => {
15
9
  else if (typeof date === 'string' && date.includes('T')) {
16
10
  normalizedDate = date.split('T')[0] + 'T12:00:00';
17
11
  }
18
- return (0, dayjs_1.default)(normalizedDate).startOf('day').format(format);
12
+ return dayjs(normalizedDate).startOf('day').format(format);
19
13
  };
20
14
  /**
21
15
  * Date helpers that normalise timezone-sensitive values before formatting.
@@ -26,7 +20,7 @@ const removeTimezoneAndFormat = (date, format = 'YYYY-MM-DD') => {
26
20
  * falls on a different calendar day in the user's timezone. Returns `''` for
27
21
  * falsy input.
28
22
  */
29
- exports.dateUtils = {
23
+ export const dateUtils = {
30
24
  removeTimezoneAndFormat,
31
25
  };
32
26
  //# sourceMappingURL=date.js.map
package/dist/date.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"date.js","sourceRoot":"","sources":["../src/date.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAEzB,MAAM,uBAAuB,GAAG,CAAC,IAAS,EAAE,MAAM,GAAG,YAAY,EAAE,EAAE;IACnE,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IAEpB,IAAI,cAAc,GAAG,IAAI,CAAA;IAEzB,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;QACzB,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;IACjE,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;IACnD,CAAC;IAED,OAAO,IAAA,eAAK,EAAC,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAC5D,CAAC,CAAA;AAED;;;;;;;;GAQG;AACU,QAAA,SAAS,GAAG;IACvB,uBAAuB;CACxB,CAAA"}
1
+ {"version":3,"file":"date.js","sourceRoot":"","sources":["../src/date.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,uBAAuB,GAAG,CAAC,IAAS,EAAE,MAAM,GAAG,YAAY,EAAE,EAAE;IACnE,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IAEpB,IAAI,cAAc,GAAG,IAAI,CAAA;IAEzB,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;QACzB,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;IACjE,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;IACnD,CAAC;IAED,OAAO,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAC5D,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,uBAAuB;CACxB,CAAA"}
package/dist/faker.js CHANGED
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.faker = void 0;
4
1
  const names = [
5
2
  'James', 'John', 'Robert', 'Michael', 'William', 'David', 'Richard', 'Joseph', 'Thomas',
6
3
  'Charles', 'Christopher', 'Daniel', 'Matthew', 'Anthony', 'Donald', 'Mark', 'Paul', 'Steven',
@@ -36,7 +33,7 @@ function number(min = 0, max = 100) {
36
33
  * Use this instead of heavy faker libraries in tests or seed scripts where the
37
34
  * small vocabulary is sufficient.
38
35
  */
39
- exports.faker = {
36
+ export const faker = {
40
37
  lastName: () => getRandom(surnames),
41
38
  firstName: () => getRandom(names),
42
39
  animal: () => getRandom(animals),
package/dist/faker.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"faker.js","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":";;;AAAA,MAAM,KAAK,GAAG;IACZ,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ;IACvF,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;IAC5F,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS;IACxF,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;CAC5C,CAAA;AAED,MAAM,QAAQ,GAAG;IACf,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;IAC7E,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;IAC1D,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO;IACtF,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ;CAChG,CAAA;AAED,MAAM,OAAO,GAAG;IACd,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;IAClD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO;CAC1D,CAAA;AAED,SAAS,SAAS,CAAC,IAAmB;IACpC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;AACtD,CAAC;AAED,SAAS,MAAM,CAAC,MAAc,CAAC,EAAE,MAAc,GAAG;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACU,QAAA,KAAK,GAAG;IACnB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC;IACnC,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC;IACjC,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAChC,MAAM;IACN,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;CACzD,CAAA"}
1
+ {"version":3,"file":"faker.js","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":"AAAA,MAAM,KAAK,GAAG;IACZ,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ;IACvF,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;IAC5F,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS;IACxF,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;CAC5C,CAAA;AAED,MAAM,QAAQ,GAAG;IACf,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;IAC7E,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;IAC1D,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO;IACtF,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ;CAChG,CAAA;AAED,MAAM,OAAO,GAAG;IACd,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;IAClD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO;CAC1D,CAAA;AAED,SAAS,SAAS,CAAC,IAAmB;IACpC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;AACtD,CAAC;AAED,SAAS,MAAM,CAAC,MAAc,CAAC,EAAE,MAAc,GAAG;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC;IACnC,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC;IACjC,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAChC,MAAM;IACN,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;CACzD,CAAA"}
package/dist/file.js CHANGED
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseFilePathData = parseFilePathData;
4
1
  const separators = /[\\\/]+/;
5
2
  /**
6
3
  * Splits a file system path into its directory, base name, and extension.
@@ -10,7 +7,7 @@ const separators = /[\\\/]+/;
10
7
  * `extension`. The returned `path` is always joined with `/` regardless of the
11
8
  * original separator.
12
9
  */
13
- function parseFilePathData(path) {
10
+ export function parseFilePathData(path) {
14
11
  const parts = path.split(separators);
15
12
  const lastPart = parts[parts.length - 1];
16
13
  let fileName = lastPart;
package/dist/file.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":";;AAUA,8CAoBC;AA9BD,MAAM,UAAU,GAAG,SAAS,CAAA;AAE5B;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAAC,IAAY;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAEpC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAExC,IAAI,QAAQ,GAAG,QAAQ,CAAA;IACvB,IAAI,GAAG,GAAG,EAAE,CAAA;IAEZ,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACxC,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAExC,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACtC,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAClC,SAAS,EAAE,GAAG;QACd,IAAI,EAAE,QAAQ;KACf,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,SAAS,CAAA;AAE5B;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAEpC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAExC,IAAI,QAAQ,GAAG,QAAQ,CAAA;IACvB,IAAI,GAAG,GAAG,EAAE,CAAA;IAEZ,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACxC,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAExC,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACtC,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAClC,SAAS,EAAE,GAAG;QACd,IAAI,EAAE,QAAQ;KACf,CAAA;AACH,CAAC"}
package/dist/index.js CHANGED
@@ -1,28 +1,12 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./array"), exports);
18
- __exportStar(require("./colors"), exports);
19
- __exportStar(require("./misc"), exports);
20
- __exportStar(require("./object"), exports);
21
- __exportStar(require("./react"), exports);
22
- __exportStar(require("./file"), exports);
23
- __exportStar(require("./string"), exports);
24
- __exportStar(require("./faker"), exports);
25
- __exportStar(require("./cloneDeep"), exports);
26
- __exportStar(require("./locale"), exports);
27
- __exportStar(require("./date"), exports);
1
+ export * from './array';
2
+ export * from './colors';
3
+ export * from './misc';
4
+ export * from './object';
5
+ export * from './react';
6
+ export * from './file';
7
+ export * from './string';
8
+ export * from './faker';
9
+ export * from './cloneDeep';
10
+ export * from './locale';
11
+ export * from './date';
28
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,2CAAwB;AACxB,yCAAsB;AACtB,2CAAwB;AACxB,0CAAuB;AACvB,yCAAsB;AACtB,2CAAwB;AACxB,0CAAuB;AACvB,8CAA2B;AAC3B,2CAAwB;AACxB,yCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA"}
package/dist/locale.js CHANGED
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSimilarLocale = getSimilarLocale;
4
1
  /**
5
2
  * Finds the closest matching key in `languageDictionary` for a given `locale`.
6
3
  *
@@ -8,7 +5,7 @@ exports.getSimilarLocale = getSimilarLocale;
8
5
  * will match an `'en-US'` dictionary key. Returns `defaultLocale` when no
9
6
  * partial match exists.
10
7
  */
11
- function getSimilarLocale(locale, defaultLocale, languageDictionary) {
8
+ export function getSimilarLocale(locale, defaultLocale, languageDictionary) {
12
9
  const inputFirstPart = locale.substring(0, 2);
13
10
  const keys = Object.keys(languageDictionary);
14
11
  for (const key of keys) {
@@ -1 +1 @@
1
- {"version":3,"file":"locale.js","sourceRoot":"","sources":["../src/locale.ts"],"names":[],"mappings":";;AASA,4CAYC;AAnBD;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAC9B,MAAc,EACd,aAAqB,EACrB,kBAA6B;IAE7B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACxC,IAAI,cAAc,KAAK,YAAY;YAAE,OAAO,GAAG,CAAA;IACjD,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC"}
1
+ {"version":3,"file":"locale.js","sourceRoot":"","sources":["../src/locale.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAc,EACd,aAAqB,EACrB,kBAA6B;IAE7B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACxC,IAAI,cAAc,KAAK,YAAY;YAAE,OAAO,GAAG,CAAA;IACjD,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC"}
package/dist/misc.js CHANGED
@@ -1,13 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.imagePathToFileObject = imagePathToFileObject;
4
- exports.matchInitialToColor = matchInitialToColor;
5
- exports.waitFor = waitFor;
6
- exports.parseSourceUrl = parseSourceUrl;
7
- exports.getNestedStylesByKey = getNestedStylesByKey;
8
- exports.hasFastRefreshed = hasFastRefreshed;
9
- exports.throttle = throttle;
10
- const string_1 = require("./string");
1
+ import { capitalize } from './string';
11
2
  /**
12
3
  * Converts a remote image URL into a file-upload-compatible object
13
4
  * (`{ uri, name, type }`).
@@ -15,7 +6,7 @@ const string_1 = require("./string");
15
6
  * The `type` is inferred from the URL's file extension. Returns `null` when
16
7
  * `imagePath` is falsy, making it safe to pass directly to optional file-input APIs.
17
8
  */
18
- function imagePathToFileObject(imagePath) {
9
+ export function imagePathToFileObject(imagePath) {
19
10
  const parts = imagePath ? imagePath.split('.') : '';
20
11
  const ext = imagePath ? parts[parts.length - 1].toLowerCase() : '';
21
12
  const fileValue = imagePath
@@ -62,20 +53,20 @@ const letterToColorMap = {
62
53
  * Lookup is case-insensitive. Returns `'#999999'` for empty, undefined, or
63
54
  * characters not in the `a–z` range.
64
55
  */
65
- function matchInitialToColor(anyString) {
56
+ export function matchInitialToColor(anyString) {
66
57
  if (!anyString)
67
58
  return '#999999';
68
59
  return letterToColorMap[anyString.toLowerCase().charAt(0)] || '#999999';
69
60
  }
70
61
  /** Returns a Promise that resolves after `ms` milliseconds. */
71
- function waitFor(ms) {
62
+ export function waitFor(ms) {
72
63
  return new Promise((resolve) => {
73
64
  setTimeout(() => {
74
65
  resolve();
75
66
  }, ms);
76
67
  });
77
68
  }
78
- function parseSourceUrl(args, Settings) {
69
+ export function parseSourceUrl(args, Settings) {
79
70
  if (!args)
80
71
  return null;
81
72
  let res = '';
@@ -106,11 +97,11 @@ function parseSourceUrl(args, Settings) {
106
97
  * Used internally by component style systems to pull out sub-part styles
107
98
  * (e.g. `inputLabel`, `inputWrapper`) into their own namespaced objects.
108
99
  */
109
- function getNestedStylesByKey(match, variantStyles) {
100
+ export function getNestedStylesByKey(match, variantStyles) {
110
101
  const styles = {};
111
102
  for (const [key, value] of Object.entries(variantStyles)) {
112
103
  if (key.startsWith(match)) {
113
- const partName = (0, string_1.capitalize)(key.replace(match, ''), true);
104
+ const partName = capitalize(key.replace(match, ''), true);
114
105
  styles[partName] = value;
115
106
  }
116
107
  }
@@ -125,9 +116,8 @@ function getNestedStylesByKey(match, variantStyles) {
125
116
  * app start; anything longer suggests a subsequent refresh rather than cold boot.
126
117
  * Returns `undefined` and logs a warning when `InitTime` is not set.
127
118
  */
128
- function hasFastRefreshed(Settings) {
129
- var _a;
130
- if ((_a = Settings === null || Settings === void 0 ? void 0 : Settings.Environment) === null || _a === void 0 ? void 0 : _a.InitTime) {
119
+ export function hasFastRefreshed(Settings) {
120
+ if (Settings?.Environment?.InitTime) {
131
121
  const timeFromStartup = (new Date()).getTime() - Settings.Environment.InitTime.getTime();
132
122
  // It usually takes less than a seconds (~300ms) from app launch to running this, so if's been more than that we've probably fast refreshed
133
123
  const fastRefreshed = Settings.Environment.IsDev && timeFromStartup > 1000;
@@ -147,7 +137,7 @@ const throttleTimerId = {};
147
137
  * Using a string/number `ref` allows multiple independent throttle timers to coexist
148
138
  * in a single module without needing to hold separate timer handles.
149
139
  */
150
- function throttle(func, ref, delay) {
140
+ export function throttle(func, ref, delay) {
151
141
  if (throttleTimerId[ref]) {
152
142
  return;
153
143
  }
package/dist/misc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"misc.js","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"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"}
package/dist/object.js CHANGED
@@ -1,25 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deepGet = exports.deepSet = void 0;
4
- exports.deepMerge = deepMerge;
5
- exports.mapObject = mapObject;
6
- exports.objectPaths = objectPaths;
7
- exports.isValuePrimitive = isValuePrimitive;
8
- exports.optionalObject = optionalObject;
9
- exports.traverse = traverse;
10
- exports.createSettings = createSettings;
11
- exports.extractKey = extractKey;
12
- exports.objectPickBy = objectPickBy;
13
- exports.transformObject = transformObject;
14
- exports.filterObjectByPrefix = filterObjectByPrefix;
15
1
  /**
16
2
  * Recursively merges `changes` into `base`, deep-merging nested plain objects.
17
3
  *
18
4
  * Arrays and `Date` instances are treated as scalar values — they replace rather
19
5
  * than merge. If `changes` is not iterable, it is returned as-is.
20
6
  */
21
- function deepMerge(base = {}, changes = {}) {
22
- const obj = Object.assign({}, base);
7
+ export function deepMerge(base = {}, changes = {}) {
8
+ const obj = {
9
+ ...base,
10
+ };
23
11
  let changeEntries = [];
24
12
  try {
25
13
  changeEntries = Object.entries(changes);
@@ -41,7 +29,7 @@ function deepMerge(base = {}, changes = {}) {
41
29
  * Returns an array — not a new object — so it is useful when you need to
42
30
  * transform key-value pairs into arbitrary values (e.g. JSX elements).
43
31
  */
44
- function mapObject(obj, callback) {
32
+ export function mapObject(obj, callback) {
45
33
  return Object.entries(obj).map((args) => callback(args));
46
34
  }
47
35
  /**
@@ -50,38 +38,36 @@ function mapObject(obj, callback) {
50
38
  *
51
39
  * Numeric path segments are coerced to array indices when the current node is an array.
52
40
  */
53
- const deepSet = (base = {}, path, value) => {
41
+ export const deepSet = (base = {}, path, value) => {
54
42
  const keys = path.split('.');
55
43
  const obj = base;
56
44
  let thisKey = keys[0];
57
45
  if (Array.isArray(base)) {
58
46
  thisKey = Number(thisKey);
59
47
  }
60
- obj[thisKey] = keys.length === 1 ? value : (0, exports.deepSet)(obj[thisKey], keys.slice(1).join('.'), value);
48
+ obj[thisKey] = keys.length === 1 ? value : deepSet(obj[thisKey], keys.slice(1).join('.'), value);
61
49
  return obj;
62
50
  };
63
- exports.deepSet = deepSet;
64
51
  /**
65
52
  * Reads a value from `obj` at a dot-separated `path`.
66
53
  *
67
54
  * Returns `undefined` (without throwing) when any intermediate node is absent,
68
55
  * because property access on `undefined` propagates silently through the loop.
69
56
  */
70
- const deepGet = (path, obj) => {
57
+ export const deepGet = (path, obj) => {
71
58
  const parts = path.split('.');
72
- let newObj = Object.assign({}, obj);
59
+ let newObj = { ...obj };
73
60
  for (const prop of parts) {
74
61
  newObj = newObj[prop];
75
62
  }
76
63
  return newObj;
77
64
  };
78
- exports.deepGet = deepGet;
79
65
  /**
80
66
  * Returns every dot-separated leaf path in a nested object.
81
67
  *
82
68
  * Array values are treated as leaves — their indices are not traversed.
83
69
  */
84
- function objectPaths(obj) {
70
+ export function objectPaths(obj) {
85
71
  let paths = [];
86
72
  Object.entries(obj).forEach(([key, value]) => {
87
73
  if (!Array.isArray(value) && typeof value === 'object') {
@@ -94,7 +80,7 @@ function objectPaths(obj) {
94
80
  return paths;
95
81
  }
96
82
  /** Returns `true` only for `string`, `number`, and `boolean` — `null`, `undefined`, and objects are excluded. */
97
- function isValuePrimitive(a) {
83
+ export function isValuePrimitive(a) {
98
84
  return ['string', 'number', 'boolean'].includes(typeof a);
99
85
  }
100
86
  /**
@@ -103,7 +89,7 @@ function isValuePrimitive(a) {
103
89
  * Intended for use inside object spreads where the ternary would otherwise
104
90
  * require wrapping: `{ ...optionalObject(flag, trueProps, {}) }`.
105
91
  */
106
- function optionalObject(condition, ifTrue, ifFalse) {
92
+ export function optionalObject(condition, ifTrue, ifFalse) {
107
93
  return condition ? ifTrue : ifFalse;
108
94
  }
109
95
  /**
@@ -115,21 +101,45 @@ function optionalObject(condition, ifTrue, ifFalse) {
115
101
  * from the callback is accepted by the type but **does not halt traversal** —
116
102
  * the implementation does not check the return value.
117
103
  */
118
- function traverse(obj = {}, callback, args) {
104
+ export function traverse(obj = {}, callback, args) {
119
105
  const isPrimitive = isValuePrimitive(obj);
120
- const info = Object.assign({ path: [], depth: 0, key: '', type: typeof obj, value: obj, primitive: isPrimitive }, args);
106
+ const info = {
107
+ path: [],
108
+ depth: 0,
109
+ key: '',
110
+ type: typeof obj,
111
+ value: obj,
112
+ primitive: isPrimitive,
113
+ ...args,
114
+ };
121
115
  if (isPrimitive) {
122
- callback(Object.assign(Object.assign({}, info), { depth: info.depth }));
116
+ callback({
117
+ ...info,
118
+ depth: info.depth,
119
+ });
123
120
  }
124
121
  else {
125
122
  for (const [key, value] of Object.entries(obj || {})) {
126
123
  const isPrimitive = isValuePrimitive(value);
127
124
  if (!isPrimitive) {
128
- callback(Object.assign(Object.assign({}, info), { key,
129
- value, type: typeof value, primitive: isPrimitive, path: [...info.path, key] }));
125
+ callback({
126
+ ...info,
127
+ key,
128
+ value,
129
+ type: typeof value,
130
+ primitive: isPrimitive,
131
+ path: [...info.path, key],
132
+ });
130
133
  }
131
- traverse(value, callback, Object.assign(Object.assign({}, info), { key,
132
- value, type: typeof value, primitive: isValuePrimitive(value), path: [...info.path, key], depth: info.depth + 1 }));
134
+ traverse(value, callback, {
135
+ ...info,
136
+ key,
137
+ value,
138
+ type: typeof value,
139
+ primitive: isValuePrimitive(value),
140
+ path: [...info.path, key],
141
+ depth: info.depth + 1,
142
+ });
133
143
  }
134
144
  }
135
145
  }
@@ -140,7 +150,7 @@ function traverse(obj = {}, callback, args) {
140
150
  * objects so that editors provide autocompletion and type errors at the
141
151
  * definition site rather than at the point of use.
142
152
  */
143
- function createSettings(a) {
153
+ export function createSettings(a) {
144
154
  return a;
145
155
  }
146
156
  /**
@@ -149,7 +159,7 @@ function createSettings(a) {
149
159
  * Intended as a default `keyExtractor` in list utilities where records are
150
160
  * expected to carry an `id` field.
151
161
  */
152
- function extractKey(obj) {
162
+ export function extractKey(obj) {
153
163
  if (obj.id) {
154
164
  return obj.id;
155
165
  }
@@ -159,12 +169,11 @@ function extractKey(obj) {
159
169
  *
160
170
  * Only own enumerable keys are visited; prototype-chain properties are skipped.
161
171
  */
162
- function objectPickBy(obj, predicate) {
163
- var _a;
172
+ export function objectPickBy(obj, predicate) {
164
173
  const result = {};
165
174
  for (const key in obj) {
166
- if (((_a = obj === null || obj === void 0 ? void 0 : obj.hasOwnProperty) === null || _a === void 0 ? void 0 : _a.call(obj, key)) && (predicate === null || predicate === void 0 ? void 0 : predicate(obj === null || obj === void 0 ? void 0 : obj[key], key))) {
167
- result[key] = obj === null || obj === void 0 ? void 0 : obj[key];
175
+ if (obj?.hasOwnProperty?.(key) && predicate?.(obj?.[key], key)) {
176
+ result[key] = obj?.[key];
168
177
  }
169
178
  }
170
179
  return result;
@@ -176,10 +185,10 @@ function objectPickBy(obj, predicate) {
176
185
  * Keys returned by `predicate` need not be unique — later entries silently
177
186
  * overwrite earlier ones if they resolve to the same key.
178
187
  */
179
- function transformObject(obj, predicate) {
188
+ export function transformObject(obj, predicate) {
180
189
  const result = {};
181
190
  for (const key in obj) {
182
- const [newKey, newValue] = predicate === null || predicate === void 0 ? void 0 : predicate(obj === null || obj === void 0 ? void 0 : obj[key], key);
191
+ const [newKey, newValue] = predicate?.(obj?.[key], key);
183
192
  result[newKey] = newValue;
184
193
  }
185
194
  return result;
@@ -191,7 +200,7 @@ function transformObject(obj, predicate) {
191
200
  * Useful for splitting a flat props object into logical groups, e.g. separating
192
201
  * all `inputXxx` props from a combined component interface.
193
202
  */
194
- function filterObjectByPrefix(obj, prefix) {
203
+ export function filterObjectByPrefix(obj, prefix) {
195
204
  const result = {};
196
205
  for (const key in obj) {
197
206
  if (key.startsWith(prefix)) {
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../src/object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../src/object.ts"],"names":[],"mappings":"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"}
package/dist/react.js CHANGED
@@ -1,30 +1,8 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.simplifyChildren = exports.flattenChildren = exports.deepEqual = void 0;
18
- exports.arePropsEqual = arePropsEqual;
19
- exports.getRenderedComponent = getRenderedComponent;
20
- exports.memoize = memoize;
21
- exports.memoChecker = memoChecker;
22
- exports.memoBy = memoBy;
23
- const deep_equal_1 = __importDefault(require("deep-equal"));
24
- const react_1 = __importDefault(require("react"));
25
- const types_1 = require("@codeleap/types");
1
+ import equals from 'deep-equal';
2
+ import React from 'react';
3
+ import { TypeGuards } from '@codeleap/types';
26
4
  /** Deep structural equality backed by the `deep-equal` package. */
27
- exports.deepEqual = deep_equal_1.default;
5
+ export const deepEqual = equals;
28
6
  /**
29
7
  * Checks a specific subset of props for deep equality between two render cycles.
30
8
  *
@@ -32,18 +10,18 @@ exports.deepEqual = deep_equal_1.default;
32
10
  * comparison — this mutates the items inside `previous` and `next`.
33
11
  * Pass only the keys you want to ignore, and be aware of the side-effect.
34
12
  */
35
- function arePropsEqual(previous, next, options) {
13
+ export function arePropsEqual(previous, next, options) {
36
14
  const { check, excludeKeys = [] } = options;
37
15
  for (const c of check) {
38
16
  const nextItem = next[c];
39
17
  const prevItem = previous[c];
40
18
  for (const key of excludeKeys) {
41
- if (nextItem === null || nextItem === void 0 ? void 0 : nextItem[key])
19
+ if (nextItem?.[key])
42
20
  delete nextItem[key];
43
- if (prevItem === null || prevItem === void 0 ? void 0 : prevItem[key])
21
+ if (prevItem?.[key])
44
22
  delete prevItem[key];
45
23
  }
46
- const propsAreEqual = (0, deep_equal_1.default)(nextItem, prevItem);
24
+ const propsAreEqual = equals(nextItem, prevItem);
47
25
  if (!propsAreEqual) {
48
26
  return false;
49
27
  }
@@ -58,14 +36,13 @@ function arePropsEqual(previous, next, options) {
58
36
  * Only one level of `props.children` nesting is followed per call — deeply
59
37
  * nested component trees (not just wrapper nodes) are not fully unwound.
60
38
  */
61
- const flattenChildren = (children, flat = []) => {
62
- flat = [...flat, ...react_1.default.Children.toArray(children)];
63
- if ((children === null || children === void 0 ? void 0 : children.props) && children.props.children) {
64
- return (0, exports.flattenChildren)(children.props.children, flat);
39
+ export const flattenChildren = (children, flat = []) => {
40
+ flat = [...flat, ...React.Children.toArray(children)];
41
+ if (children?.props && children.props.children) {
42
+ return flattenChildren(children.props.children, flat);
65
43
  }
66
44
  return flat;
67
45
  };
68
- exports.flattenChildren = flattenChildren;
69
46
  /**
70
47
  * Flattens a children tree and strips the `children` prop from each element's
71
48
  * props, returning a serialisable summary of the tree.
@@ -73,16 +50,12 @@ exports.flattenChildren = flattenChildren;
73
50
  * Intended for introspection and testing — not for re-rendering, since `ref`
74
51
  * and event-handler functions are preserved as-is.
75
52
  */
76
- const simplifyChildren = (children) => {
77
- const flat = (0, exports.flattenChildren)(children);
78
- return flat.map((_a) => {
79
- var { key, ref, type } = _a, _b = _a.props, { children } = _b, props = __rest(_b, ["children"]);
80
- return ({
81
- key, ref, type, props,
82
- });
83
- });
53
+ export const simplifyChildren = (children) => {
54
+ const flat = flattenChildren(children);
55
+ return flat.map(({ key, ref, type, props: { children, ...props }, }) => ({
56
+ key, ref, type, props,
57
+ }));
84
58
  };
85
- exports.simplifyChildren = simplifyChildren;
86
59
  /**
87
60
  * Renders a slot that accepts a component, a props object, or a pre-rendered node.
88
61
  *
@@ -95,20 +68,20 @@ exports.simplifyChildren = simplifyChildren;
95
68
  * This lets call sites pass either a component override, extra props, or nothing,
96
69
  * without needing separate conditional rendering logic.
97
70
  */
98
- function getRenderedComponent(ComponentOrProps, DefaultComponent, props) {
71
+ export function getRenderedComponent(ComponentOrProps, DefaultComponent, props) {
99
72
  const _ComponentOrProps = ComponentOrProps;
100
73
  const _DefaultComponent = DefaultComponent;
101
- if (types_1.TypeGuards.isFunction(ComponentOrProps)) {
102
- return react_1.default.createElement(_ComponentOrProps, Object.assign({}, props));
74
+ if (TypeGuards.isFunction(ComponentOrProps)) {
75
+ return React.createElement(_ComponentOrProps, { ...props });
103
76
  }
104
- if (types_1.TypeGuards.isNil(ComponentOrProps) || Object.keys(ComponentOrProps).length === 0) {
77
+ if (TypeGuards.isNil(ComponentOrProps) || Object.keys(ComponentOrProps).length === 0) {
105
78
  return null;
106
79
  }
107
- if (react_1.default.isValidElement(ComponentOrProps)) {
80
+ if (React.isValidElement(ComponentOrProps)) {
108
81
  return ComponentOrProps;
109
82
  }
110
83
  const _props = ComponentOrProps;
111
- return react_1.default.createElement(_DefaultComponent, Object.assign({}, props, _props));
84
+ return React.createElement(_DefaultComponent, { ...props, ..._props });
112
85
  }
113
86
  /**
114
87
  * Memoizes a React functional component to prevent unnecessary re-renders.
@@ -123,8 +96,8 @@ function getRenderedComponent(ComponentOrProps, DefaultComponent, props) {
123
96
  * @param ComponentToMemoize - The React functional component to memoize.
124
97
  * @returns A memoized version of the input component (`React.NamedExoticComponent`).
125
98
  */
126
- function memoize(ComponentToMemoize) {
127
- return react_1.default.memo(ComponentToMemoize, () => true);
99
+ export function memoize(ComponentToMemoize) {
100
+ return React.memo(ComponentToMemoize, () => true);
128
101
  }
129
102
  /**
130
103
  * Checks whether a specific property in two sets of props is equal.
@@ -138,10 +111,10 @@ function memoize(ComponentToMemoize) {
138
111
  * @param nextProps - The next props object.
139
112
  * @returns `true` if the values of the specified property are deeply equal; otherwise, `false`.
140
113
  */
141
- function memoChecker(prop, prevProps, nextProps) {
114
+ export function memoChecker(prop, prevProps, nextProps) {
142
115
  const nextItem = nextProps[prop];
143
116
  const prevItem = prevProps[prop];
144
- return (0, deep_equal_1.default)(nextItem, prevItem);
117
+ return equals(nextItem, prevItem);
145
118
  }
146
119
  /**
147
120
  * Memoizes a React functional component based on specific props.
@@ -180,8 +153,8 @@ function memoChecker(prop, prevProps, nextProps) {
180
153
  * <MemoizedByName name="Alice" age={25} />;
181
154
  * <MemoizedByNameAndAge name="Alice" age={25} />;
182
155
  */
183
- function memoBy(ComponentToMemoize, check) {
184
- return react_1.default.memo(ComponentToMemoize, (prevProps, nextProps) => {
156
+ export function memoBy(ComponentToMemoize, check) {
157
+ return React.memo(ComponentToMemoize, (prevProps, nextProps) => {
185
158
  const checks = Array.isArray(check) ? check : [check];
186
159
  return checks.every((key) => memoChecker(key, prevProps, nextProps));
187
160
  });
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
package/dist/string.js CHANGED
@@ -1,15 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.singleLine = singleLine;
4
- exports.stringiparse = stringiparse;
5
- exports.capitalize = capitalize;
6
- exports.isUppercase = isUppercase;
7
- exports.isLowercase = isLowercase;
8
- exports.humanizeCamelCase = humanizeCamelCase;
9
- exports.ellipsis = ellipsis;
10
1
  /** Collapses all newline characters in `text` to single spaces. */
11
- function singleLine(text) {
12
- return text === null || text === void 0 ? void 0 : text.replace(/\n/g, ' ');
2
+ export function singleLine(text) {
3
+ return text?.replace(/\n/g, ' ');
13
4
  }
14
5
  /**
15
6
  * Round-trips a value through `JSON.stringify` → `JSON.parse`.
@@ -18,7 +9,7 @@ function singleLine(text) {
18
9
  * and produces a plain-object clone. Throws if the value contains circular
19
10
  * references.
20
11
  */
21
- function stringiparse(string) {
12
+ export function stringiparse(string) {
22
13
  return JSON.parse(JSON.stringify(string));
23
14
  }
24
15
  /**
@@ -27,7 +18,7 @@ function stringiparse(string) {
27
18
  * When `reverse` is `true` the first character is lowercased instead of
28
19
  * uppercased — useful for converting PascalCase to camelCase.
29
20
  */
30
- function capitalize(str, reverse = false) {
21
+ export function capitalize(str, reverse = false) {
31
22
  if (!str.length)
32
23
  return str;
33
24
  const firstChar = reverse ? str[0].toLowerCase() : str[0].toUpperCase();
@@ -39,11 +30,11 @@ function capitalize(str, reverse = false) {
39
30
  * Covers the Unicode range `U+0080`–`U+024F` in addition to `A–Z`, so
40
31
  * accented capitals (e.g. `É`, `Ñ`) are recognised correctly.
41
32
  */
42
- function isUppercase(char) {
33
+ export function isUppercase(char) {
43
34
  return /[A-Z]|[\u0080-\u024F]/.test(char) && char.toUpperCase() === char;
44
35
  }
45
36
  /** Returns `true` when `char` is **not** considered uppercase by {@link isUppercase}. */
46
- function isLowercase(char) {
37
+ export function isLowercase(char) {
47
38
  return !isUppercase(char);
48
39
  }
49
40
  /**
@@ -53,7 +44,7 @@ function isLowercase(char) {
53
44
  * by a lowercase letter. The first character is always uppercased.
54
45
  * Consecutive uppercase runs (e.g. acronyms like "URL") are not split.
55
46
  */
56
- function humanizeCamelCase(str) {
47
+ export function humanizeCamelCase(str) {
57
48
  const characters = [];
58
49
  let previousCharacter = '';
59
50
  str.split('').forEach((char, idx) => {
@@ -79,7 +70,7 @@ function humanizeCamelCase(str) {
79
70
  * `maxLen` characters when truncated. Strings already at or below `maxLen` are
80
71
  * returned unchanged.
81
72
  */
82
- function ellipsis(str, maxLen) {
73
+ export function ellipsis(str, maxLen) {
83
74
  if (str.length - 3 > maxLen) {
84
75
  return str.slice(0, maxLen - 3) + '...';
85
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"string.js","sourceRoot":"","sources":["../src/string.ts"],"names":[],"mappings":";;AACA,gCAEC;AASD,oCAEC;AAQD,gCAIC;AAQD,kCAEC;AAGD,kCAEC;AASD,8CAkBC;AASD,4BAMC;AAnFD,mEAAmE;AACnE,SAAgB,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,MAAc;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AAC3C,CAAC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,GAAW,EAAE,OAAO,GAAG,KAAK;IACrD,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,GAAG,CAAA;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IACvE,OAAO,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AACrC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAA;AAC1E,CAAC;AAED,yFAAyF;AACzF,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAC,GAAW;IAC3C,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,IAAI,iBAAiB,GAAG,EAAE,CAAA;IAC1B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAClC,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACxD,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACvB,CAAC;QACH,CAAC;QAED,iBAAiB,GAAG,IAAI,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,GAAW,EAAE,MAAc;IAClD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;QAC5B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAA;IACzC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"string.js","sourceRoot":"","sources":["../src/string.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,OAAO,GAAG,KAAK;IACrD,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,GAAG,CAAA;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IACvE,OAAO,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAA;AAC1E,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,IAAI,iBAAiB,GAAG,EAAE,CAAA;IAC1B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAClC,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACxD,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACvB,CAAC;QACH,CAAC;QAED,iBAAiB,GAAG,IAAI,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,MAAc;IAClD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;QAC5B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAA;IACzC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codeleap/utils",
3
- "version": "7.0.2",
3
+ "version": "7.1.1",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "exports": {
@@ -22,8 +22,8 @@
22
22
  "directory": "packages/utils"
23
23
  },
24
24
  "devDependencies": {
25
- "@codeleap/config": "7.0.1",
26
- "@codeleap/types": "7.0.1",
25
+ "@codeleap/config": "7.0.2",
26
+ "@codeleap/types": "7.0.2",
27
27
  "ts-node-dev": "1.1.8"
28
28
  },
29
29
  "scripts": {
@@ -31,7 +31,7 @@
31
31
  "typecheck": "bun tsc --noEmit -p ./tsconfig.json"
32
32
  },
33
33
  "peerDependencies": {
34
- "@codeleap/types": "7.0.1",
34
+ "@codeleap/types": "7.0.2",
35
35
  "axios": "^1.7.9",
36
36
  "dayjs": "1.11.18",
37
37
  "typescript": "6.0.3",