@leav/utils 0.0.2 → 0.0.4

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/dist/cjs/constants.js +1 -1
  2. package/dist/cjs/constants.js.map +1 -1
  3. package/dist/cjs/index.js +1 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/types/applications.js +1 -1
  6. package/dist/cjs/types/applications.js.map +1 -1
  7. package/dist/cjs/types/attributes.js +2 -2
  8. package/dist/cjs/types/attributes.js.map +1 -1
  9. package/dist/cjs/types/errors.js +2 -2
  10. package/dist/cjs/types/errors.js.map +1 -1
  11. package/dist/cjs/types/events.d.ts +1 -1
  12. package/dist/cjs/types/events.js +1 -1
  13. package/dist/cjs/types/events.js.map +1 -1
  14. package/dist/cjs/types/files.d.ts +1 -1
  15. package/dist/cjs/types/files.js +2 -2
  16. package/dist/cjs/types/files.js.map +1 -1
  17. package/dist/cjs/types/forms.d.ts +8 -2
  18. package/dist/cjs/types/forms.js +4 -3
  19. package/dist/cjs/types/forms.js.map +1 -1
  20. package/dist/cjs/types/helpers.d.ts +5 -6
  21. package/dist/cjs/types/logs.d.ts +1 -1
  22. package/dist/cjs/types/previews.js +2 -2
  23. package/dist/cjs/types/previews.js.map +1 -1
  24. package/dist/cjs/utils.d.ts +17 -41
  25. package/dist/cjs/utils.js +35 -52
  26. package/dist/cjs/utils.js.map +1 -1
  27. package/dist/esm/constants.js +1 -1
  28. package/dist/esm/constants.js.map +1 -1
  29. package/dist/esm/index.js +1 -1
  30. package/dist/esm/index.js.map +1 -1
  31. package/dist/esm/types/applications.js +1 -1
  32. package/dist/esm/types/applications.js.map +1 -1
  33. package/dist/esm/types/attributes.js +1 -1
  34. package/dist/esm/types/attributes.js.map +1 -1
  35. package/dist/esm/types/errors.js +1 -1
  36. package/dist/esm/types/errors.js.map +1 -1
  37. package/dist/esm/types/events.d.ts +1 -1
  38. package/dist/esm/types/files.d.ts +1 -1
  39. package/dist/esm/types/files.js +1 -1
  40. package/dist/esm/types/files.js.map +1 -1
  41. package/dist/esm/types/forms.d.ts +8 -2
  42. package/dist/esm/types/forms.js +1 -0
  43. package/dist/esm/types/forms.js.map +1 -1
  44. package/dist/esm/types/helpers.d.ts +5 -6
  45. package/dist/esm/types/logs.d.ts +1 -1
  46. package/dist/esm/types/previews.js +1 -1
  47. package/dist/esm/types/previews.js.map +1 -1
  48. package/dist/esm/utils.d.ts +5 -5
  49. package/dist/esm/utils.js +35 -52
  50. package/dist/esm/utils.js.map +1 -1
  51. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  52. package/dist/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +3 -4
@@ -1,4 +1,4 @@
1
- // Copyright LEAV Solutions 2017
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
2
  // This file is released under LGPL V3
3
3
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
4
  export var ErrorTypes;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/types/errors.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,sEAAsE;AACtE,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IAClB,mDAAqC,CAAA;IACrC,mDAAqC,CAAA;IACrC,+CAAiC,CAAA;AACrC,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/types/errors.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IAClB,mDAAqC,CAAA;IACrC,mDAAqC,CAAA;IACrC,+CAAiC,CAAA;AACrC,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB"}
@@ -65,7 +65,7 @@ export interface IDbEvent extends IEvent {
65
65
  payload: IDbPayload;
66
66
  }
67
67
  /*** PubSub events ***/
68
- export declare type PublishedEvent<T> = IEvent & T;
68
+ export type PublishedEvent<T> = IEvent & T;
69
69
  export interface IPubSubEvent extends IEvent {
70
70
  payload: IPubSubPayload;
71
71
  }
@@ -5,7 +5,7 @@ export declare enum FileType {
5
5
  DOCUMENT = "document",
6
6
  OTHER = "other"
7
7
  }
