sliftutils 0.88.0 → 1.0.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/.cursorrules CHANGED
@@ -29,6 +29,10 @@ The code automatically updates on save, so do not ever run commands to rerun the
29
29
  Use tool calls to read files and directories where possible, instead of running "ls", "dir", etc.
30
30
 
31
31
  Coding Styles
32
+ Don't make functions that will never be reused and are short. This just makes the code too confusing. If the function is under five lines and it's not being reused, you shouldn't create it, unless instructed explicitly to create it.
33
+
34
+ Comments should be used sparingly and only if it's required to explain what's being done. If you're calling a function called create imageName and the comment is called create imageName, you will be fired because that's just stupid. It's a waste of lines.
35
+
32
36
  Comments go in the line before, never after the semicolon.
33
37
 
34
38
  Try not to use "null", and instead always use "undefined".
@@ -71,4 +71,4 @@ function generateIndexDts() {
71
71
  }
72
72
  generateIndexDts();
73
73
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVJbmRleER0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImdlbmVyYXRlSW5kZXhEdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFFN0IsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFFL0QsU0FBUyxjQUFjLENBQUMsR0FBVyxFQUFFLFdBQXFCLEVBQUU7SUFDeEQsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsQyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFbkMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztZQUNyQixjQUFjLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDcEIsQ0FBQztBQUVELFNBQVMsZ0JBQWdCO0lBQ3JCLE1BQU0sVUFBVSxHQUFhLEVBQUUsQ0FBQztJQUVoQyxLQUFLLE1BQU0sVUFBVSxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDMUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsVUFBVSw4QkFBOEIsQ0FBQyxDQUFDO1lBQ3pFLFNBQVM7UUFDYixDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTVDLE1BQU0sT0FBTyxHQUFHLFFBQVE7YUFDbkIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ1osTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDekQsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEQsTUFBTSxVQUFVLEdBQUcsYUFBYSxHQUFHLFVBQVUsR0FBRyxHQUFHLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFckYsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEQsTUFBTSxlQUFlLEdBQUcsT0FBTztpQkFDMUIsS0FBSyxDQUFDLElBQUksQ0FBQztpQkFDWCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztpQkFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRWhCLE9BQU8sbUJBQW1CLFVBQVUsUUFBUSxlQUFlLEtBQUssQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztRQUVQLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDNUQsTUFBTSxNQUFNLEdBQUcsNkZBQTZGLENBQUM7SUFFN0csRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLGFBQWEsR0FBRyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDcEUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLFVBQVUsU0FBUyxVQUFVLENBQUMsTUFBTSxzQkFBc0IsQ0FBQyxDQUFDO0FBQ3pGLENBQUM7QUFFRCxnQkFBZ0IsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmNvbnN0IEZPTERFUlNfVE9fSU5DTFVERSA9IFtcInJlbmRlci11dGlsc1wiLCBcIm1pc2NcIiwgXCJzdG9yYWdlXCJdO1xuXG5mdW5jdGlvbiBnZXRBbGxEdHNGaWxlcyhkaXI6IHN0cmluZywgZmlsZUxpc3Q6IHN0cmluZ1tdID0gW10pOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZmlsZXMgPSBmcy5yZWFkZGlyU3luYyhkaXIpO1xuXG4gICAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKGRpciwgZmlsZSk7XG4gICAgICAgIGNvbnN0IHN0YXQgPSBmcy5zdGF0U3luYyhmaWxlUGF0aCk7XG5cbiAgICAgICAgaWYgKHN0YXQuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgICAgICAgZ2V0QWxsRHRzRmlsZXMoZmlsZVBhdGgsIGZpbGVMaXN0KTtcbiAgICAgICAgfSBlbHNlIGlmIChmaWxlLmVuZHNXaXRoKFwiLmQudHNcIikpIHtcbiAgICAgICAgICAgIGZpbGVMaXN0LnB1c2goZmlsZVBhdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbGVMaXN0O1xufVxuXG5mdW5jdGlvbiBnZW5lcmF0ZUluZGV4RHRzKCkge1xuICAgIGNvbnN0IGFsbE1vZHVsZXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBmb3IgKGNvbnN0IGZvbGRlck5hbWUgb2YgRk9MREVSU19UT19JTkNMVURFKSB7XG4gICAgICAgIGNvbnN0IGZvbGRlclBhdGggPSBwYXRoLmpvaW4oX19kaXJuYW1lLCBcIi4uXCIsIGZvbGRlck5hbWUpO1xuXG4gICAgICAgIGlmICghZnMuZXhpc3RzU3luYyhmb2xkZXJQYXRoKSkge1xuICAgICAgICAgICAgY29uc29sZS5sb2coYFdhcm5pbmc6IEZvbGRlciAke2ZvbGRlck5hbWV9IGRvZXMgbm90IGV4aXN0LCBza2lwcGluZy4uLmApO1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkdHNGaWxlcyA9IGdldEFsbER0c0ZpbGVzKGZvbGRlclBhdGgpO1xuXG4gICAgICAgIGNvbnN0IG1vZHVsZXMgPSBkdHNGaWxlc1xuICAgICAgICAgICAgLm1hcChmaWxlUGF0aCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVsYXRpdmVQYXRoID0gcGF0aC5yZWxhdGl2ZShmb2xkZXJQYXRoLCBmaWxlUGF0aCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgd2l0aG91dEV4dCA9IHJlbGF0aXZlUGF0aC5yZXBsYWNlKC9cXC5kXFwudHMkLywgXCJcIik7XG4gICAgICAgICAgICAgICAgY29uc3QgbW9kdWxlUGF0aCA9IFwic2xpZnR1dGlscy9cIiArIGZvbGRlck5hbWUgKyBcIi9cIiArIHdpdGhvdXRFeHQucmVwbGFjZSgvXFxcXC9nLCBcIi9cIik7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gZnMucmVhZEZpbGVTeW5jKGZpbGVQYXRoLCBcInV0ZjhcIik7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5kZW50ZWRDb250ZW50ID0gY29udGVudFxuICAgICAgICAgICAgICAgICAgICAuc3BsaXQoXCJcXG5cIilcbiAgICAgICAgICAgICAgICAgICAgLm1hcChsaW5lID0+IGxpbmUgPyBcIiAgICBcIiArIGxpbmUgOiBsaW5lKVxuICAgICAgICAgICAgICAgICAgICAuam9pbihcIlxcblwiKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBgZGVjbGFyZSBtb2R1bGUgXCIke21vZHVsZVBhdGh9XCIge1xcbiR7aW5kZW50ZWRDb250ZW50fVxcbn1gO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgYWxsTW9kdWxlcy5wdXNoKC4uLm1vZHVsZXMpO1xuICAgIH1cblxuICAgIGNvbnN0IHNvcnRlZE1vZHVsZXMgPSBhbGxNb2R1bGVzLnNvcnQoKS5qb2luKFwiXFxuXFxuXCIpO1xuICAgIGNvbnN0IG91dHB1dFBhdGggPSBwYXRoLmpvaW4oX19kaXJuYW1lLCBcIi4uXCIsIFwiaW5kZXguZC50c1wiKTtcbiAgICBjb25zdCBoZWFkZXIgPSBgLy8gQXV0by1nZW5lcmF0ZWQgZmlsZS4gRG8gbm90IGVkaXQgbWFudWFsbHkuXFxuLy8gR2VuZXJhdGVkIGJ5OiB5YXJuIGdlbmVyYXRlLWluZGV4LWR0c1xcblxcbmA7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKG91dHB1dFBhdGgsIGhlYWRlciArIHNvcnRlZE1vZHVsZXMgKyBcIlxcblwiLCBcInV0ZjhcIik7XG4gICAgY29uc29sZS5sb2coYEdlbmVyYXRlZCAke291dHB1dFBhdGh9IHdpdGggJHthbGxNb2R1bGVzLmxlbmd0aH0gbW9kdWxlIGRlY2xhcmF0aW9uc2ApO1xufVxuXG5nZW5lcmF0ZUluZGV4RHRzKCk7XG5cbiJdfQ==
74
- /* _JS_SOURCE_HASH = "396b7ba67cc84f07dc98f22fe7d79e8fe6b153ca5bc3146e063afd6fc30913cf"; */
74
+ /* _JS_SOURCE_HASH = "129340ac8505ab8c53e1c38952975631792aeb44f95f010b20472273dfb343f1"; */
package/misc/apiKeys.tsx CHANGED
@@ -99,11 +99,20 @@ let getStorage = lazy((): {
99
99
  });
