@discordkit/core 3.1.0 → 4.0.0

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 (173) hide show
  1. package/CHANGELOG.md +416 -0
  2. package/README.md +52 -0
  3. package/dist/index.d.mts +23 -0
  4. package/dist/index.mjs +23 -0
  5. package/dist/requests/DiscordSession.d.mts +30 -0
  6. package/dist/requests/DiscordSession.mjs +202 -0
  7. package/dist/requests/addParams.d.mts +15 -0
  8. package/dist/requests/addParams.mjs +24 -0
  9. package/dist/requests/buildURL.d.mts +7 -0
  10. package/dist/requests/buildURL.mjs +7 -0
  11. package/dist/requests/getAsset.d.mts +7 -0
  12. package/dist/requests/getAsset.mjs +6 -0
  13. package/dist/requests/index.d.mts +9 -0
  14. package/dist/requests/index.mjs +9 -0
  15. package/dist/requests/methods.d.mts +63 -0
  16. package/dist/requests/methods.mjs +10 -0
  17. package/dist/requests/request.d.mts +27 -0
  18. package/dist/requests/request.mjs +29 -0
  19. package/dist/requests/toProcedure.d.mts +40 -0
  20. package/dist/requests/toProcedure.mjs +27 -0
  21. package/dist/requests/toQuery.d.mts +36 -0
  22. package/dist/requests/toQuery.mjs +17 -0
  23. package/dist/requests/toValidated.d.mts +16 -0
  24. package/dist/requests/toValidated.mjs +25 -0
  25. package/dist/requests/verifyKey.d.mts +13 -0
  26. package/dist/requests/verifyKey.mjs +63 -0
  27. package/dist/utils/isBetween.d.mts +4 -0
  28. package/dist/utils/isBetween.mjs +4 -0
  29. package/dist/utils/{isNonNullable.d.ts → isNonNullable.d.mts} +5 -2
  30. package/dist/utils/isNonNullable.mjs +22 -0
  31. package/dist/utils/isNumericString.d.mts +4 -0
  32. package/dist/utils/isNumericString.mjs +4 -0
  33. package/dist/utils/isObject.d.mts +4 -0
  34. package/dist/utils/isObject.mjs +4 -0
  35. package/dist/utils/sleep.d.mts +7 -0
  36. package/dist/utils/sleep.mjs +7 -0
  37. package/dist/utils/toCamelCase.d.mts +4 -0
  38. package/dist/utils/toCamelCase.mjs +4 -0
  39. package/dist/utils/toCamelKeys.d.mts +6 -0
  40. package/dist/utils/toCamelKeys.mjs +13 -0
  41. package/dist/utils/toSnakeCase.d.mts +4 -0
  42. package/dist/utils/toSnakeCase.mjs +4 -0
  43. package/dist/utils/toSnakeKeys.d.mts +6 -0
  44. package/dist/utils/toSnakeKeys.mjs +13 -0
  45. package/dist/validations/asDigits.d.mts +12 -0
  46. package/dist/validations/asDigits.mjs +10 -0
  47. package/dist/validations/asInteger.d.mts +12 -0
  48. package/dist/validations/asInteger.mjs +10 -0
  49. package/dist/validations/bitfield.d.mts +23 -0
  50. package/dist/validations/bitfield.mjs +20 -0
  51. package/dist/validations/boundedArray.d.mts +13 -0
  52. package/dist/validations/boundedArray.mjs +9 -0
  53. package/dist/validations/boundedInteger.d.mts +13 -0
  54. package/dist/validations/boundedInteger.mjs +9 -0
  55. package/dist/validations/boundedString.d.mts +14 -0
  56. package/dist/validations/boundedString.mjs +10 -0
  57. package/dist/validations/datauri.d.mts +24 -0
  58. package/dist/validations/datauri.mjs +17 -0
  59. package/dist/validations/fileUpload.d.mts +129 -0
  60. package/dist/validations/fileUpload.mjs +114 -0
  61. package/dist/validations/hasMimeType.d.mts +16 -0
  62. package/dist/validations/hasMimeType.mjs +16 -0
  63. package/dist/validations/hasSize.d.mts +10 -0
  64. package/dist/validations/hasSize.mjs +12 -0
  65. package/dist/validations/index.d.mts +15 -0
  66. package/dist/validations/index.mjs +15 -0
  67. package/dist/validations/schema.d.mts +102 -0
  68. package/dist/validations/schema.mjs +109 -0
  69. package/dist/validations/{snowflake.d.ts → snowflake.d.mts} +9 -7
  70. package/dist/validations/snowflake.mjs +28 -0
  71. package/dist/validations/{timestamp.d.ts → timestamp.d.mts} +5 -1
  72. package/dist/validations/timestamp.mjs +6 -0
  73. package/dist/validations/toBlob.d.mts +9 -0
  74. package/dist/validations/toBlob.mjs +17 -0
  75. package/dist/validations/url.d.mts +6 -0
  76. package/dist/validations/url.mjs +5 -0
  77. package/package.json +13 -23
  78. package/dist/index.d.ts +0 -2
  79. package/dist/index.js +0 -3
  80. package/dist/index.js.map +0 -1
  81. package/dist/requests/DiscordSession.d.ts +0 -16
  82. package/dist/requests/DiscordSession.js +0 -42
  83. package/dist/requests/DiscordSession.js.map +0 -1
  84. package/dist/requests/addParams.d.ts +0 -2
  85. package/dist/requests/addParams.js +0 -11
  86. package/dist/requests/addParams.js.map +0 -1
  87. package/dist/requests/buildURL.d.ts +0 -2
  88. package/dist/requests/buildURL.js +0 -4
  89. package/dist/requests/buildURL.js.map +0 -1
  90. package/dist/requests/getAsset.d.ts +0 -2
  91. package/dist/requests/getAsset.js +0 -3
  92. package/dist/requests/getAsset.js.map +0 -1
  93. package/dist/requests/index.d.ts +0 -7
  94. package/dist/requests/index.js +0 -8
  95. package/dist/requests/index.js.map +0 -1
  96. package/dist/requests/methods.d.ts +0 -13
  97. package/dist/requests/methods.js +0 -8
  98. package/dist/requests/methods.js.map +0 -1
  99. package/dist/requests/request.d.ts +0 -2
  100. package/dist/requests/request.js +0 -35
  101. package/dist/requests/request.js.map +0 -1
  102. package/dist/requests/toProcedure.d.ts +0 -31
  103. package/dist/requests/toProcedure.js +0 -36
  104. package/dist/requests/toProcedure.js.map +0 -1
  105. package/dist/requests/toQuery.d.ts +0 -28
  106. package/dist/requests/toQuery.js +0 -9
  107. package/dist/requests/toQuery.js.map +0 -1
  108. package/dist/requests/toValidated.d.ts +0 -13
  109. package/dist/requests/toValidated.js +0 -29
  110. package/dist/requests/toValidated.js.map +0 -1
  111. package/dist/utils/isBetween.d.ts +0 -1
  112. package/dist/utils/isBetween.js +0 -2
  113. package/dist/utils/isBetween.js.map +0 -1
  114. package/dist/utils/isNonNullable.js +0 -20
  115. package/dist/utils/isNonNullable.js.map +0 -1
  116. package/dist/utils/isNumericString.d.ts +0 -1
  117. package/dist/utils/isNumericString.js +0 -2
  118. package/dist/utils/isNumericString.js.map +0 -1
  119. package/dist/utils/isObject.d.ts +0 -1
  120. package/dist/utils/isObject.js +0 -2
  121. package/dist/utils/isObject.js.map +0 -1
  122. package/dist/utils/toCamelCase.d.ts +0 -1
  123. package/dist/utils/toCamelCase.js +0 -2
  124. package/dist/utils/toCamelCase.js.map +0 -1
  125. package/dist/utils/toCamelKeys.d.ts +0 -2
  126. package/dist/utils/toCamelKeys.js +0 -16
  127. package/dist/utils/toCamelKeys.js.map +0 -1
  128. package/dist/utils/toSnakeCase.d.ts +0 -1
  129. package/dist/utils/toSnakeCase.js +0 -4
  130. package/dist/utils/toSnakeCase.js.map +0 -1
  131. package/dist/utils/toSnakeKeys.d.ts +0 -2
  132. package/dist/utils/toSnakeKeys.js +0 -16
  133. package/dist/utils/toSnakeKeys.js.map +0 -1
  134. package/dist/validations/asDigits.d.ts +0 -6
  135. package/dist/validations/asDigits.js +0 -6
  136. package/dist/validations/asDigits.js.map +0 -1
  137. package/dist/validations/asInteger.d.ts +0 -6
  138. package/dist/validations/asInteger.js +0 -6
  139. package/dist/validations/asInteger.js.map +0 -1
  140. package/dist/validations/bitfield.d.ts +0 -17
  141. package/dist/validations/bitfield.js +0 -37
  142. package/dist/validations/bitfield.js.map +0 -1
  143. package/dist/validations/boundedArray.d.ts +0 -6
  144. package/dist/validations/boundedArray.js +0 -8
  145. package/dist/validations/boundedArray.js.map +0 -1
  146. package/dist/validations/boundedInteger.d.ts +0 -6
  147. package/dist/validations/boundedInteger.js +0 -8
  148. package/dist/validations/boundedInteger.js.map +0 -1
  149. package/dist/validations/boundedString.d.ts +0 -6
  150. package/dist/validations/boundedString.js +0 -8
  151. package/dist/validations/boundedString.js.map +0 -1
  152. package/dist/validations/datauri.d.ts +0 -20
  153. package/dist/validations/datauri.js +0 -20
  154. package/dist/validations/datauri.js.map +0 -1
  155. package/dist/validations/hasMimeType.d.ts +0 -10
  156. package/dist/validations/hasMimeType.js +0 -18
  157. package/dist/validations/hasMimeType.js.map +0 -1
  158. package/dist/validations/hasSize.d.ts +0 -5
  159. package/dist/validations/hasSize.js +0 -13
  160. package/dist/validations/hasSize.js.map +0 -1
  161. package/dist/validations/index.d.ts +0 -12
  162. package/dist/validations/index.js +0 -13
  163. package/dist/validations/index.js.map +0 -1
  164. package/dist/validations/snowflake.js +0 -39
  165. package/dist/validations/snowflake.js.map +0 -1
  166. package/dist/validations/timestamp.js +0 -4
  167. package/dist/validations/timestamp.js.map +0 -1
  168. package/dist/validations/toBlob.d.ts +0 -4
  169. package/dist/validations/toBlob.js +0 -19
  170. package/dist/validations/toBlob.js.map +0 -1
  171. package/dist/validations/url.d.ts +0 -2
  172. package/dist/validations/url.js +0 -3
  173. package/dist/validations/url.js.map +0 -1
