unvendor: Replace localforage

1c4e87b25b54cc83ae12dcdf6b359889f9931d3e

Cohee <18619528+Cohee1207@users.noreply.github.com>

9 files changed, +37 -6Showing whitespace changes
.eslintrc.cjs+0 -1
@@ -52,7 +52,6 @@ module.exports = {
52 globals: {52 globals: {
53 droll: 'readonly',53 droll: 'readonly',
54 Handlebars: 'readonly',54 Handlebars: 'readonly',
55 localforage: 'readonly',
56 moment: 'readonly',55 moment: 'readonly',
57 pdfjsLib: 'readonly',56 pdfjsLib: 'readonly',
58 Popper: 'readonly',57 Popper: 'readonly',
package-lock.json+25 -0
@@ -34,6 +34,7 @@
34 "ip-matching": "^2.1.2",34 "ip-matching": "^2.1.2",
35 "ipaddr.js": "^2.0.1",35 "ipaddr.js": "^2.0.1",
36 "jimp": "^0.22.10",36 "jimp": "^0.22.10",
37 "localforage": "^1.10.0",
37 "lodash": "^4.17.21",38 "lodash": "^4.17.21",
38 "mime-types": "^2.1.35",39 "mime-types": "^2.1.35",
39 "multer": "^1.4.5-lts.1",40 "multer": "^1.4.5-lts.1",
@@ -4504,6 +4505,12 @@
4504 "integrity": "sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==",4505 "integrity": "sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==",
4505 "license": "MIT"4506 "license": "MIT"
4506 },4507 },
4508 "node_modules/immediate": {
4509 "version": "3.0.6",
4510 "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
4511 "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==",
4512 "license": "MIT"
4513 },
4507 "node_modules/import-fresh": {4514 "node_modules/import-fresh": {
4508 "version": "3.3.0",4515 "version": "3.3.0",
4509 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",4516 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
@@ -4946,6 +4953,15 @@
4946 "node": ">= 0.8.0"4953 "node": ">= 0.8.0"
4947 }4954 }
4948 },4955 },
4956 "node_modules/lie": {
4957 "version": "3.1.1",
4958 "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz",
4959 "integrity": "sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==",
4960 "license": "MIT",
4961 "dependencies": {
4962 "immediate": "~3.0.5"
4963 }
4964 },
4949 "node_modules/load-bmfont": {4965 "node_modules/load-bmfont": {
4950 "version": "1.4.2",4966 "version": "1.4.2",
4951 "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.2.tgz",4967 "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.2.tgz",
@@ -4971,6 +4987,15 @@
4971 "node": ">=6.11.5"4987 "node": ">=6.11.5"
4972 }4988 }
4973 },4989 },
4990 "node_modules/localforage": {
4991 "version": "1.10.0",
4992 "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz",
4993 "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==",
4994 "license": "Apache-2.0",
4995 "dependencies": {
4996 "lie": "3.1.1"
4997 }
4998 },
4974 "node_modules/locate-path": {4999 "node_modules/locate-path": {
4975 "version": "6.0.0",5000 "version": "6.0.0",
4976 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",5001 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
package.json+1 -0
@@ -24,6 +24,7 @@
24 "ip-matching": "^2.1.2",24 "ip-matching": "^2.1.2",
25 "ipaddr.js": "^2.0.1",25 "ipaddr.js": "^2.0.1",
26 "jimp": "^0.22.10",26 "jimp": "^0.22.10",
27 "localforage": "^1.10.0",
27 "lodash": "^4.17.21",28 "lodash": "^4.17.21",
28 "mime-types": "^2.1.35",29 "mime-types": "^2.1.35",
29 "multer": "^1.4.5-lts.1",30 "multer": "^1.4.5-lts.1",
public/global.d.ts+0 -1
@@ -1,7 +1,6 @@
1// Global namespace modules1// Global namespace modules
2declare var droll;2declare var droll;
3declare var Handlebars;3declare var Handlebars;
4declare var localforage;
5declare var pdfjsLib;4declare var pdfjsLib;
6declare var Popper;5declare var Popper;
7declare var showdown;6declare var showdown;
public/index.html+0 -1
@@ -6758,7 +6758,6 @@
6758 <script src="lib/select2-search-placeholder.js"></script>6758 <script src="lib/select2-search-placeholder.js"></script>
6759 <script src="lib/seedrandom.min.js"></script>6759 <script src="lib/seedrandom.min.js"></script>
6760 <script src="lib/droll.js"></script>6760 <script src="lib/droll.js"></script>
6761 <script src="lib/localforage.min.js"></script>
6762 <script src="lib/handlebars.js"></script>6761 <script src="lib/handlebars.js"></script>
6763 <script src="lib/pagination.js"></script>6762 <script src="lib/pagination.js"></script>
6764 <script src="lib/toolcool-color-picker.js"></script>6763 <script src="lib/toolcool-color-picker.js"></script>
public/jsconfig.json+0 -1
@@ -24,7 +24,6 @@
24 "droll",24 "droll",
25 "handlebars",25 "handlebars",
26 "highlight.js",26 "highlight.js",
27 "localforage",
28 "pdfjs-dist",27 "pdfjs-dist",
29 "@mozilla/readability"28 "@mozilla/readability"
30 ]29 ]
public/lib.js+7 -0
@@ -5,6 +5,7 @@
5import Fuse from 'fuse.js';5import Fuse from 'fuse.js';
6import DOMPurify from 'dompurify';6import DOMPurify from 'dompurify';
7import hljs from 'highlight.js';7import hljs from 'highlight.js';
8import localforage from 'localforage';
89
9/**10/**
10 * Expose the libraries to the 'window' object.11 * Expose the libraries to the 'window' object.
@@ -27,16 +28,22 @@ export function initLibraryShims() {
27 // @ts-ignore28 // @ts-ignore
28 window.hljs = hljs;29 window.hljs = hljs;
29 }30 }
31 if (!('localforage' in window)) {
32 // @ts-ignore
33 window.localforage = localforage;
34 }
30}35}
3136
32export default {37export default {
33 Fuse,38 Fuse,
34 DOMPurify,39 DOMPurify,
35 hljs,40 hljs,
41 localforage,
36};42};
3743
38export {44export {
39 Fuse,45 Fuse,
40 DOMPurify,46 DOMPurify,
41 hljs,47 hljs,
48 localforage,
42};49};
public/script.js+2 -1
@@ -2,6 +2,7 @@ import {
2 Fuse,2 Fuse,
3 DOMPurify,3 DOMPurify,
4 hljs,4 hljs,
5 localforage,
5 initLibraryShims,6 initLibraryShims,
6 default as libs,7 default as libs,
7} from './lib.js';8} from './lib.js';
@@ -503,7 +504,7 @@ reloadMarkdownProcessor();
503504
504// array for prompt token calculations505// array for prompt token calculations
505console.debug('initializing Prompt Itemization Array on Startup');506console.debug('initializing Prompt Itemization Array on Startup');
506const promptStorage = new localforage.createInstance({ name: 'SillyTavern_Prompts' });507const promptStorage = localforage.createInstance({ name: 'SillyTavern_Prompts' });
507export let itemizedPrompts = [];508export let itemizedPrompts = [];
508509
509export const systemUserName = 'SillyTavern System';510export const systemUserName = 'SillyTavern System';
public/scripts/tokenizers.js+2 -1
@@ -1,3 +1,4 @@
1import { localforage } from '../lib.js';
1import { characters, main_api, api_server, nai_settings, online_status, this_chid } from '../script.js';2import { characters, main_api, api_server, nai_settings, online_status, this_chid } from '../script.js';
2import { power_user, registerDebugFunction } from './power-user.js';3import { power_user, registerDebugFunction } from './power-user.js';
3import { chat_completion_sources, model_list, oai_settings } from './openai.js';4import { chat_completion_sources, model_list, oai_settings } from './openai.js';
@@ -135,7 +136,7 @@ const TOKENIZER_URLS = {
135 },136 },
136};137};
137138
138const objectStore = new localforage.createInstance({ name: 'SillyTavern_ChatCompletions' });139const objectStore = localforage.createInstance({ name: 'SillyTavern_ChatCompletions' });
139140
140let tokenCache = {};141let tokenCache = {};
141142