@nr1e/commons 0.4.0 → 0.4.2

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.
@@ -32,6 +32,7 @@ export interface ParsedApiKey {
32
32
  * Parse and validate raw API key format.
33
33
  */
34
34
  export declare function parseApiKey(rawKey: string): ParsedApiKey;
35
+ export declare function verifySecret(providedSecret: string, storedSecretHash: string): boolean;
35
36
  /**
36
37
  * A stored API key.
37
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api-key.d.mts","sourceRoot":"","sources":["../../src/encryption/api-key.mts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,GAAE,MAAa,EACrB,QAAQ,GAAE,MAAW,EACrB,YAAY,GAAE,MAAW,GACxB,eAAe,CAejB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAkBxD;AAkBD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAC3B,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;AAExC;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAgBpC"}
1
+ {"version":3,"file":"api-key.d.mts","sourceRoot":"","sources":["../../src/encryption/api-key.mts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,GAAE,MAAa,EACrB,QAAQ,GAAE,MAAW,EACrB,YAAY,GAAE,MAAW,GACxB,eAAe,CAejB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAkBxD;AAED,wBAAgB,YAAY,CAC1B,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAWT;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAC3B,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;AAExC;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAgBpC"}
@@ -42,7 +42,7 @@ export function parseApiKey(rawKey) {
42
42
  }
43
43
  return { prefix, keyId, secret };
44
44
  }
45
- function verifySecret(providedSecret, storedSecretHash) {
45
+ export function verifySecret(providedSecret, storedSecretHash) {
46
46
  const providedHash = createHash('sha256').update(providedSecret).digest();
47
47
  const storedHashBuffer = Buffer.from(storedSecretHash, 'hex');
48
48
  // Prevent length mismatch timing leaks
@@ -1 +1 @@
1
- {"version":3,"file":"api-key.mjs","sourceRoot":"","sources":["../../src/encryption/api-key.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-key.mjs","sourceRoot":"","sources":["../../src/encryption/api-key.mts"],"names":[],"mappings":"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"}
@@ -1,2 +1,61 @@
1
+ /**
2
+ * Capitalizes the first letter of a string
3
+ *
4
+ * @param input - The string to capitalize
5
+ */
1
6
  export declare function capitalizeFirstLetter(input: string): string;
7
+ /**
8
+ * Returns null if the input string is empty or only whitespace. Otherwise, returns the input string.
9
+ *
10
+ * @param input - The string to check
11
+ */
12
+ export declare function emptyToNull(input?: string | null): string | null;
13
+ /**
14
+ * Tests if a string is lower case alphanumeric
15
+ *
16
+ * @param str the string to check
17
+ */
18
+ export declare function isLowerAlphanumeric(str?: string | null): boolean;
19
+ /**
20
+ * Tests if a string is upper case alphanumeric.
21
+ *
22
+ * @param str the string to check
23
+ */
24
+ export declare function isUpperAlphanumeric(str?: string | null): boolean;
25
+ /**
26
+ * Tests if a string is PascalCase.
27
+ *
28
+ * @param str the string to test
29
+ */
30
+ export declare function isPascalCase(str?: string | null): boolean;
31
+ /**
32
+ * Tests if a string is camelCase.
33
+ *
34
+ * @param str the string to test
35
+ */
36
+ export declare function isCamelCase(str?: string | null): boolean;
37
+ /**
38
+ * Converts a string to snake_case
39
+ *
40
+ * @param str the string to convert
41
+ */
42
+ export declare function toSnakeCase(str: string): string;
43
+ /**
44
+ * Converts a string to kebab-case
45
+ *
46
+ * @param str the string to convert
47
+ */
48
+ export declare function toKebabCase(str: string): string;
49
+ /**
50
+ * Converts a string to camelCase.
51
+ *
52
+ * @param str the string to convert
53
+ */
54
+ export declare function toCamelCase(str: string): string;
55
+ /**
56
+ * Converts a string to PascalCase.
57
+ *
58
+ * @param str the string to convert
59
+ */
60
+ export declare function toPascalCase(str: string): string;
2
61
  //# sourceMappingURL=string.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string.d.mts","sourceRoot":"","sources":["../../src/lang/string.mts"],"names":[],"mappings":"AAAA,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D"}
1
+ {"version":3,"file":"string.d.mts","sourceRoot":"","sources":["../../src/lang/string.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAIhE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAKhE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAKhE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,WAK/C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,WAK9C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIhD"}
@@ -1,4 +1,104 @@
1
+ /**
2
+ * Capitalizes the first letter of a string
3
+ *
4
+ * @param input - The string to capitalize
5
+ */
1
6
  export function capitalizeFirstLetter(input) {
2
7
  return input.charAt(0).toUpperCase() + input.slice(1);
3
8
  }
9
+ /**
10
+ * Returns null if the input string is empty or only whitespace. Otherwise, returns the input string.
11
+ *
12
+ * @param input - The string to check
13
+ */
14
+ export function emptyToNull(input) {
15
+ if (!input)
16
+ return null;
17
+ if (input.trim().length === 0)
18
+ return null;
19
+ return input;
20
+ }
21
+ /**
22
+ * Tests if a string is lower case alphanumeric
23
+ *
24
+ * @param str the string to check
25
+ */
26
+ export function isLowerAlphanumeric(str) {
27
+ if (str) {
28
+ return /^[a-z0-9]+$/.test(str);
29
+ }
30
+ return false;
31
+ }
32
+ /**
33
+ * Tests if a string is upper case alphanumeric.
34
+ *
35
+ * @param str the string to check
36
+ */
37
+ export function isUpperAlphanumeric(str) {
38
+ if (str) {
39
+ return /^[A-Z0-9]+$/.test(str);
40
+ }
41
+ return false;
42
+ }
43
+ /**
44
+ * Tests if a string is PascalCase.
45
+ *
46
+ * @param str the string to test
47
+ */
48
+ export function isPascalCase(str) {
49
+ if (str) {
50
+ return /^[A-Z][a-z0-9]*(?:[A-Z][a-z0-9]*)*$/.test(str);
51
+ }
52
+ return false;
53
+ }
54
+ /**
55
+ * Tests if a string is camelCase.
56
+ *
57
+ * @param str the string to test
58
+ */
59
+ export function isCamelCase(str) {
60
+ if (str) {
61
+ return /^[a-z][a-z0-9]*([A-Z][a-z0-9]*)*$/.test(str);
62
+ }
63
+ return false;
64
+ }
65
+ /**
66
+ * Converts a string to snake_case
67
+ *
68
+ * @param str the string to convert
69
+ */
70
+ export function toSnakeCase(str) {
71
+ return (str.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g) || [])
72
+ .map((x) => x.toLowerCase())
73
+ .join('_');
74
+ }
75
+ /**
76
+ * Converts a string to kebab-case
77
+ *
78
+ * @param str the string to convert
79
+ */
80
+ export function toKebabCase(str) {
81
+ return (str.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g) || [])
82
+ .map((x) => x.toLowerCase())
83
+ .join('-');
84
+ }
85
+ /**
86
+ * Converts a string to camelCase.
87
+ *
88
+ * @param str the string to convert
89
+ */
90
+ export function toCamelCase(str) {
91
+ str = toPascalCase(str);
92
+ return str.charAt(0).toLowerCase() + str.slice(1);
93
+ }
94
+ /**
95
+ * Converts a string to PascalCase.
96
+ *
97
+ * @param str the string to convert
98
+ */
99
+ export function toPascalCase(str) {
100
+ return (str.match(/[a-zA-Z0-9]+/g) || [])
101
+ .map((x) => `${x.charAt(0).toUpperCase()}${x.slice(1)}`)
102
+ .join('');
103
+ }
4
104
  //# sourceMappingURL=string.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"string.mjs","sourceRoot":"","sources":["../../src/lang/string.mts"],"names":[],"mappings":"AAAA,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"string.mjs","sourceRoot":"","sources":["../../src/lang/string.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,KAAqB;IAC/C,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAmB;IACrD,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAmB;IACrD,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,GAAmB;IAC9C,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,qCAAqC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAmB;IAC7C,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,mCAAmC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,CACL,GAAG,CAAC,KAAK,CACP,oEAAoE,CACrE,IAAI,EAAE,CACR;SACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,CACL,GAAG,CAAC,KAAK,CACP,oEAAoE,CACrE,IAAI,EAAE,CACR;SACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nr1e/commons",
3
3
  "description": "Common utilities for TypeScript projects",
4
- "version": "0.4.0",
4
+ "version": "0.4.2",
5
5
  "type": "module",
6
6
  "author": "NR1E, Inc.",
7
7
  "publishConfig": {