100
100
 
101
101
  export const getAPIKey = cache(async function getAPIKey(key: string): Promise<string> {
102
+ let innerKey = "key";
103
+ if (isNode()) {
104
+ if (key.includes(".json.")) {
105
+ let [baseKey, innerKeyPart] = key.split(".json.");
106
+ baseKey += ".json";
107
+ innerKey = innerKeyPart;
108
+ key = baseKey;
109
+ }
110
+ }
102
111
  let keyKey = getStorageKey(key);
103
112
  let localStorageValue = getStorage().getItem(keyKey);
104
113
  if (localStorageValue?.startsWith("{")) {
105
114
  try {
106
- localStorageValue = JSON.parse(localStorageValue).key;
115
+ localStorageValue = JSON.parse(localStorageValue)[innerKey];
107
116
  } catch { }
108
117
  }
109
118
  if (localStorageValue) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sliftutils",
3
- "version": "0.88.0",
3
+ "version": "1.0.1",
4
4
  "main": "index.js",
5
5
  "license": "MIT",
6
6
  "files": [
@@ -14,7 +14,7 @@
14
14
  "update-types": "yarn emit-dts && yarn generate-index-dts",
15
15
  "prepublishOnly": "yarn update-types",
16
16
  "run-nodejs": "node ./build-nodejs/server.js",
17
- "run-nodejs-dev": "typenode ./nodejs/server.ts",
17
+ "run-nodejs-dev": "typenode ./nodejs/server.ts --npminstall",
18
18
  "run-web": "node ./builders/webRun.js",
19
19
  "run-electron": "node ./node_modules/electron/cli.js ./build-electron/electronMain.js",
20
20
  "build-nodejs": "node ./builders/nodeJSBuildRun.js",
@@ -48,8 +48,8 @@
48
48
  "mobx": "^6.13.3",
49
49
  "preact-old-types": "^10.28.1",
50
50
  "shell-quote": "^1.8.3",
51
- "socket-function": "^0.165.0",
52
- "typenode": "^6.0.0",
51
+ "socket-function": "^1.0.1",
52
+ "typenode": "*",
53
53
  "typesafecss": "*",
54
54
  "ws": "^8.18.3",
55
55
  "yargs": "15.4.1"
package/yarn.lock CHANGED
@@ -1494,10 +1494,10 @@ slash@^3.0.0:
1494
1494
  resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
1495
1495
  integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
1496
1496
 
1497
- socket-function@^0.165.0:
1498
- version "0.165.0"
1499
- resolved "https://registry.yarnpkg.com/socket-function/-/socket-function-0.165.0.tgz#2c262c5cc75a79233d08538517030c504745a94c"
1500
- integrity sha512-VfpljEyUEjQD4flTboGwgcerK2vuVvDM0iPNL4L4Qyo76G5DQVGcHCaYDwZuuAJ8gvTXDq9j7P7vgdjElNAhXw==
1497
+ socket-function@^1.0.1:
1498
+ version "1.0.1"
1499
+ resolved "https://registry.yarnpkg.com/socket-function/-/socket-function-1.0.1.tgz#0fb37346c3395661c2c82a00a34908e1e5ed00bc"
1500
+ integrity sha512-qsiDZxYEwLtSoX+/tlSfR5bE6YUNTdV+ccs+swtZFHsTajx3PhWnTvQRdgE2AnSwhtrldv3QOmZJsOTOZKL0/A==
1501
1501
  dependencies:
1502
1502
  "@types/pako" "^2.0.3"
1503
1503
  "@types/ws" "^8.5.3"
@@ -1506,7 +1506,7 @@ socket-function@^0.165.0:
1506
1506
  pako "^2.1.0"
1507
1507
  preact "10.24.3"
1508
1508
  typedev "^0.4.0"
1509
- typenode "^5.13.0"
1509
+ typenode "^6.0.1"
1510
1510
  ws "^8.17.1"
1511
1511
 
1512
1512
  source-map-js@^0.6.2:
@@ -1617,19 +1617,10 @@ typedev@^0.4.0:
1617
1617
  debugbreak "^0.11.0"
1618
1618
  eslint "^8.18.0"
1619
1619
 
1620
- typenode@^5.13.0:
1621
- version "5.14.0"
1622
- resolved "https://registry.yarnpkg.com/typenode/-/typenode-5.14.0.tgz#c5639533b6007ded7c888188457c6b89b3669530"
1623
- integrity sha512-F42sCiPWoE/3rbJ92Wtcay9Hgp4qG7z6OSEFo4ucPybzn1hxKrsmaIStWSlqdmCwbUecguxPWTrlINErFXzbhA==
1624
- dependencies:
1625
- "@types/pegjs" "^0.10.3"
1626
- source-map-support "https://github.com/7rulnik/node-source-map-support"
1627
- typescript "5.3.3"
1628
-
1629
- typenode@^6.0.0:
1630
- version "6.0.0"
1631
- resolved "https://registry.yarnpkg.com/typenode/-/typenode-6.0.0.tgz#5b59fcf3e7ef3c6cbfae45ceb50e45ec0fa88d5a"
1632
- integrity sha512-uZmCYbmvGSTuD8inJM1Kf/FahOFpUlwiSumearWLKza+UCwiVT4If/EPEcrcCcGXPZg1yScidK2zWnJ9uZPPZQ==
1620
+ typenode@*, typenode@^6.0.1:
1621
+ version "6.0.1"
1622
+ resolved "https://registry.yarnpkg.com/typenode/-/typenode-6.0.1.tgz#bff58967341704babab8e95437f0b9242bd8aeba"
1623
+ integrity sha512-Nvul74JuBeioAZNZaGkLXVuDBNK/fEM+iJGErxPCrZbxpxIvJrXWAk1tW5KVbDZqde7JnC96OC/G7nNphw9fTw==
1633
1624
  dependencies:
1634
1625
  "@types/pegjs" "^0.10.3"
1635
1626
  source-map-support "https://github.com/7rulnik/node-source-map-support"