From c93bccaf9e66560989aacabee7b7efc895a1fbe4 Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Sun, 15 Dec 2024 21:48:44 -0600 Subject: [PATCH 01/16] chore: upgrade dependencies (#1777) --- package.json | 48 +- pnpm-lock.yaml | 2153 +++++++++-------- src/features/comment/inTree/Comments.tsx | 1 - .../list/ResolvedCommunitiesList.tsx | 11 +- src/helpers/virtua.tsx | 6 +- 5 files changed, 1148 insertions(+), 1071 deletions(-) diff --git a/package.json b/package.json index afb5460b5c..17fdc3a4c0 100644 --- a/package.json +++ b/package.json @@ -67,8 +67,8 @@ "@ionic/core": "npm:voyager-ionic-core@8.4.1", "@ionic/react": "8.4.1", "@ionic/react-router": "8.4.1", - "@mantine/hooks": "^7.14.3", - "@reduxjs/toolkit": "^2.4.0", + "@mantine/hooks": "^7.15.1", + "@reduxjs/toolkit": "^2.5.0", "capacitor-android-nav-mode": "^1.0.0", "capacitor-application-context": "^1.0.0", "capacitor-biometric-lock": "^1.0.0", @@ -83,8 +83,8 @@ "date-fns": "^4.1.0", "dexie": "^4.0.10", "dexie-export-import": "^4.1.4", - "es-toolkit": "^1.28.0", - "eslint-plugin-perfectionist": "^4.1.2", + "es-toolkit": "^1.30.1", + "eslint-plugin-perfectionist": "^4.3.0", "history": "^4.10.1", "immer": "^10.1.1", "ionicons": "^7.4.0", @@ -95,19 +95,19 @@ "micromark-extension-gfm-strikethrough": "^2.1.0", "micromark-extension-gfm-table": "^2.1.0", "micromark-util-combine-extensions": "^2.0.1", - "modern-screenshot": "^4.5.4", + "modern-screenshot": "^4.5.5", "photoswipe": "^5.4.4", - "react": "0.0.0-experimental-7670501b-20241124", + "react": "0.0.0-experimental-4dff0e62-20241213", "react-animate-height": "^3.2.3", - "react-dom": "0.0.0-experimental-7670501b-20241124", + "react-dom": "0.0.0-experimental-4dff0e62-20241213", "react-error-boundary": "^4.1.2", - "react-intersection-observer": "^9.13.1", + "react-intersection-observer": "^9.14.0", "react-markdown": "^9.0.1", - "react-redux": "^9.1.2", + "react-redux": "^9.2.0", "react-reverse-portal": "^2.1.2", "react-router": "^5.3.4", "react-router-dom": "^5.3.4", - "react-textarea-autosize": "^8.5.5", + "react-textarea-autosize": "^8.5.6", "react-transition-state": "^2.2.0", "rehype-highlight": "^6.0.0", "rehype-parse": "^9.0.1", @@ -119,44 +119,44 @@ "unified": "^11.0.5", "unist-util-visit": "^5.0.0", "use-long-press": "^3.2.0", - "virtua": "^0.38.1" + "virtua": "^0.39.2" }, "devDependencies": { "@capacitor/cli": "^6.2.0", - "@eslint/js": "^9.16.0", + "@eslint/js": "^9.17.0", "@ionic/cli": "^7.2.0", - "@playwright/test": "^1.49.0", + "@playwright/test": "^1.49.1", "@trapezedev/configure": "^7.1.3", "@types/history": "^4.7.11", "@types/mdast": "^4.0.4", - "@types/node": "^22.10.1", - "@types/react": "^18.3.12", - "@types/react-dom": "^18.3.1", + "@types/node": "^22.10.2", + "@types/react": "^18.3.16", + "@types/react-dom": "^18.3.5", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3", "@types/ua-parser-js": "^0.7.39", "@vitejs/plugin-legacy": "^6.0.0", "@vitejs/plugin-react": "^4.3.4", "autoprefixer": "^10.4.20", - "babel-plugin-react-compiler": "0.0.0-experimental-df7b47d-20241124", - "eslint": "^9.16.0", + "babel-plugin-react-compiler": "0.0.0-experimental-ba7b8e5-20241213", + "eslint": "^9.17.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-react": "^7.37.2", - "eslint-plugin-react-compiler": "0.0.0-experimental-df7b47d-20241124", - "eslint-plugin-react-hooks": "0.0.0-experimental-7670501b-20241124", + "eslint-plugin-react-compiler": "0.0.0-experimental-ba7b8e5-20241213", + "eslint-plugin-react-hooks": "0.0.0-experimental-4dff0e62-20241213", "eslint-plugin-vitest": "^0.5.4", "jsdom": "^25.0.1", "mdast-util-lemmy-spoiler": "^2.0.0", "postcss": "^8.4.49", - "prettier": "^3.4.1", + "prettier": "^3.4.2", "pwa-asset-generator": "^6.4.0", "release-it": "^17.10.0", "typed-css-modules": "^0.9.1", "typescript": "^5.7.2", - "typescript-eslint": "^8.16.0", - "vite": "^6.0.1", + "typescript-eslint": "^8.18.0", + "vite": "^6.0.3", "vite-plugin-pwa": "^0.21.1", "vite-plugin-svgr": "^4.3.0", - "vitest": "^2.1.6" + "vitest": "3.0.0-beta.2" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9f2a3f6f28..f400a4c470 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -69,16 +69,16 @@ importers: version: voyager-ionic-core@8.4.1 '@ionic/react': specifier: 8.4.1 - version: 8.4.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + version: 8.4.1(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) '@ionic/react-router': specifier: 8.4.1 - version: 8.4.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react-router-dom@5.3.4(react@0.0.0-experimental-7670501b-20241124))(react-router@5.3.4(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + version: 8.4.1(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react-router-dom@5.3.4(react@0.0.0-experimental-4dff0e62-20241213))(react-router@5.3.4(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) '@mantine/hooks': - specifier: ^7.14.3 - version: 7.14.3(react@0.0.0-experimental-7670501b-20241124) + specifier: ^7.15.1 + version: 7.15.1(react@0.0.0-experimental-4dff0e62-20241213) '@reduxjs/toolkit': - specifier: ^2.4.0 - version: 2.4.0(react-redux@9.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124)(redux@5.0.1))(react@0.0.0-experimental-7670501b-20241124) + specifier: ^2.5.0 + version: 2.5.0(react-redux@9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1))(react@0.0.0-experimental-4dff0e62-20241213) capacitor-android-nav-mode: specifier: ^1.0.0 version: 1.0.0(@capacitor/core@6.2.0) @@ -122,11 +122,11 @@ importers: specifier: ^4.1.4 version: 4.1.4(dexie@4.0.10) es-toolkit: - specifier: ^1.28.0 - version: 1.28.0 + specifier: ^1.30.1 + version: 1.30.1 eslint-plugin-perfectionist: - specifier: ^4.1.2 - version: 4.1.2(eslint@9.16.0)(typescript@5.7.2) + specifier: ^4.3.0 + version: 4.3.0(eslint@9.17.0)(typescript@5.7.2) history: specifier: ^4.10.1 version: 4.10.1 @@ -158,47 +158,47 @@ importers: specifier: ^2.0.1 version: 2.0.1 modern-screenshot: - specifier: ^4.5.4 - version: 4.5.4 + specifier: ^4.5.5 + version: 4.5.5 photoswipe: specifier: ^5.4.4 version: 5.4.4 react: - specifier: 0.0.0-experimental-7670501b-20241124 - version: 0.0.0-experimental-7670501b-20241124 + specifier: 0.0.0-experimental-4dff0e62-20241213 + version: 0.0.0-experimental-4dff0e62-20241213 react-animate-height: specifier: ^3.2.3 - version: 3.2.3(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + version: 3.2.3(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) react-dom: - specifier: 0.0.0-experimental-7670501b-20241124 - version: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + specifier: 0.0.0-experimental-4dff0e62-20241213 + version: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) react-error-boundary: specifier: ^4.1.2 - version: 4.1.2(react@0.0.0-experimental-7670501b-20241124) + version: 4.1.2(react@0.0.0-experimental-4dff0e62-20241213) react-intersection-observer: - specifier: ^9.13.1 - version: 9.13.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + specifier: ^9.14.0 + version: 9.14.0(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) react-markdown: specifier: ^9.0.1 - version: 9.0.1(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124) + version: 9.0.1(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213) react-redux: - specifier: ^9.1.2 - version: 9.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124)(redux@5.0.1) + specifier: ^9.2.0 + version: 9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1) react-reverse-portal: specifier: ^2.1.2 - version: 2.1.2(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + version: 2.1.2(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) react-router: specifier: ^5.3.4 - version: 5.3.4(react@0.0.0-experimental-7670501b-20241124) + version: 5.3.4(react@0.0.0-experimental-4dff0e62-20241213) react-router-dom: specifier: ^5.3.4 - version: 5.3.4(react@0.0.0-experimental-7670501b-20241124) + version: 5.3.4(react@0.0.0-experimental-4dff0e62-20241213) react-textarea-autosize: - specifier: ^8.5.5 - version: 8.5.5(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124) + specifier: ^8.5.6 + version: 8.5.6(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213) react-transition-state: specifier: ^2.2.0 - version: 2.2.0(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + version: 2.2.0(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) rehype-highlight: specifier: ^6.0.0 version: 6.0.0 @@ -228,26 +228,26 @@ importers: version: 5.0.0 use-long-press: specifier: ^3.2.0 - version: 3.2.0(react@0.0.0-experimental-7670501b-20241124) + version: 3.2.0(react@0.0.0-experimental-4dff0e62-20241213) virtua: - specifier: ^0.38.1 - version: 0.38.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) + specifier: ^0.39.2 + version: 0.39.2(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) devDependencies: '@capacitor/cli': specifier: ^6.2.0 version: 6.2.0 '@eslint/js': - specifier: ^9.16.0 - version: 9.16.0 + specifier: ^9.17.0 + version: 9.17.0 '@ionic/cli': specifier: ^7.2.0 version: 7.2.0 '@playwright/test': - specifier: ^1.49.0 - version: 1.49.0 + specifier: ^1.49.1 + version: 1.49.1 '@trapezedev/configure': specifier: ^7.1.3 - version: 7.1.3(@types/node@22.10.1)(typescript@5.7.2) + version: 7.1.3(@types/node@22.10.2)(typescript@5.7.2) '@types/history': specifier: ^4.7.11 version: 4.7.11 @@ -255,14 +255,14 @@ importers: specifier: ^4.0.4 version: 4.0.4 '@types/node': - specifier: ^22.10.1 - version: 22.10.1 + specifier: ^22.10.2 + version: 22.10.2 '@types/react': - specifier: ^18.3.12 - version: 18.3.12 + specifier: ^18.3.16 + version: 18.3.16 '@types/react-dom': - specifier: ^18.3.1 - version: 18.3.1 + specifier: ^18.3.5 + version: 18.3.5(@types/react@18.3.16) '@types/react-router': specifier: ^5.1.20 version: 5.1.20 @@ -274,34 +274,34 @@ importers: version: 0.7.39 '@vitejs/plugin-legacy': specifier: ^6.0.0 - version: 6.0.0(terser@5.36.0)(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) + version: 6.0.0(terser@5.36.0)(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) '@vitejs/plugin-react': specifier: ^4.3.4 - version: 4.3.4(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) + version: 4.3.4(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) autoprefixer: specifier: ^10.4.20 version: 10.4.20(postcss@8.4.49) babel-plugin-react-compiler: - specifier: 0.0.0-experimental-df7b47d-20241124 - version: 0.0.0-experimental-df7b47d-20241124 + specifier: 0.0.0-experimental-ba7b8e5-20241213 + version: 0.0.0-experimental-ba7b8e5-20241213 eslint: - specifier: ^9.16.0 - version: 9.16.0 + specifier: ^9.17.0 + version: 9.17.0 eslint-config-prettier: specifier: ^9.1.0 - version: 9.1.0(eslint@9.16.0) + version: 9.1.0(eslint@9.17.0) eslint-plugin-react: specifier: ^7.37.2 - version: 7.37.2(eslint@9.16.0) + version: 7.37.2(eslint@9.17.0) eslint-plugin-react-compiler: - specifier: 0.0.0-experimental-df7b47d-20241124 - version: 0.0.0-experimental-df7b47d-20241124(eslint@9.16.0) + specifier: 0.0.0-experimental-ba7b8e5-20241213 + version: 0.0.0-experimental-ba7b8e5-20241213(eslint@9.17.0) eslint-plugin-react-hooks: - specifier: 0.0.0-experimental-7670501b-20241124 - version: 0.0.0-experimental-7670501b-20241124(eslint@9.16.0) + specifier: 0.0.0-experimental-4dff0e62-20241213 + version: 0.0.0-experimental-4dff0e62-20241213(eslint@9.17.0) eslint-plugin-vitest: specifier: ^0.5.4 - version: 0.5.4(eslint@9.16.0)(typescript@5.7.2)(vitest@2.1.6(@types/node@22.10.1)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) + version: 0.5.4(eslint@9.17.0)(typescript@5.7.2)(vitest@3.0.0-beta.2(@types/node@22.10.2)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) jsdom: specifier: ^25.0.1 version: 25.0.1 @@ -312,8 +312,8 @@ importers: specifier: ^8.4.49 version: 8.4.49 prettier: - specifier: ^3.4.1 - version: 3.4.1 + specifier: ^3.4.2 + version: 3.4.2 pwa-asset-generator: specifier: ^6.4.0 version: 6.4.0 @@ -327,20 +327,20 @@ importers: specifier: ^5.7.2 version: 5.7.2 typescript-eslint: - specifier: ^8.16.0 - version: 8.16.0(eslint@9.16.0)(typescript@5.7.2) + specifier: ^8.18.0 + version: 8.18.0(eslint@9.17.0)(typescript@5.7.2) vite: - specifier: ^6.0.1 - version: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + specifier: ^6.0.3 + version: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) vite-plugin-pwa: specifier: ^0.21.1 - version: 0.21.1(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.3.0) + version: 0.21.1(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.3.0) vite-plugin-svgr: specifier: ^4.3.0 - version: 4.3.0(rollup@2.79.2)(typescript@5.7.2)(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) + version: 4.3.0(rollup@2.79.2)(typescript@5.7.2)(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) vitest: - specifier: ^2.1.6 - version: 2.1.6(@types/node@22.10.1)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + specifier: 3.0.0-beta.2 + version: 3.0.0-beta.2(@types/node@22.10.2)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) packages: @@ -364,26 +364,22 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.2': - resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} + '@babel/compat-data@7.26.3': + resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==} engines: {node: '>=6.9.0'} '@babel/core@7.26.0': resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.26.2': - resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} + '@babel/generator@7.26.3': + resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.25.9': resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.25.9': - resolution: {integrity: sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==} - engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.9': resolution: {integrity: sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==} engines: {node: '>=6.9.0'} @@ -394,8 +390,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.25.9': - resolution: {integrity: sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw==} + '@babel/helper-create-regexp-features-plugin@7.26.3': + resolution: {integrity: sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -439,10 +435,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.25.9': - resolution: {integrity: sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q==} - engines: {node: '>=6.9.0'} - '@babel/helper-skip-transparent-expression-wrappers@7.25.9': resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} @@ -467,8 +459,8 @@ packages: resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.2': - resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} + '@babel/parser@7.26.3': + resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} engines: {node: '>=6.0.0'} hasBin: true @@ -502,6 +494,13 @@ packages: peerDependencies: '@babel/core': ^7.0.0 + '@babel/plugin-proposal-private-methods@7.18.6': + resolution: {integrity: sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} @@ -610,8 +609,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.25.9': - resolution: {integrity: sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA==} + '@babel/plugin-transform-exponentiation-operator@7.26.3': + resolution: {integrity: sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -664,8 +663,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.25.9': - resolution: {integrity: sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg==} + '@babel/plugin-transform-modules-commonjs@7.26.3': + resolution: {integrity: sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -865,12 +864,12 @@ packages: resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.9': - resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} + '@babel/traverse@7.26.4': + resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.0': - resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} '@capacitor-community/app-icon@5.0.0': @@ -1094,28 +1093,28 @@ packages: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.19.0': - resolution: {integrity: sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==} + '@eslint/config-array@0.19.1': + resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.9.0': - resolution: {integrity: sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==} + '@eslint/core@0.9.1': + resolution: {integrity: sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.2.0': resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.16.0': - resolution: {integrity: sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==} + '@eslint/js@9.17.0': + resolution: {integrity: sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@2.1.4': - resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + '@eslint/object-schema@2.1.5': + resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.2.3': - resolution: {integrity: sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==} + '@eslint/plugin-kit@0.2.4': + resolution: {integrity: sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@github/markdown-toolbar-element@2.2.3': @@ -1263,8 +1262,8 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} '@jridgewell/resolve-uri@3.1.2': @@ -1287,8 +1286,8 @@ packages: '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - '@mantine/hooks@7.14.3': - resolution: {integrity: sha512-cU3R9b8GLs6aCvpsVC56ZOOJCUIoDqX3RcLWkcfpA5a47LjWa/rzegP4YWfNW6/E9vodPJT4AEbYXVffYlyNwA==} + '@mantine/hooks@7.15.1': + resolution: {integrity: sha512-jrpjA5JhVSgUi0expfZpvNplMgvwdvrCIcKiDjQ16p/KiWngvTVfmJMtBOVxQ6hWrn500nLmZIDEcTmV9Dvb7g==} peerDependencies: react: ^18.x || ^19.x @@ -1445,8 +1444,8 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} - '@playwright/test@1.49.0': - resolution: {integrity: sha512-DMulbwQURa8rNIQrf94+jPJQ4FmOVdpE5ZppRNvWVjvhC+6sOeo28r8MgIpQRYouXRtt/FCCXU7zn20jnHR4Qw==} + '@playwright/test@1.49.1': + resolution: {integrity: sha512-Ky+BVzPz8pL6PQxHqNRW1k3mIyv933LML7HktS8uik0bUXNCdPhoS/kLihiO1tMf/egaJb4IutXd7UywvXEW+g==} engines: {node: '>=18'} hasBin: true @@ -1468,10 +1467,10 @@ packages: '@prettier/plugin-xml@2.2.0': resolution: {integrity: sha512-UWRmygBsyj4bVXvDiqSccwT1kmsorcwQwaIy30yVh8T+Gspx4OlC0shX1y+ZuwXZvgnafmpRYKks0bAu9urJew==} - '@reduxjs/toolkit@2.4.0': - resolution: {integrity: sha512-wJZEuSKj14tvNfxiIiJws0tQN77/rDqucBq528ApebMIRHyWpCanJVQRxQ8WWZC19iCDKxDsGlbAir3F1layxA==} + '@reduxjs/toolkit@2.5.0': + resolution: {integrity: sha512-awNe2oTodsZ6LmRqmkFhtb/KH03hUhxOamEQy411m3Njj3BbFvoBovxo4Q1cBWnV1ErprVj9MlF0UPXkng0eyg==} peerDependencies: - react: ^16.9.0 || ^17.0.0 || ^18 + react: ^16.9.0 || ^17.0.0 || ^18 || ^19 react-redux: ^7.2.1 || ^8.1.3 || ^9.0.0 peerDependenciesMeta: react: @@ -1490,8 +1489,8 @@ packages: '@types/babel__core': optional: true - '@rollup/plugin-node-resolve@15.3.0': - resolution: {integrity: sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==} + '@rollup/plugin-node-resolve@15.3.1': + resolution: {integrity: sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.78.0||^3.0.0||^4.0.0 @@ -1519,8 +1518,8 @@ packages: peerDependencies: rollup: ^1.20.0||^2.0.0 - '@rollup/pluginutils@5.1.3': - resolution: {integrity: sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==} + '@rollup/pluginutils@5.1.4': + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -1528,93 +1527,98 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.28.0': - resolution: {integrity: sha512-wLJuPLT6grGZsy34g4N1yRfYeouklTgPhH1gWXCYspenKYD0s3cR99ZevOGw5BexMNywkbV3UkjADisozBmpPQ==} + '@rollup/rollup-android-arm-eabi@4.28.1': + resolution: {integrity: sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.28.0': - resolution: {integrity: sha512-eiNkznlo0dLmVG/6wf+Ifi/v78G4d4QxRhuUl+s8EWZpDewgk7PX3ZyECUXU0Zq/Ca+8nU8cQpNC4Xgn2gFNDA==} + '@rollup/rollup-android-arm64@4.28.1': + resolution: {integrity: sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.28.0': - resolution: {integrity: sha512-lmKx9yHsppblnLQZOGxdO66gT77bvdBtr/0P+TPOseowE7D9AJoBw8ZDULRasXRWf1Z86/gcOdpBrV6VDUY36Q==} + '@rollup/rollup-darwin-arm64@4.28.1': + resolution: {integrity: sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.28.0': - resolution: {integrity: sha512-8hxgfReVs7k9Js1uAIhS6zq3I+wKQETInnWQtgzt8JfGx51R1N6DRVy3F4o0lQwumbErRz52YqwjfvuwRxGv1w==} + '@rollup/rollup-darwin-x64@4.28.1': + resolution: {integrity: sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.28.0': - resolution: {integrity: sha512-lA1zZB3bFx5oxu9fYud4+g1mt+lYXCoch0M0V/xhqLoGatbzVse0wlSQ1UYOWKpuSu3gyN4qEc0Dxf/DII1bhQ==} + '@rollup/rollup-freebsd-arm64@4.28.1': + resolution: {integrity: sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.28.0': - resolution: {integrity: sha512-aI2plavbUDjCQB/sRbeUZWX9qp12GfYkYSJOrdYTL/C5D53bsE2/nBPuoiJKoWp5SN78v2Vr8ZPnB+/VbQ2pFA==} + '@rollup/rollup-freebsd-x64@4.28.1': + resolution: {integrity: sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.28.0': - resolution: {integrity: sha512-WXveUPKtfqtaNvpf0iOb0M6xC64GzUX/OowbqfiCSXTdi/jLlOmH0Ba94/OkiY2yTGTwteo4/dsHRfh5bDCZ+w==} + '@rollup/rollup-linux-arm-gnueabihf@4.28.1': + resolution: {integrity: sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.28.0': - resolution: {integrity: sha512-yLc3O2NtOQR67lI79zsSc7lk31xjwcaocvdD1twL64PK1yNaIqCeWI9L5B4MFPAVGEVjH5k1oWSGuYX1Wutxpg==} + '@rollup/rollup-linux-arm-musleabihf@4.28.1': + resolution: {integrity: sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.28.0': - resolution: {integrity: sha512-+P9G9hjEpHucHRXqesY+3X9hD2wh0iNnJXX/QhS/J5vTdG6VhNYMxJ2rJkQOxRUd17u5mbMLHM7yWGZdAASfcg==} + '@rollup/rollup-linux-arm64-gnu@4.28.1': + resolution: {integrity: sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.28.0': - resolution: {integrity: sha512-1xsm2rCKSTpKzi5/ypT5wfc+4bOGa/9yI/eaOLW0oMs7qpC542APWhl4A37AENGZ6St6GBMWhCCMM6tXgTIplw==} + '@rollup/rollup-linux-arm64-musl@4.28.1': + resolution: {integrity: sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.28.0': - resolution: {integrity: sha512-zgWxMq8neVQeXL+ouSf6S7DoNeo6EPgi1eeqHXVKQxqPy1B2NvTbaOUWPn/7CfMKL7xvhV0/+fq/Z/J69g1WAQ==} + '@rollup/rollup-linux-loongarch64-gnu@4.28.1': + resolution: {integrity: sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': + resolution: {integrity: sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.28.0': - resolution: {integrity: sha512-VEdVYacLniRxbRJLNtzwGt5vwS0ycYshofI7cWAfj7Vg5asqj+pt+Q6x4n+AONSZW/kVm+5nklde0qs2EUwU2g==} + '@rollup/rollup-linux-riscv64-gnu@4.28.1': + resolution: {integrity: sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.28.0': - resolution: {integrity: sha512-LQlP5t2hcDJh8HV8RELD9/xlYtEzJkm/aWGsauvdO2ulfl3QYRjqrKW+mGAIWP5kdNCBheqqqYIGElSRCaXfpw==} + '@rollup/rollup-linux-s390x-gnu@4.28.1': + resolution: {integrity: sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.28.0': - resolution: {integrity: sha512-Nl4KIzteVEKE9BdAvYoTkW19pa7LR/RBrT6F1dJCV/3pbjwDcaOq+edkP0LXuJ9kflW/xOK414X78r+K84+msw==} + '@rollup/rollup-linux-x64-gnu@4.28.1': + resolution: {integrity: sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.28.0': - resolution: {integrity: sha512-eKpJr4vBDOi4goT75MvW+0dXcNUqisK4jvibY9vDdlgLx+yekxSm55StsHbxUsRxSTt3JEQvlr3cGDkzcSP8bw==} + '@rollup/rollup-linux-x64-musl@4.28.1': + resolution: {integrity: sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.28.0': - resolution: {integrity: sha512-Vi+WR62xWGsE/Oj+mD0FNAPY2MEox3cfyG0zLpotZdehPFXwz6lypkGs5y38Jd/NVSbOD02aVad6q6QYF7i8Bg==} + '@rollup/rollup-win32-arm64-msvc@4.28.1': + resolution: {integrity: sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.28.0': - resolution: {integrity: sha512-kN/Vpip8emMLn/eOza+4JwqDZBL6MPNpkdaEsgUtW1NYN3DZvZqSQrbKzJcTL6hd8YNmFTn7XGWMwccOcJBL0A==} + '@rollup/rollup-win32-ia32-msvc@4.28.1': + resolution: {integrity: sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.28.0': - resolution: {integrity: sha512-Bvno2/aZT6usSa7lRDL2+hMjVAGjuqaymF1ApZm31JXzniR/hvr14jpU+/z4X6Gt5BPlzosscyJZGUvguXIqeQ==} + '@rollup/rollup-win32-x64-msvc@4.28.1': + resolution: {integrity: sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==} cpu: [x64] os: [win32] @@ -1627,8 +1631,8 @@ packages: engines: {node: '>=16.0.0', npm: '>=7.10.0'} hasBin: true - '@stencil/core@4.22.3': - resolution: {integrity: sha512-dYaletX938WgEA2oMROLdh8wpUn1MgBx2zg5kYqwuUR8aua4Gy9EqGQ3zBu1AvL5MzLlZC+lMlxe/g5Dg1ldpw==} + '@stencil/core@4.23.0': + resolution: {integrity: sha512-9vI8ywhoqlaDEmrcntejrZ9X76Tddv2JyWakjVpqJAdDNXgf520sYkyjzGT0p8VJfPtSaKm6pMtl5sAH1r9cFg==} engines: {node: '>=16.0.0', npm: '>=7.10.0'} hasBin: true @@ -1785,8 +1789,8 @@ packages: '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} - '@types/node@22.10.1': - resolution: {integrity: sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ==} + '@types/node@22.10.2': + resolution: {integrity: sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -1797,11 +1801,13 @@ packages: '@types/prompts@2.4.9': resolution: {integrity: sha512-qTxFi6Buiu8+50/+3DGIWLHM6QuWsEKugJnnP6iv2Mc4ncxE4A/OJkjuVOA+5X0X1S/nq5VJRa8Lu+nwcvbrKA==} - '@types/prop-types@15.7.13': - resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} + '@types/prop-types@15.7.14': + resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} - '@types/react-dom@18.3.1': - resolution: {integrity: sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==} + '@types/react-dom@18.3.5': + resolution: {integrity: sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==} + peerDependencies: + '@types/react': ^18.0.0 '@types/react-router-dom@5.3.3': resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} @@ -1809,8 +1815,8 @@ packages: '@types/react-router@5.1.20': resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} - '@types/react@18.3.12': - resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + '@types/react@18.3.16': + resolution: {integrity: sha512-oh8AMIC4Y2ciKufU8hnKgs+ufgbA/dhPTACaZPM86AbwX9QwnFtSoPWEeRUj8fge+v6kFt78BXcDhAU1SrrAsw==} '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} @@ -1836,57 +1842,48 @@ packages: '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - '@types/use-sync-external-store@0.0.3': - resolution: {integrity: sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==} + '@types/use-sync-external-store@0.0.6': + resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} - '@typescript-eslint/eslint-plugin@8.16.0': - resolution: {integrity: sha512-5YTHKV8MYlyMI6BaEG7crQ9BhSc8RxzshOReKwZwRWN0+XvvTOm+L/UYLCYxFpfwYuAAqhxiq4yae0CMFwbL7Q==} + '@typescript-eslint/eslint-plugin@8.18.0': + resolution: {integrity: sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/parser@8.16.0': - resolution: {integrity: sha512-D7DbgGFtsqIPIFMPJwCad9Gfi/hC0PWErRRHFnaCWoEDYi5tQUDiJCTmGUbBiLzjqAck4KcXt9Ayj0CNlIrF+w==} + '@typescript-eslint/parser@8.18.0': + resolution: {integrity: sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/scope-manager@7.18.0': resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/scope-manager@8.16.0': - resolution: {integrity: sha512-mwsZWubQvBki2t5565uxF0EYvG+FwdFb8bMtDuGQLdCCnGPrDEDvm1gtfynuKlnpzeBRqdFCkMf9jg1fnAK8sg==} + '@typescript-eslint/scope-manager@8.18.0': + resolution: {integrity: sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.16.0': - resolution: {integrity: sha512-IqZHGG+g1XCWX9NyqnI/0CX5LL8/18awQqmkZSl2ynn8F76j579dByc0jhfVSnSnhf7zv76mKBQv9HQFKvDCgg==} + '@typescript-eslint/type-utils@8.18.0': + resolution: {integrity: sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/types@7.18.0': resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@8.16.0': - resolution: {integrity: sha512-NzrHj6thBAOSE4d9bsuRNMvk+BvaQvmY4dDglgkgGC0EW/tB3Kelnp3tAKH87GEwzoxgeQn9fNGRyFJM/xd+GQ==} + '@typescript-eslint/types@8.18.0': + resolution: {integrity: sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@7.18.0': @@ -1898,14 +1895,11 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.16.0': - resolution: {integrity: sha512-E2+9IzzXMc1iaBy9zmo+UYvluE3TW7bCGWSF41hVWUE01o8nzr1rvOQYSxelxr6StUvRcTMe633eY8mXASMaNw==} + '@typescript-eslint/typescript-estree@8.18.0': + resolution: {integrity: sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/utils@7.18.0': resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} @@ -1913,26 +1907,23 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/utils@8.16.0': - resolution: {integrity: sha512-C1zRy/mOL8Pj157GiX4kaw7iyRLKfJXBR3L82hk5kS/GyHcOFmy4YUq/zfZti72I9wnuQtA/+xzft4wCC8PJdA==} + '@typescript-eslint/utils@8.18.0': + resolution: {integrity: sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/visitor-keys@7.18.0': resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@8.16.0': - resolution: {integrity: sha512-pq19gbaMOmFE3CbL0ZB8J8BFCo2ckfHBfaIsaOZgBIF4EoISJIdLX5xRhd0FGB0LlHReNRuzoJoMGpTjq8F2CQ==} + '@typescript-eslint/visitor-keys@8.18.0': + resolution: {integrity: sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + '@ungap/structured-clone@1.2.1': + resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} '@vitejs/plugin-legacy@6.0.0': resolution: {integrity: sha512-pWt9cWaGJAKYw+67VLpN8hSP+G+yAQnrf5Pqh/NzSDKFl/4KpxTtwb5OLQezHoZOxghahO/ha3IpvblBbX/t6A==} @@ -1947,34 +1938,34 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - '@vitest/expect@2.1.6': - resolution: {integrity: sha512-9M1UR9CAmrhJOMoSwVnPh2rELPKhYo0m/CSgqw9PyStpxtkwhmdM6XYlXGKeYyERY1N6EIuzkQ7e3Lm1WKCoUg==} + '@vitest/expect@3.0.0-beta.2': + resolution: {integrity: sha512-xdywwsqHOTZ66dBr8sQ+l3c0ZQs/wQY48fBRgLDrUqTU8OlDir6H1JMIOeV+Jb85Ov1XBGXBrSVlPDIo/fN5EQ==} - '@vitest/mocker@2.1.6': - resolution: {integrity: sha512-MHZp2Z+Q/A3am5oD4WSH04f9B0T7UvwEb+v5W0kCYMhtXGYbdyl2NUk1wdSMqGthmhpiThPDp/hEoVwu16+u1A==} + '@vitest/mocker@3.0.0-beta.2': + resolution: {integrity: sha512-rSYrjKX8RwiKLw9MoZ8FDjos90C//AVphNVVYsv8QJn6brSkJLAOTFjTn13E8mF8kh3Bx8NKNgyDrx48ioJFXQ==} peerDependencies: msw: ^2.4.9 - vite: ^5.0.0 || ^6.0.0 + vite: ^5.0.0 peerDependenciesMeta: msw: optional: true vite: optional: true - '@vitest/pretty-format@2.1.6': - resolution: {integrity: sha512-exZyLcEnHgDMKc54TtHca4McV4sKT+NKAe9ix/yhd/qkYb/TP8HTyXRFDijV19qKqTZM0hPL4753zU/U8L/gAA==} + '@vitest/pretty-format@3.0.0-beta.2': + resolution: {integrity: sha512-vMCmIdShOz2vjMCyxk+SoexZxsIbwrRc/weTctKxnQAYv3NubehpwCOaT8nhirmYQtdW+8r079wz1s7cKxNmCA==} - '@vitest/runner@2.1.6': - resolution: {integrity: sha512-SjkRGSFyrA82m5nz7To4CkRSEVWn/rwQISHoia/DB8c6IHIhaE/UNAo+7UfeaeJRE979XceGl00LNkIz09RFsA==} + '@vitest/runner@3.0.0-beta.2': + resolution: {integrity: sha512-Ytyub2tBCGrROrGfVlB8SuWdQjFYzJTTR969CGJF/xkIgdkLE9SiQzBZy4td2VidypntLXAVHYjeGr75pvw93w==} - '@vitest/snapshot@2.1.6': - resolution: {integrity: sha512-5JTWHw8iS9l3v4/VSuthCndw1lN/hpPB+mlgn1BUhFbobeIUj1J1V/Bj2t2ovGEmkXLTckFjQddsxS5T6LuVWw==} + '@vitest/snapshot@3.0.0-beta.2': + resolution: {integrity: sha512-6INaNxXyYBmFGHhjmSyoz+/P3F+e6sHZPXLYt2OAa6Zt1v1O91FoGUTwdNHj2ASxMQeVpK/7snxNaeyr2INVOg==} - '@vitest/spy@2.1.6': - resolution: {integrity: sha512-oTFObV8bd4SDdRka5O+mSh5w9irgx5IetrD5i+OsUUsk/shsBoHifwCzy45SAORzAhtNiprUVaK3hSCCzZh1jQ==} + '@vitest/spy@3.0.0-beta.2': + resolution: {integrity: sha512-tSxQfS/wDWRtyx/a3smGuQr/YFaZk1iUsPbKkEvd6jIsrWBb747MSpdn9xfLgIhI68tXquCzruXiMQG0kHdILA==} - '@vitest/utils@2.1.6': - resolution: {integrity: sha512-ixNkFy3k4vokOUTU2blIUvOgKq/N2PW8vKIjZZYsGJCMX69MRa9J2sKqX5hY/k5O5Gty3YJChepkqZ3KM9LyIQ==} + '@vitest/utils@3.0.0-beta.2': + resolution: {integrity: sha512-Jkib9LoI9Xm3gmzwI+9KgEAJVZNgJQFrR1RAyqBN7k9O3qezOTUjqyYBnvyz3UcPywygP1jEjZWBxUKx4ELpxw==} '@xml-tools/parser@1.0.11': resolution: {integrity: sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==} @@ -2017,8 +2008,8 @@ packages: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} - agent-base@7.1.1: - resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} + agent-base@7.1.3: + resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} engines: {node: '>= 14'} aggregate-error@3.1.0: @@ -2091,20 +2082,20 @@ packages: resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} engines: {node: '>= 0.4'} - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} engines: {node: '>= 0.4'} - array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} engines: {node: '>= 0.4'} array.prototype.tosorted@1.1.4: resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.3: - resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} arrify@1.0.1: @@ -2168,8 +2159,8 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-react-compiler@0.0.0-experimental-df7b47d-20241124: - resolution: {integrity: sha512-N/8wJ9kQgQcudapIj6C+M4trt2OaK7w8yJHL0BRYp31z8VG3sRTQsyOnzG/tNQbviG35TfMSDwrMQUOLJlnIVA==} + babel-plugin-react-compiler@0.0.0-experimental-ba7b8e5-20241213: + resolution: {integrity: sha512-rlikcZmXljMAKb64j2W3+UuWpxOpyPPUW768fXA8f3QksCoaRdYMUnKnAEjETJ4AAIJQAUOLzbhuPmmvQVyyKA==} bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} @@ -2233,8 +2224,8 @@ packages: peerDependencies: browserslist: '*' - browserslist@4.24.2: - resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==} + browserslist@4.24.3: + resolution: {integrity: sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true @@ -2255,8 +2246,16 @@ packages: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} - call-bind@1.0.7: - resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} + call-bind-apply-helpers@1.0.1: + resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.3: + resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} engines: {node: '>= 0.4'} callsites@3.1.0: @@ -2279,8 +2278,8 @@ packages: resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} engines: {node: '>=16'} - caniuse-lite@1.0.30001684: - resolution: {integrity: sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==} + caniuse-lite@1.0.30001688: + resolution: {integrity: sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==} capacitor-android-nav-mode@1.0.0: resolution: {integrity: sha512-Z7tdvC7NHDBqTnVwpuMYJTrSSWu7yLdNb0VHZjb76iwIzQ4wTNAigx7wC5fXx2S1GiN9vGT1Duby7fRmHq1mLg==} @@ -2688,8 +2687,8 @@ packages: supports-color: optional: true - debug@4.3.7: - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -2841,6 +2840,10 @@ packages: resolution: {integrity: sha512-1gxPBJpI/pcjQhKgIU91II6Wkay+dLcN3M6rf2uwP8hRur3HtQXjVrdAK3sjC0piaEuxzMwjXChcETiJl47lAQ==} engines: {node: '>=18'} + dunder-proto@1.0.0: + resolution: {integrity: sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==} + engines: {node: '>= 0.4'} + duplexer2@0.1.4: resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} @@ -2857,8 +2860,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.67: - resolution: {integrity: sha512-nz88NNBsD7kQSAGGJyp8hS6xSPtWwqNogA0mjtc2nUYeEf3nURK9qpV18TuBdDmEDgVWotS8Wkzf+V52dSQ/LQ==} + electron-to-chromium@1.5.73: + resolution: {integrity: sha512-8wGNxG9tAG5KhGd3eeA0o6ixhiNdgr0DcHWm85XPCphwZgD1lIEoi6t3VERayWao7SF7AAZTw6oARGJeVjH8Kg==} elementtree@0.1.7: resolution: {integrity: sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==} @@ -2899,8 +2902,8 @@ packages: resolution: {integrity: sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==} engines: {node: '>= 0.4'} - es-define-property@1.0.0: - resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} engines: {node: '>= 0.4'} es-errors@1.3.0: @@ -2929,8 +2932,8 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} - es-toolkit@1.28.0: - resolution: {integrity: sha512-CxyuOl9b2CoaOOR+J8mrEIbWlD5NuDQ8IFh+mcS5jBecPfyYTz7dY1mPk7qaIEY+lauiRtrUs7yHfzLKw8AFNA==} + es-toolkit@1.30.1: + resolution: {integrity: sha512-ZXflqanzH8BpHkDhFa10bBf6ONDCe84EPUm7SSICGzuuROSluT2ynTPtwn9PcRelMtorCRozSknI/U0MNYp0Uw==} esbuild@0.24.0: resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} @@ -2968,20 +2971,20 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-plugin-perfectionist@4.1.2: - resolution: {integrity: sha512-YjXPWB/rKe/gPUsyuxw75wTUrzN5MuJnRV0PH9NoonFvgcdVIXk551mkBKPr59nRZCbu7S3dFHwfo4gA42DB2w==} + eslint-plugin-perfectionist@4.3.0: + resolution: {integrity: sha512-8tQ/wn1dFelul2WoXL/NQOEwvWO8H4Vjmsqpt3fDQrfgybr8kQ5Vgb9BQyVRB33ywQqjUApsiwi5Ci7grMPPRA==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: eslint: '>=8.0.0' - eslint-plugin-react-compiler@0.0.0-experimental-df7b47d-20241124: - resolution: {integrity: sha512-vTe5ffzXynVuWCXGs7V6KnRkED4rweKuRj++zznuQktHJOBv1lY136HakX8x40/ERWY8nOM+RUCN9XSuxL+mJw==} + eslint-plugin-react-compiler@0.0.0-experimental-ba7b8e5-20241213: + resolution: {integrity: sha512-bUg9f6NreaQK4/D3GhlNnCydiuOkRNXUHXjHqNESRQXw+gMA/vKWGjStClJvuXAMoNIjLv7uPR1ab7Fx295yZQ==} engines: {node: ^14.17.0 || ^16.0.0 || >= 18.0.0} peerDependencies: eslint: '>=7' - eslint-plugin-react-hooks@0.0.0-experimental-7670501b-20241124: - resolution: {integrity: sha512-r8KdTSNDLmTN19c1b1LZxxmyHc88L8OmrGeaDjgxM3yDXhLb3FNj6Cdde0ks0sKHl12TH1bZDzddbH3xMsjvbw==} + eslint-plugin-react-hooks@0.0.0-experimental-4dff0e62-20241213: + resolution: {integrity: sha512-c+EWPgIjRVI0ZC6t/GBtNdc/nvXBi7bumyoflKTbewifKEdH4o7QhLVtjz+kFAw0tMM+dy7lQ7LYVz/e64iqeA==} engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 @@ -3017,8 +3020,8 @@ packages: resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.16.0: - resolution: {integrity: sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==} + eslint@9.17.0: + resolution: {integrity: sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -3197,10 +3200,6 @@ packages: fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - fs-extra@11.2.0: - resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} - engines: {node: '>=14.14'} - fs-extra@9.1.0: resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} engines: {node: '>=10'} @@ -3225,8 +3224,8 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} + function.prototype.name@1.1.7: + resolution: {integrity: sha512-2g4x+HqTJKM9zcJqBSpjoRmdcPFtJM60J3xJisTQSXBWka5XqyBN/2tNUgma1mztTXyDuUsEtYe5qcs7xYzYQA==} engines: {node: '>= 0.4'} functions-have-names@1.2.3: @@ -3244,8 +3243,8 @@ packages: resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} - get-intrinsic@1.2.4: - resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} + get-intrinsic@1.2.6: + resolution: {integrity: sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==} engines: {node: '>= 0.4'} get-own-enumerable-property-symbols@3.0.2: @@ -3272,8 +3271,8 @@ packages: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} - get-uri@6.0.3: - resolution: {integrity: sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==} + get-uri@6.0.4: + resolution: {integrity: sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==} engines: {node: '>= 14'} git-raw-commits@2.0.11: @@ -3343,8 +3342,8 @@ packages: resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} engines: {node: '>=18'} - gopd@1.1.0: - resolution: {integrity: sha512-FQoVQnqcdk4hVM4JN1eromaun4iuS34oStkdlLENLdpULsuQcTyXj8w7ayhuUfPwEYZ1ZOooOTT6fdA9Vmx/RA==} + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} graceful-fs@4.2.10: @@ -3387,12 +3386,12 @@ packages: has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - has-proto@1.0.3: - resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} engines: {node: '>= 0.4'} - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} has-tostringtag@1.0.2: @@ -3433,8 +3432,8 @@ packages: hast-util-phrasing@3.0.1: resolution: {integrity: sha512-6h60VfI3uBQUxHqTyMymMZnEbNl1XmEGtOxxKYL7stY2o601COo62AWAYBQR9lZbYXYSBoxag8UpPRXK+9fqSQ==} - hast-util-to-html@9.0.3: - resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} + hast-util-to-html@9.0.4: + resolution: {integrity: sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==} hast-util-to-jsx-runtime@2.3.2: resolution: {integrity: sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==} @@ -3506,8 +3505,8 @@ packages: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} - https-proxy-agent@7.0.5: - resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} engines: {node: '>= 14'} human-signals@1.1.1: @@ -3605,8 +3604,8 @@ packages: resolution: {integrity: sha512-+ynEbhWKhyomnaX0n2aLIMSkgSlGB5RrWbNXnEqj6mdaIydu6y40MdBjL38SAB0JcdmOaIaMua1azdjLEr3sdw==} engines: {node: '>=18'} - internal-slot@1.0.7: - resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} interpret@1.4.0: @@ -3637,15 +3636,16 @@ packages: resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} engines: {node: '>= 0.4'} - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + is-boolean-object@1.2.1: + resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==} engines: {node: '>= 0.4'} is-buffer@1.1.6: @@ -3659,16 +3659,16 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + is-core-module@2.16.0: + resolution: {integrity: sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==} engines: {node: '>= 0.4'} - is-data-view@1.0.1: - resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} engines: {node: '>= 0.4'} - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} is-decimal@2.0.1: @@ -3748,8 +3748,8 @@ packages: resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} is-number@7.0.0: @@ -3787,8 +3787,8 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - is-regex@1.2.0: - resolution: {integrity: sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==} + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} is-regexp@1.0.0: @@ -3817,12 +3817,12 @@ packages: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} is-text-path@1.0.1: @@ -3855,8 +3855,9 @@ packages: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-weakref@1.1.0: + resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==} + engines: {node: '>= 0.4'} is-weakset@2.0.3: resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} @@ -3893,8 +3894,8 @@ packages: resolution: {integrity: sha512-3YZcUUR2Wt1WsapF+S/WiA2WmlW0cWAoPccMqne7AxEBhCdFeTPjfv/Axb8V2gyCgY3nRw+ksZ3xSUX+R47iAg==} engines: {node: ^18.17 || >=20.6.1} - iterator.prototype@1.1.3: - resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==} + iterator.prototype@1.1.4: + resolution: {integrity: sha512-x4WH0BWmrMmg4oHHl+duwubhrvczGlyuGAZu3nvrf0UXOfPu8IhZObFEr7DE/iv01YgVZrsOiRcqw2srkKEDIA==} engines: {node: '>= 0.4'} jackspeak@3.4.3: @@ -3950,6 +3951,11 @@ packages: engines: {node: '>=6'} hasBin: true + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -4013,8 +4019,8 @@ packages: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} - ky@1.7.2: - resolution: {integrity: sha512-OzIvbHKKDpi60TnF9t7UUVAF1B4mcqc02z5PIvrm08Wyb+yOcz63GRvEuVxNT18a9E1SrNouhB4W2NNLeD7Ykg==} + ky@1.7.3: + resolution: {integrity: sha512-Sz49ZWR/BjNOq+2UK1k9ONZUVq8eyuCj30Zgc8VrRNtFlTBZduzuvehUd5kjQF6/Fms3Ir3EYqzJryw9tRvsSw==} engines: {node: '>=18'} latest-version@9.0.0: @@ -4244,8 +4250,8 @@ packages: magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} - magic-string@0.30.14: - resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==} + magic-string@0.30.15: + resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==} make-dir@2.1.0: resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} @@ -4268,6 +4274,10 @@ packages: marky@1.2.5: resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} + math-intrinsics@1.0.0: + resolution: {integrity: sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==} + engines: {node: '>= 0.4'} + mdast-squeeze-paragraphs@6.0.0: resolution: {integrity: sha512-6NDbJPTg0M0Ye+TlYwX1KJ1LFbp515P2immRJyJQhc9Na9cetHzSoHNYIQcXpANEAP1sm9yd/CTZU2uHqR5A+w==} @@ -4508,8 +4518,8 @@ packages: engines: {node: '>=10'} hasBin: true - modern-screenshot@4.5.4: - resolution: {integrity: sha512-4O9hT31e2XqAga5tIuNe8YemB8SnjHYClD1lHu0DqgiZ4Mld6Hf4t3Oz+3RnxQm+95cMatFsmJRI1IIMub13ww==} + modern-screenshot@4.5.5: + resolution: {integrity: sha512-k5AC0UjY8YccnKn53upeQMzgDdPYkDN/706ma3yPHCwOZi+AoL0NeMlLS3nQwA/s0xrM7s8WO+UWnx5YJNpQeA==} modify-values@1.0.1: resolution: {integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==} @@ -4579,8 +4589,8 @@ packages: encoding: optional: true - node-releases@2.0.18: - resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} @@ -4731,8 +4741,8 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - pac-proxy-agent@7.0.2: - resolution: {integrity: sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==} + pac-proxy-agent@7.1.0: + resolution: {integrity: sha512-Z5FnLVVZSnX7WjBg0mhDtydeRZ1xMcATZThjySQUHqr+0ksP8kqaw23fNKkaaN/Z8gwLUs/W7xdl0I75eP2Xyw==} engines: {node: '>= 14'} pac-resolver@7.0.1: @@ -4750,8 +4760,8 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} - parse-entities@4.0.1: - resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} + parse-entities@4.0.2: + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} parse-json@4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} @@ -4860,13 +4870,13 @@ packages: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} - playwright-core@1.49.0: - resolution: {integrity: sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==} + playwright-core@1.49.1: + resolution: {integrity: sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==} engines: {node: '>=18'} hasBin: true - playwright@1.49.0: - resolution: {integrity: sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==} + playwright@1.49.1: + resolution: {integrity: sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==} engines: {node: '>=18'} hasBin: true @@ -4884,8 +4894,8 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules-local-by-default@4.1.0: - resolution: {integrity: sha512-rm0bdSv4jC3BDma3s9H19ZddW0aHX6EoqwDYU2IfZhRN+53QrufTRo2IdkAbRqLx4R2IYbZnbjKKxg4VN5oU9Q==} + postcss-modules-local-by-default@4.2.0: + resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 @@ -4922,8 +4932,8 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@3.4.1: - resolution: {integrity: sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==} + prettier@3.4.2: + resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} engines: {node: '>=14'} hasBin: true @@ -4970,6 +4980,10 @@ packages: resolution: {integrity: sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==} engines: {node: '>= 14'} + proxy-agent@6.5.0: + resolution: {integrity: sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==} + engines: {node: '>= 14'} + proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} @@ -5029,21 +5043,21 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' - react-dom@0.0.0-experimental-7670501b-20241124: - resolution: {integrity: sha512-150W/wDCbC/W8WpDowFCY3294u1WYTnpgc4owl3BVzsAkBeGxgKN1CNT4IC1xNI05CGDDG9lyGE9M0wvDj0fTQ==} + react-dom@0.0.0-experimental-4dff0e62-20241213: + resolution: {integrity: sha512-73eX3oL7uOjRVmNWKQXrw5LQmxIwi1nAUd7Yw1WZub+Jf9qne30fACp86eAk5PzO0lU8xYaRBKCbipaXpD273g==} peerDependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 react-error-boundary@4.1.2: resolution: {integrity: sha512-GQDxZ5Jd+Aq/qUxbCm1UtzmL/s++V7zKgE8yMktJiCQXCCFZnMZh9ng+6/Ne6PjNSXH0L9CjeOEREfRnq6Duag==} peerDependencies: react: '>=16.13.1' - react-intersection-observer@9.13.1: - resolution: {integrity: sha512-tSzDaTy0qwNPLJHg8XZhlyHTgGW6drFKTtvjdL+p6um12rcnp8Z5XstE+QNBJ7c64n5o0Lj4ilUleA41bmDoMw==} + react-intersection-observer@9.14.0: + resolution: {integrity: sha512-AYqlmDZn85VUmlODwYym9y5OlqY2cFyIu41dkN0GJWvhdbd19Mh16mz5IH6fO1gp5V4FfQOO4m0zGc04Tj13rQ==} peerDependencies: - react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 peerDependenciesMeta: react-dom: optional: true @@ -5060,11 +5074,11 @@ packages: '@types/react': '>=18' react: '>=18' - react-redux@9.1.2: - resolution: {integrity: sha512-0OA4dhM1W48l3uzmv6B7TXPCGmokUU4p1M44DGN2/D9a1FjVPukVjER1PcPX97jIg6aUeLq1XJo1IpfbgULn0w==} + react-redux@9.2.0: + resolution: {integrity: sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==} peerDependencies: - '@types/react': ^18.2.25 - react: ^18.0 + '@types/react': ^18.2.25 || ^19 + react: ^18.0 || ^19 redux: ^5.0.0 peerDependenciesMeta: '@types/react': @@ -5092,11 +5106,11 @@ packages: peerDependencies: react: '>=15' - react-textarea-autosize@8.5.5: - resolution: {integrity: sha512-CVA94zmfp8m4bSHtWwmANaBR8EPsKy2aZ7KwqhoS4Ftib87F9Kvi7XQhOixypPLMc6kVYgOXvKFuuzZDpHGRPg==} + react-textarea-autosize@8.5.6: + resolution: {integrity: sha512-aT3ioKXMa8f6zHYGebhbdMD2L00tKeRX1zuVuDx9YQK/JLLRSaSxq3ugECEmUB9z2kvk6bFSIoRHLkkUv0RJiw==} engines: {node: '>=10'} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-transition-state@2.2.0: resolution: {integrity: sha512-D3EyLku1Sdxrxq26Fo4Jh0q1BLEFQfDOxKKiSuyqWH84+hM6y0Guc0hcW2IXMXY5l5gQCgkOQ9y90xx6mNoj5w==} @@ -5104,8 +5118,8 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' - react@0.0.0-experimental-7670501b-20241124: - resolution: {integrity: sha512-A7FwEzKrEj3Trjm+EQAgGYaBriKgIfRf2q6byM8RpEip1PDG/6g8giycr0Y03JLSlkKNDoHXqq9z+YQudpCSCg==} + react@0.0.0-experimental-4dff0e62-20241213: + resolution: {integrity: sha512-dcSQRMeA5MdnHkrMy7WdE3eFLY3rdbdX+8T9bCk6ydfjw4AszGrnMI9Ks+C+LLwZFdxOt9pfZwcytf2KKBR9ZA==} engines: {node: '>=0.10.0'} read-pkg-up@3.0.0: @@ -5155,8 +5169,8 @@ packages: redux@5.0.1: resolution: {integrity: sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==} - reflect.getprototypeof@1.0.7: - resolution: {integrity: sha512-bMvFGIUKlc/eSfXNX+aZ+EL95/EgZzuwA0OBPTbZZDEJw/0AkentjMuM1oiRfwHrshqk4RzdgiTg5CcDalXN5g==} + reflect.getprototypeof@1.0.8: + resolution: {integrity: sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==} engines: {node: '>= 0.4'} regenerate-unicode-properties@10.2.0: @@ -5256,8 +5270,8 @@ packages: resolve-pathname@3.0.0: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==} - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + resolve@1.22.9: + resolution: {integrity: sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==} hasBin: true resolve@2.0.0-next.5: @@ -5295,8 +5309,8 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - rollup@4.28.0: - resolution: {integrity: sha512-G9GOrmgWHBma4YfCcX8PjH0qhXSdH8B4HDE2o4/jaxj93S4DPCIDoLcXz99eWMji4hB29UFCEd7B2gwGJDR9cQ==} + rollup@4.28.1: + resolution: {integrity: sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -5329,8 +5343,8 @@ packages: rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - safe-array-concat@1.1.2: - resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} safe-buffer@5.1.2: @@ -5339,8 +5353,8 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - safe-regex-test@1.0.3: - resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} engines: {node: '>= 0.4'} safer-buffer@2.1.2: @@ -5364,8 +5378,8 @@ packages: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} - scheduler@0.0.0-experimental-7670501b-20241124: - resolution: {integrity: sha512-3gEk9E54G93Oio+DIwptiqdPQdhU28UYOOL4F5ktKEnkFuUdTme8CDcvPOmca5Hg9URhp1tNZnW8m6gP993YdQ==} + scheduler@0.0.0-experimental-4dff0e62-20241213: + resolution: {integrity: sha512-djvZHEKFHLvC/rPZbUd/rjeVA6sn+ZMI8uz57CEharv5VFVaufVUhUVBbw1t/XKI3cfOiCqIHRyqJWJFsVqwuA==} semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} @@ -5407,8 +5421,20 @@ packages: engines: {node: '>=4'} hasBin: true - side-channel@1.0.6: - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} siginfo@2.0.0: @@ -5449,8 +5475,8 @@ packages: snake-case@3.0.4: resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} - socks-proxy-agent@8.0.4: - resolution: {integrity: sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==} + socks-proxy-agent@8.0.5: + resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==} engines: {node: '>= 14'} socks@2.8.3: @@ -5547,12 +5573,13 @@ packages: string.prototype.repeat@1.0.0: resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} - string.prototype.trim@1.2.9: - resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} engines: {node: '>= 0.4'} - string.prototype.trimend@1.0.8: - resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} @@ -5712,11 +5739,11 @@ packages: resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} engines: {node: '>=14.0.0'} - tldts-core@6.1.65: - resolution: {integrity: sha512-Uq5t0N0Oj4nQSbU8wFN1YYENvMthvwU13MQrMJRspYCGLSAZjAfoBOJki5IQpnBM/WFskxxC/gIOTwaedmHaSg==} + tldts-core@6.1.68: + resolution: {integrity: sha512-85TdlS/DLW/gVdf2oyyzqp3ocS30WxjaL4la85EArl9cHUR/nizifKAJPziWewSZjDZS71U517/i6ciUeqtB5Q==} - tldts@6.1.65: - resolution: {integrity: sha512-xU9gLTfAGsADQ2PcWee6Hg8RFAv0DnjMGVJmDnUmI8a9+nYmapMQix4afwrdaCtT+AqP4MaxEzu7cCrYmBPbzQ==} + tldts@6.1.68: + resolution: {integrity: sha512-JKF17jROiYkjJPT73hUTEiTp2OBCf+kAlB+1novk8i6Q6dWjHsgEjw9VLiipV4KTJavazXhY1QUXyQFSem2T7w==} hasBin: true tmp@0.0.33: @@ -5816,8 +5843,8 @@ packages: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} - type-fest@4.29.0: - resolution: {integrity: sha512-RPYt6dKyemXJe7I6oNstcH24myUGSReicxcHTvCLgzm4e0n8y05dGvcGB15/SoPRBmhlMthWQ9pvKyL81ko8nQ==} + type-fest@4.30.1: + resolution: {integrity: sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==} engines: {node: '>=16'} typed-array-buffer@1.0.2: @@ -5844,15 +5871,12 @@ packages: typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - typescript-eslint@8.16.0: - resolution: {integrity: sha512-wDkVmlY6O2do4V+lZd0GtRfbtXbeD0q9WygwXXSJnC1xorE8eqyC2L1tJimqpSeFrOzRlYtWnUp/uzgHQOgfBQ==} + typescript-eslint@8.18.0: + resolution: {integrity: sha512-Xq2rRjn6tzVpAyHr3+nmSg1/9k9aIHnJ2iZeOH7cfGOWqTkXTm3kwpQglEuLGdNrYvPF+2gtAs+/KF5rjVo+WQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' typescript@5.7.2: resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==} @@ -5975,25 +5999,29 @@ packages: resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - use-composed-ref@1.3.0: - resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} + use-composed-ref@1.4.0: + resolution: {integrity: sha512-djviaxuOOh7wkj0paeO1Q/4wMZ8Zrnag5H6yBvzN7AKKe8beOaED9SF5/ByLqsku8NP4zQqsvM2u3ew/tJK8/w==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true - use-isomorphic-layout-effect@1.1.2: - resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} + use-isomorphic-layout-effect@1.2.0: + resolution: {integrity: sha512-q6ayo8DWoPZT0VdG4u3D3uxcgONP3Mevx2i2b0434cwWBoL+aelL1DzkXI6w3PhTZzUeR2kaVlZn70iCiseP6w==} peerDependencies: '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 peerDependenciesMeta: '@types/react': optional: true - use-latest@1.2.1: - resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} + use-latest@1.3.0: + resolution: {integrity: sha512-mhg3xdm9NaM8q+gLT8KryJPnRFOz1/5XPBhmDEVZK1webPzDjrPk7f/mbpeLqTgB9msytYWANxgALOCJKnLvcQ==} peerDependencies: '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 peerDependenciesMeta: '@types/react': optional: true @@ -6003,10 +6031,10 @@ packages: peerDependencies: react: '>=16.8.0' - use-sync-external-store@1.2.2: - resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==} + use-sync-external-store@1.4.0: + resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -6039,8 +6067,8 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - virtua@0.38.1: - resolution: {integrity: sha512-3fwjY1kI4nVLztUwlnqn+BF5Cy8NbFg4S1J/ZM+LrDK/Sbrs+l6N5wxATQfAK+2OL7bfnQ4Dc6OX2B19/BFK5Q==} + virtua@0.39.2: + resolution: {integrity: sha512-KhDYmfDe36L1W5ir1b5+jeV40+u4bb5bRiZggWwGinreGXKnxxcLGdk+yVZlO5dNdBq/nxj4v4w6yxuwgLXSBg==} peerDependencies: react: '>=16.14.0' react-dom: '>=16.14.0' @@ -6059,8 +6087,8 @@ packages: vue: optional: true - vite-node@2.1.6: - resolution: {integrity: sha512-DBfJY0n9JUwnyLxPSSUmEePT21j8JZp/sR9n+/gBwQU6DcQOioPdb8/pibWfXForbirSagZCilseYIwaL3f95A==} + vite-node@3.0.0-beta.2: + resolution: {integrity: sha512-ofTf6cfRdL30Wbl9n/BX81EyIR5s4PReLmSurrxQ+koLaWUNOEo8E0lCM53OJkb8vpa2URM2nSrxZsIFyvY1rg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true @@ -6081,8 +6109,8 @@ packages: peerDependencies: vite: '>=2.6.0' - vite@6.0.1: - resolution: {integrity: sha512-Ldn6gorLGr4mCdFnmeAOLweJxZ34HjKnDm4HGo6P66IEqTxQb36VEdFJQENKxWjupNfoIjvRUnswjn1hpYEpjQ==} + vite@6.0.3: + resolution: {integrity: sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: @@ -6121,15 +6149,15 @@ packages: yaml: optional: true - vitest@2.1.6: - resolution: {integrity: sha512-isUCkvPL30J4c5O5hgONeFRsDmlw6kzFEdLQHLezmDdKQHy8Ke/B/dgdTMEgU0vm+iZ0TjW8GuK83DiahBoKWQ==} + vitest@3.0.0-beta.2: + resolution: {integrity: sha512-ZP0FVJ4tNJJOsjzZSuadEW0BPBgO7DMMen3mIE8TPPiPUMwz9YoS1U5bcqMYZ61r34xGsaYPe1h0l1MXt50f7g==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - '@vitest/browser': 2.1.6 - '@vitest/ui': 2.1.6 + '@vitest/browser': 3.0.0-beta.2 + '@vitest/ui': 3.0.0-beta.2 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -6181,8 +6209,8 @@ packages: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} engines: {node: '>=18'} - whatwg-url@14.0.0: - resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} + whatwg-url@14.1.0: + resolution: {integrity: sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==} engines: {node: '>=18'} whatwg-url@5.0.0: @@ -6194,11 +6222,12 @@ packages: when-exit@2.1.3: resolution: {integrity: sha512-uVieSTccFIr/SFQdFWN/fFaQYmV37OKtuaGphMAzi4DmmUlrvRBJW5WSLkHyjNQY/ePJMz3LoiX9R3yy1Su6Hw==} - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-boxed-primitive@1.1.0: + resolution: {integrity: sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==} + engines: {node: '>= 0.4'} - which-builtin-type@1.2.0: - resolution: {integrity: sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA==} + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} engines: {node: '>= 0.4'} which-collection@1.0.2: @@ -6450,8 +6479,8 @@ packages: peerDependencies: zod: ^3.18.0 - zod@3.23.8: - resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} + zod@3.24.1: + resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -6473,7 +6502,7 @@ snapshots: '@ampproject/remapping@2.3.0': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@apideck/better-ajv-errors@0.3.6(ajv@8.17.1)': @@ -6489,52 +6518,45 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.26.2': {} + '@babel/compat-data@7.26.3': {} '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 + '@babel/generator': 7.26.3 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 convert-source-map: 2.0.0 - debug: 4.3.7 + debug: 4.4.0 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.26.2': + '@babel/generator@7.26.3': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 - '@jridgewell/gen-mapping': 0.3.5 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.0.2 + jsesc: 3.1.0 '@babel/helper-annotate-as-pure@7.25.9': dependencies: - '@babel/types': 7.26.0 - - '@babel/helper-builder-binary-assignment-operator-visitor@7.25.9': - dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.26.3 '@babel/helper-compilation-targets@7.25.9': dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.2 + browserslist: 4.24.3 lru-cache: 5.1.1 semver: 6.3.1 @@ -6546,12 +6568,12 @@ snapshots: '@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/helper-create-regexp-features-plugin@7.25.9(@babel/core@7.26.0)': + '@babel/helper-create-regexp-features-plugin@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 @@ -6563,23 +6585,23 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - debug: 4.3.7 + debug: 4.4.0 lodash.debounce: 4.0.8 - resolve: 1.22.8 + resolve: 1.22.9 transitivePeerDependencies: - supports-color '@babel/helper-member-expression-to-functions@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -6588,13 +6610,13 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color '@babel/helper-optimise-call-expression@7.25.9': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/helper-plugin-utils@7.25.9': {} @@ -6603,7 +6625,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-wrap-function': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -6612,21 +6634,14 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/traverse': 7.25.9 - transitivePeerDependencies: - - supports-color - - '@babel/helper-simple-access@7.25.9': - dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -6639,25 +6654,25 @@ snapshots: '@babel/helper-wrap-function@7.25.9': dependencies: '@babel/template': 7.25.9 - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 - '@babel/parser@7.26.2': + '@babel/parser@7.26.3': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -6684,7 +6699,15 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 transitivePeerDependencies: - supports-color @@ -6705,7 +6728,7 @@ snapshots: '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.0)': @@ -6718,7 +6741,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0) - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -6764,7 +6787,7 @@ snapshots: '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -6783,7 +6806,7 @@ snapshots: '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.0)': @@ -6794,7 +6817,7 @@ snapshots: '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.0)': @@ -6802,13 +6825,10 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-exponentiation-operator@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-exponentiation-operator@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - transitivePeerDependencies: - - supports-color '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.0)': dependencies: @@ -6828,7 +6848,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -6860,12 +6880,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-commonjs@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-modules-commonjs@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 - '@babel/helper-simple-access': 7.25.9 transitivePeerDependencies: - supports-color @@ -6875,7 +6894,7 @@ snapshots: '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -6890,7 +6909,7 @@ snapshots: '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.0)': @@ -6982,7 +7001,7 @@ snapshots: '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.0)': @@ -7026,24 +7045,24 @@ snapshots: '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/preset-env@7.26.0(@babel/core@7.26.0)': dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 @@ -7071,7 +7090,7 @@ snapshots: '@babel/plugin-transform-duplicate-keys': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-dynamic-import': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-exponentiation-operator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-exponentiation-operator': 7.26.3(@babel/core@7.26.0) '@babel/plugin-transform-export-namespace-from': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.26.0) @@ -7080,7 +7099,7 @@ snapshots: '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-member-expression-literals': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-modules-amd': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) '@babel/plugin-transform-modules-systemjs': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) @@ -7120,7 +7139,7 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 esutils: 2.0.3 '@babel/runtime@7.24.7': @@ -7138,22 +7157,22 @@ snapshots: '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 - '@babel/traverse@7.25.9': + '@babel/traverse@7.26.4': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 - '@babel/parser': 7.26.2 + '@babel/generator': 7.26.3 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/types': 7.26.0 - debug: 4.3.7 + '@babel/types': 7.26.3 + debug: 4.4.0 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.26.0': + '@babel/types@7.26.3': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -7177,7 +7196,7 @@ snapshots: '@ionic/utils-subprocess': 2.1.11 '@ionic/utils-terminal': 2.3.5 commander: 9.5.0 - debug: 4.3.7 + debug: 4.4.0 env-paths: 2.2.1 kleur: 4.1.5 native-run: 2.0.1 @@ -7304,27 +7323,29 @@ snapshots: '@esbuild/win32-x64@0.24.0': optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@9.16.0)': + '@eslint-community/eslint-utils@4.4.1(eslint@9.17.0)': dependencies: - eslint: 9.16.0 + eslint: 9.17.0 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} - '@eslint/config-array@0.19.0': + '@eslint/config-array@0.19.1': dependencies: - '@eslint/object-schema': 2.1.4 - debug: 4.3.7 + '@eslint/object-schema': 2.1.5 + debug: 4.4.0 minimatch: 3.1.2 transitivePeerDependencies: - supports-color - '@eslint/core@0.9.0': {} + '@eslint/core@0.9.1': + dependencies: + '@types/json-schema': 7.0.15 '@eslint/eslintrc@3.2.0': dependencies: ajv: 6.12.6 - debug: 4.3.7 + debug: 4.4.0 espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 @@ -7335,11 +7356,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.16.0': {} + '@eslint/js@9.17.0': {} - '@eslint/object-schema@2.1.4': {} + '@eslint/object-schema@2.1.5': {} - '@eslint/plugin-kit@0.2.3': + '@eslint/plugin-kit@0.2.4': dependencies: levn: 0.4.1 @@ -7367,7 +7388,7 @@ snapshots: '@ionic/cli-framework-output@2.2.8': dependencies: '@ionic/utils-terminal': 2.3.5 - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7375,7 +7396,7 @@ snapshots: '@ionic/cli-framework-prompts@2.1.13': dependencies: '@ionic/utils-terminal': 2.3.5 - debug: 4.3.7 + debug: 4.4.0 inquirer: 7.3.3 tslib: 2.8.1 transitivePeerDependencies: @@ -7392,7 +7413,7 @@ snapshots: '@ionic/utils-subprocess': 3.0.1 '@ionic/utils-terminal': 2.3.5 chalk: 4.1.2 - debug: 4.3.7 + debug: 4.4.0 lodash: 4.17.21 minimist: 1.2.8 rimraf: 3.0.2 @@ -7414,14 +7435,14 @@ snapshots: '@ionic/utils-subprocess': 3.0.1 '@ionic/utils-terminal': 2.3.5 chalk: 4.1.2 - debug: 4.3.7 + debug: 4.4.0 diff: 4.0.2 elementtree: 0.1.7 leek: 0.0.24 lodash: 4.17.21 open: 7.4.2 os-name: 4.0.1 - proxy-agent: 6.4.0 + proxy-agent: 6.5.0 semver: 7.6.3 split2: 3.2.2 ssh-config: 1.1.6 @@ -7432,33 +7453,33 @@ snapshots: transitivePeerDependencies: - supports-color - '@ionic/react-router@8.4.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react-router-dom@5.3.4(react@0.0.0-experimental-7670501b-20241124))(react-router@5.3.4(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124)': + '@ionic/react-router@8.4.1(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react-router-dom@5.3.4(react@0.0.0-experimental-4dff0e62-20241213))(react-router@5.3.4(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213)': dependencies: - '@ionic/react': 8.4.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124) - react: 0.0.0-experimental-7670501b-20241124 - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) - react-router: 5.3.4(react@0.0.0-experimental-7670501b-20241124) - react-router-dom: 5.3.4(react@0.0.0-experimental-7670501b-20241124) + '@ionic/react': 8.4.1(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) + react: 0.0.0-experimental-4dff0e62-20241213 + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) + react-router: 5.3.4(react@0.0.0-experimental-4dff0e62-20241213) + react-router-dom: 5.3.4(react@0.0.0-experimental-4dff0e62-20241213) tslib: 2.8.1 - '@ionic/react@8.4.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124)': + '@ionic/react@8.4.1(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213)': dependencies: '@ionic/core': voyager-ionic-core@8.4.1 ionicons: 7.4.0 - react: 0.0.0-experimental-7670501b-20241124 - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) tslib: 2.8.1 '@ionic/utils-array@2.1.5': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color '@ionic/utils-array@2.1.6': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7466,7 +7487,7 @@ snapshots: '@ionic/utils-fs@3.1.6': dependencies: '@types/fs-extra': 8.1.5 - debug: 4.3.7 + debug: 4.4.0 fs-extra: 9.1.0 tslib: 2.8.1 transitivePeerDependencies: @@ -7475,7 +7496,7 @@ snapshots: '@ionic/utils-fs@3.1.7': dependencies: '@types/fs-extra': 8.1.5 - debug: 4.3.7 + debug: 4.4.0 fs-extra: 9.1.0 tslib: 2.8.1 transitivePeerDependencies: @@ -7483,21 +7504,21 @@ snapshots: '@ionic/utils-network@2.1.7': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color '@ionic/utils-object@2.1.5': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color '@ionic/utils-object@2.1.6': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7506,7 +7527,7 @@ snapshots: dependencies: '@ionic/utils-object': 2.1.5 '@ionic/utils-terminal': 2.3.3 - debug: 4.3.7 + debug: 4.4.0 signal-exit: 3.0.7 tree-kill: 1.2.2 tslib: 2.8.1 @@ -7517,7 +7538,7 @@ snapshots: dependencies: '@ionic/utils-object': 2.1.6 '@ionic/utils-terminal': 2.3.4 - debug: 4.3.7 + debug: 4.4.0 signal-exit: 3.0.7 tree-kill: 1.2.2 tslib: 2.8.1 @@ -7528,7 +7549,7 @@ snapshots: dependencies: '@ionic/utils-object': 2.1.6 '@ionic/utils-terminal': 2.3.5 - debug: 4.3.7 + debug: 4.4.0 signal-exit: 3.0.7 tree-kill: 1.2.2 tslib: 2.8.1 @@ -7537,21 +7558,21 @@ snapshots: '@ionic/utils-stream@3.1.5': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color '@ionic/utils-stream@3.1.6': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color '@ionic/utils-stream@3.1.7': dependencies: - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7564,7 +7585,7 @@ snapshots: '@ionic/utils-stream': 3.1.5 '@ionic/utils-terminal': 2.3.3 cross-spawn: 7.0.6 - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7577,7 +7598,7 @@ snapshots: '@ionic/utils-stream': 3.1.6 '@ionic/utils-terminal': 2.3.4 cross-spawn: 7.0.6 - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7590,7 +7611,7 @@ snapshots: '@ionic/utils-stream': 3.1.7 '@ionic/utils-terminal': 2.3.5 cross-spawn: 7.0.6 - debug: 4.3.7 + debug: 4.4.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -7598,7 +7619,7 @@ snapshots: '@ionic/utils-terminal@2.3.3': dependencies: '@types/slice-ansi': 4.0.0 - debug: 4.3.7 + debug: 4.4.0 signal-exit: 3.0.7 slice-ansi: 4.0.0 string-width: 4.2.3 @@ -7612,7 +7633,7 @@ snapshots: '@ionic/utils-terminal@2.3.4': dependencies: '@types/slice-ansi': 4.0.0 - debug: 4.3.7 + debug: 4.4.0 signal-exit: 3.0.7 slice-ansi: 4.0.0 string-width: 4.2.3 @@ -7626,7 +7647,7 @@ snapshots: '@ionic/utils-terminal@2.3.5': dependencies: '@types/slice-ansi': 4.0.0 - debug: 4.3.7 + debug: 4.4.0 signal-exit: 3.0.7 slice-ansi: 4.0.0 string-width: 4.2.3 @@ -7646,7 +7667,7 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@jridgewell/gen-mapping@0.3.5': + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 @@ -7658,7 +7679,7 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.5.0': {} @@ -7673,9 +7694,9 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@mantine/hooks@7.14.3(react@0.0.0-experimental-7670501b-20241124)': + '@mantine/hooks@7.15.1(react@0.0.0-experimental-4dff0e62-20241213)': dependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 '@nodelib/fs.scandir@2.1.5': dependencies: @@ -7818,9 +7839,9 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true - '@playwright/test@1.49.0': + '@playwright/test@1.49.1': dependencies: - playwright: 1.49.0 + playwright: 1.49.1 '@pnpm/config.env-replace@1.1.0': {} @@ -7837,22 +7858,22 @@ snapshots: '@prettier/plugin-xml@1.2.0': dependencies: '@xml-tools/parser': 1.0.11 - prettier: 3.4.1 + prettier: 3.4.2 '@prettier/plugin-xml@2.2.0': dependencies: '@xml-tools/parser': 1.0.11 - prettier: 3.4.1 + prettier: 3.4.2 - '@reduxjs/toolkit@2.4.0(react-redux@9.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124)(redux@5.0.1))(react@0.0.0-experimental-7670501b-20241124)': + '@reduxjs/toolkit@2.5.0(react-redux@9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1))(react@0.0.0-experimental-4dff0e62-20241213)': dependencies: immer: 10.1.1 redux: 5.0.1 redux-thunk: 3.1.0(redux@5.0.1) reselect: 5.1.1 optionalDependencies: - react: 0.0.0-experimental-7670501b-20241124 - react-redux: 9.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124)(redux@5.0.1) + react: 0.0.0-experimental-4dff0e62-20241213 + react-redux: 9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1) '@rollup/plugin-babel@5.3.1(@babel/core@7.26.0)(@types/babel__core@7.20.5)(rollup@2.79.2)': dependencies: @@ -7865,13 +7886,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@rollup/plugin-node-resolve@15.3.0(rollup@2.79.2)': + '@rollup/plugin-node-resolve@15.3.1(rollup@2.79.2)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@2.79.2) + '@rollup/pluginutils': 5.1.4(rollup@2.79.2) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.8 + resolve: 1.22.9 optionalDependencies: rollup: 2.79.2 @@ -7896,7 +7917,7 @@ snapshots: picomatch: 2.3.1 rollup: 2.79.2 - '@rollup/pluginutils@5.1.3(rollup@2.79.2)': + '@rollup/pluginutils@5.1.4(rollup@2.79.2)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 @@ -7904,65 +7925,68 @@ snapshots: optionalDependencies: rollup: 2.79.2 - '@rollup/rollup-android-arm-eabi@4.28.0': + '@rollup/rollup-android-arm-eabi@4.28.1': optional: true - '@rollup/rollup-android-arm64@4.28.0': + '@rollup/rollup-android-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-arm64@4.28.0': + '@rollup/rollup-darwin-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-x64@4.28.0': + '@rollup/rollup-darwin-x64@4.28.1': optional: true - '@rollup/rollup-freebsd-arm64@4.28.0': + '@rollup/rollup-freebsd-arm64@4.28.1': optional: true - '@rollup/rollup-freebsd-x64@4.28.0': + '@rollup/rollup-freebsd-x64@4.28.1': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.28.0': + '@rollup/rollup-linux-arm-gnueabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.28.0': + '@rollup/rollup-linux-arm-musleabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm64-gnu@4.28.0': + '@rollup/rollup-linux-arm64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-arm64-musl@4.28.0': + '@rollup/rollup-linux-arm64-musl@4.28.1': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.28.0': + '@rollup/rollup-linux-loongarch64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.28.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': optional: true - '@rollup/rollup-linux-s390x-gnu@4.28.0': + '@rollup/rollup-linux-riscv64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-gnu@4.28.0': + '@rollup/rollup-linux-s390x-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-musl@4.28.0': + '@rollup/rollup-linux-x64-gnu@4.28.1': optional: true - '@rollup/rollup-win32-arm64-msvc@4.28.0': + '@rollup/rollup-linux-x64-musl@4.28.1': optional: true - '@rollup/rollup-win32-ia32-msvc@4.28.0': + '@rollup/rollup-win32-arm64-msvc@4.28.1': optional: true - '@rollup/rollup-win32-x64-msvc@4.28.0': + '@rollup/rollup-win32-ia32-msvc@4.28.1': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.28.1': optional: true '@sindresorhus/merge-streams@2.3.0': {} '@stencil/core@4.20.0': {} - '@stencil/core@4.22.3': {} + '@stencil/core@4.23.0': {} '@surma/rollup-plugin-off-main-thread@2.2.3': dependencies: @@ -8028,7 +8052,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@8.0.0': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 entities: 4.5.0 '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.7.2))': @@ -8043,14 +8067,14 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} - '@trapezedev/configure@7.1.3(@types/node@22.10.1)(typescript@5.7.2)': + '@trapezedev/configure@7.1.3(@types/node@22.10.2)(typescript@5.7.2)': dependencies: '@ionic/cli-framework-output': 2.2.8 '@ionic/utils-fs': 3.1.7 '@ionic/utils-subprocess': 2.1.14 '@ionic/utils-terminal': 2.3.5 '@prettier/plugin-xml': 1.2.0 - '@trapezedev/project': 7.1.3(@types/node@22.10.1)(typescript@5.7.2) + '@trapezedev/project': 7.1.3(@types/node@22.10.2)(typescript@5.7.2) '@types/fs-extra': 9.0.13 '@types/jest': 27.5.2 '@types/lodash': 4.17.13 @@ -8066,7 +8090,7 @@ snapshots: prompts: 2.4.2 replace: 1.2.2 tmp: 0.2.3 - ts-node: 10.9.2(@types/node@22.10.1)(typescript@5.7.2) + ts-node: 10.9.2(@types/node@22.10.2)(typescript@5.7.2) yaml: 1.10.2 yargs: 17.7.2 transitivePeerDependencies: @@ -8078,7 +8102,7 @@ snapshots: '@trapezedev/gradle-parse@7.1.3': {} - '@trapezedev/project@7.1.3(@types/node@22.10.1)(typescript@5.7.2)': + '@trapezedev/project@7.1.3(@types/node@22.10.2)(typescript@5.7.2)': dependencies: '@ionic/utils-fs': 3.1.7 '@ionic/utils-subprocess': 2.1.14 @@ -8100,7 +8124,7 @@ snapshots: replace: 1.2.2 tempy: 1.0.1 tmp: 0.2.3 - ts-node: 10.9.2(@types/node@22.10.1)(typescript@5.7.2) + ts-node: 10.9.2(@types/node@22.10.2)(typescript@5.7.2) xcode: 3.0.1 xml-js: 1.6.11 xpath: 0.0.32 @@ -8122,24 +8146,24 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/debug@4.1.12': dependencies: @@ -8155,11 +8179,11 @@ snapshots: '@types/fs-extra@8.1.5': dependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 '@types/fs-extra@9.0.13': dependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 '@types/hast@2.3.10': dependencies: @@ -8188,7 +8212,7 @@ snapshots: '@types/ms@0.7.34': {} - '@types/node@22.10.1': + '@types/node@22.10.2': dependencies: undici-types: 6.20.0 @@ -8196,34 +8220,34 @@ snapshots: '@types/plist@3.0.5': dependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 xmlbuilder: 15.1.1 '@types/prompts@2.4.9': dependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 kleur: 3.0.3 - '@types/prop-types@15.7.13': {} + '@types/prop-types@15.7.14': {} - '@types/react-dom@18.3.1': + '@types/react-dom@18.3.5(@types/react@18.3.16)': dependencies: - '@types/react': 18.3.12 + '@types/react': 18.3.16 '@types/react-router-dom@5.3.3': dependencies: '@types/history': 4.7.11 - '@types/react': 18.3.12 + '@types/react': 18.3.16 '@types/react-router': 5.1.20 '@types/react-router@5.1.20': dependencies: '@types/history': 4.7.11 - '@types/react': 18.3.12 + '@types/react': 18.3.16 - '@types/react@18.3.12': + '@types/react@18.3.16': dependencies: - '@types/prop-types': 15.7.13 + '@types/prop-types': 15.7.14 csstype: 3.1.3 '@types/resolve@1.20.2': {} @@ -8242,40 +8266,38 @@ snapshots: '@types/unist@3.0.3': {} - '@types/use-sync-external-store@0.0.3': {} + '@types/use-sync-external-store@0.0.6': {} '@types/yauzl@2.10.3': dependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 optional: true - '@typescript-eslint/eslint-plugin@8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.16.0)(typescript@5.7.2))(eslint@9.16.0)(typescript@5.7.2)': + '@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0)(typescript@5.7.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - '@typescript-eslint/scope-manager': 8.16.0 - '@typescript-eslint/type-utils': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - '@typescript-eslint/utils': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - '@typescript-eslint/visitor-keys': 8.16.0 - eslint: 9.16.0 + '@typescript-eslint/parser': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/type-utils': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/utils': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/visitor-keys': 8.18.0 + eslint: 9.17.0 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 ts-api-utils: 1.4.3(typescript@5.7.2) - optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.16.0(eslint@9.16.0)(typescript@5.7.2)': + '@typescript-eslint/parser@8.18.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: - '@typescript-eslint/scope-manager': 8.16.0 - '@typescript-eslint/types': 8.16.0 - '@typescript-eslint/typescript-estree': 8.16.0(typescript@5.7.2) - '@typescript-eslint/visitor-keys': 8.16.0 - debug: 4.3.7 - eslint: 9.16.0 - optionalDependencies: + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.7.2) + '@typescript-eslint/visitor-keys': 8.18.0 + debug: 4.4.0 + eslint: 9.17.0 typescript: 5.7.2 transitivePeerDependencies: - supports-color @@ -8285,32 +8307,31 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - '@typescript-eslint/scope-manager@8.16.0': + '@typescript-eslint/scope-manager@8.18.0': dependencies: - '@typescript-eslint/types': 8.16.0 - '@typescript-eslint/visitor-keys': 8.16.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/visitor-keys': 8.18.0 - '@typescript-eslint/type-utils@8.16.0(eslint@9.16.0)(typescript@5.7.2)': + '@typescript-eslint/type-utils@8.18.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.16.0(typescript@5.7.2) - '@typescript-eslint/utils': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - debug: 4.3.7 - eslint: 9.16.0 + '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.7.2) + '@typescript-eslint/utils': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + debug: 4.4.0 + eslint: 9.17.0 ts-api-utils: 1.4.3(typescript@5.7.2) - optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: - supports-color '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@8.16.0': {} + '@typescript-eslint/types@8.18.0': {} '@typescript-eslint/typescript-estree@7.18.0(typescript@5.7.2)': dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.3.7 + debug: 4.4.0 globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.5 @@ -8321,40 +8342,38 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.16.0(typescript@5.7.2)': + '@typescript-eslint/typescript-estree@8.18.0(typescript@5.7.2)': dependencies: - '@typescript-eslint/types': 8.16.0 - '@typescript-eslint/visitor-keys': 8.16.0 - debug: 4.3.7 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/visitor-keys': 8.18.0 + debug: 4.4.0 fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 ts-api-utils: 1.4.3(typescript@5.7.2) - optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.18.0(eslint@9.16.0)(typescript@5.7.2)': + '@typescript-eslint/utils@7.18.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0) '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.7.2) - eslint: 9.16.0 + eslint: 9.17.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@8.16.0(eslint@9.16.0)(typescript@5.7.2)': + '@typescript-eslint/utils@8.18.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0) - '@typescript-eslint/scope-manager': 8.16.0 - '@typescript-eslint/types': 8.16.0 - '@typescript-eslint/typescript-estree': 8.16.0(typescript@5.7.2) - eslint: 9.16.0 - optionalDependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0) + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.7.2) + eslint: 9.17.0 typescript: 5.7.2 transitivePeerDependencies: - supports-color @@ -8364,76 +8383,76 @@ snapshots: '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.16.0': + '@typescript-eslint/visitor-keys@8.18.0': dependencies: - '@typescript-eslint/types': 8.16.0 + '@typescript-eslint/types': 8.18.0 eslint-visitor-keys: 4.2.0 - '@ungap/structured-clone@1.2.0': {} + '@ungap/structured-clone@1.2.1': {} - '@vitejs/plugin-legacy@6.0.0(terser@5.36.0)(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))': + '@vitejs/plugin-legacy@6.0.0(terser@5.36.0)(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))': dependencies: '@babel/core': 7.26.0 '@babel/preset-env': 7.26.0(@babel/core@7.26.0) - browserslist: 4.24.2 - browserslist-to-esbuild: 2.1.1(browserslist@4.24.2) + browserslist: 4.24.3 + browserslist-to-esbuild: 2.1.1(browserslist@4.24.3) core-js: 3.39.0 - magic-string: 0.30.14 + magic-string: 0.30.15 regenerator-runtime: 0.14.1 systemjs: 6.15.1 terser: 5.36.0 - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) transitivePeerDependencies: - supports-color - '@vitejs/plugin-react@4.3.4(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))': + '@vitejs/plugin-react@4.3.4(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) transitivePeerDependencies: - supports-color - '@vitest/expect@2.1.6': + '@vitest/expect@3.0.0-beta.2': dependencies: - '@vitest/spy': 2.1.6 - '@vitest/utils': 2.1.6 + '@vitest/spy': 3.0.0-beta.2 + '@vitest/utils': 3.0.0-beta.2 chai: 5.1.2 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.6(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))': + '@vitest/mocker@3.0.0-beta.2(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))': dependencies: - '@vitest/spy': 2.1.6 + '@vitest/spy': 3.0.0-beta.2 estree-walker: 3.0.3 - magic-string: 0.30.14 + magic-string: 0.30.15 optionalDependencies: - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) - '@vitest/pretty-format@2.1.6': + '@vitest/pretty-format@3.0.0-beta.2': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.1.6': + '@vitest/runner@3.0.0-beta.2': dependencies: - '@vitest/utils': 2.1.6 + '@vitest/utils': 3.0.0-beta.2 pathe: 1.1.2 - '@vitest/snapshot@2.1.6': + '@vitest/snapshot@3.0.0-beta.2': dependencies: - '@vitest/pretty-format': 2.1.6 - magic-string: 0.30.14 + '@vitest/pretty-format': 3.0.0-beta.2 + magic-string: 0.30.15 pathe: 1.1.2 - '@vitest/spy@2.1.6': + '@vitest/spy@3.0.0-beta.2': dependencies: tinyspy: 3.0.2 - '@vitest/utils@2.1.6': + '@vitest/utils@3.0.0-beta.2': dependencies: - '@vitest/pretty-format': 2.1.6 + '@vitest/pretty-format': 3.0.0-beta.2 loupe: 3.1.2 tinyrainbow: 1.2.0 @@ -8470,11 +8489,7 @@ snapshots: transitivePeerDependencies: - supports-color - agent-base@7.1.1: - dependencies: - debug: 4.3.7 - transitivePeerDependencies: - - supports-color + agent-base@7.1.3: {} aggregate-error@3.1.0: dependencies: @@ -8530,63 +8545,62 @@ snapshots: array-buffer-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-array-buffer: 3.0.4 array-ify@1.0.0: {} array-includes@3.1.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - is-string: 1.0.7 + get-intrinsic: 1.2.6 + is-string: 1.1.1 array-union@2.1.0: {} array.prototype.findlast@1.2.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-shim-unscopables: 1.0.2 - array.prototype.flat@1.3.2: + array.prototype.flat@1.3.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-shim-unscopables: 1.0.2 - array.prototype.flatmap@1.3.2: + array.prototype.flatmap@1.3.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-shim-unscopables: 1.0.2 array.prototype.tosorted@1.1.4: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-shim-unscopables: 1.0.2 - arraybuffer.prototype.slice@1.0.3: + arraybuffer.prototype.slice@1.0.4: dependencies: array-buffer-byte-length: 1.0.1 - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 arrify@1.0.1: {} @@ -8617,8 +8631,8 @@ snapshots: autoprefixer@10.4.20(postcss@8.4.49): dependencies: - browserslist: 4.24.2 - caniuse-lite: 1.0.30001684 + browserslist: 4.24.3 + caniuse-lite: 1.0.30001688 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -8631,7 +8645,7 @@ snapshots: babel-plugin-polyfill-corejs2@0.4.12(@babel/core@7.26.0): dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/core': 7.26.0 '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0) semver: 6.3.1 @@ -8653,9 +8667,9 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-react-compiler@0.0.0-experimental-df7b47d-20241124: + babel-plugin-react-compiler@0.0.0-experimental-ba7b8e5-20241213: dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 bail@2.0.2: {} @@ -8686,7 +8700,7 @@ snapshots: chalk: 5.3.0 cli-boxes: 3.0.0 string-width: 7.2.0 - type-fest: 4.29.0 + type-fest: 4.30.1 widest-line: 5.0.0 wrap-ansi: 9.0.0 @@ -8715,17 +8729,17 @@ snapshots: dependencies: fill-range: 7.1.1 - browserslist-to-esbuild@2.1.1(browserslist@4.24.2): + browserslist-to-esbuild@2.1.1(browserslist@4.24.3): dependencies: - browserslist: 4.24.2 + browserslist: 4.24.3 meow: 13.2.0 - browserslist@4.24.2: + browserslist@4.24.3: dependencies: - caniuse-lite: 1.0.30001684 - electron-to-chromium: 1.5.67 - node-releases: 2.0.18 - update-browserslist-db: 1.1.1(browserslist@4.24.2) + caniuse-lite: 1.0.30001688 + electron-to-chromium: 1.5.73 + node-releases: 2.0.19 + update-browserslist-db: 1.1.1(browserslist@4.24.3) buffer-crc32@0.2.13: {} @@ -8742,14 +8756,23 @@ snapshots: cac@6.7.14: {} - call-bind@1.0.7: + call-bind-apply-helpers@1.0.1: dependencies: - es-define-property: 1.0.0 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.4 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-define-property: 1.0.1 + get-intrinsic: 1.2.6 set-function-length: 1.2.2 + call-bound@1.0.3: + dependencies: + call-bind-apply-helpers: 1.0.1 + get-intrinsic: 1.2.6 + callsites@3.1.0: {} camelcase-keys@6.2.2: @@ -8764,7 +8787,7 @@ snapshots: camelcase@8.0.0: {} - caniuse-lite@1.0.30001684: {} + caniuse-lite@1.0.30001688: {} capacitor-android-nav-mode@1.0.0(@capacitor/core@6.2.0): dependencies: @@ -8883,7 +8906,7 @@ snapshots: chrome-launcher@0.15.2: dependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 escape-string-regexp: 4.0.0 is-wsl: 2.2.0 lighthouse-logger: 1.4.2 @@ -9101,7 +9124,7 @@ snapshots: core-js-compat@3.39.0: dependencies: - browserslist: 4.24.2 + browserslist: 4.24.3 core-js@3.39.0: {} @@ -9166,25 +9189,25 @@ snapshots: data-urls@5.0.0: dependencies: whatwg-mimetype: 4.0.0 - whatwg-url: 14.0.0 + whatwg-url: 14.1.0 data-view-buffer@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 data-view-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 data-view-byte-offset@1.0.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 date-fns@4.1.0: {} @@ -9198,7 +9221,7 @@ snapshots: dependencies: ms: 2.1.2 - debug@4.3.7: + debug@4.4.0: dependencies: ms: 2.1.3 @@ -9236,9 +9259,9 @@ snapshots: define-data-property@1.1.4: dependencies: - es-define-property: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 - gopd: 1.1.0 + gopd: 1.2.0 define-lazy-prop@2.0.0: {} @@ -9338,7 +9361,13 @@ snapshots: dot-prop@9.0.0: dependencies: - type-fest: 4.29.0 + type-fest: 4.30.1 + + dunder-proto@1.0.0: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 duplexer2@0.1.4: dependencies: @@ -9357,7 +9386,7 @@ snapshots: dependencies: jake: 10.9.2 - electron-to-chromium@1.5.67: {} + electron-to-chromium@1.5.73: {} elementtree@0.1.7: dependencies: @@ -9391,44 +9420,44 @@ snapshots: es-abstract@1.23.5: dependencies: array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 + arraybuffer.prototype.slice: 1.0.4 available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 data-view-buffer: 1.0.1 data-view-byte-length: 1.0.1 data-view-byte-offset: 1.0.0 - es-define-property: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-set-tostringtag: 2.0.3 es-to-primitive: 1.3.0 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.4 + function.prototype.name: 1.1.7 + get-intrinsic: 1.2.6 get-symbol-description: 1.0.2 globalthis: 1.0.4 - gopd: 1.1.0 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + has-proto: 1.2.0 + has-symbols: 1.1.0 hasown: 2.0.2 - internal-slot: 1.0.7 + internal-slot: 1.1.0 is-array-buffer: 3.0.4 is-callable: 1.2.7 - is-data-view: 1.0.1 + is-data-view: 1.0.2 is-negative-zero: 2.0.3 - is-regex: 1.2.0 + is-regex: 1.2.1 is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 + is-string: 1.1.1 is-typed-array: 1.1.13 - is-weakref: 1.0.2 + is-weakref: 1.1.0 object-inspect: 1.13.3 object-keys: 1.1.1 object.assign: 4.1.5 regexp.prototype.flags: 1.5.3 - safe-array-concat: 1.1.2 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.9 - string.prototype.trimend: 1.0.8 + safe-array-concat: 1.1.3 + safe-regex-test: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 string.prototype.trimstart: 1.0.8 typed-array-buffer: 1.0.2 typed-array-byte-length: 1.0.1 @@ -9437,29 +9466,27 @@ snapshots: unbox-primitive: 1.0.2 which-typed-array: 1.1.16 - es-define-property@1.0.0: - dependencies: - get-intrinsic: 1.2.4 + es-define-property@1.0.1: {} es-errors@1.3.0: {} es-iterator-helpers@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-set-tostringtag: 2.0.3 function-bind: 1.1.2 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 globalthis: 1.0.4 - gopd: 1.1.0 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - iterator.prototype: 1.1.3 - safe-array-concat: 1.1.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.4 + safe-array-concat: 1.1.3 es-module-lexer@1.5.4: {} @@ -9469,7 +9496,7 @@ snapshots: es-set-tostringtag@2.0.3: dependencies: - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 has-tostringtag: 1.0.2 hasown: 2.0.2 @@ -9480,10 +9507,10 @@ snapshots: es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 + is-date-object: 1.1.0 + is-symbol: 1.1.1 - es-toolkit@1.28.0: {} + es-toolkit@1.30.1: {} esbuild@0.24.0: optionalDependencies: @@ -9530,45 +9557,45 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-config-prettier@9.1.0(eslint@9.16.0): + eslint-config-prettier@9.1.0(eslint@9.17.0): dependencies: - eslint: 9.16.0 + eslint: 9.17.0 - eslint-plugin-perfectionist@4.1.2(eslint@9.16.0)(typescript@5.7.2): + eslint-plugin-perfectionist@4.3.0(eslint@9.17.0)(typescript@5.7.2): dependencies: - '@typescript-eslint/types': 8.16.0 - '@typescript-eslint/utils': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - eslint: 9.16.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/utils': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + eslint: 9.17.0 natural-orderby: 5.0.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-react-compiler@0.0.0-experimental-df7b47d-20241124(eslint@9.16.0): + eslint-plugin-react-compiler@0.0.0-experimental-ba7b8e5-20241213(eslint@9.17.0): dependencies: '@babel/core': 7.26.0 - '@babel/parser': 7.26.2 - '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0) - eslint: 9.16.0 + '@babel/parser': 7.26.3 + '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.26.0) + eslint: 9.17.0 hermes-parser: 0.25.1 - zod: 3.23.8 - zod-validation-error: 3.4.0(zod@3.23.8) + zod: 3.24.1 + zod-validation-error: 3.4.0(zod@3.24.1) transitivePeerDependencies: - supports-color - eslint-plugin-react-hooks@0.0.0-experimental-7670501b-20241124(eslint@9.16.0): + eslint-plugin-react-hooks@0.0.0-experimental-4dff0e62-20241213(eslint@9.17.0): dependencies: - eslint: 9.16.0 + eslint: 9.17.0 - eslint-plugin-react@7.37.2(eslint@9.16.0): + eslint-plugin-react@7.37.2(eslint@9.17.0): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.2 + array.prototype.flatmap: 1.3.3 array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.2.0 - eslint: 9.16.0 + eslint: 9.17.0 estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -9582,12 +9609,12 @@ snapshots: string.prototype.matchall: 4.0.11 string.prototype.repeat: 1.0.0 - eslint-plugin-vitest@0.5.4(eslint@9.16.0)(typescript@5.7.2)(vitest@2.1.6(@types/node@22.10.1)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)): + eslint-plugin-vitest@0.5.4(eslint@9.17.0)(typescript@5.7.2)(vitest@3.0.0-beta.2(@types/node@22.10.2)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)): dependencies: - '@typescript-eslint/utils': 7.18.0(eslint@9.16.0)(typescript@5.7.2) - eslint: 9.16.0 + '@typescript-eslint/utils': 7.18.0(eslint@9.17.0)(typescript@5.7.2) + eslint: 9.17.0 optionalDependencies: - vitest: 2.1.6(@types/node@22.10.1)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vitest: 3.0.0-beta.2(@types/node@22.10.2)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) transitivePeerDependencies: - supports-color - typescript @@ -9601,15 +9628,15 @@ snapshots: eslint-visitor-keys@4.2.0: {} - eslint@9.16.0: + eslint@9.17.0: dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0) '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.19.0 - '@eslint/core': 0.9.0 + '@eslint/config-array': 0.19.1 + '@eslint/core': 0.9.1 '@eslint/eslintrc': 3.2.0 - '@eslint/js': 9.16.0 - '@eslint/plugin-kit': 0.2.3 + '@eslint/js': 9.17.0 + '@eslint/plugin-kit': 0.2.4 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.1 @@ -9618,7 +9645,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.3.7 + debug: 4.4.0 escape-string-regexp: 4.0.0 eslint-scope: 8.2.0 eslint-visitor-keys: 4.2.0 @@ -9784,7 +9811,7 @@ snapshots: dependencies: chalk: 4.1.2 commander: 5.1.0 - debug: 4.3.7 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -9843,12 +9870,6 @@ snapshots: fs-constants@1.0.0: {} - fs-extra@11.2.0: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - fs-extra@9.1.0: dependencies: at-least-node: 1.0.0 @@ -9870,12 +9891,13 @@ snapshots: function-bind@1.1.2: {} - function.prototype.name@1.1.6: + function.prototype.name@1.1.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 functions-have-names@1.2.3: {} @@ -9885,13 +9907,18 @@ snapshots: get-east-asian-width@1.3.0: {} - get-intrinsic@1.2.4: + get-intrinsic@1.2.6: dependencies: + call-bind-apply-helpers: 1.0.1 + dunder-proto: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 + es-object-atoms: 1.0.0 function-bind: 1.1.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + gopd: 1.2.0 + has-symbols: 1.1.0 hasown: 2.0.2 + math-intrinsics: 1.0.0 get-own-enumerable-property-symbols@3.0.2: {} @@ -9912,16 +9939,15 @@ snapshots: get-symbol-description@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 - get-uri@6.0.3: + get-uri@6.0.4: dependencies: basic-ftp: 5.0.5 data-uri-to-buffer: 6.0.2 - debug: 4.3.7 - fs-extra: 11.2.0 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -10000,7 +10026,7 @@ snapshots: globalthis@1.0.4: dependencies: define-properties: 1.2.1 - gopd: 1.1.0 + gopd: 1.2.0 globby@11.1.0: dependencies: @@ -10020,9 +10046,7 @@ snapshots: slash: 5.1.0 unicorn-magic: 0.1.0 - gopd@1.1.0: - dependencies: - get-intrinsic: 1.2.4 + gopd@1.2.0: {} graceful-fs@4.2.10: {} @@ -10060,15 +10084,17 @@ snapshots: has-property-descriptors@1.0.2: dependencies: - es-define-property: 1.0.0 + es-define-property: 1.0.1 - has-proto@1.0.3: {} + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.0 - has-symbols@1.0.3: {} + has-symbols@1.1.0: {} has-tostringtag@1.0.2: dependencies: - has-symbols: 1.0.3 + has-symbols: 1.1.0 hasown@2.0.2: dependencies: @@ -10136,7 +10162,7 @@ snapshots: hast-util-is-body-ok-link: 3.0.1 hast-util-is-element: 3.0.0 - hast-util-to-html@9.0.3: + hast-util-to-html@9.0.4: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 @@ -10174,9 +10200,9 @@ snapshots: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 - '@ungap/structured-clone': 1.2.0 + '@ungap/structured-clone': 1.2.1 hast-util-phrasing: 3.0.1 - hast-util-to-html: 9.0.3 + hast-util-to-html: 9.0.4 hast-util-to-text: 4.0.2 hast-util-whitespace: 3.0.0 mdast-util-phrasing: 4.1.0 @@ -10261,8 +10287,8 @@ snapshots: http-proxy-agent@7.0.2: dependencies: - agent-base: 7.1.1 - debug: 4.3.7 + agent-base: 7.1.3 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -10273,10 +10299,10 @@ snapshots: transitivePeerDependencies: - supports-color - https-proxy-agent@7.0.5: + https-proxy-agent@7.0.6: dependencies: - agent-base: 7.1.1 - debug: 4.3.7 + agent-base: 7.1.3 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -10371,17 +10397,17 @@ snapshots: wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.2 - internal-slot@1.0.7: + internal-slot@1.1.0: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 interpret@1.4.0: {} ionicons@7.4.0: dependencies: - '@stencil/core': 4.22.3 + '@stencil/core': 4.23.0 ip-address@9.0.5: dependencies: @@ -10397,8 +10423,8 @@ snapshots: is-array-buffer@3.0.4: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bind: 1.0.8 + get-intrinsic: 1.2.6 is-arrayish@0.2.1: {} @@ -10406,7 +10432,7 @@ snapshots: dependencies: has-tostringtag: 1.0.2 - is-bigint@1.0.4: + is-bigint@1.1.0: dependencies: has-bigints: 1.0.2 @@ -10414,9 +10440,9 @@ snapshots: dependencies: binary-extensions: 2.3.0 - is-boolean-object@1.1.2: + is-boolean-object@1.2.1: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-buffer@1.1.6: {} @@ -10425,16 +10451,19 @@ snapshots: is-callable@1.2.7: {} - is-core-module@2.15.1: + is-core-module@2.16.0: dependencies: hasown: 2.0.2 - is-data-view@1.0.1: + is-data-view@1.0.2: dependencies: + call-bound: 1.0.3 + get-intrinsic: 1.2.6 is-typed-array: 1.1.13 - is-date-object@1.0.5: + is-date-object@1.1.0: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-decimal@2.0.1: {} @@ -10449,7 +10478,7 @@ snapshots: is-finalizationregistry@1.1.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-fullwidth-code-point@3.0.0: {} @@ -10486,8 +10515,9 @@ snapshots: is-npm@6.0.0: {} - is-number-object@1.0.7: + is-number-object@1.1.1: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-number@7.0.0: {} @@ -10508,10 +10538,10 @@ snapshots: is-potential-custom-element-name@1.0.1: {} - is-regex@1.2.0: + is-regex@1.2.1: dependencies: - call-bind: 1.0.7 - gopd: 1.1.0 + call-bound: 1.0.3 + gopd: 1.2.0 has-tostringtag: 1.0.2 hasown: 2.0.2 @@ -10521,7 +10551,7 @@ snapshots: is-shared-array-buffer@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-ssh@1.4.0: dependencies: @@ -10533,13 +10563,16 @@ snapshots: is-stream@3.0.0: {} - is-string@1.0.7: + is-string@1.1.1: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 - is-symbol@1.0.4: + is-symbol@1.1.1: dependencies: - has-symbols: 1.0.3 + call-bound: 1.0.3 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 is-text-path@1.0.1: dependencies: @@ -10561,14 +10594,14 @@ snapshots: is-weakmap@2.0.2: {} - is-weakref@1.0.2: + is-weakref@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 is-weakset@2.0.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bind: 1.0.8 + get-intrinsic: 1.2.6 is-what@3.14.1: optional: true @@ -10599,12 +10632,13 @@ snapshots: lodash.isstring: 4.0.1 lodash.uniqby: 4.7.0 - iterator.prototype@1.1.3: + iterator.prototype@1.1.4: dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.7 + define-data-property: 1.1.4 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.6 + has-symbols: 1.1.0 + reflect.getprototypeof: 1.0.8 set-function-name: 2.0.2 jackspeak@3.4.3: @@ -10662,7 +10696,7 @@ snapshots: form-data: 4.0.1 html-encoding-sniffer: 4.0.0 http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 + https-proxy-agent: 7.0.6 is-potential-custom-element-name: 1.0.1 nwsapi: 2.2.16 parse5: 7.2.1 @@ -10674,7 +10708,7 @@ snapshots: webidl-conversions: 7.0.0 whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 - whatwg-url: 14.0.0 + whatwg-url: 14.1.0 ws: 8.18.0 xml-name-validator: 5.0.0 transitivePeerDependencies: @@ -10684,6 +10718,8 @@ snapshots: jsesc@3.0.2: {} + jsesc@3.1.0: {} + json-buffer@3.0.1: {} json-parse-better-errors@1.0.2: {} @@ -10715,7 +10751,7 @@ snapshots: jsx-ast-utils@3.3.5: dependencies: array-includes: 3.1.8 - array.prototype.flat: 1.3.2 + array.prototype.flat: 1.3.3 object.assign: 4.1.5 object.values: 1.2.0 @@ -10733,7 +10769,7 @@ snapshots: kleur@4.1.5: {} - ky@1.7.2: {} + ky@1.7.3: {} latest-version@9.0.0: dependencies: @@ -10955,7 +10991,7 @@ snapshots: dependencies: sourcemap-codec: 1.4.8 - magic-string@0.30.14: + magic-string@0.30.15: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -10975,6 +11011,8 @@ snapshots: marky@1.2.5: {} + math-intrinsics@1.0.0: {} + mdast-squeeze-paragraphs@6.0.0: dependencies: '@types/mdast': 4.0.4 @@ -11037,7 +11075,7 @@ snapshots: devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 mdast-util-to-markdown: 2.1.2 - parse-entities: 4.0.1 + parse-entities: 4.0.2 stringify-entities: 4.0.4 transitivePeerDependencies: - supports-color @@ -11063,7 +11101,7 @@ snapshots: devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 mdast-util-to-markdown: 2.1.2 - parse-entities: 4.0.1 + parse-entities: 4.0.2 stringify-entities: 4.0.4 unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 @@ -11090,7 +11128,7 @@ snapshots: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 - '@ungap/structured-clone': 1.2.0 + '@ungap/structured-clone': 1.2.1 devlop: 1.1.0 micromark-util-sanitize-uri: 2.0.1 trim-lines: 3.0.1 @@ -11201,7 +11239,7 @@ snapshots: micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 micromark-util-types: 2.0.1 - parse-entities: 4.0.1 + parse-entities: 4.0.2 micromark-factory-destination@2.0.1: dependencies: @@ -11298,7 +11336,7 @@ snapshots: micromark@4.0.1: dependencies: '@types/debug': 4.1.12 - debug: 4.3.7 + debug: 4.4.0 decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.2 @@ -11394,7 +11432,7 @@ snapshots: mkdirp@3.0.1: {} - modern-screenshot@4.5.4: {} + modern-screenshot@4.5.5: {} modify-values@1.0.1: {} @@ -11415,7 +11453,7 @@ snapshots: '@ionic/utils-fs': 3.1.7 '@ionic/utils-terminal': 2.3.5 bplist-parser: 0.3.2 - debug: 4.3.7 + debug: 4.4.0 elementtree: 0.1.7 ini: 4.1.3 plist: 3.1.0 @@ -11456,7 +11494,7 @@ snapshots: dependencies: whatwg-url: 5.0.0 - node-releases@2.0.18: {} + node-releases@2.0.19: {} nopt@7.2.1: dependencies: @@ -11465,14 +11503,14 @@ snapshots: normalize-package-data@2.5.0: dependencies: hosted-git-info: 2.8.9 - resolve: 1.22.8 + resolve: 1.22.9 semver: 5.7.2 validate-npm-package-license: 3.0.4 normalize-package-data@3.0.3: dependencies: hosted-git-info: 4.1.0 - is-core-module: 2.15.1 + is-core-module: 2.16.0 semver: 7.6.3 validate-npm-package-license: 3.0.4 @@ -11502,27 +11540,27 @@ snapshots: object.assign@4.1.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - has-symbols: 1.0.3 + has-symbols: 1.1.0 object-keys: 1.1.1 object.entries@1.1.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 object.fromentries@2.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 object.values@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -11637,16 +11675,16 @@ snapshots: p-try@2.2.0: {} - pac-proxy-agent@7.0.2: + pac-proxy-agent@7.1.0: dependencies: '@tootallnate/quickjs-emscripten': 0.23.0 - agent-base: 7.1.1 - debug: 4.3.7 - get-uri: 6.0.3 + agent-base: 7.1.3 + debug: 4.4.0 + get-uri: 6.0.4 http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 + https-proxy-agent: 7.0.6 pac-resolver: 7.0.1 - socks-proxy-agent: 8.0.4 + socks-proxy-agent: 8.0.5 transitivePeerDependencies: - supports-color @@ -11659,7 +11697,7 @@ snapshots: package-json@10.0.1: dependencies: - ky: 1.7.2 + ky: 1.7.3 registry-auth-token: 5.0.3 registry-url: 6.0.1 semver: 7.6.3 @@ -11668,10 +11706,9 @@ snapshots: dependencies: callsites: 3.1.0 - parse-entities@4.0.1: + parse-entities@4.0.2: dependencies: '@types/unist': 2.0.11 - character-entities: 2.0.2 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 decode-named-character-reference: 1.0.2 @@ -11765,11 +11802,11 @@ snapshots: dependencies: find-up: 4.1.0 - playwright-core@1.49.0: {} + playwright-core@1.49.1: {} - playwright@1.49.0: + playwright@1.49.1: dependencies: - playwright-core: 1.49.0 + playwright-core: 1.49.1 optionalDependencies: fsevents: 2.3.2 @@ -11785,7 +11822,7 @@ snapshots: dependencies: postcss: 8.4.49 - postcss-modules-local-by-default@4.1.0(postcss@8.4.49): + postcss-modules-local-by-default@4.2.0(postcss@8.4.49): dependencies: icss-utils: 5.1.0(postcss@8.4.49) postcss: 8.4.49 @@ -11819,7 +11856,7 @@ snapshots: prettier@2.8.8: {} - prettier@3.4.1: {} + prettier@3.4.2: {} pretty-bytes@5.6.0: {} @@ -11860,14 +11897,27 @@ snapshots: proxy-agent@6.4.0: dependencies: - agent-base: 7.1.1 - debug: 4.3.7 + agent-base: 7.1.3 + debug: 4.4.0 http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 + https-proxy-agent: 7.0.6 lru-cache: 7.18.3 - pac-proxy-agent: 7.0.2 + pac-proxy-agent: 7.1.0 proxy-from-env: 1.1.0 - socks-proxy-agent: 8.0.4 + socks-proxy-agent: 8.0.5 + transitivePeerDependencies: + - supports-color + + proxy-agent@6.5.0: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + lru-cache: 7.18.3 + pac-proxy-agent: 7.1.0 + proxy-from-env: 1.1.0 + socks-proxy-agent: 8.0.5 transitivePeerDependencies: - supports-color @@ -11931,7 +11981,7 @@ snapshots: qs@6.13.1: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 queue-microtask@1.2.3: {} @@ -11948,40 +11998,40 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-animate-height@3.2.3(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124): + react-animate-height@3.2.3(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) - react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124): + react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 - scheduler: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 + scheduler: 0.0.0-experimental-4dff0e62-20241213 - react-error-boundary@4.1.2(react@0.0.0-experimental-7670501b-20241124): + react-error-boundary@4.1.2(react@0.0.0-experimental-4dff0e62-20241213): dependencies: '@babel/runtime': 7.26.0 - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 - react-intersection-observer@9.13.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124): + react-intersection-observer@9.14.0(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 optionalDependencies: - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) react-is@16.13.1: {} react-is@17.0.2: {} - react-markdown@9.0.1(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124): + react-markdown@9.0.1(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213): dependencies: '@types/hast': 3.0.4 - '@types/react': 18.3.12 + '@types/react': 18.3.16 devlop: 1.1.0 hast-util-to-jsx-runtime: 2.3.2 html-url-attributes: 3.0.1 mdast-util-to-hast: 13.2.0 - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 remark-parse: 11.0.0 remark-rehype: 11.1.1 unified: 11.0.5 @@ -11990,34 +12040,34 @@ snapshots: transitivePeerDependencies: - supports-color - react-redux@9.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124)(redux@5.0.1): + react-redux@9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1): dependencies: - '@types/use-sync-external-store': 0.0.3 - react: 0.0.0-experimental-7670501b-20241124 - use-sync-external-store: 1.2.2(react@0.0.0-experimental-7670501b-20241124) + '@types/use-sync-external-store': 0.0.6 + react: 0.0.0-experimental-4dff0e62-20241213 + use-sync-external-store: 1.4.0(react@0.0.0-experimental-4dff0e62-20241213) optionalDependencies: - '@types/react': 18.3.12 + '@types/react': 18.3.16 redux: 5.0.1 react-refresh@0.14.2: {} - react-reverse-portal@2.1.2(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124): + react-reverse-portal@2.1.2(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) - react-router-dom@5.3.4(react@0.0.0-experimental-7670501b-20241124): + react-router-dom@5.3.4(react@0.0.0-experimental-4dff0e62-20241213): dependencies: '@babel/runtime': 7.24.7 history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 0.0.0-experimental-7670501b-20241124 - react-router: 5.3.4(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + react-router: 5.3.4(react@0.0.0-experimental-4dff0e62-20241213) tiny-invariant: 1.3.3 tiny-warning: 1.0.3 - react-router@5.3.4(react@0.0.0-experimental-7670501b-20241124): + react-router@5.3.4(react@0.0.0-experimental-4dff0e62-20241213): dependencies: '@babel/runtime': 7.25.7 history: 4.10.1 @@ -12025,26 +12075,26 @@ snapshots: loose-envify: 1.4.0 path-to-regexp: 1.8.0 prop-types: 15.8.1 - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 react-is: 16.13.1 tiny-invariant: 1.3.3 tiny-warning: 1.0.3 - react-textarea-autosize@8.5.5(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124): + react-textarea-autosize@8.5.6(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213): dependencies: '@babel/runtime': 7.26.0 - react: 0.0.0-experimental-7670501b-20241124 - use-composed-ref: 1.3.0(react@0.0.0-experimental-7670501b-20241124) - use-latest: 1.2.1(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + use-composed-ref: 1.4.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213) + use-latest: 1.3.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213) transitivePeerDependencies: - '@types/react' - react-transition-state@2.2.0(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124): + react-transition-state@2.2.0(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) - react@0.0.0-experimental-7670501b-20241124: {} + react@0.0.0-experimental-4dff0e62-20241213: {} read-pkg-up@3.0.0: dependencies: @@ -12095,7 +12145,7 @@ snapshots: rechoir@0.6.2: dependencies: - resolve: 1.22.8 + resolve: 1.22.9 redent@3.0.0: dependencies: @@ -12108,15 +12158,16 @@ snapshots: redux@5.0.1: {} - reflect.getprototypeof@1.0.7: + reflect.getprototypeof@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 + dunder-proto: 1.0.0 es-abstract: 1.23.5 es-errors: 1.3.0 - get-intrinsic: 1.2.4 - gopd: 1.1.0 - which-builtin-type: 1.2.0 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + which-builtin-type: 1.2.1 regenerate-unicode-properties@10.2.0: dependencies: @@ -12134,7 +12185,7 @@ snapshots: regexp.prototype.flags@1.5.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-errors: 1.3.0 set-function-name: 2.0.2 @@ -12270,15 +12321,15 @@ snapshots: resolve-pathname@3.0.0: {} - resolve@1.22.8: + resolve@1.22.9: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@2.0.0-next.5: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -12308,28 +12359,29 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - rollup@4.28.0: + rollup@4.28.1: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.28.0 - '@rollup/rollup-android-arm64': 4.28.0 - '@rollup/rollup-darwin-arm64': 4.28.0 - '@rollup/rollup-darwin-x64': 4.28.0 - '@rollup/rollup-freebsd-arm64': 4.28.0 - '@rollup/rollup-freebsd-x64': 4.28.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.28.0 - '@rollup/rollup-linux-arm-musleabihf': 4.28.0 - '@rollup/rollup-linux-arm64-gnu': 4.28.0 - '@rollup/rollup-linux-arm64-musl': 4.28.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.28.0 - '@rollup/rollup-linux-riscv64-gnu': 4.28.0 - '@rollup/rollup-linux-s390x-gnu': 4.28.0 - '@rollup/rollup-linux-x64-gnu': 4.28.0 - '@rollup/rollup-linux-x64-musl': 4.28.0 - '@rollup/rollup-win32-arm64-msvc': 4.28.0 - '@rollup/rollup-win32-ia32-msvc': 4.28.0 - '@rollup/rollup-win32-x64-msvc': 4.28.0 + '@rollup/rollup-android-arm-eabi': 4.28.1 + '@rollup/rollup-android-arm64': 4.28.1 + '@rollup/rollup-darwin-arm64': 4.28.1 + '@rollup/rollup-darwin-x64': 4.28.1 + '@rollup/rollup-freebsd-arm64': 4.28.1 + '@rollup/rollup-freebsd-x64': 4.28.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.28.1 + '@rollup/rollup-linux-arm-musleabihf': 4.28.1 + '@rollup/rollup-linux-arm64-gnu': 4.28.1 + '@rollup/rollup-linux-arm64-musl': 4.28.1 + '@rollup/rollup-linux-loongarch64-gnu': 4.28.1 + '@rollup/rollup-linux-powerpc64le-gnu': 4.28.1 + '@rollup/rollup-linux-riscv64-gnu': 4.28.1 + '@rollup/rollup-linux-s390x-gnu': 4.28.1 + '@rollup/rollup-linux-x64-gnu': 4.28.1 + '@rollup/rollup-linux-x64-musl': 4.28.1 + '@rollup/rollup-win32-arm64-msvc': 4.28.1 + '@rollup/rollup-win32-ia32-msvc': 4.28.1 + '@rollup/rollup-win32-x64-msvc': 4.28.1 fsevents: 2.3.3 rrweb-cssom@0.7.1: {} @@ -12354,22 +12406,23 @@ snapshots: dependencies: tslib: 2.8.1 - safe-array-concat@1.1.2: + safe-array-concat@1.1.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 + has-symbols: 1.1.0 isarray: 2.0.5 safe-buffer@5.1.2: {} safe-buffer@5.2.1: {} - safe-regex-test@1.0.3: + safe-regex-test@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 es-errors: 1.3.0 - is-regex: 1.2.0 + is-regex: 1.2.1 safer-buffer@2.1.2: {} @@ -12393,7 +12446,7 @@ snapshots: dependencies: xmlchars: 2.2.0 - scheduler@0.0.0-experimental-7670501b-20241124: {} + scheduler@0.0.0-experimental-4dff0e62-20241213: {} semver@5.7.2: {} @@ -12412,8 +12465,8 @@ snapshots: define-data-property: 1.1.4 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.4 - gopd: 1.1.0 + get-intrinsic: 1.2.6 + gopd: 1.2.0 has-property-descriptors: 1.0.2 set-function-name@2.0.2: @@ -12435,12 +12488,33 @@ snapshots: interpret: 1.4.0 rechoir: 0.6.2 - side-channel@1.0.6: + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.3 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + object-inspect: 1.13.3 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + object-inspect: 1.13.3 + side-channel-map: 1.0.1 + + side-channel@1.1.0: dependencies: - call-bind: 1.0.7 es-errors: 1.3.0 - get-intrinsic: 1.2.4 object-inspect: 1.13.3 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 siginfo@2.0.0: {} @@ -12475,10 +12549,10 @@ snapshots: dot-case: 3.0.4 tslib: 2.8.1 - socks-proxy-agent@8.0.4: + socks-proxy-agent@8.0.5: dependencies: - agent-base: 7.1.1 - debug: 4.3.7 + agent-base: 7.1.3 + debug: 4.4.0 socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -12569,40 +12643,44 @@ snapshots: string.prototype.matchall@4.0.11: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - gopd: 1.1.0 - has-symbols: 1.0.3 - internal-slot: 1.0.7 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 regexp.prototype.flags: 1.5.3 set-function-name: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 string.prototype.repeat@1.0.0: dependencies: define-properties: 1.2.1 es-abstract: 1.23.5 - string.prototype.trim@1.2.9: + string.prototype.trim@1.2.10: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + define-data-property: 1.1.4 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 + has-property-descriptors: 1.0.2 - string.prototype.trimend@1.0.8: + string.prototype.trimend@1.0.9: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.0.0 string.prototype.trimstart@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -12658,7 +12736,7 @@ snapshots: stylus@0.62.0: dependencies: '@adobe/css-tools': 4.3.3 - debug: 4.3.7 + debug: 4.4.0 glob: 7.2.3 sax: 1.3.0 source-map: 0.7.4 @@ -12670,7 +12748,7 @@ snapshots: dependencies: component-emitter: 1.3.1 cookiejar: 2.1.4 - debug: 4.3.7 + debug: 4.4.0 fast-safe-stringify: 2.1.1 form-data: 4.0.1 formidable: 2.1.2 @@ -12777,11 +12855,11 @@ snapshots: tinyspy@3.0.2: {} - tldts-core@6.1.65: {} + tldts-core@6.1.68: {} - tldts@6.1.65: + tldts@6.1.68: dependencies: - tldts-core: 6.1.65 + tldts-core: 6.1.68 tmp@0.0.33: dependencies: @@ -12795,7 +12873,7 @@ snapshots: tough-cookie@5.0.0: dependencies: - tldts: 6.1.65 + tldts: 6.1.68 tr46@0.0.3: {} @@ -12821,14 +12899,14 @@ snapshots: dependencies: typescript: 5.7.2 - ts-node@10.9.2(@types/node@22.10.1)(typescript@5.7.2): + ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 22.10.1 + '@types/node': 22.10.2 acorn: 8.14.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -12859,40 +12937,40 @@ snapshots: type-fest@2.19.0: {} - type-fest@4.29.0: {} + type-fest@4.30.1: {} typed-array-buffer@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 is-typed-array: 1.1.13 typed-array-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.1.0 - has-proto: 1.0.3 + gopd: 1.2.0 + has-proto: 1.2.0 is-typed-array: 1.1.13 typed-array-byte-offset@1.0.3: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.1.0 - has-proto: 1.0.3 + gopd: 1.2.0 + has-proto: 1.2.0 is-typed-array: 1.1.13 - reflect.getprototypeof: 1.0.7 + reflect.getprototypeof: 1.0.8 typed-array-length@1.0.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.1.0 + gopd: 1.2.0 is-typed-array: 1.1.13 possible-typed-array-names: 1.0.0 - reflect.getprototypeof: 1.0.7 + reflect.getprototypeof: 1.0.8 typed-css-modules@0.9.1: dependencies: @@ -12905,7 +12983,7 @@ snapshots: mkdirp: 3.0.1 postcss: 8.4.49 postcss-modules-extract-imports: 3.1.0(postcss@8.4.49) - postcss-modules-local-by-default: 4.1.0(postcss@8.4.49) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.49) postcss-modules-scope: 3.2.1(postcss@8.4.49) postcss-modules-values: 4.0.0(postcss@8.4.49) yargs: 17.7.2 @@ -12914,13 +12992,12 @@ snapshots: dependencies: is-typedarray: 1.0.0 - typescript-eslint@8.16.0(eslint@9.16.0)(typescript@5.7.2): + typescript-eslint@8.18.0(eslint@9.17.0)(typescript@5.7.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.16.0)(typescript@5.7.2))(eslint@9.16.0)(typescript@5.7.2) - '@typescript-eslint/parser': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - '@typescript-eslint/utils': 8.16.0(eslint@9.16.0)(typescript@5.7.2) - eslint: 9.16.0 - optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.18.0(@typescript-eslint/parser@8.18.0(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/parser': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/utils': 8.18.0(eslint@9.17.0)(typescript@5.7.2) + eslint: 9.17.0 typescript: 5.7.2 transitivePeerDependencies: - supports-color @@ -12940,10 +13017,10 @@ snapshots: unbox-primitive@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.0 unbzip2-stream@1.4.3: dependencies: @@ -13049,9 +13126,9 @@ snapshots: upath@1.2.0: {} - update-browserslist-db@1.1.1(browserslist@4.24.2): + update-browserslist-db@1.1.1(browserslist@4.24.3): dependencies: - browserslist: 4.24.2 + browserslist: 4.24.3 escalade: 3.2.0 picocolors: 1.1.1 @@ -13074,30 +13151,32 @@ snapshots: url-join@5.0.0: {} - use-composed-ref@1.3.0(react@0.0.0-experimental-7670501b-20241124): + use-composed-ref@1.4.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 + optionalDependencies: + '@types/react': 18.3.16 - use-isomorphic-layout-effect@1.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124): + use-isomorphic-layout-effect@1.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 optionalDependencies: - '@types/react': 18.3.12 + '@types/react': 18.3.16 - use-latest@1.2.1(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124): + use-latest@1.3.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.3.12)(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + use-isomorphic-layout-effect: 1.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213) optionalDependencies: - '@types/react': 18.3.12 + '@types/react': 18.3.16 - use-long-press@3.2.0(react@0.0.0-experimental-7670501b-20241124): + use-long-press@3.2.0(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 - use-sync-external-store@1.2.2(react@0.0.0-experimental-7670501b-20241124): + use-sync-external-store@1.4.0(react@0.0.0-experimental-4dff0e62-20241213): dependencies: - react: 0.0.0-experimental-7670501b-20241124 + react: 0.0.0-experimental-4dff0e62-20241213 util-deprecate@1.0.2: {} @@ -13139,18 +13218,18 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - virtua@0.38.1(react-dom@0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124))(react@0.0.0-experimental-7670501b-20241124): + virtua@0.39.2(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213): optionalDependencies: - react: 0.0.0-experimental-7670501b-20241124 - react-dom: 0.0.0-experimental-7670501b-20241124(react@0.0.0-experimental-7670501b-20241124) + react: 0.0.0-experimental-4dff0e62-20241213 + react-dom: 0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213) - vite-node@2.1.6(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0): + vite-node@3.0.0-beta.2(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0): dependencies: cac: 6.7.14 - debug: 4.3.7 + debug: 4.4.0 es-module-lexer: 1.5.4 pathe: 1.1.2 - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) transitivePeerDependencies: - '@types/node' - jiti @@ -13165,35 +13244,35 @@ snapshots: - tsx - yaml - vite-plugin-pwa@0.21.1(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.3.0): + vite-plugin-pwa@0.21.1(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.3.0): dependencies: - debug: 4.3.7 + debug: 4.4.0 pretty-bytes: 6.1.1 tinyglobby: 0.2.10 - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) workbox-build: 7.1.1(@types/babel__core@7.20.5) workbox-window: 7.3.0 transitivePeerDependencies: - supports-color - vite-plugin-svgr@4.3.0(rollup@2.79.2)(typescript@5.7.2)(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)): + vite-plugin-svgr@4.3.0(rollup@2.79.2)(typescript@5.7.2)(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)): dependencies: - '@rollup/pluginutils': 5.1.3(rollup@2.79.2) + '@rollup/pluginutils': 5.1.4(rollup@2.79.2) '@svgr/core': 8.1.0(typescript@5.7.2) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.7.2)) - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) transitivePeerDependencies: - rollup - supports-color - typescript - vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0): + vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0): dependencies: esbuild: 0.24.0 postcss: 8.4.49 - rollup: 4.28.0 + rollup: 4.28.1 optionalDependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 fsevents: 2.3.3 less: 4.2.0 lightningcss: 1.28.1 @@ -13201,30 +13280,30 @@ snapshots: stylus: 0.62.0 terser: 5.36.0 - vitest@2.1.6(@types/node@22.10.1)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0): + vitest@3.0.0-beta.2(@types/node@22.10.2)(happy-dom@15.11.6)(jsdom@25.0.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0): dependencies: - '@vitest/expect': 2.1.6 - '@vitest/mocker': 2.1.6(vite@6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) - '@vitest/pretty-format': 2.1.6 - '@vitest/runner': 2.1.6 - '@vitest/snapshot': 2.1.6 - '@vitest/spy': 2.1.6 - '@vitest/utils': 2.1.6 + '@vitest/expect': 3.0.0-beta.2 + '@vitest/mocker': 3.0.0-beta.2(vite@6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0)) + '@vitest/pretty-format': 3.0.0-beta.2 + '@vitest/runner': 3.0.0-beta.2 + '@vitest/snapshot': 3.0.0-beta.2 + '@vitest/spy': 3.0.0-beta.2 + '@vitest/utils': 3.0.0-beta.2 chai: 5.1.2 - debug: 4.3.7 + debug: 4.4.0 expect-type: 1.1.0 - magic-string: 0.30.14 + magic-string: 0.30.15 pathe: 1.1.2 std-env: 3.8.0 tinybench: 2.9.0 tinyexec: 0.3.1 tinypool: 1.0.2 tinyrainbow: 1.2.0 - vite: 6.0.1(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) - vite-node: 2.1.6(@types/node@22.10.1)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite: 6.0.3(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) + vite-node: 3.0.0-beta.2(@types/node@22.10.2)(less@4.2.0)(lightningcss@1.28.1)(sass@1.81.0)(stylus@0.62.0)(terser@5.36.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.10.1 + '@types/node': 22.10.2 happy-dom: 15.11.6 jsdom: 25.0.1 transitivePeerDependencies: @@ -13272,7 +13351,7 @@ snapshots: whatwg-mimetype@4.0.0: {} - whatwg-url@14.0.0: + whatwg-url@14.1.0: dependencies: tr46: 5.0.0 webidl-conversions: 7.0.0 @@ -13290,27 +13369,27 @@ snapshots: when-exit@2.1.3: {} - which-boxed-primitive@1.0.2: + which-boxed-primitive@1.1.0: dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 + is-bigint: 1.1.0 + is-boolean-object: 1.2.1 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 - which-builtin-type@1.2.0: + which-builtin-type@1.2.1: dependencies: - call-bind: 1.0.7 - function.prototype.name: 1.1.6 + call-bound: 1.0.3 + function.prototype.name: 1.1.7 has-tostringtag: 1.0.2 is-async-function: 2.0.0 - is-date-object: 1.0.5 + is-date-object: 1.1.0 is-finalizationregistry: 1.1.0 is-generator-function: 1.0.10 - is-regex: 1.2.0 - is-weakref: 1.0.2 + is-regex: 1.2.1 + is-weakref: 1.1.0 isarray: 2.0.5 - which-boxed-primitive: 1.0.2 + which-boxed-primitive: 1.1.0 which-collection: 1.0.2 which-typed-array: 1.1.16 @@ -13326,9 +13405,9 @@ snapshots: which-typed-array@1.1.16: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.1.0 + gopd: 1.2.0 has-tostringtag: 1.0.2 which@2.0.2: @@ -13374,7 +13453,7 @@ snapshots: '@babel/preset-env': 7.26.0(@babel/core@7.26.0) '@babel/runtime': 7.26.0 '@rollup/plugin-babel': 5.3.1(@babel/core@7.26.0)(@types/babel__core@7.20.5)(rollup@2.79.2) - '@rollup/plugin-node-resolve': 15.3.0(rollup@2.79.2) + '@rollup/plugin-node-resolve': 15.3.1(rollup@2.79.2) '@rollup/plugin-replace': 2.4.2(rollup@2.79.2) '@rollup/plugin-terser': 0.4.4(rollup@2.79.2) '@surma/rollup-plugin-off-main-thread': 2.2.3 @@ -13609,10 +13688,10 @@ snapshots: yoctocolors-cjs@2.1.2: {} - zod-validation-error@3.4.0(zod@3.23.8): + zod-validation-error@3.4.0(zod@3.24.1): dependencies: - zod: 3.23.8 + zod: 3.24.1 - zod@3.23.8: {} + zod@3.24.1: {} zwitch@2.0.4: {} diff --git a/src/features/comment/inTree/Comments.tsx b/src/features/comment/inTree/Comments.tsx index d7b5e5445b..2fff55f768 100644 --- a/src/features/comment/inTree/Comments.tsx +++ b/src/features/comment/inTree/Comments.tsx @@ -487,7 +487,6 @@ export default function Comments({ } ref={virtuaRef} style={{ height: "100%" }} - // @ts-expect-error Virtua types not updated for forwardRef-less components item={IndexedVirtuaItem} overscan={1} onScroll={(offset) => { diff --git a/src/features/community/list/ResolvedCommunitiesList.tsx b/src/features/community/list/ResolvedCommunitiesList.tsx index aa2b96a0c1..e5c39b4633 100644 --- a/src/features/community/list/ResolvedCommunitiesList.tsx +++ b/src/features/community/list/ResolvedCommunitiesList.tsx @@ -11,7 +11,12 @@ import { useRef, useState, } from "react"; -import { CustomItemComponentProps, Virtualizer, VListHandle } from "virtua"; +import { + CustomContainerComponent, + CustomItemComponentProps, + Virtualizer, + VListHandle, +} from "virtua"; import { jwtSelector } from "#/features/auth/authSelectors"; import { cx } from "#/helpers/css"; @@ -210,10 +215,8 @@ function ResolvedCommunitiesList({ updateActiveIndex(); }} - // @ts-expect-error Virtua types not correct - as={IonList} + as={IonList as CustomContainerComponent} keepMounted={activeIndex >= 0 ? [activeIndex] : []} - // @ts-expect-error Virtua types not correct item={StickyItem} > {items.map((item, index) => ( diff --git a/src/helpers/virtua.tsx b/src/helpers/virtua.tsx index 0191c622e1..2c2991185e 100644 --- a/src/helpers/virtua.tsx +++ b/src/helpers/virtua.tsx @@ -1,9 +1,5 @@ import { CustomItemComponentProps } from "virtua"; -interface IndexedVirtuaItemProps extends CustomItemComponentProps { - ref: React.RefObject; -} - /** * Add data-index to each item for programmatic scrolling */ @@ -12,7 +8,7 @@ export function IndexedVirtuaItem({ index, style, ref, -}: IndexedVirtuaItemProps) { +}: CustomItemComponentProps) { return (
{children} From 1cdff8777edf1cc37f52f591e86557dc696056cd Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Mon, 16 Dec 2024 21:52:46 -0600 Subject: [PATCH 02/16] chore: upgrade rehype-highlight (#1779) --- package.json | 5 +- pnpm-lock.yaml | 165 +++------------------- src/features/shared/markdown/Markdown.tsx | 9 +- 3 files changed, 26 insertions(+), 153 deletions(-) diff --git a/package.json b/package.json index 17fdc3a4c0..8abce61943 100644 --- a/package.json +++ b/package.json @@ -44,8 +44,7 @@ "react-router", "react-router-dom", "@types/react-router", - "@types/react-router-dom", - "rehype-highlight" + "@types/react-router-dom" ] } }, @@ -109,7 +108,7 @@ "react-router-dom": "^5.3.4", "react-textarea-autosize": "^8.5.6", "react-transition-state": "^2.2.0", - "rehype-highlight": "^6.0.0", + "rehype-highlight": "^7.0.1", "rehype-parse": "^9.0.1", "rehype-remark": "^10.0.0", "remark-parse": "^11.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f400a4c470..3635b444fa 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -200,8 +200,8 @@ importers: specifier: ^2.2.0 version: 2.2.0(react-dom@0.0.0-experimental-4dff0e62-20241213(react@0.0.0-experimental-4dff0e62-20241213))(react@0.0.0-experimental-4dff0e62-20241213) rehype-highlight: - specifier: ^6.0.0 - version: 6.0.0 + specifier: ^7.0.1 + version: 7.0.1 rehype-parse: specifier: ^9.0.1 version: 9.0.1 @@ -1762,9 +1762,6 @@ packages: '@types/fs-extra@9.0.13': resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==} - '@types/hast@2.3.10': - resolution: {integrity: sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==} - '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -1833,9 +1830,6 @@ packages: '@types/ua-parser-js@0.7.39': resolution: {integrity: sha512-P/oDfpofrdtF5xw433SPALpdSchtJmY7nsJItf8h3KXqOslkbySh8zq4dSWXH2oTjRvJ5PczVEoCZPow6GicLg==} - '@types/unist@2.0.10': - resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} - '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} @@ -2378,8 +2372,8 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chokidar@4.0.1: - resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} + chokidar@4.0.2: + resolution: {integrity: sha512-/b57FK+bblSU+dfewfFe0rT1YjVDfOmeLQwCAuC+vwvgLkXboATqqmy+Ipux6JrF6L5joe5CBnFOw+gLWH6yKg==} engines: {node: '>= 14.16.0'} chownr@1.1.4: @@ -3121,9 +3115,6 @@ packages: fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - fault@2.0.1: - resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} - fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} @@ -3184,10 +3175,6 @@ packages: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} - format@0.2.2: - resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} - engines: {node: '>=0.4.x'} - formidable@2.1.2: resolution: {integrity: sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==} @@ -3417,9 +3404,6 @@ packages: hast-util-is-body-ok-link@3.0.1: resolution: {integrity: sha512-0qpnzOBLztXHbHQenVB8uNuxTnm/QBFUOmdOSsEn7GnBtyY07+ENTWVFBAnXd/zEgd9/SUG3lRY7hSIBWRgGpQ==} - hast-util-is-element@2.1.3: - resolution: {integrity: sha512-O1bKah6mhgEq2WtVMk+Ta5K7pPMqsBBlmzysLdcwKVrqzZQ0CHqUPiIVspNhAG1rvxpvJjtGee17XfauZYKqVA==} - hast-util-is-element@3.0.0: resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} @@ -3441,9 +3425,6 @@ packages: hast-util-to-mdast@10.1.1: resolution: {integrity: sha512-ObMDBFkVPHa0/47FUPO6UuupETRXNTY9y2dGBQQzEUrFq6LjUVwZEoUjjj/agvQ6oS+fAIyNzgNEa6h3lhaoKA==} - hast-util-to-text@3.1.2: - resolution: {integrity: sha512-tcllLfp23dJJ+ju5wCCZHVpzsQQ43+moJbqVX3jNWPB7z/KFC4FyZD6R7y94cHL6MQ33YtMZL8Z0aIXXI4XFTw==} - hast-util-to-text@4.0.2: resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==} @@ -3467,8 +3448,8 @@ packages: resolution: {integrity: sha512-qlspKUK7IlSQv2o+5I7yhUd7TxlOG2Vr5LTa3ve2XSNVKAL/n/u/7KLvKmFNimomDIKvZFXWHv0T12mv7rT8Aw==} engines: {node: '>=8'} - highlight.js@11.8.0: - resolution: {integrity: sha512-MedQhoqVdr0U6SSnWPzfiadUcDHfN/Wzq25AkXiQv9oiOO/sG0S7XkvpFIqWBl9Yq1UYyYOOVORs5UW2XlPyzg==} + highlight.js@11.11.0: + resolution: {integrity: sha512-6ErL7JlGu2CNFHyRQEuDogOyGPNiqcuWdt4iSSFUPyferNTGlNTPFqeV36Y/XwA4V/TJ8l0sxp6FTnxud/mf8g==} engines: {node: '>=12.0.0'} history@4.10.1: @@ -3651,10 +3632,6 @@ packages: is-buffer@1.1.6: resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} - is-buffer@2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} - is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} @@ -4222,8 +4199,8 @@ packages: lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} - lowlight@2.9.0: - resolution: {integrity: sha512-OpcaUTCLmHuVuBcyNckKfH5B0oA4JUavb/M/8n9iAvanJYNQkrVm4pvyX0SUaqkBG4dnWHKt7p50B3ngAG2Rfw==} + lowlight@3.3.0: + resolution: {integrity: sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==} lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -5212,8 +5189,8 @@ packages: resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==} hasBin: true - rehype-highlight@6.0.0: - resolution: {integrity: sha512-q7UtlFicLhetp7K48ZgZiJgchYscMma7XjzX7t23bqEJF8m6/s+viXQEe4oHjrATTIZpX7RG8CKD7BlNZoh9gw==} + rehype-highlight@7.0.1: + resolution: {integrity: sha512-dB/vVGFsbm7xPglqnYbg0ABg6rAuIWKycTvuXaOO27SgLoOFNoTlniTBtAxp3n5ZyMioW1a3KwiNqgjkb6Skjg==} rehype-minify-whitespace@6.0.2: resolution: {integrity: sha512-Zk0pyQ06A3Lyxhe9vGtOtzz3Z0+qZ5+7icZ/PL/2x1SHPbKao5oB/g/rlc6BCTajqBb33JcOe71Ye1oFsuYbnw==} @@ -5924,9 +5901,6 @@ packages: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} - unified@10.1.2: - resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} - unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -5934,36 +5908,21 @@ packages: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} engines: {node: '>=8'} - unist-util-find-after@4.0.1: - resolution: {integrity: sha512-QO/PuPMm2ERxC6vFXEPtmAutOopy5PknD+Oq64gGwxKtk4xwo9Z97t9Av1obPmGU0IyTa6EKYUfTrK2QJS3Ozw==} - unist-util-find-after@5.0.0: resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} - unist-util-is@5.2.1: - resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} - unist-util-is@6.0.0: resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} unist-util-position@5.0.0: resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} - unist-util-stringify-position@3.0.3: - resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} - unist-util-stringify-position@4.0.0: resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} - unist-util-visit-parents@5.1.3: - resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} - unist-util-visit-parents@6.0.1: resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} - unist-util-visit@4.1.2: - resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} - unist-util-visit@5.0.0: resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} @@ -6055,15 +6014,9 @@ packages: vfile-location@5.0.3: resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} - vfile-message@3.1.4: - resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} - vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} - vfile@5.3.7: - resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} - vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} @@ -8185,10 +8138,6 @@ snapshots: dependencies: '@types/node': 22.10.2 - '@types/hast@2.3.10': - dependencies: - '@types/unist': 2.0.10 - '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 @@ -8260,8 +8209,6 @@ snapshots: '@types/ua-parser-js@0.7.39': {} - '@types/unist@2.0.10': {} - '@types/unist@2.0.11': {} '@types/unist@3.0.3': {} @@ -8895,7 +8842,7 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chokidar@4.0.1: + chokidar@4.0.2: dependencies: readdirp: 4.0.2 optional: true @@ -9779,10 +9726,6 @@ snapshots: dependencies: reusify: 1.0.4 - fault@2.0.1: - dependencies: - format: 0.2.2 - fd-slicer@1.1.0: dependencies: pend: 1.2.0 @@ -9851,8 +9794,6 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - format@0.2.2: {} - formidable@2.1.2: dependencies: dezalgo: 1.0.4 @@ -10133,11 +10074,6 @@ snapshots: dependencies: '@types/hast': 3.0.4 - hast-util-is-element@2.1.3: - dependencies: - '@types/hast': 2.3.10 - '@types/unist': 2.0.10 - hast-util-is-element@3.0.0: dependencies: '@types/hast': 3.0.4 @@ -10213,13 +10149,6 @@ snapshots: unist-util-position: 5.0.0 unist-util-visit: 5.0.0 - hast-util-to-text@3.1.2: - dependencies: - '@types/hast': 2.3.10 - '@types/unist': 2.0.10 - hast-util-is-element: 2.1.3 - unist-util-find-after: 4.0.1 - hast-util-to-text@4.0.2: dependencies: '@types/hast': 3.0.4 @@ -10249,7 +10178,7 @@ snapshots: hexoid@2.0.0: {} - highlight.js@11.8.0: {} + highlight.js@11.11.0: {} history@4.10.1: dependencies: @@ -10447,8 +10376,6 @@ snapshots: is-buffer@1.1.6: {} - is-buffer@2.0.5: {} - is-callable@1.2.7: {} is-core-module@2.16.0: @@ -10965,11 +10892,11 @@ snapshots: dependencies: tslib: 2.8.1 - lowlight@2.9.0: + lowlight@3.3.0: dependencies: - '@types/hast': 2.3.10 - fault: 2.0.1 - highlight.js: 11.8.0 + '@types/hast': 3.0.4 + devlop: 1.1.0 + highlight.js: 11.11.0 lru-cache@10.4.3: {} @@ -12213,13 +12140,13 @@ snapshots: dependencies: jsesc: 3.0.2 - rehype-highlight@6.0.0: + rehype-highlight@7.0.1: dependencies: - '@types/hast': 2.3.10 - hast-util-to-text: 3.1.2 - lowlight: 2.9.0 - unified: 10.1.2 - unist-util-visit: 4.1.2 + '@types/hast': 3.0.4 + hast-util-to-text: 4.0.2 + lowlight: 3.3.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 rehype-minify-whitespace@6.0.2: dependencies: @@ -12428,7 +12355,7 @@ snapshots: sass@1.81.0: dependencies: - chokidar: 4.0.1 + chokidar: 4.0.2 immutable: 5.0.3 source-map-js: 1.2.1 optionalDependencies: @@ -13042,16 +12969,6 @@ snapshots: unicorn-magic@0.1.0: {} - unified@10.1.2: - dependencies: - '@types/unist': 2.0.10 - bail: 2.0.2 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 4.1.0 - trough: 2.2.0 - vfile: 5.3.7 - unified@11.0.5: dependencies: '@types/unist': 3.0.3 @@ -13066,20 +12983,11 @@ snapshots: dependencies: crypto-random-string: 2.0.0 - unist-util-find-after@4.0.1: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - unist-util-find-after@5.0.0: dependencies: '@types/unist': 3.0.3 unist-util-is: 6.0.0 - unist-util-is@5.2.1: - dependencies: - '@types/unist': 2.0.10 - unist-util-is@6.0.0: dependencies: '@types/unist': 3.0.3 @@ -13088,30 +12996,15 @@ snapshots: dependencies: '@types/unist': 3.0.3 - unist-util-stringify-position@3.0.3: - dependencies: - '@types/unist': 2.0.10 - unist-util-stringify-position@4.0.0: dependencies: '@types/unist': 3.0.3 - unist-util-visit-parents@5.1.3: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - unist-util-visit-parents@6.0.1: dependencies: '@types/unist': 3.0.3 unist-util-is: 6.0.0 - unist-util-visit@4.1.2: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - unist-util-visit-parents: 5.1.3 - unist-util-visit@5.0.0: dependencies: '@types/unist': 3.0.3 @@ -13196,23 +13089,11 @@ snapshots: '@types/unist': 3.0.3 vfile: 6.0.3 - vfile-message@3.1.4: - dependencies: - '@types/unist': 2.0.10 - unist-util-stringify-position: 3.0.3 - vfile-message@4.0.2: dependencies: '@types/unist': 3.0.3 unist-util-stringify-position: 4.0.0 - vfile@5.3.7: - dependencies: - '@types/unist': 2.0.10 - is-buffer: 2.0.5 - unist-util-stringify-position: 3.0.3 - vfile-message: 3.1.4 - vfile@6.0.3: dependencies: '@types/unist': 3.0.3 diff --git a/src/features/shared/markdown/Markdown.tsx b/src/features/shared/markdown/Markdown.tsx index cc20c0534d..7120737e1c 100644 --- a/src/features/shared/markdown/Markdown.tsx +++ b/src/features/shared/markdown/Markdown.tsx @@ -16,13 +16,6 @@ import MarkdownImg from "./MarkdownImg"; import styles from "./Markdown.module.css"; -// TODO - remove never when upgrading to rehypeHighlight v7 -// TODO - ignoreMissing not needed in v7 -// Waiting on leak fix - https://github.com/remarkjs/react-markdown/issues/791 -const rehypePlugins: import("unified").PluggableList = [ - [rehypeHighlight as never, { detect: true, ignoreMissing: true }], -]; - export interface MarkdownProps extends Omit { className?: string; @@ -74,7 +67,7 @@ export default function Markdown({ superSub, spoiler, ]} - rehypePlugins={rehypePlugins} + rehypePlugins={[[rehypeHighlight, { detect: true }]]} /> ); } From 96b0cf7a26fc7afc2cee9141581a6f6a984819d9 Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Mon, 16 Dec 2024 22:09:55 -0600 Subject: [PATCH 03/16] chore: upgrade capacitor-reader to fix stale sfsafariviewcontroller (#1781) --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 8abce61943..029f912618 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,7 @@ "capacitor-clear-cache": "^1.0.1", "capacitor-launch-native": "^1.0.0", "capacitor-plugin-safe-area": "^3.0.3", - "capacitor-reader": "^0.2.0", + "capacitor-reader": "^0.3.0", "capacitor-stash-media": "^2.0.1", "capacitor-tips": "^1.0.0", "colorjs.io": "^0.5.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3635b444fa..efc0b36c7d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -98,8 +98,8 @@ importers: specifier: ^3.0.3 version: 3.0.3(@capacitor/core@6.2.0) capacitor-reader: - specifier: ^0.2.0 - version: 0.2.0(@capacitor/core@6.2.0) + specifier: ^0.3.0 + version: 0.3.0(@capacitor/core@6.2.0) capacitor-stash-media: specifier: ^2.0.1 version: 2.0.1(@capacitor/core@6.2.0) @@ -2305,8 +2305,8 @@ packages: peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-reader@0.2.0: - resolution: {integrity: sha512-lzqp/suT/Vq3Wx7Ks5T9zg7GxpYnBpBG9LamxV5u3hR89mY2LU+GbeDmj4II4ATKFOhZZaon2rnHiBXY7V9VAw==} + capacitor-reader@0.3.0: + resolution: {integrity: sha512-MXRevn+nXo592cveuZYwVSSZdlYdfUNzYCHo4uUJP3ffwZJki7ASoodfT6cgClv57Cxu7wiNbzb0jramiF98cQ==} peerDependencies: '@capacitor/core': ^6.0.0 @@ -8760,7 +8760,7 @@ snapshots: dependencies: '@capacitor/core': 6.2.0 - capacitor-reader@0.2.0(@capacitor/core@6.2.0): + capacitor-reader@0.3.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 From 81457ca19f641c140d2ed39dafa9cba2e619724c Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Mon, 16 Dec 2024 22:54:35 -0600 Subject: [PATCH 04/16] feat: fractional years, improved date duration formatting (#1780) Resolves #1778 --- src/features/labels/Ago.test.ts | 124 +++++++++++++++++++++ src/features/labels/Ago.tsx | 116 +++++++++++++------ src/features/labels/Edited.tsx | 6 +- src/features/labels/formatDistanceShort.ts | 102 +++++++++++++++++ src/features/user/Scores.tsx | 10 +- 5 files changed, 314 insertions(+), 44 deletions(-) create mode 100644 src/features/labels/Ago.test.ts create mode 100644 src/features/labels/formatDistanceShort.ts diff --git a/src/features/labels/Ago.test.ts b/src/features/labels/Ago.test.ts new file mode 100644 index 0000000000..d8db2ec572 --- /dev/null +++ b/src/features/labels/Ago.test.ts @@ -0,0 +1,124 @@ +import { describe, expect, it } from "vitest"; + +import { formatRelative } from "./Ago"; + +describe("formatRelative Function", () => { + const currentTime = { + date: new Date(), + expected: { + ultrashort: "<1s", + short: "<1s", + verbose: "now", + }, + }; + + const oneMonthAgo = { + date: (() => { + const date = new Date(); + date.setMonth(date.getMonth() - 1); + return date; + })(), + expected: { + ultrashort: "1mo", + short: "1mo", + verbose: "1 month", + }, + }; + + const oneYearTwoMonthsAgo = { + date: (() => { + const date = new Date(); + date.setFullYear(date.getFullYear() - 1); + date.setMonth(date.getMonth() - 2); + return date; + })(), + expected: { + ultrashort: "1.2y", + short: "1y 2mo", + verbose: "1 year, 2 months", + }, + }; + + const fortyFiveMinutesAgo = { + date: (() => { + const date = new Date(); + date.setMinutes(date.getMinutes() - 45); + return date; + })(), + expected: { + ultrashort: "45m", + short: "45m", + verbose: "45 minutes", + }, + }; + + const fortyFiveMinutesFiftyNineSecondsAgo = { + date: (() => { + const date = new Date(); + date.setMinutes(date.getMinutes() - 45); + date.setSeconds(date.getSeconds() - 59); + return date; + })(), + expected: { + ultrashort: "45m", + short: "45m", + verbose: "45 minutes, 59 seconds", + }, + }; + + const oneYearAgo = { + date: (() => { + const date = new Date(); + date.setFullYear(date.getFullYear() - 1); + return date; + })(), + expected: { + ultrashort: "1y", + short: "1y", + verbose: "1 year", + }, + }; + + const tenDaysAgo = { + date: (() => { + const date = new Date(); + date.setDate(date.getDate() - 10); + return date; + })(), + expected: { + ultrashort: "10d", + short: "10d", + verbose: "10 days", + }, + }; + + const testCases = [ + { name: "current time", ...currentTime }, + { name: "one month ago", ...oneMonthAgo }, + { name: "one year and two months ago", ...oneYearTwoMonthsAgo }, + { name: "forty-five minutes ago", ...fortyFiveMinutesAgo }, + { + name: "forty-five minutes and fifty-nine seconds ago", + ...fortyFiveMinutesFiftyNineSecondsAgo, + }, + { name: "one year ago", ...oneYearAgo }, + { name: "ten days ago", ...tenDaysAgo }, + ]; + + testCases.forEach(({ name, date, expected }) => { + it(`should format ${name} correctly in ultrashort format`, () => { + const result = formatRelative(date, "ultrashort"); + expect(result).toBe(expected.ultrashort); + }); + + it(`should format ${name} correctly in short format`, () => { + const result = formatRelative(date, "short"); + expect(result).toBe(expected.short); + }); + + it(`should format ${name} correctly in verbose format`, () => { + const result = formatRelative(date, "verbose"); + expect(result).toBe(expected.verbose); + }); + }); +}); diff --git a/src/features/labels/Ago.tsx b/src/features/labels/Ago.tsx index f8988f2ad5..32d36c0100 100644 --- a/src/features/labels/Ago.tsx +++ b/src/features/labels/Ago.tsx @@ -1,45 +1,93 @@ -import { formatDistanceToNowStrict } from "date-fns"; +import { Duration, formatDuration, intervalToDuration } from "date-fns"; +import { round } from "es-toolkit"; + +import { formatDistanceShort } from "./formatDistanceShort"; interface AgoProps { date: string; + as?: "ultrashort" | "short" | "verbose"; + shorthand?: boolean; className?: string; } -export default function Ago({ date, className }: AgoProps) { - return {formatRelative(date)}; +export default function Ago({ date, className, as = "ultrashort" }: AgoProps) { + return ( + {formatRelative(new Date(date), as)} + ); } -export function formatRelative(date: string): string { - const relativeDate = formatDistanceToNowStrict(new Date(date), { - addSuffix: false, - }); +export function formatRelative( + date: Date, + as: AgoProps["as"] = "ultrashort", +): string { + const now = new Date(); + const duration = intervalToDuration({ start: date, end: now }); - return getRelativeDateString(relativeDate); -} + let distance: string; + + switch (as) { + case "verbose": { + distance = formatDuration(duration, { + delimiter: ", ", + format: getFormatVerbose(duration), + }); + break; + } + case "short": { + distance = formatDuration(duration, { + delimiter: " ", + format: getFormatShort(duration), + locale: { + formatDistance: formatDistanceShort, + }, + }); + break; + } + case "ultrashort": { + if (duration.months && duration.years) { + duration.years += round(duration.months / 12, 1); + delete duration.months; + } + distance = formatDuration(duration, { + delimiter: " ", + format: getFormatUltrashort(duration), + locale: { + formatDistance: formatDistanceShort, + }, + }); + } + } -const getRelativeDateString = (relativeDate: string) => { - const [value, unit] = relativeDate.split(" "); - - switch (unit) { - case "seconds": - case "second": - return "<1m"; - case "minutes": - case "minute": - return `${value}m`; - case "hours": - case "hour": - return `${value}h`; - case "days": - case "day": - return `${value}d`; - case "months": - case "month": - return `${value}mo`; - case "years": - case "year": - return `${value}y`; - default: - return relativeDate; + if (!distance) { + if (as === "verbose") return "now"; + return "<1s"; } -}; + + return distance; +} + +function getFormatShort( + duration: Duration, +): [keyof Duration, ...(keyof Duration)[]] { + if (duration.years) return ["years", "months"]; + if (duration.months) return ["months"]; + if (duration.days) return ["days"]; + if (duration.hours) return ["hours"]; + if (duration.minutes) return ["minutes"]; + if (duration.seconds) return ["seconds"]; + return ["seconds"]; +} + +function getFormatUltrashort(duration: Duration): (keyof Duration)[] { + return [getFormatShort(duration)[0]]; +} + +function getFormatVerbose(duration: Duration): (keyof Duration)[] { + if (duration.years) return ["years", "months"]; + if (duration.months) return ["months", "days"]; + if (duration.days) return ["days", "hours"]; + if (duration.hours) return ["hours", "minutes"]; + if (duration.minutes) return ["minutes", "seconds"]; + + return ["years", "months", "days", "hours", "minutes", "seconds"]; +} diff --git a/src/features/labels/Edited.tsx b/src/features/labels/Edited.tsx index badee7e024..0952749cba 100644 --- a/src/features/labels/Edited.tsx +++ b/src/features/labels/Edited.tsx @@ -24,8 +24,8 @@ export default function Edited({ item, showDate, className }: EditedProps) { if (!edited) return; if (!showDate) return; - const createdLabel = formatRelative(item.counts.published); - const editedLabel = formatRelative(edited); + const createdLabel = formatRelative(new Date(item.counts.published)); + const editedLabel = formatRelative(new Date(edited)); if (createdLabel === editedLabel) return; @@ -42,7 +42,7 @@ export default function Edited({ item, showDate, className }: EditedProps) { const date = new Date(edited); present({ - header: `Edited ${formatRelative(edited)} Ago`, + header: `Edited ${formatRelative(date)} Ago`, message: `Last edited on ${date.toDateString()} at ${date.toLocaleTimeString(undefined, { hour: "2-digit", minute: "2-digit" })}`, buttons: ["OK"], }); diff --git a/src/features/labels/formatDistanceShort.ts b/src/features/labels/formatDistanceShort.ts new file mode 100644 index 0000000000..d242f49994 --- /dev/null +++ b/src/features/labels/formatDistanceShort.ts @@ -0,0 +1,102 @@ +import { FormatDistanceFn, FormatDistanceLocale } from "date-fns"; + +type FormatDistanceTokenValue = + | string + | { + one: string; + other: string; + }; + +const formatDistanceLocale: FormatDistanceLocale = { + lessThanXSeconds: { + one: "<1s", + other: "<{{count}}s", + }, + + xSeconds: { + one: "1s", + other: "{{count}}s", + }, + + halfAMinute: "0.5m", + + lessThanXMinutes: { + one: "<1m", + other: "<{{count}}m", + }, + + xMinutes: { + one: "1m", + other: "{{count}}m", + }, + + aboutXHours: { + one: "~1h", + other: "~{{count}}h", + }, + + xHours: { + one: "1h", + other: "{{count}}h", + }, + + xDays: { + one: "1d", + other: "{{count}}d", + }, + + aboutXWeeks: { + one: "~1w", + other: "~{{count}}w", + }, + + xWeeks: { + one: "1w", + other: "{{count}}w", + }, + + aboutXMonths: { + one: "~1mo", + other: "~{{count}}mo", + }, + + xMonths: { + one: "1mo", + other: "{{count}}mo", + }, + + aboutXYears: { + one: "~1y", + other: "~{{count}}y", + }, + + xYears: { + one: "1y", + other: "{{count}}y", + }, + + overXYears: { + one: ">1y", + other: ">{{count}}y", + }, + + almostXYears: { + one: "~1y", + other: "~{{count}}y", + }, +}; + +export const formatDistanceShort: FormatDistanceFn = (token, count) => { + let result; + + const tokenValue = formatDistanceLocale[token]; + if (typeof tokenValue === "string") { + result = tokenValue; + } else if (count === 1) { + result = tokenValue.one; + } else { + result = tokenValue.other.replace("{{count}}", count.toString()); + } + + return result; +}; diff --git a/src/features/user/Scores.tsx b/src/features/user/Scores.tsx index 666acde59f..af94359c44 100644 --- a/src/features/user/Scores.tsx +++ b/src/features/user/Scores.tsx @@ -1,8 +1,7 @@ import { useIonAlert } from "@ionic/react"; -import { formatDistanceToNowStrict } from "date-fns"; import { PersonAggregates } from "lemmy-js-client"; -import Ago from "#/features/labels/Ago"; +import Ago, { formatRelative } from "#/features/labels/Ago"; import { formatNumber } from "#/helpers/number"; import styles from "./Scores.module.css"; @@ -15,9 +14,6 @@ interface ScoreProps { export default function Scores({ aggregates, accountCreated }: ScoreProps) { const [present] = useIonAlert(); - const relativeDate = formatDistanceToNowStrict(new Date(accountCreated), { - addSuffix: false, - }); const creationDate = new Date(accountCreated); const posts = aggregates.post_count; @@ -70,13 +66,13 @@ export default function Scores({ aggregates, accountCreated }: ScoreProps) { className={styles.score} onClick={() => { present({ - header: `Account is ${relativeDate} old`, + header: `Account is ${formatRelative(creationDate, "verbose")} old`, message: `Created on ${creationDate.toDateString()} at ${creationDate.toLocaleTimeString(undefined, { hour: "2-digit", minute: "2-digit" })}`, buttons: [{ text: "OK" }], }); }} > - +
From 97fce73721fe1d6ac3b78fc1c74de83ae9823544 Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Wed, 18 Dec 2024 23:13:20 -0600 Subject: [PATCH 05/16] feat: sortable profile posts and comments (#1782) --- src/features/feed/helpers.ts | 4 +- .../profile/BaseProfileFeedItemsPage.tsx | 53 +++++++++++ .../pages/profile/ProfileFeedCommentsPage.tsx | 58 ++++++++++++ .../pages/profile/ProfileFeedItemsPage.tsx | 90 ------------------- .../pages/profile/ProfileFeedPostsPage.tsx | 45 ++++++++++ .../pages/profile/ProfileFeedSavedPage.tsx | 31 +++++++ .../pages/profile/ProfileFeedVotedPage.tsx | 39 ++++++++ src/routes/tabs/general.tsx | 15 ++-- 8 files changed, 238 insertions(+), 97 deletions(-) create mode 100644 src/routes/pages/profile/BaseProfileFeedItemsPage.tsx create mode 100644 src/routes/pages/profile/ProfileFeedCommentsPage.tsx delete mode 100644 src/routes/pages/profile/ProfileFeedItemsPage.tsx create mode 100644 src/routes/pages/profile/ProfileFeedPostsPage.tsx create mode 100644 src/routes/pages/profile/ProfileFeedSavedPage.tsx create mode 100644 src/routes/pages/profile/ProfileFeedVotedPage.tsx diff --git a/src/features/feed/helpers.ts b/src/features/feed/helpers.ts index 1ae6537b95..e2ee32327b 100644 --- a/src/features/feed/helpers.ts +++ b/src/features/feed/helpers.ts @@ -6,7 +6,9 @@ type InternalFeedType = | "PostsSearch" | "CommentsSearch" | "CommunitiesSearch" - | "CommunitiesExplore"; + | "CommunitiesExplore" + | "ProfilePosts" + | "ProfileComments"; export type AnyFeed = | { diff --git a/src/routes/pages/profile/BaseProfileFeedItemsPage.tsx b/src/routes/pages/profile/BaseProfileFeedItemsPage.tsx new file mode 100644 index 0000000000..a0c3f865d7 --- /dev/null +++ b/src/routes/pages/profile/BaseProfileFeedItemsPage.tsx @@ -0,0 +1,53 @@ +import { IonButtons, IonTitle, IonToolbar } from "@ionic/react"; +import { IonPage } from "@ionic/react"; +import { IonBackButton } from "@ionic/react"; +import { useParams } from "react-router-dom"; + +import { FetchFn } from "#/features/feed/Feed"; +import PostCommentFeed, { + PostCommentItem, +} from "#/features/feed/PostCommentFeed"; +import AppHeader from "#/features/shared/AppHeader"; +import { useBuildGeneralBrowseLink } from "#/helpers/routes"; +import FeedContent from "#/routes/pages/shared/FeedContent"; + +interface BaseProfileFeedItemsPageProps { + label: string; + fetchFn: FetchFn; + sortComponent?: React.ReactNode; +} + +export default function BaseProfileFeedItemsPage({ + fetchFn, + sortComponent, + label, +}: BaseProfileFeedItemsPageProps) { + const buildGeneralBrowseLink = useBuildGeneralBrowseLink(); + const { handle } = useParams<{ handle: string }>(); + + return ( + + + + {label} + + 10 ? `${handle.slice(0, 10)}...` : handle} + defaultHref={buildGeneralBrowseLink(`/u/${handle}`)} + /> + + + {sortComponent && {sortComponent}} + + + + + + + ); +} diff --git a/src/routes/pages/profile/ProfileFeedCommentsPage.tsx b/src/routes/pages/profile/ProfileFeedCommentsPage.tsx new file mode 100644 index 0000000000..5a66c08aa6 --- /dev/null +++ b/src/routes/pages/profile/ProfileFeedCommentsPage.tsx @@ -0,0 +1,58 @@ +import { CommentSortType, PostSortType } from "lemmy-js-client"; +import { useParams } from "react-router-dom"; + +import CommentSort from "#/features/comment/CommentSort"; +import { FetchFn } from "#/features/feed/Feed"; +import { PostCommentItem } from "#/features/feed/PostCommentFeed"; +import useFeedSort from "#/features/feed/sort/useFeedSort"; +import useClient from "#/helpers/useClient"; +import { LIMIT } from "#/services/lemmy"; + +import BaseProfileFeedItemsPage from "./BaseProfileFeedItemsPage"; + +export default function ProfileFeedCommentsPage() { + const client = useClient(); + const { handle } = useParams<{ handle: string }>(); + + const [sort, setSort] = useFeedSort( + "comments", + { + internal: `ProfileComments`, + }, + "New", + ); + + const fetchFn: FetchFn = async (pageData, ...rest) => { + const { comments } = await client.getPersonDetails( + { + ...pageData, + limit: LIMIT, + username: handle, + sort: sort ? convertCommentSortToPostSort(sort) : "New", + }, + ...rest, + ); + + return comments; + }; + + return ( + } + /> + ); +} + +function convertCommentSortToPostSort(sort: CommentSortType): PostSortType { + switch (sort) { + case "Controversial": + case "Hot": + case "New": + case "Old": + return sort; + case "Top": + return "TopAll"; + } +} diff --git a/src/routes/pages/profile/ProfileFeedItemsPage.tsx b/src/routes/pages/profile/ProfileFeedItemsPage.tsx deleted file mode 100644 index e6189b4a90..0000000000 --- a/src/routes/pages/profile/ProfileFeedItemsPage.tsx +++ /dev/null @@ -1,90 +0,0 @@ -import { - IonBackButton, - IonButtons, - IonPage, - IonTitle, - IonToolbar, -} from "@ionic/react"; -import { GetComments, GetPosts } from "lemmy-js-client"; -import { useParams } from "react-router"; - -import { FetchFn } from "#/features/feed/Feed"; -import PostCommentFeed, { - PostCommentItem, -} from "#/features/feed/PostCommentFeed"; -import AppHeader from "#/features/shared/AppHeader"; -import { sortPostCommentByPublished } from "#/helpers/lemmy"; -import { useBuildGeneralBrowseLink } from "#/helpers/routes"; -import useClient from "#/helpers/useClient"; -import FeedContent from "#/routes/pages/shared/FeedContent"; -import { LIMIT } from "#/services/lemmy"; - -interface ProfileFeedItemsPageProps { - type: "Comments" | "Posts" | "Saved" | "Upvoted" | "Downvoted"; -} -export default function ProfileFeedItemsPage({ - type, -}: ProfileFeedItemsPageProps) { - const buildGeneralBrowseLink = useBuildGeneralBrowseLink(); - const { handle } = useParams<{ handle: string }>(); - const client = useClient(); - - const fetchFn: FetchFn = async (pageData, ...rest) => { - if (type === "Upvoted" || type === "Downvoted") { - const requestPayload: GetPosts & GetComments = { - ...pageData, - limit: Math.floor(LIMIT / 2), - sort: "New", - liked_only: type === "Upvoted", - disliked_only: type === "Downvoted", - show_read: true, - }; - - const [{ posts }, { comments }] = await Promise.all([ - client.getPosts(requestPayload, ...rest), - client.getComments(requestPayload, ...rest), - ]); - - return [...comments, ...posts].sort(sortPostCommentByPublished); - } - const { comments, posts } = await client.getPersonDetails( - { - ...pageData, - limit: LIMIT, - username: handle, - sort: "New", - saved_only: type === "Saved", - }, - ...rest, - ); - - if (type === "Saved") { - return [...comments, ...posts].sort(sortPostCommentByPublished); - } - - return type === "Comments" ? comments : posts; - }; - - return ( - - - - {type} - - - - - - - - - - ); -} diff --git a/src/routes/pages/profile/ProfileFeedPostsPage.tsx b/src/routes/pages/profile/ProfileFeedPostsPage.tsx new file mode 100644 index 0000000000..d8a8ac8126 --- /dev/null +++ b/src/routes/pages/profile/ProfileFeedPostsPage.tsx @@ -0,0 +1,45 @@ +import { useParams } from "react-router-dom"; + +import { FetchFn } from "#/features/feed/Feed"; +import { PostCommentItem } from "#/features/feed/PostCommentFeed"; +import PostSort from "#/features/feed/PostSort"; +import useFeedSort from "#/features/feed/sort/useFeedSort"; +import useClient from "#/helpers/useClient"; +import { LIMIT } from "#/services/lemmy"; + +import BaseProfileFeedItemsPage from "./BaseProfileFeedItemsPage"; + +export default function ProfileFeedPostsPage() { + const client = useClient(); + const { handle } = useParams<{ handle: string }>(); + + const [sort, setSort] = useFeedSort( + "posts", + { + internal: `ProfilePosts`, + }, + "New", + ); + + const fetchFn: FetchFn = async (pageData, ...rest) => { + const { posts } = await client.getPersonDetails( + { + ...pageData, + limit: LIMIT, + username: handle, + sort: sort ?? "New", + }, + ...rest, + ); + + return posts; + }; + + return ( + } + /> + ); +} diff --git a/src/routes/pages/profile/ProfileFeedSavedPage.tsx b/src/routes/pages/profile/ProfileFeedSavedPage.tsx new file mode 100644 index 0000000000..03bed0c8e2 --- /dev/null +++ b/src/routes/pages/profile/ProfileFeedSavedPage.tsx @@ -0,0 +1,31 @@ +import { useParams } from "react-router-dom"; + +import { FetchFn } from "#/features/feed/Feed"; +import { PostCommentItem } from "#/features/feed/PostCommentFeed"; +import { sortPostCommentByPublished } from "#/helpers/lemmy"; +import useClient from "#/helpers/useClient"; +import { LIMIT } from "#/services/lemmy"; + +import BaseProfileFeedItemsPage from "./BaseProfileFeedItemsPage"; + +export default function ProfileFeedSavedPage() { + const { handle } = useParams<{ handle: string }>(); + const client = useClient(); + + const fetchFn: FetchFn = async (pageData, ...rest) => { + const { comments, posts } = await client.getPersonDetails( + { + ...pageData, + limit: LIMIT, + username: handle, + sort: "New", + saved_only: true, + }, + ...rest, + ); + + return [...comments, ...posts].sort(sortPostCommentByPublished); + }; + + return ; +} diff --git a/src/routes/pages/profile/ProfileFeedVotedPage.tsx b/src/routes/pages/profile/ProfileFeedVotedPage.tsx new file mode 100644 index 0000000000..2e1c5bf0ed --- /dev/null +++ b/src/routes/pages/profile/ProfileFeedVotedPage.tsx @@ -0,0 +1,39 @@ +import { GetComments, GetPosts } from "lemmy-js-client"; + +import { FetchFn } from "#/features/feed/Feed"; +import { PostCommentItem } from "#/features/feed/PostCommentFeed"; +import { sortPostCommentByPublished } from "#/helpers/lemmy"; +import useClient from "#/helpers/useClient"; +import { LIMIT } from "#/services/lemmy"; + +import BaseProfileFeedItemsPage from "./BaseProfileFeedItemsPage"; + +interface ProfileFeedVotedPageProps { + type: "Upvoted" | "Downvoted"; +} + +export default function ProfileFeedVotedPage({ + type, +}: ProfileFeedVotedPageProps) { + const client = useClient(); + + const fetchFn: FetchFn = async (pageData, ...rest) => { + const requestPayload: GetPosts & GetComments = { + ...pageData, + limit: Math.floor(LIMIT / 2), + sort: "New", + liked_only: type === "Upvoted", + disliked_only: type === "Downvoted", + show_read: true, + }; + + const [{ posts }, { comments }] = await Promise.all([ + client.getPosts(requestPayload, ...rest), + client.getComments(requestPayload, ...rest), + ]); + + return [...comments, ...posts].sort(sortPostCommentByPublished); + }; + + return ; +} diff --git a/src/routes/tabs/general.tsx b/src/routes/tabs/general.tsx index dc1c1b80ae..cb18a36caf 100644 --- a/src/routes/tabs/general.tsx +++ b/src/routes/tabs/general.tsx @@ -2,8 +2,11 @@ import Route from "#/routes/common/Route"; import ConversationPage from "#/routes/pages/inbox/ConversationPage"; import PostDetail from "#/routes/pages/posts/PostPage"; +import ProfileFeedCommentsPage from "#/routes/pages/profile/ProfileFeedCommentsPage"; import ProfileFeedHiddenPostsPage from "#/routes/pages/profile/ProfileFeedHiddenPostsPage"; -import ProfileFeedItemsPage from "#/routes/pages/profile/ProfileFeedItemsPage"; +import ProfileFeedPostsPage from "#/routes/pages/profile/ProfileFeedPostsPage"; +import ProfileFeedSavedPage from "#/routes/pages/profile/ProfileFeedSavedPage"; +import ProfileFeedVotedPage from "#/routes/pages/profile/ProfileFeedVotedPage"; import UserPage from "#/routes/pages/profile/UserPage"; import SearchFeedResultsPage from "#/routes/pages/search/results/SearchFeedResultsPage"; import CommentsPage from "#/routes/pages/shared/CommentsPage"; @@ -74,22 +77,22 @@ export default [ , - + , - + , - + , , - + , - + , From cbd7297a0ef72af5b9be29e72dc1acc2e4f8f426 Mon Sep 17 00:00:00 2001 From: Alexander Harding <2166114+aeharding@users.noreply.github.com> Date: Sat, 21 Dec 2024 17:31:50 -0600 Subject: [PATCH 06/16] chore: bump version to 2.22.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 029f912618..b82f1d1599 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "voyager", "description": "A progressive webapp Lemmy client", "private": true, - "version": "2.21.1", + "version": "2.22.0", "type": "module", "packageManager": "pnpm@9.12.2+sha512.22721b3a11f81661ae1ec68ce1a7b879425a1ca5b991c975b074ac220b187ce56c708fe5db69f4c962c989452eee76c82877f4ee80f474cebd61ee13461b6228", "scripts": { From 7b3c3882e3a87774ac1628ebe42bc5013a61a2fd Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Sun, 22 Dec 2024 11:02:33 -0600 Subject: [PATCH 07/16] fix: crash with invalid url as link (#1791) --- src/features/comment/CommentLinks.tsx | 3 ++- src/helpers/url.ts | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/features/comment/CommentLinks.tsx b/src/features/comment/CommentLinks.tsx index b6041272a4..decbdf7132 100644 --- a/src/features/comment/CommentLinks.tsx +++ b/src/features/comment/CommentLinks.tsx @@ -8,6 +8,7 @@ import { SKIP, visit } from "unist-util-visit"; import CommentLink from "#/features/post/link/CommentLink"; import customRemarkGfm from "#/features/shared/markdown/customRemarkGfm"; +import { parseUrl } from "#/helpers/url"; import { buildBaseLemmyUrl } from "#/services/lemmy"; import { useAppSelector } from "#/store"; @@ -54,7 +55,7 @@ export default function CommentLinks({ markdown }: CommentLinksProps) { links.push({ type: node.type, // normalize relative links - url: new URL(node.url, connectedInstanceUrl).href, + url: parseUrl(node.url, connectedInstanceUrl)?.href ?? node.url, text: "children" in node ? (node.children[0] as Text)?.value : undefined, }); diff --git a/src/helpers/url.ts b/src/helpers/url.ts index 965377e7ba..e0aff40a93 100644 --- a/src/helpers/url.ts +++ b/src/helpers/url.ts @@ -26,9 +26,9 @@ export function getPathname(url: string): string | undefined { } } -export function parseUrl(url: string): URL | undefined { +export function parseUrl(url: string, baseUrl?: string): URL | undefined { try { - return new URL(url); + return new URL(url, baseUrl); } catch { return; } From c5a1df6fd238e785d0160f0b8c9e1132966d5def Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Mon, 23 Dec 2024 14:55:06 -0600 Subject: [PATCH 08/16] feat: setting to hide accessible captions (#1792) --- .../media/gallery/actions/AltText.tsx | 6 ++++- .../gallery/actions/ImageMoreActions.tsx | 9 ++++++-- .../settings/general/GeneralSettings.tsx | 2 ++ .../settings/general/media/HideAltText.tsx | 23 +++++++++++++++++++ src/features/settings/general/media/Media.tsx | 19 +++++++++++++++ src/features/settings/settingsSlice.tsx | 14 +++++++++++ src/services/db.ts | 2 ++ 7 files changed, 72 insertions(+), 3 deletions(-) create mode 100644 src/features/settings/general/media/HideAltText.tsx create mode 100644 src/features/settings/general/media/Media.tsx diff --git a/src/features/media/gallery/actions/AltText.tsx b/src/features/media/gallery/actions/AltText.tsx index a88f56ed5c..5bb1293cba 100644 --- a/src/features/media/gallery/actions/AltText.tsx +++ b/src/features/media/gallery/actions/AltText.tsx @@ -1,6 +1,7 @@ import { useState } from "react"; import { cx } from "#/helpers/css"; +import { useAppSelector } from "#/store"; import styles from "./AltText.module.css"; @@ -9,9 +10,12 @@ interface AltTextProps { } export default function AltText({ alt }: AltTextProps) { + const hideAltText = useAppSelector( + (state) => state.settings.general.media.hideAltText, + ); const [shouldClampAltText, setShouldClampAltText] = useState(true); - if (!alt) return; + if (!alt || hideAltText) return; return (
diff --git a/src/features/media/gallery/actions/ImageMoreActions.tsx b/src/features/media/gallery/actions/ImageMoreActions.tsx index a0e24bd4c0..683a70c362 100644 --- a/src/features/media/gallery/actions/ImageMoreActions.tsx +++ b/src/features/media/gallery/actions/ImageMoreActions.tsx @@ -1,4 +1,5 @@ import { isNative } from "#/helpers/device"; +import { useAppSelector } from "#/store"; import AltText from "./AltText"; import GalleryActions from "./GalleryActions"; @@ -15,6 +16,10 @@ export default function ImageMoreActions({ imgSrc, alt, }: ImageMoreActionsProps) { + const hideAltText = useAppSelector( + (state) => state.settings.general.media.hideAltText, + ); + return ( <> {isNative() && ( @@ -22,10 +27,10 @@ export default function ImageMoreActions({
)} - {alt && ( + {alt && !hideAltText && ( - + )} diff --git a/src/features/settings/general/GeneralSettings.tsx b/src/features/settings/general/GeneralSettings.tsx index a8303aa5dc..208aca7201 100644 --- a/src/features/settings/general/GeneralSettings.tsx +++ b/src/features/settings/general/GeneralSettings.tsx @@ -1,4 +1,5 @@ import Comments from "./comments/Comments"; +import Media from "./media/Media"; import Other from "./other/Other"; import Posts from "./posts/Posts"; import Safari from "./safari/Safari"; @@ -9,6 +10,7 @@ export default function GeneralSettings() { + ); diff --git a/src/features/settings/general/media/HideAltText.tsx b/src/features/settings/general/media/HideAltText.tsx new file mode 100644 index 0000000000..266e21ebb4 --- /dev/null +++ b/src/features/settings/general/media/HideAltText.tsx @@ -0,0 +1,23 @@ +import { IonItem, IonToggle } from "@ionic/react"; + +import { useAppDispatch, useAppSelector } from "#/store"; + +import { setHideAltText } from "../../settingsSlice"; + +export default function HideAltText() { + const dispatch = useAppDispatch(); + const hideAltText = useAppSelector( + (state) => state.settings.general.media.hideAltText, + ); + + return ( + + dispatch(setHideAltText(e.detail.checked))} + > + Hide Accessible Captions + + + ); +} diff --git a/src/features/settings/general/media/Media.tsx b/src/features/settings/general/media/Media.tsx new file mode 100644 index 0000000000..39b0262f86 --- /dev/null +++ b/src/features/settings/general/media/Media.tsx @@ -0,0 +1,19 @@ +import { IonLabel } from "@ionic/react"; +import { IonList } from "@ionic/react"; + +import { ListHeader } from "#/features/settings/shared/formatting"; + +import HideAltText from "./HideAltText"; + +export default function Media() { + return ( + <> + + Media + + + + + + ); +} diff --git a/src/features/settings/settingsSlice.tsx b/src/features/settings/settingsSlice.tsx index 3d32e08c93..ce6da32f50 100644 --- a/src/features/settings/settingsSlice.tsx +++ b/src/features/settings/settingsSlice.tsx @@ -146,6 +146,9 @@ export interface SettingsState { safari: { alwaysUseReaderMode: boolean; }; + media: { + hideAltText: boolean; + }; enableHapticFeedback: boolean; linkHandler: LinkHandlerType; preferNativeApps: boolean; @@ -233,6 +236,9 @@ const baseState: SettingsState = { defaultFeed: undefined, enableHapticFeedback: true, linkHandler: OLinkHandlerType.InApp, + media: { + hideAltText: false, + }, noSubscribedInFeed: false, posts: { autoHideRead: false, @@ -387,6 +393,10 @@ export const settingsSlice = createSlice({ state.appearance.font.fontSizeMultiplier = action.payload; set(LOCALSTORAGE_KEYS.FONT.FONT_SIZE_MULTIPLIER, action.payload); }, + setHideAltText(state, action: PayloadAction) { + state.general.media.hideAltText = action.payload; + db.setSetting("hide_alt_text", action.payload); + }, setHighlightNewAccount(state, action: PayloadAction) { state.general.comments.highlightNewAccount = action.payload; db.setSetting("highlight_new_account", action.payload); @@ -769,6 +779,7 @@ export const { setFilteredKeywords, setFilteredWebsites, setFontSizeMultiplier, + setHideAltText, setHighlightNewAccount, setInfiniteScrolling, setJumpButtonPosition, @@ -878,6 +889,9 @@ function hydrateStateWithGlobalSettings( }, enableHapticFeedback: settings.enable_haptic_feedback, linkHandler: settings.link_handler, + media: { + hideAltText: settings.hide_alt_text, + }, noSubscribedInFeed: settings.no_subscribed_in_feed, posts: { autoHideRead: settings.auto_hide_read, diff --git a/src/services/db.ts b/src/services/db.ts index 8419dac939..3d51c73165 100644 --- a/src/services/db.ts +++ b/src/services/db.ts @@ -346,6 +346,7 @@ export interface GlobalSettingValueTypes { enable_haptic_feedback: boolean; filtered_keywords: string[]; filtered_websites: string[]; + hide_alt_text: boolean; highlight_new_account: boolean; infinite_scrolling: boolean; jump_button_position: JumpButtonPositionType; @@ -456,6 +457,7 @@ export const ALL_GLOBAL_SETTINGS = arrayOfAll()([ "user_instance_url_display", "vote_display_mode", "votes_theme", + "hide_alt_text", ]); export interface ISettingItem { From ba76179a894b72dd7bead380371a5a8f20d79e21 Mon Sep 17 00:00:00 2001 From: Alexander Harding <2166114+aeharding@users.noreply.github.com> Date: Mon, 23 Dec 2024 15:05:17 -0600 Subject: [PATCH 09/16] chore: bump version to 2.23.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b82f1d1599..f12a8bee3a 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "voyager", "description": "A progressive webapp Lemmy client", "private": true, - "version": "2.22.0", + "version": "2.23.0", "type": "module", "packageManager": "pnpm@9.12.2+sha512.22721b3a11f81661ae1ec68ce1a7b879425a1ca5b991c975b074ac220b187ce56c708fe5db69f4c962c989452eee76c82877f4ee80f474cebd61ee13461b6228", "scripts": { From 44e552f34037eba9de773cc2868ce01909e2f836 Mon Sep 17 00:00:00 2001 From: Alexander Harding <2166114+aeharding@users.noreply.github.com> Date: Mon, 23 Dec 2024 15:05:49 -0600 Subject: [PATCH 10/16] chore: cap sync --- android/capacitor.settings.gradle | 4 ++-- ios/App/Podfile | 2 +- ios/App/Podfile.lock | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/android/capacitor.settings.gradle b/android/capacitor.settings.gradle index 63ad1aed7b..12c1a49e09 100644 --- a/android/capacitor.settings.gradle +++ b/android/capacitor.settings.gradle @@ -1,6 +1,6 @@ // DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN include ':capacitor-android' -project(':capacitor-android').projectDir = new File('../node_modules/.pnpm/@capacitor+android@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/android/capacitor') +project(':capacitor-android').projectDir = new File('../node_modules/.pnpm/@capacitor+android@6.2.0_patch_hash=a7fuehdtpweg2aifrflzmu363i_@capacitor+core@6.2.0/node_modules/@capacitor/android/capacitor') include ':capacitor-community-app-icon' project(':capacitor-community-app-icon').projectDir = new File('../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon/android') @@ -48,7 +48,7 @@ include ':capacitor-plugin-safe-area' project(':capacitor-plugin-safe-area').projectDir = new File('../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area/android') include ':capacitor-reader' -project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.2.0_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') +project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') include ':capacitor-stash-media' project(':capacitor-stash-media').projectDir = new File('../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media/android') diff --git a/ios/App/Podfile b/ios/App/Podfile index 6e17b88c38..0f4dfcabc2 100644 --- a/ios/App/Podfile +++ b/ios/App/Podfile @@ -26,7 +26,7 @@ def capacitor_pods pod 'CapacitorClearCache', :path => '../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache' pod 'CapacitorLaunchNative', :path => '../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native' pod 'CapacitorPluginSafeArea', :path => '../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area' - pod 'CapacitorReader', :path => '../../node_modules/.pnpm/capacitor-reader@0.2.0_@capacitor+core@6.2.0/node_modules/capacitor-reader' + pod 'CapacitorReader', :path => '../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader' pod 'CapacitorStashMedia', :path => '../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media' pod 'CapacitorTips', :path => '../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips' end diff --git a/ios/App/Podfile.lock b/ios/App/Podfile.lock index 2025018e68..ea23fc5525 100644 --- a/ios/App/Podfile.lock +++ b/ios/App/Podfile.lock @@ -26,7 +26,7 @@ PODS: - Capacitor - CapacitorPluginSafeArea (3.0.3): - Capacitor - - CapacitorReader (0.2.0): + - CapacitorReader (0.3.0): - Capacitor - CapacitorShare (6.0.3): - Capacitor @@ -58,7 +58,7 @@ DEPENDENCIES: - "CapacitorLaunchNative (from `../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native`)" - "CapacitorNetwork (from `../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network`)" - "CapacitorPluginSafeArea (from `../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area`)" - - "CapacitorReader (from `../../node_modules/.pnpm/capacitor-reader@0.2.0_@capacitor+core@6.2.0/node_modules/capacitor-reader`)" + - "CapacitorReader (from `../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader`)" - "CapacitorShare (from `../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share`)" - "CapacitorSplashScreen (from `../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen`)" - "CapacitorStashMedia (from `../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media`)" @@ -99,7 +99,7 @@ EXTERNAL SOURCES: CapacitorPluginSafeArea: :path: "../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area" CapacitorReader: - :path: "../../node_modules/.pnpm/capacitor-reader@0.2.0_@capacitor+core@6.2.0/node_modules/capacitor-reader" + :path: "../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader" CapacitorShare: :path: "../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share" CapacitorSplashScreen: @@ -126,7 +126,7 @@ SPEC CHECKSUMS: CapacitorLaunchNative: 6508ec892ad035d5556658c10cc3b55bfbb7929d CapacitorNetwork: da96b5fff8d05b67f4658503aabb22f65bda2c0f CapacitorPluginSafeArea: e1eca7f70974f0e270d96f70cd0a5f51523164b1 - CapacitorReader: 03775fab36b94587953bafcaa7131ade10cbf391 + CapacitorReader: 5f2c81961166ad9341424aeae0e25b4115fafeaa CapacitorShare: 7af6ca761ce62030e8e9fbd2eb82416f5ceced38 CapacitorSplashScreen: 68893659d77b5f82d753b3a70475082845e3039c CapacitorStashMedia: 10aa96dc5f874c4c27642528a4c327c46792abf2 @@ -134,6 +134,6 @@ SPEC CHECKSUMS: CapacitorTips: 2087733aea06ec041b210085395ca934c8554907 SDWebImage: f9258c58221ed854cfa0e2b80ee4033710b1c6d3 -PODFILE CHECKSUM: 810e83271706ad233eac03b47e2284efbdcfc205 +PODFILE CHECKSUM: f8c9e2e5019140f5c73954cbfccfad7f8537322d COCOAPODS: 1.16.2 From 13637e0b6d5f82179efbb3c77e33fec266f522fd Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Fri, 27 Dec 2024 12:10:39 -0800 Subject: [PATCH 11/16] refactor: use asyncNoop (#1786) --- package.json | 2 +- pnpm-lock.yaml | 325 +++++++++++++++++- .../media/gallery/GalleryProvider.tsx | 5 +- .../sliding/internal/impl/DMActionsImpl.tsx | 5 +- .../pages/settings/update/UpdateContext.tsx | 7 +- 5 files changed, 322 insertions(+), 22 deletions(-) diff --git a/package.json b/package.json index f12a8bee3a..81c2bb7f52 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "date-fns": "^4.1.0", "dexie": "^4.0.10", "dexie-export-import": "^4.1.4", - "es-toolkit": "^1.30.1", + "es-toolkit": "^1.31.0", "eslint-plugin-perfectionist": "^4.3.0", "history": "^4.10.1", "immer": "^10.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index efc0b36c7d..6cb8fe657f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -122,8 +122,8 @@ importers: specifier: ^4.1.4 version: 4.1.4(dexie@4.0.10) es-toolkit: - specifier: ^1.30.1 - version: 1.30.1 + specifier: ^1.31.0 + version: 1.31.0 eslint-plugin-perfectionist: specifier: ^4.3.0 version: 4.3.0(eslint@9.17.0)(typescript@5.7.2) @@ -2061,6 +2061,10 @@ packages: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + array-ify@1.0.0: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} @@ -2372,8 +2376,8 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chokidar@4.0.2: - resolution: {integrity: sha512-/b57FK+bblSU+dfewfFe0rT1YjVDfOmeLQwCAuC+vwvgLkXboATqqmy+Ipux6JrF6L5joe5CBnFOw+gLWH6yKg==} + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} engines: {node: '>= 14.16.0'} chownr@1.1.4: @@ -2650,14 +2654,26 @@ packages: resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} engines: {node: '>= 0.4'} + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + data-view-byte-length@1.0.1: resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} engines: {node: '>= 0.4'} + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + data-view-byte-offset@1.0.0: resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} engines: {node: '>= 0.4'} + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + date-fns@4.1.0: resolution: {integrity: sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==} @@ -2838,6 +2854,10 @@ packages: resolution: {integrity: sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==} engines: {node: '>= 0.4'} + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + duplexer2@0.1.4: resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} @@ -2896,6 +2916,10 @@ packages: resolution: {integrity: sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==} engines: {node: '>= 0.4'} + es-abstract@1.23.7: + resolution: {integrity: sha512-OygGC8kIcDhXX+6yAZRGLqwi2CmEXCbLQixeGUgYeR+Qwlppqmo7DIDr8XibtEBZp+fJcoYpoatp5qwLMEdcqQ==} + engines: {node: '>= 0.4'} + es-define-property@1.0.1: resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} engines: {node: '>= 0.4'} @@ -2926,8 +2950,8 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} - es-toolkit@1.30.1: - resolution: {integrity: sha512-ZXflqanzH8BpHkDhFa10bBf6ONDCe84EPUm7SSICGzuuROSluT2ynTPtwn9PcRelMtorCRozSknI/U0MNYp0Uw==} + es-toolkit@1.31.0: + resolution: {integrity: sha512-vwS0lv/tzjM2/t4aZZRAgN9I9TP0MSkWuvt6By+hEXfG/uLs8yg2S1/ayRXH/x3pinbLgVJYT+eppueg3cM6tg==} esbuild@0.24.0: resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} @@ -3215,6 +3239,10 @@ packages: resolution: {integrity: sha512-2g4x+HqTJKM9zcJqBSpjoRmdcPFtJM60J3xJisTQSXBWka5XqyBN/2tNUgma1mztTXyDuUsEtYe5qcs7xYzYQA==} engines: {node: '>= 0.4'} + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} @@ -3258,6 +3286,10 @@ packages: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + get-uri@6.0.4: resolution: {integrity: sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==} engines: {node: '>= 14'} @@ -3362,6 +3394,10 @@ packages: has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} @@ -3610,6 +3646,10 @@ packages: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} engines: {node: '>= 0.4'} + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} @@ -3640,6 +3680,10 @@ packages: resolution: {integrity: sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==} engines: {node: '>= 0.4'} + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + is-data-view@1.0.2: resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} engines: {node: '>= 0.4'} @@ -3780,6 +3824,10 @@ packages: resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} engines: {node: '>= 0.4'} + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + is-ssh@1.4.0: resolution: {integrity: sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==} @@ -3813,6 +3861,10 @@ packages: resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} engines: {node: '>= 0.4'} + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} @@ -4255,6 +4307,10 @@ packages: resolution: {integrity: sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==} engines: {node: '>= 0.4'} + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + mdast-squeeze-paragraphs@6.0.0: resolution: {integrity: sha512-6NDbJPTg0M0Ye+TlYwX1KJ1LFbp515P2immRJyJQhc9Na9cetHzSoHNYIQcXpANEAP1sm9yd/CTZU2uHqR5A+w==} @@ -4619,6 +4675,10 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + object.entries@1.1.8: resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} engines: {node: '>= 0.4'} @@ -5150,6 +5210,10 @@ packages: resolution: {integrity: sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==} engines: {node: '>= 0.4'} + reflect.getprototypeof@1.0.9: + resolution: {integrity: sha512-r0Ay04Snci87djAsI4U+WNRcSw5S4pOH7qFjd/veA5gC7TbqESR3tcj28ia95L/fYUDw11JKP7uqUKUAfVvV5Q==} + engines: {node: '>= 0.4'} + regenerate-unicode-properties@10.2.0: resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} engines: {node: '>=4'} @@ -5247,6 +5311,11 @@ packages: resolve-pathname@3.0.0: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==} + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true + resolve@1.22.9: resolution: {integrity: sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==} hasBin: true @@ -5547,6 +5616,10 @@ packages: resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} engines: {node: '>= 0.4'} + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + string.prototype.repeat@1.0.0: resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} @@ -5828,14 +5901,26 @@ packages: resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} engines: {node: '>= 0.4'} + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + typed-array-byte-length@1.0.1: resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} engines: {node: '>= 0.4'} + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + typed-array-byte-offset@1.0.3: resolution: {integrity: sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==} engines: {node: '>= 0.4'} + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + typed-array-length@1.0.7: resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} @@ -5875,6 +5960,10 @@ packages: unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + unbzip2-stream@1.4.3: resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==} @@ -6179,6 +6268,10 @@ packages: resolution: {integrity: sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==} engines: {node: '>= 0.4'} + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + which-builtin-type@1.2.1: resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} engines: {node: '>= 0.4'} @@ -6194,6 +6287,10 @@ packages: resolution: {integrity: sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==} engines: {node: '>= 0.4'} + which-typed-array@1.1.18: + resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} + engines: {node: '>= 0.4'} + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -7845,7 +7942,7 @@ snapshots: '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.9 + resolve: 1.22.10 optionalDependencies: rollup: 2.79.2 @@ -7946,7 +8043,7 @@ snapshots: ejs: 3.1.10 json5: 2.2.3 magic-string: 0.25.9 - string.prototype.matchall: 4.0.11 + string.prototype.matchall: 4.0.12 '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.26.0)': dependencies: @@ -8495,6 +8592,11 @@ snapshots: call-bind: 1.0.8 is-array-buffer: 3.0.4 + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.3 + is-array-buffer: 3.0.5 + array-ify@1.0.0: {} array-includes@3.1.8: @@ -8842,7 +8944,7 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chokidar@4.0.2: + chokidar@4.0.3: dependencies: readdirp: 4.0.2 optional: true @@ -9144,18 +9246,36 @@ snapshots: es-errors: 1.3.0 is-data-view: 1.0.2 + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-data-view: 1.0.2 + data-view-byte-length@1.0.1: dependencies: call-bind: 1.0.8 es-errors: 1.3.0 is-data-view: 1.0.2 + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-data-view: 1.0.2 + data-view-byte-offset@1.0.0: dependencies: call-bind: 1.0.8 es-errors: 1.3.0 is-data-view: 1.0.2 + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-data-view: 1.0.2 + date-fns@4.1.0: {} dateformat@3.0.3: {} @@ -9316,6 +9436,12 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + duplexer2@0.1.4: dependencies: readable-stream: 2.3.8 @@ -9413,6 +9539,56 @@ snapshots: unbox-primitive: 1.0.2 which-typed-array: 1.1.16 + es-abstract@1.23.7: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + es-set-tostringtag: 2.0.3 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.2.6 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.0 + math-intrinsics: 1.1.0 + object-inspect: 1.13.3 + object-keys: 1.1.1 + object.assign: 4.1.7 + regexp.prototype.flags: 1.5.3 + safe-array-concat: 1.1.3 + safe-regex-test: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.18 + es-define-property@1.0.1: {} es-errors@1.3.0: {} @@ -9457,7 +9633,7 @@ snapshots: is-date-object: 1.1.0 is-symbol: 1.1.1 - es-toolkit@1.30.1: {} + es-toolkit@1.31.0: {} esbuild@0.24.0: optionalDependencies: @@ -9840,6 +10016,15 @@ snapshots: hasown: 2.0.2 is-callable: 1.2.7 + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + functions-have-names@1.2.3: {} gensync@1.0.0-beta.2: {} @@ -9884,6 +10069,12 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.2.6 + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + get-uri@6.0.4: dependencies: basic-ftp: 5.0.5 @@ -10019,6 +10210,8 @@ snapshots: has-bigints@1.0.2: {} + has-bigints@1.1.0: {} + has-flag@3.0.0: {} has-flag@4.0.0: {} @@ -10355,6 +10548,12 @@ snapshots: call-bind: 1.0.8 get-intrinsic: 1.2.6 + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 + is-arrayish@0.2.1: {} is-async-function@2.0.0: @@ -10382,6 +10581,10 @@ snapshots: dependencies: hasown: 2.0.2 + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + is-data-view@1.0.2: dependencies: call-bound: 1.0.3 @@ -10480,6 +10683,10 @@ snapshots: dependencies: call-bind: 1.0.8 + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.3 + is-ssh@1.4.0: dependencies: protocols: 2.0.1 @@ -10511,6 +10718,10 @@ snapshots: dependencies: which-typed-array: 1.1.16 + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.18 + is-typedarray@1.0.0: {} is-unicode-supported@0.1.0: {} @@ -10940,6 +11151,8 @@ snapshots: math-intrinsics@1.0.0: {} + math-intrinsics@1.1.0: {} + mdast-squeeze-paragraphs@6.0.0: dependencies: '@types/mdast': 4.0.4 @@ -11472,6 +11685,15 @@ snapshots: has-symbols: 1.1.0 object-keys: 1.1.1 + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-object-atoms: 1.0.0 + has-symbols: 1.1.0 + object-keys: 1.1.1 + object.entries@1.1.8: dependencies: call-bind: 1.0.8 @@ -12096,6 +12318,17 @@ snapshots: gopd: 1.2.0 which-builtin-type: 1.2.1 + reflect.getprototypeof@1.0.9: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + dunder-proto: 1.0.1 + es-abstract: 1.23.7 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + which-builtin-type: 1.2.1 + regenerate-unicode-properties@10.2.0: dependencies: regenerate: 1.4.2 @@ -12248,6 +12481,12 @@ snapshots: resolve-pathname@3.0.0: {} + resolve@1.22.10: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + resolve@1.22.9: dependencies: is-core-module: 2.16.0 @@ -12355,7 +12594,7 @@ snapshots: sass@1.81.0: dependencies: - chokidar: 4.0.2 + chokidar: 4.0.3 immutable: 5.0.3 source-map-js: 1.2.1 optionalDependencies: @@ -12583,6 +12822,22 @@ snapshots: set-function-name: 2.0.2 side-channel: 1.1.0 + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-abstract: 1.23.7 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.3 + set-function-name: 2.0.2 + side-channel: 1.1.0 + string.prototype.repeat@1.0.0: dependencies: define-properties: 1.2.1 @@ -12872,6 +13127,12 @@ snapshots: es-errors: 1.3.0 is-typed-array: 1.1.13 + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + typed-array-byte-length@1.0.1: dependencies: call-bind: 1.0.8 @@ -12880,6 +13141,14 @@ snapshots: has-proto: 1.2.0 is-typed-array: 1.1.13 + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.3 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + typed-array-byte-offset@1.0.3: dependencies: available-typed-arrays: 1.0.7 @@ -12890,6 +13159,16 @@ snapshots: is-typed-array: 1.1.13 reflect.getprototypeof: 1.0.8 + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.3 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.9 + typed-array-length@1.0.7: dependencies: call-bind: 1.0.8 @@ -12949,6 +13228,13 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.0 + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.3 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + unbzip2-stream@1.4.3: dependencies: buffer: 5.7.1 @@ -13258,6 +13544,14 @@ snapshots: is-string: 1.1.1 is-symbol: 1.1.1 + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.1 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + which-builtin-type@1.2.1: dependencies: call-bound: 1.0.3 @@ -13291,6 +13585,15 @@ snapshots: gopd: 1.2.0 has-tostringtag: 1.0.2 + which-typed-array@1.1.18: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + for-each: 0.3.3 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + which@2.0.2: dependencies: isexe: 2.0.0 diff --git a/src/features/media/gallery/GalleryProvider.tsx b/src/features/media/gallery/GalleryProvider.tsx index a83c4119ed..413115d983 100644 --- a/src/features/media/gallery/GalleryProvider.tsx +++ b/src/features/media/gallery/GalleryProvider.tsx @@ -1,5 +1,5 @@ import { StatusBar } from "@capacitor/status-bar"; -import { compact, noop } from "es-toolkit"; +import { asyncNoop, compact, noop } from "es-toolkit"; import { PostView } from "lemmy-js-client"; import type { PreparedPhotoSwipeOptions, ZoomLevelOption } from "photoswipe"; import PhotoSwipeLightbox from "photoswipe/lightbox"; @@ -38,8 +38,7 @@ interface IGalleryContext { } export const GalleryContext = createContext({ - // eslint-disable-next-line no-empty-function - open: async () => {}, + open: asyncNoop, close: noop, }); diff --git a/src/features/shared/sliding/internal/impl/DMActionsImpl.tsx b/src/features/shared/sliding/internal/impl/DMActionsImpl.tsx index 4148d4e8df..22b0bfd936 100644 --- a/src/features/shared/sliding/internal/impl/DMActionsImpl.tsx +++ b/src/features/shared/sliding/internal/impl/DMActionsImpl.tsx @@ -1,4 +1,4 @@ -import { noop } from "es-toolkit"; +import { asyncNoop, noop } from "es-toolkit"; import { ComponentProps, useContext } from "react"; import { PageContext } from "#/features/auth/PageContext"; @@ -41,8 +41,7 @@ export default function DMActionsImpl({ }} collapse={noop} collapseRootComment={noop} - // eslint-disable-next-line no-empty-function -- https://github.com/toss/es-toolkit/issues/636 - save={async () => {}} + save={asyncNoop} isHidden={false} shareTrigger={noop} isSaved={false} diff --git a/src/routes/pages/settings/update/UpdateContext.tsx b/src/routes/pages/settings/update/UpdateContext.tsx index eca367788f..bd9f187c40 100644 --- a/src/routes/pages/settings/update/UpdateContext.tsx +++ b/src/routes/pages/settings/update/UpdateContext.tsx @@ -1,4 +1,5 @@ import { useDocumentVisibility, useInterval } from "@mantine/hooks"; +import { asyncNoop } from "es-toolkit"; import React, { createContext, useEffect, @@ -23,10 +24,8 @@ interface IUpdateContext { } export const UpdateContext = createContext({ - // eslint-disable-next-line no-empty-function -- https://github.com/toss/es-toolkit/issues/636 - checkForUpdates: async () => {}, - // eslint-disable-next-line no-empty-function -- https://github.com/toss/es-toolkit/issues/636 - updateServiceWorker: async () => {}, + checkForUpdates: asyncNoop, + updateServiceWorker: asyncNoop, status: "loading", }); From e41dec508383b177bbb118bda4e885efe017c3db Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Fri, 27 Dec 2024 12:26:29 -0800 Subject: [PATCH 12/16] fix: pwa router corruption when switching accounts in certain way (#1698) --- src/routes/common/ActorRedirect.tsx | 51 +++++++++++++++++++---------- 1 file changed, 33 insertions(+), 18 deletions(-) diff --git a/src/routes/common/ActorRedirect.tsx b/src/routes/common/ActorRedirect.tsx index dff0a8d3ba..2cc91f42f5 100644 --- a/src/routes/common/ActorRedirect.tsx +++ b/src/routes/common/ActorRedirect.tsx @@ -1,7 +1,9 @@ -import { Redirect, useLocation, useParams } from "react-router"; +import { useLayoutEffect } from "react"; +import { useLocation } from "react-router"; import { isInstalled } from "#/helpers/device"; import useIonViewIsVisible from "#/helpers/useIonViewIsVisible"; +import { useOptimizedIonRouter } from "#/helpers/useOptimizedIonRouter"; import { useAppSelector } from "#/store"; export const usingActorRedirect = !isInstalled(); @@ -13,28 +15,41 @@ export default function ActorRedirect({ children }: React.PropsWithChildren) { } function ActorRedirectEnabled({ children }: React.PropsWithChildren) { - const { actor } = useParams<{ actor: string }>(); const connectedInstance = useAppSelector( (state) => state.auth.connectedInstance, ); const location = useLocation(); const ionViewIsVisible = useIonViewIsVisible(); - - if (!ionViewIsVisible) return children; - if (!connectedInstance || !actor) return children; - if (connectedInstance === actor) return children; - - const [first, second, _wrongActor, ...urlEnd] = location.pathname.split("/"); - - // no need to redirect if url doesn't have actor - if (!_wrongActor || !isPotentialActor(_wrongActor)) return children; - - return ( - - ); + const router = useOptimizedIonRouter(); + + useLayoutEffect(() => { + if (!ionViewIsVisible) return; + + const [first, second, _wrongActor, ...urlEnd] = + location.pathname.split("/"); + + // no need to redirect if url doesn't have actor + if (!_wrongActor || !isPotentialActor(_wrongActor)) return; + + if (!connectedInstance || !_wrongActor) return; + if (connectedInstance === _wrongActor) return; + + requestAnimationFrame(() => { + router.push( + [first, second, connectedInstance, ...urlEnd].join("/"), + "root", + "replace", + ); + }); + }, [ + children, + connectedInstance, + ionViewIsVisible, + location.pathname, + router, + ]); + + return children; } function isPotentialActor(host: string) { From d9fcccac748d76848c0071a6f0b3caa1ae3097fd Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Fri, 27 Dec 2024 14:28:04 -0800 Subject: [PATCH 13/16] build: add ios spm package, remove cocoapods (#1785) --- CONTRIBUTING.md | 1 - android/capacitor.settings.gradle | 16 +- ios/App/App.xcodeproj/project.pbxproj | 95 +++++------- .../contents.xcworkspacedata | 2 +- .../xcshareddata/swiftpm/Package.resolved | 24 +++ .../App.xcworkspace/contents.xcworkspacedata | 3 - ios/App/CapApp-SPM/.gitignore | 9 ++ ios/App/CapApp-SPM/Package.swift | 61 ++++++++ ios/App/CapApp-SPM/README.md | 8 + .../Sources/CapApp-SPM/CapApp-SPM.swift | 1 + ios/App/Podfile | 41 ------ ios/App/Podfile.lock | 139 ------------------ package.json | 20 +-- pnpm-lock.yaml | 101 ++++++------- 14 files changed, 207 insertions(+), 314 deletions(-) create mode 100644 ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved create mode 100644 ios/App/CapApp-SPM/.gitignore create mode 100644 ios/App/CapApp-SPM/Package.swift create mode 100644 ios/App/CapApp-SPM/README.md create mode 100644 ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift delete mode 100644 ios/App/Podfile delete mode 100644 ios/App/Podfile.lock diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c710bbae74..a68f7d5939 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -53,7 +53,6 @@ To build the iOS native app, install: 1. [Node](https://nodejs.org) 2. [Xcode](https://developer.apple.com/xcode/) -3. [Cocoapods](https://cocoapods.org) Then, in Voyager's source code directory, build the project: diff --git a/android/capacitor.settings.gradle b/android/capacitor.settings.gradle index 12c1a49e09..5e5f3f4487 100644 --- a/android/capacitor.settings.gradle +++ b/android/capacitor.settings.gradle @@ -3,7 +3,7 @@ include ':capacitor-android' project(':capacitor-android').projectDir = new File('../node_modules/.pnpm/@capacitor+android@6.2.0_patch_hash=a7fuehdtpweg2aifrflzmu363i_@capacitor+core@6.2.0/node_modules/@capacitor/android/capacitor') include ':capacitor-community-app-icon' -project(':capacitor-community-app-icon').projectDir = new File('../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon/android') +project(':capacitor-community-app-icon').projectDir = new File('../../app-icon/android') include ':capacitor-app' project(':capacitor-app').projectDir = new File('../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app/android') @@ -30,19 +30,19 @@ include ':capacitor-status-bar' project(':capacitor-status-bar').projectDir = new File('../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar/android') include ':capacitor-android-nav-mode' -project(':capacitor-android-nav-mode').projectDir = new File('../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode/android') +project(':capacitor-android-nav-mode').projectDir = new File('../node_modules/.pnpm/capacitor-android-nav-mode@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode/android') include ':capacitor-application-context' -project(':capacitor-application-context').projectDir = new File('../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context/android') +project(':capacitor-application-context').projectDir = new File('../node_modules/.pnpm/capacitor-application-context@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-application-context/android') include ':capacitor-biometric-lock' -project(':capacitor-biometric-lock').projectDir = new File('../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock/android') +project(':capacitor-biometric-lock').projectDir = new File('../node_modules/.pnpm/capacitor-biometric-lock@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock/android') include ':capacitor-clear-cache' -project(':capacitor-clear-cache').projectDir = new File('../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache/android') +project(':capacitor-clear-cache').projectDir = new File('../node_modules/.pnpm/capacitor-clear-cache@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache/android') include ':capacitor-launch-native' -project(':capacitor-launch-native').projectDir = new File('../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native/android') +project(':capacitor-launch-native').projectDir = new File('../node_modules/.pnpm/capacitor-launch-native@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-launch-native/android') include ':capacitor-plugin-safe-area' project(':capacitor-plugin-safe-area').projectDir = new File('../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area/android') @@ -51,7 +51,7 @@ include ':capacitor-reader' project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') include ':capacitor-stash-media' -project(':capacitor-stash-media').projectDir = new File('../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media/android') +project(':capacitor-stash-media').projectDir = new File('../node_modules/.pnpm/capacitor-stash-media@2.1.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media/android') include ':capacitor-tips' -project(':capacitor-tips').projectDir = new File('../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips/android') +project(':capacitor-tips').projectDir = new File('../node_modules/.pnpm/capacitor-tips@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-tips/android') diff --git a/ios/App/App.xcodeproj/project.pbxproj b/ios/App/App.xcodeproj/project.pbxproj index bcb83ba6c9..3ab5e43b42 100644 --- a/ios/App/App.xcodeproj/project.pbxproj +++ b/ios/App/App.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 48; + objectVersion = 60; objects = { /* Begin PBXBuildFile section */ @@ -13,7 +13,6 @@ 504EC30D1FED79650016851F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC30B1FED79650016851F /* Main.storyboard */; }; 504EC3121FED79650016851F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC3101FED79650016851F /* LaunchScreen.storyboard */; }; 50B271D11FEDC1A000F3C39B /* public in Resources */ = {isa = PBXBuildFile; fileRef = 50B271D01FEDC1A000F3C39B /* public */; }; - A084ECDBA7D38E1E42DFC39D /* Pods_App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */; }; E71849C82B9FA18C00F6C005 /* UniformTypeIdentifiers.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E71849C72B9FA18C00F6C005 /* UniformTypeIdentifiers.framework */; }; E71849CD2B9FA18C00F6C005 /* ActionRequestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E71849CC2B9FA18C00F6C005 /* ActionRequestHandler.swift */; }; E71849CF2B9FA18C00F6C005 /* Action.js in Resources */ = {isa = PBXBuildFile; fileRef = E71849CE2B9FA18C00F6C005 /* Action.js */; }; @@ -80,6 +79,7 @@ /* Begin PBXFileReference section */ 2FAD9762203C412B000D30F8 /* config.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = config.xml; sourceTree = ""; }; + 4D22ABE92AF431CB00220026 /* CapApp-SPM in Frameworks */ = {isa = PBXBuildFile; productRef = 4D22ABE82AF431CB00220026 /* CapApp-SPM */; }; 50379B222058CBB4000EE86E /* capacitor.config.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = capacitor.config.json; sourceTree = ""; }; 504EC3041FED79650016851F /* App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App.app; sourceTree = BUILT_PRODUCTS_DIR; }; 504EC3071FED79650016851F /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -88,8 +88,6 @@ 504EC3111FED79650016851F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 504EC3131FED79650016851F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 50B271D01FEDC1A000F3C39B /* public */ = {isa = PBXFileReference; lastKnownFileType = folder; path = public; sourceTree = ""; }; - AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_App.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-App.release.xcconfig"; path = "Pods/Target Support Files/Pods-App/Pods-App.release.xcconfig"; sourceTree = ""; }; E71849C62B9FA18C00F6C005 /* VoyagerActionExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = VoyagerActionExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; E71849C72B9FA18C00F6C005 /* UniformTypeIdentifiers.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniformTypeIdentifiers.framework; path = System/Library/Frameworks/UniformTypeIdentifiers.framework; sourceTree = SDKROOT; }; E71849CC2B9FA18C00F6C005 /* ActionRequestHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionRequestHandler.swift; sourceTree = ""; }; @@ -110,7 +108,6 @@ E75D256C2A7C369800C4AD87 /* SavePost.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SavePost.swift; sourceTree = ""; }; E75D256D2A7C369800C4AD87 /* PostView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostView.swift; sourceTree = ""; }; E75D256E2A7C369800C4AD87 /* GetPostsResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GetPostsResponse.swift; sourceTree = ""; }; - FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-App.debug.xcconfig"; path = "Pods/Target Support Files/Pods-App/Pods-App.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -118,7 +115,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A084ECDBA7D38E1E42DFC39D /* Pods_App.framework in Frameworks */, + 4D22ABE92AF431CB00220026 /* CapApp-SPM in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -143,7 +140,6 @@ 27E2DDA53C4D2A4D1A88CE4A /* Frameworks */ = { isa = PBXGroup; children = ( - AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */, E71849C72B9FA18C00F6C005 /* UniformTypeIdentifiers.framework */, ); name = Frameworks; @@ -156,8 +152,6 @@ E75D25472A7C351E00C4AD87 /* VoyagerWatch Watch App */, E71849C92B9FA18C00F6C005 /* VoyagerActionExtension */, 504EC3051FED79650016851F /* Products */, - 7F8756D8B27F46E3366F6CEA /* Pods */, - 27E2DDA53C4D2A4D1A88CE4A /* Frameworks */, ); sourceTree = ""; }; @@ -186,15 +180,6 @@ path = App; sourceTree = ""; }; - 7F8756D8B27F46E3366F6CEA /* Pods */ = { - isa = PBXGroup; - children = ( - FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */, - AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */, - ); - name = Pods; - sourceTree = ""; - }; E71849C92B9FA18C00F6C005 /* VoyagerActionExtension */ = { isa = PBXGroup; children = ( @@ -249,11 +234,9 @@ isa = PBXNativeTarget; buildConfigurationList = 504EC3161FED79650016851F /* Build configuration list for PBXNativeTarget "App" */; buildPhases = ( - 6634F4EFEBD30273BCE97C65 /* [CP] Check Pods Manifest.lock */, 504EC3001FED79650016851F /* Sources */, 504EC3011FED79650016851F /* Frameworks */, 504EC3021FED79650016851F /* Resources */, - 9592DBEFFC6D2A0C8D5DEB22 /* [CP] Embed Pods Frameworks */, E75D25542A7C351F00C4AD87 /* Embed Watch Content */, E71849D42B9FA18C00F6C005 /* Embed Foundation Extensions */, ); @@ -264,6 +247,9 @@ E71849D22B9FA18C00F6C005 /* PBXTargetDependency */, ); name = App; + packageProductDependencies = ( + 4D22ABE82AF431CB00220026 /* CapApp-SPM */, + ); productName = App; productReference = 504EC3041FED79650016851F /* App.app */; productType = "com.apple.product-type.application"; @@ -335,6 +321,9 @@ Base, ); mainGroup = 504EC2FB1FED79650016851F; + packageReferences = ( + D4C12C0A2AAA248700AAC8A2 /* XCLocalSwiftPackageReference "CapApp-SPM" */, + ); productRefGroup = 504EC3051FED79650016851F /* Products */; projectDirPath = ""; projectRoot = ""; @@ -380,42 +369,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - 6634F4EFEBD30273BCE97C65 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-App-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 9592DBEFFC6D2A0C8D5DEB22 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-App/Pods-App-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ 504EC3001FED79650016851F /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -591,7 +544,8 @@ IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; VALIDATE_PRODUCT = YES; WATCHOS_DEPLOYMENT_TARGET = 9.1; }; @@ -599,7 +553,6 @@ }; 504EC3171FED79650016851F /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -610,7 +563,10 @@ "DEVELOPMENT_TEAM[sdk=iphoneos*]" = SYTN44U2UN; INFOPLIST_FILE = App/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 15.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\""; PRODUCT_BUNDLE_IDENTIFIER = app.vger.voyager; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -624,7 +580,6 @@ }; 504EC3181FED79650016851F /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -635,7 +590,10 @@ "DEVELOPMENT_TEAM[sdk=iphoneos*]" = SYTN44U2UN; INFOPLIST_FILE = App/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 15.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = app.vger.voyager; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -829,6 +787,21 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCLocalSwiftPackageReference section */ + D4C12C0A2AAA248700AAC8A2 /* XCLocalSwiftPackageReference "CapApp-SPM" */ = { + isa = XCLocalSwiftPackageReference; + relativePath = "CapApp-SPM"; + }; +/* End XCLocalSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 4D22ABE82AF431CB00220026 /* CapApp-SPM */ = { + isa = XCSwiftPackageProductDependency; + package = D4C12C0A2AAA248700AAC8A2 /* XCLocalSwiftPackageReference "CapApp-SPM" */; + productName = "CapApp-SPM"; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 504EC2FC1FED79650016851F /* Project object */; } diff --git a/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata index 42daef8a10..919434a625 100644 --- a/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:"> diff --git a/ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 0000000000..e80978d61c --- /dev/null +++ b/ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,24 @@ +{ + "originHash" : "c5372c4136ff7c93b2796ad19793be4862c364c96ff9cf06f35f7ecc445529b6", + "pins" : [ + { + "identity" : "capacitor-swift-pm", + "kind" : "remoteSourceControl", + "location" : "https://github.com/ionic-team/capacitor-swift-pm.git", + "state" : { + "branch" : "6.0.0", + "revision" : "8a46dff3a8292761df1bded13a508da1c85859e8" + } + }, + { + "identity" : "sdwebimage", + "kind" : "remoteSourceControl", + "location" : "https://github.com/SDWebImage/SDWebImage.git", + "state" : { + "revision" : "10d06f6a33bafae8c164fbfd1f03391f6d4692b3", + "version" : "5.20.0" + } + } + ], + "version" : 3 +} diff --git a/ios/App/App.xcworkspace/contents.xcworkspacedata b/ios/App/App.xcworkspace/contents.xcworkspacedata index b301e824b3..b3795ee15d 100644 --- a/ios/App/App.xcworkspace/contents.xcworkspacedata +++ b/ios/App/App.xcworkspace/contents.xcworkspacedata @@ -4,7 +4,4 @@ - - diff --git a/ios/App/CapApp-SPM/.gitignore b/ios/App/CapApp-SPM/.gitignore new file mode 100644 index 0000000000..3b29812086 --- /dev/null +++ b/ios/App/CapApp-SPM/.gitignore @@ -0,0 +1,9 @@ +.DS_Store +/.build +/Packages +/*.xcodeproj +xcuserdata/ +DerivedData/ +.swiftpm/config/registries.json +.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +.netrc diff --git a/ios/App/CapApp-SPM/Package.swift b/ios/App/CapApp-SPM/Package.swift new file mode 100644 index 0000000000..20cd7ffac3 --- /dev/null +++ b/ios/App/CapApp-SPM/Package.swift @@ -0,0 +1,61 @@ +// swift-tools-version: 5.9 +import PackageDescription + +// DO NOT MODIFY THIS FILE - managed by Capacitor CLI commands +let package = Package( + name: "CapApp-SPM", + platforms: [.iOS(.v13)], + products: [ + .library( + name: "CapApp-SPM", + targets: ["CapApp-SPM"]) + ], + dependencies: [ + .package(url: "https://github.com/ionic-team/capacitor-swift-pm.git", exact: "6.2.0"), + .package(name: "CapacitorCommunityAppIcon", path: "../../../node_modules/.pnpm/@capacitor-community+app-icon@https+++codeload.github.com+aeharding+app-icon+tar.gz+648b174d6_pgn7xugfns7qdg3hg5wemsat2a/node_modules/@capacitor-community/app-icon"), + .package(name: "CapacitorApp", path: "../../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app"), + .package(name: "CapacitorFilesystem", path: "../../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem"), + .package(name: "CapacitorHaptics", path: "../../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics"), + .package(name: "CapacitorKeyboard", path: "../../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard"), + .package(name: "CapacitorNetwork", path: "../../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network"), + .package(name: "CapacitorShare", path: "../../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share"), + .package(name: "CapacitorSplashScreen", path: "../../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen"), + .package(name: "CapacitorStatusBar", path: "../../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar"), + .package(name: "CapacitorAndroidNavMode", path: "../../../node_modules/.pnpm/capacitor-android-nav-mode@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode"), + .package(name: "CapacitorApplicationContext", path: "../../../node_modules/.pnpm/capacitor-application-context@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-application-context"), + .package(name: "CapacitorBiometricLock", path: "../../../node_modules/.pnpm/capacitor-biometric-lock@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock"), + .package(name: "CapacitorClearCache", path: "../../../node_modules/.pnpm/capacitor-clear-cache@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache"), + .package(name: "CapacitorLaunchNative", path: "../../../node_modules/.pnpm/capacitor-launch-native@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-launch-native"), + .package(name: "CapacitorPluginSafeArea", path: "../../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.4_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area"), + .package(name: "CapacitorReader", path: "../../../node_modules/.pnpm/capacitor-reader@0.3.1_@capacitor+core@6.2.0/node_modules/capacitor-reader"), + .package(name: "CapacitorStashMedia", path: "../../../node_modules/.pnpm/capacitor-stash-media@2.1.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media"), + .package(name: "CapacitorTips", path: "../../../node_modules/.pnpm/capacitor-tips@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-tips") + ], + targets: [ + .target( + name: "CapApp-SPM", + dependencies: [ + .product(name: "Capacitor", package: "capacitor-swift-pm"), + .product(name: "Cordova", package: "capacitor-swift-pm"), + .product(name: "CapacitorCommunityAppIcon", package: "CapacitorCommunityAppIcon"), + .product(name: "CapacitorApp", package: "CapacitorApp"), + .product(name: "CapacitorFilesystem", package: "CapacitorFilesystem"), + .product(name: "CapacitorHaptics", package: "CapacitorHaptics"), + .product(name: "CapacitorKeyboard", package: "CapacitorKeyboard"), + .product(name: "CapacitorNetwork", package: "CapacitorNetwork"), + .product(name: "CapacitorShare", package: "CapacitorShare"), + .product(name: "CapacitorSplashScreen", package: "CapacitorSplashScreen"), + .product(name: "CapacitorStatusBar", package: "CapacitorStatusBar"), + .product(name: "CapacitorAndroidNavMode", package: "CapacitorAndroidNavMode"), + .product(name: "CapacitorApplicationContext", package: "CapacitorApplicationContext"), + .product(name: "CapacitorBiometricLock", package: "CapacitorBiometricLock"), + .product(name: "CapacitorClearCache", package: "CapacitorClearCache"), + .product(name: "CapacitorLaunchNative", package: "CapacitorLaunchNative"), + .product(name: "CapacitorPluginSafeArea", package: "CapacitorPluginSafeArea"), + .product(name: "CapacitorReader", package: "CapacitorReader"), + .product(name: "CapacitorStashMedia", package: "CapacitorStashMedia"), + .product(name: "CapacitorTips", package: "CapacitorTips") + ] + ) + ] +) diff --git a/ios/App/CapApp-SPM/README.md b/ios/App/CapApp-SPM/README.md new file mode 100644 index 0000000000..9b9fd37e34 --- /dev/null +++ b/ios/App/CapApp-SPM/README.md @@ -0,0 +1,8 @@ +# CapApp-SPM + +> [!WARNING] +> SPM Support is currently experimental. + +This SPM is used to host SPM dependancies for you Capacitor project + +Do not modifiy the contents of it or there may be unintended concquences. diff --git a/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift b/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift new file mode 100644 index 0000000000..945afec8c7 --- /dev/null +++ b/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift @@ -0,0 +1 @@ +public let isCapacitorApp = true diff --git a/ios/App/Podfile b/ios/App/Podfile deleted file mode 100644 index 0f4dfcabc2..0000000000 --- a/ios/App/Podfile +++ /dev/null @@ -1,41 +0,0 @@ -require_relative '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios/scripts/pods_helpers' - -platform :ios, '13.0' -use_frameworks! - -# workaround to avoid Xcode caching of Pods that requires -# Product -> Clean Build Folder after new Cordova plugins installed -# Requires CocoaPods 1.6 or newer -install! 'cocoapods', :disable_input_output_paths => true - -def capacitor_pods - pod 'Capacitor', :path => '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios' - pod 'CapacitorCordova', :path => '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios' - pod 'CapacitorCommunityAppIcon', :path => '../../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon' - pod 'CapacitorApp', :path => '../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app' - pod 'CapacitorFilesystem', :path => '../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem' - pod 'CapacitorHaptics', :path => '../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics' - pod 'CapacitorKeyboard', :path => '../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard' - pod 'CapacitorNetwork', :path => '../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network' - pod 'CapacitorShare', :path => '../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share' - pod 'CapacitorSplashScreen', :path => '../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen' - pod 'CapacitorStatusBar', :path => '../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar' - pod 'CapacitorAndroidNavMode', :path => '../../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode' - pod 'CapacitorApplicationContext', :path => '../../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context' - pod 'CapacitorBiometricLock', :path => '../../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock' - pod 'CapacitorClearCache', :path => '../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache' - pod 'CapacitorLaunchNative', :path => '../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native' - pod 'CapacitorPluginSafeArea', :path => '../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area' - pod 'CapacitorReader', :path => '../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader' - pod 'CapacitorStashMedia', :path => '../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media' - pod 'CapacitorTips', :path => '../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips' -end - -target 'App' do - capacitor_pods - # Add your Pods here -end - -post_install do |installer| - assertDeploymentTarget(installer) -end diff --git a/ios/App/Podfile.lock b/ios/App/Podfile.lock deleted file mode 100644 index ea23fc5525..0000000000 --- a/ios/App/Podfile.lock +++ /dev/null @@ -1,139 +0,0 @@ -PODS: - - Capacitor (6.2.0): - - CapacitorCordova - - CapacitorAndroidNavMode (1.0.0): - - Capacitor - - CapacitorApp (6.0.2): - - Capacitor - - CapacitorApplicationContext (1.0.0): - - Capacitor - - CapacitorBiometricLock (1.0.0): - - Capacitor - - CapacitorClearCache (1.0.1): - - Capacitor - - CapacitorCommunityAppIcon (5.0.0): - - Capacitor - - CapacitorCordova (6.2.0) - - CapacitorFilesystem (6.0.2): - - Capacitor - - CapacitorHaptics (6.0.2): - - Capacitor - - CapacitorKeyboard (6.0.3): - - Capacitor - - CapacitorLaunchNative (1.0.0): - - Capacitor - - CapacitorNetwork (6.0.3): - - Capacitor - - CapacitorPluginSafeArea (3.0.3): - - Capacitor - - CapacitorReader (0.3.0): - - Capacitor - - CapacitorShare (6.0.3): - - Capacitor - - CapacitorSplashScreen (6.0.3): - - Capacitor - - CapacitorStashMedia (2.0.1): - - Capacitor - - SDWebImage - - CapacitorStatusBar (6.0.2): - - Capacitor - - CapacitorTips (1.0.0): - - Capacitor - - SDWebImage (5.18.7): - - SDWebImage/Core (= 5.18.7) - - SDWebImage/Core (5.18.7) - -DEPENDENCIES: - - "Capacitor (from `../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios`)" - - "CapacitorAndroidNavMode (from `../../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode`)" - - "CapacitorApp (from `../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app`)" - - "CapacitorApplicationContext (from `../../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context`)" - - "CapacitorBiometricLock (from `../../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock`)" - - "CapacitorClearCache (from `../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache`)" - - "CapacitorCommunityAppIcon (from `../../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon`)" - - "CapacitorCordova (from `../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios`)" - - "CapacitorFilesystem (from `../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem`)" - - "CapacitorHaptics (from `../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics`)" - - "CapacitorKeyboard (from `../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard`)" - - "CapacitorLaunchNative (from `../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native`)" - - "CapacitorNetwork (from `../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network`)" - - "CapacitorPluginSafeArea (from `../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area`)" - - "CapacitorReader (from `../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader`)" - - "CapacitorShare (from `../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share`)" - - "CapacitorSplashScreen (from `../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen`)" - - "CapacitorStashMedia (from `../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media`)" - - "CapacitorStatusBar (from `../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar`)" - - "CapacitorTips (from `../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips`)" - -SPEC REPOS: - trunk: - - SDWebImage - -EXTERNAL SOURCES: - Capacitor: - :path: "../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios" - CapacitorAndroidNavMode: - :path: "../../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode" - CapacitorApp: - :path: "../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app" - CapacitorApplicationContext: - :path: "../../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context" - CapacitorBiometricLock: - :path: "../../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock" - CapacitorClearCache: - :path: "../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache" - CapacitorCommunityAppIcon: - :path: "../../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon" - CapacitorCordova: - :path: "../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios" - CapacitorFilesystem: - :path: "../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem" - CapacitorHaptics: - :path: "../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics" - CapacitorKeyboard: - :path: "../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard" - CapacitorLaunchNative: - :path: "../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native" - CapacitorNetwork: - :path: "../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network" - CapacitorPluginSafeArea: - :path: "../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area" - CapacitorReader: - :path: "../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader" - CapacitorShare: - :path: "../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share" - CapacitorSplashScreen: - :path: "../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen" - CapacitorStashMedia: - :path: "../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media" - CapacitorStatusBar: - :path: "../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar" - CapacitorTips: - :path: "../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips" - -SPEC CHECKSUMS: - Capacitor: 1f3c7b9802d958cd8c4eb63895fff85dff2e1eea - CapacitorAndroidNavMode: 94c169757cc0e9b82d7af168a5e59283e4bcc885 - CapacitorApp: 2a8c3a0b0814322e5e6e15fe595f02c3808f0f8b - CapacitorApplicationContext: 2bee68107e6efb8f89b5db102dc95a9cf74c9464 - CapacitorBiometricLock: a91f2e8b28527e0d98032270f9363c4844abf1b9 - CapacitorClearCache: 66a0b1bd6ed2d130d1c5467d3c001486cc1aa1eb - CapacitorCommunityAppIcon: 4873c7de4cd50e68a36e08fe93f88f479e7b16a2 - CapacitorCordova: b33e7f4aa4ed105dd43283acdd940964374a87d9 - CapacitorFilesystem: c832a3f6d4870c3872688e782ae8e33665e6ecbf - CapacitorHaptics: b53409aaca1203f79c6d0eb3ed5de40556339518 - CapacitorKeyboard: 460c6f9ec5e52c84f2742d5ce2e67bbc7ab0ebb0 - CapacitorLaunchNative: 6508ec892ad035d5556658c10cc3b55bfbb7929d - CapacitorNetwork: da96b5fff8d05b67f4658503aabb22f65bda2c0f - CapacitorPluginSafeArea: e1eca7f70974f0e270d96f70cd0a5f51523164b1 - CapacitorReader: 5f2c81961166ad9341424aeae0e25b4115fafeaa - CapacitorShare: 7af6ca761ce62030e8e9fbd2eb82416f5ceced38 - CapacitorSplashScreen: 68893659d77b5f82d753b3a70475082845e3039c - CapacitorStashMedia: 10aa96dc5f874c4c27642528a4c327c46792abf2 - CapacitorStatusBar: 3b9ac7d0684770522c532d1158a1434512ab1477 - CapacitorTips: 2087733aea06ec041b210085395ca934c8554907 - SDWebImage: f9258c58221ed854cfa0e2b80ee4033710b1c6d3 - -PODFILE CHECKSUM: f8c9e2e5019140f5c73954cbfccfad7f8537322d - -COCOAPODS: 1.16.2 diff --git a/package.json b/package.json index 81c2bb7f52..17f780a3bc 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ }, "dependencies": { "@aeharding/remark-lemmy-spoiler": "^2.0.0", - "@capacitor-community/app-icon": "^5.0.0", + "@capacitor-community/app-icon": "git+ssh://git@github.com:aeharding/app-icon.git#648b174d69b8190cc1d936ab06733c00545262e5", "@capacitor/android": "^6.2.0", "@capacitor/app": "^6.0.2", "@capacitor/core": "^6.2.0", @@ -68,15 +68,15 @@ "@ionic/react-router": "8.4.1", "@mantine/hooks": "^7.15.1", "@reduxjs/toolkit": "^2.5.0", - "capacitor-android-nav-mode": "^1.0.0", - "capacitor-application-context": "^1.0.0", - "capacitor-biometric-lock": "^1.0.0", - "capacitor-clear-cache": "^1.0.1", - "capacitor-launch-native": "^1.0.0", - "capacitor-plugin-safe-area": "^3.0.3", - "capacitor-reader": "^0.3.0", - "capacitor-stash-media": "^2.0.1", - "capacitor-tips": "^1.0.0", + "capacitor-android-nav-mode": "^1.1.1", + "capacitor-application-context": "^1.1.1", + "capacitor-biometric-lock": "^1.1.1", + "capacitor-clear-cache": "^1.1.1", + "capacitor-launch-native": "^1.1.1", + "capacitor-plugin-safe-area": "^3.0.4", + "capacitor-reader": "^0.3.1", + "capacitor-stash-media": "^2.1.1", + "capacitor-tips": "^1.1.1", "colorjs.io": "^0.5.2", "compare-versions": "^6.1.1", "date-fns": "^4.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6cb8fe657f..6cf7d51409 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -26,8 +26,8 @@ importers: specifier: ^2.0.0 version: 2.0.0 '@capacitor-community/app-icon': - specifier: ^5.0.0 - version: 5.0.0(@capacitor/core@6.2.0) + specifier: git+ssh://git@github.com:aeharding/app-icon.git#648b174d69b8190cc1d936ab06733c00545262e5 + version: https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5(@capacitor/core@6.2.0) '@capacitor/android': specifier: ^6.2.0 version: 6.2.0(patch_hash=a7fuehdtpweg2aifrflzmu363i)(@capacitor/core@6.2.0) @@ -80,32 +80,32 @@ importers: specifier: ^2.5.0 version: 2.5.0(react-redux@9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1))(react@0.0.0-experimental-4dff0e62-20241213) capacitor-android-nav-mode: - specifier: ^1.0.0 - version: 1.0.0(@capacitor/core@6.2.0) + specifier: ^1.1.1 + version: 1.1.1(@capacitor/core@6.2.0) capacitor-application-context: - specifier: ^1.0.0 - version: 1.0.0(@capacitor/core@6.2.0) + specifier: ^1.1.1 + version: 1.1.1(@capacitor/core@6.2.0) capacitor-biometric-lock: - specifier: ^1.0.0 - version: 1.0.0(@capacitor/core@6.2.0) + specifier: ^1.1.1 + version: 1.1.1(@capacitor/core@6.2.0) capacitor-clear-cache: - specifier: ^1.0.1 - version: 1.0.1(@capacitor/core@6.2.0) + specifier: ^1.1.1 + version: 1.1.1(@capacitor/core@6.2.0) capacitor-launch-native: - specifier: ^1.0.0 - version: 1.0.0(@capacitor/core@6.2.0) + specifier: ^1.1.1 + version: 1.1.1(@capacitor/core@6.2.0) capacitor-plugin-safe-area: - specifier: ^3.0.3 - version: 3.0.3(@capacitor/core@6.2.0) + specifier: ^3.0.4 + version: 3.0.4(@capacitor/core@6.2.0) capacitor-reader: - specifier: ^0.3.0 - version: 0.3.0(@capacitor/core@6.2.0) + specifier: ^0.3.1 + version: 0.3.1(@capacitor/core@6.2.0) capacitor-stash-media: - specifier: ^2.0.1 - version: 2.0.1(@capacitor/core@6.2.0) + specifier: ^2.1.1 + version: 2.1.1(@capacitor/core@6.2.0) capacitor-tips: - specifier: ^1.0.0 - version: 1.0.0(@capacitor/core@6.2.0) + specifier: ^1.1.1 + version: 1.1.1(@capacitor/core@6.2.0) colorjs.io: specifier: ^0.5.2 version: 0.5.2 @@ -872,8 +872,9 @@ packages: resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} - '@capacitor-community/app-icon@5.0.0': - resolution: {integrity: sha512-DH1NcFGQnulkeAXALqg1gfc9Vga2og1i0tcByT1yc/q9woF0wfSpwv9n6eapqxWpQMQYI9FmqLle++likphjaA==} + '@capacitor-community/app-icon@https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5': + resolution: {tarball: https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5} + version: 5.0.0 peerDependencies: '@capacitor/core': ^6.0.0 @@ -2279,48 +2280,48 @@ packages: caniuse-lite@1.0.30001688: resolution: {integrity: sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==} - capacitor-android-nav-mode@1.0.0: - resolution: {integrity: sha512-Z7tdvC7NHDBqTnVwpuMYJTrSSWu7yLdNb0VHZjb76iwIzQ4wTNAigx7wC5fXx2S1GiN9vGT1Duby7fRmHq1mLg==} + capacitor-android-nav-mode@1.1.1: + resolution: {integrity: sha512-B0/jsHR4PbZo7Fjl31UAJdKVofQmCbBW8XjeXyR52Ny4bt4QilL4Shzvx8gTBi3XDvnwT06CXafcY8HBUsGfCw==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-application-context@1.0.0: - resolution: {integrity: sha512-iG81s2uOyGcYpBsNp/QvTUS73azX3EmSM4/PmhY9N/fRQs+Ipxfx2EqMPmmVCzBh+KUORnu2qjf7d5TWpl74xg==} + capacitor-application-context@1.1.1: + resolution: {integrity: sha512-DQ0FvAOAuy8/gImesD8JEJdk5tFW281j9TV6YsImb2DfPMK+8SQZlzS+vp8YxpWGHwSrtppaAC+9BNUc45mboQ==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-biometric-lock@1.0.0: - resolution: {integrity: sha512-lx4nPqQ9gukq/7jko+d1AWwm2FwiVPoqz7GEJK3td23A+nHO5SMGLrerfTj5z2JrBJ8bTZECgdwAIjXqSdvAfQ==} + capacitor-biometric-lock@1.1.1: + resolution: {integrity: sha512-foUUzBXrHAtxjGTpPZmVTj6iuL8oqVZ+kIDZlScE+lDPMSKDAb0J/cQZRkAuN+8aoyq/W2nBSQjGmIn3+umlVw==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-clear-cache@1.0.1: - resolution: {integrity: sha512-6tFDrD0cHRPWIQsXFRw3YsLVejUOu7Gj++h96yOyCjNYC1hwyuJkPdSNYaluligEv8YKCbReYfplYCKhsizCtQ==} + capacitor-clear-cache@1.1.1: + resolution: {integrity: sha512-dh8u6xm+y8HrZhl3YCFtOKPmdgq6WTrteJVxQIfWSncBBc7Be6DJQsaRxay4NszHgMwv2BU1cLdlCWn9lBVqSA==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-launch-native@1.0.0: - resolution: {integrity: sha512-KXto0LvWAkon8PRTei7q5sMx2ne6nIOJKiYBN3Poraxm/drVUU3yUT3GQHNA50YvGpUrtddH33VNflU1xiBfew==} + capacitor-launch-native@1.1.1: + resolution: {integrity: sha512-nSjR1q5ApeVG1FDdzrK7yR1pyfklXb6n/ps6PGAzV8qdOx1aOF6MqM7wdj/810z2/fPWu0EMifAfguYdEH0TRA==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-plugin-safe-area@3.0.3: - resolution: {integrity: sha512-pDM8GQIDC9xxKLZxoO4rrshDuzZqQo6jq7Ni18cYdp2JwmLvlhTYRrvriPAicY1En59UAZ574sIvGlgUBLH3Yw==} + capacitor-plugin-safe-area@3.0.4: + resolution: {integrity: sha512-Ccw0MMSo+IPDWZT5qGS6PSV5ifRBBrq/TnejVHZeIULgxkMeTxzdwoPRczCTF/oAZgcLVeaahQrF7c8Gh9wqVw==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-reader@0.3.0: - resolution: {integrity: sha512-MXRevn+nXo592cveuZYwVSSZdlYdfUNzYCHo4uUJP3ffwZJki7ASoodfT6cgClv57Cxu7wiNbzb0jramiF98cQ==} + capacitor-reader@0.3.1: + resolution: {integrity: sha512-i+MQhRgP5soDR4vpplb+9nDgaqEPA5j7fotU/V1+iFqCHfg1C7vYXuo9YCpJHwz8kfcYsLJxEi8fc7BSs2s/cA==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-stash-media@2.0.1: - resolution: {integrity: sha512-sDJsQJVk0DCM+rNfEpe51u3TRE0fHF7Los5F6IyLcbB+VmAn4RtTTuF6BRM4YWsLOC9REnZsDl2k6IMlOLNAZw==} + capacitor-stash-media@2.1.1: + resolution: {integrity: sha512-JwGIvgG10RMdmiwvv6hX9fLlxrxHirZMnbHQOG0EbUjG7dnQh1ItE1LJ52q3KWVOgL33+nrPvUVUAUuguqKi8Q==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-tips@1.0.0: - resolution: {integrity: sha512-qIf2F5gjVL0O5RLB1i1sVTuyh/U4I9Quq9kbQYxThZ3sFGJicOjGCXScw74FSxTDrwAp7qkgTjPqFSoncrVsPg==} + capacitor-tips@1.1.1: + resolution: {integrity: sha512-0G+8/d8T3nrrf3h6YOsR4KTF9IhLUg8gu96itI/1ckbBnuleDsAOoJ7jSAAz1FvHq1Om5rZCxWmyVuGkByYCzA==} peerDependencies: '@capacitor/core': ^6.0.0 @@ -7227,7 +7228,7 @@ snapshots: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@capacitor-community/app-icon@5.0.0(@capacitor/core@6.2.0)': + '@capacitor-community/app-icon@https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5(@capacitor/core@6.2.0)': dependencies: '@capacitor/core': 6.2.0 @@ -8838,39 +8839,39 @@ snapshots: caniuse-lite@1.0.30001688: {} - capacitor-android-nav-mode@1.0.0(@capacitor/core@6.2.0): + capacitor-android-nav-mode@1.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-application-context@1.0.0(@capacitor/core@6.2.0): + capacitor-application-context@1.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-biometric-lock@1.0.0(@capacitor/core@6.2.0): + capacitor-biometric-lock@1.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-clear-cache@1.0.1(@capacitor/core@6.2.0): + capacitor-clear-cache@1.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-launch-native@1.0.0(@capacitor/core@6.2.0): + capacitor-launch-native@1.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-plugin-safe-area@3.0.3(@capacitor/core@6.2.0): + capacitor-plugin-safe-area@3.0.4(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-reader@0.3.0(@capacitor/core@6.2.0): + capacitor-reader@0.3.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-stash-media@2.0.1(@capacitor/core@6.2.0): + capacitor-stash-media@2.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-tips@1.0.0(@capacitor/core@6.2.0): + capacitor-tips@1.1.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 From 93b5d00963ae7044a5142377e54dbf3f5b823b85 Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Fri, 27 Dec 2024 20:21:51 -0800 Subject: [PATCH 14/16] chore: cap sync --- android/capacitor.settings.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/android/capacitor.settings.gradle b/android/capacitor.settings.gradle index 5e5f3f4487..1b7ff5746e 100644 --- a/android/capacitor.settings.gradle +++ b/android/capacitor.settings.gradle @@ -3,7 +3,7 @@ include ':capacitor-android' project(':capacitor-android').projectDir = new File('../node_modules/.pnpm/@capacitor+android@6.2.0_patch_hash=a7fuehdtpweg2aifrflzmu363i_@capacitor+core@6.2.0/node_modules/@capacitor/android/capacitor') include ':capacitor-community-app-icon' -project(':capacitor-community-app-icon').projectDir = new File('../../app-icon/android') +project(':capacitor-community-app-icon').projectDir = new File('../node_modules/.pnpm/@capacitor-community+app-icon@https+++codeload.github.com+aeharding+app-icon+tar.gz+648b174d6_pgn7xugfns7qdg3hg5wemsat2a/node_modules/@capacitor-community/app-icon/android') include ':capacitor-app' project(':capacitor-app').projectDir = new File('../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app/android') @@ -45,10 +45,10 @@ include ':capacitor-launch-native' project(':capacitor-launch-native').projectDir = new File('../node_modules/.pnpm/capacitor-launch-native@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-launch-native/android') include ':capacitor-plugin-safe-area' -project(':capacitor-plugin-safe-area').projectDir = new File('../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area/android') +project(':capacitor-plugin-safe-area').projectDir = new File('../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.4_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area/android') include ':capacitor-reader' -project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') +project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.3.1_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') include ':capacitor-stash-media' project(':capacitor-stash-media').projectDir = new File('../node_modules/.pnpm/capacitor-stash-media@2.1.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media/android') From a9310b1daa08b8e450867d154856caa5c7f6224c Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Sat, 28 Dec 2024 11:48:54 -0800 Subject: [PATCH 15/16] revert: spm migration (#1794) --- CONTRIBUTING.md | 1 + android/capacitor.settings.gradle | 20 +-- ios/App/App.xcodeproj/project.pbxproj | 95 +++++++----- .../contents.xcworkspacedata | 2 +- .../xcshareddata/swiftpm/Package.resolved | 24 --- .../App.xcworkspace/contents.xcworkspacedata | 3 + ios/App/CapApp-SPM/.gitignore | 9 -- ios/App/CapApp-SPM/Package.swift | 61 -------- ios/App/CapApp-SPM/README.md | 8 - .../Sources/CapApp-SPM/CapApp-SPM.swift | 1 - ios/App/Podfile | 41 ++++++ ios/App/Podfile.lock | 139 ++++++++++++++++++ package.json | 20 +-- pnpm-lock.yaml | 101 +++++++------ 14 files changed, 316 insertions(+), 209 deletions(-) delete mode 100644 ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved delete mode 100644 ios/App/CapApp-SPM/.gitignore delete mode 100644 ios/App/CapApp-SPM/Package.swift delete mode 100644 ios/App/CapApp-SPM/README.md delete mode 100644 ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift create mode 100644 ios/App/Podfile create mode 100644 ios/App/Podfile.lock diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a68f7d5939..c710bbae74 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -53,6 +53,7 @@ To build the iOS native app, install: 1. [Node](https://nodejs.org) 2. [Xcode](https://developer.apple.com/xcode/) +3. [Cocoapods](https://cocoapods.org) Then, in Voyager's source code directory, build the project: diff --git a/android/capacitor.settings.gradle b/android/capacitor.settings.gradle index 1b7ff5746e..12c1a49e09 100644 --- a/android/capacitor.settings.gradle +++ b/android/capacitor.settings.gradle @@ -3,7 +3,7 @@ include ':capacitor-android' project(':capacitor-android').projectDir = new File('../node_modules/.pnpm/@capacitor+android@6.2.0_patch_hash=a7fuehdtpweg2aifrflzmu363i_@capacitor+core@6.2.0/node_modules/@capacitor/android/capacitor') include ':capacitor-community-app-icon' -project(':capacitor-community-app-icon').projectDir = new File('../node_modules/.pnpm/@capacitor-community+app-icon@https+++codeload.github.com+aeharding+app-icon+tar.gz+648b174d6_pgn7xugfns7qdg3hg5wemsat2a/node_modules/@capacitor-community/app-icon/android') +project(':capacitor-community-app-icon').projectDir = new File('../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon/android') include ':capacitor-app' project(':capacitor-app').projectDir = new File('../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app/android') @@ -30,28 +30,28 @@ include ':capacitor-status-bar' project(':capacitor-status-bar').projectDir = new File('../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar/android') include ':capacitor-android-nav-mode' -project(':capacitor-android-nav-mode').projectDir = new File('../node_modules/.pnpm/capacitor-android-nav-mode@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode/android') +project(':capacitor-android-nav-mode').projectDir = new File('../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode/android') include ':capacitor-application-context' -project(':capacitor-application-context').projectDir = new File('../node_modules/.pnpm/capacitor-application-context@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-application-context/android') +project(':capacitor-application-context').projectDir = new File('../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context/android') include ':capacitor-biometric-lock' -project(':capacitor-biometric-lock').projectDir = new File('../node_modules/.pnpm/capacitor-biometric-lock@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock/android') +project(':capacitor-biometric-lock').projectDir = new File('../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock/android') include ':capacitor-clear-cache' -project(':capacitor-clear-cache').projectDir = new File('../node_modules/.pnpm/capacitor-clear-cache@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache/android') +project(':capacitor-clear-cache').projectDir = new File('../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache/android') include ':capacitor-launch-native' -project(':capacitor-launch-native').projectDir = new File('../node_modules/.pnpm/capacitor-launch-native@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-launch-native/android') +project(':capacitor-launch-native').projectDir = new File('../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native/android') include ':capacitor-plugin-safe-area' -project(':capacitor-plugin-safe-area').projectDir = new File('../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.4_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area/android') +project(':capacitor-plugin-safe-area').projectDir = new File('../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area/android') include ':capacitor-reader' -project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.3.1_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') +project(':capacitor-reader').projectDir = new File('../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader/android') include ':capacitor-stash-media' -project(':capacitor-stash-media').projectDir = new File('../node_modules/.pnpm/capacitor-stash-media@2.1.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media/android') +project(':capacitor-stash-media').projectDir = new File('../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media/android') include ':capacitor-tips' -project(':capacitor-tips').projectDir = new File('../node_modules/.pnpm/capacitor-tips@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-tips/android') +project(':capacitor-tips').projectDir = new File('../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips/android') diff --git a/ios/App/App.xcodeproj/project.pbxproj b/ios/App/App.xcodeproj/project.pbxproj index 3ab5e43b42..bcb83ba6c9 100644 --- a/ios/App/App.xcodeproj/project.pbxproj +++ b/ios/App/App.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 60; + objectVersion = 48; objects = { /* Begin PBXBuildFile section */ @@ -13,6 +13,7 @@ 504EC30D1FED79650016851F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC30B1FED79650016851F /* Main.storyboard */; }; 504EC3121FED79650016851F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC3101FED79650016851F /* LaunchScreen.storyboard */; }; 50B271D11FEDC1A000F3C39B /* public in Resources */ = {isa = PBXBuildFile; fileRef = 50B271D01FEDC1A000F3C39B /* public */; }; + A084ECDBA7D38E1E42DFC39D /* Pods_App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */; }; E71849C82B9FA18C00F6C005 /* UniformTypeIdentifiers.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E71849C72B9FA18C00F6C005 /* UniformTypeIdentifiers.framework */; }; E71849CD2B9FA18C00F6C005 /* ActionRequestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E71849CC2B9FA18C00F6C005 /* ActionRequestHandler.swift */; }; E71849CF2B9FA18C00F6C005 /* Action.js in Resources */ = {isa = PBXBuildFile; fileRef = E71849CE2B9FA18C00F6C005 /* Action.js */; }; @@ -79,7 +80,6 @@ /* Begin PBXFileReference section */ 2FAD9762203C412B000D30F8 /* config.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = config.xml; sourceTree = ""; }; - 4D22ABE92AF431CB00220026 /* CapApp-SPM in Frameworks */ = {isa = PBXBuildFile; productRef = 4D22ABE82AF431CB00220026 /* CapApp-SPM */; }; 50379B222058CBB4000EE86E /* capacitor.config.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = capacitor.config.json; sourceTree = ""; }; 504EC3041FED79650016851F /* App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App.app; sourceTree = BUILT_PRODUCTS_DIR; }; 504EC3071FED79650016851F /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -88,6 +88,8 @@ 504EC3111FED79650016851F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 504EC3131FED79650016851F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 50B271D01FEDC1A000F3C39B /* public */ = {isa = PBXFileReference; lastKnownFileType = folder; path = public; sourceTree = ""; }; + AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_App.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-App.release.xcconfig"; path = "Pods/Target Support Files/Pods-App/Pods-App.release.xcconfig"; sourceTree = ""; }; E71849C62B9FA18C00F6C005 /* VoyagerActionExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = VoyagerActionExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; E71849C72B9FA18C00F6C005 /* UniformTypeIdentifiers.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniformTypeIdentifiers.framework; path = System/Library/Frameworks/UniformTypeIdentifiers.framework; sourceTree = SDKROOT; }; E71849CC2B9FA18C00F6C005 /* ActionRequestHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionRequestHandler.swift; sourceTree = ""; }; @@ -108,6 +110,7 @@ E75D256C2A7C369800C4AD87 /* SavePost.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SavePost.swift; sourceTree = ""; }; E75D256D2A7C369800C4AD87 /* PostView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostView.swift; sourceTree = ""; }; E75D256E2A7C369800C4AD87 /* GetPostsResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GetPostsResponse.swift; sourceTree = ""; }; + FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-App.debug.xcconfig"; path = "Pods/Target Support Files/Pods-App/Pods-App.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -115,7 +118,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4D22ABE92AF431CB00220026 /* CapApp-SPM in Frameworks */, + A084ECDBA7D38E1E42DFC39D /* Pods_App.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -140,6 +143,7 @@ 27E2DDA53C4D2A4D1A88CE4A /* Frameworks */ = { isa = PBXGroup; children = ( + AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */, E71849C72B9FA18C00F6C005 /* UniformTypeIdentifiers.framework */, ); name = Frameworks; @@ -152,6 +156,8 @@ E75D25472A7C351E00C4AD87 /* VoyagerWatch Watch App */, E71849C92B9FA18C00F6C005 /* VoyagerActionExtension */, 504EC3051FED79650016851F /* Products */, + 7F8756D8B27F46E3366F6CEA /* Pods */, + 27E2DDA53C4D2A4D1A88CE4A /* Frameworks */, ); sourceTree = ""; }; @@ -180,6 +186,15 @@ path = App; sourceTree = ""; }; + 7F8756D8B27F46E3366F6CEA /* Pods */ = { + isa = PBXGroup; + children = ( + FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */, + AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */, + ); + name = Pods; + sourceTree = ""; + }; E71849C92B9FA18C00F6C005 /* VoyagerActionExtension */ = { isa = PBXGroup; children = ( @@ -234,9 +249,11 @@ isa = PBXNativeTarget; buildConfigurationList = 504EC3161FED79650016851F /* Build configuration list for PBXNativeTarget "App" */; buildPhases = ( + 6634F4EFEBD30273BCE97C65 /* [CP] Check Pods Manifest.lock */, 504EC3001FED79650016851F /* Sources */, 504EC3011FED79650016851F /* Frameworks */, 504EC3021FED79650016851F /* Resources */, + 9592DBEFFC6D2A0C8D5DEB22 /* [CP] Embed Pods Frameworks */, E75D25542A7C351F00C4AD87 /* Embed Watch Content */, E71849D42B9FA18C00F6C005 /* Embed Foundation Extensions */, ); @@ -247,9 +264,6 @@ E71849D22B9FA18C00F6C005 /* PBXTargetDependency */, ); name = App; - packageProductDependencies = ( - 4D22ABE82AF431CB00220026 /* CapApp-SPM */, - ); productName = App; productReference = 504EC3041FED79650016851F /* App.app */; productType = "com.apple.product-type.application"; @@ -321,9 +335,6 @@ Base, ); mainGroup = 504EC2FB1FED79650016851F; - packageReferences = ( - D4C12C0A2AAA248700AAC8A2 /* XCLocalSwiftPackageReference "CapApp-SPM" */, - ); productRefGroup = 504EC3051FED79650016851F /* Products */; projectDirPath = ""; projectRoot = ""; @@ -369,6 +380,42 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 6634F4EFEBD30273BCE97C65 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-App-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 9592DBEFFC6D2A0C8D5DEB22 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-App/Pods-App-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 504EC3001FED79650016851F /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -544,8 +591,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; VALIDATE_PRODUCT = YES; WATCHOS_DEPLOYMENT_TARGET = 9.1; }; @@ -553,6 +599,7 @@ }; 504EC3171FED79650016851F /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -563,10 +610,7 @@ "DEVELOPMENT_TEAM[sdk=iphoneos*]" = SYTN44U2UN; INFOPLIST_FILE = App/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 15.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\""; PRODUCT_BUNDLE_IDENTIFIER = app.vger.voyager; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -580,6 +624,7 @@ }; 504EC3181FED79650016851F /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -590,10 +635,7 @@ "DEVELOPMENT_TEAM[sdk=iphoneos*]" = SYTN44U2UN; INFOPLIST_FILE = App/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 15.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = app.vger.voyager; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -787,21 +829,6 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ - -/* Begin XCLocalSwiftPackageReference section */ - D4C12C0A2AAA248700AAC8A2 /* XCLocalSwiftPackageReference "CapApp-SPM" */ = { - isa = XCLocalSwiftPackageReference; - relativePath = "CapApp-SPM"; - }; -/* End XCLocalSwiftPackageReference section */ - -/* Begin XCSwiftPackageProductDependency section */ - 4D22ABE82AF431CB00220026 /* CapApp-SPM */ = { - isa = XCSwiftPackageProductDependency; - package = D4C12C0A2AAA248700AAC8A2 /* XCLocalSwiftPackageReference "CapApp-SPM" */; - productName = "CapApp-SPM"; - }; -/* End XCSwiftPackageProductDependency section */ }; rootObject = 504EC2FC1FED79650016851F /* Project object */; } diff --git a/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata index 919434a625..42daef8a10 100644 --- a/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:App.xcodeproj"> diff --git a/ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved deleted file mode 100644 index e80978d61c..0000000000 --- a/ios/App/App.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ /dev/null @@ -1,24 +0,0 @@ -{ - "originHash" : "c5372c4136ff7c93b2796ad19793be4862c364c96ff9cf06f35f7ecc445529b6", - "pins" : [ - { - "identity" : "capacitor-swift-pm", - "kind" : "remoteSourceControl", - "location" : "https://github.com/ionic-team/capacitor-swift-pm.git", - "state" : { - "branch" : "6.0.0", - "revision" : "8a46dff3a8292761df1bded13a508da1c85859e8" - } - }, - { - "identity" : "sdwebimage", - "kind" : "remoteSourceControl", - "location" : "https://github.com/SDWebImage/SDWebImage.git", - "state" : { - "revision" : "10d06f6a33bafae8c164fbfd1f03391f6d4692b3", - "version" : "5.20.0" - } - } - ], - "version" : 3 -} diff --git a/ios/App/App.xcworkspace/contents.xcworkspacedata b/ios/App/App.xcworkspace/contents.xcworkspacedata index b3795ee15d..b301e824b3 100644 --- a/ios/App/App.xcworkspace/contents.xcworkspacedata +++ b/ios/App/App.xcworkspace/contents.xcworkspacedata @@ -4,4 +4,7 @@ + + diff --git a/ios/App/CapApp-SPM/.gitignore b/ios/App/CapApp-SPM/.gitignore deleted file mode 100644 index 3b29812086..0000000000 --- a/ios/App/CapApp-SPM/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -.DS_Store -/.build -/Packages -/*.xcodeproj -xcuserdata/ -DerivedData/ -.swiftpm/config/registries.json -.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata -.netrc diff --git a/ios/App/CapApp-SPM/Package.swift b/ios/App/CapApp-SPM/Package.swift deleted file mode 100644 index 20cd7ffac3..0000000000 --- a/ios/App/CapApp-SPM/Package.swift +++ /dev/null @@ -1,61 +0,0 @@ -// swift-tools-version: 5.9 -import PackageDescription - -// DO NOT MODIFY THIS FILE - managed by Capacitor CLI commands -let package = Package( - name: "CapApp-SPM", - platforms: [.iOS(.v13)], - products: [ - .library( - name: "CapApp-SPM", - targets: ["CapApp-SPM"]) - ], - dependencies: [ - .package(url: "https://github.com/ionic-team/capacitor-swift-pm.git", exact: "6.2.0"), - .package(name: "CapacitorCommunityAppIcon", path: "../../../node_modules/.pnpm/@capacitor-community+app-icon@https+++codeload.github.com+aeharding+app-icon+tar.gz+648b174d6_pgn7xugfns7qdg3hg5wemsat2a/node_modules/@capacitor-community/app-icon"), - .package(name: "CapacitorApp", path: "../../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app"), - .package(name: "CapacitorFilesystem", path: "../../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem"), - .package(name: "CapacitorHaptics", path: "../../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics"), - .package(name: "CapacitorKeyboard", path: "../../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard"), - .package(name: "CapacitorNetwork", path: "../../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network"), - .package(name: "CapacitorShare", path: "../../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share"), - .package(name: "CapacitorSplashScreen", path: "../../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen"), - .package(name: "CapacitorStatusBar", path: "../../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar"), - .package(name: "CapacitorAndroidNavMode", path: "../../../node_modules/.pnpm/capacitor-android-nav-mode@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode"), - .package(name: "CapacitorApplicationContext", path: "../../../node_modules/.pnpm/capacitor-application-context@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-application-context"), - .package(name: "CapacitorBiometricLock", path: "../../../node_modules/.pnpm/capacitor-biometric-lock@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock"), - .package(name: "CapacitorClearCache", path: "../../../node_modules/.pnpm/capacitor-clear-cache@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache"), - .package(name: "CapacitorLaunchNative", path: "../../../node_modules/.pnpm/capacitor-launch-native@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-launch-native"), - .package(name: "CapacitorPluginSafeArea", path: "../../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.4_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area"), - .package(name: "CapacitorReader", path: "../../../node_modules/.pnpm/capacitor-reader@0.3.1_@capacitor+core@6.2.0/node_modules/capacitor-reader"), - .package(name: "CapacitorStashMedia", path: "../../../node_modules/.pnpm/capacitor-stash-media@2.1.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media"), - .package(name: "CapacitorTips", path: "../../../node_modules/.pnpm/capacitor-tips@1.1.1_@capacitor+core@6.2.0/node_modules/capacitor-tips") - ], - targets: [ - .target( - name: "CapApp-SPM", - dependencies: [ - .product(name: "Capacitor", package: "capacitor-swift-pm"), - .product(name: "Cordova", package: "capacitor-swift-pm"), - .product(name: "CapacitorCommunityAppIcon", package: "CapacitorCommunityAppIcon"), - .product(name: "CapacitorApp", package: "CapacitorApp"), - .product(name: "CapacitorFilesystem", package: "CapacitorFilesystem"), - .product(name: "CapacitorHaptics", package: "CapacitorHaptics"), - .product(name: "CapacitorKeyboard", package: "CapacitorKeyboard"), - .product(name: "CapacitorNetwork", package: "CapacitorNetwork"), - .product(name: "CapacitorShare", package: "CapacitorShare"), - .product(name: "CapacitorSplashScreen", package: "CapacitorSplashScreen"), - .product(name: "CapacitorStatusBar", package: "CapacitorStatusBar"), - .product(name: "CapacitorAndroidNavMode", package: "CapacitorAndroidNavMode"), - .product(name: "CapacitorApplicationContext", package: "CapacitorApplicationContext"), - .product(name: "CapacitorBiometricLock", package: "CapacitorBiometricLock"), - .product(name: "CapacitorClearCache", package: "CapacitorClearCache"), - .product(name: "CapacitorLaunchNative", package: "CapacitorLaunchNative"), - .product(name: "CapacitorPluginSafeArea", package: "CapacitorPluginSafeArea"), - .product(name: "CapacitorReader", package: "CapacitorReader"), - .product(name: "CapacitorStashMedia", package: "CapacitorStashMedia"), - .product(name: "CapacitorTips", package: "CapacitorTips") - ] - ) - ] -) diff --git a/ios/App/CapApp-SPM/README.md b/ios/App/CapApp-SPM/README.md deleted file mode 100644 index 9b9fd37e34..0000000000 --- a/ios/App/CapApp-SPM/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# CapApp-SPM - -> [!WARNING] -> SPM Support is currently experimental. - -This SPM is used to host SPM dependancies for you Capacitor project - -Do not modifiy the contents of it or there may be unintended concquences. diff --git a/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift b/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift deleted file mode 100644 index 945afec8c7..0000000000 --- a/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift +++ /dev/null @@ -1 +0,0 @@ -public let isCapacitorApp = true diff --git a/ios/App/Podfile b/ios/App/Podfile new file mode 100644 index 0000000000..0f4dfcabc2 --- /dev/null +++ b/ios/App/Podfile @@ -0,0 +1,41 @@ +require_relative '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios/scripts/pods_helpers' + +platform :ios, '13.0' +use_frameworks! + +# workaround to avoid Xcode caching of Pods that requires +# Product -> Clean Build Folder after new Cordova plugins installed +# Requires CocoaPods 1.6 or newer +install! 'cocoapods', :disable_input_output_paths => true + +def capacitor_pods + pod 'Capacitor', :path => '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios' + pod 'CapacitorCordova', :path => '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios' + pod 'CapacitorCommunityAppIcon', :path => '../../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon' + pod 'CapacitorApp', :path => '../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app' + pod 'CapacitorFilesystem', :path => '../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem' + pod 'CapacitorHaptics', :path => '../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics' + pod 'CapacitorKeyboard', :path => '../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard' + pod 'CapacitorNetwork', :path => '../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network' + pod 'CapacitorShare', :path => '../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share' + pod 'CapacitorSplashScreen', :path => '../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen' + pod 'CapacitorStatusBar', :path => '../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar' + pod 'CapacitorAndroidNavMode', :path => '../../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode' + pod 'CapacitorApplicationContext', :path => '../../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context' + pod 'CapacitorBiometricLock', :path => '../../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock' + pod 'CapacitorClearCache', :path => '../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache' + pod 'CapacitorLaunchNative', :path => '../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native' + pod 'CapacitorPluginSafeArea', :path => '../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area' + pod 'CapacitorReader', :path => '../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader' + pod 'CapacitorStashMedia', :path => '../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media' + pod 'CapacitorTips', :path => '../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips' +end + +target 'App' do + capacitor_pods + # Add your Pods here +end + +post_install do |installer| + assertDeploymentTarget(installer) +end diff --git a/ios/App/Podfile.lock b/ios/App/Podfile.lock new file mode 100644 index 0000000000..ea23fc5525 --- /dev/null +++ b/ios/App/Podfile.lock @@ -0,0 +1,139 @@ +PODS: + - Capacitor (6.2.0): + - CapacitorCordova + - CapacitorAndroidNavMode (1.0.0): + - Capacitor + - CapacitorApp (6.0.2): + - Capacitor + - CapacitorApplicationContext (1.0.0): + - Capacitor + - CapacitorBiometricLock (1.0.0): + - Capacitor + - CapacitorClearCache (1.0.1): + - Capacitor + - CapacitorCommunityAppIcon (5.0.0): + - Capacitor + - CapacitorCordova (6.2.0) + - CapacitorFilesystem (6.0.2): + - Capacitor + - CapacitorHaptics (6.0.2): + - Capacitor + - CapacitorKeyboard (6.0.3): + - Capacitor + - CapacitorLaunchNative (1.0.0): + - Capacitor + - CapacitorNetwork (6.0.3): + - Capacitor + - CapacitorPluginSafeArea (3.0.3): + - Capacitor + - CapacitorReader (0.3.0): + - Capacitor + - CapacitorShare (6.0.3): + - Capacitor + - CapacitorSplashScreen (6.0.3): + - Capacitor + - CapacitorStashMedia (2.0.1): + - Capacitor + - SDWebImage + - CapacitorStatusBar (6.0.2): + - Capacitor + - CapacitorTips (1.0.0): + - Capacitor + - SDWebImage (5.18.7): + - SDWebImage/Core (= 5.18.7) + - SDWebImage/Core (5.18.7) + +DEPENDENCIES: + - "Capacitor (from `../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios`)" + - "CapacitorAndroidNavMode (from `../../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode`)" + - "CapacitorApp (from `../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app`)" + - "CapacitorApplicationContext (from `../../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context`)" + - "CapacitorBiometricLock (from `../../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock`)" + - "CapacitorClearCache (from `../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache`)" + - "CapacitorCommunityAppIcon (from `../../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon`)" + - "CapacitorCordova (from `../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios`)" + - "CapacitorFilesystem (from `../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem`)" + - "CapacitorHaptics (from `../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics`)" + - "CapacitorKeyboard (from `../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard`)" + - "CapacitorLaunchNative (from `../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native`)" + - "CapacitorNetwork (from `../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network`)" + - "CapacitorPluginSafeArea (from `../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area`)" + - "CapacitorReader (from `../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader`)" + - "CapacitorShare (from `../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share`)" + - "CapacitorSplashScreen (from `../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen`)" + - "CapacitorStashMedia (from `../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media`)" + - "CapacitorStatusBar (from `../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar`)" + - "CapacitorTips (from `../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips`)" + +SPEC REPOS: + trunk: + - SDWebImage + +EXTERNAL SOURCES: + Capacitor: + :path: "../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios" + CapacitorAndroidNavMode: + :path: "../../node_modules/.pnpm/capacitor-android-nav-mode@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-android-nav-mode" + CapacitorApp: + :path: "../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app" + CapacitorApplicationContext: + :path: "../../node_modules/.pnpm/capacitor-application-context@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-application-context" + CapacitorBiometricLock: + :path: "../../node_modules/.pnpm/capacitor-biometric-lock@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-biometric-lock" + CapacitorClearCache: + :path: "../../node_modules/.pnpm/capacitor-clear-cache@1.0.1_@capacitor+core@6.2.0/node_modules/capacitor-clear-cache" + CapacitorCommunityAppIcon: + :path: "../../node_modules/.pnpm/@capacitor-community+app-icon@5.0.0_@capacitor+core@6.2.0/node_modules/@capacitor-community/app-icon" + CapacitorCordova: + :path: "../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios" + CapacitorFilesystem: + :path: "../../node_modules/.pnpm/@capacitor+filesystem@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/filesystem" + CapacitorHaptics: + :path: "../../node_modules/.pnpm/@capacitor+haptics@6.0.2_patch_hash=isktf3ewuigcwl72katxy46idi_@capacitor+core@6.2.0/node_modules/@capacitor/haptics" + CapacitorKeyboard: + :path: "../../node_modules/.pnpm/@capacitor+keyboard@6.0.3_patch_hash=2ihcxo2fu55l7b6g5u7feswwlm_@capacitor+core@6.2.0/node_modules/@capacitor/keyboard" + CapacitorLaunchNative: + :path: "../../node_modules/.pnpm/capacitor-launch-native@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-launch-native" + CapacitorNetwork: + :path: "../../node_modules/.pnpm/@capacitor+network@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/network" + CapacitorPluginSafeArea: + :path: "../../node_modules/.pnpm/capacitor-plugin-safe-area@3.0.3_@capacitor+core@6.2.0/node_modules/capacitor-plugin-safe-area" + CapacitorReader: + :path: "../../node_modules/.pnpm/capacitor-reader@0.3.0_@capacitor+core@6.2.0/node_modules/capacitor-reader" + CapacitorShare: + :path: "../../node_modules/.pnpm/@capacitor+share@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/share" + CapacitorSplashScreen: + :path: "../../node_modules/.pnpm/@capacitor+splash-screen@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/splash-screen" + CapacitorStashMedia: + :path: "../../node_modules/.pnpm/capacitor-stash-media@2.0.1_@capacitor+core@6.2.0/node_modules/capacitor-stash-media" + CapacitorStatusBar: + :path: "../../node_modules/.pnpm/@capacitor+status-bar@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/status-bar" + CapacitorTips: + :path: "../../node_modules/.pnpm/capacitor-tips@1.0.0_@capacitor+core@6.2.0/node_modules/capacitor-tips" + +SPEC CHECKSUMS: + Capacitor: 1f3c7b9802d958cd8c4eb63895fff85dff2e1eea + CapacitorAndroidNavMode: 94c169757cc0e9b82d7af168a5e59283e4bcc885 + CapacitorApp: 2a8c3a0b0814322e5e6e15fe595f02c3808f0f8b + CapacitorApplicationContext: 2bee68107e6efb8f89b5db102dc95a9cf74c9464 + CapacitorBiometricLock: a91f2e8b28527e0d98032270f9363c4844abf1b9 + CapacitorClearCache: 66a0b1bd6ed2d130d1c5467d3c001486cc1aa1eb + CapacitorCommunityAppIcon: 4873c7de4cd50e68a36e08fe93f88f479e7b16a2 + CapacitorCordova: b33e7f4aa4ed105dd43283acdd940964374a87d9 + CapacitorFilesystem: c832a3f6d4870c3872688e782ae8e33665e6ecbf + CapacitorHaptics: b53409aaca1203f79c6d0eb3ed5de40556339518 + CapacitorKeyboard: 460c6f9ec5e52c84f2742d5ce2e67bbc7ab0ebb0 + CapacitorLaunchNative: 6508ec892ad035d5556658c10cc3b55bfbb7929d + CapacitorNetwork: da96b5fff8d05b67f4658503aabb22f65bda2c0f + CapacitorPluginSafeArea: e1eca7f70974f0e270d96f70cd0a5f51523164b1 + CapacitorReader: 5f2c81961166ad9341424aeae0e25b4115fafeaa + CapacitorShare: 7af6ca761ce62030e8e9fbd2eb82416f5ceced38 + CapacitorSplashScreen: 68893659d77b5f82d753b3a70475082845e3039c + CapacitorStashMedia: 10aa96dc5f874c4c27642528a4c327c46792abf2 + CapacitorStatusBar: 3b9ac7d0684770522c532d1158a1434512ab1477 + CapacitorTips: 2087733aea06ec041b210085395ca934c8554907 + SDWebImage: f9258c58221ed854cfa0e2b80ee4033710b1c6d3 + +PODFILE CHECKSUM: f8c9e2e5019140f5c73954cbfccfad7f8537322d + +COCOAPODS: 1.16.2 diff --git a/package.json b/package.json index 17f780a3bc..81c2bb7f52 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ }, "dependencies": { "@aeharding/remark-lemmy-spoiler": "^2.0.0", - "@capacitor-community/app-icon": "git+ssh://git@github.com:aeharding/app-icon.git#648b174d69b8190cc1d936ab06733c00545262e5", + "@capacitor-community/app-icon": "^5.0.0", "@capacitor/android": "^6.2.0", "@capacitor/app": "^6.0.2", "@capacitor/core": "^6.2.0", @@ -68,15 +68,15 @@ "@ionic/react-router": "8.4.1", "@mantine/hooks": "^7.15.1", "@reduxjs/toolkit": "^2.5.0", - "capacitor-android-nav-mode": "^1.1.1", - "capacitor-application-context": "^1.1.1", - "capacitor-biometric-lock": "^1.1.1", - "capacitor-clear-cache": "^1.1.1", - "capacitor-launch-native": "^1.1.1", - "capacitor-plugin-safe-area": "^3.0.4", - "capacitor-reader": "^0.3.1", - "capacitor-stash-media": "^2.1.1", - "capacitor-tips": "^1.1.1", + "capacitor-android-nav-mode": "^1.0.0", + "capacitor-application-context": "^1.0.0", + "capacitor-biometric-lock": "^1.0.0", + "capacitor-clear-cache": "^1.0.1", + "capacitor-launch-native": "^1.0.0", + "capacitor-plugin-safe-area": "^3.0.3", + "capacitor-reader": "^0.3.0", + "capacitor-stash-media": "^2.0.1", + "capacitor-tips": "^1.0.0", "colorjs.io": "^0.5.2", "compare-versions": "^6.1.1", "date-fns": "^4.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6cf7d51409..6cb8fe657f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -26,8 +26,8 @@ importers: specifier: ^2.0.0 version: 2.0.0 '@capacitor-community/app-icon': - specifier: git+ssh://git@github.com:aeharding/app-icon.git#648b174d69b8190cc1d936ab06733c00545262e5 - version: https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5(@capacitor/core@6.2.0) + specifier: ^5.0.0 + version: 5.0.0(@capacitor/core@6.2.0) '@capacitor/android': specifier: ^6.2.0 version: 6.2.0(patch_hash=a7fuehdtpweg2aifrflzmu363i)(@capacitor/core@6.2.0) @@ -80,32 +80,32 @@ importers: specifier: ^2.5.0 version: 2.5.0(react-redux@9.2.0(@types/react@18.3.16)(react@0.0.0-experimental-4dff0e62-20241213)(redux@5.0.1))(react@0.0.0-experimental-4dff0e62-20241213) capacitor-android-nav-mode: - specifier: ^1.1.1 - version: 1.1.1(@capacitor/core@6.2.0) + specifier: ^1.0.0 + version: 1.0.0(@capacitor/core@6.2.0) capacitor-application-context: - specifier: ^1.1.1 - version: 1.1.1(@capacitor/core@6.2.0) + specifier: ^1.0.0 + version: 1.0.0(@capacitor/core@6.2.0) capacitor-biometric-lock: - specifier: ^1.1.1 - version: 1.1.1(@capacitor/core@6.2.0) + specifier: ^1.0.0 + version: 1.0.0(@capacitor/core@6.2.0) capacitor-clear-cache: - specifier: ^1.1.1 - version: 1.1.1(@capacitor/core@6.2.0) + specifier: ^1.0.1 + version: 1.0.1(@capacitor/core@6.2.0) capacitor-launch-native: - specifier: ^1.1.1 - version: 1.1.1(@capacitor/core@6.2.0) + specifier: ^1.0.0 + version: 1.0.0(@capacitor/core@6.2.0) capacitor-plugin-safe-area: - specifier: ^3.0.4 - version: 3.0.4(@capacitor/core@6.2.0) + specifier: ^3.0.3 + version: 3.0.3(@capacitor/core@6.2.0) capacitor-reader: - specifier: ^0.3.1 - version: 0.3.1(@capacitor/core@6.2.0) + specifier: ^0.3.0 + version: 0.3.0(@capacitor/core@6.2.0) capacitor-stash-media: - specifier: ^2.1.1 - version: 2.1.1(@capacitor/core@6.2.0) + specifier: ^2.0.1 + version: 2.0.1(@capacitor/core@6.2.0) capacitor-tips: - specifier: ^1.1.1 - version: 1.1.1(@capacitor/core@6.2.0) + specifier: ^1.0.0 + version: 1.0.0(@capacitor/core@6.2.0) colorjs.io: specifier: ^0.5.2 version: 0.5.2 @@ -872,9 +872,8 @@ packages: resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} - '@capacitor-community/app-icon@https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5': - resolution: {tarball: https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5} - version: 5.0.0 + '@capacitor-community/app-icon@5.0.0': + resolution: {integrity: sha512-DH1NcFGQnulkeAXALqg1gfc9Vga2og1i0tcByT1yc/q9woF0wfSpwv9n6eapqxWpQMQYI9FmqLle++likphjaA==} peerDependencies: '@capacitor/core': ^6.0.0 @@ -2280,48 +2279,48 @@ packages: caniuse-lite@1.0.30001688: resolution: {integrity: sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==} - capacitor-android-nav-mode@1.1.1: - resolution: {integrity: sha512-B0/jsHR4PbZo7Fjl31UAJdKVofQmCbBW8XjeXyR52Ny4bt4QilL4Shzvx8gTBi3XDvnwT06CXafcY8HBUsGfCw==} + capacitor-android-nav-mode@1.0.0: + resolution: {integrity: sha512-Z7tdvC7NHDBqTnVwpuMYJTrSSWu7yLdNb0VHZjb76iwIzQ4wTNAigx7wC5fXx2S1GiN9vGT1Duby7fRmHq1mLg==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-application-context@1.1.1: - resolution: {integrity: sha512-DQ0FvAOAuy8/gImesD8JEJdk5tFW281j9TV6YsImb2DfPMK+8SQZlzS+vp8YxpWGHwSrtppaAC+9BNUc45mboQ==} + capacitor-application-context@1.0.0: + resolution: {integrity: sha512-iG81s2uOyGcYpBsNp/QvTUS73azX3EmSM4/PmhY9N/fRQs+Ipxfx2EqMPmmVCzBh+KUORnu2qjf7d5TWpl74xg==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-biometric-lock@1.1.1: - resolution: {integrity: sha512-foUUzBXrHAtxjGTpPZmVTj6iuL8oqVZ+kIDZlScE+lDPMSKDAb0J/cQZRkAuN+8aoyq/W2nBSQjGmIn3+umlVw==} + capacitor-biometric-lock@1.0.0: + resolution: {integrity: sha512-lx4nPqQ9gukq/7jko+d1AWwm2FwiVPoqz7GEJK3td23A+nHO5SMGLrerfTj5z2JrBJ8bTZECgdwAIjXqSdvAfQ==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-clear-cache@1.1.1: - resolution: {integrity: sha512-dh8u6xm+y8HrZhl3YCFtOKPmdgq6WTrteJVxQIfWSncBBc7Be6DJQsaRxay4NszHgMwv2BU1cLdlCWn9lBVqSA==} + capacitor-clear-cache@1.0.1: + resolution: {integrity: sha512-6tFDrD0cHRPWIQsXFRw3YsLVejUOu7Gj++h96yOyCjNYC1hwyuJkPdSNYaluligEv8YKCbReYfplYCKhsizCtQ==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-launch-native@1.1.1: - resolution: {integrity: sha512-nSjR1q5ApeVG1FDdzrK7yR1pyfklXb6n/ps6PGAzV8qdOx1aOF6MqM7wdj/810z2/fPWu0EMifAfguYdEH0TRA==} + capacitor-launch-native@1.0.0: + resolution: {integrity: sha512-KXto0LvWAkon8PRTei7q5sMx2ne6nIOJKiYBN3Poraxm/drVUU3yUT3GQHNA50YvGpUrtddH33VNflU1xiBfew==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-plugin-safe-area@3.0.4: - resolution: {integrity: sha512-Ccw0MMSo+IPDWZT5qGS6PSV5ifRBBrq/TnejVHZeIULgxkMeTxzdwoPRczCTF/oAZgcLVeaahQrF7c8Gh9wqVw==} + capacitor-plugin-safe-area@3.0.3: + resolution: {integrity: sha512-pDM8GQIDC9xxKLZxoO4rrshDuzZqQo6jq7Ni18cYdp2JwmLvlhTYRrvriPAicY1En59UAZ574sIvGlgUBLH3Yw==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-reader@0.3.1: - resolution: {integrity: sha512-i+MQhRgP5soDR4vpplb+9nDgaqEPA5j7fotU/V1+iFqCHfg1C7vYXuo9YCpJHwz8kfcYsLJxEi8fc7BSs2s/cA==} + capacitor-reader@0.3.0: + resolution: {integrity: sha512-MXRevn+nXo592cveuZYwVSSZdlYdfUNzYCHo4uUJP3ffwZJki7ASoodfT6cgClv57Cxu7wiNbzb0jramiF98cQ==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-stash-media@2.1.1: - resolution: {integrity: sha512-JwGIvgG10RMdmiwvv6hX9fLlxrxHirZMnbHQOG0EbUjG7dnQh1ItE1LJ52q3KWVOgL33+nrPvUVUAUuguqKi8Q==} + capacitor-stash-media@2.0.1: + resolution: {integrity: sha512-sDJsQJVk0DCM+rNfEpe51u3TRE0fHF7Los5F6IyLcbB+VmAn4RtTTuF6BRM4YWsLOC9REnZsDl2k6IMlOLNAZw==} peerDependencies: '@capacitor/core': ^6.0.0 - capacitor-tips@1.1.1: - resolution: {integrity: sha512-0G+8/d8T3nrrf3h6YOsR4KTF9IhLUg8gu96itI/1ckbBnuleDsAOoJ7jSAAz1FvHq1Om5rZCxWmyVuGkByYCzA==} + capacitor-tips@1.0.0: + resolution: {integrity: sha512-qIf2F5gjVL0O5RLB1i1sVTuyh/U4I9Quq9kbQYxThZ3sFGJicOjGCXScw74FSxTDrwAp7qkgTjPqFSoncrVsPg==} peerDependencies: '@capacitor/core': ^6.0.0 @@ -7228,7 +7227,7 @@ snapshots: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@capacitor-community/app-icon@https://codeload.github.com/aeharding/app-icon/tar.gz/648b174d69b8190cc1d936ab06733c00545262e5(@capacitor/core@6.2.0)': + '@capacitor-community/app-icon@5.0.0(@capacitor/core@6.2.0)': dependencies: '@capacitor/core': 6.2.0 @@ -8839,39 +8838,39 @@ snapshots: caniuse-lite@1.0.30001688: {} - capacitor-android-nav-mode@1.1.1(@capacitor/core@6.2.0): + capacitor-android-nav-mode@1.0.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-application-context@1.1.1(@capacitor/core@6.2.0): + capacitor-application-context@1.0.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-biometric-lock@1.1.1(@capacitor/core@6.2.0): + capacitor-biometric-lock@1.0.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-clear-cache@1.1.1(@capacitor/core@6.2.0): + capacitor-clear-cache@1.0.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-launch-native@1.1.1(@capacitor/core@6.2.0): + capacitor-launch-native@1.0.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-plugin-safe-area@3.0.4(@capacitor/core@6.2.0): + capacitor-plugin-safe-area@3.0.3(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-reader@0.3.1(@capacitor/core@6.2.0): + capacitor-reader@0.3.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-stash-media@2.1.1(@capacitor/core@6.2.0): + capacitor-stash-media@2.0.1(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 - capacitor-tips@1.1.1(@capacitor/core@6.2.0): + capacitor-tips@1.0.0(@capacitor/core@6.2.0): dependencies: '@capacitor/core': 6.2.0 From 797b6a0ee4c56c32379b2322bf466ec48018334b Mon Sep 17 00:00:00 2001 From: Alexander Harding Date: Sun, 29 Dec 2024 19:27:26 -0800 Subject: [PATCH 16/16] fix: post hiding might not work for every post (#1795) --- src/features/feed/Feed.tsx | 43 +++++++++++++++++--------------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/src/features/feed/Feed.tsx b/src/features/feed/Feed.tsx index 092e142897..8c6f852ee2 100644 --- a/src/features/feed/Feed.tsx +++ b/src/features/feed/Feed.tsx @@ -125,7 +125,6 @@ export default function Feed({ const { setScrolledPastSearch } = useContext(FeedSearchContext); const startRangeRef = useRef(0); - const scrollingRef = useRef(false); const infiniteScrolling = useAppSelector( (state) => state.settings.general.posts.infiniteScrolling, @@ -267,25 +266,7 @@ export default function Feed({ const onScroll = useRangeChange( virtuaHandle, function onRangeChange(start, end) { - if (start < 0 || end < 0 || (!start && !end)) return; // no items rendered - - // if scrolled down - const startOffset = header ? 1 : 0; // header counts as item to VList - if ( - scrollingRef.current && - start > startOffset && - start > startRangeRef.current - ) { - // emit what was removed - onRemovedFromTop?.( - filteredItems.slice( - startRangeRef.current - startOffset, - start - startOffset, - ), - ); - } - - startRangeRef.current = start; + updateReadPosts(start, end); if (end + 10 > filteredItems.length && !loadFailed && infiniteScrolling) { fetchMore(); @@ -293,6 +274,24 @@ export default function Feed({ }, ); + function updateReadPosts(start: number, end: number) { + if (start < 0 || end < 0 || (!start && !end)) return; // no items rendered + + // if scrolled down + const startOffset = header ? 1 : 0; // header counts as item to VList + if (start > startOffset && start > startRangeRef.current) { + // emit what was removed + onRemovedFromTop?.( + filteredItems.slice( + startRangeRef.current - startOffset, + start - startOffset, + ), + ); + } + + startRangeRef.current = start; + } + const fetchMoreEvent = useEffectEvent(fetchMore); useEffect(() => { @@ -361,13 +360,9 @@ export default function Feed({ } ref={virtuaHandle} style={{ height: "100%" }} - onScrollEnd={() => { - scrollingRef.current = false; - }} onScroll={(offset) => { onScroll(); - scrollingRef.current = true; setIsListAtTop(offset < 10); setScrolledPastSearch(offset > 40); }}