From 8661d866d4cf6ae051aa34fd4df8fd4a58ce3790 Mon Sep 17 00:00:00 2001 From: Marco Falkenberg Date: Thu, 19 Sep 2024 10:56:47 +0200 Subject: [PATCH] feat(Models): refresh Models by tags (URLs per default) --- .idea/.name | 2 +- .idea/{api-tools.iml => API Tools.iml} | 0 .idea/modules.xml | 2 +- .idea/nx-angular-config.xml | 4 + .pnp.cjs | 777 +++++++++++++++++- packages/commons/package.json | 4 +- packages/generator/package.json | 2 +- packages/mittwald/package.json | 2 +- packages/models/package.json | 9 +- packages/models/src/config/behaviors/api.ts | 3 + .../models/src/project/Project/Project.ts | 2 +- .../src/react/MittwaldApiModelProvider.ts | 16 - .../src/react/MittwaldApiModelProvider.tsx | 25 + .../src/react/asyncResourceInvalidation.ts | 38 + packages/models/src/react/index.ts | 1 + .../models/src/react/provideReact.test.tsx | 90 ++ packages/models/src/react/provideReact.ts | 23 +- .../models/src/react/reactProvisionContext.ts | 5 + packages/models/src/react/reactUsePromise.ts | 3 +- tsconfig.json | 3 +- yarn.lock | 702 +++++++++++++++- 21 files changed, 1632 insertions(+), 81 deletions(-) rename .idea/{api-tools.iml => API Tools.iml} (100%) create mode 100644 .idea/nx-angular-config.xml delete mode 100644 packages/models/src/react/MittwaldApiModelProvider.ts create mode 100644 packages/models/src/react/MittwaldApiModelProvider.tsx create mode 100644 packages/models/src/react/asyncResourceInvalidation.ts create mode 100644 packages/models/src/react/provideReact.test.tsx create mode 100644 packages/models/src/react/reactProvisionContext.ts diff --git a/.idea/.name b/.idea/.name index ab664ae3..69fb9ca0 100644 --- a/.idea/.name +++ b/.idea/.name @@ -1 +1 @@ -api-tools \ No newline at end of file +API Tools \ No newline at end of file diff --git a/.idea/api-tools.iml b/.idea/API Tools.iml similarity index 100% rename from .idea/api-tools.iml rename to .idea/API Tools.iml diff --git a/.idea/modules.xml b/.idea/modules.xml index 5aff7e2d..cce54a79 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/.idea/nx-angular-config.xml b/.idea/nx-angular-config.xml new file mode 100644 index 00000000..81b95d04 --- /dev/null +++ b/.idea/nx-angular-config.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.pnp.cjs b/.pnp.cjs index 384f65c0..da68892d 100644 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -67,6 +67,15 @@ const RAW_RUNTIME_STATE = "linkType": "SOFT"\ }]\ ]],\ + ["@adobe/css-tools", [\ + ["npm:4.4.0", {\ + "packageLocation": "./.yarn/cache/@adobe-css-tools-npm-4.4.0-3e89ecd033-9c6315fe9e.zip/node_modules/@adobe/css-tools/",\ + "packageDependencies": [\ + ["@adobe/css-tools", "npm:4.4.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@ampproject/remapping", [\ ["npm:2.2.1", {\ "packageLocation": "./.yarn/cache/@ampproject-remapping-npm-2.2.1-3da3d624be-e15fecbf3b.zip/node_modules/@ampproject/remapping/",\ @@ -105,6 +114,15 @@ const RAW_RUNTIME_STATE = ["chalk", "npm:2.4.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.24.7", {\ + "packageLocation": "./.yarn/cache/@babel-code-frame-npm-7.24.7-315a600a58-4812e94885.zip/node_modules/@babel/code-frame/",\ + "packageDependencies": [\ + ["@babel/code-frame", "npm:7.24.7"],\ + ["@babel/highlight", "npm:7.24.7"],\ + ["picocolors", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/compat-data", [\ @@ -421,6 +439,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-validator-identifier", "npm:7.22.20"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.24.7", {\ + "packageLocation": "./.yarn/cache/@babel-helper-validator-identifier-npm-7.24.7-748889c8d2-86875063f5.zip/node_modules/@babel/helper-validator-identifier/",\ + "packageDependencies": [\ + ["@babel/helper-validator-identifier", "npm:7.24.7"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-validator-option", [\ @@ -481,6 +506,17 @@ const RAW_RUNTIME_STATE = ["js-tokens", "npm:4.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.24.7", {\ + "packageLocation": "./.yarn/cache/@babel-highlight-npm-7.24.7-d792bd8d9f-69b73f38cd.zip/node_modules/@babel/highlight/",\ + "packageDependencies": [\ + ["@babel/highlight", "npm:7.24.7"],\ + ["@babel/helper-validator-identifier", "npm:7.24.7"],\ + ["chalk", "npm:2.4.2"],\ + ["js-tokens", "npm:4.0.0"],\ + ["picocolors", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/parser", [\ @@ -999,6 +1035,14 @@ const RAW_RUNTIME_STATE = ["regenerator-runtime", "npm:0.14.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.6", {\ + "packageLocation": "./.yarn/cache/@babel-runtime-npm-7.25.6-6725f0979a-0c4134734d.zip/node_modules/@babel/runtime/",\ + "packageDependencies": [\ + ["@babel/runtime", "npm:7.25.6"],\ + ["regenerator-runtime", "npm:0.14.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/template", [\ @@ -1933,7 +1977,7 @@ const RAW_RUNTIME_STATE = ["@mittwald/api-client", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#workspace:packages/mittwald"],\ ["@mittwald/api-client-commons", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#workspace:packages/commons"],\ ["@mittwald/api-code-generator", "workspace:packages/generator"],\ - ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.5.0"],\ ["@types/mittwald__react-use-promise", null],\ ["@types/node", "npm:20.14.14"],\ ["@types/react", "npm:18.3.3"],\ @@ -1968,7 +2012,7 @@ const RAW_RUNTIME_STATE = ["@mittwald/api-client", "workspace:packages/mittwald"],\ ["@mittwald/api-client-commons", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#workspace:packages/commons"],\ ["@mittwald/api-code-generator", "workspace:packages/generator"],\ - ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.5.0"],\ ["@types/node", "npm:20.14.14"],\ ["@types/react", "npm:18.3.3"],\ ["@typescript-eslint/eslint-plugin", "virtual:36a01d8083315b8a6e8362097258ea8bc0f9dfb672cb210742e054760850c673a1038f542a6b7156397b5275ace8ee0482231cac5e8898044fa1a1c29f78ee5b#npm:7.18.0"],\ @@ -1999,7 +2043,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["@mittwald/api-client-commons", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#workspace:packages/commons"],\ ["@jest/globals", "npm:29.7.0"],\ - ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.5.0"],\ ["@types/jest", "npm:29.5.12"],\ ["@types/jest__globals", null],\ ["@types/mittwald__react-use-promise", null],\ @@ -2037,7 +2081,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["@mittwald/api-client-commons", "workspace:packages/commons"],\ ["@jest/globals", "npm:29.7.0"],\ - ["@mittwald/react-use-promise", "virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:2.5.0"],\ ["@types/jest", "npm:29.5.12"],\ ["@types/parse-path", "npm:7.0.3"],\ ["@typescript-eslint/eslint-plugin", "virtual:36a01d8083315b8a6e8362097258ea8bc0f9dfb672cb210742e054760850c673a1038f542a6b7156397b5275ace8ee0482231cac5e8898044fa1a1c29f78ee5b#npm:7.18.0"],\ @@ -2124,21 +2168,28 @@ const RAW_RUNTIME_STATE = ["@mittwald/api-models", "workspace:packages/models"],\ ["@jest/globals", "npm:29.7.0"],\ ["@mittwald/api-client", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#workspace:packages/mittwald"],\ - ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.5.0"],\ + ["@testing-library/dom", "npm:10.4.0"],\ + ["@testing-library/jest-dom", "npm:6.5.0"],\ + ["@testing-library/react", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:16.0.1"],\ ["@types/jest", "npm:29.5.12"],\ ["@types/react", "npm:18.3.3"],\ + ["@types/react-dom", "npm:18.3.0"],\ ["@typescript-eslint/eslint-plugin", "virtual:36a01d8083315b8a6e8362097258ea8bc0f9dfb672cb210742e054760850c673a1038f542a6b7156397b5275ace8ee0482231cac5e8898044fa1a1c29f78ee5b#npm:7.18.0"],\ ["@typescript-eslint/parser", "virtual:36a01d8083315b8a6e8362097258ea8bc0f9dfb672cb210742e054760850c673a1038f542a6b7156397b5275ace8ee0482231cac5e8898044fa1a1c29f78ee5b#npm:7.18.0"],\ ["another-deep-freeze", "npm:1.0.0"],\ + ["context", "npm:3.0.31"],\ ["eslint", "npm:8.57.0"],\ ["eslint-config-prettier", "virtual:36a01d8083315b8a6e8362097258ea8bc0f9dfb672cb210742e054760850c673a1038f542a6b7156397b5275ace8ee0482231cac5e8898044fa1a1c29f78ee5b#npm:9.1.0"],\ ["eslint-plugin-json", "npm:3.1.0"],\ ["eslint-plugin-prettier", "virtual:36a01d8083315b8a6e8362097258ea8bc0f9dfb672cb210742e054760850c673a1038f542a6b7156397b5275ace8ee0482231cac5e8898044fa1a1c29f78ee5b#npm:5.2.1"],\ ["jest", "virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:29.7.0"],\ + ["jest-environment-jsdom", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:29.7.0"],\ ["object-code", "npm:1.3.3"],\ ["polytype", "npm:0.17.0"],\ ["prettier", "npm:3.3.3"],\ ["react", "npm:18.3.1"],\ + ["react-dom", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:18.3.1"],\ ["rimraf", "npm:5.0.10"],\ ["ts-jest", "virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:29.2.4"],\ ["type-fest", "npm:4.23.0"],\ @@ -2148,24 +2199,24 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@mittwald/react-use-promise", [\ - ["npm:2.3.13", {\ - "packageLocation": "./.yarn/cache/@mittwald-react-use-promise-npm-2.3.13-c1fae12016-8a5c7c9b85.zip/node_modules/@mittwald/react-use-promise/",\ + ["npm:2.5.0", {\ + "packageLocation": "./.yarn/cache/@mittwald-react-use-promise-npm-2.5.0-505df83758-6a544847ef.zip/node_modules/@mittwald/react-use-promise/",\ "packageDependencies": [\ - ["@mittwald/react-use-promise", "npm:2.3.13"]\ + ["@mittwald/react-use-promise", "npm:2.5.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:2.3.13", {\ - "packageLocation": "./.yarn/__virtual__/@mittwald-react-use-promise-virtual-27abad9329/0/cache/@mittwald-react-use-promise-npm-2.3.13-c1fae12016-8a5c7c9b85.zip/node_modules/@mittwald/react-use-promise/",\ + ["virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:2.5.0", {\ + "packageLocation": "./.yarn/__virtual__/@mittwald-react-use-promise-virtual-a90a8f810e/0/cache/@mittwald-react-use-promise-npm-2.5.0-505df83758-6a544847ef.zip/node_modules/@mittwald/react-use-promise/",\ "packageDependencies": [\ - ["@mittwald/react-use-promise", "virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:b2e857f8c518119e848cf4ef51cff2bf36fb4db0f8e551e1de9a65b88f5466b35ebea1913543d6258bb39baec552d66e8e4c2e8ae0858f2f3f9bf35009befb70#npm:2.5.0"],\ ["@types/axios", null],\ ["@types/luxon", "npm:3.4.2"],\ ["@types/react", null],\ ["axios", "npm:1.7.4"],\ ["browser-or-node", "npm:3.0.0"],\ - ["luxon", "npm:3.4.4"],\ - ["minimatch", "npm:9.0.5"],\ + ["luxon", "npm:3.5.0"],\ + ["minimatch", "npm:10.0.1"],\ ["object-code", "npm:1.3.3"],\ ["react", "npm:18.3.1"]\ ],\ @@ -2177,17 +2228,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.3.13", {\ - "packageLocation": "./.yarn/__virtual__/@mittwald-react-use-promise-virtual-3d7f82dbc5/0/cache/@mittwald-react-use-promise-npm-2.3.13-c1fae12016-8a5c7c9b85.zip/node_modules/@mittwald/react-use-promise/",\ + ["virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.5.0", {\ + "packageLocation": "./.yarn/__virtual__/@mittwald-react-use-promise-virtual-f096b8a684/0/cache/@mittwald-react-use-promise-npm-2.5.0-505df83758-6a544847ef.zip/node_modules/@mittwald/react-use-promise/",\ "packageDependencies": [\ - ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.3.13"],\ + ["@mittwald/react-use-promise", "virtual:c868363b9225da9941a57efe275cc186f56bbc5675507a35ee9dd42e682f6dada28f6419bfde0c8606475daefedaf411ac54fad43a935d5d29d658bdc4a86153#npm:2.5.0"],\ ["@types/axios", null],\ ["@types/luxon", "npm:3.4.2"],\ ["@types/react", "npm:18.3.3"],\ ["axios", null],\ ["browser-or-node", "npm:3.0.0"],\ - ["luxon", "npm:3.4.4"],\ - ["minimatch", "npm:9.0.5"],\ + ["luxon", "npm:3.5.0"],\ + ["minimatch", "npm:10.0.1"],\ ["object-code", "npm:1.3.3"],\ ["react", "npm:18.3.1"]\ ],\ @@ -3267,6 +3318,79 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@testing-library/dom", [\ + ["npm:10.4.0", {\ + "packageLocation": "./.yarn/cache/@testing-library-dom-npm-10.4.0-a0d2ca848e-05825ee9a1.zip/node_modules/@testing-library/dom/",\ + "packageDependencies": [\ + ["@testing-library/dom", "npm:10.4.0"],\ + ["@babel/code-frame", "npm:7.24.7"],\ + ["@babel/runtime", "npm:7.25.6"],\ + ["@types/aria-query", "npm:5.0.4"],\ + ["aria-query", "npm:5.3.0"],\ + ["chalk", "npm:4.1.2"],\ + ["dom-accessibility-api", "npm:0.5.16"],\ + ["lz-string", "npm:1.5.0"],\ + ["pretty-format", "npm:27.5.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@testing-library/jest-dom", [\ + ["npm:6.5.0", {\ + "packageLocation": "./.yarn/cache/@testing-library-jest-dom-npm-6.5.0-fa5d3458cd-3d2080888a.zip/node_modules/@testing-library/jest-dom/",\ + "packageDependencies": [\ + ["@testing-library/jest-dom", "npm:6.5.0"],\ + ["@adobe/css-tools", "npm:4.4.0"],\ + ["aria-query", "npm:5.3.1"],\ + ["chalk", "npm:3.0.0"],\ + ["css.escape", "npm:1.5.1"],\ + ["dom-accessibility-api", "npm:0.6.3"],\ + ["lodash", "npm:4.17.21"],\ + ["redent", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@testing-library/react", [\ + ["npm:16.0.1", {\ + "packageLocation": "./.yarn/cache/@testing-library-react-npm-16.0.1-3939518263-904b48881c.zip/node_modules/@testing-library/react/",\ + "packageDependencies": [\ + ["@testing-library/react", "npm:16.0.1"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:16.0.1", {\ + "packageLocation": "./.yarn/__virtual__/@testing-library-react-virtual-473034039f/0/cache/@testing-library-react-npm-16.0.1-3939518263-904b48881c.zip/node_modules/@testing-library/react/",\ + "packageDependencies": [\ + ["@testing-library/react", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:16.0.1"],\ + ["@babel/runtime", "npm:7.25.6"],\ + ["@testing-library/dom", "npm:10.4.0"],\ + ["@types/react", "npm:18.3.3"],\ + ["@types/react-dom", "npm:18.3.0"],\ + ["@types/testing-library__dom", null],\ + ["react", "npm:18.3.1"],\ + ["react-dom", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:18.3.1"]\ + ],\ + "packagePeers": [\ + "@testing-library/dom",\ + "@types/react-dom",\ + "@types/react",\ + "@types/testing-library__dom",\ + "react-dom",\ + "react"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@tootallnate/once", [\ + ["npm:2.0.0", {\ + "packageLocation": "./.yarn/cache/@tootallnate-once-npm-2.0.0-e36cf4f140-ad87447820.zip/node_modules/@tootallnate/once/",\ + "packageDependencies": [\ + ["@tootallnate/once", "npm:2.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@tsd/typescript", [\ ["npm:5.4.5", {\ "packageLocation": "./.yarn/cache/@tsd-typescript-npm-5.4.5-31c3b104b3-d53a377d48.zip/node_modules/@tsd/typescript/",\ @@ -3306,6 +3430,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@types/aria-query", [\ + ["npm:5.0.4", {\ + "packageLocation": "./.yarn/cache/@types-aria-query-npm-5.0.4-51d2b61619-c0084c389d.zip/node_modules/@types/aria-query/",\ + "packageDependencies": [\ + ["@types/aria-query", "npm:5.0.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@types/babel__core", [\ ["npm:7.20.0", {\ "packageLocation": "./.yarn/cache/@types-babel__core-npm-7.20.0-cf2ab39970-b82e432bfc.zip/node_modules/@types/babel__core/",\ @@ -3510,6 +3643,18 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@types/jsdom", [\ + ["npm:20.0.1", {\ + "packageLocation": "./.yarn/cache/@types-jsdom-npm-20.0.1-5bb899e006-15fbb9a0bf.zip/node_modules/@types/jsdom/",\ + "packageDependencies": [\ + ["@types/jsdom", "npm:20.0.1"],\ + ["@types/node", "npm:18.15.11"],\ + ["@types/tough-cookie", "npm:4.0.5"],\ + ["parse5", "npm:7.1.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@types/json-schema", [\ ["npm:7.0.11", {\ "packageLocation": "./.yarn/cache/@types-json-schema-npm-7.0.11-79462ae5ca-e50864a93f.zip/node_modules/@types/json-schema/",\ @@ -3701,6 +3846,25 @@ const RAW_RUNTIME_STATE = ["csstype", "npm:3.1.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:18.3.7", {\ + "packageLocation": "./.yarn/cache/@types-react-npm-18.3.7-46973bbba5-30cfbe33c8.zip/node_modules/@types/react/",\ + "packageDependencies": [\ + ["@types/react", "npm:18.3.7"],\ + ["@types/prop-types", "npm:15.7.11"],\ + ["csstype", "npm:3.1.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@types/react-dom", [\ + ["npm:18.3.0", {\ + "packageLocation": "./.yarn/cache/@types-react-dom-npm-18.3.0-111444d3eb-6ff53f5a7b.zip/node_modules/@types/react-dom/",\ + "packageDependencies": [\ + ["@types/react-dom", "npm:18.3.0"],\ + ["@types/react", "npm:18.3.7"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@types/responselike", [\ @@ -3742,6 +3906,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@types/tough-cookie", [\ + ["npm:4.0.5", {\ + "packageLocation": "./.yarn/cache/@types-tough-cookie-npm-4.0.5-8c5e2162e1-01fd82efc8.zip/node_modules/@types/tough-cookie/",\ + "packageDependencies": [\ + ["@types/tough-cookie", "npm:4.0.5"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@types/treeify", [\ ["npm:1.0.0", {\ "packageLocation": "./.yarn/cache/@types-treeify-npm-1.0.0-b5e04e9cd3-7d313ba9de.zip/node_modules/@types/treeify/",\ @@ -4195,6 +4368,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["abab", [\ + ["npm:2.0.6", {\ + "packageLocation": "./.yarn/cache/abab-npm-2.0.6-2662fba7f0-ebe95d7278.zip/node_modules/abab/",\ + "packageDependencies": [\ + ["abab", "npm:2.0.6"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["abbrev", [\ ["npm:2.0.0", {\ "packageLocation": "./.yarn/cache/abbrev-npm-2.0.0-0eb38a17e5-ca0a54e35b.zip/node_modules/abbrev/",\ @@ -4213,6 +4395,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["acorn-globals", [\ + ["npm:7.0.1", {\ + "packageLocation": "./.yarn/cache/acorn-globals-npm-7.0.1-97c48c0140-2a2998a547.zip/node_modules/acorn-globals/",\ + "packageDependencies": [\ + ["acorn-globals", "npm:7.0.1"],\ + ["acorn", "npm:8.12.1"],\ + ["acorn-walk", "npm:8.3.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["acorn-jsx", [\ ["npm:5.3.2", {\ "packageLocation": "./.yarn/cache/acorn-jsx-npm-5.3.2-d7594599ea-d4371eaef7.zip/node_modules/acorn-jsx/",\ @@ -4235,6 +4428,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["acorn-walk", [\ + ["npm:8.3.4", {\ + "packageLocation": "./.yarn/cache/acorn-walk-npm-8.3.4-a75fa85ead-871386764e.zip/node_modules/acorn-walk/",\ + "packageDependencies": [\ + ["acorn-walk", "npm:8.3.4"],\ + ["acorn", "npm:8.12.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["add-stream", [\ ["npm:1.0.0", {\ "packageLocation": "./.yarn/cache/add-stream-npm-1.0.0-a5a0c0498c-3e9e8b0b8f.zip/node_modules/add-stream/",\ @@ -4245,6 +4448,14 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["agent-base", [\ + ["npm:6.0.2", {\ + "packageLocation": "./.yarn/cache/agent-base-npm-6.0.2-428f325a93-21fb903e09.zip/node_modules/agent-base/",\ + "packageDependencies": [\ + ["agent-base", "npm:6.0.2"],\ + ["debug", "virtual:1ff4b5f90832ba0a9c93ba1223af226e44ba70c1126a3740d93562b97bc36544e896a5e95908196f7458713e6a6089a34bfc67362fc6df7fa093bd06c878be47#npm:4.3.6"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:7.1.1", {\ "packageLocation": "./.yarn/cache/agent-base-npm-7.1.1-c9e1a4b59e-c478fec8f7.zip/node_modules/agent-base/",\ "packageDependencies": [\ @@ -4469,6 +4680,23 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["aria-query", [\ + ["npm:5.3.0", {\ + "packageLocation": "./.yarn/cache/aria-query-npm-5.3.0-76575ac83b-c3e1ed127c.zip/node_modules/aria-query/",\ + "packageDependencies": [\ + ["aria-query", "npm:5.3.0"],\ + ["dequal", "npm:2.0.3"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:5.3.1", {\ + "packageLocation": "./.yarn/cache/aria-query-npm-5.3.1-fa607704a3-4b39d2e466.zip/node_modules/aria-query/",\ + "packageDependencies": [\ + ["aria-query", "npm:5.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["array-differ", [\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/array-differ-npm-3.0.0-ddc0d89007-117edd9df5.zip/node_modules/array-differ/",\ @@ -5493,6 +5721,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["context", [\ + ["npm:3.0.31", {\ + "packageLocation": "./.yarn/cache/context-npm-3.0.31-27778efb1a-24ab5bc6ff.zip/node_modules/context/",\ + "packageDependencies": [\ + ["context", "npm:3.0.31"],\ + ["vest-utils", "npm:1.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["conventional-changelog-angular", [\ ["npm:7.0.0", {\ "packageLocation": "./.yarn/cache/conventional-changelog-angular-npm-7.0.0-de5edb79f0-e7966d2fee.zip/node_modules/conventional-changelog-angular/",\ @@ -5703,6 +5941,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["css.escape", [\ + ["npm:1.5.1", {\ + "packageLocation": "./.yarn/cache/css.escape-npm-1.5.1-b24d2ba77a-f6d38088d8.zip/node_modules/css.escape/",\ + "packageDependencies": [\ + ["css.escape", "npm:1.5.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["cssesc", [\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/cssesc-npm-3.0.0-15ec56f86f-0e161912c1.zip/node_modules/cssesc/",\ @@ -5712,6 +5959,32 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["cssom", [\ + ["npm:0.3.8", {\ + "packageLocation": "./.yarn/cache/cssom-npm-0.3.8-a9291d36ff-49eacc8807.zip/node_modules/cssom/",\ + "packageDependencies": [\ + ["cssom", "npm:0.3.8"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:0.5.0", {\ + "packageLocation": "./.yarn/cache/cssom-npm-0.5.0-44ab2704f2-b502a315b1.zip/node_modules/cssom/",\ + "packageDependencies": [\ + ["cssom", "npm:0.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["cssstyle", [\ + ["npm:2.3.0", {\ + "packageLocation": "./.yarn/cache/cssstyle-npm-2.3.0-b5d112c450-46f7f05a15.zip/node_modules/cssstyle/",\ + "packageDependencies": [\ + ["cssstyle", "npm:2.3.0"],\ + ["cssom", "npm:0.3.8"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["csstype", [\ ["npm:3.1.3", {\ "packageLocation": "./.yarn/cache/csstype-npm-3.1.3-e9a1c85013-f593cce41f.zip/node_modules/csstype/",\ @@ -5741,6 +6014,18 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["data-urls", [\ + ["npm:3.0.2", {\ + "packageLocation": "./.yarn/cache/data-urls-npm-3.0.2-c8b2050319-033fc3dd0f.zip/node_modules/data-urls/",\ + "packageDependencies": [\ + ["data-urls", "npm:3.0.2"],\ + ["abab", "npm:2.0.6"],\ + ["whatwg-mimetype", "npm:3.0.0"],\ + ["whatwg-url", "npm:11.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["date-fns", [\ ["npm:2.30.0", {\ "packageLocation": "./.yarn/cache/date-fns-npm-2.30.0-895c790e0f-70b3e8ea7a.zip/node_modules/date-fns/",\ @@ -5817,6 +6102,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["decimal.js", [\ + ["npm:10.4.3", {\ + "packageLocation": "./.yarn/cache/decimal.js-npm-10.4.3-e7d483387c-de663a7bc4.zip/node_modules/decimal.js/",\ + "packageDependencies": [\ + ["decimal.js", "npm:10.4.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["decode-named-character-reference", [\ ["npm:1.0.2", {\ "packageLocation": "./.yarn/cache/decode-named-character-reference-npm-1.0.2-db17a755fd-f4c71d3b93.zip/node_modules/decode-named-character-reference/",\ @@ -5998,6 +6292,32 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["dom-accessibility-api", [\ + ["npm:0.5.16", {\ + "packageLocation": "./.yarn/cache/dom-accessibility-api-npm-0.5.16-d3e2310666-377b4a7f9e.zip/node_modules/dom-accessibility-api/",\ + "packageDependencies": [\ + ["dom-accessibility-api", "npm:0.5.16"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:0.6.3", {\ + "packageLocation": "./.yarn/cache/dom-accessibility-api-npm-0.6.3-0345e4dede-83d3371f82.zip/node_modules/dom-accessibility-api/",\ + "packageDependencies": [\ + ["dom-accessibility-api", "npm:0.6.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["domexception", [\ + ["npm:4.0.0", {\ + "packageLocation": "./.yarn/cache/domexception-npm-4.0.0-5093673f9b-4ed443227d.zip/node_modules/domexception/",\ + "packageDependencies": [\ + ["domexception", "npm:4.0.0"],\ + ["webidl-conversions", "npm:7.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["dot-prop", [\ ["npm:5.3.0", {\ "packageLocation": "./.yarn/cache/dot-prop-npm-5.3.0-7bf6ee1eb8-33b2561617.zip/node_modules/dot-prop/",\ @@ -6141,6 +6461,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["entities", [\ + ["npm:4.5.0", {\ + "packageLocation": "./.yarn/cache/entities-npm-4.5.0-7cdb83b832-ede2a35c9b.zip/node_modules/entities/",\ + "packageDependencies": [\ + ["entities", "npm:4.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["env-paths", [\ ["npm:2.2.1", {\ "packageLocation": "./.yarn/cache/env-paths-npm-2.2.1-7c7577428c-65b5df55a8.zip/node_modules/env-paths/",\ @@ -6300,6 +6629,19 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["escodegen", [\ + ["npm:2.1.0", {\ + "packageLocation": "./.yarn/cache/escodegen-npm-2.1.0-e0bf940745-47719a65b2.zip/node_modules/escodegen/",\ + "packageDependencies": [\ + ["escodegen", "npm:2.1.0"],\ + ["esprima", "npm:4.0.1"],\ + ["estraverse", "npm:5.3.0"],\ + ["esutils", "npm:2.0.3"],\ + ["source-map", "npm:0.6.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["eslint", [\ ["npm:8.57.0", {\ "packageLocation": "./.yarn/cache/eslint-npm-8.57.0-4286e12a3a-00496e218b.zip/node_modules/eslint/",\ @@ -7443,6 +7785,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["html-encoding-sniffer", [\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/html-encoding-sniffer-npm-3.0.0-daac3dfe41-707a812ec2.zip/node_modules/html-encoding-sniffer/",\ + "packageDependencies": [\ + ["html-encoding-sniffer", "npm:3.0.0"],\ + ["whatwg-encoding", "npm:2.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["html-escaper", [\ ["npm:2.0.2", {\ "packageLocation": "./.yarn/cache/html-escaper-npm-2.0.2-38e51ef294-034d74029d.zip/node_modules/html-escaper/",\ @@ -7462,6 +7814,16 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["http-proxy-agent", [\ + ["npm:5.0.0", {\ + "packageLocation": "./.yarn/cache/http-proxy-agent-npm-5.0.0-7f1f121b83-5ee19423bc.zip/node_modules/http-proxy-agent/",\ + "packageDependencies": [\ + ["http-proxy-agent", "npm:5.0.0"],\ + ["@tootallnate/once", "npm:2.0.0"],\ + ["agent-base", "npm:6.0.2"],\ + ["debug", "virtual:1ff4b5f90832ba0a9c93ba1223af226e44ba70c1126a3740d93562b97bc36544e896a5e95908196f7458713e6a6089a34bfc67362fc6df7fa093bd06c878be47#npm:4.3.6"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:7.0.2", {\ "packageLocation": "./.yarn/cache/http-proxy-agent-npm-7.0.2-643ed7cc33-d062acfa0c.zip/node_modules/http-proxy-agent/",\ "packageDependencies": [\ @@ -7493,6 +7855,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["https-proxy-agent", [\ + ["npm:5.0.1", {\ + "packageLocation": "./.yarn/cache/https-proxy-agent-npm-5.0.1-42d65f358e-f0dce7bdca.zip/node_modules/https-proxy-agent/",\ + "packageDependencies": [\ + ["https-proxy-agent", "npm:5.0.1"],\ + ["agent-base", "npm:6.0.2"],\ + ["debug", "virtual:1ff4b5f90832ba0a9c93ba1223af226e44ba70c1126a3740d93562b97bc36544e896a5e95908196f7458713e6a6089a34bfc67362fc6df7fa093bd06c878be47#npm:4.3.6"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:7.0.5", {\ "packageLocation": "./.yarn/cache/https-proxy-agent-npm-7.0.5-94c14d4619-6679d46159.zip/node_modules/https-proxy-agent/",\ "packageDependencies": [\ @@ -7912,6 +8283,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["is-potential-custom-element-name", [\ + ["npm:1.0.1", {\ + "packageLocation": "./.yarn/cache/is-potential-custom-element-name-npm-1.0.1-f352f606f8-ced7bbbb64.zip/node_modules/is-potential-custom-element-name/",\ + "packageDependencies": [\ + ["is-potential-custom-element-name", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["is-promise", [\ ["npm:2.2.2", {\ "packageLocation": "./.yarn/cache/is-promise-npm-2.2.2-afbf94db67-18bf7d1c59.zip/node_modules/is-promise/",\ @@ -8324,6 +8704,36 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["jest-environment-jsdom", [\ + ["npm:29.7.0", {\ + "packageLocation": "./.yarn/cache/jest-environment-jsdom-npm-29.7.0-0b72dd0e0b-23bbfc9bca.zip/node_modules/jest-environment-jsdom/",\ + "packageDependencies": [\ + ["jest-environment-jsdom", "npm:29.7.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/jest-environment-jsdom-virtual-c687fb8442/0/cache/jest-environment-jsdom-npm-29.7.0-0b72dd0e0b-23bbfc9bca.zip/node_modules/jest-environment-jsdom/",\ + "packageDependencies": [\ + ["jest-environment-jsdom", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:29.7.0"],\ + ["@jest/environment", "npm:29.7.0"],\ + ["@jest/fake-timers", "npm:29.7.0"],\ + ["@jest/types", "npm:29.6.3"],\ + ["@types/canvas", null],\ + ["@types/jsdom", "npm:20.0.1"],\ + ["@types/node", "npm:18.15.11"],\ + ["canvas", null],\ + ["jest-mock", "npm:29.7.0"],\ + ["jest-util", "npm:29.7.0"],\ + ["jsdom", "virtual:c687fb844278285d8250e9cc0bdaadc0585eca3d913614ee845178dada6a77e8cf603b47faeb35e8fc0d5e20f277d4cc9ea0653d35c4768fb843b6e2bbee4bda#npm:20.0.3"]\ + ],\ + "packagePeers": [\ + "@types/canvas",\ + "canvas"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["jest-environment-node", [\ ["npm:29.7.0", {\ "packageLocation": "./.yarn/cache/jest-environment-node-npm-29.7.0-860b5e25ec-9cf7045adf.zip/node_modules/jest-environment-node/",\ @@ -8670,6 +9080,54 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["jsdom", [\ + ["npm:20.0.3", {\ + "packageLocation": "./.yarn/cache/jsdom-npm-20.0.3-906a2f7005-a4cdcff5b0.zip/node_modules/jsdom/",\ + "packageDependencies": [\ + ["jsdom", "npm:20.0.3"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:c687fb844278285d8250e9cc0bdaadc0585eca3d913614ee845178dada6a77e8cf603b47faeb35e8fc0d5e20f277d4cc9ea0653d35c4768fb843b6e2bbee4bda#npm:20.0.3", {\ + "packageLocation": "./.yarn/__virtual__/jsdom-virtual-e3a3091e8c/0/cache/jsdom-npm-20.0.3-906a2f7005-a4cdcff5b0.zip/node_modules/jsdom/",\ + "packageDependencies": [\ + ["jsdom", "virtual:c687fb844278285d8250e9cc0bdaadc0585eca3d913614ee845178dada6a77e8cf603b47faeb35e8fc0d5e20f277d4cc9ea0653d35c4768fb843b6e2bbee4bda#npm:20.0.3"],\ + ["@types/canvas", null],\ + ["abab", "npm:2.0.6"],\ + ["acorn", "npm:8.12.1"],\ + ["acorn-globals", "npm:7.0.1"],\ + ["canvas", null],\ + ["cssom", "npm:0.5.0"],\ + ["cssstyle", "npm:2.3.0"],\ + ["data-urls", "npm:3.0.2"],\ + ["decimal.js", "npm:10.4.3"],\ + ["domexception", "npm:4.0.0"],\ + ["escodegen", "npm:2.1.0"],\ + ["form-data", "npm:4.0.0"],\ + ["html-encoding-sniffer", "npm:3.0.0"],\ + ["http-proxy-agent", "npm:5.0.0"],\ + ["https-proxy-agent", "npm:5.0.1"],\ + ["is-potential-custom-element-name", "npm:1.0.1"],\ + ["nwsapi", "npm:2.2.12"],\ + ["parse5", "npm:7.1.2"],\ + ["saxes", "npm:6.0.0"],\ + ["symbol-tree", "npm:3.2.4"],\ + ["tough-cookie", "npm:4.1.4"],\ + ["w3c-xmlserializer", "npm:4.0.0"],\ + ["webidl-conversions", "npm:7.0.0"],\ + ["whatwg-encoding", "npm:2.0.0"],\ + ["whatwg-mimetype", "npm:3.0.0"],\ + ["whatwg-url", "npm:11.0.0"],\ + ["ws", "virtual:e3a3091e8c3237f7434d2590832af16cb80dd877efea150f6065748438c0e75520ec19d34312e8da74067d41b515bc9096ca085892be3e58e0e642b40ee47934#npm:8.18.0"],\ + ["xml-name-validator", "npm:4.0.0"]\ + ],\ + "packagePeers": [\ + "@types/canvas",\ + "canvas"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["jsesc", [\ ["npm:2.5.2", {\ "packageLocation": "./.yarn/cache/jsesc-npm-2.5.2-c5acb78804-d2096abdcd.zip/node_modules/jsesc/",\ @@ -9339,10 +9797,19 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["luxon", [\ - ["npm:3.4.4", {\ - "packageLocation": "./.yarn/cache/luxon-npm-3.4.4-c93f95dde8-c14164bc33.zip/node_modules/luxon/",\ + ["npm:3.5.0", {\ + "packageLocation": "./.yarn/cache/luxon-npm-3.5.0-92bb977f7f-48f86e6c1c.zip/node_modules/luxon/",\ "packageDependencies": [\ - ["luxon", "npm:3.4.4"]\ + ["luxon", "npm:3.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["lz-string", [\ + ["npm:1.5.0", {\ + "packageLocation": "./.yarn/cache/lz-string-npm-1.5.0-3860794e30-e86f0280e9.zip/node_modules/lz-string/",\ + "packageDependencies": [\ + ["lz-string", "npm:1.5.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -9853,6 +10320,14 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["minimatch", [\ + ["npm:10.0.1", {\ + "packageLocation": "./.yarn/cache/minimatch-npm-10.0.1-eabcc0d3a0-082e7ccbc0.zip/node_modules/minimatch/",\ + "packageDependencies": [\ + ["minimatch", "npm:10.0.1"],\ + ["brace-expansion", "npm:2.0.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.5", {\ "packageLocation": "./.yarn/cache/minimatch-npm-3.0.5-a20094d35f-8f97074911.zip/node_modules/minimatch/",\ "packageDependencies": [\ @@ -10572,6 +11047,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["nwsapi", [\ + ["npm:2.2.12", {\ + "packageLocation": "./.yarn/cache/nwsapi-npm-2.2.12-a8463ea0e6-172119e9ef.zip/node_modules/nwsapi/",\ + "packageDependencies": [\ + ["nwsapi", "npm:2.2.12"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["nx", [\ ["npm:18.3.5", {\ "packageLocation": "./.yarn/unplugged/nx-virtual-34f38f7c69/node_modules/nx/",\ @@ -11209,6 +11693,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["parse5", [\ + ["npm:7.1.2", {\ + "packageLocation": "./.yarn/cache/parse5-npm-7.1.2-aa9a92c270-3c86806bb0.zip/node_modules/parse5/",\ + "packageDependencies": [\ + ["parse5", "npm:7.1.2"],\ + ["entities", "npm:4.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["password-prompt", [\ ["npm:1.1.3", {\ "packageLocation": "./.yarn/cache/password-prompt-npm-1.1.3-0190666768-1cf7001e66.zip/node_modules/password-prompt/",\ @@ -11307,6 +11801,13 @@ const RAW_RUNTIME_STATE = ["picocolors", "npm:1.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.1.0", {\ + "packageLocation": "./.yarn/cache/picocolors-npm-1.1.0-ea12a640bd-a2ad60d94d.zip/node_modules/picocolors/",\ + "packageDependencies": [\ + ["picocolors", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["picomatch", [\ @@ -11564,6 +12065,16 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["pretty-format", [\ + ["npm:27.5.1", {\ + "packageLocation": "./.yarn/cache/pretty-format-npm-27.5.1-cd7d49696f-248990cbef.zip/node_modules/pretty-format/",\ + "packageDependencies": [\ + ["pretty-format", "npm:27.5.1"],\ + ["ansi-regex", "npm:5.0.1"],\ + ["ansi-styles", "npm:5.2.0"],\ + ["react-is", "npm:17.0.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:29.7.0", {\ "packageLocation": "./.yarn/cache/pretty-format-npm-29.7.0-7d330b2ea2-dea96bc83c.zip/node_modules/pretty-format/",\ "packageDependencies": [\ @@ -11699,6 +12210,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["psl", [\ + ["npm:1.9.0", {\ + "packageLocation": "./.yarn/cache/psl-npm-1.9.0-a546edad1a-d07879d4bf.zip/node_modules/psl/",\ + "packageDependencies": [\ + ["psl", "npm:1.9.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["pump", [\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/pump-npm-3.0.0-0080bf6a7a-e42e9229fb.zip/node_modules/pump/",\ @@ -11737,6 +12257,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["querystringify", [\ + ["npm:2.2.0", {\ + "packageLocation": "./.yarn/cache/querystringify-npm-2.2.0-4e77c9f606-46ab16f252.zip/node_modules/querystringify/",\ + "packageDependencies": [\ + ["querystringify", "npm:2.2.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["queue-microtask", [\ ["npm:1.2.3", {\ "packageLocation": "./.yarn/cache/queue-microtask-npm-1.2.3-fcc98e4e2d-72900df061.zip/node_modules/queue-microtask/",\ @@ -11772,7 +12301,38 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["react-dom", [\ + ["npm:18.3.1", {\ + "packageLocation": "./.yarn/cache/react-dom-npm-18.3.1-a805663f38-3f4b73a3aa.zip/node_modules/react-dom/",\ + "packageDependencies": [\ + ["react-dom", "npm:18.3.1"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:18.3.1", {\ + "packageLocation": "./.yarn/__virtual__/react-dom-virtual-258cc03619/0/cache/react-dom-npm-18.3.1-a805663f38-3f4b73a3aa.zip/node_modules/react-dom/",\ + "packageDependencies": [\ + ["react-dom", "virtual:e06e30328889a833dfcbfbc5c33f5e1173628bc1414934ce897e2f1b90b91087fa3f8b59a8a3ced3a53b1f7df474adc821437919c179e8897ac6cecf6bf31f00#npm:18.3.1"],\ + ["@types/react", "npm:18.3.3"],\ + ["loose-envify", "npm:1.4.0"],\ + ["react", "npm:18.3.1"],\ + ["scheduler", "npm:0.23.2"]\ + ],\ + "packagePeers": [\ + "@types/react",\ + "react"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["react-is", [\ + ["npm:17.0.2", {\ + "packageLocation": "./.yarn/cache/react-is-npm-17.0.2-091bbb8db6-73b36281e5.zip/node_modules/react-is/",\ + "packageDependencies": [\ + ["react-is", "npm:17.0.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:18.3.1", {\ "packageLocation": "./.yarn/cache/react-is-npm-18.3.1-370a81e1e9-d5f60c87d2.zip/node_modules/react-is/",\ "packageDependencies": [\ @@ -12007,6 +12567,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["requires-port", [\ + ["npm:1.0.0", {\ + "packageLocation": "./.yarn/cache/requires-port-npm-1.0.0-fd036b488a-878880ee78.zip/node_modules/requires-port/",\ + "packageDependencies": [\ + ["requires-port", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["resolve", [\ ["patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d", {\ "packageLocation": "./.yarn/cache/resolve-patch-4254c24959-f345cd37f5.zip/node_modules/resolve/",\ @@ -12216,6 +12785,26 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["saxes", [\ + ["npm:6.0.0", {\ + "packageLocation": "./.yarn/cache/saxes-npm-6.0.0-31558949f5-97b50daf6c.zip/node_modules/saxes/",\ + "packageDependencies": [\ + ["saxes", "npm:6.0.0"],\ + ["xmlchars", "npm:2.2.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["scheduler", [\ + ["npm:0.23.2", {\ + "packageLocation": "./.yarn/cache/scheduler-npm-0.23.2-6d1dd9c2b7-e8d68b89d1.zip/node_modules/scheduler/",\ + "packageDependencies": [\ + ["scheduler", "npm:0.23.2"],\ + ["loose-envify", "npm:1.4.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["semver", [\ ["npm:5.7.2", {\ "packageLocation": "./.yarn/cache/semver-npm-5.7.2-938ee91eaa-fca14418a1.zip/node_modules/semver/",\ @@ -12858,6 +13447,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["symbol-tree", [\ + ["npm:3.2.4", {\ + "packageLocation": "./.yarn/cache/symbol-tree-npm-3.2.4-fe70cdb75b-c09a00aadf.zip/node_modules/symbol-tree/",\ + "packageDependencies": [\ + ["symbol-tree", "npm:3.2.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["synckit", [\ ["npm:0.9.1", {\ "packageLocation": "./.yarn/cache/synckit-npm-0.9.1-2153077746-bff3903976.zip/node_modules/synckit/",\ @@ -13051,6 +13649,19 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["tough-cookie", [\ + ["npm:4.1.4", {\ + "packageLocation": "./.yarn/cache/tough-cookie-npm-4.1.4-8293cc8bd5-75663f4e2c.zip/node_modules/tough-cookie/",\ + "packageDependencies": [\ + ["tough-cookie", "npm:4.1.4"],\ + ["psl", "npm:1.9.0"],\ + ["punycode", "npm:2.3.1"],\ + ["universalify", "npm:0.2.0"],\ + ["url-parse", "npm:1.5.10"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["tr46", [\ ["npm:0.0.3", {\ "packageLocation": "./.yarn/cache/tr46-npm-0.0.3-de53018915-8f1f5aa6cb.zip/node_modules/tr46/",\ @@ -13058,6 +13669,14 @@ const RAW_RUNTIME_STATE = ["tr46", "npm:0.0.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/tr46-npm-3.0.0-e1ae1ea7c9-b09a15886c.zip/node_modules/tr46/",\ + "packageDependencies": [\ + ["tr46", "npm:3.0.0"],\ + ["punycode", "npm:2.3.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["tree-kill", [\ @@ -13436,6 +14055,13 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["universalify", [\ + ["npm:0.2.0", {\ + "packageLocation": "./.yarn/cache/universalify-npm-0.2.0-9984e61c10-e86134cb12.zip/node_modules/universalify/",\ + "packageDependencies": [\ + ["universalify", "npm:0.2.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:2.0.1", {\ "packageLocation": "./.yarn/cache/universalify-npm-2.0.1-040ba5a21e-ecd8469fe0.zip/node_modules/universalify/",\ "packageDependencies": [\ @@ -13487,6 +14113,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["url-parse", [\ + ["npm:1.5.10", {\ + "packageLocation": "./.yarn/cache/url-parse-npm-1.5.10-64fa2bcd6d-c9e96bc8c5.zip/node_modules/url-parse/",\ + "packageDependencies": [\ + ["url-parse", "npm:1.5.10"],\ + ["querystringify", "npm:2.2.0"],\ + ["requires-port", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["util-deprecate", [\ ["npm:1.0.2", {\ "packageLocation": "./.yarn/cache/util-deprecate-npm-1.0.2-e3fe1a219c-474acf1146.zip/node_modules/util-deprecate/",\ @@ -13549,6 +14186,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["vest-utils", [\ + ["npm:1.3.1", {\ + "packageLocation": "./.yarn/cache/vest-utils-npm-1.3.1-77e6598263-32f19aabf1.zip/node_modules/vest-utils/",\ + "packageDependencies": [\ + ["vest-utils", "npm:1.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["vscode-json-languageservice", [\ ["npm:4.2.1", {\ "packageLocation": "./.yarn/cache/vscode-json-languageservice-npm-4.2.1-3de15e14c9-ebd3dd037c.zip/node_modules/vscode-json-languageservice/",\ @@ -13599,6 +14245,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["w3c-xmlserializer", [\ + ["npm:4.0.0", {\ + "packageLocation": "./.yarn/cache/w3c-xmlserializer-npm-4.0.0-f09d0ec3fc-9a00c412b5.zip/node_modules/w3c-xmlserializer/",\ + "packageDependencies": [\ + ["w3c-xmlserializer", "npm:4.0.0"],\ + ["xml-name-validator", "npm:4.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["walk-up-path", [\ ["npm:3.0.1", {\ "packageLocation": "./.yarn/cache/walk-up-path-npm-3.0.1-67ab100d5d-9ffca02fe3.zip/node_modules/walk-up-path/",\ @@ -13635,9 +14291,44 @@ const RAW_RUNTIME_STATE = ["webidl-conversions", "npm:3.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.0.0", {\ + "packageLocation": "./.yarn/cache/webidl-conversions-npm-7.0.0-e8c8e30c68-4c4f65472c.zip/node_modules/webidl-conversions/",\ + "packageDependencies": [\ + ["webidl-conversions", "npm:7.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["whatwg-encoding", [\ + ["npm:2.0.0", {\ + "packageLocation": "./.yarn/cache/whatwg-encoding-npm-2.0.0-d7451f51b4-162d712d88.zip/node_modules/whatwg-encoding/",\ + "packageDependencies": [\ + ["whatwg-encoding", "npm:2.0.0"],\ + ["iconv-lite", "npm:0.6.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["whatwg-mimetype", [\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/whatwg-mimetype-npm-3.0.0-5b617710c1-96f9f628c6.zip/node_modules/whatwg-mimetype/",\ + "packageDependencies": [\ + ["whatwg-mimetype", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["whatwg-url", [\ + ["npm:11.0.0", {\ + "packageLocation": "./.yarn/cache/whatwg-url-npm-11.0.0-073529d93a-dfcd51c6f4.zip/node_modules/whatwg-url/",\ + "packageDependencies": [\ + ["whatwg-url", "npm:11.0.0"],\ + ["tr46", "npm:3.0.0"],\ + ["webidl-conversions", "npm:7.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:5.0.0", {\ "packageLocation": "./.yarn/cache/whatwg-url-npm-5.0.0-374fb45e60-f95adbc1e8.zip/node_modules/whatwg-url/",\ "packageDependencies": [\ @@ -13802,6 +14493,50 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["ws", [\ + ["npm:8.18.0", {\ + "packageLocation": "./.yarn/cache/ws-npm-8.18.0-56f68bc4d6-70dfe53f23.zip/node_modules/ws/",\ + "packageDependencies": [\ + ["ws", "npm:8.18.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e3a3091e8c3237f7434d2590832af16cb80dd877efea150f6065748438c0e75520ec19d34312e8da74067d41b515bc9096ca085892be3e58e0e642b40ee47934#npm:8.18.0", {\ + "packageLocation": "./.yarn/__virtual__/ws-virtual-01e06d9963/0/cache/ws-npm-8.18.0-56f68bc4d6-70dfe53f23.zip/node_modules/ws/",\ + "packageDependencies": [\ + ["ws", "virtual:e3a3091e8c3237f7434d2590832af16cb80dd877efea150f6065748438c0e75520ec19d34312e8da74067d41b515bc9096ca085892be3e58e0e642b40ee47934#npm:8.18.0"],\ + ["@types/bufferutil", null],\ + ["@types/utf-8-validate", null],\ + ["bufferutil", null],\ + ["utf-8-validate", null]\ + ],\ + "packagePeers": [\ + "@types/bufferutil",\ + "@types/utf-8-validate",\ + "bufferutil",\ + "utf-8-validate"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["xml-name-validator", [\ + ["npm:4.0.0", {\ + "packageLocation": "./.yarn/cache/xml-name-validator-npm-4.0.0-0857c21729-f9582a3f28.zip/node_modules/xml-name-validator/",\ + "packageDependencies": [\ + ["xml-name-validator", "npm:4.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["xmlchars", [\ + ["npm:2.2.0", {\ + "packageLocation": "./.yarn/cache/xmlchars-npm-2.2.0-8b78f0f5e4-4ad5924974.zip/node_modules/xmlchars/",\ + "packageDependencies": [\ + ["xmlchars", "npm:2.2.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["xtend", [\ ["npm:4.0.2", {\ "packageLocation": "./.yarn/cache/xtend-npm-4.0.2-7f2375736e-ac5dfa738b.zip/node_modules/xtend/",\ diff --git a/packages/commons/package.json b/packages/commons/package.json index 0f796c3e..6f2d09f4 100644 --- a/packages/commons/package.json +++ b/packages/commons/package.json @@ -41,14 +41,14 @@ }, "dependencies": { "@types/parse-path": "^7.0.3", - "axios": "^1.7.4", + "axios": "^1.7.7", "parse-path": "^7.0.0", "path-to-regexp": "^8.1.0", "type-fest": "^4.23.0" }, "devDependencies": { "@jest/globals": "^29.7.0", - "@mittwald/react-use-promise": "^2.3.13", + "@mittwald/react-use-promise": "^2.5.0", "@types/jest": "^29.5.12", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", diff --git a/packages/generator/package.json b/packages/generator/package.json index 0bf74d69..00643e9a 100644 --- a/packages/generator/package.json +++ b/packages/generator/package.json @@ -37,7 +37,7 @@ "@types/prettier": "^3.0.0", "@types/verror": "^1.10.10", "@types/yieldable-json": "^2.0.2", - "axios": "^1.7.4", + "axios": "^1.7.7", "camelcase": "^8.0.0", "clone-deep": "^4.0.1", "dot-prop": "^8.0.2", diff --git a/packages/mittwald/package.json b/packages/mittwald/package.json index 32f3aee7..4e98259a 100644 --- a/packages/mittwald/package.json +++ b/packages/mittwald/package.json @@ -51,7 +51,7 @@ }, "devDependencies": { "@mittwald/api-code-generator": "workspace:^", - "@mittwald/react-use-promise": "^2.3.13", + "@mittwald/react-use-promise": "^2.5.0", "@types/node": "^20.14.14", "@types/react": "^18.3.3", "@typescript-eslint/eslint-plugin": "^7.18.0", diff --git a/packages/models/package.json b/packages/models/package.json index ae69a9da..c0fee899 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -41,15 +41,20 @@ "dependencies": { "@mittwald/api-client": "workspace:^", "another-deep-freeze": "^1.0.0", + "context": "^3.0.31", "object-code": "^1.3.3", "polytype": "^0.17.0", "type-fest": "^4.23.0" }, "devDependencies": { "@jest/globals": "^29.7.0", - "@mittwald/react-use-promise": "^2.3.13", + "@mittwald/react-use-promise": "^2.5.0", + "@testing-library/dom": "^10.4.0", + "@testing-library/jest-dom": "^6.5.0", + "@testing-library/react": "^16.0.1", "@types/jest": "^29.5.12", "@types/react": "^18.3.3", + "@types/react-dom": "^18", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", "eslint": "^8.57.0", @@ -57,8 +62,10 @@ "eslint-plugin-json": "^3.1.0", "eslint-plugin-prettier": "^5.2.1", "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", "prettier": "^3.3.3", "react": "^18.3.1", + "react-dom": "^18.3.1", "rimraf": "^5.0.10", "ts-jest": "^29.2.4", "typescript": "^5.5.4" diff --git a/packages/models/src/config/behaviors/api.ts b/packages/models/src/config/behaviors/api.ts index 23613d01..e57b406f 100644 --- a/packages/models/src/config/behaviors/api.ts +++ b/packages/models/src/config/behaviors/api.ts @@ -5,6 +5,7 @@ import { apiServerBehaviors } from "../../server/Server/behaviors/index.js"; import { apiCustomerBehaviors } from "../../customer/Customer/behaviors/index.js"; import { apiIngressBehaviors } from "../../domain/Ingress/behaviors/index.js"; import { apiAppInstallationBehaviors } from "../../app/AppInstallation/behaviors/index.js"; +import { updateCacheTagsBeforeRequest } from "../../react/asyncResourceInvalidation.js"; class ApiSetupState { private _client: MittwaldAPIV2Client | undefined; @@ -16,6 +17,8 @@ class ApiSetupState { ); } this._client = client; + this._client.defaultRequestOptions.onBeforeRequest = + updateCacheTagsBeforeRequest; config.behaviors.project = apiProjectBehaviors(client); config.behaviors.server = apiServerBehaviors(client); diff --git a/packages/models/src/project/Project/Project.ts b/packages/models/src/project/Project/Project.ts index 47f3500d..ec78407c 100644 --- a/packages/models/src/project/Project/Project.ts +++ b/packages/models/src/project/Project/Project.ts @@ -58,7 +58,7 @@ export class Project extends ReferenceModel { }, ); - public query(query: ProjectListQueryModelData = {}) { + public static query(query: ProjectListQueryModelData = {}) { return new ProjectListQuery(query); } diff --git a/packages/models/src/react/MittwaldApiModelProvider.ts b/packages/models/src/react/MittwaldApiModelProvider.ts deleted file mode 100644 index 77caf285..00000000 --- a/packages/models/src/react/MittwaldApiModelProvider.ts +++ /dev/null @@ -1,16 +0,0 @@ -import React, { createElement, FC, PropsWithChildren } from "react"; -import { setModule } from "./reactUsePromise.js"; - -let loadingPromise: Promise | undefined = undefined; - -export const MittwaldApiModelProvider: FC = (props) => { - if (loadingPromise === undefined) { - loadingPromise = import("@mittwald/react-use-promise").then((m) => { - setModule(m); - }); - - throw loadingPromise; - } - - return createElement(React.Fragment, undefined, props.children); -}; diff --git a/packages/models/src/react/MittwaldApiModelProvider.tsx b/packages/models/src/react/MittwaldApiModelProvider.tsx new file mode 100644 index 00000000..42ee78b1 --- /dev/null +++ b/packages/models/src/react/MittwaldApiModelProvider.tsx @@ -0,0 +1,25 @@ +import { FC, PropsWithChildren, ReactNode } from "react"; +import { usePromise } from "@mittwald/react-use-promise"; +import { setModule } from "./reactUsePromise.js"; + +interface Props extends PropsWithChildren { + fallback?: ReactNode; +} + +export const MittwaldApiModelProvider: FC = (props) => { + const { fallback, children } = props; + + const module = usePromise( + () => import("@mittwald/react-use-promise").then(setModule), + [], + { + useSuspense: false, + }, + ); + + if (!module.hasValue) { + return fallback; + } + + return children; +}; diff --git a/packages/models/src/react/asyncResourceInvalidation.ts b/packages/models/src/react/asyncResourceInvalidation.ts new file mode 100644 index 00000000..3d293393 --- /dev/null +++ b/packages/models/src/react/asyncResourceInvalidation.ts @@ -0,0 +1,38 @@ +import { Commons } from "@mittwald/api-client"; +import { reactProvisionContext } from "./reactProvisionContext.js"; +import { refresh } from "@mittwald/react-use-promise"; +import { Store } from "@mittwald/react-use-promise/store"; + +const cacheTagStore = new Store>(); + +export const refreshModels = (tag: string) => { + cacheTagStore.getAll(tag).forEach((ids) => { + ids.forEach((id) => { + refresh({ + tag: String(id), + }); + }); + }); +}; + +export const addCacheTag = (tag: string) => { + const context = reactProvisionContext.use(); + + if (context) { + const ids = cacheTagStore.get(tag) ?? new Set(); + ids.add(context.id); + + cacheTagStore.set(tag, () => ids, { + tags: [tag], + }); + } +}; + +export const updateCacheTagsBeforeRequest: Commons.RequestOptions["onBeforeRequest"] = + (request) => { + const url = request.requestConfig.url; + + if (request.requestConfig.method === "GET" && url) { + addCacheTag(url); + } + }; diff --git a/packages/models/src/react/index.ts b/packages/models/src/react/index.ts index a8c15c8b..7d1afaf1 100644 --- a/packages/models/src/react/index.ts +++ b/packages/models/src/react/index.ts @@ -1,3 +1,4 @@ +export { refreshModels, addCacheTag } from "./asyncResourceInvalidation.js"; export * from "./MittwaldApiModelProvider.js"; export * from "./reactUsePromise.js"; export { type AsyncResourceVariant } from "./provideReact.js"; diff --git a/packages/models/src/react/provideReact.test.tsx b/packages/models/src/react/provideReact.test.tsx new file mode 100644 index 00000000..a1eb5352 --- /dev/null +++ b/packages/models/src/react/provideReact.test.tsx @@ -0,0 +1,90 @@ +/** @jest-environment jsdom */ + +import "@testing-library/jest-dom"; +import { render, screen } from "@testing-library/react"; +import { ReferenceModel } from "../base/index.js"; +import { provideReact } from "./provideReact.js"; +import React, { act, FC, PropsWithChildren, Suspense } from "react"; +import { beforeEach, jest } from "@jest/globals"; +import { MittwaldApiModelProvider } from "./MittwaldApiModelProvider.js"; +import { addCacheTag, refreshModels } from "./asyncResourceInvalidation.js"; +import { asyncResourceStore } from "@mittwald/react-use-promise"; + +const simulatedDataLoad = jest.fn(); +let rerender: ReturnType["rerender"] | undefined; + +beforeEach(() => { + jest.resetAllMocks(); + jest.useFakeTimers(); + asyncResourceStore.clear(); + rerender = undefined; + + simulatedDataLoad.mockImplementation(() => { + return new Promise((res) => setTimeout(res, 100)); + }); +}); + +class TestModel extends ReferenceModel { + public static ofId(id: number) { + return new TestModel(String(id)); + } + + public getDetailed = provideReact(async () => { + addCacheTag(`test/get/${this.id}`); + await simulatedDataLoad(); + return { + id: this.id, + foo: true, + }; + }, [this.id]); +} + +const TestComponent: FC<{ id: number }> = (props) => { + const model = TestModel.ofId(props.id).getDetailed.use(); + return {model.id}; +}; + +const TestWrapper: FC = (props) => ( + + {props.children} + +); + +const runTest = async (id: number, expectedDataLoadingCount: number) => { + const ui = rerender + ? rerender() + : render(, { + wrapper: TestWrapper, + }); + + if (ui) { + rerender = ui.rerender; + } + expect(await screen.findByText(id)).toBeInTheDocument(); + expect(simulatedDataLoad).toHaveBeenCalledTimes(expectedDataLoadingCount); +}; + +test("Model data can be used", async () => { + await runTest(42, 1); + await runTest(43, 2); +}); + +test("Model caches data", async () => { + await runTest(42, 1); + await runTest(43, 2); + await runTest(42, 2); + await runTest(43, 2); +}); + +test("Model cache can be refreshed", async () => { + await runTest(42, 1); + // Tag does not exist + act(() => refreshModels("foo")); + await runTest(42, 1); + // Tag exist + act(() => refreshModels("test/get/42")); + await runTest(42, 2); + // Tag exist + act(() => refreshModels("test/**/*")); + await runTest(42, 3); +}); diff --git a/packages/models/src/react/provideReact.ts b/packages/models/src/react/provideReact.ts index 85deefcb..d269478b 100644 --- a/packages/models/src/react/provideReact.ts +++ b/packages/models/src/react/provideReact.ts @@ -1,5 +1,7 @@ import { AsyncResource, reactUsePromise } from "./reactUsePromise.js"; import { AsyncReturnType } from "type-fest"; +import { hash } from "object-code"; +import { reactProvisionContext } from "./reactProvisionContext.js"; type AsyncFn = (...args: any[]) => Promise; @@ -8,13 +10,28 @@ export const provideReact = ( dependencies?: string[], ) => { type P = Parameters; + const provisionId = hash({ + loader, + dependencies, + }); - const getAsyncResource = (params: P) => - reactUsePromise.getAsyncResource(loader, params, { + const getAsyncResource = (params: P) => { + const contextId = provisionId + hash(params); + + const loaderWithContext = reactProvisionContext.bind( + { + id: contextId, + }, + loader, + ); + + return reactUsePromise.getAsyncResource(loaderWithContext, params, { // "stringify" dependencies to be used as loaderId // see https://github.com/mittwald/react-use-promise?tab=readme-ov-file#loaderid - loaderId: dependencies ? dependencies.join("|") : undefined, + loaderId: String(provisionId), + tags: [String(contextId)], }); + }; return Object.assign(loader, { asResource: (...params: P) => getAsyncResource(params), diff --git a/packages/models/src/react/reactProvisionContext.ts b/packages/models/src/react/reactProvisionContext.ts new file mode 100644 index 00000000..b71f6f11 --- /dev/null +++ b/packages/models/src/react/reactProvisionContext.ts @@ -0,0 +1,5 @@ +import { createCascade } from "context"; + +export const reactProvisionContext = createCascade<{ + id: number; +}>(); diff --git a/packages/models/src/react/reactUsePromise.ts b/packages/models/src/react/reactUsePromise.ts index 8f49ab16..187b8df3 100644 --- a/packages/models/src/react/reactUsePromise.ts +++ b/packages/models/src/react/reactUsePromise.ts @@ -1,4 +1,5 @@ -type ReactUsePromiseModule = typeof import("@mittwald/react-use-promise"); +export type ReactUsePromiseModule = + typeof import("@mittwald/react-use-promise"); export type { AsyncResource, diff --git a/tsconfig.json b/tsconfig.json index 338d3c5c..010f8fe5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,6 +9,7 @@ "skipLibCheck": true, "strict": true, "stripInternal": true, - "target": "ES2022" + "target": "ES2022", + "jsx": "react" } } diff --git a/yarn.lock b/yarn.lock index 46e76b4d..5beb6ffd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,6 +5,13 @@ __metadata: version: 8 cacheKey: 10 +"@adobe/css-tools@npm:^4.4.0": + version: 4.4.0 + resolution: "@adobe/css-tools@npm:4.4.0" + checksum: 10/9c6315fe9efa5075d6ddb6ded7a1424bc9c41a01f2314b6bdcc368723985fe161008d03ddcc2b27b2da50cb9c14190fbce965d15cefe5f9a31bdd43f35b52115 + languageName: node + linkType: hard + "@ampproject/remapping@npm:^2.2.0": version: 2.2.1 resolution: "@ampproject/remapping@npm:2.2.1" @@ -33,6 +40,16 @@ __metadata: languageName: node linkType: hard +"@babel/code-frame@npm:^7.10.4": + version: 7.24.7 + resolution: "@babel/code-frame@npm:7.24.7" + dependencies: + "@babel/highlight": "npm:^7.24.7" + picocolors: "npm:^1.0.0" + checksum: 10/4812e94885ba7e3213d49583a155fdffb05292330f0a9b2c41b49288da70cf3c746a3fda0bf1074041a6d741c33f8d7be24be5e96f41ef77395eeddc5c9ff624 + languageName: node + linkType: hard + "@babel/code-frame@npm:^7.22.13, @babel/code-frame@npm:^7.23.5": version: 7.23.5 resolution: "@babel/code-frame@npm:7.23.5" @@ -327,6 +344,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-identifier@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-validator-identifier@npm:7.24.7" + checksum: 10/86875063f57361471b531dbc2ea10bbf5406e12b06d249b03827d361db4cad2388c6f00936bcd9dc86479f7e2c69ea21412c2228d4b3672588b754b70a449d4b + languageName: node + linkType: hard + "@babel/helper-validator-option@npm:^7.21.0": version: 7.21.0 resolution: "@babel/helper-validator-option@npm:7.21.0" @@ -385,6 +409,18 @@ __metadata: languageName: node linkType: hard +"@babel/highlight@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/highlight@npm:7.24.7" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.24.7" + chalk: "npm:^2.4.2" + js-tokens: "npm:^4.0.0" + picocolors: "npm:^1.0.0" + checksum: 10/69b73f38cdd4f881b09b939a711e76646da34f4834f4ce141d7a49a6bb1926eab1c594148970a8aa9360398dff800f63aade4e81fafdd7c8d8a8489ea93bfec1 + languageName: node + linkType: hard + "@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.21.4": version: 7.21.4 resolution: "@babel/parser@npm:7.21.4" @@ -557,6 +593,15 @@ __metadata: languageName: node linkType: hard +"@babel/runtime@npm:^7.12.5": + version: 7.25.6 + resolution: "@babel/runtime@npm:7.25.6" + dependencies: + regenerator-runtime: "npm:^0.14.0" + checksum: 10/0c4134734deb20e1005ffb9165bf342e1074576621b246d8e5e41cc7cb315a885b7d98950fbf5c63619a2990a56ae82f444d35fe8c4691a0b70c2fe5673667dc + languageName: node + linkType: hard + "@babel/runtime@npm:^7.21.0": version: 7.23.4 resolution: "@babel/runtime@npm:7.23.4" @@ -1360,12 +1405,12 @@ __metadata: resolution: "@mittwald/api-client-commons@workspace:packages/commons" dependencies: "@jest/globals": "npm:^29.7.0" - "@mittwald/react-use-promise": "npm:^2.3.13" + "@mittwald/react-use-promise": "npm:^2.5.0" "@types/jest": "npm:^29.5.12" "@types/parse-path": "npm:^7.0.3" "@typescript-eslint/eslint-plugin": "npm:^7.18.0" "@typescript-eslint/parser": "npm:^7.18.0" - axios: "npm:^1.7.4" + axios: "npm:^1.7.7" eslint: "npm:^8.57.0" eslint-config-prettier: "npm:^9.1.0" eslint-plugin-json: "npm:^3.1.0" @@ -1399,7 +1444,7 @@ __metadata: dependencies: "@mittwald/api-client-commons": "workspace:^" "@mittwald/api-code-generator": "workspace:^" - "@mittwald/react-use-promise": "npm:^2.3.13" + "@mittwald/react-use-promise": "npm:^2.5.0" "@types/node": "npm:^20.14.14" "@types/react": "npm:^18.3.3" "@typescript-eslint/eslint-plugin": "npm:^7.18.0" @@ -1447,7 +1492,7 @@ __metadata: "@types/yieldable-json": "npm:^2.0.2" "@typescript-eslint/eslint-plugin": "npm:^7.18.0" "@typescript-eslint/parser": "npm:^7.18.0" - axios: "npm:^1.7.4" + axios: "npm:^1.7.7" camelcase: "npm:^8.0.0" clone-deep: "npm:^4.0.1" dot-prop: "npm:^8.0.2" @@ -1487,21 +1532,28 @@ __metadata: dependencies: "@jest/globals": "npm:^29.7.0" "@mittwald/api-client": "workspace:^" - "@mittwald/react-use-promise": "npm:^2.3.13" + "@mittwald/react-use-promise": "npm:^2.5.0" + "@testing-library/dom": "npm:^10.4.0" + "@testing-library/jest-dom": "npm:^6.5.0" + "@testing-library/react": "npm:^16.0.1" "@types/jest": "npm:^29.5.12" "@types/react": "npm:^18.3.3" + "@types/react-dom": "npm:^18" "@typescript-eslint/eslint-plugin": "npm:^7.18.0" "@typescript-eslint/parser": "npm:^7.18.0" another-deep-freeze: "npm:^1.0.0" + context: "npm:^3.0.31" eslint: "npm:^8.57.0" eslint-config-prettier: "npm:^9.1.0" eslint-plugin-json: "npm:^3.1.0" eslint-plugin-prettier: "npm:^5.2.1" jest: "npm:^29.7.0" + jest-environment-jsdom: "npm:^29.7.0" object-code: "npm:^1.3.3" polytype: "npm:^0.17.0" prettier: "npm:^3.3.3" react: "npm:^18.3.1" + react-dom: "npm:^18.3.1" rimraf: "npm:^5.0.10" ts-jest: "npm:^29.2.4" type-fest: "npm:^4.23.0" @@ -1516,14 +1568,14 @@ __metadata: languageName: unknown linkType: soft -"@mittwald/react-use-promise@npm:^2.3.13": - version: 2.3.13 - resolution: "@mittwald/react-use-promise@npm:2.3.13" +"@mittwald/react-use-promise@npm:^2.5.0": + version: 2.5.0 + resolution: "@mittwald/react-use-promise@npm:2.5.0" dependencies: "@types/luxon": "npm:3.4.2" - browser-or-node: "npm:^3.0.0-pre.0" - luxon: "npm:~3.4.4" - minimatch: "npm:^9.0.3" + browser-or-node: "npm:^3.0.0" + luxon: "npm:~3.5.0" + minimatch: "npm:^10.0.1" object-code: "npm:^1.3.3" peerDependencies: axios: ^1.6.7 @@ -1531,7 +1583,7 @@ __metadata: peerDependenciesMeta: axios: optional: true - checksum: 10/8a5c7c9b8595abadb2f116480f440f1bed6df233318440c04eb30687be4822bc23cdba79918997922629a37b1da0b19a732206d28cd9047ab08c25f95f7a8a74 + checksum: 10/6a544847ef6d1d9e56c87bc46096d7ceeb8cb3f1efaf63ae762ba13eaf0be8f43da8d1734deaa66ac339379a1190fd612b9e1a384ae40afb1f40f9b31880f2a9 languageName: node linkType: hard @@ -2472,6 +2524,64 @@ __metadata: languageName: node linkType: hard +"@testing-library/dom@npm:^10.4.0": + version: 10.4.0 + resolution: "@testing-library/dom@npm:10.4.0" + dependencies: + "@babel/code-frame": "npm:^7.10.4" + "@babel/runtime": "npm:^7.12.5" + "@types/aria-query": "npm:^5.0.1" + aria-query: "npm:5.3.0" + chalk: "npm:^4.1.0" + dom-accessibility-api: "npm:^0.5.9" + lz-string: "npm:^1.5.0" + pretty-format: "npm:^27.0.2" + checksum: 10/05825ee9a15b88cbdae12c137db7111c34069ed3c7a1bd03b6696cb1b37b29f6f2d2de581ebf03033e7df1ab7ebf08399310293f440a4845d95c02c0a9ecc899 + languageName: node + linkType: hard + +"@testing-library/jest-dom@npm:^6.5.0": + version: 6.5.0 + resolution: "@testing-library/jest-dom@npm:6.5.0" + dependencies: + "@adobe/css-tools": "npm:^4.4.0" + aria-query: "npm:^5.0.0" + chalk: "npm:^3.0.0" + css.escape: "npm:^1.5.1" + dom-accessibility-api: "npm:^0.6.3" + lodash: "npm:^4.17.21" + redent: "npm:^3.0.0" + checksum: 10/3d2080888af5fd7306f57448beb5a23f55d965e265b5e53394fffc112dfb0678d616a5274ff0200c46c7618f293520f86fc8562eecd8bdbc0dbb3294d63ec431 + languageName: node + linkType: hard + +"@testing-library/react@npm:^16.0.1": + version: 16.0.1 + resolution: "@testing-library/react@npm:16.0.1" + dependencies: + "@babel/runtime": "npm:^7.12.5" + peerDependencies: + "@testing-library/dom": ^10.0.0 + "@types/react": ^18.0.0 + "@types/react-dom": ^18.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 + peerDependenciesMeta: + "@types/react": + optional: true + "@types/react-dom": + optional: true + checksum: 10/904b48881cf5bd208e25899e168f5c99c78ed6d77389544838d9d861a038d2c5c5385863ee9a367436770cbf7d21c5e05a991b9e24a33806e9ac985df2448185 + languageName: node + linkType: hard + +"@tootallnate/once@npm:2": + version: 2.0.0 + resolution: "@tootallnate/once@npm:2.0.0" + checksum: 10/ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 + languageName: node + linkType: hard + "@tsd/typescript@npm:~5.4.3": version: 5.4.5 resolution: "@tsd/typescript@npm:5.4.5" @@ -2505,6 +2615,13 @@ __metadata: languageName: node linkType: hard +"@types/aria-query@npm:^5.0.1": + version: 5.0.4 + resolution: "@types/aria-query@npm:5.0.4" + checksum: 10/c0084c389dc030daeaf0115a92ce43a3f4d42fc8fef2d0e22112d87a42798d4a15aac413019d4a63f868327d52ad6740ab99609462b442fe6b9286b172d2e82e + languageName: node + linkType: hard + "@types/babel__core@npm:^7.1.14": version: 7.20.0 resolution: "@types/babel__core@npm:7.20.0" @@ -2682,6 +2799,17 @@ __metadata: languageName: node linkType: hard +"@types/jsdom@npm:^20.0.0": + version: 20.0.1 + resolution: "@types/jsdom@npm:20.0.1" + dependencies: + "@types/node": "npm:*" + "@types/tough-cookie": "npm:*" + parse5: "npm:^7.0.0" + checksum: 10/15fbb9a0bfb4a5845cf6e795f2fd12400aacfca53b8c7e5bca4a3e5e8fa8629f676327964d64258aefb127d2d8a2be86dad46359efbfca0e8c9c2b790e7f8a88 + languageName: node + linkType: hard + "@types/json-schema@npm:*": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -2839,6 +2967,25 @@ __metadata: languageName: node linkType: hard +"@types/react-dom@npm:^18": + version: 18.3.0 + resolution: "@types/react-dom@npm:18.3.0" + dependencies: + "@types/react": "npm:*" + checksum: 10/6ff53f5a7b7fba952a68e114d3b542ebdc1e87a794234785ebab0bcd9bde7fb4885f21ebaf93d26dc0a1b5b93287f42cad68b78ae04dddf6b20da7aceff0beaf + languageName: node + linkType: hard + +"@types/react@npm:*": + version: 18.3.7 + resolution: "@types/react@npm:18.3.7" + dependencies: + "@types/prop-types": "npm:*" + csstype: "npm:^3.0.2" + checksum: 10/30cfbe33c82e8033df5f70a4f54068f4344a691cff3f2b3901dd678e89ce5477dc8faada4a45d333ea570e1992ca8fda5b096d9deddfafb8c373acababc40c70 + languageName: node + linkType: hard + "@types/react@npm:^18.3.3": version: 18.3.3 resolution: "@types/react@npm:18.3.3" @@ -2882,6 +3029,13 @@ __metadata: languageName: node linkType: hard +"@types/tough-cookie@npm:*": + version: 4.0.5 + resolution: "@types/tough-cookie@npm:4.0.5" + checksum: 10/01fd82efc8202670865928629697b62fe9bf0c0dcbc5b1c115831caeb073a2c0abb871ff393d7df1ae94ea41e256cb87d2a5a91fd03cdb1b0b4384e08d4ee482 + languageName: node + linkType: hard + "@types/treeify@npm:^1.0.0": version: 1.0.0 resolution: "@types/treeify@npm:1.0.0" @@ -3222,6 +3376,13 @@ __metadata: languageName: node linkType: hard +"abab@npm:^2.0.6": + version: 2.0.6 + resolution: "abab@npm:2.0.6" + checksum: 10/ebe95d7278999e605823fc515a3b05d689bc72e7f825536e73c95ebf621636874c6de1b749b3c4bf866b96ccd4b3a2802efa313d0e45ad51a413c8c73247db20 + languageName: node + linkType: hard + "abbrev@npm:^2.0.0": version: 2.0.0 resolution: "abbrev@npm:2.0.0" @@ -3229,6 +3390,16 @@ __metadata: languageName: node linkType: hard +"acorn-globals@npm:^7.0.0": + version: 7.0.1 + resolution: "acorn-globals@npm:7.0.1" + dependencies: + acorn: "npm:^8.1.0" + acorn-walk: "npm:^8.0.2" + checksum: 10/2a2998a547af6d0db5f0cdb90acaa7c3cbca6709010e02121fb8b8617c0fbd8bab0b869579903fde358ac78454356a14fadcc1a672ecb97b04b1c2ccba955ce8 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -3238,7 +3409,16 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.9.0": +"acorn-walk@npm:^8.0.2": + version: 8.3.4 + resolution: "acorn-walk@npm:8.3.4" + dependencies: + acorn: "npm:^8.11.0" + checksum: 10/871386764e1451c637bb8ab9f76f4995d408057e9909be6fb5ad68537ae3375d85e6a6f170b98989f44ab3ff6c74ad120bc2779a3d577606e7a0cd2b4efcaf77 + languageName: node + linkType: hard + +"acorn@npm:^8.1.0, acorn@npm:^8.11.0, acorn@npm:^8.8.1, acorn@npm:^8.9.0": version: 8.12.1 resolution: "acorn@npm:8.12.1" bin: @@ -3254,6 +3434,15 @@ __metadata: languageName: node linkType: hard +"agent-base@npm:6": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: "npm:4" + checksum: 10/21fb903e0917e5cb16591b4d0ef6a028a54b83ac30cd1fca58dece3d4e0990512a8723f9f83130d88a41e2af8b1f7be1386fda3ea2d181bb1a62155e75e95e23 + languageName: node + linkType: hard + "agent-base@npm:^7.0.2, agent-base@npm:^7.1.0, agent-base@npm:^7.1.1": version: 7.1.1 resolution: "agent-base@npm:7.1.1" @@ -3448,6 +3637,22 @@ __metadata: languageName: node linkType: hard +"aria-query@npm:5.3.0": + version: 5.3.0 + resolution: "aria-query@npm:5.3.0" + dependencies: + dequal: "npm:^2.0.3" + checksum: 10/c3e1ed127cc6886fea4732e97dd6d3c3938e64180803acfb9df8955517c4943760746ffaf4020ce8f7ffaa7556a3b5f85c3769a1f5ca74a1288e02d042f9ae4e + languageName: node + linkType: hard + +"aria-query@npm:^5.0.0": + version: 5.3.1 + resolution: "aria-query@npm:5.3.1" + checksum: 10/4b39d2e466992121886ae436d67085537af895b7e545e6092b89950a1f2c372e4a91b0b1daa16a5164564fdefbc6415a1d04d0fe2db8b1326f9ca6728f8384d0 + languageName: node + linkType: hard + "array-differ@npm:^3.0.0": version: 3.0.0 resolution: "array-differ@npm:3.0.0" @@ -3698,7 +3903,7 @@ __metadata: languageName: node linkType: hard -"browser-or-node@npm:^3.0.0, browser-or-node@npm:^3.0.0-pre.0": +"browser-or-node@npm:^3.0.0": version: 3.0.0 resolution: "browser-or-node@npm:3.0.0" checksum: 10/51d74cc5d0139da3d37e83ff3906fcca20d02c42aa8b81a48d9ea01806f36df1a4b55006670071b1d7423967777275920054ec8b723410534b580b0232c5093d @@ -4303,6 +4508,15 @@ __metadata: languageName: node linkType: hard +"context@npm:^3.0.31": + version: 3.0.31 + resolution: "context@npm:3.0.31" + dependencies: + vest-utils: "npm:^1.3.1" + checksum: 10/24ab5bc6ffce6eae92aa84d95b48208bb426e4be66d5f2ed6ba6a04b628970b2d12024d2e7f243a525f2527f7364efe6d089c4c3ab7aa9192f00376558f56cc7 + languageName: node + linkType: hard + "conventional-changelog-angular@npm:7.0.0": version: 7.0.0 resolution: "conventional-changelog-angular@npm:7.0.0" @@ -4482,6 +4696,13 @@ __metadata: languageName: node linkType: hard +"css.escape@npm:^1.5.1": + version: 1.5.1 + resolution: "css.escape@npm:1.5.1" + checksum: 10/f6d38088d870a961794a2580b2b2af1027731bb43261cfdce14f19238a88664b351cc8978abc20f06cc6bbde725699dec8deb6fe9816b139fc3f2af28719e774 + languageName: node + linkType: hard + "cssesc@npm:^3.0.0": version: 3.0.0 resolution: "cssesc@npm:3.0.0" @@ -4491,6 +4712,29 @@ __metadata: languageName: node linkType: hard +"cssom@npm:^0.5.0": + version: 0.5.0 + resolution: "cssom@npm:0.5.0" + checksum: 10/b502a315b1ce020a692036cc38cb36afa44157219b80deadfa040ab800aa9321fcfbecf02fd2e6ec87db169715e27978b4ab3701f916461e9cf7808899f23b54 + languageName: node + linkType: hard + +"cssom@npm:~0.3.6": + version: 0.3.8 + resolution: "cssom@npm:0.3.8" + checksum: 10/49eacc88077555e419646c0ea84ddc73c97e3a346ad7cb95e22f9413a9722d8964b91d781ce21d378bd5ae058af9a745402383fa4e35e9cdfd19654b63f892a9 + languageName: node + linkType: hard + +"cssstyle@npm:^2.3.0": + version: 2.3.0 + resolution: "cssstyle@npm:2.3.0" + dependencies: + cssom: "npm:~0.3.6" + checksum: 10/46f7f05a153446c4018b0454ee1464b50f606cb1803c90d203524834b7438eb52f3b173ba0891c618f380ced34ee12020675dc0052a7f1be755fe4ebc27ee977 + languageName: node + linkType: hard + "csstype@npm:^3.0.2": version: 3.1.3 resolution: "csstype@npm:3.1.3" @@ -4515,6 +4759,17 @@ __metadata: languageName: node linkType: hard +"data-urls@npm:^3.0.2": + version: 3.0.2 + resolution: "data-urls@npm:3.0.2" + dependencies: + abab: "npm:^2.0.6" + whatwg-mimetype: "npm:^3.0.0" + whatwg-url: "npm:^11.0.0" + checksum: 10/033fc3dd0fba6d24bc9a024ddcf9923691dd24f90a3d26f6545d6a2f71ec6956f93462f2cdf2183cc46f10dc01ed3bcb36731a8208456eb1a08147e571fe2a76 + languageName: node + linkType: hard + "date-fns@npm:^2.30.0": version: 2.30.0 resolution: "date-fns@npm:2.30.0" @@ -4560,6 +4815,13 @@ __metadata: languageName: node linkType: hard +"decimal.js@npm:^10.4.2": + version: 10.4.3 + resolution: "decimal.js@npm:10.4.3" + checksum: 10/de663a7bc4d368e3877db95fcd5c87b965569b58d16cdc4258c063d231ca7118748738df17cd638f7e9dd0be8e34cec08d7234b20f1f2a756a52fc5a38b188d0 + languageName: node + linkType: hard + "decode-named-character-reference@npm:^1.0.0": version: 1.0.2 resolution: "decode-named-character-reference@npm:1.0.2" @@ -4641,7 +4903,7 @@ __metadata: languageName: node linkType: hard -"dequal@npm:^2.0.0": +"dequal@npm:^2.0.0, dequal@npm:^2.0.3": version: 2.0.3 resolution: "dequal@npm:2.0.3" checksum: 10/6ff05a7561f33603df87c45e389c9ac0a95e3c056be3da1a0c4702149e3a7f6fe5ffbb294478687ba51a9e95f3a60e8b6b9005993acd79c292c7d15f71964b6b @@ -4703,6 +4965,29 @@ __metadata: languageName: node linkType: hard +"dom-accessibility-api@npm:^0.5.9": + version: 0.5.16 + resolution: "dom-accessibility-api@npm:0.5.16" + checksum: 10/377b4a7f9eae0a5d72e1068c369c99e0e4ca17fdfd5219f3abd32a73a590749a267475a59d7b03a891f9b673c27429133a818c44b2e47e32fec024b34274e2ca + languageName: node + linkType: hard + +"dom-accessibility-api@npm:^0.6.3": + version: 0.6.3 + resolution: "dom-accessibility-api@npm:0.6.3" + checksum: 10/83d3371f8226487fbad36e160d44f1d9017fb26d46faba6a06fcad15f34633fc827b8c3e99d49f71d5f3253d866e2131826866fd0a3c86626f8eccfc361881ff + languageName: node + linkType: hard + +"domexception@npm:^4.0.0": + version: 4.0.0 + resolution: "domexception@npm:4.0.0" + dependencies: + webidl-conversions: "npm:^7.0.0" + checksum: 10/4ed443227d2871d76c58d852b2e93c68e0443815b2741348f20881bedee8c1ad4f9bfc5d30c7dec433cd026b57da63407c010260b1682fef4c8847e7181ea43f + languageName: node + linkType: hard + "dot-prop@npm:^5.1.0": version: 5.3.0 resolution: "dot-prop@npm:5.3.0" @@ -4831,6 +5116,13 @@ __metadata: languageName: node linkType: hard +"entities@npm:^4.4.0": + version: 4.5.0 + resolution: "entities@npm:4.5.0" + checksum: 10/ede2a35c9bce1aeccd055a1b445d41c75a14a2bb1cd22e242f20cf04d236cdcd7f9c859eb83f76885327bfae0c25bf03303665ee1ce3d47c5927b98b0e3e3d48 + languageName: node + linkType: hard + "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -5023,6 +5315,24 @@ __metadata: languageName: node linkType: hard +"escodegen@npm:^2.0.0": + version: 2.1.0 + resolution: "escodegen@npm:2.1.0" + dependencies: + esprima: "npm:^4.0.1" + estraverse: "npm:^5.2.0" + esutils: "npm:^2.0.2" + source-map: "npm:~0.6.1" + dependenciesMeta: + source-map: + optional: true + bin: + escodegen: bin/escodegen.js + esgenerate: bin/esgenerate.js + checksum: 10/47719a65b2888b4586e3fa93769068b275961c13089e90d5d01a96a6e8e95871b1c3893576814c8fbf08a4a31a496f37e7b2c937cf231270f4d81de012832c7c + languageName: node + linkType: hard + "eslint-config-prettier@npm:^9.1.0": version: 9.1.0 resolution: "eslint-config-prettier@npm:9.1.0" @@ -5175,7 +5485,7 @@ __metadata: languageName: node linkType: hard -"esprima@npm:^4.0.0, esprima@npm:~4.0.0": +"esprima@npm:^4.0.0, esprima@npm:^4.0.1, esprima@npm:~4.0.0": version: 4.0.1 resolution: "esprima@npm:4.0.1" bin: @@ -6027,6 +6337,15 @@ __metadata: languageName: node linkType: hard +"html-encoding-sniffer@npm:^3.0.0": + version: 3.0.0 + resolution: "html-encoding-sniffer@npm:3.0.0" + dependencies: + whatwg-encoding: "npm:^2.0.0" + checksum: 10/707a812ec2acaf8bb5614c8618dc81e2fb6b4399d03e95ff18b65679989a072f4e919b9bef472039301a1bbfba64063ba4c79ea6e851c653ac9db80dbefe8fe5 + languageName: node + linkType: hard + "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -6041,6 +6360,17 @@ __metadata: languageName: node linkType: hard +"http-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "http-proxy-agent@npm:5.0.0" + dependencies: + "@tootallnate/once": "npm:2" + agent-base: "npm:6" + debug: "npm:4" + checksum: 10/5ee19423bc3e0fd5f23ce991b0755699ad2a46a440ce9cec99e8126bb98448ad3479d2c0ea54be5519db5b19a4ffaa69616bac01540db18506dd4dac3dc418f0 + languageName: node + linkType: hard + "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -6068,6 +6398,16 @@ __metadata: languageName: node linkType: hard +"https-proxy-agent@npm:^5.0.1": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" + dependencies: + agent-base: "npm:6" + debug: "npm:4" + checksum: 10/f0dce7bdcac5e8eaa0be3c7368bb8836ed010fb5b6349ffb412b172a203efe8f807d9a6681319105ea1b6901e1972c7b5ea899672a7b9aad58309f766dcbe0df + languageName: node + linkType: hard + "https-proxy-agent@npm:^7.0.1": version: 7.0.5 resolution: "https-proxy-agent@npm:7.0.5" @@ -6092,6 +6432,15 @@ __metadata: languageName: node linkType: hard +"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" + dependencies: + safer-buffer: "npm:>= 2.1.2 < 3.0.0" + checksum: 10/24e3292dd3dadaa81d065c6f8c41b274a47098150d444b96e5f53b4638a9a71482921ea6a91a1f59bb71d9796de25e04afd05919fa64c360347ba65d3766f10f + languageName: node + linkType: hard + "iconv-lite@npm:^0.4.24": version: 0.4.24 resolution: "iconv-lite@npm:0.4.24" @@ -6101,15 +6450,6 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10/24e3292dd3dadaa81d065c6f8c41b274a47098150d444b96e5f53b4638a9a71482921ea6a91a1f59bb71d9796de25e04afd05919fa64c360347ba65d3766f10f - languageName: node - linkType: hard - "ieee754@npm:^1.1.13": version: 1.2.1 resolution: "ieee754@npm:1.2.1" @@ -6437,6 +6777,13 @@ __metadata: languageName: node linkType: hard +"is-potential-custom-element-name@npm:^1.0.1": + version: 1.0.1 + resolution: "is-potential-custom-element-name@npm:1.0.1" + checksum: 10/ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab + languageName: node + linkType: hard + "is-promise@npm:^2.2.2": version: 2.2.2 resolution: "is-promise@npm:2.2.2" @@ -6749,6 +7096,27 @@ __metadata: languageName: node linkType: hard +"jest-environment-jsdom@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-environment-jsdom@npm:29.7.0" + dependencies: + "@jest/environment": "npm:^29.7.0" + "@jest/fake-timers": "npm:^29.7.0" + "@jest/types": "npm:^29.6.3" + "@types/jsdom": "npm:^20.0.0" + "@types/node": "npm:*" + jest-mock: "npm:^29.7.0" + jest-util: "npm:^29.7.0" + jsdom: "npm:^20.0.0" + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 10/23bbfc9bca914baef4b654f7983175a4d49b0f515a5094ebcb8f819f28ec186f53c0ba06af1855eac04bab1457f4ea79dae05f70052cf899863e8096daa6e0f5 + languageName: node + linkType: hard + "jest-environment-node@npm:^29.7.0": version: 29.7.0 resolution: "jest-environment-node@npm:29.7.0" @@ -7088,6 +7456,45 @@ __metadata: languageName: node linkType: hard +"jsdom@npm:^20.0.0": + version: 20.0.3 + resolution: "jsdom@npm:20.0.3" + dependencies: + abab: "npm:^2.0.6" + acorn: "npm:^8.8.1" + acorn-globals: "npm:^7.0.0" + cssom: "npm:^0.5.0" + cssstyle: "npm:^2.3.0" + data-urls: "npm:^3.0.2" + decimal.js: "npm:^10.4.2" + domexception: "npm:^4.0.0" + escodegen: "npm:^2.0.0" + form-data: "npm:^4.0.0" + html-encoding-sniffer: "npm:^3.0.0" + http-proxy-agent: "npm:^5.0.0" + https-proxy-agent: "npm:^5.0.1" + is-potential-custom-element-name: "npm:^1.0.1" + nwsapi: "npm:^2.2.2" + parse5: "npm:^7.1.1" + saxes: "npm:^6.0.0" + symbol-tree: "npm:^3.2.4" + tough-cookie: "npm:^4.1.2" + w3c-xmlserializer: "npm:^4.0.0" + webidl-conversions: "npm:^7.0.0" + whatwg-encoding: "npm:^2.0.0" + whatwg-mimetype: "npm:^3.0.0" + whatwg-url: "npm:^11.0.0" + ws: "npm:^8.11.0" + xml-name-validator: "npm:^4.0.0" + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 10/a4cdcff5b07eed87da90b146b82936321533b5efe8124492acf7160ebd5b9cf2b3c2435683592bf1cffb479615245756efb6c173effc1906f845a86ed22af985 + languageName: node + linkType: hard + "jsesc@npm:^2.5.1": version: 2.5.2 resolution: "jsesc@npm:2.5.2" @@ -7704,10 +8111,19 @@ __metadata: languageName: node linkType: hard -"luxon@npm:~3.4.4": - version: 3.4.4 - resolution: "luxon@npm:3.4.4" - checksum: 10/c14164bc338987349075a08e63ea3ff902866735f7f5553a355b27be22667919765ff96fde4d3413d0e9a0edc4ff9e2e74ebcb8f86eae0ce8b14b27330d87d6e +"luxon@npm:~3.5.0": + version: 3.5.0 + resolution: "luxon@npm:3.5.0" + checksum: 10/48f86e6c1c96815139f8559456a3354a276ba79bcef0ae0d4f2172f7652f3ba2be2237b0e103b8ea0b79b47715354ac9fac04eb1db3485dcc72d5110491dd47f + languageName: node + linkType: hard + +"lz-string@npm:^1.5.0": + version: 1.5.0 + resolution: "lz-string@npm:1.5.0" + bin: + lz-string: bin/bin.js + checksum: 10/e86f0280e99a8d8cd4eef24d8601ddae15ce54e43ac9990dfcb79e1e081c255ad24424a30d78d2ad8e51a8ce82a66a930047fed4b4aa38c6f0b392ff9300edfc languageName: node linkType: hard @@ -8186,6 +8602,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^10.0.1": + version: 10.0.1 + resolution: "minimatch@npm:10.0.1" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10/082e7ccbc090d5f8c4e4e029255d5a1d1e3af37bda837da2b8b0085b1503a1210c91ac90d9ebfe741d8a5f286ece820a1abb4f61dc1f82ce602a055d461d93f3 + languageName: node + linkType: hard + "minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -8831,6 +9256,13 @@ __metadata: languageName: node linkType: hard +"nwsapi@npm:^2.2.2": + version: 2.2.12 + resolution: "nwsapi@npm:2.2.12" + checksum: 10/172119e9ef492467ebfb337f9b5fd12a94d2b519377cde3f6ec2f74a86f6d5c00ef3873539bed7142f908ffca4e35383179be2319d04a563071d146bfa3f1673 + languageName: node + linkType: hard + "nx@npm:18.3.5, nx@npm:^18.3.5": version: 18.3.5 resolution: "nx@npm:18.3.5" @@ -9463,6 +9895,15 @@ __metadata: languageName: node linkType: hard +"parse5@npm:^7.0.0, parse5@npm:^7.1.1": + version: 7.1.2 + resolution: "parse5@npm:7.1.2" + dependencies: + entities: "npm:^4.4.0" + checksum: 10/3c86806bb0fb1e9a999ff3a4c883b1ca243d99f45a619a0898dbf021a95a0189ed955c31b07fe49d342b54e814f33f2c9d7489198e8630dacd5477d413ec5782 + languageName: node + linkType: hard + "password-prompt@npm:^1.1.3": version: 1.1.3 resolution: "password-prompt@npm:1.1.3" @@ -9541,6 +9982,13 @@ __metadata: languageName: node linkType: hard +"picocolors@npm:^1.0.0": + version: 1.1.0 + resolution: "picocolors@npm:1.1.0" + checksum: 10/a2ad60d94d185c30f2a140b19c512547713fb89b920d32cc6cf658fa786d63a37ba7b8451872c3d9fc34883971fb6e5878e07a20b60506e0bb2554dce9169ccb + languageName: node + linkType: hard + "picocolors@npm:^1.0.1": version: 1.0.1 resolution: "picocolors@npm:1.0.1" @@ -9711,6 +10159,17 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^27.0.2": + version: 27.5.1 + resolution: "pretty-format@npm:27.5.1" + dependencies: + ansi-regex: "npm:^5.0.1" + ansi-styles: "npm:^5.0.0" + react-is: "npm:^17.0.1" + checksum: 10/248990cbef9e96fb36a3e1ae6b903c551ca4ddd733f8d0912b9cc5141d3d0b3f9f8dfb4d799fb1c6723382c9c2083ffbfa4ad43ff9a0e7535d32d41fd5f01da6 + languageName: node + linkType: hard + "pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": version: 29.7.0 resolution: "pretty-format@npm:29.7.0" @@ -9814,6 +10273,13 @@ __metadata: languageName: node linkType: hard +"psl@npm:^1.1.33": + version: 1.9.0 + resolution: "psl@npm:1.9.0" + checksum: 10/d07879d4bfd0ac74796306a8e5a36a93cfb9c4f4e8ee8e63fbb909066c192fe1008cd8f12abd8ba2f62ca28247949a20c8fb32e1d18831d9e71285a1569720f9 + languageName: node + linkType: hard + "pump@npm:^3.0.0": version: 3.0.0 resolution: "pump@npm:3.0.0" @@ -9824,7 +10290,7 @@ __metadata: languageName: node linkType: hard -"punycode@npm:^2.1.0": +"punycode@npm:^2.1.0, punycode@npm:^2.1.1": version: 2.3.1 resolution: "punycode@npm:2.3.1" checksum: 10/febdc4362bead22f9e2608ff0171713230b57aff9dddc1c273aa2a651fbd366f94b7d6a71d78342a7c0819906750351ca7f2edd26ea41b626d87d6a13d1bd059 @@ -9847,6 +10313,13 @@ __metadata: languageName: node linkType: hard +"querystringify@npm:^2.1.1": + version: 2.2.0 + resolution: "querystringify@npm:2.2.0" + checksum: 10/46ab16f252fd892fc29d6af60966d338cdfeea68a231e9457631ffd22d67cec1e00141e0a5236a2eb16c0d7d74175d9ec1d6f963660c6f2b1c2fc85b194c5680 + languageName: node + linkType: hard + "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" @@ -9868,6 +10341,25 @@ __metadata: languageName: node linkType: hard +"react-dom@npm:^18.3.1": + version: 18.3.1 + resolution: "react-dom@npm:18.3.1" + dependencies: + loose-envify: "npm:^1.1.0" + scheduler: "npm:^0.23.2" + peerDependencies: + react: ^18.3.1 + checksum: 10/3f4b73a3aa083091173b29812b10394dd06f4ac06aff410b74702cfb3aa29d7b0ced208aab92d5272919b612e5cda21aeb1d54191848cf6e46e9e354f3541f81 + languageName: node + linkType: hard + +"react-is@npm:^17.0.1": + version: 17.0.2 + resolution: "react-is@npm:17.0.2" + checksum: 10/73b36281e58eeb27c9cc6031301b6ae19ecdc9f18ae2d518bdb39b0ac564e65c5779405d623f1df9abf378a13858b79442480244bd579968afc1faf9a2ce5e05 + languageName: node + linkType: hard + "react-is@npm:^18.0.0": version: 18.3.1 resolution: "react-is@npm:18.3.1" @@ -10099,6 +10591,13 @@ __metadata: languageName: node linkType: hard +"requires-port@npm:^1.0.0": + version: 1.0.0 + resolution: "requires-port@npm:1.0.0" + checksum: 10/878880ee78ccdce372784f62f52a272048e2d0827c29ae31e7f99da18b62a2b9463ea03a75f277352f4697c100183debb0532371ad515a2d49d4bfe596dd4c20 + languageName: node + linkType: hard + "resolve-alpn@npm:^1.0.0": version: 1.2.1 resolution: "resolve-alpn@npm:1.2.1" @@ -10304,6 +10803,24 @@ __metadata: languageName: node linkType: hard +"saxes@npm:^6.0.0": + version: 6.0.0 + resolution: "saxes@npm:6.0.0" + dependencies: + xmlchars: "npm:^2.2.0" + checksum: 10/97b50daf6ca3a153e89842efa18a862e446248296622b7473c169c84c823ee8a16e4a43bac2f73f11fc8cb9168c73fbb0d73340f26552bac17970e9052367aa9 + languageName: node + linkType: hard + +"scheduler@npm:^0.23.2": + version: 0.23.2 + resolution: "scheduler@npm:0.23.2" + dependencies: + loose-envify: "npm:^1.1.0" + checksum: 10/e8d68b89d18d5b028223edf090092846868a765a591944760942b77ea1f69b17235f7e956696efbb62c8130ab90af7e0949bfb8eba7896335507317236966bc9 + languageName: node + linkType: hard + "semver@npm:2 || 3 || 4 || 5 || 6 || 7, semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0": version: 7.6.3 resolution: "semver@npm:7.6.3" @@ -10569,7 +11086,7 @@ __metadata: languageName: node linkType: hard -"source-map@npm:^0.6.0, source-map@npm:^0.6.1": +"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.1": version: 0.6.1 resolution: "source-map@npm:0.6.1" checksum: 10/59ef7462f1c29d502b3057e822cdbdae0b0e565302c4dd1a95e11e793d8d9d62006cdc10e0fd99163ca33ff2071360cf50ee13f90440806e7ed57d81cba2f7ff @@ -10888,6 +11405,13 @@ __metadata: languageName: node linkType: hard +"symbol-tree@npm:^3.2.4": + version: 3.2.4 + resolution: "symbol-tree@npm:3.2.4" + checksum: 10/c09a00aadf279d47d0c5c46ca3b6b2fbaeb45f0a184976d599637d412d3a70bbdc043ff33effe1206dea0e36e0ad226cb957112e7ce9a4bf2daedf7fa4f85c53 + languageName: node + linkType: hard + "synckit@npm:^0.9.1": version: 0.9.1 resolution: "synckit@npm:0.9.1" @@ -11055,6 +11579,27 @@ __metadata: languageName: node linkType: hard +"tough-cookie@npm:^4.1.2": + version: 4.1.4 + resolution: "tough-cookie@npm:4.1.4" + dependencies: + psl: "npm:^1.1.33" + punycode: "npm:^2.1.1" + universalify: "npm:^0.2.0" + url-parse: "npm:^1.5.3" + checksum: 10/75663f4e2cd085f16af0b217e4218772adf0617fb3227171102618a54ce0187a164e505d61f773ed7d65988f8ff8a8f935d381f87da981752c1171b076b4afac + languageName: node + linkType: hard + +"tr46@npm:^3.0.0": + version: 3.0.0 + resolution: "tr46@npm:3.0.0" + dependencies: + punycode: "npm:^2.1.1" + checksum: 10/b09a15886cbfaee419a3469081223489051ce9dca3374dd9500d2378adedbee84a3c73f83bfdd6bb13d53657753fc0d4e20a46bfcd3f1b9057ef528426ad7ce4 + languageName: node + linkType: hard + "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" @@ -11377,6 +11922,13 @@ __metadata: languageName: node linkType: hard +"universalify@npm:^0.2.0": + version: 0.2.0 + resolution: "universalify@npm:0.2.0" + checksum: 10/e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5 + languageName: node + linkType: hard + "universalify@npm:^2.0.0": version: 2.0.1 resolution: "universalify@npm:2.0.1" @@ -11414,6 +11966,16 @@ __metadata: languageName: node linkType: hard +"url-parse@npm:^1.5.3": + version: 1.5.10 + resolution: "url-parse@npm:1.5.10" + dependencies: + querystringify: "npm:^2.1.1" + requires-port: "npm:^1.0.0" + checksum: 10/c9e96bc8c5b34e9f05ddfeffc12f6aadecbb0d971b3cc26015b58d5b44676a99f50d5aeb1e5c9e61fa4d49961ae3ab1ae997369ed44da51b2f5ac010d188e6ad + languageName: node + linkType: hard + "util-deprecate@npm:^1.0.1, util-deprecate@npm:^1.0.2, util-deprecate@npm:~1.0.1": version: 1.0.2 resolution: "util-deprecate@npm:1.0.2" @@ -11469,6 +12031,13 @@ __metadata: languageName: node linkType: hard +"vest-utils@npm:^1.3.1": + version: 1.3.1 + resolution: "vest-utils@npm:1.3.1" + checksum: 10/32f19aabf1bdc660a5e83c86f17d5de2fc7656161443b3f2297579c17433fd4af6b25040582b3fc872307192014a9497c17c3631b4dcab1bf257d5eb8046cde4 + languageName: node + linkType: hard + "vscode-json-languageservice@npm:^4.1.6": version: 4.2.1 resolution: "vscode-json-languageservice@npm:4.2.1" @@ -11510,6 +12079,15 @@ __metadata: languageName: node linkType: hard +"w3c-xmlserializer@npm:^4.0.0": + version: 4.0.0 + resolution: "w3c-xmlserializer@npm:4.0.0" + dependencies: + xml-name-validator: "npm:^4.0.0" + checksum: 10/9a00c412b5496f4f040842c9520bc0aaec6e0c015d06412a91a723cd7d84ea605ab903965f546b4ecdb3eae267f5145ba08565222b1d6cb443ee488cda9a0aee + languageName: node + linkType: hard + "walk-up-path@npm:^3.0.1": version: 3.0.1 resolution: "walk-up-path@npm:3.0.1" @@ -11542,6 +12120,39 @@ __metadata: languageName: node linkType: hard +"webidl-conversions@npm:^7.0.0": + version: 7.0.0 + resolution: "webidl-conversions@npm:7.0.0" + checksum: 10/4c4f65472c010eddbe648c11b977d048dd96956a625f7f8b9d64e1b30c3c1f23ea1acfd654648426ce5c743c2108a5a757c0592f02902cf7367adb7d14e67721 + languageName: node + linkType: hard + +"whatwg-encoding@npm:^2.0.0": + version: 2.0.0 + resolution: "whatwg-encoding@npm:2.0.0" + dependencies: + iconv-lite: "npm:0.6.3" + checksum: 10/162d712d88fd134a4fe587e53302da812eb4215a1baa4c394dfd86eff31d0a079ff932c05233857997de07481093358d6e7587997358f49b8a580a777be22089 + languageName: node + linkType: hard + +"whatwg-mimetype@npm:^3.0.0": + version: 3.0.0 + resolution: "whatwg-mimetype@npm:3.0.0" + checksum: 10/96f9f628c663c2ae05412c185ca81b3df54bcb921ab52fe9ebc0081c1720f25d770665401eb2338ab7f48c71568133845638e18a81ed52ab5d4dcef7d22b40ef + languageName: node + linkType: hard + +"whatwg-url@npm:^11.0.0": + version: 11.0.0 + resolution: "whatwg-url@npm:11.0.0" + dependencies: + tr46: "npm:^3.0.0" + webidl-conversions: "npm:^7.0.0" + checksum: 10/dfcd51c6f4bfb54685528fb10927f3fd3d7c809b5671beef4a8cdd7b1408a7abf3343a35bc71dab83a1424f1c1e92cc2700d7930d95d231df0fac361de0c7648 + languageName: node + linkType: hard + "whatwg-url@npm:^5.0.0": version: 5.0.0 resolution: "whatwg-url@npm:5.0.0" @@ -11702,6 +12313,35 @@ __metadata: languageName: node linkType: hard +"ws@npm:^8.11.0": + version: 8.18.0 + resolution: "ws@npm:8.18.0" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ">=5.0.2" + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 10/70dfe53f23ff4368d46e4c0b1d4ca734db2c4149c6f68bc62cb16fc21f753c47b35fcc6e582f3bdfba0eaeb1c488cddab3c2255755a5c3eecb251431e42b3ff6 + languageName: node + linkType: hard + +"xml-name-validator@npm:^4.0.0": + version: 4.0.0 + resolution: "xml-name-validator@npm:4.0.0" + checksum: 10/f9582a3f281f790344a471c207516e29e293c6041b2c20d84dd6e58832cd7c19796c47e108fd4fd4b164a5e72ad94f2268f8ace8231cde4a2c6428d6aa220f92 + languageName: node + linkType: hard + +"xmlchars@npm:^2.2.0": + version: 2.2.0 + resolution: "xmlchars@npm:2.2.0" + checksum: 10/4ad5924974efd004a47cce6acf5c0269aee0e62f9a805a426db3337af7bcbd331099df174b024ace4fb18971b8a56de386d2e73a1c4b020e3abd63a4a9b917f1 + languageName: node + linkType: hard + "xtend@npm:~4.0.1": version: 4.0.2 resolution: "xtend@npm:4.0.2"