8
- export declare type FileRecord = Record<string, any> & {
8
+ export type FileRecord = Record<string, any> & {
9
9
  type: FileType;
10
10
  };
11
11
  export interface IPreviewScalar {
@@ -1,4 +1,4 @@
1
- // Copyright LEAV Solutions 2017
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
2
  // This file is released under LGPL V3
3
3
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
4
  export var FileType;
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../src/types/files.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,sEAAsE;AACtE,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAChB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,iCAAqB,CAAA;IACrB,2BAAe,CAAA;AACnB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../src/types/files.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAChB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,iCAAqB,CAAA;IACrB,2BAAe,CAAA;AACnB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB"}
@@ -4,7 +4,8 @@ export declare enum FormUIElementTypes {
4
4
  FIELDS_CONTAINER = "fields_container",
5
5
  TAB_FIELDS_CONTAINER = "tab_fields_container",
6
6
  TEXT_BLOCK = "text_block",
7
- TABS = "tabs"
7
+ TABS = "tabs",
8
+ FRAME = "frame"
8
9
  }
9
10
  export declare enum FormFieldTypes {
10
11
  TEXT_INPUT = "input_field",
@@ -20,8 +21,9 @@ export declare enum TabsDirection {
20
21
  VERTICAL = "vertical"
21
22
  }
22
23
  export interface ICommonFieldsSettings {
23
- label?: string;
24
+ label?: Record<string, string | null>;
24
25
  attribute?: string;
26
+ useAttributeLabel?: boolean;
25
27
  }
26
28
  export interface IRequiredFieldsSettings extends ICommonFieldsSettings {
27
29
  required?: boolean;
@@ -40,6 +42,10 @@ export interface IFormTabsSettings {
40
42
  export interface IFormTextBlockSettings {
41
43
  content?: string;
42
44
  }
45
+ export interface IFormFrameSettings {
46
+ url: string;
47
+ height?: string;
48
+ }
43
49
  export interface IFormDateFieldSettings extends ICommonFieldsSettings {
44
50
  withTime: boolean;
45
51
  }
@@ -5,6 +5,7 @@ export var FormUIElementTypes;
5
5
  FormUIElementTypes["TAB_FIELDS_CONTAINER"] = "tab_fields_container";
6
6
  FormUIElementTypes["TEXT_BLOCK"] = "text_block";
7
7
  FormUIElementTypes["TABS"] = "tabs";
8
+ FormUIElementTypes["FRAME"] = "frame";
8
9
  })(FormUIElementTypes || (FormUIElementTypes = {}));
9
10
  export var FormFieldTypes;
10
11
  (function (FormFieldTypes) {
@@ -1 +1 @@
1
- {"version":3,"file":"forms.js","sourceRoot":"","sources":["../../../src/types/forms.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC1B,yCAAmB,CAAA;IACnB,2DAAqC,CAAA;IACrC,mEAA6C,CAAA;IAC7C,+CAAyB,CAAA;IACzB,mCAAa,CAAA;AACjB,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B;AAED,MAAM,CAAN,IAAY,cAQX;AARD,WAAY,cAAc;IACtB,4CAA0B,CAAA;IAC1B,+BAAa,CAAA;IACb,uCAAqB,CAAA;IACrB,yCAAuB,CAAA;IACvB,uCAAqB,CAAA;IACrB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACjB,CAAC,EARW,cAAc,KAAd,cAAc,QAQzB;AAED,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;AACzB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAyCD,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"forms.js","sourceRoot":"","sources":["../../../src/types/forms.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,kBAOX;AAPD,WAAY,kBAAkB;IAC1B,yCAAmB,CAAA;IACnB,2DAAqC,CAAA;IACrC,mEAA6C,CAAA;IAC7C,+CAAyB,CAAA;IACzB,mCAAa,CAAA;IACb,qCAAe,CAAA;AACnB,CAAC,EAPW,kBAAkB,KAAlB,kBAAkB,QAO7B;AAED,MAAM,CAAN,IAAY,cAQX;AARD,WAAY,cAAc;IACtB,4CAA0B,CAAA;IAC1B,+BAAa,CAAA;IACb,uCAAqB,CAAA;IACrB,yCAAuB,CAAA;IACvB,uCAAqB,CAAA;IACrB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACjB,CAAC,EARW,cAAc,KAAd,cAAc,QAQzB;AAED,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;AACzB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AA+CD,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC"}
@@ -1,14 +1,13 @@
1
- /// <reference types="jest" />
2
1
  export interface IKeyValue<T> {
3
2
  [key: string]: T;
4
3
  }
5
- export declare type AnyPrimitive = string | number | boolean;
6
- export declare type Override<T1, T2> = Omit<T1, keyof T2> & T2;
7
- export declare type WithTypename<T> = {
4
+ export type AnyPrimitive = string | number | boolean;
5
+ export type Override<T1, T2> = Omit<T1, keyof T2> & T2;
6
+ export type WithTypename<T> = {
8
7
  [P in keyof T]: T[P] extends object ? WithTypename<T[P]> : T[P];
9
8
  } & {
10
9
  readonly __typename?: string;
11
10
  };
12
- export declare type Mockify<T> = {
13
- [P in keyof T]?: T[P] extends (...args: any) => any ? jest.Mock : T[P];
11
+ export type Mockify<T> = {
12
+ [P in keyof T]?: T[P] extends (...args: any[]) => any ? jest.Mock<ReturnType<T[P]> extends never ? never : any> : T[P];
14
13
  };
@@ -1,2 +1,2 @@
1
1
  import { IDbEvent, IDbPayload } from './events';
2
- export declare type Log = Omit<IDbEvent, 'payload' | 'emitter'> & IDbPayload;
2
+ export type Log = Omit<IDbEvent, 'payload' | 'emitter'> & IDbPayload;
@@ -1,4 +1,4 @@
1
- // Copyright LEAV Solutions 2017
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
2
  // This file is released under LGPL V3
3
3
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
4
  export var PreviewPriority;
@@ -1 +1 @@
1
- {"version":3,"file":"previews.js","sourceRoot":"","sources":["../../../src/types/previews.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,sEAAsE;AACtE,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACvB,mDAAO,CAAA;IACP,yDAAU,CAAA;IACV,qDAAQ,CAAA;AACZ,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B"}
1
+ {"version":3,"file":"previews.js","sourceRoot":"","sources":["../../../src/types/previews.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACvB,mDAAO,CAAA;IACP,yDAAU,CAAA;IACV,qDAAQ,CAAA;AACZ,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B"}
@@ -25,10 +25,10 @@ export declare const getInvertColor: (color: string) => string;
25
25
  export declare const extractArgsFromString: (mapping: string) => {
26
26
  [arg: string]: string;
27
27
  };
28
- export declare const objectToNameValueArray: <T>(obj: IKeyValue<T>) => {
28
+ export declare const objectToNameValueArray: <T>(obj: IKeyValue<T>) => Array<{
29
29
  name: string;
30
30
  value: T;
31
- }[];
31
+ }>;
32
32
  export declare const nameValArrayToObj: (arr?: Array<{}>, keyFieldName?: string, valueFieldName?: string) => {
33
33
  [key: string]: any;
34
34
  };
@@ -47,7 +47,7 @@ export declare const _getInitialEngine: (words: string[], length: number) => str
47
47
  * @param id
48
48
  * @returns formatted ID
49
49
  */
50
- export declare const slugifyString: (id: string, separator?: '-' | '_') => string;
50
+ export declare const slugifyString: (id: string, separator?: "-" | "_") => string;
51
51
  /**
52
52
  * Returns a hash code from a string
53
53
  * @param {String} str The string to hash.
@@ -60,8 +60,8 @@ export declare const waitFor: (predicate: () => Promise<boolean> | boolean, opti
60
60
  timeout?: number;
61
61
  interval?: number;
62
62
  }) => Promise<boolean>;
63
- export declare const isTypeLink: (type: AttributeType) => boolean;
64
- export declare const isTypeStandard: (type: AttributeType) => boolean;
63
+ export declare const isTypeLink: (type: AttributeType) => type is AttributeType.advanced_link | AttributeType.simple_link;
64
+ export declare const isTypeStandard: (type: AttributeType) => type is AttributeType.advanced | AttributeType.simple;
65
65
  /**
66
66
  * Return a new object without the keys passed in parameter
67
67
  */
package/dist/esm/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- // Copyright LEAV Solutions 2017
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
2
  // This file is released under LGPL V3
3
3
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
4
  import camelCase from 'lodash/camelCase';
@@ -11,12 +11,8 @@ import minimatch from 'minimatch';
11
11
  import * as extensions from './MIMEByExtension.json';
12
12
  import { AttributeType } from './types/attributes';
13
13
  import { FileType } from './types/files';
14
- export const getGraphqlTypeFromLibraryName = (library) => {
15
- return flow([camelCase, upperFirst, trimEnd, partialRight(trimEnd, 's')])(library);
16
- };
17
- export const getGraphqlQueryNameFromLibraryName = (library) => {
18
- return flow([camelCase, trimEnd])(library);
19
- };
14
+ export const getGraphqlTypeFromLibraryName = (library) => flow([camelCase, upperFirst, trimEnd, partialRight(trimEnd, 's')])(library);
15
+ export const getGraphqlQueryNameFromLibraryName = (library) => flow([camelCase, trimEnd])(library);
20
16
  export const isFileAllowed = (fsPath, allowList, ignoreList, filePath) => {
21
17
  // if allowPatterns is empty it's an implicit allow of all files
22
18
  if (!allowList.length) {
@@ -43,7 +39,7 @@ export const localizedTranslation = (translations, availableLanguages) => {
43
39
  */
44
40
  export const stringToColor = (str = '', format = 'hsl', saturation = 30, luminosity = 80) => {
45
41
  let hash = 0;
46
- for (let i = 0; i < (str !== null && str !== void 0 ? str : '').length; i++) {
42
+ for (let i = 0; i < (str ?? '').length; i++) {
47
43
  // eslint-disable-next-line no-bitwise
48
44
  hash = str.charCodeAt(i) + ((hash << 5) - hash);
49
45
  }
@@ -126,19 +122,15 @@ export const extractArgsFromString = (mapping) => {
126
122
  .split('-')
127
123
  .slice(1)
128
124
  .map(e => e.replace(/\s+/g, ' ').trim().split(' '));
129
- return args.reduce((acc, value) => { var _a; return (Object.assign(Object.assign({}, acc), { [value[0]]: (_a = value[1]) !== null && _a !== void 0 ? _a : true })); }, {});
130
- };
131
- export const objectToNameValueArray = (obj) => {
132
- return Object.keys(obj !== null && obj !== void 0 ? obj : {}).map(key => ({ name: key, value: obj[key] }));
133
- };
134
- export const nameValArrayToObj = (arr = [], keyFieldName = 'name', valueFieldName = 'value') => {
135
- return Array.isArray(arr) && arr.length
136
- ? arr.reduce((formattedElem, elem) => {
137
- formattedElem[elem[keyFieldName]] = elem[valueFieldName];
138
- return formattedElem;
139
- }, {})
140
- : null;
125
+ return args.reduce((acc, value) => ({ ...acc, [value[0]]: value[1] ?? true }), {});
141
126
  };
127
+ export const objectToNameValueArray = (obj) => Object.keys(obj ?? {}).map(key => ({ name: key, value: obj[key] }));
128
+ export const nameValArrayToObj = (arr = [], keyFieldName = 'name', valueFieldName = 'value') => Array.isArray(arr) && arr.length
129
+ ? arr.reduce((formattedElem, elem) => {
130
+ formattedElem[elem[keyFieldName]] = elem[valueFieldName];
131
+ return formattedElem;
132
+ }, {})
133
+ : null;
142
134
  export const getFileType = (fileName) => {
143
135
  if (!fileName) {
144
136
  return null;
@@ -205,18 +197,16 @@ export const _getInitialEngine = (words, length) => {
205
197
  * @param id
206
198
  * @returns formatted ID
207
199
  */
208
- export const slugifyString = (id, separator = '_') => {
209
- return id
210
- .normalize('NFD') // Decompose the string in the base and the accents
211
- .toLowerCase() // Lowercase the string
212
- .replace(/[\u0300-\u036f]/g, '') // Remove accents
213
- .replace(/[^a-zA-Z0-9\s]/g, separator) // Transform any special character into an underscore
214
- .trim() // Remove spaces at the beginning and the end
215
- .replace(/\s/g, separator) // Replace spaces by underscore
216
- .replace(new RegExp(`${separator}${separator}+`, 'g'), separator) // Remove double underscores
217
- .replace(new RegExp(`${separator}$`, 'g'), '') // Remove separator at the end
218
- .replace(new RegExp(`^${separator}`, 'g'), ''); // Remove underscore at the beginning
219
- };
200
+ export const slugifyString = (id, separator = '_') => id
201
+ .normalize('NFD') // Decompose the string in the base and the accents
202
+ .toLowerCase() // Lowercase the string
203
+ .replace(/[\u0300-\u036f]/g, '') // Remove accents
204
+ .replace(/[^a-zA-Z0-9\s]/g, separator) // Transform any special character into an underscore
205
+ .trim() // Remove spaces at the beginning and the end
206
+ .replace(/\s/g, separator) // Replace spaces by underscore
207
+ .replace(new RegExp(`${separator}${separator}+`, 'g'), separator) // Remove double underscores
208
+ .replace(new RegExp(`${separator}$`, 'g'), '') // Remove separator at the end
209
+ .replace(new RegExp(`^${separator}`, 'g'), ''); // Remove underscore at the beginning
220
210
  /**
221
211
  * Returns a hash code from a string
222
212
  * @param {String} str The string to hash.
@@ -234,23 +224,20 @@ export const simpleStringHash = (str) => {
234
224
  return Math.abs(hash);
235
225
  };
236
226
  export const getFlagByLang = (lang) => {
237
- var _a;
238
227
  const flagsByLang = {
239
- en: '🇬🇧',
240
- es: '🇪🇸',
241
- fr: '🇫🇷',
242
- de: '🇩🇪',
243
- zh: '🇨🇳',
244
- ru: '🇷🇺',
245
- pt: '🇵🇹',
246
- ja: '🇯🇵',
228
+ en: '🇬🇧', // English
229
+ es: '🇪🇸', // Spanish
230
+ fr: '🇫🇷', // French
231
+ de: '🇩🇪', // German
232
+ zh: '🇨🇳', // Chinese
233
+ ru: '🇷🇺', // Russian
234
+ pt: '🇵🇹', // Portuguese
235
+ ja: '🇯🇵', // Japanese
247
236
  ko: '🇰🇷' // Korean
248
237
  };
249
- return (_a = flagsByLang[lang]) !== null && _a !== void 0 ? _a : '';
250
- };
251
- export const getLogsIndexName = (instanceId) => {
252
- return `logs-${instanceId}`;
238
+ return flagsByLang[lang] ?? '';
253
239
  };
240
+ export const getLogsIndexName = (instanceId) => `logs-${instanceId}`;
254
241
  export const waitFor = async (predicate, options = {}) => {
255
242
  const { timeout = 5000, interval = 250 } = options;
256
243
  const startTime = Date.now();
@@ -262,17 +249,13 @@ export const waitFor = async (predicate, options = {}) => {
262
249
  }
263
250
  return true;
264
251
  };
265
- export const isTypeLink = (type) => {
266
- return type === AttributeType.simple_link || type === AttributeType.advanced_link;
267
- };
268
- export const isTypeStandard = (type) => {
269
- return type === AttributeType.simple || type === AttributeType.advanced;
270
- };
252
+ export const isTypeLink = (type) => type === AttributeType.simple_link || type === AttributeType.advanced_link;
253
+ export const isTypeStandard = (type) => type === AttributeType.simple || type === AttributeType.advanced;
271
254
  /**
272
255
  * Return a new object without the keys passed in parameter
273
256
  */
274
257
  export const omit = (obj, ...keys) => {
275
- const result = Object.assign({}, obj);
258
+ const result = { ...obj };
276
259
  keys.forEach(key => delete result[key]);
277
260
  return result;
278
261
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}