From 6f425906e59731bdcb2df5b84705d1a5d68b46e8 Mon Sep 17 00:00:00 2001 From: Philipp Kunz Date: Mon, 1 May 2023 12:44:59 +0200 Subject: [PATCH] fix(core): update --- package.json | 1 + pnpm-lock.yaml | 204 +++++++++++++++++++++++++++++ test/skip.coexistence.smartntml.ts | 44 +++++++ ts/00_commitinfo_data.ts | 2 +- ts/webstore.classes.webstore.ts | 8 +- 5 files changed, 257 insertions(+), 2 deletions(-) create mode 100644 test/skip.coexistence.smartntml.ts diff --git a/package.json b/package.json index 1811ce4..eaa5a76 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "@gitzone/tsbuild": "^2.1.65", "@gitzone/tsrun": "^1.2.39", "@gitzone/tstest": "^1.0.74", + "@pushrocks/smartntml": "^2.0.1", "@pushrocks/tapbundle": "^5.0.4", "@types/node": "^18.16.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b549446..79718be 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -36,6 +36,9 @@ devDependencies: '@gitzone/tstest': specifier: ^1.0.74 version: 1.0.74(@types/node@18.16.3) + '@pushrocks/smartntml': + specifier: ^2.0.1 + version: 2.0.1 '@pushrocks/tapbundle': specifier: ^5.0.4 version: 5.0.4 @@ -113,6 +116,13 @@ packages: js-tokens: 4.0.0 dev: true + /@babel/runtime@7.21.5: + resolution: {integrity: sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==} + engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.13.11 + dev: true + /@cspotcode/source-map-support@0.8.1: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} @@ -120,6 +130,50 @@ packages: '@jridgewell/trace-mapping': 0.3.9 dev: true + /@designestate/dees-comms@1.0.22: + resolution: {integrity: sha512-zZ2AwCy49sj1fNyeSMtAxcN4qAGiP5+OjJCtY88YjrNbvD83v4GZpjci0nFUPuvOkCoeo18Uw8xgZSDy8lc59Q==} + dependencies: + '@apiglobal/typedrequest': 2.0.12 + '@apiglobal/typedrequest-interfaces': 1.0.20 + '@pushrocks/smartdelay': 2.0.13 + broadcast-channel: 3.7.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@designestate/dees-domtools@2.0.30: + resolution: {integrity: sha512-/v2BG8gAErBOiAXsoqWZmGgvRu2S1n9nd1LgXaYsJ4sj3zokUaeXzpuGrvz7j5yMXZujSpPVf075YQSn5Tgw+w==} + dependencies: + '@apiglobal/typedrequest': 2.0.12 + '@designestate/dees-comms': 1.0.22 + '@pushrocks/lik': 6.0.2 + '@pushrocks/smartdelay': 3.0.1 + '@pushrocks/smartjson': 5.0.5 + '@pushrocks/smartpromise': 4.0.2 + '@pushrocks/smartrouter': 1.0.16 + '@pushrocks/smartrx': 3.0.0 + '@pushrocks/smartstate': 2.0.6 + '@pushrocks/smarturl': 3.0.6 + '@pushrocks/webrequest': 3.0.21 + '@pushrocks/websetup': 3.0.16 + '@pushrocks/webstore': 2.0.5 + lit: 2.7.3 + sweet-scroll: 4.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@designestate/dees-element@2.0.20: + resolution: {integrity: sha512-qHzBitO37f1t2nBn/qy/F/ZTJ2Vxjl9alG1Bjsdw0nklC1jyW6Y8B3pdK9tN8xV+zIo7IcXubl0JLwgINI8nfw==} + dependencies: + '@designestate/dees-domtools': 2.0.30 + '@pushrocks/isounique': 1.0.5 + '@pushrocks/smartrx': 3.0.0 + lit: 2.7.3 + transitivePeerDependencies: + - supports-color + dev: true + /@esbuild/linux-loong64@0.14.54: resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==} engines: {node: '>=12'} @@ -213,6 +267,14 @@ packages: - utf-8-validate dev: true + /@happy-dom/global-registrator@8.9.0: + resolution: {integrity: sha512-Kw/YMNv1kmH862kQUzXM6K0Y4AW5b0I/+2EIopVc7edurBwY8LHSKd5gJzEEQvdgapSeDJowhOCgL0tkhJWi4A==} + dependencies: + happy-dom: 8.9.0 + transitivePeerDependencies: + - encoding + dev: true + /@jridgewell/resolve-uri@3.1.1: resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} @@ -421,6 +483,12 @@ packages: dependencies: '@pushrocks/smartpromise': 3.1.10 + /@pushrocks/smartdelay@3.0.1: + resolution: {integrity: sha512-I+i/QhC6kLsXsWyW19UgD1vH2r1YWVxK19VMxt2CEuvxMyC6tuCd0vqud9vv5JxaxsJwxWlOsrURkgL4tXeILQ==} + dependencies: + '@pushrocks/smartpromise': 4.0.2 + dev: true + /@pushrocks/smartenv@5.0.5: resolution: {integrity: sha512-VWON1OJ4qV2/9hzJbgRquRekaO9am3b8W82tgCwgO6LBg23ea2tanfd+gESVMbRFduxHVoFLvlhSBcDGM5zsLA==} dependencies: @@ -597,6 +665,17 @@ packages: systeminformation: 5.17.12 dev: true + /@pushrocks/smartntml@2.0.1: + resolution: {integrity: sha512-HO59zb9QxK2cDRGpB3KfeGpbw3r+w8843lkM6FS8LcRKfxbE/WGmEPJRPVtV/WEiEIVe4TwLXrlr3hYInetQ6A==} + dependencies: + '@designestate/dees-element': 2.0.20 + '@happy-dom/global-registrator': 8.9.0 + '@pushrocks/smartpromise': 3.1.10 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + /@pushrocks/smartparam@1.1.6: resolution: {integrity: sha512-1El/F2QTWYDGy4Nh6vz9Ry1JVg1FEeyexB7Uvi4zHElpXYVxwso6xImRTLj+SW50JAg7nwEZ+ljkzTG9XvnwWA==} dependencies: @@ -669,6 +748,12 @@ packages: - supports-color dev: true + /@pushrocks/smartrouter@1.0.16: + resolution: {integrity: sha512-x5lMYOk9Wh6pS7LrGlpmXQ88ObnXi5wC1svQLnS5XraEjiSUhYAIbsM5QJ5YX4VSdhKZ9n59fsdA7/idg9BEYQ==} + dependencies: + path-to-regexp: 6.2.1 + dev: true + /@pushrocks/smartrx@2.0.27: resolution: {integrity: sha512-aFRpGxDZgHH1mpmkRBTFwuIVqFiDxk22n2vX2gW4hntV0nJGlt9M9dixMFFXGUjabwX9hHW7y60QPJm2rKaypA==} dependencies: @@ -741,6 +826,16 @@ packages: - supports-color dev: true + /@pushrocks/smartstate@2.0.6: + resolution: {integrity: sha512-r/eHEFbC9jJgvtUFwiox+cRsDbQ6ce9IMgKHIR4BjTVC+Z9L7bD6o9SC7KHc8SLqUTPI5Is6q8O4wEe5qK0Caw==} + dependencies: + '@pushrocks/isohash': 2.0.1 + '@pushrocks/lik': 6.0.2 + '@pushrocks/smartjson': 5.0.5 + '@pushrocks/smartpromise': 4.0.2 + '@pushrocks/smartrx': 3.0.0 + dev: true + /@pushrocks/smartstream@2.0.3: resolution: {integrity: sha512-Zz1amk2FgqWyZFQE8WonKhNMreETm50pqDanp2g9uJBCNwFHIppJD4Qbpy/FFEFfp4Rs326hoBCWbZwU/FEymw==} dependencies: @@ -854,6 +949,14 @@ packages: - supports-color dev: true + /@pushrocks/websetup@3.0.16: + resolution: {integrity: sha512-90mHfn7JldJG19dhymHkO8UEV0SKWqZIL2245ShS6aMTrkO72Rkj2gNOK9ESdDeuWvcZ4AGyMwISsCK0NBgacg==} + dependencies: + '@pushrocks/smartdelay': 2.0.13 + '@pushrocks/smartpromise': 3.1.10 + '@tsclass/tsclass': 3.0.48 + dev: true + /@pushrocks/webstore@2.0.5: resolution: {integrity: sha512-O91dyT0o7xgeJsgftopa7NrE+sZxAQRr8i3UOZ6+UhyJx95v3kssPiE6aJ2uNsESKl3IlDq6RInLr1zbyFsqkg==} dependencies: @@ -1490,6 +1593,11 @@ packages: engines: {node: ^4.5.0 || >= 5.9} dev: true + /big-integer@1.6.51: + resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} + engines: {node: '>=0.6'} + dev: true + /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} @@ -1563,6 +1671,19 @@ packages: fill-range: 7.0.1 dev: true + /broadcast-channel@3.7.0: + resolution: {integrity: sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==} + dependencies: + '@babel/runtime': 7.21.5 + detect-node: 2.1.0 + js-sha3: 0.8.0 + microseconds: 0.2.0 + nano-time: 1.0.0 + oblivious-set: 1.0.0 + rimraf: 3.0.2 + unload: 2.2.0 + dev: true + /buffer-crc32@0.2.13: resolution: {integrity: sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=} dev: true @@ -1832,6 +1953,10 @@ packages: dependencies: type-fest: 1.4.0 + /css.escape@1.5.1: + resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} + dev: true + /dayjs@1.11.7: resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==} @@ -1930,6 +2055,10 @@ packages: engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} dev: true + /detect-node@2.1.0: + resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} + dev: true + /devtools-protocol@0.0.1019158: resolution: {integrity: sha512-wvq+KscQ7/6spEV7czhnZc9RM/woz1AY+/Vpd8/h2HFMwJSdTliu7f/yr1A6vDdJfKICZsShqsYpEQbdhg8AFQ==} dev: true @@ -2593,6 +2722,20 @@ packages: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: true + /happy-dom@8.9.0: + resolution: {integrity: sha512-JZwJuGdR7ko8L61136YzmrLv7LgTh5b8XaEM3P709mLjyQuXJ3zHTDXvUtBBahRjGlcYW0zGjIiEWizoTUGKfA==} + dependencies: + css.escape: 1.5.1 + he: 1.2.0 + iconv-lite: 0.6.3 + node-fetch: 2.6.7 + webidl-conversions: 7.0.0 + whatwg-encoding: 2.0.0 + whatwg-mimetype: 3.0.0 + transitivePeerDependencies: + - encoding + dev: true + /has-flag@3.0.0: resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} engines: {node: '>=4'} @@ -2723,6 +2866,13 @@ packages: safer-buffer: 2.1.2 dev: true + /iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + dependencies: + safer-buffer: 2.1.2 + dev: true + /idb@7.1.1: resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==} @@ -2906,6 +3056,10 @@ packages: /js-base64@3.7.5: resolution: {integrity: sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA==} + /js-sha3@0.8.0: + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + dev: true + /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true @@ -3209,6 +3363,10 @@ packages: picomatch: 2.3.1 dev: true + /microseconds@0.2.0: + resolution: {integrity: sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==} + dev: true + /mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -3281,6 +3439,12 @@ packages: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} dev: true + /nano-time@1.0.0: + resolution: {integrity: sha1-sFVPaa2J4i0JB/ehKwmTpdlhN+8=} + dependencies: + big-integer: 1.6.51 + dev: true + /nanocolors@0.2.13: resolution: {integrity: sha512-0n3mSAQLPpGLV9ORXT5+C/D4mwew7Ebws69Hx4E2sgz2ZA5+32Q80B9tL8PbL7XHnRDiAxH/pnrUJ9a4fkTNTA==} dev: true @@ -3347,6 +3511,10 @@ packages: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} + /oblivious-set@1.0.0: + resolution: {integrity: sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==} + dev: true + /observable-fns@0.6.1: resolution: {integrity: sha512-9gRK4+sRWzeN6AOewNBTLXir7Zl/i3GB6Yl26gK4flxz8BXVpD3kt8amREmWNb0mxYOGDotvE5a4N+PtGGKdkg==} dev: true @@ -3468,6 +3636,10 @@ packages: resolution: {integrity: sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=} dev: true + /path-to-regexp@6.2.1: + resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} + dev: true + /path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -3700,6 +3872,10 @@ packages: typeson: 6.1.0 typeson-registry: 1.0.0-alpha.39 + /regenerator-runtime@0.13.11: + resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + dev: true + /relateurl@0.2.7: resolution: {integrity: sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=} engines: {node: '>= 0.10'} @@ -4008,6 +4184,10 @@ packages: has-flag: 4.0.0 dev: true + /sweet-scroll@4.0.0: + resolution: {integrity: sha512-mR6fRsAQANtm3zpzhUE73KAOt2aT4ZsWzNSggiEsSqdO6Zh4gM7ioJG81EngrZEl0XAc3ZvzEfhxggOoEBc8jA==} + dev: true + /symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} @@ -4207,6 +4387,13 @@ packages: engines: {node: '>= 10.0.0'} dev: true + /unload@2.2.0: + resolution: {integrity: sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==} + dependencies: + '@babel/runtime': 7.21.5 + detect-node: 2.1.0 + dev: true + /unorm@1.6.0: resolution: {integrity: sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA==} engines: {node: '>= 0.4.0'} @@ -4266,6 +4453,23 @@ packages: resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==} engines: {node: '>=10.4'} + /webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} + dev: true + + /whatwg-encoding@2.0.0: + resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==} + engines: {node: '>=12'} + dependencies: + iconv-lite: 0.6.3 + dev: true + + /whatwg-mimetype@3.0.0: + resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} + engines: {node: '>=12'} + dev: true + /whatwg-url@5.0.0: resolution: {integrity: sha1-lmRU6HZUYuN2RNNib2dCzotwll0=} dependencies: diff --git a/test/skip.coexistence.smartntml.ts b/test/skip.coexistence.smartntml.ts new file mode 100644 index 0000000..2d45781 --- /dev/null +++ b/test/skip.coexistence.smartntml.ts @@ -0,0 +1,44 @@ +import { expect, tap } from '@pushrocks/tapbundle'; + +import * as smartntml from '@pushrocks/smartntml'; +const smartntmlInstance = new smartntml.Smartntml(); + +import * as webstore from '../ts/index.js'; + +let testWebstore: webstore.WebStore; + +tap.test('first test', async () => { + testWebstore = new webstore.WebStore({ + dbName: 'mytest-db', + storeName: 'mytest-store', + }); + expect(testWebstore).toBeInstanceOf(webstore.WebStore); +}); + +tap.test('should allow storing a string', async () => { + await testWebstore.set('mystring', 'heythere'); + expect(await testWebstore.get('mystring')).toEqual('heythere'); +}); + +tap.test('should allow storing an object', async () => { + await testWebstore.set('testProp1', { + wow: 'wowVal', + }); + console.log(JSON.stringify(await testWebstore.get('testProp1'))); +}); + +tap.test('should overwrite a value', async () => { + await testWebstore.set('testProp1', { + wow: 'wowVal2', + }); + console.log(JSON.stringify(await testWebstore.get('testProp1'))); +}); + +tap.test('should correctly check the existence of keys', async () => { + const resultNotThere = await testWebstore.check('notThere'); + const resultThere = await testWebstore.check('testProp1'); + expect(resultNotThere).toBeFalse(); + expect(resultThere).toBeTrue(); +}); + +tap.start(); diff --git a/ts/00_commitinfo_data.ts b/ts/00_commitinfo_data.ts index 4945567..7a50ecd 100644 --- a/ts/00_commitinfo_data.ts +++ b/ts/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@pushrocks/webstore', - version: '2.0.6', + version: '2.0.7', description: 'high performance storage in the browser using indexed db' } diff --git a/ts/webstore.classes.webstore.ts b/ts/webstore.classes.webstore.ts index 9b71f52..eb63154 100644 --- a/ts/webstore.classes.webstore.ts +++ b/ts/webstore.classes.webstore.ts @@ -24,8 +24,14 @@ export class WebStore { this.initCalled = true; const smartenv = new plugins.smartenv.Smartenv(); - if (!smartenv.isBrowser) { + if (!smartenv.isBrowser && !globalThis.indexedDB) { + console.log('hey'); + console.log(globalThis.indexedDB); await smartenv.getSafeNodeModule('fake-indexeddb/auto'); + if (!globalThis.indexedDB) { + const mod = await smartenv.getSafeNodeModule('fake-indexeddb'); + globalThis.indexedDB = new mod.IDBFactory(); + } } this.db = await plugins.idb.openDB(this.options.dbName, 1, {