diff --git a/package-lock.json b/package-lock.json index 2a80c86401b732fd6192e13a9b8d2d7d4889ed47..9d7bd37f69f9c164cbdb66cb6e21d8e229fa882b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "@angular/platform-browser": "^17.3.11", "@angular/platform-browser-dynamic": "^17.3.11", "@angular/router": "^17.3.11", - "@apollo/client": "~3.8.10", + "@apollo/client": "~3.11.10", "@capacitor-community/barcode-scanner": "~4.0.1", "@capacitor/android": "^5.0.0", "@capacitor/app": "^5.0.0", @@ -48,25 +48,25 @@ "@rx-angular/cdk": "^17.1.0", "@rx-angular/state": "^17.2.0", "@rx-angular/template": "^17.3.1", - "apollo-angular": "~6.0.0", + "angular-code-input": "^2.0.0", + "apollo-angular": "~7.2.1", "apollo-link-logger": "~2.0.1", "apollo-link-queue": "~3.1.0", "apollo-link-serialize": "~4.0.0", "apollo3-cache-persist": "~0.14.1", "bs58": "^5.0.0", "graphql-tag": "~2.12.6", - "graphql-ws": "~5.14.3", - "ionicons": "~7.2.2", - "jdenticon": "^3.2.0", + "graphql-ws": "~5.16.0", + "ionicons": "~7.4.0", + "jdenticon": "^3.3.0", "localforage": "~1.10.0", "moment": "^2.30.1", - "moment-timezone": "^0.5.44", + "moment-timezone": "^0.5.46", "ng-qrcode": "^17.0.0", "ngx-color-picker": "^16.0.0", "ngx-jdenticon": "^2.0.0", "ngx-markdown": "^17.1.1", - "ngx-material-timepicker": "~13.1.1", - "qrcode": "^1.5.3", + "qrcode": "^1.5.4", "rxjs": "~7.8.1", "stream-browserify": "^3.0.0", "swiper": "^11.0.5", @@ -133,9 +133,9 @@ "yarn": ">= 1.22.19" }, "peerDependencies": { - "@apollo/client": "~3.8.5", + "@apollo/client": "~3.11.10", "localforage": "~1.10.0", - "rxjs": "~7.5.7" + "rxjs": "~7.8.1" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -825,17 +825,19 @@ } }, "node_modules/@apollo/client": { - "version": "3.8.10", - "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.8.10.tgz", - "integrity": "sha512-p/22RZ8ehHyvySnC20EHPPe0gdu8Xp6ZCiXOfdEe1ZORw5cUteD/TLc66tfKv8qu8NLIfbiWoa+6s70XnKvxqg==", + "version": "3.11.10", + "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.11.10.tgz", + "integrity": "sha512-IfGc+X4il0rDqVQBBWdxIKM+ciDCiDzBq9+Bg9z4tJMi87uF6po4v+ddiac1wP0ARgVPsFwEIGxK7jhN4pW8jg==", "dependencies": { "@graphql-typed-document-node/core": "^3.1.1", + "@wry/caches": "^1.0.0", "@wry/equality": "^0.5.6", "@wry/trie": "^0.5.0", "graphql-tag": "^2.12.6", "hoist-non-react-statics": "^3.3.2", "optimism": "^0.18.0", "prop-types": "^15.7.2", + "rehackt": "^0.1.0", "response-iterator": "^0.2.6", "symbol-observable": "^4.0.0", "ts-invariant": "^0.10.3", @@ -843,10 +845,10 @@ "zen-observable-ts": "^1.2.5" }, "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0", + "graphql": "^15.0.0 || ^16.0.0", "graphql-ws": "^5.5.5", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc <19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc <19.0.0", "subscriptions-transport-ws": "^0.9.0 || ^0.11.0" }, "peerDependenciesMeta": { @@ -9889,12 +9891,6 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, - "node_modules/@types/luxon": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.4.2.tgz", - "integrity": "sha512-TifLZlFudklWlMBfhubvgqTXRzLDI5pCbGa4P8a3wPyUQSW+1xQ5eDsreP9DWHX3tjq1ke96uYG/nwundroWcA==", - "peer": true - }, "node_modules/@types/mdast": { "version": "3.0.15", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", @@ -9952,7 +9948,7 @@ "version": "15.7.11", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==", - "dev": true + "devOptional": true }, "node_modules/@types/qs": { "version": "6.9.17", @@ -9970,7 +9966,7 @@ "version": "18.2.51", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.51.tgz", "integrity": "sha512-XeoMaU4CzyjdRr3c4IQQtiH7Rpo18V07rYZUucEZQwOUEtGgTXv7e6igQiQ+xnV6MbMe1qjEmKdgMNnfppnXfg==", - "dev": true, + "devOptional": true, "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -9987,7 +9983,7 @@ "version": "0.16.8", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==", - "dev": true + "devOptional": true }, "node_modules/@types/semver": { "version": "7.5.6", @@ -10939,6 +10935,18 @@ "ajv": "^8.8.2" } }, + "node_modules/angular-code-input": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/angular-code-input/-/angular-code-input-2.0.0.tgz", + "integrity": "sha512-HqGo0nce3OpckisGT44J9PAvn1HHQJPq4Y4j0o818HCQ9eg0EU/80odnasnLTTsTSc33skyi6r0rt14ZJAgeNg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=16.0.0", + "@angular/core": ">=16.0.0" + } + }, "node_modules/ansi-colors": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", @@ -11018,9 +11026,9 @@ } }, "node_modules/apollo-angular": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/apollo-angular/-/apollo-angular-6.0.0.tgz", - "integrity": "sha512-Ys4MLCOSBpNZ411R+xw2XcUSUZo3Az/r/PujZZM9ZEvBhCHlqxAmXacRBda+MGc34NYqkXO0yxLwF+UXPHogkg==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/apollo-angular/-/apollo-angular-7.2.1.tgz", + "integrity": "sha512-kUztS6VPI4IMOT6i1f2U+Ps9DOMoGXLfOURiEN2LApek7ajOSsz1pmWmItg6lZ/5om3sO+cbuaNCwb2M1sy26Q==", "dependencies": { "tslib": "^2.6.2" }, @@ -11028,7 +11036,7 @@ "node": ">=16" }, "peerDependencies": { - "@angular/core": "^17.0.0", + "@angular/core": "^17.0.0 || ^18.0.0", "@apollo/client": "^3.0.0", "graphql": "^15.0.0 || ^16.0.0", "rxjs": "^6.0.0 || ^7.0.0" @@ -13154,7 +13162,7 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true + "devOptional": true }, "node_modules/custom-event": { "version": "1.0.1", @@ -14451,11 +14459,6 @@ "node": ">= 4" } }, - "node_modules/encode-utf8": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz", - "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==" - }, "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -16707,9 +16710,12 @@ } }, "node_modules/graphql-ws": { - "version": "5.14.3", - "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.14.3.tgz", - "integrity": "sha512-F/i2xNIVbaEF2xWggID0X/UZQa2V8kqKDPO8hwmu53bVOcTL7uNkxnexeEgSCVxYBQUTUNEI8+e4LO1FOhKPKQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.16.0.tgz", + "integrity": "sha512-Ju2RCU2dQMgSKtArPbEtsK5gNLnsQyTNIo/T7cZNp96niC1x0KdJNZV0TIoilceBPQwfb5itrGl8pkFeOUMl4A==", + "workspaces": [ + "website" + ], "engines": { "node": ">=10" }, @@ -17430,9 +17436,9 @@ } }, "node_modules/ionicons": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-7.2.2.tgz", - "integrity": "sha512-I3iYIfc9Q9FRifWyFSwTAvbEABWlWY32i0sAVDDPGYnaIZVugkLCZFbEcrphW6ixVPg8tt1oLwalo/JJwbEqnA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-7.4.0.tgz", + "integrity": "sha512-ZK94MMqgzMCPPMhmk8Ouu6goyVHFIlw/ACP6oe3FrikcI0N7CX0xcwVaEbUc0G/v3W0shI93vo+9ve/KpvcNhQ==", "dependencies": { "@stencil/core": "^4.0.3" } @@ -18186,9 +18192,9 @@ } }, "node_modules/jdenticon": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jdenticon/-/jdenticon-3.2.0.tgz", - "integrity": "sha512-z6Iq3fTODUMSOiR2nNYrqigS6Y0GvdXfyQWrUby7htDHvX7GNEwaWR4hcaL+FmhEgBe08Xkup/BKxXQhDJByPA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/jdenticon/-/jdenticon-3.3.0.tgz", + "integrity": "sha512-DhuBRNRIybGPeAjMjdHbkIfiwZCCmf8ggu7C49jhp6aJ7DYsZfudnvnTY5/1vgUhrGA7JaDAx1WevnpjCPvaGg==", "dependencies": { "canvas-renderer": "~2.2.0" }, @@ -19868,15 +19874,6 @@ "yallist": "^3.0.2" } }, - "node_modules/luxon": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", - "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==", - "peer": true, - "engines": { - "node": ">=12" - } - }, "node_modules/macos-release": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.5.1.tgz", @@ -21057,9 +21054,9 @@ } }, "node_modules/moment-timezone": { - "version": "0.5.44", - "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.44.tgz", - "integrity": "sha512-nv3YpzI/8lkQn0U6RkLd+f0W/zy/JnoR5/EyPz/dNkPTBjA2jNLCVxaiQ8QpeLymhSZvX0wCL5s27NQWdOPwAw==", + "version": "0.5.46", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.46.tgz", + "integrity": "sha512-ZXm9b36esbe7OmdABqIWJuBBiLLwAjrN7CE+7sYdCCx82Nabt1wHDj8TVseS59QIlfFPbOoiBPm6ca9BioG4hw==", "dependencies": { "moment": "^2.29.4" }, @@ -21357,18 +21354,6 @@ "zone.js": "~0.14.0" } }, - "node_modules/ngx-material-timepicker": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/ngx-material-timepicker/-/ngx-material-timepicker-13.1.1.tgz", - "integrity": "sha512-GST4IBFXrPSBB5VP5LVxoOk1yHbdSnaB293tjuyu+vusg+pQ/3+AtcxQEIadk6Nmsdt8zKsbXNgvLrI4nbYRKQ==", - "dependencies": { - "tslib": "^2.0.0" - }, - "peerDependencies": { - "@types/luxon": ">= 1.11.1", - "luxon": ">= 1.24.0" - } - }, "node_modules/nice-napi": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", @@ -23559,12 +23544,11 @@ } }, "node_modules/qrcode": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.3.tgz", - "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.4.tgz", + "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==", "dependencies": { "dijkstrajs": "^1.0.1", - "encode-utf8": "^1.0.3", "pngjs": "^5.0.0", "yargs": "^15.3.1" }, @@ -24162,6 +24146,23 @@ "jsesc": "bin/jsesc" } }, + "node_modules/rehackt": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/rehackt/-/rehackt-0.1.0.tgz", + "integrity": "sha512-7kRDOuLHB87D/JESKxQoRwv4DzbIdwkAGQ7p6QKGdVlY1IZheUnVhlk/4UZlNUVxdAXpyxikE3URsG067ybVzw==", + "peerDependencies": { + "@types/react": "*", + "react": "*" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + } + } + }, "node_modules/relay-runtime": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/relay-runtime/-/relay-runtime-12.0.0.tgz", diff --git a/package.json b/package.json index d4c201323e9f607ba76db5533e9bb5c48a750d89..995d6e65f8895dd1177a8244929d49f8b3283443 100644 --- a/package.json +++ b/package.json @@ -76,9 +76,9 @@ "src/**/*.{css,json,md,scss}": "prettier --write" }, "peerDependencies": { - "@apollo/client": "~3.8.5", + "@apollo/client": "~3.11.10", "localforage": "~1.10.0", - "rxjs": "~7.5.7" + "rxjs": "~7.8.1" }, "dependencies": { "@angular/animations": "^17.3.11", @@ -88,7 +88,7 @@ "@angular/platform-browser": "^17.3.11", "@angular/platform-browser-dynamic": "^17.3.11", "@angular/router": "^17.3.11", - "@apollo/client": "~3.8.10", + "@apollo/client": "~3.11.10", "@capacitor-community/barcode-scanner": "~4.0.1", "@capacitor/android": "^5.0.0", "@capacitor/app": "^5.0.0", @@ -120,25 +120,25 @@ "@rx-angular/cdk": "^17.1.0", "@rx-angular/state": "^17.2.0", "@rx-angular/template": "^17.3.1", - "apollo-angular": "~6.0.0", + "angular-code-input": "^2.0.0", + "apollo-angular": "~7.2.1", "apollo-link-logger": "~2.0.1", "apollo-link-queue": "~3.1.0", "apollo-link-serialize": "~4.0.0", "apollo3-cache-persist": "~0.14.1", "bs58": "^5.0.0", "graphql-tag": "~2.12.6", - "graphql-ws": "~5.14.3", - "ionicons": "~7.2.2", - "jdenticon": "^3.2.0", + "graphql-ws": "~5.16.0", + "ionicons": "~7.4.0", + "jdenticon": "^3.3.0", "localforage": "~1.10.0", "moment": "^2.30.1", - "moment-timezone": "^0.5.44", + "moment-timezone": "^0.5.46", "ng-qrcode": "^17.0.0", "ngx-color-picker": "^16.0.0", "ngx-jdenticon": "^2.0.0", "ngx-markdown": "^17.1.1", - "ngx-material-timepicker": "~13.1.1", - "qrcode": "^1.5.3", + "qrcode": "^1.5.4", "rxjs": "~7.8.1", "stream-browserify": "^3.0.0", "swiper": "^11.0.5", diff --git a/src/app/account/register/password/password.module.ts b/src/app/account/register/password/password.module.ts index 083b17c49bbc8b8a819985b6d5449f67efade016..3f869e6c4c3c9fd44a0a2f00ad45c988c8d4879e 100644 --- a/src/app/account/register/password/password.module.ts +++ b/src/app/account/register/password/password.module.ts @@ -8,9 +8,10 @@ import { AppSharedModule } from '@app/shared/shared.module'; import { PasswordForm } from '@app/account/register/password/password.form'; import { PasswordModal } from '@app/account/register/password/password.modal'; import { CodeInputModule } from 'angular-code-input'; +import { AppUnlockModule } from '@app/account/unlock/unlock.module'; @NgModule({ - imports: [CommonModule, FormsModule, IonicModule, TranslateModule, AppSharedModule, CodeInputModule], + imports: [CommonModule, FormsModule, IonicModule, TranslateModule, AppSharedModule, CodeInputModule, AppUnlockModule], declarations: [PasswordForm, PasswordModal], exports: [PasswordForm, PasswordModal], }) diff --git a/src/app/app.module.ts b/src/app/app.module.ts index fd4e7b4a20f6d8de4e8dd4300f3e9d03e21a5fb3..86395dd39a71caac08a5a5e72ad53663ed758f3b 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -28,6 +28,7 @@ import { POD_GRAPHQL_TYPE_POLICIES } from '@app/network/pod/pod.config'; import { AppWotModule } from './wot/wot.module'; import { APP_FORM_ERROR_I18N_KEYS } from '@app/shared/form/form-error-translator.service'; import { IdentityConfirmValidators } from '@app/account/confirm/identity-confirm.validator'; +import { CodeInputModule } from 'angular-code-input'; export function createTranslateLoader(http: HttpClient) { if (environment.production) { @@ -57,6 +58,11 @@ export function createTranslateLoader(http: HttpClient) { deps: [HttpClient], }, }), + CodeInputModule.forRoot({ + codeLength: 6, + isCharsCode: true, + code: 'abcdef', + }), AppRoutingModule, AppSharedModule,