@selfcommunity/utils 0.2.0-alpha.1 → 0.2.0-alpha.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 (104) hide show
  1. package/lib/cjs/index.d.ts +5 -5
  2. package/lib/cjs/index.js +9 -30
  3. package/lib/cjs/utils/array.d.ts +7 -1
  4. package/lib/cjs/utils/array.js +23 -2
  5. package/lib/cjs/utils/browser.d.ts +1 -1
  6. package/lib/cjs/utils/browser.js +10 -5
  7. package/lib/cjs/utils/cache.d.ts +15 -5
  8. package/lib/cjs/utils/cache.js +10 -5
  9. package/lib/cjs/utils/image.d.ts +0 -1
  10. package/lib/cjs/utils/image.js +0 -1
  11. package/lib/cjs/utils/localStorage.d.ts +33 -0
  12. package/lib/cjs/utils/localStorage.js +101 -0
  13. package/lib/cjs/utils/logger.d.ts +0 -1
  14. package/lib/cjs/utils/logger.js +0 -1
  15. package/lib/cjs/utils/number.d.ts +0 -1
  16. package/lib/cjs/utils/number.js +0 -1
  17. package/lib/cjs/utils/object.d.ts +5 -1
  18. package/lib/cjs/utils/object.js +9 -2
  19. package/lib/cjs/utils/string.d.ts +0 -1
  20. package/lib/cjs/utils/string.js +0 -1
  21. package/lib/cjs/utils/url.d.ts +0 -1
  22. package/lib/cjs/utils/url.js +0 -1
  23. package/lib/cjs/utils/websocket.d.ts +0 -1
  24. package/lib/cjs/utils/websocket.js +0 -1
  25. package/lib/cjs/utils/window.d.ts +0 -1
  26. package/lib/cjs/utils/window.js +0 -1
  27. package/lib/esm/index.d.ts +5 -5
  28. package/lib/esm/index.js +5 -5
  29. package/lib/esm/utils/array.d.ts +7 -1
  30. package/lib/esm/utils/array.js +21 -1
  31. package/lib/esm/utils/browser.d.ts +1 -1
  32. package/lib/esm/utils/browser.js +8 -4
  33. package/lib/esm/utils/cache.d.ts +15 -5
  34. package/lib/esm/utils/cache.js +10 -5
  35. package/lib/esm/utils/image.d.ts +0 -1
  36. package/lib/esm/utils/image.js +0 -1
  37. package/lib/esm/utils/localStorage.d.ts +33 -0
  38. package/lib/esm/utils/localStorage.js +97 -0
  39. package/lib/esm/utils/logger.d.ts +0 -1
  40. package/lib/esm/utils/logger.js +0 -1
  41. package/lib/esm/utils/number.d.ts +0 -1
  42. package/lib/esm/utils/number.js +0 -1
  43. package/lib/esm/utils/object.d.ts +5 -1
  44. package/lib/esm/utils/object.js +7 -1
  45. package/lib/esm/utils/string.d.ts +0 -1
  46. package/lib/esm/utils/string.js +0 -1
  47. package/lib/esm/utils/url.d.ts +0 -1
  48. package/lib/esm/utils/url.js +0 -1
  49. package/lib/esm/utils/websocket.d.ts +0 -1
  50. package/lib/esm/utils/websocket.js +0 -1
  51. package/lib/esm/utils/window.d.ts +0 -1
  52. package/lib/esm/utils/window.js +0 -1
  53. package/lib/umd/utils.js +1 -2
  54. package/lib/umd/utils.js.LICENSE.txt +1 -1
  55. package/package.json +16 -15
  56. package/lib/cjs/index.d.ts.map +0 -1
  57. package/lib/cjs/index.js.map +0 -1
  58. package/lib/cjs/utils/array.d.ts.map +0 -1
  59. package/lib/cjs/utils/array.js.map +0 -1
  60. package/lib/cjs/utils/browser.d.ts.map +0 -1
  61. package/lib/cjs/utils/browser.js.map +0 -1
  62. package/lib/cjs/utils/cache.d.ts.map +0 -1
  63. package/lib/cjs/utils/cache.js.map +0 -1
  64. package/lib/cjs/utils/image.d.ts.map +0 -1
  65. package/lib/cjs/utils/image.js.map +0 -1
  66. package/lib/cjs/utils/logger.d.ts.map +0 -1
  67. package/lib/cjs/utils/logger.js.map +0 -1
  68. package/lib/cjs/utils/number.d.ts.map +0 -1
  69. package/lib/cjs/utils/number.js.map +0 -1
  70. package/lib/cjs/utils/object.d.ts.map +0 -1
  71. package/lib/cjs/utils/object.js.map +0 -1
  72. package/lib/cjs/utils/string.d.ts.map +0 -1
  73. package/lib/cjs/utils/string.js.map +0 -1
  74. package/lib/cjs/utils/url.d.ts.map +0 -1
  75. package/lib/cjs/utils/url.js.map +0 -1
  76. package/lib/cjs/utils/websocket.d.ts.map +0 -1
  77. package/lib/cjs/utils/websocket.js.map +0 -1
  78. package/lib/cjs/utils/window.d.ts.map +0 -1
  79. package/lib/cjs/utils/window.js.map +0 -1
  80. package/lib/esm/index.d.ts.map +0 -1
  81. package/lib/esm/index.js.map +0 -1
  82. package/lib/esm/utils/array.d.ts.map +0 -1
  83. package/lib/esm/utils/array.js.map +0 -1
  84. package/lib/esm/utils/browser.d.ts.map +0 -1
  85. package/lib/esm/utils/browser.js.map +0 -1
  86. package/lib/esm/utils/cache.d.ts.map +0 -1
  87. package/lib/esm/utils/cache.js.map +0 -1
  88. package/lib/esm/utils/image.d.ts.map +0 -1
  89. package/lib/esm/utils/image.js.map +0 -1
  90. package/lib/esm/utils/logger.d.ts.map +0 -1
  91. package/lib/esm/utils/logger.js.map +0 -1
  92. package/lib/esm/utils/number.d.ts.map +0 -1
  93. package/lib/esm/utils/number.js.map +0 -1
  94. package/lib/esm/utils/object.d.ts.map +0 -1
  95. package/lib/esm/utils/object.js.map +0 -1
  96. package/lib/esm/utils/string.d.ts.map +0 -1
  97. package/lib/esm/utils/string.js.map +0 -1
  98. package/lib/esm/utils/url.d.ts.map +0 -1
  99. package/lib/esm/utils/url.js.map +0 -1
  100. package/lib/esm/utils/websocket.d.ts.map +0 -1
  101. package/lib/esm/utils/websocket.js.map +0 -1
  102. package/lib/esm/utils/window.d.ts.map +0 -1
  103. package/lib/esm/utils/window.js.map +0 -1
  104. package/lib/umd/utils.js.map +0 -1
@@ -28,7 +28,7 @@ export const loadVersionBrowser = () => {
28
28
  browsername = brand.substr(brand.indexOf(' ') + 1);
29
29
  return {
30
30
  name: browsername,
31
- version: browserversion,
31
+ version: browserversion
32
32
  };
33
33
  }
34
34
  }
@@ -37,7 +37,7 @@ export const loadVersionBrowser = () => {
37
37
  if (chromeVersion !== null) {
38
38
  return {
39
39
  name: 'chrome',
40
- version: chromeVersion,
40
+ version: chromeVersion
41
41
  };
42
42
  }
43
43
  }
@@ -64,7 +64,11 @@ export const loadVersionBrowser = () => {
64
64
  }
65
65
  return {
66
66
  name: M[0],
67
- version: M[1],
67
+ version: M[1]
68
68
  };
69
69
  };
