@estjs/shared 0.0.11 → 0.0.12-beta.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/shared.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @estjs/shared v0.0.11
2
+ * @estjs/shared v0.0.12-beta.1
3
3
  * (c) 2023-Present jiangxd <jiangxd2016@gmail.com>
4
4
  * @license MIT
5
5
  **/
@@ -32,10 +32,12 @@ __export(src_exports, {
32
32
  error: () => error,
33
33
  escape: () => escape,
34
34
  extend: () => extend,
35
+ generateUniqueId: () => generateUniqueId,
35
36
  hasChanged: () => hasChanged,
36
37
  hasOwn: () => hasOwn,
37
38
  info: () => info,
38
39
  isArray: () => isArray,
40
+ isBrowser: () => isBrowser,
39
41
  isExclude: () => isExclude,
40
42
  isFalsy: () => isFalsy,
41
43
  isFunction: () => isFunction,
@@ -134,6 +136,18 @@ function escape(str) {
134
136
  function isExclude(key, exclude) {
135
137
  return Array.isArray(exclude) ? exclude.includes(key) : isFunction(exclude) ? exclude(key) : false;
136
138
  }
139
+ function generateUniqueId() {
140
+ const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
141
+ let result = "";
142
+ const charactersLength = characters.length;
143
+ for (let i = 0; i < 8; i++) {
144
+ result += characters.charAt(Math.floor(Math.random() * charactersLength));
145
+ }
146
+ return result;
147
+ }
148
+ function isBrowser() {
149
+ return typeof window !== "undefined" && typeof document !== "undefined";
150
+ }
137
151
 
138
152
  // src/name.ts
139
153
  var kebabCase = (string) => {
@@ -168,10 +182,12 @@ function error(msg, ...args) {
168
182
  error,
169
183
  escape,
170
184
  extend,
185
+ generateUniqueId,
171
186
  hasChanged,
172
187
  hasOwn,
173
188
  info,
174
189
  isArray,
190
+ isBrowser,
175
191
  isExclude,
176
192
  isFalsy,
177
193
  isFunction,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/is.ts","../src/comm.ts","../src/name.ts","../src/console.ts"],"sourcesContent":["export {\n noop,\n _toString,\n extend,\n hasChanged,\n coerceArray,\n hasOwn,\n startsWith,\n escape,\n isExclude,\n ExcludeType,\n} from './comm';\nexport {\n isString,\n isObject,\n isArray,\n isMap,\n isSet,\n isWeakMap,\n isWeakSet,\n isFunction,\n isNil,\n isPromise,\n isSymbol,\n isFalsy,\n isPrimitive,\n isHTMLElement,\n} from './is';\nexport { camelCase, kebabCase, capitalizeFirstLetter } from './name';\nexport { warn, info, error } from './console';\n","import { _toString } from './comm';\n\nexport const isObject = (val: unknown): val is Record<any, any> =>\n val !== null && typeof val === 'object';\nexport function isPromise(val: any): boolean {\n return _toString.call(val) === '[object Promise]';\n}\n\nexport const isArray = Array.isArray;\n\nexport function isString(val: unknown): val is string {\n return typeof val === 'string';\n}\nexport function isNull(val: any): val is null {\n return val === null;\n}\nexport function isSymbol(val: unknown): val is symbol {\n return typeof val === 'symbol';\n}\n\nexport function isSet(val: any): val is Set<any> {\n return _toString.call(val) === '[object Set]';\n}\nexport function isWeakMap(val: any): val is WeakMap<any, any> {\n return _toString.call(val) === '[object WeakMap]';\n}\nexport function isWeakSet(val: any): val is WeakSet<any> {\n return _toString.call(val) === '[object WeakSet]';\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n return _toString.call(val) === '[object Map]';\n}\nexport function isNil(x: any): x is null | undefined {\n return x === null || x === undefined;\n}\n\nexport const isFunction = (val: unknown): val is Function => typeof val === 'function';\n\nexport function isFalsy(x: any): x is false | null | undefined {\n return x === false || x === null || x === undefined;\n}\n\nexport const isPrimitive = (\n val: unknown,\n): val is string | number | boolean | symbol | null | undefined =>\n ['string', 'number', 'boolean', 'symbol', 'undefined'].includes(typeof val) || isNull(val);\n\nexport function isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n}\n","import { isFunction, isString } from './is';\n\nexport const _toString = Object.prototype.toString;\nexport const extend = Object.assign;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nexport const hasOwn = (val: object, key: string | symbol): key is keyof typeof val =>\n hasOwnProperty.call(val, key);\n\nexport function coerceArray<T>(data: T | T[]): T[] {\n return Array.isArray(data) ? (data.flat() as T[]) : [data];\n}\nexport const hasChanged = (value, oldValue) =>\n value !== oldValue && (value === value || oldValue === oldValue);\nexport const noop = Function.prototype as () => void;\n\n/**\n * A function that checks if a string starts with a specific substring.\n * indexOf faster under normal circumstances\n * @see https://www.measurethat.net/Benchmarks/Show/12350/0/startswith-vs-test-vs-match-vs-indexof#latest_results_block\n\n * @param {string} str - The input string to check.\n * @param {string} searchString - The substring to check for at the beginning of the input string.\n * @return {boolean} Returns true if the input string starts with the specified substring, otherwise false.\n */\nexport function startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\n\n/**\n * Escapes special HTML characters in a string.\n * @param str - The string to escape.\n * @returns The escaped string.\n */\nexport function escape(str: string): string {\n return str.replaceAll(/[\"&'<>]/g, char => {\n switch (char) {\n case '&':\n return '&amp;';\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '\"':\n return '&quot;';\n case \"'\":\n return '&#039;';\n default:\n return char;\n }\n });\n}\n\nexport type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];\n\n/**\n * Checks if a key should be excluded based on the provided exclude criteria.\n * @param key - The key to check.\n * @param exclude - The exclusion criteria.\n * @returns True if the key should be excluded, otherwise false.\n */\nexport function isExclude(key: string | symbol, exclude?: ExcludeType): boolean {\n return Array.isArray(exclude)\n ? exclude.includes(key)\n : isFunction(exclude)\n ? exclude(key)\n : false;\n}\n","export const kebabCase = (string: string): string => {\n return string.replaceAll(/[A-Z]+/g, (match, offset) => {\n return `${offset > 0 ? '-' : ''}${match.toLocaleLowerCase()}`;\n });\n};\n\nexport const camelCase = (str: string): string => {\n const s = str.replaceAll(/[\\s_-]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return s[0].toLowerCase() + s.slice(1);\n};\n/**\n * Capitalizes the first letter of a string.\n *\n * @param {string} inputString - The input string to capitalize the first letter.\n * @return {string} The string with the first letter capitalized.\n */\nexport const capitalizeFirstLetter = (inputString: string): string => {\n return inputString.charAt(0).toUpperCase() + inputString.slice(1);\n};\n","export function warn(msg: string, ..._args: any[]): void;\nexport function warn(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.warn.apply(console, [`[Essor warn]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function info(msg: string, ..._args: any[]): void;\nexport function info(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread, no-console\n console.info.apply(console, [`[Essor info]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function error(msg: string, ..._args: any[]): void;\nexport function error(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.error.apply(console, [`[Essor error]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../src/is.ts","../src/comm.ts","../src/name.ts","../src/console.ts"],"sourcesContent":["export {\n noop,\n _toString,\n extend,\n hasChanged,\n coerceArray,\n hasOwn,\n startsWith,\n escape,\n isExclude,\n ExcludeType,\n generateUniqueId,\n isBrowser,\n} from './comm';\nexport {\n isString,\n isObject,\n isArray,\n isMap,\n isSet,\n isWeakMap,\n isWeakSet,\n isFunction,\n isNil,\n isPromise,\n isSymbol,\n isFalsy,\n isPrimitive,\n isHTMLElement,\n} from './is';\nexport { camelCase, kebabCase, capitalizeFirstLetter } from './name';\nexport { warn, info, error } from './console';\n","import { _toString } from './comm';\n\nexport const isObject = (val: unknown): val is Record<any, any> =>\n val !== null && typeof val === 'object';\nexport function isPromise(val: any): boolean {\n return _toString.call(val) === '[object Promise]';\n}\n\nexport const isArray = Array.isArray;\n\nexport function isString(val: unknown): val is string {\n return typeof val === 'string';\n}\nexport function isNull(val: any): val is null {\n return val === null;\n}\nexport function isSymbol(val: unknown): val is symbol {\n return typeof val === 'symbol';\n}\n\nexport function isSet(val: any): val is Set<any> {\n return _toString.call(val) === '[object Set]';\n}\nexport function isWeakMap(val: any): val is WeakMap<any, any> {\n return _toString.call(val) === '[object WeakMap]';\n}\nexport function isWeakSet(val: any): val is WeakSet<any> {\n return _toString.call(val) === '[object WeakSet]';\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n return _toString.call(val) === '[object Map]';\n}\nexport function isNil(x: any): x is null | undefined {\n return x === null || x === undefined;\n}\n\nexport const isFunction = (val: unknown): val is Function => typeof val === 'function';\n\nexport function isFalsy(x: any): x is false | null | undefined {\n return x === false || x === null || x === undefined;\n}\n\nexport const isPrimitive = (\n val: unknown,\n): val is string | number | boolean | symbol | null | undefined =>\n ['string', 'number', 'boolean', 'symbol', 'undefined'].includes(typeof val) || isNull(val);\n\nexport function isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n}\n","import { isFunction, isString } from './is';\n\nexport const _toString = Object.prototype.toString;\nexport const extend = Object.assign;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nexport const hasOwn = (val: object, key: string | symbol): key is keyof typeof val =>\n hasOwnProperty.call(val, key);\n\nexport function coerceArray<T>(data: T | T[]): T[] {\n return Array.isArray(data) ? (data.flat() as T[]) : [data];\n}\nexport const hasChanged = (value, oldValue) =>\n value !== oldValue && (value === value || oldValue === oldValue);\nexport const noop = Function.prototype as () => void;\n\n/**\n * A function that checks if a string starts with a specific substring.\n * indexOf faster under normal circumstances\n * @see https://www.measurethat.net/Benchmarks/Show/12350/0/startswith-vs-test-vs-match-vs-indexof#latest_results_block\n\n * @param {string} str - The input string to check.\n * @param {string} searchString - The substring to check for at the beginning of the input string.\n * @return {boolean} Returns true if the input string starts with the specified substring, otherwise false.\n */\nexport function startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\n\n/**\n * Escapes special HTML characters in a string.\n * @param str - The string to escape.\n * @returns The escaped string.\n */\nexport function escape(str: string): string {\n return str.replaceAll(/[\"&'<>]/g, char => {\n switch (char) {\n case '&':\n return '&amp;';\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '\"':\n return '&quot;';\n case \"'\":\n return '&#039;';\n default:\n return char;\n }\n });\n}\n\nexport type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];\n\n/**\n * Checks if a key should be excluded based on the provided exclude criteria.\n * @param key - The key to check.\n * @param exclude - The exclusion criteria.\n * @returns True if the key should be excluded, otherwise false.\n */\nexport function isExclude(key: string | symbol, exclude?: ExcludeType): boolean {\n return Array.isArray(exclude)\n ? exclude.includes(key)\n : isFunction(exclude)\n ? exclude(key)\n : false;\n}\n\n/**\n * Generates a unique random 8 character string ID.\n * The generated IDs only contain alphanumeric characters.\n * @returns A unique random 8 character string ID.\n */\nexport function generateUniqueId() {\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n let result = '';\n const charactersLength = characters.length;\n for (let i = 0; i < 8; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n\n/**\n * Checks if the current environment is a browser.\n * @returns True if the current environment is a browser, otherwise false.\n */\nexport function isBrowser() {\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\n","export const kebabCase = (string: string): string => {\n return string.replaceAll(/[A-Z]+/g, (match, offset) => {\n return `${offset > 0 ? '-' : ''}${match.toLocaleLowerCase()}`;\n });\n};\n\nexport const camelCase = (str: string): string => {\n const s = str.replaceAll(/[\\s_-]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return s[0].toLowerCase() + s.slice(1);\n};\n/**\n * Capitalizes the first letter of a string.\n *\n * @param {string} inputString - The input string to capitalize the first letter.\n * @return {string} The string with the first letter capitalized.\n */\nexport const capitalizeFirstLetter = (inputString: string): string => {\n return inputString.charAt(0).toUpperCase() + inputString.slice(1);\n};\n","export function warn(msg: string, ..._args: any[]): void;\nexport function warn(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.warn.apply(console, [`[Essor warn]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function info(msg: string, ..._args: any[]): void;\nexport function info(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread, no-console\n console.info.apply(console, [`[Essor info]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function error(msg: string, ..._args: any[]): void;\nexport function error(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.error.apply(console, [`[Essor error]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,IAAM,WAAW,CAAC,QACvB,QAAQ,QAAQ,OAAO,QAAQ;AAC1B,SAAS,UAAU,KAAmB;AAC3C,SAAO,UAAU,KAAK,GAAG,MAAM;AACjC;AAEO,IAAM,UAAU,MAAM;AAEtB,SAAS,SAAS,KAA6B;AACpD,SAAO,OAAO,QAAQ;AACxB;AACO,SAAS,OAAO,KAAuB;AAC5C,SAAO,QAAQ;AACjB;AACO,SAAS,SAAS,KAA6B;AACpD,SAAO,OAAO,QAAQ;AACxB;AAEO,SAAS,MAAM,KAA2B;AAC/C,SAAO,UAAU,KAAK,GAAG,MAAM;AACjC;AACO,SAAS,UAAU,KAAoC;AAC5D,SAAO,UAAU,KAAK,GAAG,MAAM;AACjC;AACO,SAAS,UAAU,KAA+B;AACvD,SAAO,UAAU,KAAK,GAAG,MAAM;AACjC;AAEO,SAAS,MAAM,KAAoC;AACxD,SAAO,UAAU,KAAK,GAAG,MAAM;AACjC;AACO,SAAS,MAAM,GAA+B;AACnD,SAAO,MAAM,QAAQ,MAAM;AAC7B;AAEO,IAAM,aAAa,CAAC,QAAkC,OAAO,QAAQ;AAErE,SAAS,QAAQ,GAAuC;AAC7D,SAAO,MAAM,SAAS,MAAM,QAAQ,MAAM;AAC5C;AAEO,IAAM,cAAc,CACzB,QAEA,CAAC,UAAU,UAAU,WAAW,UAAU,WAAW,EAAE,SAAS,OAAO,GAAG,KAAK,OAAO,GAAG;AAEpF,SAAS,cAAc,KAAK;AACjC,MAAI,CAAC,IAAK,QAAO;AACjB,SAAO,OAAO,OAAO,QAAQ,YAAY,IAAI,aAAa,KAAK,OAAO,IAAI,aAAa;AACzF;;;ACjDO,IAAM,YAAY,OAAO,UAAU;AACnC,IAAM,SAAS,OAAO;AAC7B,IAAM,iBAAiB,OAAO,UAAU;AACjC,IAAM,SAAS,CAAC,KAAa,QAClC,eAAe,KAAK,KAAK,GAAG;AAEvB,SAAS,YAAe,MAAoB;AACjD,SAAO,MAAM,QAAQ,IAAI,IAAK,KAAK,KAAK,IAAY,CAAC,IAAI;AAC3D;AACO,IAAM,aAAa,CAAC,OAAO,aAChC,UAAU,aAAa,UAAU,SAAS,aAAa;AAClD,IAAM,OAAO,SAAS;AAWtB,SAAS,WAAW,KAAK,cAAc;AAC5C,MAAI,CAAC,SAAS,GAAG,GAAG;AAClB,WAAO;AAAA,EACT;AACA,SAAO,IAAI,QAAQ,YAAY,MAAM;AACvC;AAOO,SAAS,OAAO,KAAqB;AAC1C,SAAO,IAAI,WAAW,YAAY,UAAQ;AACxC,YAAQ,MAAM;AAAA,MACZ,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IACX;AAAA,EACF,CAAC;AACH;AAUO,SAAS,UAAU,KAAsB,SAAgC;AAC9E,SAAO,MAAM,QAAQ,OAAO,IACxB,QAAQ,SAAS,GAAG,IACpB,WAAW,OAAO,IAChB,QAAQ,GAAG,IACX;AACR;AAOO,SAAS,mBAAmB;AACjC,QAAM,aAAa;AACnB,MAAI,SAAS;AACb,QAAM,mBAAmB,WAAW;AACpC,WAAS,IAAI,GAAG,IAAI,GAAG,KAAK;AAC1B,cAAU,WAAW,OAAO,KAAK,MAAM,KAAK,OAAO,IAAI,gBAAgB,CAAC;AAAA,EAC1E;AACA,SAAO;AACT;AAMO,SAAS,YAAY;AAC1B,SAAO,OAAO,WAAW,eAAe,OAAO,aAAa;AAC9D;;;AC5FO,IAAM,YAAY,CAAC,WAA2B;AACnD,SAAO,OAAO,WAAW,WAAW,CAAC,OAAO,WAAW;AACrD,WAAO,GAAG,SAAS,IAAI,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC;AAAA,EAC7D,CAAC;AACH;AAEO,IAAM,YAAY,CAAC,QAAwB;AAChD,QAAM,IAAI,IAAI,WAAW,gBAAgB,CAAC,GAAG,MAAO,IAAI,EAAE,YAAY,IAAI,EAAG;AAC7E,SAAO,EAAE,CAAC,EAAE,YAAY,IAAI,EAAE,MAAM,CAAC;AACvC;AAOO,IAAM,wBAAwB,CAAC,gBAAgC;AACpE,SAAO,YAAY,OAAO,CAAC,EAAE,YAAY,IAAI,YAAY,MAAM,CAAC;AAClE;;;ACjBO,SAAS,KAAK,QAAgB,MAAY;AAE/C,UAAQ,KAAK,MAAM,SAAS,CAAC,iBAAiB,GAAG,EAAE,EAAE,OAAO,IAAI,CAAuB;AACzF;AAGO,SAAS,KAAK,QAAgB,MAAY;AAE/C,UAAQ,KAAK,MAAM,SAAS,CAAC,iBAAiB,GAAG,EAAE,EAAE,OAAO,IAAI,CAAuB;AACzF;AAGO,SAAS,MAAM,QAAgB,MAAY;AAEhD,UAAQ,MAAM,MAAM,SAAS,CAAC,kBAAkB,GAAG,EAAE,EAAE,OAAO,IAAI,CAAuB;AAC3F;","names":[]}
package/dist/shared.d.cts CHANGED
@@ -33,6 +33,17 @@ type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];
33
33
  * @returns True if the key should be excluded, otherwise false.
34
34
  */
35
35
  declare function isExclude(key: string | symbol, exclude?: ExcludeType): boolean;
36
+ /**
37
+ * Generates a unique random 8 character string ID.
38
+ * The generated IDs only contain alphanumeric characters.
39
+ * @returns A unique random 8 character string ID.
40
+ */
41
+ declare function generateUniqueId(): string;
42
+ /**
43
+ * Checks if the current environment is a browser.
44
+ * @returns True if the current environment is a browser, otherwise false.
45
+ */
46
+ declare function isBrowser(): boolean;
36
47
 
37
48
  declare const isObject: (val: unknown) => val is Record<any, any>;
38
49
  declare function isPromise(val: any): boolean;
@@ -63,4 +74,4 @@ declare function warn(msg: string, ..._args: any[]): void;
63
74
  declare function info(msg: string, ..._args: any[]): void;
64
75
  declare function error(msg: string, ..._args: any[]): void;
65
76
 
66
- export { type ExcludeType, _toString, camelCase, capitalizeFirstLetter, coerceArray, error, escape, extend, hasChanged, hasOwn, info, isArray, isExclude, isFalsy, isFunction, isHTMLElement, isMap, isNil, isObject, isPrimitive, isPromise, isSet, isString, isSymbol, isWeakMap, isWeakSet, kebabCase, noop, startsWith, warn };
77
+ export { type ExcludeType, _toString, camelCase, capitalizeFirstLetter, coerceArray, error, escape, extend, generateUniqueId, hasChanged, hasOwn, info, isArray, isBrowser, isExclude, isFalsy, isFunction, isHTMLElement, isMap, isNil, isObject, isPrimitive, isPromise, isSet, isString, isSymbol, isWeakMap, isWeakSet, kebabCase, noop, startsWith, warn };
package/dist/shared.d.ts CHANGED
@@ -33,6 +33,17 @@ type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];
33
33
  * @returns True if the key should be excluded, otherwise false.
34
34
  */
35
35
  declare function isExclude(key: string | symbol, exclude?: ExcludeType): boolean;
36
+ /**
37
+ * Generates a unique random 8 character string ID.
38
+ * The generated IDs only contain alphanumeric characters.
39
+ * @returns A unique random 8 character string ID.
40
+ */
41
+ declare function generateUniqueId(): string;
42
+ /**
43
+ * Checks if the current environment is a browser.
44
+ * @returns True if the current environment is a browser, otherwise false.
45
+ */
46
+ declare function isBrowser(): boolean;
36
47
 
37
48
  declare const isObject: (val: unknown) => val is Record<any, any>;
38
49
  declare function isPromise(val: any): boolean;
@@ -63,4 +74,4 @@ declare function warn(msg: string, ..._args: any[]): void;
63
74
  declare function info(msg: string, ..._args: any[]): void;
64
75
  declare function error(msg: string, ..._args: any[]): void;
65
76
 
66
- export { type ExcludeType, _toString, camelCase, capitalizeFirstLetter, coerceArray, error, escape, extend, hasChanged, hasOwn, info, isArray, isExclude, isFalsy, isFunction, isHTMLElement, isMap, isNil, isObject, isPrimitive, isPromise, isSet, isString, isSymbol, isWeakMap, isWeakSet, kebabCase, noop, startsWith, warn };
77
+ export { type ExcludeType, _toString, camelCase, capitalizeFirstLetter, coerceArray, error, escape, extend, generateUniqueId, hasChanged, hasOwn, info, isArray, isBrowser, isExclude, isFalsy, isFunction, isHTMLElement, isMap, isNil, isObject, isPrimitive, isPromise, isSet, isString, isSymbol, isWeakMap, isWeakSet, kebabCase, noop, startsWith, warn };
package/dist/shared.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @estjs/shared v0.0.11
2
+ * @estjs/shared v0.0.12-beta.1
3
3
  * (c) 2023-Present jiangxd <jiangxd2016@gmail.com>
4
4
  * @license MIT
5
5
  **/
@@ -81,6 +81,18 @@ function escape(str) {
81
81
  function isExclude(key, exclude) {
82
82
  return Array.isArray(exclude) ? exclude.includes(key) : isFunction(exclude) ? exclude(key) : false;
83
83
  }
84
+ function generateUniqueId() {
85
+ const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
86
+ let result = "";
87
+ const charactersLength = characters.length;
88
+ for (let i = 0; i < 8; i++) {
89
+ result += characters.charAt(Math.floor(Math.random() * charactersLength));
90
+ }
91
+ return result;
92
+ }
93
+ function isBrowser() {
94
+ return typeof window !== "undefined" && typeof document !== "undefined";
95
+ }
84
96
 
85
97
  // src/name.ts
86
98
  var kebabCase = (string) => {
@@ -114,10 +126,12 @@ export {
114
126
  error,
115
127
  escape,
116
128
  extend,
129
+ generateUniqueId,
117
130
  hasChanged,
118
131
  hasOwn,
119
132
  info,
120
133
  isArray,
134
+ isBrowser,
121
135
  isExclude,
122
136
  isFalsy,
123
137
  isFunction,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/is.ts","../src/comm.ts","../src/name.ts","../src/console.ts"],"sourcesContent":["import { _toString } from './comm';\n\nexport const isObject = (val: unknown): val is Record<any, any> =>\n val !== null && typeof val === 'object';\nexport function isPromise(val: any): boolean {\n return _toString.call(val) === '[object Promise]';\n}\n\nexport const isArray = Array.isArray;\n\nexport function isString(val: unknown): val is string {\n return typeof val === 'string';\n}\nexport function isNull(val: any): val is null {\n return val === null;\n}\nexport function isSymbol(val: unknown): val is symbol {\n return typeof val === 'symbol';\n}\n\nexport function isSet(val: any): val is Set<any> {\n return _toString.call(val) === '[object Set]';\n}\nexport function isWeakMap(val: any): val is WeakMap<any, any> {\n return _toString.call(val) === '[object WeakMap]';\n}\nexport function isWeakSet(val: any): val is WeakSet<any> {\n return _toString.call(val) === '[object WeakSet]';\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n return _toString.call(val) === '[object Map]';\n}\nexport function isNil(x: any): x is null | undefined {\n return x === null || x === undefined;\n}\n\nexport const isFunction = (val: unknown): val is Function => typeof val === 'function';\n\nexport function isFalsy(x: any): x is false | null | undefined {\n return x === false || x === null || x === undefined;\n}\n\nexport const isPrimitive = (\n val: unknown,\n): val is string | number | boolean | symbol | null | undefined =>\n ['string', 'number', 'boolean', 'symbol', 'undefined'].includes(typeof val) || isNull(val);\n\nexport function isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n}\n","import { isFunction, isString } from './is';\n\nexport const _toString = Object.prototype.toString;\nexport const extend = Object.assign;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nexport const hasOwn = (val: object, key: string | symbol): key is keyof typeof val =>\n hasOwnProperty.call(val, key);\n\nexport function coerceArray<T>(data: T | T[]): T[] {\n return Array.isArray(data) ? (data.flat() as T[]) : [data];\n}\nexport const hasChanged = (value, oldValue) =>\n value !== oldValue && (value === value || oldValue === oldValue);\nexport const noop = Function.prototype as () => void;\n\n/**\n * A function that checks if a string starts with a specific substring.\n * indexOf faster under normal circumstances\n * @see https://www.measurethat.net/Benchmarks/Show/12350/0/startswith-vs-test-vs-match-vs-indexof#latest_results_block\n\n * @param {string} str - The input string to check.\n * @param {string} searchString - The substring to check for at the beginning of the input string.\n * @return {boolean} Returns true if the input string starts with the specified substring, otherwise false.\n */\nexport function startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\n\n/**\n * Escapes special HTML characters in a string.\n * @param str - The string to escape.\n * @returns The escaped string.\n */\nexport function escape(str: string): string {\n return str.replaceAll(/[\"&'<>]/g, char => {\n switch (char) {\n case '&':\n return '&amp;';\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '\"':\n return '&quot;';\n case \"'\":\n return '&#039;';\n default:\n return char;\n }\n });\n}\n\nexport type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];\n\n/**\n * Checks if a key should be excluded based on the provided exclude criteria.\n * @param key - The key to check.\n * @param exclude - The exclusion criteria.\n * @returns True if the key should be excluded, otherwise false.\n */\nexport function isExclude(key: string | symbol, exclude?: ExcludeType): boolean {\n return Array.isArray(exclude)\n ? exclude.includes(key)\n : isFunction(exclude)\n ? exclude(key)\n : false;\n}\n","export const kebabCase = (string: string): string => {\n return string.replaceAll(/[A-Z]+/g, (match, offset) => {\n return `${offset > 0 ? '-' : ''}${match.toLocaleLowerCase()}`;\n });\n};\n\nexport const camelCase = (str: string): string => {\n const s = str.replaceAll(/[\\s_-]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return s[0].toLowerCase() + s.slice(1);\n};\n/**\n * Capitalizes the first letter of a string.\n *\n * @param {string} inputString - The input string to capitalize the first letter.\n * @return {string} The string with the first letter capitalized.\n */\nexport const capitalizeFirstLetter = (inputString: string): string => {\n return inputString.charAt(0).toUpperCase() + inputString.slice(1);\n};\n","export function warn(msg: string, ..._args: any[]): void;\nexport function warn(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.warn.apply(console, [`[Essor warn]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function info(msg: string, ..._args: any[]): void;\nexport function info(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread, no-console\n console.info.apply(console, [`[Essor info]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function error(msg: string, ..._args: any[]): void;\nexport function error(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.error.apply(console, [`[Essor error]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/is.ts","../src/comm.ts","../src/name.ts","../src/console.ts"],"sourcesContent":["import { _toString } from './comm';\n\nexport const isObject = (val: unknown): val is Record<any, any> =>\n val !== null && typeof val === 'object';\nexport function isPromise(val: any): boolean {\n return _toString.call(val) === '[object Promise]';\n}\n\nexport const isArray = Array.isArray;\n\nexport function isString(val: unknown): val is string {\n return typeof val === 'string';\n}\nexport function isNull(val: any): val is null {\n return val === null;\n}\nexport function isSymbol(val: unknown): val is symbol {\n return typeof val === 'symbol';\n}\n\nexport function isSet(val: any): val is Set<any> {\n return _toString.call(val) === '[object Set]';\n}\nexport function isWeakMap(val: any): val is WeakMap<any, any> {\n return _toString.call(val) === '[object WeakMap]';\n}\nexport function isWeakSet(val: any): val is WeakSet<any> {\n return _toString.call(val) === '[object WeakSet]';\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n return _toString.call(val) === '[object Map]';\n}\nexport function isNil(x: any): x is null | undefined {\n return x === null || x === undefined;\n}\n\nexport const isFunction = (val: unknown): val is Function => typeof val === 'function';\n\nexport function isFalsy(x: any): x is false | null | undefined {\n return x === false || x === null || x === undefined;\n}\n\nexport const isPrimitive = (\n val: unknown,\n): val is string | number | boolean | symbol | null | undefined =>\n ['string', 'number', 'boolean', 'symbol', 'undefined'].includes(typeof val) || isNull(val);\n\nexport function isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n}\n","import { isFunction, isString } from './is';\n\nexport const _toString = Object.prototype.toString;\nexport const extend = Object.assign;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nexport const hasOwn = (val: object, key: string | symbol): key is keyof typeof val =>\n hasOwnProperty.call(val, key);\n\nexport function coerceArray<T>(data: T | T[]): T[] {\n return Array.isArray(data) ? (data.flat() as T[]) : [data];\n}\nexport const hasChanged = (value, oldValue) =>\n value !== oldValue && (value === value || oldValue === oldValue);\nexport const noop = Function.prototype as () => void;\n\n/**\n * A function that checks if a string starts with a specific substring.\n * indexOf faster under normal circumstances\n * @see https://www.measurethat.net/Benchmarks/Show/12350/0/startswith-vs-test-vs-match-vs-indexof#latest_results_block\n\n * @param {string} str - The input string to check.\n * @param {string} searchString - The substring to check for at the beginning of the input string.\n * @return {boolean} Returns true if the input string starts with the specified substring, otherwise false.\n */\nexport function startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\n\n/**\n * Escapes special HTML characters in a string.\n * @param str - The string to escape.\n * @returns The escaped string.\n */\nexport function escape(str: string): string {\n return str.replaceAll(/[\"&'<>]/g, char => {\n switch (char) {\n case '&':\n return '&amp;';\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '\"':\n return '&quot;';\n case \"'\":\n return '&#039;';\n default:\n return char;\n }\n });\n}\n\nexport type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];\n\n/**\n * Checks if a key should be excluded based on the provided exclude criteria.\n * @param key - The key to check.\n * @param exclude - The exclusion criteria.\n * @returns True if the key should be excluded, otherwise false.\n */\nexport function isExclude(key: string | symbol, exclude?: ExcludeType): boolean {\n return Array.isArray(exclude)\n ? exclude.includes(key)\n : isFunction(exclude)\n ? exclude(key)\n : false;\n}\n\n/**\n * Generates a unique random 8 character string ID.\n * The generated IDs only contain alphanumeric characters.\n * @returns A unique random 8 character string ID.\n */\nexport function generateUniqueId() {\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n let result = '';\n const charactersLength = characters.length;\n for (let i = 0; i < 8; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n\n/**\n * Checks if the current environment is a browser.\n * @returns True if the current environment is a browser, otherwise false.\n */\nexport function isBrowser() {\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\n","export const kebabCase = (string: string): string => {\n return string.replaceAll(/[A-Z]+/g, (match, offset) => {\n return `${offset > 0 ? '-' : ''}${match.toLocaleLowerCase()}`;\n });\n};\n\nexport const camelCase = (str: string): string => {\n const s = str.replaceAll(/[\\s_-]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return s[0].toLowerCase() + s.slice(1);\n};\n/**\n * Capitalizes the first letter of a string.\n *\n * @param {string} inputString - The input string to capitalize the first letter.\n * @return {string} The string with the first letter capitalized.\n */\nexport const capitalizeFirstLetter = (inputString: string): string => {\n return inputString.charAt(0).toUpperCase() + inputString.slice(1);\n};\n","export function warn(msg: string, ..._args: any[]): void;\nexport function warn(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.warn.apply(console, [`[Essor warn]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function info(msg: string, ..._args: any[]): void;\nexport function info(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread, no-console\n console.info.apply(console, [`[Essor info]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n\nexport function error(msg: string, ..._args: any[]): void;\nexport function error(msg: string, ...args): void {\n // eslint-disable-next-line prefer-spread\n console.error.apply(console, [`[Essor error]: ${msg}`].concat(args) as [string, ...any[]]);\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@estjs/shared",
3
- "version": "0.0.11",
3
+ "version": "0.0.12-beta.1",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "keywords": [],