@mostfeatured/dbi 0.1.42 → 0.1.44
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customId.d.ts","sourceRoot":"","sources":["../../src/utils/customId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,UAAQ,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"customId.d.ts","sourceRoot":"","sources":["../../src/utils/customId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,UAAQ,GAAG,MAAM,CAuBnH;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,CAmBpH"}
|
package/dist/utils/customId.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customId.js","sourceRoot":"","sources":["../../src/utils/customId.ts"],"names":[],"mappings":";;AAIA,
|
|
1
|
+
{"version":3,"file":"customId.js","sourceRoot":"","sources":["../../src/utils/customId.ts"],"names":[],"mappings":"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","sourcesContent":["import { DBI } from \"../DBI\";\r\nimport * as stuffs from \"stuffs\";\r\nimport { NamespaceEnums } from \"../../generated/namespaceData\";\r\n\r\nexport function buildCustomId(dbi: DBI<NamespaceEnums>, name: string, data: any[], ttl?: number, v2 = false): string {\r\n let customId = [\r\n `${v2 ? 'v2:' : ''}${name}`,\r\n ...data.map(value => {\r\n if (typeof value == \"string\") return value;\r\n if (typeof value == \"number\") return `π${value}`;\r\n if (typeof value == \"bigint\") return `ᙖ${value.toString()}`;\r\n if (typeof value == \"boolean\") return `𝞫${value ? 1 : 0}`;\r\n if (typeof value == \"undefined\") return \"🗶u\";\r\n if (value === null) return \"🗶n\";\r\n if (value?.$ref) return `¤${value.$ref}`;\r\n let id = stuffs.randomString(8);\r\n Object.assign(value, {\r\n $ref: id,\r\n $unRef() { return dbi.data.refs.delete(id); },\r\n });\r\n dbi.data.refs.set(id, { at: Date.now(), value, ttl });\r\n return `¤${id}`;\r\n })\r\n ].join(\"—\");\r\n if (!dbi.config.strict) customId = customId.slice(0, 100);\r\n if (customId.length > 100) throw new Error(\"Custom id cannot be longer than 100 characters.\")\r\n return customId;\r\n}\r\n\r\nexport function parseCustomId(dbi: DBI<NamespaceEnums>, customId: string): { name: string, data: any[], v2: boolean } {\r\n let splitted = customId.split(\"—\");\r\n let name = splitted.shift();\r\n let v2 = name.startsWith(\"v2:\");\r\n if (v2) name = name.slice(3);\r\n let data = splitted.map(value => {\r\n if (value.startsWith(\"π\")) return Number(value.slice(1));\r\n if (value.startsWith(\"𝞫\")) return !!Number(value.slice(1));\r\n if (value.startsWith(\"ᙖ\")) return BigInt(value.slice(1));\r\n if (value.startsWith(\"¤\")) return dbi.data.refs.get(value.slice(1))?.value;\r\n if (value == \"🗶u\") return undefined;\r\n if (value == \"🗶n\") return null;\r\n return value;\r\n });\r\n return {\r\n v2,\r\n name,\r\n data\r\n }\r\n}"]}
|
package/package.json
CHANGED
package/src/utils/customId.ts
CHANGED
|
@@ -12,6 +12,7 @@ export function buildCustomId(dbi: DBI<NamespaceEnums>, name: string, data: any[
|
|
|
12
12
|
if (typeof value == "boolean") return `𝞫${value ? 1 : 0}`;
|
|
13
13
|
if (typeof value == "undefined") return "🗶u";
|
|
14
14
|
if (value === null) return "🗶n";
|
|
15
|
+
if (value?.$ref) return `¤${value.$ref}`;
|
|
15
16
|
let id = stuffs.randomString(8);
|
|
16
17
|
Object.assign(value, {
|
|
17
18
|
$ref: id,
|