70
- //# sourceMappingURL=browser.js.map
70
+ export const iOS = () => {
71
+ return (['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) ||
72
+ // iPad on iOS 13 detection
73
+ (navigator.userAgent.includes('Mac') && 'ontouchend' in document));
74
+ };
@@ -2,8 +2,12 @@
2
2
  * LruCache interface
3
3
  */
4
4
  export interface LruCacheType<T> {
5
- get: (key: string, value?: T) => T;
6
- set: (key: string, value: T) => void;
5
+ get: (key: string, value?: T, options?: {
6
+ noSsr: boolean;
7
+ }) => T;
8
+ set: (key: string, value: T, options?: {
9
+ noSsr: boolean;
10
+ }) => void;
7
11
  hasKey: (key: string) => boolean;
8
12
  delete: (key: string) => void;
9
13
  deleteKeys: (keys: string[]) => void;
@@ -17,6 +21,7 @@ export interface LruCacheType<T> {
17
21
  export declare class LruCache<T> {
18
22
  private values;
19
23
  private maxEntries;
24
+ private ssr;
20
25
  /**
21
26
  * Initialize Cache
22
27
  * @param maxEntries
@@ -26,14 +31,20 @@ export declare class LruCache<T> {
26
31
  * Get a key from the map store
27
32
  * @param key
28
33
  * @param value
34
+ * @param options
29
35
  */
30
- get(key: string, value?: T): T;
36
+ get(key: string, value?: T, options?: {
37
+ noSsr: boolean;
38
+ }): T;
31
39
  /**
32
40
  * Set a key in the store
33
41
  * @param key
34
42
  * @param value
43
+ * @param options
35
44
  */
36
- set(key: string, value: T): void;
45
+ set(key: string, value: T, options?: {
46
+ noSsr: boolean;
47
+ }): void;
37
48
  /**
38
49
  * Check if key is in cache
39
50
  * @param key
@@ -77,4 +88,3 @@ export declare enum CacheStrategies {
77
88
  */
78
89
  declare const cache: LruCacheType<any>;
79
90
  export default cache;
80
- //# sourceMappingURL=cache.d.ts.map
@@ -9,7 +9,8 @@ export class LruCache {
9
9
  constructor(maxEntries = 10000) {
10
10
  this.values = new Map();
11
11
  this.maxEntries = maxEntries;
12
- if (typeof window !== 'undefined') {
12
+ this.ssr = typeof window === 'undefined';
13
+ if (!this.ssr) {
13
14
  window['__viewSCCache'] = this.values;
14
15
  }
15
16
  }
@@ -17,8 +18,9 @@ export class LruCache {
17
18
  * Get a key from the map store
18
19
  * @param key
19
20
  * @param value
21
+ * @param options
20
22
  */
21
- get(key, value) {
23
+ get(key, value, options = { noSsr: true }) {
22
24
  const hasKey = this.values.has(key);
23
25
  let entry;
24
26
  if (hasKey) {
@@ -30,7 +32,7 @@ export class LruCache {
30
32
  else if (value) {
31
33
  // insert value if passed
32
34
  entry = value;
33
- this.values.set(key, entry);
35
+ !(this.ssr && options.noSsr) && this.values.set(key, entry);
34
36
  }
35
37
  return entry;
36
38
  }
@@ -38,8 +40,12 @@ export class LruCache {
38
40
  * Set a key in the store
39
41
  * @param key
40
42
  * @param value
43
+ * @param options
41
44
  */
42
- set(key, value) {
45
+ set(key, value, options = { noSsr: true }) {
46
+ if (this.ssr && options.noSsr) {
47
+ return;
48
+ }
43
49
  if (this.values.size >= this.maxEntries) {
44
50
  // least-recently used cache eviction strategy
45
51
  const keyToDelete = this.values.keys().next().value;
@@ -115,4 +121,3 @@ export var CacheStrategies;
115
121
  */
116
122
  const cache = new LruCache();
117
123
  export default cache;
118
- //# sourceMappingURL=cache.js.map
@@ -1,3 +1,2 @@
1
1
  declare const resizeImage: (file: any) => Promise<unknown>;
2
2
  export { resizeImage };
3
- //# sourceMappingURL=image.d.ts.map
@@ -44,4 +44,3 @@ const resizeImage = (file) => new Promise((resolve, reject) => {
44
44
  reader.readAsDataURL(file);
45
45
  });
46
46
  export { resizeImage };
47
- //# sourceMappingURL=image.js.map
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Manage window.localStorage
3
+ */
4
+ export declare class LocalStorageDB {
5
+ /**
6
+ * Set a key in window.localStorage
7
+ * @param key
8
+ * @param value
9
+ */
10
+ static set(key: any, value: any): void;
11
+ /**
12
+ * Get a key from window.localStorage, else return null
13
+ * @param key
14
+ */
15
+ static get(key: any): any;
16
+ /**
17
+ * Get all keys
18
+ */
19
+ static getAll(): any[];
20
+ /**
21
+ * Remove a single item from window.localStorage
22
+ * @param key
23
+ */
24
+ static remove(key: any): void;
25
+ /**
26
+ * Clear all keys from window.localStorage
27
+ */
28
+ static clearAll(): void;
29
+ /**
30
+ * Check if localStorage is supported
31
+ */
32
+ static checkifSupport(): boolean;
33
+ }
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Manage window.localStorage
3
+ */
4
+ export class LocalStorageDB {
5
+ /**
6
+ * Set a key in window.localStorage
7
+ * @param key
8
+ * @param value
9
+ */
10
+ static set(key, value) {
11
+ if (this.checkifSupport()) {
12
+ try {
13
+ window.localStorage.setItem(key, value);
14
+ }
15
+ catch (e) {
16
+ console.error(e);
17
+ }
18
+ }
19
+ else {
20
+ console.error('No support. Use a fallback such as browser cookies or store on the server.');
21
+ }
22
+ }
23
+ /**
24
+ * Get a key from window.localStorage, else return null
25
+ * @param key
26
+ */
27
+ static get(key) {
28
+ try {
29
+ let data = window.localStorage.getItem(key);
30
+ if (data && typeof data === 'object') {
31
+ return JSON.parse(data);
32
+ }
33
+ else {
34
+ return data;
35
+ }
36
+ }
37
+ catch (e) {
38
+ return null;
39
+ }
40
+ }
41
+ /**
42
+ * Get all keys
43
+ */
44
+ static getAll() {
45
+ let array = [];
46
+ for (let i = 0; i < window.localStorage.length; i++) {
47
+ let key = localStorage.key(i);
48
+ array.push(this.get(key));
49
+ }
50
+ return array;
51
+ }
52
+ /**
53
+ * Remove a single item from window.localStorage
54
+ * @param key
55
+ */
56
+ static remove(key) {
57
+ try {
58
+ window.localStorage.removeItem(key);
59
+ if (window.localStorage.length == 0) {
60
+ this.clearAll();
61
+ }
62
+ }
63
+ catch (e) {
64
+ console.error(e);
65
+ }
66
+ finally {
67
+ if (this.get(key)) {
68
+ delete window.localStorage[key];
69
+ if (window.localStorage.length == 0) {
70
+ this.clearAll();
71
+ }
72
+ }
73
+ }
74
+ }
75
+ /**
76
+ * Clear all keys from window.localStorage
77
+ */
78
+ static clearAll() {
79
+ try {
80
+ window.localStorage.clear();
81
+ }
82
+ catch (e) {
83
+ console.error(e);
84
+ }
85
+ }
86
+ /**
87
+ * Check if localStorage is supported
88
+ */
89
+ static checkifSupport() {
90
+ try {
91
+ return 'localStorage' in window && window['localStorage'] !== null;
92
+ }
93
+ catch (e) {
94
+ return false;
95
+ }
96
+ }
97
+ }
@@ -8,4 +8,3 @@ export declare class Logger {
8
8
  static log(scope: any, message: any): void;
9
9
  static debug(scope: any, message: any): void;
10
10
  }
11
- //# sourceMappingURL=logger.d.ts.map
@@ -18,4 +18,3 @@ export class Logger {
18
18
  console.debug(`%c[${scope}]`, 'color:#008080', ` ${message}`);
19
19
  }
20
20
  }
21
- //# sourceMappingURL=logger.js.map
@@ -3,4 +3,3 @@
3
3
  * @param v
4
4
  */
5
5
  export declare function isInteger(v: any): boolean;
6
- //# sourceMappingURL=number.d.ts.map
@@ -5,4 +5,3 @@
5
5
  export function isInteger(v) {
6
6
  return !isNaN(v) && parseInt(String(Number(v))) == v && !isNaN(parseInt(String(v), 10));
7
7
  }
8
- //# sourceMappingURL=number.js.map
@@ -16,4 +16,8 @@ export declare function mergeDeep(target: object, source: object): object;
16
16
  * @param keys
17
17
  */
18
18
  export declare function objectWithoutProperties<T>(obj: T | null, keys: string[]): T;
19
- //# sourceMappingURL=object.d.ts.map
19
+ /**
20
+ * Check if v is a func
21
+ * @param v
22
+ */
23
+ export declare function isFunc(v: any): boolean;
@@ -44,4 +44,10 @@ export function objectWithoutProperties(obj, keys) {
44
44
  });
45
45
  return target;
46
46
  }
47
- //# sourceMappingURL=object.js.map
47
+ /**
48
+ * Check if v is a func
49
+ * @param v
50
+ */
51
+ export function isFunc(v) {
52
+ return typeof v === 'function';
53
+ }
@@ -41,4 +41,3 @@ export declare function fallbackCopyTextToClipboard(text: any): Promise<void>;
41
41
  */
42
42
  export declare function copyTextToClipboard(text: any): Promise<void>;
43
43
  export declare function slugify(str: any): any;
44
- //# sourceMappingURL=string.d.ts.map
@@ -100,4 +100,3 @@ export function slugify(str) {
100
100
  .replace(/[\s_-]+/g, '-')
101
101
  .replace(/^-+|-+$/g, '');
102
102
  }
103
- //# sourceMappingURL=string.js.map
@@ -38,4 +38,3 @@ export declare const getQueryStringParameter: (uri: any, key: any) => string;
38
38
  * Add or update a query string parameter
39
39
  */
40
40
  export declare const updateQueryStringParameter: (uri: any, key: any, value: any) => any;
41
- //# sourceMappingURL=url.d.ts.map
@@ -101,4 +101,3 @@ export const updateQueryStringParameter = (uri, key, value) => {
101
101
  }
102
102
  return uri;
103
103
  };
104
- //# sourceMappingURL=url.js.map
@@ -174,4 +174,3 @@ export default class WSClient implements WSClientType {
174
174
  */
175
175
  close(): void;
176
176
  }
177
- //# sourceMappingURL=websocket.d.ts.map
@@ -238,4 +238,3 @@ export default class WSClient {
238
238
  }
239
239
  }
240
240
  }
241
- //# sourceMappingURL=websocket.js.map
@@ -2,4 +2,3 @@ export declare function getWindowWidth(): number;
2
2
  export declare function getWindowHeight(): number;
3
3
  export declare function getHighestSafeWindowContext(self?: Window & typeof globalThis): any;
4
4
  export declare function isClientSideRendering(): boolean;
5
- //# sourceMappingURL=window.d.ts.map
@@ -33,4 +33,3 @@ export function getHighestSafeWindowContext(self = global.window.self) {
33
33
  export function isClientSideRendering() {
34
34
  return typeof window !== 'undefined';
35
35
  }
36
- //# sourceMappingURL=window.js.map
package/lib/umd/utils.js CHANGED
@@ -1,3 +1,2 @@
1
1
  /*! For license information please see utils.js.LICENSE.txt */
2
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.SelfCommunityUtils=t():e.SelfCommunityUtils=t()}(self,(()=>(()=>{"use strict";var e={469:(e,t)=>{t.__esModule=!0,t.arraysEqual=void 0,t.arraysEqual=(e,t)=>{if(e===t)return!0;if(null==e||null==t)return!1;if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}},285:(e,t)=>{t.__esModule=!0,t.loadVersionBrowser=void 0,t.loadVersionBrowser=()=>{if("userAgentData"in navigator){const e=navigator.userAgentData;let t,n,r=null;for(let i=0;i<e.brands.length;i++){const s=e.brands[i].brand;if(n=e.brands[i].version,null!==s.match(/opera|chrome|edge|safari|firefox|msie|trident/i)){if(null===s.match(/chrome/i))return t=s.substr(s.indexOf(" ")+1),{name:t,version:n};r=n}}if(null!==r)return{name:"chrome",version:r}}let e,t=navigator.userAgent,n=t.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];return/trident/i.test(n[1])?(e=/\brv[ :]+(\d+)/g.exec(t)||[],{name:"IE",version:e[1]||""}):"Chrome"===n[1]&&(e=t.match(/\bOPR\/(\d+)/),null!=e)?{name:"Opera",version:e[1]}:(n=n[2]?[n[1],n[2]]:[navigator.appName,navigator.appVersion,"-?"],null!=(e=t.match(/version\/(\d+)/i))&&n.splice(1,1,e[1]),{name:n[0],version:n[1]})}},466:(e,t)=>{t.__esModule=!0,t.default=t.LruCache=t.CacheStrategies=void 0;class n{constructor(e=1e4){this.values=new Map,this.maxEntries=e,"undefined"!=typeof window&&(window.__viewSCCache=this.values)}get(e,t){let n;return this.values.has(e)?(n=this.values.get(e),this.values.delete(e),this.values.set(e,n)):t&&(n=t,this.values.set(e,n)),n}set(e,t){if(this.values.size>=this.maxEntries){const e=this.values.keys().next().value;this.values.delete(e)}this.values.set(e,t)}hasKey(e){return this.values.has(e)}delete(e){this.values.has(e)&&this.values.delete(e)}deleteKeys(e){e.forEach((e=>{this.values.has(e)&&this.values.delete(e)}))}deleteKeysWithPrefix(e){this.values.forEach(((t,n)=>{n.startsWith(e)&&this.values.delete(n)}))}clean(){this.values=new Map}evaluate(){console.log(this.values)}}let r;t.LruCache=n,t.CacheStrategies=r,function(e){e.CACHE_FIRST="Cache-first",e.NETWORK_ONLY="Network-only",e.STALE_WHILE_REVALIDATE="Stale-While-Revalidate"}(r||(t.CacheStrategies=r={}));var i=new n;t.default=i},858:(e,t)=>{t.__esModule=!0,t.resizeImage=void 0,t.resizeImage=e=>new Promise(((t,n)=>{const r=new FileReader;r.onload=e=>{let n=new Image;n.onload=function(e){let r=document.createElement("canvas"),i=1920,s=n.width,o=n.height;s>o?s>i&&(o*=i/s,s=i):o>i&&(s*=i/o,o=i),r.width=s,r.height=o,r.getContext("2d").drawImage(n,0,0,s,o),t((e=>{let t;t=e.split(",")[0].indexOf("base64")>=0?atob(e.split(",")[1]):unescape(e.split(",")[1]);let n=e.split(",")[0].split(":")[1].split(";")[0],r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return new Blob([r],{type:n})})(r.toDataURL("image/jpeg")))},n.src=e.target.result},r.onerror=n,r.readAsDataURL(e)}))},502:(e,t)=>{t.__esModule=!0,t.Logger=void 0,t.Logger=class{static info(e,t){console.info(`%c[${e}]`,"color:#008080",` ${t}`)}static warn(e,t){console.warn(`%c[${e}]`,"color:#008080",` ${t}`)}static error(e,t){console.error(`%c[${e}]`,"color:#008080",` ${t}`)}static log(e,t){console.log(`%c[${e}]`,"color:#008080",` ${t}`)}static debug(e,t){console.debug(`%c[${e}]`,"color:#008080",` ${t}`)}}},597:(e,t)=>{t.__esModule=!0,t.isInteger=function(e){return!isNaN(e)&&parseInt(String(Number(e)))==e&&!isNaN(parseInt(String(e),10))}},297:(e,t)=>{function n(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}t.__esModule=!0,t.isObject=n,t.mergeDeep=function e(t,r){let i=Object.assign({},t);return n(t)&&n(r)&&Object.keys(r).forEach((s=>{n(r[s])?s in t?i[s]=e(t[s],r[s]):Object.assign(i,{[s]:r[s]}):Object.assign(i,{[s]:r[s]})})),i},t.objectWithoutProperties=function(e,t){let n=e?Object.assign({},e):null;return t.forEach((function(e){n&&e in n&&delete n[e]})),n}},884:(e,t)=>{function n(e){let t=document.createElement("textarea");t.value=e,t.style.top="0",t.style.left="0",t.style.position="fixed",document.body.appendChild(t),t.focus(),t.select();try{return document.execCommand("copy"),document.body.removeChild(t),Promise.resolve()}catch(e){return document.body.removeChild(t),Promise.reject(e)}}t.__esModule=!0,t.camelCase=function(e){return e.toLowerCase().replace(/[-_]+/g," ").replace(/[^\w\s]/g,"").replace(/ (.)/g,(e=>e.toUpperCase())).replace(/ /g,"")},t.capitalize=function(e){let t="",n=e.split(" ");for(let e=0;e<n.length;e++)t+=n[e].substring(0,1).toUpperCase()+n[e].substring(1,n[e].length);return t},t.copyTextToClipboard=function(e){return navigator.clipboard?navigator.clipboard.writeText(e):n(e)},t.fallbackCopyTextToClipboard=n,t.isString=function(e){return"string"==typeof e||e instanceof String},t.random=function(){return(Math.random()+1).toString(36).substring(7)},t.slugify=function(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")},t.stripHtml=function(e){return e.replace(/<[^>]*>?/gm,"").trim()}},735:(e,t)=>{t.__esModule=!0,t.appendURLSearchParams=function(e,t){let n=e;if(t.length&&n){const e=Object.keys(t[0])[0];n+=(n.split("?")[1]?"&":"?")+`${e}=${t[0][e]}`,t.slice(1).map((e=>{const t=Object.keys(e)[0];n+=`&${t}=${e[t]}`}))}return n},t.urlReplacer=t.urlB64ToUint8Array=t.updateQueryStringParameter=t.isValidUrls=t.isValidUrl=t.getQueryStringParameter=t.getDomain=void 0,t.urlReplacer=e=>t=>function(e,t){const n=/\$\(([^)]+)?\)/g;let r=n.exec(e);for(;r;)e=e.replace(r[0],t[r[1]]),n.lastIndex=0,r=n.exec(e);return e}(e,t),t.getDomain=e=>{const t=e.match(/^https?\:\/\/([^\/?#]+)(?:[\/?#]|$)/i);return t&&t[1]?t[1]:""};const n=e=>/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-/]))?/.test(e);t.isValidUrl=n,t.isValidUrls=(e,t)=>e.trim().split(t).every(n),t.urlB64ToUint8Array=e=>{const t=(e+"=".repeat((4-e.length%4)%4)).replace(/-/g,"+").replace(/_/g,"/"),n=window.atob(t),r=new Uint8Array(n.length);for(let e=0;e<n.length;++e)r[e]=n.charCodeAt(e);return r},t.getQueryStringParameter=(e,t)=>e&&t?new URL(e).searchParams.get(t):null,t.updateQueryStringParameter=(e,t,n)=>{if(e&&t&&n){let r=new RegExp("([?&])"+t+"=.*?(&|$)","i"),i=-1!==e.indexOf("?")?"&":"?";return e.match(r)?e.replace(r,"$1"+t+"="+n+"$2"):e+i+t+"="+n}return e}},507:(e,t)=>{t.__esModule=!0,t.default=void 0;class n{constructor(e){this._attempts=1,this._heartbeatInterval=null,this._missedHeartbeats=0,this.isValidOptions(e)&&(this._cfg=Object.assign({},{heartbeatMsg:null,debug:!1,mustReconnect:!0},e),this.connect())}static getInstance(e){return this._instance=this._instance||new n(e),this._instance}connect(){try{if(this._ws&&(this.isConnecting()||this.isConnected()))return void(this._cfg.debug&&console.info("Websocket is connecting or already connected."));"function"==typeof this._cfg.connecting&&this._cfg.connecting(),this._cfg.debug&&console.info(`Connecting to ${this._cfg.uri} ...`),this._ws=new WebSocket(this._cfg.uri,this._cfg.protocols),this._ws.onopen=this.onOpen.bind(this),this._ws.onmessage=this.onMessage.bind(this),this._ws.onerror=this.onError.bind(this),this._ws.onclose=this.onClose.bind(this),this._timer=null}catch(e){console.error(e),this.tryToReconnect()}}isValidOptions(e){let t=!1;return e?(e.uri||(console.error("Invalid WSClient Uri options."),t=!0),e&&e.connecting&&"function"!=typeof e.connecting&&(console.error("Invalid WSClient connecting options."),t=!0),e&&e.connected&&"function"!=typeof e.connected&&(console.error("Invalid WSClient connected options."),t=!0),e&&e.receiveMessage&&"function"!=typeof e.receiveMessage&&(console.error("Invalid WSClient receiveMessage options."),t=!0),e&&e.disconnected&&"function"!=typeof e.disconnected&&(console.error("Invalid WSClient connecting options."),t=!0),e&&e.heartbeatMsg&&"string"!=typeof e.heartbeatMsg&&(console.error("Invalid WSClient heartbeatMsg options."),t=!0),e&&e.debug&&"boolean"!=typeof e.debug&&(console.error("Invalid WSClient debug options."),t=!0),!t):(console.error("Invalid WSClient options."),t)}tryToReconnect(){if(this._cfg.mustReconnect&&!this._timer){this._cfg.debug&&console.info("Reconnecting...");let e=this.generateInterval(this._attempts);this._timer=setTimeout(this.reconnect.bind(this),e)}}reconnect(){this._attempts++,this.connect()}sendHeartbeat(){try{if(this._missedHeartbeats++,this._missedHeartbeats>3)throw new Error("Too many missed heartbeats.");this._ws.send(this._cfg.heartbeatMsg)}catch(e){clearInterval(this._heartbeatInterval),this._heartbeatInterval=null,this._cfg.debug&&console.warn(`Closing connection. Reason: ${e.message}`),this.isClosing()||this.isClosed()||this.close()}}onOpen(){this._cfg.debug&&console.info("Connected!"),this._attempts=1,this._cfg.heartbeatMsg&&null===this._heartbeatInterval&&(this._missedHeartbeats=0,this._heartbeatInterval=setInterval(this.sendHeartbeat.bind(this),5e3)),"function"==typeof this._cfg.connected&&this._cfg.connected()}onClose(e){this._cfg.debug&&console.info("Connection closed!"),"function"==typeof this._cfg.disconnected&&this._cfg.disconnected(e),this.tryToReconnect()}onError(e){this._cfg.debug&&console.error("Websocket connection is broken!"),this._cfg.debug&&console.error(e)}onMessage(e){if(this._cfg.heartbeatMsg&&e.data===this._cfg.heartbeatMsg)this._missedHeartbeats=0;else if("function"==typeof this._cfg.receiveMessage)return this._cfg.receiveMessage(e.data)}generateInterval(e){let t=1e3*(Math.pow(2,e)-1);return t>3e4&&(t=3e4),Math.random()*t}sendMessage(e){this._ws&&this._ws.send(e)}getState(){return this._ws&&this._ws.readyState}isConnecting(){return this._ws&&0===this._ws.readyState}isConnected(){return this._ws&&1===this._ws.readyState}isClosing(){return this._ws&&2===this._ws.readyState}isClosed(){return this._ws&&3===this._ws.readyState}close(){clearInterval(this._heartbeatInterval),this._cfg.mustReconnect=!1,this.isClosing()&&this.isClosed()||(this._ws.close(),this._cfg.debug&&console.error("Websocket closed."))}}t.default=n},474:(e,t,n)=>{t.__esModule=!0,t.getHighestSafeWindowContext=function e(t=n.g.window.self){return t===n.g.window.top||(()=>{try{return n.g.window.location.hostname!==n.g.window.parent.location.hostname}catch(e){return!0}})()?t:e(t.parent)},t.getWindowHeight=function(){return void 0!==n.g.window?n.g.window.innerHeight:0},t.getWindowWidth=function(){return void 0!==n.g.window?n.g.window.innerWidth:0},t.isClientSideRendering=function(){return"undefined"!=typeof window}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,n),s.exports}n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}();var r={};return(()=>{var e=r;e.__esModule=!0;var t=n(884);e.capitalize=t.capitalize,e.isString=t.isString,e.stripHtml=t.stripHtml,e.camelCase=t.camelCase,e.copyTextToClipboard=t.copyTextToClipboard,e.fallbackCopyTextToClipboard=t.fallbackCopyTextToClipboard,e.random=t.random,e.slugify=t.slugify;var i=n(735);e.isValidUrl=i.isValidUrl,e.isValidUrls=i.isValidUrls,e.urlReplacer=i.urlReplacer,e.getDomain=i.getDomain,e.appendURLSearchParams=i.appendURLSearchParams,e.urlB64ToUint8Array=i.urlB64ToUint8Array,e.getQueryStringParameter=i.getQueryStringParameter,e.updateQueryStringParameter=i.updateQueryStringParameter;var s=n(474);e.getHighestSafeWindowContext=s.getHighestSafeWindowContext,e.getWindowWidth=s.getWindowWidth,e.getWindowHeight=s.getWindowHeight,e.isClientSideRendering=s.isClientSideRendering;var o=n(297);e.mergeDeep=o.mergeDeep,e.isObject=o.isObject,e.objectWithoutProperties=o.objectWithoutProperties;var a=n(597);e.isInteger=a.isInteger;var c=n(469);e.arraysEqual=c.arraysEqual;var l=n(285);e.loadVersionBrowser=l.loadVersionBrowser;var u=p(n(466));e.LRUCache=u.default,e.LruCache=u.LruCache,e.LruCacheType=u.LruCacheType,e.CacheStrategies=u.CacheStrategies;var d=n(502);e.Logger=d.Logger;var h=p(n(507));e.WSClient=h.default,e.WSClientType=h.WSClientType,e.WSClientPropTypes=h.WSClientPropTypes;var g=n(858);function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function p(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=i?Object.getOwnPropertyDescriptor(e,s):null;o&&(o.get||o.set)?Object.defineProperty(r,s,o):r[s]=e[s]}return r.default=e,n&&n.set(e,r),r}e.resizeImage=g.resizeImage})(),r})()));
3
- //# sourceMappingURL=utils.js.map
2
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.SelfCommunityUtils=t():e.SelfCommunityUtils=t()}(self,(()=>(()=>{"use strict";var e={469:(e,t)=>{t.__esModule=!0,t.groupBy=t.arraysEqual=void 0,t.arraysEqual=(e,t)=>{if(e===t)return!0;if(null==e||null==t)return!1;if(e.length!==t.length)return!1;for(let r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0},t.groupBy=(e,t)=>e.reduce((function(e,r){let n="function"==typeof t?t(r):r[t];return e.hasOwnProperty(n)||(e[n]=[]),e[n].push(r),e}),{})},285:(e,t)=>{t.__esModule=!0,t.loadVersionBrowser=t.iOS=void 0,t.loadVersionBrowser=()=>{if("userAgentData"in navigator){const e=navigator.userAgentData;let t,r,n=null;for(let i=0;i<e.brands.length;i++){const o=e.brands[i].brand;if(r=e.brands[i].version,null!==o.match(/opera|chrome|edge|safari|firefox|msie|trident/i)){if(null===o.match(/chrome/i))return t=o.substr(o.indexOf(" ")+1),{name:t,version:r};n=r}}if(null!==n)return{name:"chrome",version:n}}let e,t=navigator.userAgent,r=t.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];return/trident/i.test(r[1])?(e=/\brv[ :]+(\d+)/g.exec(t)||[],{name:"IE",version:e[1]||""}):"Chrome"===r[1]&&(e=t.match(/\bOPR\/(\d+)/),null!=e)?{name:"Opera",version:e[1]}:(r=r[2]?[r[1],r[2]]:[navigator.appName,navigator.appVersion,"-?"],null!=(e=t.match(/version\/(\d+)/i))&&r.splice(1,1,e[1]),{name:r[0],version:r[1]})},t.iOS=()=>["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document},466:(e,t)=>{t.__esModule=!0,t.default=t.LruCache=t.CacheStrategies=void 0;class r{constructor(e=1e4){this.values=new Map,this.maxEntries=e,this.ssr="undefined"==typeof window,this.ssr||(window.__viewSCCache=this.values)}get(e,t,r={noSsr:!0}){let n;return this.values.has(e)?(n=this.values.get(e),this.values.delete(e),this.values.set(e,n)):t&&(n=t,(!this.ssr||!r.noSsr)&&this.values.set(e,n)),n}set(e,t,r={noSsr:!0}){if(!this.ssr||!r.noSsr){if(this.values.size>=this.maxEntries){const e=this.values.keys().next().value;this.values.delete(e)}this.values.set(e,t)}}hasKey(e){return this.values.has(e)}delete(e){this.values.has(e)&&this.values.delete(e)}deleteKeys(e){e.forEach((e=>{this.values.has(e)&&this.values.delete(e)}))}deleteKeysWithPrefix(e){this.values.forEach(((t,r)=>{r.startsWith(e)&&this.values.delete(r)}))}clean(){this.values=new Map}evaluate(){console.log(this.values)}}let n;t.LruCache=r,t.CacheStrategies=n,function(e){e.CACHE_FIRST="Cache-first",e.NETWORK_ONLY="Network-only",e.STALE_WHILE_REVALIDATE="Stale-While-Revalidate"}(n||(t.CacheStrategies=n={}));var i=new r;t.default=i},858:(e,t)=>{t.__esModule=!0,t.resizeImage=void 0,t.resizeImage=e=>new Promise(((t,r)=>{const n=new FileReader;n.onload=e=>{let r=new Image;r.onload=function(e){let n=document.createElement("canvas"),i=1920,o=r.width,s=r.height;o>s?o>i&&(s*=i/o,o=i):s>i&&(o*=i/s,s=i),n.width=o,n.height=s,n.getContext("2d").drawImage(r,0,0,o,s),t((e=>{let t;t=e.split(",")[0].indexOf("base64")>=0?atob(e.split(",")[1]):unescape(e.split(",")[1]);let r=e.split(",")[0].split(":")[1].split(";")[0],n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return new Blob([n],{type:r})})(n.toDataURL("image/jpeg")))},r.src=e.target.result},n.onerror=r,n.readAsDataURL(e)}))},153:(e,t)=>{t.__esModule=!0,t.LocalStorageDB=void 0,t.LocalStorageDB=class{static set(e,t){if(this.checkifSupport())try{window.localStorage.setItem(e,t)}catch(e){console.error(e)}else console.error("No support. Use a fallback such as browser cookies or store on the server.")}static get(e){try{let t=window.localStorage.getItem(e);return t&&"object"==typeof t?JSON.parse(t):t}catch(e){return null}}static getAll(){let e=[];for(let t=0;t<window.localStorage.length;t++){let r=localStorage.key(t);e.push(this.get(r))}return e}static remove(e){try{window.localStorage.removeItem(e),0==window.localStorage.length&&this.clearAll()}catch(e){console.error(e)}finally{this.get(e)&&(delete window.localStorage[e],0==window.localStorage.length&&this.clearAll())}}static clearAll(){try{window.localStorage.clear()}catch(e){console.error(e)}}static checkifSupport(){try{return"localStorage"in window&&null!==window.localStorage}catch(e){return!1}}}},502:(e,t)=>{t.__esModule=!0,t.Logger=void 0,t.Logger=class{static info(e,t){console.info(`%c[${e}]`,"color:#008080",` ${t}`)}static warn(e,t){console.warn(`%c[${e}]`,"color:#008080",` ${t}`)}static error(e,t){console.error(`%c[${e}]`,"color:#008080",` ${t}`)}static log(e,t){console.log(`%c[${e}]`,"color:#008080",` ${t}`)}static debug(e,t){console.debug(`%c[${e}]`,"color:#008080",` ${t}`)}}},597:(e,t)=>{t.__esModule=!0,t.isInteger=function(e){return!isNaN(e)&&parseInt(String(Number(e)))==e&&!isNaN(parseInt(String(e),10))}},297:(e,t)=>{function r(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}t.__esModule=!0,t.isFunc=function(e){return"function"==typeof e},t.isObject=r,t.mergeDeep=function e(t,n){let i=Object.assign({},t);return r(t)&&r(n)&&Object.keys(n).forEach((o=>{r(n[o])?o in t?i[o]=e(t[o],n[o]):Object.assign(i,{[o]:n[o]}):Object.assign(i,{[o]:n[o]})})),i},t.objectWithoutProperties=function(e,t){let r=e?Object.assign({},e):null;return t.forEach((function(e){r&&e in r&&delete r[e]})),r}},884:(e,t)=>{function r(e){let t=document.createElement("textarea");t.value=e,t.style.top="0",t.style.left="0",t.style.position="fixed",document.body.appendChild(t),t.focus(),t.select();try{return document.execCommand("copy"),document.body.removeChild(t),Promise.resolve()}catch(e){return document.body.removeChild(t),Promise.reject(e)}}t.__esModule=!0,t.camelCase=function(e){return e.toLowerCase().replace(/[-_]+/g," ").replace(/[^\w\s]/g,"").replace(/ (.)/g,(e=>e.toUpperCase())).replace(/ /g,"")},t.capitalize=function(e){let t="",r=e.split(" ");for(let e=0;e<r.length;e++)t+=r[e].substring(0,1).toUpperCase()+r[e].substring(1,r[e].length);return t},t.copyTextToClipboard=function(e){return navigator.clipboard?navigator.clipboard.writeText(e):r(e)},t.fallbackCopyTextToClipboard=r,t.isString=function(e){return"string"==typeof e||e instanceof String},t.random=function(){return(Math.random()+1).toString(36).substring(7)},t.slugify=function(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")},t.stripHtml=function(e){return e.replace(/<[^>]*>?/gm,"").trim()}},735:(e,t)=>{t.__esModule=!0,t.appendURLSearchParams=function(e,t){let r=e;if(t.length&&r){const e=Object.keys(t[0])[0];r+=(r.split("?")[1]?"&":"?")+`${e}=${t[0][e]}`,t.slice(1).map((e=>{const t=Object.keys(e)[0];r+=`&${t}=${e[t]}`}))}return r},t.urlReplacer=t.urlB64ToUint8Array=t.updateQueryStringParameter=t.isValidUrls=t.isValidUrl=t.getQueryStringParameter=t.getDomain=void 0,t.urlReplacer=e=>t=>function(e,t){const r=/\$\(([^)]+)?\)/g;let n=r.exec(e);for(;n;)e=e.replace(n[0],t[n[1]]),r.lastIndex=0,n=r.exec(e);return e}(e,t),t.getDomain=e=>{const t=e.match(/^https?\:\/\/([^\/?#]+)(?:[\/?#]|$)/i);return t&&t[1]?t[1]:""};const r=e=>/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-/]))?/.test(e);t.isValidUrl=r,t.isValidUrls=(e,t)=>e.trim().split(t).every(r),t.urlB64ToUint8Array=e=>{const t=(e+"=".repeat((4-e.length%4)%4)).replace(/-/g,"+").replace(/_/g,"/"),r=window.atob(t),n=new Uint8Array(r.length);for(let e=0;e<r.length;++e)n[e]=r.charCodeAt(e);return n},t.getQueryStringParameter=(e,t)=>e&&t?new URL(e).searchParams.get(t):null,t.updateQueryStringParameter=(e,t,r)=>{if(e&&t&&r){let n=new RegExp("([?&])"+t+"=.*?(&|$)","i"),i=-1!==e.indexOf("?")?"&":"?";return e.match(n)?e.replace(n,"$1"+t+"="+r+"$2"):e+i+t+"="+r}return e}},507:(e,t)=>{t.__esModule=!0,t.default=void 0;class r{constructor(e){this._attempts=1,this._heartbeatInterval=null,this._missedHeartbeats=0,this.isValidOptions(e)&&(this._cfg=Object.assign({},{heartbeatMsg:null,debug:!1,mustReconnect:!0},e),this.connect())}static getInstance(e){return this._instance=this._instance||new r(e),this._instance}connect(){try{if(this._ws&&(this.isConnecting()||this.isConnected()))return void(this._cfg.debug&&console.info("Websocket is connecting or already connected."));"function"==typeof this._cfg.connecting&&this._cfg.connecting(),this._cfg.debug&&console.info(`Connecting to ${this._cfg.uri} ...`),this._ws=new WebSocket(this._cfg.uri,this._cfg.protocols),this._ws.onopen=this.onOpen.bind(this),this._ws.onmessage=this.onMessage.bind(this),this._ws.onerror=this.onError.bind(this),this._ws.onclose=this.onClose.bind(this),this._timer=null}catch(e){console.error(e),this.tryToReconnect()}}isValidOptions(e){let t=!1;return e?(e.uri||(console.error("Invalid WSClient Uri options."),t=!0),e&&e.connecting&&"function"!=typeof e.connecting&&(console.error("Invalid WSClient connecting options."),t=!0),e&&e.connected&&"function"!=typeof e.connected&&(console.error("Invalid WSClient connected options."),t=!0),e&&e.receiveMessage&&"function"!=typeof e.receiveMessage&&(console.error("Invalid WSClient receiveMessage options."),t=!0),e&&e.disconnected&&"function"!=typeof e.disconnected&&(console.error("Invalid WSClient connecting options."),t=!0),e&&e.heartbeatMsg&&"string"!=typeof e.heartbeatMsg&&(console.error("Invalid WSClient heartbeatMsg options."),t=!0),e&&e.debug&&"boolean"!=typeof e.debug&&(console.error("Invalid WSClient debug options."),t=!0),!t):(console.error("Invalid WSClient options."),t)}tryToReconnect(){if(this._cfg.mustReconnect&&!this._timer){this._cfg.debug&&console.info("Reconnecting...");let e=this.generateInterval(this._attempts);this._timer=setTimeout(this.reconnect.bind(this),e)}}reconnect(){this._attempts++,this.connect()}sendHeartbeat(){try{if(this._missedHeartbeats++,this._missedHeartbeats>3)throw new Error("Too many missed heartbeats.");this._ws.send(this._cfg.heartbeatMsg)}catch(e){clearInterval(this._heartbeatInterval),this._heartbeatInterval=null,this._cfg.debug&&console.warn(`Closing connection. Reason: ${e.message}`),this.isClosing()||this.isClosed()||this.close()}}onOpen(){this._cfg.debug&&console.info("Connected!"),this._attempts=1,this._cfg.heartbeatMsg&&null===this._heartbeatInterval&&(this._missedHeartbeats=0,this._heartbeatInterval=setInterval(this.sendHeartbeat.bind(this),5e3)),"function"==typeof this._cfg.connected&&this._cfg.connected()}onClose(e){this._cfg.debug&&console.info("Connection closed!"),"function"==typeof this._cfg.disconnected&&this._cfg.disconnected(e),this.tryToReconnect()}onError(e){this._cfg.debug&&console.error("Websocket connection is broken!"),this._cfg.debug&&console.error(e)}onMessage(e){if(this._cfg.heartbeatMsg&&e.data===this._cfg.heartbeatMsg)this._missedHeartbeats=0;else if("function"==typeof this._cfg.receiveMessage)return this._cfg.receiveMessage(e.data)}generateInterval(e){let t=1e3*(Math.pow(2,e)-1);return t>3e4&&(t=3e4),Math.random()*t}sendMessage(e){this._ws&&this._ws.send(e)}getState(){return this._ws&&this._ws.readyState}isConnecting(){return this._ws&&0===this._ws.readyState}isConnected(){return this._ws&&1===this._ws.readyState}isClosing(){return this._ws&&2===this._ws.readyState}isClosed(){return this._ws&&3===this._ws.readyState}close(){clearInterval(this._heartbeatInterval),this._cfg.mustReconnect=!1,this.isClosing()&&this.isClosed()||(this._ws.close(),this._cfg.debug&&console.error("Websocket closed."))}}t.default=r},474:(e,t,r)=>{t.__esModule=!0,t.getHighestSafeWindowContext=function e(t=r.g.window.self){return t===r.g.window.top||(()=>{try{return r.g.window.location.hostname!==r.g.window.parent.location.hostname}catch(e){return!0}})()?t:e(t.parent)},t.getWindowHeight=function(){return void 0!==r.g.window?r.g.window.innerHeight:0},t.getWindowWidth=function(){return void 0!==r.g.window?r.g.window.innerWidth:0},t.isClientSideRendering=function(){return"undefined"!=typeof window}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}();var n={};return(()=>{var e=n;e.__esModule=!0;var t=r(884);e.capitalize=t.capitalize,e.isString=t.isString,e.stripHtml=t.stripHtml,e.camelCase=t.camelCase,e.copyTextToClipboard=t.copyTextToClipboard,e.fallbackCopyTextToClipboard=t.fallbackCopyTextToClipboard,e.random=t.random,e.slugify=t.slugify;var i=r(735);e.isValidUrl=i.isValidUrl,e.isValidUrls=i.isValidUrls,e.urlReplacer=i.urlReplacer,e.getDomain=i.getDomain,e.appendURLSearchParams=i.appendURLSearchParams,e.urlB64ToUint8Array=i.urlB64ToUint8Array,e.getQueryStringParameter=i.getQueryStringParameter,e.updateQueryStringParameter=i.updateQueryStringParameter;var o=r(474);e.getHighestSafeWindowContext=o.getHighestSafeWindowContext,e.getWindowWidth=o.getWindowWidth,e.getWindowHeight=o.getWindowHeight,e.isClientSideRendering=o.isClientSideRendering;var s=r(297);e.mergeDeep=s.mergeDeep,e.isObject=s.isObject,e.objectWithoutProperties=s.objectWithoutProperties,e.isFunc=s.isFunc;var a=r(597);e.isInteger=a.isInteger;var l=r(469);e.arraysEqual=l.arraysEqual,e.groupBy=l.groupBy;var c=r(285);e.loadVersionBrowser=c.loadVersionBrowser,e.iOS=c.iOS;var u=r(153);e.LocalStorageDB=u.LocalStorageDB;var h=w(r(466));e.LRUCache=h.default,e.LruCache=h.LruCache,e.LruCacheType=h.LruCacheType,e.CacheStrategies=h.CacheStrategies;var d=r(502);e.Logger=d.Logger;var g=w(r(507));e.WSClient=g.default,e.WSClientType=g.WSClientType,e.WSClientPropTypes=g.WSClientPropTypes;var f=r(858);function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(p=function(e){return e?r:t})(e)}function w(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=p(t);if(r&&r.has(e))return r.get(e);var n={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(n,o,s):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}e.resizeImage=f.resizeImage})(),n})()));
@@ -1 +1 @@
1
- /*! (c) 2022 - present: Quentral Srl | https://github.com/selfcommunity/community-js/blob/master/LICENSE.md */
1
+ /*! (c) 2023 - present: Quentral Srl | https://github.com/selfcommunity/community-js/blob/master/LICENSE.md */
package/package.json CHANGED
@@ -1,10 +1,21 @@
1
1
  {
2
2
  "name": "@selfcommunity/utils",
3
- "version": "0.2.0-alpha.1",
3
+ "version": "0.2.0-alpha.11",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "./lib/cjs/index.js",
7
7
  "module": "./lib/esm/index.js",
8
+ "exports": {
9
+ ".": {
10
+ "require": "./lib/cjs/index.js",
11
+ "import": "./lib/esm/index.js"
12
+ },
13
+ "./*": {
14
+ "require": "./lib/cjs/*",
15
+ "import": "./lib/esm/*"
16
+ }
17
+ },
18
+ "sideEffects": false,
8
19
  "description": "Utilities to integrate a Community.",
9
20
  "author": "SelfCommunity <https://www.selfcommunity.com>",
10
21
  "keywords": [
@@ -28,6 +39,7 @@
28
39
  "build:commonjs": "tsc -b tsconfig-cjs.build.json",
29
40
  "build:esm": "tsc -b tsconfig-esm.build.json",
30
41
  "build:umd": "webpack --mode production",
42
+ "build:umd:analyze": "webpack --mode production --profile --json > ./lib/umd/stats.json && webpack-bundle-analyzer ./lib/umd/stats.json",
31
43
  "build": "yarn clean:lib && yarn build:commonjs && yarn build:esm && yarn build:umd",
32
44
  "prerelease": "yarn run clean:lib && yarn run build"
33
45
  },
@@ -43,17 +55,6 @@
43
55
  "access": "public"
44
56
  },
45
57
  "devDependencies": {
46
- "@babel/cli": "^7.12.13",
47
- "@babel/core": "^7.12.13",
48
- "@babel/plugin-proposal-class-properties": "^7.12.13",
49
- "@babel/plugin-proposal-export-default-from": "^7.12.13",
50
- "@babel/plugin-proposal-export-namespace-from": "^7.12.13",
51
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.13",
52
- "@babel/plugin-proposal-object-rest-spread": "^7.12.13",
53
- "@babel/plugin-transform-modules-commonjs": "^7.12.13",
54
- "@babel/preset-modules": "^0.1.4",
55
- "@babel/preset-react": "^7.12.13",
56
- "@babel/preset-typescript": "^7.12.13",
57
58
  "@types/chai": "^4.2.14",
58
59
  "@types/enzyme": "^3.10.8",
59
60
  "@types/jest": "^26.0.20",
@@ -63,8 +64,6 @@
63
64
  "@typescript-eslint/eslint-plugin": "^4.14.2",
64
65
  "@typescript-eslint/parser": "^4.14.2",
65
66
  "babel-jest": "^26.6.3",
66
- "babel-loader": "^8.2.2",
67
- "babel-preset-jason": "^6.3.0",
68
67
  "chai": "^4.2.0",
69
68
  "cherry-pick": "^0.5.0",
70
69
  "enzyme": "^3.10.0",
@@ -85,9 +84,11 @@
85
84
  "rimraf": "^3.0.2",
86
85
  "sass": "^1.32.6",
87
86
  "sinon": "^9.2.4",
87
+ "tslib": "^2.6.2",
88
88
  "typescript": "^4.1.3",
89
89
  "webpack": "^5.20.1",
90
90
  "webpack-atoms": "^17.1.0",
91
+ "webpack-bundle-analyzer": "^4.9.0",
91
92
  "webpack-cli": "^4.5.0"
92
93
  },
93
94
  "prettier": {
@@ -100,5 +101,5 @@
100
101
  "bugs": {
101
102
  "url": "https://github.com/selfcommunity/community-js/issues"
102
103
  },
103
- "gitHead": "51d2c1790a2cf93787e89ad4e6563cf3db3b57c9"
104
+ "gitHead": "c5a1ad5a969690469a80cc1e5c1ac5a54d132bad"
104
105
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAC;AAC7I,OAAO,EACL,UAAU,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,2BAA2B,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AACnH,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,uBAAuB,EAAC,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AACnD,OAAO,QAAQ,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAC,MAAM,eAAe,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,QAAQ,EAAE,EAAC,YAAY,EAAE,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C;;GAEG;AACH,OAAO,EACL,UAAU,EACV,QAAQ,EACR,SAAS,EACT,SAAS,EACT,mBAAmB,EACnB,2BAA2B,EAC3B,MAAM,EACN,OAAO,EACP,UAAU,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,uBAAuB,EACvB,SAAS,EACT,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,WAAW,EACZ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6I;AAyB3I,2FAzBM,mBAAU,OAyBN;AACV,yFA1BkB,iBAAQ,OA0BlB;AACR,0FA3B4B,kBAAS,OA2B5B;AACT,0FA5BuC,kBAAS,OA4BvC;AACT,oGA7BkD,4BAAmB,OA6BlD;AACnB,4GA9BuE,oCAA2B,OA8BvE;AAC3B,uFA/BoG,eAAM,OA+BpG;AACN,wFAhC4G,gBAAO,OAgC5G;AA/BT,qCASqB;AAuBnB,2FA/BA,gBAAU,OA+BA;AACV,4FA/BA,iBAAW,OA+BA;AACX,4FA/BA,iBAAW,OA+BA;AACX,0FA/BA,eAAS,OA+BA;AACT,sGA/BA,2BAAqB,OA+BA;AACrB,mGA/BA,wBAAkB,OA+BA;AAClB,wGA/BA,6BAAuB,OA+BA;AACvB,2GA/BA,gCAA0B,OA+BA;AA7B5B,2CAAmH;AA8BjH,4GA9BM,oCAA2B,OA8BN;AAC3B,+FA/BmC,uBAAc,OA+BnC;AACd,gGAhCmD,wBAAe,OAgCnD;AACf,sGAjCoE,8BAAqB,OAiCpE;AAhCvB,2CAA4E;AAkC1E,0FAlCM,kBAAS,OAkCN;AACT,yFAnCiB,iBAAQ,OAmCjB;AACR,wGApC2B,gCAAuB,OAoC3B;AAnCzB,2CAAyC;AAoCvC,0FApCM,kBAAS,OAoCN;AAnCX,yCAA0C;AAoCxC,4FApCM,mBAAW,OAoCN;AAnCb,6CAAmD;AAuCjD,mGAvCM,4BAAkB,OAuCN;AAtCpB,uDAAgF;AAuC9E,mBAvCK,eAAQ,CAuCL;AACR,yFAxCgB,gBAAQ,OAwChB;AAER,gGA1CwC,uBAAe,OA0CxC;AAzCjB,2CAAsC;AA4BpC,uFA5BM,eAAM,OA4BN;AA3BR,kEAA4E;AAiC1E,mBAjCK,mBAAQ,CAiCL;AAhCV,yCAA0C;AAwCxC,4FAxCM,mBAAW,OAwCN"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,WAAW,6BAcvB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACI,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;IAClC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAExC,2DAA2D;IAC3D,+CAA+C;IAC/C,oEAAoE;IACpE,4CAA4C;IAE5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;QACjC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;KACjC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAdW,QAAA,WAAW,eActB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/utils/browser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;CAgE9B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/utils/browser.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/utils/cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACnC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACrC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACjC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACrC,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,MAAM,CAAwC;IACtD,OAAO,CAAC,UAAU,CAAC;IAEnB;;;OAGG;gBACS,UAAU,SAAQ;IAO9B;;;;OAIG;IACI,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC;IAgBrC;;;;OAIG;IACI,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IASvC;;;OAGG;IACI,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAInC;;;OAGG;IACI,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOhC;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IASvC;;;OAGG;IACI,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQjD;;OAEG;IACI,KAAK,IAAI,IAAI;IAIpB;;;OAGG;IACI,QAAQ,IAAI,IAAI;CAGxB;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,sBAAsB,2BAA2B;CAClD;AAED;;GAEG;AACH,QAAA,MAAM,KAAK,EAAE,YAAY,CAAC,GAAG,CAAuB,CAAC;AACrD,eAAe,KAAK,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/utils/cache.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/utils/image.ts"],"names":[],"mappings":"AAeA,QAAA,MAAM,WAAW,iCA+Bb,CAAC;AAEL,OAAO,EAAC,WAAW,EAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/utils/image.ts"],"names":[],"mappings":";;;AAAA,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,EAAE;IAChC,+EAA+E;IAC/E,IAAI,UAAU,CAAC;IACf,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;QACtF,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,kCAAkC;IAClC,IAAI,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,iDAAiD;IACjD,IAAI,EAAE,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC1C,EAAE,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;KAClC;IACD,OAAO,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE,CAC3B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAChC,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,EAAE;QACxB,IAAI,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,GAAG,UAAU,UAAU;YACjC,mBAAmB;YACnB,IAAI,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,EAC3C,QAAQ,GAAG,IAAI,EACf,KAAK,GAAG,KAAK,CAAC,KAAK,EACnB,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACxB,IAAI,KAAK,GAAG,MAAM,EAAE;gBAClB,IAAI,KAAK,GAAG,QAAQ,EAAE;oBACpB,MAAM,IAAI,QAAQ,GAAG,KAAK,CAAC;oBAC3B,KAAK,GAAG,QAAQ,CAAC;iBAClB;aACF;iBAAM;gBACL,IAAI,MAAM,GAAG,QAAQ,EAAE;oBACrB,KAAK,IAAI,QAAQ,GAAG,MAAM,CAAC;oBAC3B,MAAM,GAAG,QAAQ,CAAC;iBACnB;aACF;YACD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YACvB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC9D,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,MAAgB,CAAC;IAC5C,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEG,kCAAW"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,MAAM;IACjB,MAAM,CAAC,IAAI,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA;IAI1B,MAAM,CAAC,IAAI,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA;IAI1B,MAAM,CAAC,KAAK,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA;IAI3B,MAAM,CAAC,GAAG,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA;IAIzB,MAAM,CAAC,KAAK,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA;CAG5B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,MAAM;IACjB,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO;QACxB,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,eAAe,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO;QACxB,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,eAAe,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO;QACzB,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,eAAe,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO;QACvB,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,eAAe,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO;QACzB,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,eAAe,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;IAChE,CAAC;CACF;AApBD,wBAoBC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../src/utils/number.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,KAAA,WAE1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"number.js","sourceRoot":"","sources":["../../../src/utils/number.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,SAAS,CAAC,CAAC;IACzB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1F,CAAC;AAFD,8BAEC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/utils/object.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,KAAA,WAEzB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBhE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAQ3E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/utils/object.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,QAAQ,CAAC,CAAC;IACxB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAClE,CAAC;AAFD,4BAEC;AAED;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,MAAc,EAAE,MAAc;IACtD,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;QACxC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAClC,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBACzB,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE;oBACpB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC;iBAC7C;qBAAM;oBACL,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;iBACnD;aACF;iBAAM;gBACL,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC;aAC7C;QACH,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAhBD,8BAgBC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAI,GAAa,EAAE,IAAc;IACtE,IAAI,MAAM,GAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAS;QAC9B,IAAI,MAAM,IAAI,CAAC,IAAI,MAAM,EAAE;YACzB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,0DAQC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/utils/string.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,KAAA,WAEzB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO9C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiB7C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED,wBAAgB,MAAM,WAErB;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,KAAA,iBAqB/C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,KAAA,iBAKvC;AAED,wBAAgB,OAAO,CAAC,GAAG,KAAA,OAO1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"string.js","sourceRoot":"","sources":["../../../src/utils/string.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/utils/url.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,WAAW,SAAU,MAAM,cAWtB,MAAM,QACvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,QAAS,MAAM,KAAG,MAOvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,OAGxC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,WAAW,UAAW,MAAM,aAAa,MAAM,KAAG,OAG9D,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAAE,UAWpG;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,mCAW9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,gCAMnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,yCAWtC,CAAC"}