atls / reactjs

ReactJS Advanced Custom Modules
BSD 3-Clause "New" or "Revised" License
3 stars 1 forks source link

Грейд версий `@atls/react-kratos-browser-flows` #130

Open Nelfimov opened 8 months ago

Nelfimov commented 8 months ago

С чем связан запрос на фичу?

Необходимо обновить версии зависимостей у пакета до последних

Расскажите как вы это себе видите

Обновляем через yarn upgrade-interactve (будет обновлять по всему проекту) либо вручную в package.json.

После обновления проверяем с помощью yarn check наличие ошибок, исправляем до ПР.

Приложите пример реализаций

No response

Voiislav commented 8 months ago

@Nelfimov, добрый день. Отписываюсь по итогам задачи:

  1. Устанавливал в свой локальный репозиторий отсюда: [https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme] через команду npm i @atls/react-kratos-browser-flows.
  2. Установил yarn-lock
  3. Запустил обновление версии зависимостей через команду yarn upgrade-interactve и по итогам получил ответ:

yarn upgrade-interactive v1.22.19 warning package.json: No license field warning No license field success All of your dependencies are up to date.

  1. Запустил проверку через команду yarn check и по итогам получил ответ:

warning package.json: No license field warning No license field success Folder in sync.

Есть два вопроса:

  1. Эти ответы от системы ожидаемы или в чем-то ошибся?
  2. Не совсем понимаю, как связать репозиторий с GitHub, если исходный проект брал не оттуда?
Nelfimov commented 8 months ago

Проверь через yarn -v какой ярн у тебя используется - официальный или наш бандл. Если не наш, то в atls/tools репе есть скрипт для установки нашего бандла в проект.

Nelfimov commented 8 months ago

Ну и по работе - клонировать @atls/react-kratos-browser-flow не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events

Voiislav commented 8 months ago

Проверь через yarn -v какой ярн у тебя используется - официальный или наш бандл. Если не наш, то в atls/tools репе есть скрипт для установки нашего бандла в проект.

Сейчас официальный yarn v. 1.22.19. При установке вашего по команде yarn set version https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js выдает ошибку, как будто по ссылке ничего нужного нет:

error An unexpected error occurred: "Release not found: https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js".

Nelfimov commented 8 months ago

Покажи скрином настройки IDE - typescript, nodejs, пакетный менеджер

Voiislav commented 8 months ago

Ну и по работе - клонировать @atls/react-kratos-browser-flow не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events

Пока не понимаю. Я ведь могу обновить зависимости в своем локальном репозитории, только клонировав проект.

Nelfimov commented 8 months ago

Ну и по работе - клонировать @atls/react-kratos-browser-flow не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events

Пока не понимаю. Я ведь могу обновить зависимости в своем локальном репозитории, только клонировав проект.

Тебе надо:

  1. Склонировать текущую репу
  2. Сделать свою ветку
  3. Обновить зависимости
  4. yarn check
  5. Создать ПР, привязать эту задачу
  6. Запросить у меня ревью

Еще я не обратил внимание - зачем пользуешь npm i...? У нас вся работа ведется через yarn. В каждом проекте бандл кладется в .yarn/releases. Поэтому когда ты выполняешь yarn -v в проекте тебе должна выдаваться наша версия, например

nikoroach@Nikitas-MacBook-Pro good-gantt % yarn -v
(node:24512) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
0.0.1-git.20230911.hash-1c44e15

Если иное - значит у тебя используется глобальный ярн, с ним ничего работать не будет.

Voiislav commented 8 months ago

Покажи скрином настройки IDE - typescript, nodejs, пакетный менеджер

photo_2023-10-24 10 13 42

photo_2023-10-24 10 13 47

Nelfimov commented 8 months ago

Имеется в виду не скрины файлов из проекта, а настройки твоей IDE. Вот пример моих настроек:

Screenshot 2023-10-24 at 11 22 46
Screenshot 2023-10-24 at 11 22 51

Обрати внимание что пакетный менеджер ссылается на файл в проекте. Хоть проект другой, но структура папок та же: .yarn/releases. И поэтому при вызове консоли внутри проекта и любой команды yarn ... у меня берется yarn из проекта. Можешь посмотреть в yarnrc.yml путь ссылки до пакетного менеджера.