@@ -1,8 +0,0 @@
1
- import * as v from "valibot";
2
- /** A non-empty array with a length within the given bounds */
3
- export const boundedArray = (items, req = {}) => v.message(typeof req === `number`
4
- ? v.pipe(v.array(items), v.length(req))
5
- : typeof req.max === `number`
6
- ? v.pipe(v.array(items), v.minLength(req.min ?? 1), v.maxLength(req.max))
7
- : v.pipe(v.array(items), v.minLength(req.min ?? 1)), (issue) => `Expected an array with a legnth ${typeof req === `number` ? req : `>= ${req.min ?? 0}${req.max ? `&& <= ${req.max}` : ``}`}, received has length: ${issue.received.length}`);
8
- //# sourceMappingURL=boundedArray.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boundedArray.js","sourceRoot":"","sources":["../../src/validations/boundedArray.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,KAA6B,EAC7B,MAA+C,EAAE,EACvB,EAAE,CAC5B,CAAC,CAAC,OAAO,CACP,OAAO,GAAG,KAAK,QAAQ;IACrB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,CAAC,IAAI,CACJ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,EACzB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CACrB;QACH,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EACvD,CAAC,KAAK,EAAE,EAAE,CACR,mCAAmC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,0BAA0B,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAC/K,CAAC"}
@@ -1,6 +0,0 @@
1
- import * as v from "valibot";
2
- /** An integer with a value within the given bounds */
3
- export declare const boundedInteger: (req?: number | {
4
- min?: number;
5
- max?: number;
6
- }) => v.GenericSchema<number>;
@@ -1,8 +0,0 @@
1
- import * as v from "valibot";
2
- /** An integer with a value within the given bounds */
3
- export const boundedInteger = (req = {}) => v.message(typeof req === `number`
4
- ? v.pipe(v.number(), v.integer(), v.value(req))
5
- : typeof req.max === `number`
6
- ? v.pipe(v.number(), v.integer(), v.minValue(req.min ?? 0), v.maxValue(req.max))
7
- : v.pipe(v.number(), v.integer(), v.minValue(req.min ?? 0)), (issue) => `Expected an integer with a value ${typeof req === `number` ? `of ${req}` : `>= ${req.min ?? 0}${req.max ? `&& <= ${req.max}` : ``}`}, received has value: ${issue.received.length}`);
8
- //# sourceMappingURL=boundedInteger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boundedInteger.js","sourceRoot":"","sources":["../../src/validations/boundedInteger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,sDAAsD;AACtD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,MAA+C,EAAE,EACxB,EAAE,CAC3B,CAAC,CAAC,OAAO,CACP,OAAO,GAAG,KAAK,QAAQ;IACrB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,CAAC,IAAI,CACJ,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,OAAO,EAAE,EACX,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,EACxB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CACpB;QACH,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAC/D,CAAC,KAAK,EAAE,EAAE,CACR,oCAAoC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,yBAAyB,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CACvL,CAAC"}
@@ -1,6 +0,0 @@
1
- import * as v from "valibot";
2
- /** A non-empty string with a length within the given bounds */
3
- export declare const boundedString: (req?: number | {
4
- min?: number;
5
- max?: number;
6
- }) => v.GenericSchema<string>;
@@ -1,8 +0,0 @@
1
- import * as v from "valibot";
2
- /** A non-empty string with a length within the given bounds */
3
- export const boundedString = (req = {}) => v.message(typeof req === `number`
4
- ? v.pipe(v.string(), v.length(req))
5
- : typeof req.max === `number`
6
- ? v.pipe(v.string(), v.minLength(req.min ?? 1), v.maxLength(req.max))
7
- : v.pipe(v.string(), v.minLength(req.min ?? 1)), (issue) => `Expected a string with a legnth ${typeof req === `number` ? req : `>= ${req.min ?? 0}${req.max ? `&& <= ${req.max}` : ``}`}, received has length: ${issue.received.length}`);
8
- //# sourceMappingURL=boundedString.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boundedString.js","sourceRoot":"","sources":["../../src/validations/boundedString.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,+DAA+D;AAC/D,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,MAA+C,EAAE,EACxB,EAAE,CAC3B,CAAC,CAAC,OAAO,CACP,OAAO,GAAG,KAAK,QAAQ;IACrB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EACnD,CAAC,KAAK,EAAE,EAAE,CACR,mCAAmC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,0BAA0B,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAC/K,CAAC"}
@@ -1,20 +0,0 @@
1
- import * as v from "valibot";
2
- export declare const datauriRegex: RegExp;
3
- /**
4
- * Extracts metadata from a given Data URI such as it's
5
- * MIME type, params, and encoding
6
- *
7
- * Returns an empty object when given an invalid Data URI
8
- */
9
- export declare const extractDataURIMetadata: (val: string) => Partial<{
10
- mediaType: string;
11
- mimeType: `${string}/${string}`;
12
- params: string;
13
- encoding: string;
14
- data: string;
15
- }>;
16
- export declare const toBase64: (data: string) => string;
17
- /**
18
- * Validates that a string is a [data URI scheme](https://en.wikipedia.org/wiki/Data_URI_scheme)
19
- */
20
- export declare const datauri: v.GenericSchema<string>;
@@ -1,20 +0,0 @@
1
- import * as v from "valibot";
2
- export const datauriRegex = /^data:((?<mediaType>(?<mimeType>[a-z]+\/[a-z0-9-+.]+)(?<params>;[a-z0-9-.!#$%*+.{}|~`]+=[a-z0-9-.!#$%*+.{}()_|~`]+)*))?(?<encoding>;base64)?,(?<data>[a-z0-9!$&',()*+;=\-._~:@\/?%\s<>]*?)$/i;
3
- /**
4
- * Extracts metadata from a given Data URI such as it's
5
- * MIME type, params, and encoding
6
- *
7
- * Returns an empty object when given an invalid Data URI
8
- */
9
- export const extractDataURIMetadata = (val) => datauriRegex.exec(val)?.groups ?? {};
10
- export const toBase64 = (data) => typeof Buffer !== `undefined`
11
- ? Buffer.from(data, `base64`).toString()
12
- : atob(btoa(String.fromCharCode(...new TextEncoder().encode(data)))
13
- .replace(/\+/g, `-`)
14
- .replace(/\//g, `_`)
15
- .replace(/=/g, ``));
16
- /**
17
- * Validates that a string is a [data URI scheme](https://en.wikipedia.org/wiki/Data_URI_scheme)
18
- */
19
- export const datauri = v.pipe(v.custom((val) => typeof val === `string` && val.length > 0 && datauriRegex.test(val), `Invalid Data URI`), v.title(`datauri`));
20
- //# sourceMappingURL=datauri.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"datauri.js","sourceRoot":"","sources":["../../src/validations/datauri.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,MAAM,CAAC,MAAM,YAAY,GACvB,8LAA8L,CAAC;AAEjM;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,GAAW,EAOV,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC;AAE3C,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CAC/C,OAAO,MAAM,KAAK,WAAW;IAC3B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE;IACxC,CAAC,CAAC,IAAI,CACF,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SACzD,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CACrB,CAAC;AAER;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAA4B,CAAC,CAAC,IAAI,CACpD,CAAC,CAAC,MAAM,CACN,CAAC,GAAG,EAAE,EAAE,CACN,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EACrE,kBAAkB,CACnB,EACD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CACnB,CAAC"}
@@ -1,10 +0,0 @@
1
- import { type CheckAction } from "valibot";
2
- /**
3
- * Validation action to check if the given `datauri` string
4
- * has one of the provided [MIME types](https://en.wikipedia.org/wiki/Media_type)
5
- */
6
- export declare const hasMimeType: (
7
- /** an array of MIME types to validate against */
8
- requirement: Array<`${string}/${string}`>,
9
- /** an optional error message on failed validation */
10
- message?: "Received badly formatted Data URI") => CheckAction<string, typeof message>;
@@ -1,18 +0,0 @@
1
- import { check } from "valibot";
2
- import { extractDataURIMetadata } from "./datauri.js";
3
- /**
4
- * Validation action to check if the given `datauri` string
5
- * has one of the provided [MIME types](https://en.wikipedia.org/wiki/Media_type)
6
- */
7
- export const hasMimeType = (
8
- /** an array of MIME types to validate against */
9
- requirement,
10
- /** an optional error message on failed validation */
11
- message = `Received badly formatted Data URI`) => check((input) => {
12
- const { mimeType } = extractDataURIMetadata(input);
13
- if (typeof mimeType === `undefined`) {
14
- return false;
15
- }
16
- return requirement.includes(mimeType);
17
- }, message);
18
- //# sourceMappingURL=hasMimeType.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasMimeType.js","sourceRoot":"","sources":["../../src/validations/hasMimeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoB,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;AACzB,iDAAiD;AACjD,WAAyC;AACzC,qDAAqD;AACrD,UAAU,mCAA4C,EACjB,EAAE,CACvC,KAAK,CAAC,CAAC,KAAa,EAAE,EAAE;IACtB,MAAM,EAAE,QAAQ,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC,EAAE,OAAO,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import type { CheckAction } from "valibot";
2
- export declare const hasSize: (size: number | {
3
- min?: number;
4
- max?: number;
5
- }, message?: "Data URI is the incorrect size") => CheckAction<string, typeof message>;
@@ -1,13 +0,0 @@
1
- import { check } from "valibot";
2
- import { extractDataURIMetadata, toBase64 } from "./datauri.js";
3
- export const hasSize = (size, message = `Data URI is the incorrect size`) => check((dataURI) => {
4
- const { data } = extractDataURIMetadata(dataURI);
5
- if (typeof data === `undefined`) {
6
- throw new Error(`Received badly formatted Data URI`);
7
- }
8
- const actual = toBase64(data).length;
9
- return typeof size === `number`
10
- ? size === actual
11
- : actual >= (size.min ?? 0) && actual <= (size.max ?? Infinity);
12
- }, message);
13
- //# sourceMappingURL=hasSize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasSize.js","sourceRoot":"","sources":["../../src/validations/hasSize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,IAA6C,EAC7C,UAAU,gCAAyC,EACd,EAAE,CACvC,KAAK,CAAC,CAAC,OAAe,EAAE,EAAE;IACxB,MAAM,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAEjD,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IACrC,OAAO,OAAO,IAAI,KAAK,QAAQ;QAC7B,CAAC,CAAC,IAAI,KAAK,MAAM;QACjB,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC;AACpE,CAAC,EAAE,OAAO,CAAC,CAAC"}
@@ -1,12 +0,0 @@
1
- export * from "./asDigits.js";
2
- export * from "./asInteger.js";
3
- export * from "./bitfield.js";
4
- export * from "./boundedArray.js";
5
- export * from "./boundedInteger.js";
6
- export * from "./boundedString.js";
7
- export * from "./datauri.js";
8
- export * from "./hasMimeType.js";
9
- export * from "./toBlob.js";
10
- export * from "./snowflake.js";
11
- export * from "./timestamp.js";
12
- export * from "./url.js";
@@ -1,13 +0,0 @@
1
- export * from "./asDigits.js";
2
- export * from "./asInteger.js";
3
- export * from "./bitfield.js";
4
- export * from "./boundedArray.js";
5
- export * from "./boundedInteger.js";
6
- export * from "./boundedString.js";
7
- export * from "./datauri.js";
8
- export * from "./hasMimeType.js";
9
- export * from "./toBlob.js";
10
- export * from "./snowflake.js";
11
- export * from "./timestamp.js";
12
- export * from "./url.js";
13
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validations/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC"}
@@ -1,39 +0,0 @@
1
- import * as v from "valibot";
2
- import { isNonNullable } from "../utils/isNonNullable.js";
3
- import { isNumericString } from "../utils/isNumericString.js";
4
- /** UNIX timestamp representing the first second of 2015 */
5
- export const DISCORD_EPOCH = 1420070400000n;
6
- /**
7
- * Converts a `snowflake` string to a Date relative to the given epoch
8
- *
9
- * Uses Discord's epoch by default
10
- *
11
- * https://discord.com/developers/docs/reference#snowflakes
12
- */
13
- export const snowflakeToDate = (
14
- /** A snowflake string to convert */
15
- val,
16
- /** time in milliseconds to use as the epoch to derive a Date from */
17
- epoch = DISCORD_EPOCH) => new Date(Number((BigInt(val) >> 22n) + epoch));
18
- /**
19
- * An up to 64-bit unsigned numeric value derived from a timestamp which
20
- * serves as a unique identifier within Discord.
21
- *
22
- * Validates whether a given `number`, `bigint`, or numeric `string` is
23
- * a valid [Snowflake](https://discord.com/developers/docs/reference#snowflakes)
24
- * by checking if it's derived timestamp is a valid time at or after
25
- * the Discord epoch (the first second of 2015, ie: `1420070400000`).
26
- */
27
- export const snowflake = v.pipe(v.custom((val) =>
28
- // at runtime this could be any value, so filter out
29
- // obviously invalid input first
30
- isNonNullable(val) &&
31
- // then verify we have a numeric value
32
- (typeof val === `bigint` ||
33
- typeof val === `number` ||
34
- isNumericString(val)) &&
35
- // finally, verify that it accurately represents ms
36
- // at or after the Discord epoch (timestamps before
37
- // that cannot possibly be a valid Discord snowflake)
38
- snowflakeToDate(val).getTime() >= DISCORD_EPOCH, `Invalid Snowflake`), v.title(`snowflake`));
39
- //# sourceMappingURL=snowflake.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"snowflake.js","sourceRoot":"","sources":["../../src/validations/snowflake.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,2DAA2D;AAC3D,MAAM,CAAC,MAAM,aAAa,GAAG,cAAc,CAAC;AAE5C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;AAC7B,oCAAoC;AACpC,GAA6B;AAC7B,qEAAqE;AACrE,KAAK,GAAG,aAAa,EACf,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;AAE1D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,SAAS,GAA4B,CAAC,CAAC,IAAI,CACtD,CAAC,CAAC,MAAM,CACN,CAAC,GAAG,EAAE,EAAE;AACN,oDAAoD;AACpD,gCAAgC;AAChC,aAAa,CAAC,GAAG,CAAC;IAClB,sCAAsC;IACtC,CAAC,OAAO,GAAG,KAAK,QAAQ;QACtB,OAAO,GAAG,KAAK,QAAQ;QACvB,eAAe,CAAC,GAAG,CAAC,CAAC;IACvB,mDAAmD;IACnD,mDAAmD;IACnD,qDAAqD;IACrD,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,IAAI,aAAa,EACjD,mBAAmB,CACpB,EACD,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CACrB,CAAC"}
@@ -1,4 +0,0 @@
1
- import * as v from "valibot";
2
- /** An [ISO8601](https://www.loc.gov/standards/datetime/iso-tc154-wg5_n0038_iso_wd_8601-1_2016-02-16.pdf) timestamp */
3
- export const timestamp = v.message(v.pipe(v.string(), v.isoTimestamp()), (issue) => `Expected a valid timestamp, received: ${issue.received}`);
4
- //# sourceMappingURL=timestamp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timestamp.js","sourceRoot":"","sources":["../../src/validations/timestamp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,sHAAsH;AACtH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAChC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,EACpC,CAAC,KAAK,EAAE,EAAE,CAAC,yCAAyC,KAAK,CAAC,QAAQ,EAAE,CAC1C,CAAC"}
@@ -1,4 +0,0 @@
1
- /**
2
- * Transforms a `datauri` string to a Blob
3
- */
4
- export declare const toBlob: import("valibot").TransformAction<string, Blob>;
@@ -1,19 +0,0 @@
1
- import { transform } from "valibot";
2
- import { extractDataURIMetadata, toBase64 } from "./datauri.js";
3
- /**
4
- * Transforms a `datauri` string to a Blob
5
- */
6
- export const toBlob = transform((dataURI) => {
7
- const { mimeType, data } = extractDataURIMetadata(dataURI);
8
- if (typeof mimeType === `undefined` || typeof data === `undefined`) {
9
- throw new Error(`Received badly formatted Data URI`);
10
- }
11
- const base64 = toBase64(data);
12
- const ab = new ArrayBuffer(base64.length);
13
- const ia = new Uint8Array(ab);
14
- for (let i = 0; i < base64.length; i++) {
15
- ia[i] = base64.charCodeAt(i);
16
- }
17
- return new Blob([ab], { type: mimeType });
18
- });
19
- //# sourceMappingURL=toBlob.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toBlob.js","sourceRoot":"","sources":["../../src/validations/toBlob.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEhE;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,OAAe,EAAQ,EAAE;IACxD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAE3D,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE9B,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- import * as v from "valibot";
2
- export declare const url: v.GenericSchema<string>;
@@ -1,3 +0,0 @@
1
- import * as v from "valibot";
2
- export const url = v.message(v.pipe(v.string(), v.url()), (issue) => `Expected a valid URL, received: ${issue.received}`);
3
- //# sourceMappingURL=url.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"url.js","sourceRoot":"","sources":["../../src/validations/url.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,MAAM,CAAC,MAAM,GAAG,GAA4B,CAAC,CAAC,OAAO,CACnD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EAC3B,CAAC,KAAK,EAAE,EAAE,CAAC,mCAAmC,KAAK,CAAC,QAAQ,EAAE,CAC/D,CAAC"}