У тебя VS Code, поэтому точно где эта настройка лежит - не скажу.

Если решишь оставаться на нем, то тебе еще понадобиться ставить это - https://yarnpkg.com/getting-started/editor-sdks

Ну и готовность мучатся с неожиданными ошибками.

Nelfimov commented 8 months ago

Можешь для экспериментов запуска проекта склонировать это и попробовать запустить в dev:

https://github.com/torin-asakura/drum-in

Voiislav commented 8 months ago

Member

Перешел на WebStorm. Вот скрины моих текущих настроек:

photo_2023-10-24 10 33 53

photo_2023-10-24 10 33 56

Nelfimov commented 8 months ago

Теперь обрати внимание:

Ну и убедись что у тебя версия IDE не выше 2022.2.5 - на последующих не работает индексация в монорепозиториях, ждем фикса

Voiislav commented 8 months ago

Можешь для экспериментов запуска проекта склонировать это и попробовать запустить в dev:

https://github.com/torin-asakura/drum-in

Склонировал проект себе. Тайпскрипт сменился на проектный (теперь понятно, что он автоматически меняется в зависимости от проекта), скрин ниже:

photo_2023-10-24 11 08 36

Теперь 3 вопроса:

  1. Путь пакетного менеджера аналогично тайпскрипту не поменялся, его нужно менять с глобального вручную. Как это сделать?
  2. Команда из atls/tools - yarn set version https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js выдает ошибку, по которой как будто бы по самому URL ничего не найдено. Как быть с этим?
  3. Сам проект @atls/react-kratos-browser-flows я изначально клонировал отсюда - https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme, потому что не нашел нужную репу с ровно таким же названием на GitHub. Это верный путь?
Nelfimov commented 8 months ago

Склонировал проект себе. Тайпскрипт сменился на проектный (теперь понятно, что он автоматически меняется в зависимости от проекта), скрин ниже:

photo_2023-10-24 11 08 36

Только обрати внимание - он взялся не из корня проекта а из энтрипоинта. Поменяй на корневой.

  1. Путь пакетного менеджера аналогично тайпскрипту не поменялся, его нужно менять с глобального вручную. Как это сделать?

Указать путь к нашему ярн бандлу, в проекте есть.

  1. Команда из atls/tools - yarn set version https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js выдает ошибку, по которой как будто бы по самому URL ничего не найдено. Как быть с этим?

Сначала сделай п.1, потом попробуй еще раз. Так то при простом переходе по ссылке https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js файл есть.

Если и так ничего не выйдет, просто скопируй данные из ссылки в свой бандл. Ну и проследи чтобы название файла бандла совпадало с тем что указано в yarnrc.yml

  1. Сам проект @atls/react-kratos-browser-flows я изначально клонировал отсюда - https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme, потому что не нашел нужную репу с ровно таким же названием на GitHub. Это верный путь?

Нет - это ты установил пакет себе. Тебе надо клонировать текущую репу и работать из нее.

Voiislav commented 8 months ago

@Nelfimov зависимости обновил. После yarn check много ошибок. Нужно прикреплять скрины ошибок? Или исправляю их самостоятельно?

Nelfimov commented 8 months ago

Можешь логи прикрепить если нужен совет как с этим быть. Только обязательно не скрины, а вставкой в виде кода. И желательно засунуть под спойлер.

Voiislav commented 8 months ago

@Nelfimov

Details

➤ YN0000: ┌ Format ➤ YN0000: │ Cannot find module '/Users/voiislav/Desktop/WebDev/reactjs/packages/kratos-browser-flows/.pnp.cjs' ➤ YN0000: │ Require stack: ➤ YN0000: │ - internal/preload ➤ YN0000: │ ➤ YN0000: │ Module._resolveFilename node:internal/modules/cjs/loader:1077:15 ➤ YN0000: │ Module._load node:internal/modules/cjs/loader:922:27 ➤ YN0000: │ internalRequire node:internal/modules/cjs/loader:174:19 ➤ YN0000: │ Module._preloadModules node:internal/modules/cjs/loader:1433:5 ➤ YN0000: │ loadPreloadModules node:internal/process/pre_execution:598:5 ➤ YN0000: │ setupUserModules node:internal/process/pre_execution:117:3 ➤ YN0000: │ MessagePort. node:internal/main/worker_thread:132:5 ➤ YN0000: │ [nodejs.internal.kHybridDispatch] node:internal/event_target:741:20 ➤ YN0000: │ exports.emitMessage node:internal/per_context/messageport:23:28 ➤ YN0000: └ Completed in 0s 607ms ➤ YN0000: Failed with errors in 0s 610ms ➤ YN0000: ┌ Typecheck ➤ YN0000: │ Error: Cannot find type definition file for 'testing-library__jest-dom'. ➤ YN0000: │ The file is in the program because: ➤ YN0000: │ Entry point for implicit type library 'testing-library__jest-dom' ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:50:24 ➤ YN0000: │ ➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'. ➤ YN0000: │ ➤ YN0000: │ 48 | ➤ YN0000: │ 49 | getMessages() { ➤ YN0000: │ > 50 | return this.#state?.ui?.messages || [] ➤ YN0000: │ | ^ ➤ YN0000: │ 51 | } ➤ YN0000: │ 52 | ➤ YN0000: │ 53 | getNode(name) { ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:54:24 ➤ YN0000: │ ➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'. ➤ YN0000: │ ➤ YN0000: │ 52 | ➤ YN0000: │ 53 | getNode(name) { ➤ YN0000: │ > 54 | return this.#state?.ui?.nodes?.find( ➤ YN0000: │ | ^ ➤ YN0000: │ 55 | (node) => (node.attributes as UiNodeInputAttributes).name === name ➤ YN0000: │ 56 | ) ➤ YN0000: │ 57 | } ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:61:19 ➤ YN0000: │ ➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'. ➤ YN0000: │ ➤ YN0000: │ 59 | getNodes(name) { ➤ YN0000: │ 60 | return ( ➤ YN0000: │ > 61 | this.#state?.ui?.nodes?.filter( ➤ YN0000: │ | ^ ➤ YN0000: │ 62 | (node) => (node.attributes as UiNodeInputAttributes).name === name ➤ YN0000: │ 63 | ) || [] ➤ YN0000: │ 64 | ) ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:68:24 ➤ YN0000: │ ➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'. ➤ YN0000: │ ➤ YN0000: │ 66 | ➤ YN0000: │ 67 | getNodesGroup(group) { ➤ YN0000: │ > 68 | return this.#state?.ui?.nodes?.filter((node) => node.group === group) || [] ➤ YN0000: │ | ^ ➤ YN0000: │ 69 | } ➤ YN0000: │ 70 | ➤ YN0000: │ 71 | getValue(name): string | any { ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:84:11 ➤ YN0000: │ ➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'. ➤ YN0000: │ ➤ YN0000: │ 82 | ➤ YN0000: │ 83 | protected setValues(state: State) { ➤ YN0000: │ > 84 | state?.ui?.nodes?.forEach(({ attributes }) => { ➤ YN0000: │ | ^ ➤ YN0000: │ 85 | if (!this.#values[(attributes as UiNodeInputAttributes).name]) { ➤ YN0000: │ 86 | this.#values[(attributes as UiNodeInputAttributes).name] = ➤ YN0000: │ 87 | (attributes as UiNodeInputAttributes).value || '' ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/errors.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'getSelfServiceError' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRegistrationFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceVerificationFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRecoveryFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceSettingsFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceLoginFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRegistrationFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceVerificationFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRecoveryFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceSettingsFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceLoginFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/kratos.client.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'V0alpha2Api'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceLoginFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceLoginFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'getSelfServiceLoginFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'initializeSelfServiceLoginFlowForBrowsers' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'submitSelfServiceLoginFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/logout.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'createSelfServiceLogoutFlowUrlForBrowsers' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/logout.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'submitSelfServiceLogoutFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRecoveryFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRecoveryFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'getSelfServiceRecoveryFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'initializeSelfServiceRecoveryFlowForBrowsers' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'submitSelfServiceRecoveryFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRegistrationFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRegistrationFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'getSelfServiceRegistrationFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'initializeSelfServiceRegistrationFlowForBrowsers' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'submitSelfServiceRegistrationFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceSettingsFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceSettingsFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'getSelfServiceSettingsFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'initializeSelfServiceSettingsFlowForBrowsers' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'submitSelfServiceSettingsFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceVerificationFlow'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceVerificationFlowBody'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'getSelfServiceVerificationFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'initializeSelfServiceVerificationFlowForBrowsers' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts ➤ YN0000: │ ➤ YN0000: │ Error: Property 'submitSelfServiceVerificationFlow' does not exist on type 'KratosClient'. ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: │ packages/kratos-browser-flows/src/ui/flow-error.component.tsx:1:9 ➤ YN0000: │ ➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceError'. ➤ YN0000: │ ➤ YN0000: │ > 1 | import { SelfServiceError } from '@ory/kratos-client' ➤ YN0000: │ | ^ ➤ YN0000: │ 2 | ➤ YN0000: │ 3 | import { ReactElement } from 'react' ➤ YN0000: │ 4 | import { FC } from 'react' ➤ YN0000: │ ➤ YN0000: │ ➤ YN0000: └ Completed in 16s 271ms ➤ YN0000: Failed with errors in 16s 272ms ➤ YN0000: ┌ Lint ➤ YN0000: └ Completed in 8s 593ms ➤ YN0000: Done in 8s 594ms

Как видно, ошибки найдены в:

  1. packages/kratos-browser-flows/src/flows/abstract.flow.ts;
  2. packages/kratos-browser-flows/src/flows/errors.flow.ts;
  3. packages/kratos-browser-flows/src/flows/flow.interfaces.ts;
  4. packages/kratos-browser-flows/src/flows/kratos.client.ts;
  5. packages/kratos-browser-flows/src/flows/login.flow.ts;
  6. packages/kratos-browser-flows/src/flows/logout.flow.ts;
  7. packages/kratos-browser-flows/src/flows/recovery.flow.ts;
  8. packages/kratos-browser-flows/src/flows/registration.flow.ts;
  9. packages/kratos-browser-flows/src/flows/settings.flow.ts;
  10. packages/kratos-browser-flows/src/flows/verification.flow.ts;
  11. packages/kratos-browser-flows/src/ui/flow-error.component.tsx

Большая часть ошибок связана с @ory/kratos-client (примеры: Error: Property 'submitSelfServiceLogoutFlow' does not exist on type 'KratosClient'; Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceLoginFlow'). Прочитал, что одной из причин может быть проблема с версией @ory/kratos-client, стоит работать в этом направлении?

Также не определены типы для 'testing-library__jest-dom'. Текст ошибки: Error: Cannot find type definition file for 'testing-libraryjest-dom'. ➤ YN0000: │ The file is in the program because: ➤ YN0000: │ Entry point for implicit type library 'testing-libraryjest-dom'

Voiislav commented 8 months ago

@Nelfimov, думаю, причина части ошибок - @ory/kratos-client не установлена. Но при попытке установить также возникает ошибка, которая ссылается некорректный пакетный менеджер. Скрины ниже под спойлером. Как проект работал до обновления зависимостей? Или только после обновления зависимостей должна была возникнуть проблема с импортами из @ory/kratos-client?

Details

![photo_2023-10-24 14 17 02](https://github.com/atls/reactjs/assets/133046530/ad1aff14-1671-447b-a044-468b485d90f2) ![photo_2023-10-24 14 17 04](https://github.com/atls/reactjs/assets/133046530/a8db0c0d-7877-4adb-8f08-a179f2737915)

UPD: Откатился назад и сделал yarn check ДО обновления - ошибок нет. При этом до обновления версия @ory/kratos-client - 0.8.2-alpha, а после - 1.0.0. Может, не стоит делать обновление по всему проекту во избежание ошибок? UPD2: Если после обновления внутри yarn.lock вручную изменить версию @ory/kratos-client на ту, что была до обновления, все ошибки сохраняются.

Voiislav commented 8 months ago

@Nelfimov, я сделал обновление еще раз. При этом не выбирал те latest версии, которые были подсвечены красным. После yarn check ошибок нет. Создал ПР и запросил ревью.

Nelfimov commented 8 months ago

Не совсем понял что имеешь в виду под "обновлением" - убедись что у тебя последняя версия нашего ярна, обнови зависимости в пакете, запусти yarn check

Voiislav commented 8 months ago

Не совсем понял что имеешь в виду под "обновлением" - убедись что у тебя последняя версия нашего ярна, обнови зависимости в пакете, запусти yarn check

Убедился, обновил зависимости, yarn check прошел без ошибок. Занимаюсь ошибками ПР.