From de442015b7653d48ba9b12d1f8b6ab375ca1de20 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 10:46:04 -0600 Subject: [PATCH 01/51] clean up sub-apps --- .ebextensions/ceramic/00_env_vars.config | 2 +- .ebextensions/cron/00_env_vars.config | 2 +- .ebextensions/websockets/00_env_vars.config | 2 +- .eslintignore | 2 +- .eslintrc.json | 2 +- .github/actions/build/action.yml | 2 - .github/actions/deploy_staging/action.yml | 101 + .github/actions/install/action.yml | 6 +- .github/actions/notify_error/action.yml | 24 + .github/workflows/deploy_cron.yml | 290 + .github/workflows/deploy_scoutgame.yml | 2 - .github/workflows/deploy_waitlist.yml | 2 - __e2e__/utils/mocks.ts | 2 +- .../permissions/00-create-root-page.spec.ts | 2 +- .../permissions/01-create-child-page.spec.ts | 2 +- .../02-update-existing-permission.spec.ts | 2 +- .../permissions/03-delete-permission.spec.ts | 2 +- .../04-add-page-permission.spec.ts | 2 +- .../permissions/05-reposition-to-root.spec.ts | 2 +- .../permissions/06-reposition-upwards.spec.ts | 2 +- .../08-reposition-different-tree.spec.ts | 2 +- .../09-board-permission-updated.spec.ts | 2 +- .../pages/api/comments/[id]/index.spec.ts | 2 +- .../pages/api/credentials/templates.spec.ts | 2 +- .../api/members/[memberId]/values.spec.ts | 2 +- .../pages/[id]/restrict-permissions.spec.ts | 2 +- .../pages/api/permissions/forum/index.spec.ts | 2 +- .../server/pages/api/profile/profile.spec.ts | 2 +- .../pages/api/spaces/[id]/index.spec.ts | 2 +- .../[id]/members/properties/index.spec.ts | 2 +- .../members/properties/permissions.spec.ts | 2 +- .../[id]/set-default-page-permissions.spec.ts | 2 +- .../[id]/set-default-post-category.spec.ts | 2 +- .../[id]/set-public-bounty-board.spec.ts | 2 +- .../pages/api/spaces/[id]/snapshot.spec.ts | 2 +- .../pages/api/threads/[id]/resolve.spec.ts | 2 +- .../server/pages/api/threads/index.spec.ts | 2 +- .../server/pages/api/votes/[id]/index.spec.ts | 2 +- .../server/pages/api/votes/index.spec.ts | 2 +- .../ceramicServer => apps/ceramic}/README.md | 0 .../ceramic/esbuild.config.ts | 2 +- apps/ceramic/package.json | 18 + .../ceramic/src}/authenticate.ts | 0 .../ceramic/src}/ceramic-client.ts | 2 +- .../ceramic/src}/credentials.gql | 0 .../ceramic/src}/deploy-composites.ts | 2 +- .../src}/generated/composite-definition.json | 0 apps/comingsoon/tsconfig.json | 1 - .../cron/esbuild.config.ts | 6 +- apps/cron/jest.config.ts | 20 + apps/cron/package.json | 18 + .../cron/src}/__tests__/healthCheck.spec.ts | 0 {background => apps/cron/src}/cron.ts | 7 +- .../cron/src}/healthCheck/app.ts | 0 .../cron/src}/healthCheck/routes.ts | 0 .../countAllSpacesBlocksTask.spec.ts | 0 .../sendDraftProposalNotificationTask.spec.ts | 5 +- ...endProposalEvaluationNotifications.spec.ts | 10 +- .../src}/tasks/countAllSpacesBlocksTask.ts | 5 +- .../src}/tasks/deleteArchivedPages/index.ts | 0 .../src}/tasks/deleteArchivedPages/task.ts | 5 +- .../src}/tasks/indexPendingCredentialsTask.ts | 7 +- .../processCollablandWebhookMessages/index.ts | 0 .../processCollablandWebhookMessages/task.ts | 7 +- .../processGithubWebhookMessages/index.ts | 0 .../processGithubWebhookMessages/task.ts | 7 +- .../processMailgunWebhookMessages/index.ts | 0 .../processMailgunWebhookMessages/task.ts | 7 +- .../processSynapsWebhookMessages/index.ts | 0 .../processSynapsWebhookMessages/task.ts | 7 +- .../tasks/refreshBountyApplications/task.ts | 5 +- .../src}/tasks/refreshDocusignOAuthTask.ts | 3 +- .../sendDraftProposalNotificationTask.ts | 9 +- .../sendProposalEvaluationNotifications.ts | 9 +- .../index.ts | 0 .../initWebPush.ts | 9 + .../task.ts | 4 +- .../storeOptimismProjectAttestations/index.ts | 0 .../storeOptimismProjectAttestations/task.ts | 3 +- .../cron/src}/tasks/syncOptimismReviews.ts | 0 .../src}/tasks/syncSummonSpaceRoles/task.ts | 3 +- .../src}/tasks/updateMixpanelProfilesTask.ts | 10 +- .../src}/tasks/updateProposalStatus/index.ts | 0 .../src}/tasks/updateProposalStatus/task.ts | 3 +- .../src}/tasks/updateVotesStatus/index.ts | 0 .../cron/src}/tasks/updateVotesStatus/task.ts | 3 +- .../updateVotesStatus/updateVoteStatus.ts | 9 +- .../tasks/verifyTokenGateMemberships/index.ts | 0 .../tasks/verifyTokenGateMemberships/task.ts | 5 +- apps/cron/tsconfig.json | 20 + apps/scoutgame/tsconfig.json | 1 - apps/sunnyawards/tsconfig.json | 1 - apps/websockets/esbuild.config.ts | 27 + apps/websockets/package.json | 14 + .../src/__tests__/healthCheck.spec.ts | 21 + .../src}/__tests__/websockets.spec.ts | 4 +- .../websockets/src/app}/datadog.ts | 0 .../websockets/src/app/server.ts | 7 +- .../websockets/src/app}/verifyCustomOrigin.ts | 3 +- apps/websockets/src/healthCheck/app.ts | 14 + apps/websockets/src/healthCheck/routes.ts | 16 + .../websockets/src}/initWebsockets.ts | 6 +- apps/websockets/tsconfig.json | 18 + background/ceramicServer/package.json | 3 - background/jest.config.ts | 3 - charmClient/apis/discordApi.ts | 2 +- charmClient/apis/googleApi.ts | 2 +- charmClient/apis/profileApi.ts | 2 +- charmClient/charmClient.ts | 6 +- charmClient/hooks/blockchain.ts | 2 +- charmClient/hooks/farcaster.ts | 2 +- charmClient/hooks/profile.ts | 2 +- components/_app/OpenGraphData.tsx | 2 +- .../_app/components/ConnectedAccounts.tsx | 4 +- .../_app/components/FarcasterConnect.tsx | 2 +- .../_app/components/UserOnboardingDialog.tsx | 2 +- components/_app/hooks/useOnboarding.tsx | 2 +- .../components/callout/components/Callout.tsx | 2 +- .../emojiSuggest/emojiSuggest.specs.ts | 2 +- .../components/iframe/IframeComponent.tsx | 2 +- .../CharmEditor/components/nft/nft.plugins.ts | 2 +- .../CharmEditor/components/nft/utils.ts | 2 +- .../CustomPropertiesList.tsx | 2 +- .../FormFieldPropertiesList.tsx | 2 +- .../ProjectProfilePropertiesList.tsx | 2 +- .../ProposalDefaultPropertiesList.tsx | 2 +- .../ProposalSourceDialogButton.tsx | 2 +- .../ProposalSourcePropertiesDialog.tsx | 27 +- .../RubricEvaluationPropertiesList.tsx | 2 +- .../TemplatePropertiesReadonlyList.tsx | 2 +- .../ProposalSourceProperties/interfaces.ts | 25 + components/common/Emoji.tsx | 23 +- .../common/PageLayout/components/Favicon.tsx | 2 +- components/common/PrimaryButton.tsx | 2 +- components/common/UserDisplay.tsx | 2 +- components/login/components/LoginButton.tsx | 2 +- components/login/hooks/useWarpcastLogin.ts | 2 +- .../MemberProfile/components/ProfileTabs.tsx | 2 +- .../RewardApplications/RewardApplications.tsx | 2 +- .../account/components/NewIdentityModal.tsx | 2 +- .../components/TelegramLoginIframe.tsx | 2 +- .../account/hooks/useIdentityTypes.tsx | 2 +- .../notifications/NotificationSettings.tsx | 2 +- .../components/SpaceEmailBrandingSettings.tsx | 2 +- .../profile/components/IdentityModal.tsx | 2 +- .../profile/components/UserDetailsForm.tsx | 2 +- config/colors.ts | 1 + docker-compose.yml | 4 +- hooks/useFarcasterConnection.tsx | 2 +- hooks/useTelegramConnect.ts | 2 +- hooks/useUser.tsx | 2 +- hooks/useWeb3Account.tsx | 2 +- lib/blockchain/config.ts | 11 + lib/blockchain/getNFTUrl.ts | 12 +- lib/blockchain/refreshENSName.ts | 4 +- lib/blockchain/utils.ts | 23 - lib/databases/proposalDbProperties.ts | 3 +- ...ectedPropertiesFromBoardProperties.spec.ts | 2 +- .../__tests__/getCardProperties.spec.ts | 5 +- .../__tests__/updateBoardProperties.spec.ts | 3 +- ...teSelectedPropertiesFromBoardProperties.ts | 2 +- .../proposalsSource/filterBoardProperties.ts | 2 +- .../proposalsSource/getBoardProperties.ts | 2 +- .../proposalsSource/updateBoardProperties.ts | 2 +- lib/discord/disconnectDiscordAccount.ts | 2 +- lib/farcaster/connectFarcaster.ts | 4 +- lib/farcaster/disconnectFarcaster.ts | 4 +- lib/farcaster/loginWithFarcaster.ts | 4 +- lib/gnosis/index.ts | 1 - .../__tests__/connectGoogleAccount.spec.ts | 2 +- .../__tests__/loginWithMagicLink.spec.ts | 2 +- lib/google/connectGoogleAccount.ts | 4 +- lib/google/connectGoogleAccountWithCode.ts | 2 +- lib/google/disconnectGoogleAccount.ts | 2 +- lib/google/disconnectVerifiedEmail.ts | 2 +- lib/google/loginWithGoogle.ts | 4 +- lib/google/loginWithGoogleCode.ts | 2 +- lib/google/loginWithMagicLink.ts | 4 +- lib/invites/acceptInvite.ts | 2 +- .../emails/templates/components/Button.tsx | 3 +- .../templates/components/EmailWrapper.tsx | 3 +- .../emails/templates/components/Link.tsx | 3 +- .../emails/templates/components/Text.tsx | 3 +- .../__tests__/getSpaceMemberRoles.spec.ts | 2 +- .../__tests__/getSpacesPropertyValues.spec.ts | 2 +- .../updateMemberPropertyVisibility.spec.ts | 2 +- lib/members/getMemberUsername.ts | 2 +- lib/members/getMembersExportData.ts | 2 +- lib/members/getSpaceMembers.ts | 2 +- lib/members/getSpacesPropertyValues.ts | 2 +- .../mixpanel/updateTrackOpUserProfile.ts | 2 +- .../mixpanel/updateTrackUserProfile.ts | 2 +- .../mixpanel/updateTrackUserProfileById.ts | 2 +- .../mailer/sendNotificationEmail.ts | 3 +- lib/notion/__tests__/NotionImport.spec.ts | 2 +- lib/pages/addPage.ts | 1 - lib/pages/index.ts | 1 - .../__tests__/getAggregatedData.spec.ts | 2 +- lib/{users => profile}/getUser.ts | 41 +- lib/profile/updateProfileAvatar.ts | 2 +- lib/projects/getDefaultProjectValues.ts | 2 +- .../addEnvelopeToEvaluation.ts | 2 +- .../__tests__/upsertWorkflowTemplate.spec.ts | 3 +- lib/telegram/interfaces.ts | 9 + lib/users/__tests__/getUserProfile.spec.ts | 4 +- lib/users/countConnectableIdentities.ts | 2 +- lib/users/createUser.ts | 5 +- lib/users/isSpaceAdmin.ts | 2 +- lib/users/postUserCreate.ts | 2 +- ...tDeleteUserWithoutConnectableIdentities.ts | 3 +- lib/users/updateUsedIdentity.ts | 4 +- lib/users/updateUserProfile.ts | 5 +- lib/utils/emoji.ts | 22 + lib/websockets/broadcastSpaceEvent.ts | 1 - lib/websockets/interfaces.ts | 1 - marketing-site/README.md | 11 - marketing-site/analytics.html | 38 - models/User.ts | 38 - models/index.ts | 1 - package-lock.json | 5289 ++++++++--------- package.json | 34 +- pages/_document.tsx | 2 +- pages/api/discord/login.ts | 2 +- pages/api/email-templates.ts | 2 +- pages/api/email/send-test.ts | 2 +- pages/api/farcaster/connect.ts | 2 +- pages/api/farcaster/login.ts | 2 +- pages/api/google/code.ts | 2 +- pages/api/google/connect-email-account.ts | 2 +- pages/api/google/disconnect-email-account.ts | 2 +- pages/api/google/verify-magic-link.ts | 2 +- pages/api/pages/[id]/proposal-source.ts | 2 +- pages/api/profile/add-wallets.ts | 2 +- pages/api/profile/avatar.ts | 2 +- pages/api/profile/dev.ts | 4 +- pages/api/profile/favorites.ts | 2 +- pages/api/profile/index.ts | 4 +- pages/api/profile/otp/recovery-code.ts | 4 +- pages/api/profile/otp/verify.ts | 4 +- pages/api/profile/remove-wallet.ts | 2 +- pages/api/session/login.ts | 2 +- pages/api/telegram/connect.ts | 12 +- pages/api/telegram/disconnect.ts | 4 +- .../docusign/[docusignWebhookKey]/index.ts | 2 +- ...teProposalSourceDatabaseBoardProperties.ts | 116 +- .../sendProposalEvaluationNotifications.ts | 2 +- scripts/updateMixpanelBlockCounts.ts | 2 +- stories/lib/mockData.ts | 2 +- testing/__tests__/forums.spec.ts | 5 +- testing/__tests__/generateBoard.spec.ts | 9 +- testing/__tests__/generateStubs.spec.ts | 2 +- testing/__tests__/setupDatabase.spec.ts | 5 +- testing/errors.ts | 2 +- testing/generateBoardStub.ts | 13 +- testing/generateStubs.ts | 7 +- testing/mockApiCall.ts | 2 +- testing/mocks/block.ts | 9 +- testing/mocks/form.ts | 9 +- testing/mocks/memberProperty.ts | 3 +- testing/mocks/page.ts | 3 +- testing/mocks/proposal.ts | 5 +- testing/mocks/rewards.ts | 3 +- testing/mocks/space.ts | 5 +- testing/mocks/spaceMember.ts | 2 +- testing/mocks/tokenGate.ts | 2 +- testing/mocks/user.ts | 5 +- testing/pages.ts | 5 +- testing/publicApi/schemas.ts | 7 +- testing/setupDatabase.ts | 42 +- testing/stripeMock.ts | 3 +- testing/userOtp.ts | 7 +- .../__tests__/generatePostCategory.spec.ts | 3 +- .../utils/__tests__/generateProposal.spec.ts | 3 +- testing/utils/forums.ts | 9 +- testing/utils/members.ts | 5 +- testing/utils/pages.ts | 6 +- testing/utils/proposals.ts | 19 +- testing/utils/spaces.ts | 5 +- testing/utils/tokenGates.ts | 3 +- testing/utils/users.ts | 5 +- theme/colors.ts | 3 +- tsconfig.base.json | 2 + tsconfig.json | 1 - tsconfig.next.json | 1 - 284 files changed, 3691 insertions(+), 3421 deletions(-) create mode 100644 .github/actions/deploy_staging/action.yml create mode 100644 .github/actions/notify_error/action.yml create mode 100644 .github/workflows/deploy_cron.yml rename {background/ceramicServer => apps/ceramic}/README.md (100%) rename esbuild.ceramic.ts => apps/ceramic/esbuild.config.ts (93%) create mode 100644 apps/ceramic/package.json rename {background/ceramicServer => apps/ceramic/src}/authenticate.ts (100%) rename {background/ceramicServer => apps/ceramic/src}/ceramic-client.ts (97%) rename {background/ceramicServer => apps/ceramic/src}/credentials.gql (100%) rename {background/ceramicServer => apps/ceramic/src}/deploy-composites.ts (96%) rename {background/ceramicServer => apps/ceramic/src}/generated/composite-definition.json (100%) rename esbuild.config.ts => apps/cron/esbuild.config.ts (87%) create mode 100644 apps/cron/jest.config.ts create mode 100644 apps/cron/package.json rename {background => apps/cron/src}/__tests__/healthCheck.spec.ts (100%) rename {background => apps/cron/src}/cron.ts (93%) rename {background => apps/cron/src}/healthCheck/app.ts (100%) rename {background => apps/cron/src}/healthCheck/routes.ts (100%) rename {background => apps/cron/src}/tasks/__tests__/countAllSpacesBlocksTask.spec.ts (100%) rename {background => apps/cron/src}/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts (97%) rename {background => apps/cron/src}/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts (97%) rename {background => apps/cron/src}/tasks/countAllSpacesBlocksTask.ts (81%) rename {background => apps/cron/src}/tasks/deleteArchivedPages/index.ts (100%) rename {background => apps/cron/src}/tasks/deleteArchivedPages/task.ts (90%) rename {background => apps/cron/src}/tasks/indexPendingCredentialsTask.ts (83%) rename {background => apps/cron/src}/tasks/processCollablandWebhookMessages/index.ts (100%) rename {background => apps/cron/src}/tasks/processCollablandWebhookMessages/task.ts (59%) rename {background => apps/cron/src}/tasks/processGithubWebhookMessages/index.ts (100%) rename {background => apps/cron/src}/tasks/processGithubWebhookMessages/task.ts (59%) rename {background => apps/cron/src}/tasks/processMailgunWebhookMessages/index.ts (100%) rename {background => apps/cron/src}/tasks/processMailgunWebhookMessages/task.ts (66%) rename {background => apps/cron/src}/tasks/processSynapsWebhookMessages/index.ts (100%) rename {background => apps/cron/src}/tasks/processSynapsWebhookMessages/task.ts (55%) rename {background => apps/cron/src}/tasks/refreshBountyApplications/task.ts (84%) rename {background => apps/cron/src}/tasks/refreshDocusignOAuthTask.ts (91%) rename {background => apps/cron/src}/tasks/sendDraftProposalNotificationTask.ts (93%) rename {background => apps/cron/src}/tasks/sendProposalEvaluationNotifications.ts (94%) rename {background => apps/cron/src}/tasks/sendPushNotificationsToSunyAppTask/index.ts (100%) create mode 100644 apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/initWebPush.ts rename {background => apps/cron/src}/tasks/sendPushNotificationsToSunyAppTask/task.ts (88%) rename {background => apps/cron/src}/tasks/storeOptimismProjectAttestations/index.ts (100%) rename {background => apps/cron/src}/tasks/storeOptimismProjectAttestations/task.ts (80%) rename {background => apps/cron/src}/tasks/syncOptimismReviews.ts (100%) rename {background => apps/cron/src}/tasks/syncSummonSpaceRoles/task.ts (89%) rename {background => apps/cron/src}/tasks/updateMixpanelProfilesTask.ts (78%) rename {background => apps/cron/src}/tasks/updateProposalStatus/index.ts (100%) rename {background => apps/cron/src}/tasks/updateProposalStatus/task.ts (95%) rename {background => apps/cron/src}/tasks/updateVotesStatus/index.ts (100%) rename {background => apps/cron/src}/tasks/updateVotesStatus/task.ts (91%) rename {background => apps/cron/src}/tasks/updateVotesStatus/updateVoteStatus.ts (88%) rename {background => apps/cron/src}/tasks/verifyTokenGateMemberships/index.ts (100%) rename {background => apps/cron/src}/tasks/verifyTokenGateMemberships/task.ts (84%) create mode 100644 apps/cron/tsconfig.json create mode 100644 apps/websockets/esbuild.config.ts create mode 100644 apps/websockets/package.json create mode 100644 apps/websockets/src/__tests__/healthCheck.spec.ts rename {background => apps/websockets/src}/__tests__/websockets.spec.ts (92%) rename {background/websockets => apps/websockets/src/app}/datadog.ts (100%) rename background/websockets/app.ts => apps/websockets/src/app/server.ts (89%) rename {background/websockets => apps/websockets/src/app}/verifyCustomOrigin.ts (93%) create mode 100644 apps/websockets/src/healthCheck/app.ts create mode 100644 apps/websockets/src/healthCheck/routes.ts rename {background => apps/websockets/src}/initWebsockets.ts (78%) create mode 100644 apps/websockets/tsconfig.json delete mode 100644 background/ceramicServer/package.json delete mode 100644 background/jest.config.ts create mode 100644 components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces.ts create mode 100644 config/colors.ts create mode 100644 lib/blockchain/config.ts delete mode 100644 lib/gnosis/index.ts rename lib/{users => profile}/getUser.ts (59%) create mode 100644 lib/telegram/interfaces.ts create mode 100644 lib/utils/emoji.ts delete mode 100644 marketing-site/README.md delete mode 100644 marketing-site/analytics.html delete mode 100644 models/User.ts delete mode 100644 models/index.ts diff --git a/.ebextensions/ceramic/00_env_vars.config b/.ebextensions/ceramic/00_env_vars.config index 920ec94926..88c7dc9b29 100644 --- a/.ebextensions/ceramic/00_env_vars.config +++ b/.ebextensions/ceramic/00_env_vars.config @@ -10,5 +10,5 @@ option_settings: EBSTALK_ENV_FILE: "ceramic.env" SERVICE_ENV: "prd" # this sets the value of datadog env tag SERVICE_NAME: "ceramic" - IMGNAME: "charmverse-web3-workspace" + IMGNAME: "ceramic" IMGTAG: "" diff --git a/.ebextensions/cron/00_env_vars.config b/.ebextensions/cron/00_env_vars.config index 4b50e70757..3d43706afa 100644 --- a/.ebextensions/cron/00_env_vars.config +++ b/.ebextensions/cron/00_env_vars.config @@ -10,5 +10,5 @@ option_settings: EBSTALK_ENV_FILE: "cron.env" SERVICE_ENV: "prd" SERVICE_NAME: "cron" - IMGNAME: "charmverse-web3-workspace" + IMGNAME: "cron" IMGTAG: "" diff --git a/.ebextensions/websockets/00_env_vars.config b/.ebextensions/websockets/00_env_vars.config index 77445a70ed..66b3bc0192 100644 --- a/.ebextensions/websockets/00_env_vars.config +++ b/.ebextensions/websockets/00_env_vars.config @@ -10,5 +10,5 @@ option_settings: EBSTALK_ENV_FILE: "websocket.env" SERVICE_ENV: "prd" # this sets the value of datadog env tag SERVICE_NAME: "websockets" - IMGNAME: "charmverse-web3-workspace" + IMGNAME: "websockets" IMGTAG: "" diff --git a/.eslintignore b/.eslintignore index a451cfded1..5daeb41efe 100644 --- a/.eslintignore +++ b/.eslintignore @@ -2,4 +2,4 @@ scripts/ dist/ .next/ -background/ceramicServer/generated/ +apps/ceramic/src/generated/ diff --git a/.eslintrc.json b/.eslintrc.json index b401bcced9..743d23e8be 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -76,7 +76,7 @@ "error", { "devDependencies": true, - "packageDir": ["./", "./@connect-shared", "./packages/charmeditor/", "./apps/farcaster/", "./apps/scoutgame/", "./apps/sunnyawards/", "./apps/waitlist/"] + "packageDir": ["./", "./@connect-shared", "./packages/charmeditor/", "./apps/farcaster/", "./apps/scoutgame/", "./apps/sunnyawards/", "./apps/waitlist/", "./apps/websockets/", "./apps/cron/", "./apps/ceramic/"] } ], "import/order": [ diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml index 45b63403ce..e51262da9b 100644 --- a/.github/actions/build/action.yml +++ b/.github/actions/build/action.yml @@ -25,7 +25,6 @@ runs: .next .env.test.local dist - background/ceramicServer/generated key: webapp-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('**/*.ts', '**/*.tsx', '**/*.gql', '**/*.scss', '!node_modules', '!.next', '!dist', '!apps') }} restore-keys: | webapp-${{ hashFiles('**/package-lock.json') }}- @@ -44,5 +43,4 @@ runs: .next .env.test.local dist - background/ceramicServer/generated key: webapp-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('**/*.ts', '**/*.tsx', '**/*.gql', '**/*.scss', '!node_modules', '!.next', '!dist', '!apps') }} diff --git a/.github/actions/deploy_staging/action.yml b/.github/actions/deploy_staging/action.yml new file mode 100644 index 0000000000..672da7fdb0 --- /dev/null +++ b/.github/actions/deploy_staging/action.yml @@ -0,0 +1,101 @@ +name: 'Deploy to staging' +description: 'Deploy to staging' + +inputs: + app_name: + description: The name of the app' + required: true + +runs: + using: 'composite' + steps: + - uses: actions/checkout@v4 + + - name: Inject slug/short variables + uses: rlespinasse/github-slug-action@v4.x + with: + short-length: 7 + + - name: Calculate Stage env var + shell: bash + run: | + full_stage_name="stg-${{ inputs.app_name }}-${{ github.event.number }}-${{ env.GITHUB_HEAD_REF_SLUG }}" + + # sanitize and trim string so that it can be used as a valid subdomain. Includes removing hyphens at the start and end of the name + stage_name=`echo "$full_stage_name" | sed -E -e 's/[^a-zA-Z0-9-]+//g' -e 's/(.{40}).*/\1/' -e 's/^-/0/' -e 's/-$/0/'` + + # export the stage name so that it can be used in other steps + echo "STAGE_NAME=$stage_name" >> $GITHUB_ENV + + # we need to bring back node_modules which includes tsconfig-paths which is used by CDK files + - name: Install dependencies + uses: ./.github/actions/install + + - name: Replace env_var with staging settings + shell: bash + run: | + ebextension_files=$(ls .ebextensions/*/00_env_vars.config) + ebstalk_apps_env_files=$(ls .ebstalk.apps.env/*) + + for conf_file in $ebextension_files $ebstalk_apps_env_files; do + sed -i 's/prd/stg/g' $conf_file + sed -i 's/production/staging/g' $conf_file + done + + # modifying cloudformation alarm to send alerts to test sns topic. + # leaving it in even if we're deleting the config before deploying + # Useful to avoid accidental triggering to system-status channel. + for conf_file in .ebextensions/*/06_cloudwatch_alarm.config; do + sed -i 's/Production-Alerts/lambda-test-debug/g' $conf_file + done + + rm .ebextensions/*/06_cloudwatch_alarm.config + + - name: Create a github deployment + uses: bobheadxi/deployments@v1 + id: deployment + with: + step: start + token: ${{ secrets.GITHUB_TOKEN }} + env: ${{ env.STAGE_NAME }} + ref: ${{ github.head_ref }} + override: true + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 + + - name: Set the docker compose env variables + uses: mikefarah/yq@master + with: + cmd: | + mv .ebextensions .ebextensions_tmp && mv .ebextensions_tmp/${{ inputs.app_name }} .ebextensions + yq -I 4 -i ' + with(.option_settings."aws:elasticbeanstalk:application:environment"; + .COMPOSE_PROJECT_NAME = "pr${{ github.event.number }}" | + .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") + ' .ebextensions/00_env_vars.config + + - name: Deploy to staging + shell: bash + id: cdk_deploy + run: | + cat files_to_zip.txt | zip --symlinks -r@ ${{env.STAGE_NAME}}.zip + npx aws-cdk deploy -c name=${{env.STAGE_NAME}} --method=direct --outputs-file cdk.out.json + env_url=$(jq --raw-output '.[$ENV.STAGE_NAME].DeploymentUrl' ./cdk.out.json) + echo "env_url=$env_url" >> $GITHUB_OUTPUT + + - name: update the github deployment status + uses: bobheadxi/deployments@v1 + if: always() + with: + env: ${{ steps.deployment.outputs.env }} + step: finish + override: false + token: ${{ secrets.GITHUB_TOKEN }} + status: ${{ job.status }} + deployment_id: ${{ steps.deployment.outputs.deployment_id }} + env_url: ${{ steps.cdk_deploy.outputs.env_url }} \ No newline at end of file diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index fa8f4fa650..0d518cdd33 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -1,4 +1,5 @@ name: 'Install dependencies' +description: '' inputs: core_pkg_version: @@ -7,6 +8,9 @@ inputs: commit_core_pkg_upgrade: description: 'Whether commit the update to core package back to branch' required: false + npm_install_args: + description: 'Example: -w app/websockets' + required: false use_github_core_branch: description: | Optional, core branch name to install from github. @@ -45,7 +49,7 @@ runs: shell: bash if: steps.restore_node_modules.outputs.cache-hit != 'true' # This is a temporary step while we figure out a way to ensure compatibility with lens protocol which currently needs ethers-v5 - run: npm ci --no-audit --no-fund --force + run: npm ci --no-audit --no-fund --force ${{ inputs.npm_install_args }} # If installing specific version of core via npmjs - name: Upgrade Core package to version ${{ inputs.core_pkg_version }} diff --git a/.github/actions/notify_error/action.yml b/.github/actions/notify_error/action.yml new file mode 100644 index 0000000000..e36e0ad8cc --- /dev/null +++ b/.github/actions/notify_error/action.yml @@ -0,0 +1,24 @@ +name: 'Notify Discord on error' +description: 'Notify Discord when a step fails' + +inputs: + app_name: + description: The name of the app' + required: true + +runs: + using: 'composite' + steps: + - name: If any of prev jobs failed notify discord + uses: sarisia/actions-status-discord@v1 + with: + webhook: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} + status: 'failure' + content: 'Hey <@&1027309276454207519>' + title: '${{ inputs.app_name }} deploy workflow failed' + description: | + Failed workflow URL: https://github.com/charmverse/app.charmverse.io/actions/runs/${{ github.run_id }} + color: '16515843' + url: 'https://github.com/charmverse/app.charmverse.io/actions/runs/${{ github.run_id }}' + username: GitHub Actions + avatar_url: 'https://github.githubassets.com/images/modules/logos_page/Octocat.png' diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml new file mode 100644 index 0000000000..c51a4b545c --- /dev/null +++ b/.github/workflows/deploy_cron.yml @@ -0,0 +1,290 @@ +name: cron CI + +on: + push: + branches: [main] + paths: + - '.cdk' + - 'docker-compose.yml' + - '.ebextensions/cron/**' + - '.ebstalk.apps.env/cron.env' + - '.github/actions/**' + - '.github/workflows/deploy_cron.yml' + - 'package.json' + - 'package-lock.json' + - 'apps/cron/**' + - '@connect-shared/**' + - 'abis/**' + - 'adapters/**' + - 'config/**' + - 'connectors/**' + - 'lib/**' + - 'hooks/**' + pull_request: + types: [labeled, opened, synchronize] + branches: ['**'] + paths: + - '.cdk' + - 'docker-compose.yml' + - '.ebextensions/cron/**' + - '.ebstalk.apps.env/cron.env' + - '.github/actions/**' + - '.github/workflows/deploy_cron.yml' + - 'package.json' + - 'package-lock.json' + - 'apps/cron/**' + - '@connect-shared/**' + - 'abis/**' + - 'adapters/**' + - 'config/**' + - 'connectors/**' + - 'lib/**' + - 'hooks/**' + workflow_dispatch: + inputs: + core_pkg_version: + description: 'Core pkg version to update to' + required: true + +concurrency: + group: ci-cron-${{ github.event_name }}-${{ github.ref }} + +jobs: + build: + name: Build apps + runs-on: ubuntu-latest + outputs: + head_commit_message: ${{ steps.setup_variables.outputs.commit_message }} + deploy_staging: ${{ steps.setup_variables.outputs.deploy_staging }} + skip_tests: ${{ steps.setup_variables.outputs.skip_tests }} + steps: + - name: Print Triggering event context payload + env: + workflow_event_context: ${{ toJSON(github.event) }} + run: | + echo "$workflow_event_context" + echo "Workflow and code ref: ${{github.ref}}" + + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup variables + id: setup_variables + # source https://github.com/orgs/community/discussions/28474 + run: | + echo "commit_message=$(git show -s --format=%s)" >> "$GITHUB_OUTPUT" + echo "deploy_staging=${{(github.event.action == 'labeled' && github.event.label.name == ':rocket: deploy-cron') || (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, ':rocket: deploy-cron'))}}" >> $GITHUB_OUTPUT + echo "skip_tests=${{ contains(env.commit_message, 'skip-tests') }}" >> $GITHUB_OUTPUT + + - name: Install dependencies + uses: ./.github/actions/install + with: + npm_install_args: -w apps/cron + core_pkg_version: ${{ inputs.core_pkg_version }} + commit_core_pkg_upgrade: true + + - name: Build app + uses: ./.github/actions/build_app + with: + app_name: cron + + test-cron: + name: Test apps + runs-on: ubuntu-latest + needs: build + if: ${{ github.event.action != 'labeled' && needs.build.outputs.skip_tests != 'true' }} + # Postgres setup copied from https://gist.github.com/2color/537f8ef13ecec80059abb007839a6878 + services: + postgres: + image: postgres + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + --hostname postgres + ports: + # Maps tcp port 5432 on service container to the host + - 5432:5432 + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Restore dependencies from cache + uses: ./.github/actions/install + + - name: Setup test database + run: npx dotenv -e .env.test.local -- npm run prisma:reset + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: cron + + - name: Typecheck cron app + run: npm run typecheck -w apps/cron + + - name: Run eslint on changed files + uses: tj-actions/eslint-changed-files@v25 + with: + skip_annotations: 'true' # do not annotate code in the PR + file_extensions: '**/*.{ts,tsx}' + + - name: Run tests + run: npm run test -w apps/cron + + upload-docker: + name: Upload Docker image + runs-on: ubuntu-latest + # run whether previous jobs were successful or skipped + if: | + github.ref == 'refs/heads/main' || needs.build.outputs.deploy_staging == 'true' + needs: build + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install dependencies + uses: ./.github/actions/install + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: cron + + - name: Update Dockerfile + run: | + rm Dockerfile && mv apps/cron/Dockerfile Dockerfile + + - name: Build and Push Docker image + id: docker_build_push + uses: ./.github/actions/build_docker_image + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: us-east-1 + with: + ecr_registry: cron + + upload-static-assets: + name: Upload assets in production + runs-on: ubuntu-latest + # run whether previous jobs were successful or skipped + if: github.ref == 'refs/heads/main' && !(failure() || cancelled()) + needs: build + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install dependencies + uses: ./.github/actions/install + + - name: Calculate Build ID + id: get_build_id + run: | + build_id=${{ hashFiles('package-lock.json', 'apps/**/*.[jt]s', 'lib/**/*.[jt]s') }} + echo "build_id=$build_id" >> $GITHUB_OUTPUT + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: cron + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 + + - name: Upload static assets to S3 + run: | + aws s3 sync apps/cron/.next/static/ s3://charm.cdn/webapp-assets/_next/static/ + + - name: Upload JS source maps to Datadog + env: + DATADOG_API_KEY: ${{ secrets.DATADOG_API_KEY }} + run: | + npm install -g @datadog/datadog-ci + datadog-ci sourcemaps upload apps/cron/.next/static \ + --service=cron \ + --release-version=${{ steps.get_build_id.outputs.build_id }} \ + --minified-path-prefix=https://cdn.charmverse.io/_next/static + + deploy-production: + name: Deploy to production + # run whether previous jobs were successful or skipped + if: github.ref == 'refs/heads/main' && !(failure() || cancelled()) + needs: [test-cron, upload-docker, upload-static-assets] + runs-on: ubuntu-latest + strategy: + matrix: + include: + - stack: prd-cron + ebextensions: cron + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Inject slug/short variables + uses: rlespinasse/github-slug-action@v4.x + with: + short-length: 7 + + # we need to bring back node_modules which includes tsconfig-paths which is used by CDK files + - name: Install dependencies + uses: ./.github/actions/install + + - name: Set the docker compose env variables + uses: mikefarah/yq@master + with: + cmd: | + mv .ebextensions .ebextensions_tmp && mv .ebextensions_tmp/${{ matrix.ebextensions }} .ebextensions + yq -I 4 -i ' + with(.option_settings."aws:elasticbeanstalk:application:environment"; + .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") + ' .ebextensions/00_env_vars.config + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 + + - name: Package and deploy + run: | + cat files_to_zip.txt | zip --symlinks -r@ ${{ matrix.stack }}.zip + npx aws-cdk deploy --method=direct -c name=${{ matrix.stack }} + + deploy-staging: + name: Deploy to staging + if: needs.build.outputs.deploy_staging == 'true' + runs-on: ubuntu-latest + # prevent staging deploys + cleanup running in parallel + concurrency: staging-${{ github.ref }} + needs: [build, upload-docker] + steps: + - uses: ./github/actions/deploy_staging + with: + app_name: cron + + discord-alert: + name: Notify Discord of failure + runs-on: ubuntu-latest + if: github.ref == 'refs/heads/main' && failure() + # pass in all steps so we can check if any failed + needs: [test-cron, upload-docker, upload-static-assets, upload-docker, deploy-production] + steps: + - name: Notify Discord + uses: ./.github/actions/notify_error + with: + app_name: cron diff --git a/.github/workflows/deploy_scoutgame.yml b/.github/workflows/deploy_scoutgame.yml index 17aca55e19..893f8bc013 100644 --- a/.github/workflows/deploy_scoutgame.yml +++ b/.github/workflows/deploy_scoutgame.yml @@ -20,7 +20,6 @@ on: - 'connectors/**' - 'lib/**' - 'hooks/**' - - 'models/**' pull_request: types: [labeled, opened, synchronize] branches: ['**'] @@ -41,7 +40,6 @@ on: - 'connectors/**' - 'lib/**' - 'hooks/**' - - 'models/**' workflow_dispatch: inputs: core_pkg_version: diff --git a/.github/workflows/deploy_waitlist.yml b/.github/workflows/deploy_waitlist.yml index 66e0935be6..dc439d327e 100644 --- a/.github/workflows/deploy_waitlist.yml +++ b/.github/workflows/deploy_waitlist.yml @@ -19,7 +19,6 @@ on: - 'connectors/**' - 'lib/**' - 'hooks/**' - - 'models/**' pull_request: types: [labeled, opened, synchronize] branches: ['**'] @@ -39,7 +38,6 @@ on: - 'connectors/**' - 'lib/**' - 'hooks/**' - - 'models/**' workflow_dispatch: inputs: core_pkg_version: diff --git a/__e2e__/utils/mocks.ts b/__e2e__/utils/mocks.ts index 47a24f06a8..c6fac7ab06 100644 --- a/__e2e__/utils/mocks.ts +++ b/__e2e__/utils/mocks.ts @@ -3,7 +3,7 @@ import { prisma } from '@charmverse/core/prisma-client'; import { Wallet } from '@ethersproject/wallet'; import type { Page as BrowserPage } from '@playwright/test'; import { baseUrl } from '@root/config/constants'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { v4 as uuid } from 'uuid'; import { STATIC_PAGES } from 'lib/features/constants'; diff --git a/__integration-tests__/permissions/00-create-root-page.spec.ts b/__integration-tests__/permissions/00-create-root-page.spec.ts index 4ce8337ebe..70117e8495 100644 --- a/__integration-tests__/permissions/00-create-root-page.spec.ts +++ b/__integration-tests__/permissions/00-create-root-page.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { generatePageToCreateStub } from 'testing/generateStubs'; diff --git a/__integration-tests__/permissions/01-create-child-page.spec.ts b/__integration-tests__/permissions/01-create-child-page.spec.ts index b7259cf1a5..4e03715ca0 100644 --- a/__integration-tests__/permissions/01-create-child-page.spec.ts +++ b/__integration-tests__/permissions/01-create-child-page.spec.ts @@ -2,7 +2,7 @@ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { PagePermission, Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/permissions/02-update-existing-permission.spec.ts b/__integration-tests__/permissions/02-update-existing-permission.spec.ts index f36cb59717..b5e0947bf5 100644 --- a/__integration-tests__/permissions/02-update-existing-permission.spec.ts +++ b/__integration-tests__/permissions/02-update-existing-permission.spec.ts @@ -2,7 +2,7 @@ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { PagePermissionAssignment, PagePermissionWithSource } from '@charmverse/core/permissions'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/permissions/03-delete-permission.spec.ts b/__integration-tests__/permissions/03-delete-permission.spec.ts index 4a180de187..d83f011996 100644 --- a/__integration-tests__/permissions/03-delete-permission.spec.ts +++ b/__integration-tests__/permissions/03-delete-permission.spec.ts @@ -2,7 +2,7 @@ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { generatePageToCreateStub } from 'testing/generateStubs'; diff --git a/__integration-tests__/permissions/04-add-page-permission.spec.ts b/__integration-tests__/permissions/04-add-page-permission.spec.ts index 3e24c7d66b..76ed6ec83e 100644 --- a/__integration-tests__/permissions/04-add-page-permission.spec.ts +++ b/__integration-tests__/permissions/04-add-page-permission.spec.ts @@ -7,7 +7,7 @@ import type { } from '@charmverse/core/permissions'; import type { Space } from '@charmverse/core/prisma'; import { testUtilsPages } from '@charmverse/core/test'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/permissions/05-reposition-to-root.spec.ts b/__integration-tests__/permissions/05-reposition-to-root.spec.ts index cbdd80f37b..78218d24e8 100644 --- a/__integration-tests__/permissions/05-reposition-to-root.spec.ts +++ b/__integration-tests__/permissions/05-reposition-to-root.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/permissions/06-reposition-upwards.spec.ts b/__integration-tests__/permissions/06-reposition-upwards.spec.ts index f4d36cd53a..ac2b72b29c 100644 --- a/__integration-tests__/permissions/06-reposition-upwards.spec.ts +++ b/__integration-tests__/permissions/06-reposition-upwards.spec.ts @@ -2,7 +2,7 @@ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { AssignedPagePermission, PagePermissionAssignment } from '@charmverse/core/permissions'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/permissions/08-reposition-different-tree.spec.ts b/__integration-tests__/permissions/08-reposition-different-tree.spec.ts index dacd552eb0..2df4a8a710 100644 --- a/__integration-tests__/permissions/08-reposition-different-tree.spec.ts +++ b/__integration-tests__/permissions/08-reposition-different-tree.spec.ts @@ -6,7 +6,7 @@ import type { PagePermissionWithSource } from '@charmverse/core/permissions'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/permissions/09-board-permission-updated.spec.ts b/__integration-tests__/permissions/09-board-permission-updated.spec.ts index 50cb76cac1..436044c05f 100644 --- a/__integration-tests__/permissions/09-board-permission-updated.spec.ts +++ b/__integration-tests__/permissions/09-board-permission-updated.spec.ts @@ -2,7 +2,7 @@ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { AssignedPagePermission, PagePermissionAssignment } from '@charmverse/core/permissions'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { getPage } from 'lib/pages/server'; diff --git a/__integration-tests__/server/pages/api/comments/[id]/index.spec.ts b/__integration-tests__/server/pages/api/comments/[id]/index.spec.ts index 2c8a2ea88c..483b276189 100644 --- a/__integration-tests__/server/pages/api/comments/[id]/index.spec.ts +++ b/__integration-tests__/server/pages/api/comments/[id]/index.spec.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { Space, User } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { baseUrl, loginUser } from 'testing/mockApiCall'; diff --git a/__integration-tests__/server/pages/api/credentials/templates.spec.ts b/__integration-tests__/server/pages/api/credentials/templates.spec.ts index 0e49841247..260135cf57 100644 --- a/__integration-tests__/server/pages/api/credentials/templates.spec.ts +++ b/__integration-tests__/server/pages/api/credentials/templates.spec.ts @@ -2,7 +2,7 @@ import type { CredentialTemplate, Space, User } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsCredentials, testUtilsUser } from '@charmverse/core/test'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import type { CreateCredentialTemplateInput, CredentialTemplateUpdateableFields } from 'lib/credentials/templates'; diff --git a/__integration-tests__/server/pages/api/members/[memberId]/values.spec.ts b/__integration-tests__/server/pages/api/members/[memberId]/values.spec.ts index c9c3386531..1b310b81e4 100644 --- a/__integration-tests__/server/pages/api/members/[memberId]/values.spec.ts +++ b/__integration-tests__/server/pages/api/members/[memberId]/values.spec.ts @@ -1,5 +1,5 @@ import type { MemberProperty, Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import type { PropertyValue } from 'lib/members/interfaces'; diff --git a/__integration-tests__/server/pages/api/pages/[id]/restrict-permissions.spec.ts b/__integration-tests__/server/pages/api/pages/[id]/restrict-permissions.spec.ts index a540dfc966..663b55837d 100644 --- a/__integration-tests__/server/pages/api/pages/[id]/restrict-permissions.spec.ts +++ b/__integration-tests__/server/pages/api/pages/[id]/restrict-permissions.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { baseUrl, loginUser } from 'testing/mockApiCall'; diff --git a/__integration-tests__/server/pages/api/permissions/forum/index.spec.ts b/__integration-tests__/server/pages/api/permissions/forum/index.spec.ts index 9a2638379a..890c13bca4 100644 --- a/__integration-tests__/server/pages/api/permissions/forum/index.spec.ts +++ b/__integration-tests__/server/pages/api/permissions/forum/index.spec.ts @@ -1,7 +1,7 @@ import type { PostCategoryPermissionAssignment, AssignedPostCategoryPermission } from '@charmverse/core/permissions'; import type { Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { upsertPostCategoryPermission } from 'lib/permissions/forum/upsertPostCategoryPermission'; diff --git a/__integration-tests__/server/pages/api/profile/profile.spec.ts b/__integration-tests__/server/pages/api/profile/profile.spec.ts index 1ac0d0c2cb..e05edb3354 100644 --- a/__integration-tests__/server/pages/api/profile/profile.spec.ts +++ b/__integration-tests__/server/pages/api/profile/profile.spec.ts @@ -1,6 +1,6 @@ import type { Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { v4 } from 'uuid'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/index.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/index.spec.ts index 6ec61e2bd6..6c9e2c2e70 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/index.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/index.spec.ts @@ -1,6 +1,6 @@ import type { Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { v4 } from 'uuid'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/members/properties/index.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/members/properties/index.spec.ts index fb05a573cd..0f15e3f0cd 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/members/properties/index.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/members/properties/index.spec.ts @@ -1,5 +1,5 @@ import type { MemberProperty, Role, Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { createMemberPropertyPermission } from 'lib/members/createMemberPropertyPermission'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/members/properties/permissions.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/members/properties/permissions.spec.ts index 537dc4ff47..0e3bd2dbb7 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/members/properties/permissions.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/members/properties/permissions.spec.ts @@ -1,5 +1,5 @@ import type { MemberProperty, Role, Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { createMemberPropertyPermission } from 'lib/members/createMemberPropertyPermission'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/set-default-page-permissions.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/set-default-page-permissions.spec.ts index 8494e223aa..424f065418 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/set-default-page-permissions.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/set-default-page-permissions.spec.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { Space, User } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { updateSpacePermissionConfigurationMode } from 'lib/permissions/meta'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/set-default-post-category.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/set-default-post-category.spec.ts index 804454f4ef..b57a762daa 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/set-default-post-category.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/set-default-post-category.spec.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { baseUrl, loginUser } from 'testing/mockApiCall'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/set-public-bounty-board.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/set-public-bounty-board.spec.ts index 0f900298f3..fee37848c2 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/set-public-bounty-board.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/set-public-bounty-board.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { Space, User } from '@charmverse/core/prisma'; import { testUtilsUser } from '@charmverse/core/test'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { type PublicRewardToggle } from 'pages/api/spaces/[id]/set-public-bounty-board'; diff --git a/__integration-tests__/server/pages/api/spaces/[id]/snapshot.spec.ts b/__integration-tests__/server/pages/api/spaces/[id]/snapshot.spec.ts index b5442df775..cc514b1673 100644 --- a/__integration-tests__/server/pages/api/spaces/[id]/snapshot.spec.ts +++ b/__integration-tests__/server/pages/api/spaces/[id]/snapshot.spec.ts @@ -1,5 +1,5 @@ import type { Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { baseUrl, loginUser } from 'testing/mockApiCall'; diff --git a/__integration-tests__/server/pages/api/threads/[id]/resolve.spec.ts b/__integration-tests__/server/pages/api/threads/[id]/resolve.spec.ts index d38c27871b..ab4783a8e6 100644 --- a/__integration-tests__/server/pages/api/threads/[id]/resolve.spec.ts +++ b/__integration-tests__/server/pages/api/threads/[id]/resolve.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { baseUrl, loginUser } from 'testing/mockApiCall'; diff --git a/__integration-tests__/server/pages/api/threads/index.spec.ts b/__integration-tests__/server/pages/api/threads/index.spec.ts index 313a149c2c..eecb400c48 100644 --- a/__integration-tests__/server/pages/api/threads/index.spec.ts +++ b/__integration-tests__/server/pages/api/threads/index.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { Space, Thread, User } from '@charmverse/core/prisma'; import { testUtilsPages } from '@charmverse/core/test'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import type { ThreadCreatePayload, ThreadWithComments } from 'lib/threads'; diff --git a/__integration-tests__/server/pages/api/votes/[id]/index.spec.ts b/__integration-tests__/server/pages/api/votes/[id]/index.spec.ts index eb7c8b4456..cf8b7f0958 100644 --- a/__integration-tests__/server/pages/api/votes/[id]/index.spec.ts +++ b/__integration-tests__/server/pages/api/votes/[id]/index.spec.ts @@ -1,5 +1,5 @@ import type { Page, Space, Vote } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { v4 } from 'uuid'; diff --git a/__integration-tests__/server/pages/api/votes/index.spec.ts b/__integration-tests__/server/pages/api/votes/index.spec.ts index 189569779c..eac1b3c767 100644 --- a/__integration-tests__/server/pages/api/votes/index.spec.ts +++ b/__integration-tests__/server/pages/api/votes/index.spec.ts @@ -1,5 +1,5 @@ import type { Page, Space } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import request from 'supertest'; import { v4 } from 'uuid'; diff --git a/background/ceramicServer/README.md b/apps/ceramic/README.md similarity index 100% rename from background/ceramicServer/README.md rename to apps/ceramic/README.md diff --git a/esbuild.ceramic.ts b/apps/ceramic/esbuild.config.ts similarity index 93% rename from esbuild.ceramic.ts rename to apps/ceramic/esbuild.config.ts index df373e4acb..9ea5ba536c 100644 --- a/esbuild.ceramic.ts +++ b/apps/ceramic/esbuild.config.ts @@ -7,7 +7,7 @@ import * as esbuild from 'esbuild'; esbuild .build({ bundle: true, - entryPoints: ['./background/ceramicServer/ceramic-client.ts'], + entryPoints: ['./src/ceramic-client.ts'], // metafile: true, // uncomment to analyize build file contents outdir: './dist', platform: 'node', diff --git a/apps/ceramic/package.json b/apps/ceramic/package.json new file mode 100644 index 0000000000..269538c583 --- /dev/null +++ b/apps/ceramic/package.json @@ -0,0 +1,18 @@ +{ + "name": "ceramic", + "scripts": { + "build": "npx tsx esbuild.config.ts", + "start": "CERAMIC_ENABLE_EXPERIMENTAL_COMPOSE_DB='true' npx ceramic daemon", + "ceramic:graphql": "npx dotenv -e .env.local -- tsx scriptable/ceramic-client.ts", + "ceramic:graphql:stg": "npx dotenv -e .env.staging -- tsx src/ceramic-client.ts" + }, + "dependencies": { + "@ceramicnetwork/http-client": "^5.16.0", + "@ceramicnetwork/streamid": "^3.4.1", + "@composedb/devtools-node": "^0.7.1", + "dids": "^4.0.4", + "key-did-provider-ed25519": "^3.0.2", + "key-did-resolver": "^3.0.0", + "ora": "^8.1.0" + } +} diff --git a/background/ceramicServer/authenticate.ts b/apps/ceramic/src/authenticate.ts similarity index 100% rename from background/ceramicServer/authenticate.ts rename to apps/ceramic/src/authenticate.ts diff --git a/background/ceramicServer/ceramic-client.ts b/apps/ceramic/src/ceramic-client.ts similarity index 97% rename from background/ceramicServer/ceramic-client.ts rename to apps/ceramic/src/ceramic-client.ts index e691dc663d..dc8f58a9dd 100644 --- a/background/ceramicServer/ceramic-client.ts +++ b/apps/ceramic/src/ceramic-client.ts @@ -16,7 +16,7 @@ async function bootstrapGqlServer() { graphiql: true, path: compositeDefinitionFile, port: 5001, - did: ceramic.did + did: ceramic.did! }); } diff --git a/background/ceramicServer/credentials.gql b/apps/ceramic/src/credentials.gql similarity index 100% rename from background/ceramicServer/credentials.gql rename to apps/ceramic/src/credentials.gql diff --git a/background/ceramicServer/deploy-composites.ts b/apps/ceramic/src/deploy-composites.ts similarity index 96% rename from background/ceramicServer/deploy-composites.ts rename to apps/ceramic/src/deploy-composites.ts index 14f8d79928..6d34db4d2c 100644 --- a/background/ceramicServer/deploy-composites.ts +++ b/apps/ceramic/src/deploy-composites.ts @@ -5,7 +5,7 @@ import ora from 'ora'; import { getCeramicClient } from './authenticate'; -const folder = 'background/ceramicServer'; +const folder = 'apps/ceramic/src'; function getCompositesFolder(filename: string) { return `${folder}/generated/${filename}`; diff --git a/background/ceramicServer/generated/composite-definition.json b/apps/ceramic/src/generated/composite-definition.json similarity index 100% rename from background/ceramicServer/generated/composite-definition.json rename to apps/ceramic/src/generated/composite-definition.json diff --git a/apps/comingsoon/tsconfig.json b/apps/comingsoon/tsconfig.json index beb9b5f110..166d74711f 100644 --- a/apps/comingsoon/tsconfig.json +++ b/apps/comingsoon/tsconfig.json @@ -34,7 +34,6 @@ "@root/connectors/*": ["../../connectors/*"], "@root/lib/*": ["../../lib/*"], "@root/hooks/*": ["../../hooks/*"], - "@root/models": ["../../models"], "@charmverse/core/prisma": ["../../node_modules/@charmverse/core/dist/cjs/prisma"], "@charmverse/core/prisma-client": ["../../node_modules/@charmverse/core/dist/cjs/prisma-client"], "@charmverse/core/shared": ["../../node_modules/@charmverse/core/dist/cjs/shared"], diff --git a/esbuild.config.ts b/apps/cron/esbuild.config.ts similarity index 87% rename from esbuild.config.ts rename to apps/cron/esbuild.config.ts index 707df96455..516d33753d 100644 --- a/esbuild.config.ts +++ b/apps/cron/esbuild.config.ts @@ -5,14 +5,14 @@ import * as esbuild from 'esbuild'; esbuild .build({ bundle: true, - entryPoints: ['./background/initWebsockets.ts', './background/cron.ts'], + entryPoints: ['./src/cron.ts'], // metafile: true, // uncomment to analyize build file contents outdir: './dist', tsconfig: './tsconfig.json', packages: 'external', platform: 'node', - sourcemap: true, - target: 'node18' + sourcemap: true + // target: 'node18' // logLevel: 'verbose' // uncomment to see more build details like imported file info }) .catch(() => process.exit(1)) diff --git a/apps/cron/jest.config.ts b/apps/cron/jest.config.ts new file mode 100644 index 0000000000..1fc7a31c57 --- /dev/null +++ b/apps/cron/jest.config.ts @@ -0,0 +1,20 @@ +import { pathsToModuleNameMapper } from 'ts-jest'; + +import makeConfig from '../../jest.config.nodejs'; + +import { compilerOptions } from './tsconfig.json'; + +export default { + // ...makeConfig(__dirname), + preset: 'ts-jest', + extensionsToTreatAsEsm: ['.ts'], + transform: { + '^.+\\.(ts|tsx)?$': 'ts-jest' + }, + + roots: [''], + // baseUrl: '.', + modulePaths: [''], // <-- This will be set to 'baseUrl' value + moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '/' }) // <-- This will be set to 'paths' value + // testMatch: ['/src/**/*.spec.ts'] +}; diff --git a/apps/cron/package.json b/apps/cron/package.json new file mode 100644 index 0000000000..b2dd3b59fb --- /dev/null +++ b/apps/cron/package.json @@ -0,0 +1,18 @@ +{ + "name": "cron", + "version": "1.0.0", + "description": "", + "scripts": { + "build": "npx tsx esbuild.config.ts", + "start": "tsx watch src/cron.ts", + "start:prod": "node ./dist/cron.js", + "test": "npx jest", + "typecheck": "../../node_modules/typescript/bin/tsc --project ./tsconfig.json --noEmit" + }, + "dependencies": { + "node-cron": "^3.0.3" + }, + "devDependencies": { + "@types/node-cron": "^3.0.11" + } +} diff --git a/background/__tests__/healthCheck.spec.ts b/apps/cron/src/__tests__/healthCheck.spec.ts similarity index 100% rename from background/__tests__/healthCheck.spec.ts rename to apps/cron/src/__tests__/healthCheck.spec.ts diff --git a/background/cron.ts b/apps/cron/src/cron.ts similarity index 93% rename from background/cron.ts rename to apps/cron/src/cron.ts index 14dd5da8c3..f2d951d64c 100644 --- a/background/cron.ts +++ b/apps/cron/src/cron.ts @@ -1,11 +1,9 @@ import { log } from '@charmverse/core/log'; +import { createOffchainCredentialsForExternalProjects } from '@root/lib/credentials/createOffchainCredentialsForExternalProjects'; +import { relay } from '@root/lib/websockets/relay'; import cron from 'node-cron'; import { Server } from 'socket.io'; -import { updateMixpanelProfilesTask } from 'background/tasks/updateMixpanelProfilesTask'; -import { createOffchainCredentialsForExternalProjects } from 'lib/credentials/createOffchainCredentialsForExternalProjects'; -import { relay } from 'lib/websockets/relay'; - import app from './healthCheck/app'; import { countAllSpacesBlocksTask } from './tasks/countAllSpacesBlocksTask'; import { task as archiveTask } from './tasks/deleteArchivedPages'; @@ -21,6 +19,7 @@ import { sendProposalEvaluationNotifications } from './tasks/sendProposalEvaluat import { task as storeOptimismProjectAttestations } from './tasks/storeOptimismProjectAttestations'; import { syncOptimismReviewsTask } from './tasks/syncOptimismReviews'; import { syncSummonSpacesRoles } from './tasks/syncSummonSpaceRoles/task'; +import { updateMixpanelProfilesTask } from './tasks/updateMixpanelProfilesTask'; import { task as proposalTask } from './tasks/updateProposalStatus'; import { task as voteTask } from './tasks/updateVotesStatus'; import { task as verifyTokenGateMembershipsTask } from './tasks/verifyTokenGateMemberships'; diff --git a/background/healthCheck/app.ts b/apps/cron/src/healthCheck/app.ts similarity index 100% rename from background/healthCheck/app.ts rename to apps/cron/src/healthCheck/app.ts diff --git a/background/healthCheck/routes.ts b/apps/cron/src/healthCheck/routes.ts similarity index 100% rename from background/healthCheck/routes.ts rename to apps/cron/src/healthCheck/routes.ts diff --git a/background/tasks/__tests__/countAllSpacesBlocksTask.spec.ts b/apps/cron/src/tasks/__tests__/countAllSpacesBlocksTask.spec.ts similarity index 100% rename from background/tasks/__tests__/countAllSpacesBlocksTask.spec.ts rename to apps/cron/src/tasks/__tests__/countAllSpacesBlocksTask.spec.ts diff --git a/background/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts b/apps/cron/src/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts similarity index 97% rename from background/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts rename to apps/cron/src/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts index a578202d08..b86111383e 100644 --- a/background/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts +++ b/apps/cron/src/tasks/__tests__/sendDraftProposalNotificationTask.spec.ts @@ -1,8 +1,7 @@ import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsProposals, testUtilsUser } from '@charmverse/core/test'; - -import { generateUserAndSpace } from 'testing/setupDatabase'; -import { generateProposalWorkflow } from 'testing/utils/proposals'; +import { generateUserAndSpace } from '@root/testing/setupDatabase'; +import { generateProposalWorkflow } from '@root/testing/utils/proposals'; import { sendDraftProposalNotificationTask } from '../sendDraftProposalNotificationTask'; diff --git a/background/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts b/apps/cron/src/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts similarity index 97% rename from background/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts rename to apps/cron/src/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts index 2ab2c4bb7a..f60e4e9347 100644 --- a/background/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts +++ b/apps/cron/src/tasks/__tests__/sendProposalEvaluationNotifications.spec.ts @@ -1,8 +1,6 @@ -import type { ProposalEvaluationTestInput } from '@charmverse/core/dist/cjs/lib/testing/proposals'; import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsProposals } from '@charmverse/core/test'; - -import { generateRole, generateSpaceUser, generateUserAndSpace } from 'testing/setupDatabase'; +import { generateRole, generateSpaceUser, generateUserAndSpace } from '@root/testing/setupDatabase'; import { sendProposalEvaluationNotifications } from '../sendProposalEvaluationNotifications'; @@ -15,7 +13,7 @@ describe('sendProposalEvaluationNotifications', () => { const proposalReviewer = await generateSpaceUser({ spaceId: space.id }); - const evaluationInputs: ProposalEvaluationTestInput[] = [ + const evaluationInputs: testUtilsProposals.GenerateProposalInput['evaluationInputs'] = [ { evaluationType: 'feedback', permissions: [], @@ -27,7 +25,7 @@ describe('sendProposalEvaluationNotifications', () => { ], dueDate: new Date(Date.now() + 20 * 60 * 60 * 1000) } - ]; + ] as const; const draftProposal = await testUtilsProposals.generateProposal({ authors: [proposalAuthor.id], @@ -169,7 +167,7 @@ describe('sendProposalEvaluationNotifications', () => { createdBy: adminUser.id }); - const evaluationInputs: ProposalEvaluationTestInput[] = [ + const evaluationInputs: testUtilsProposals.GenerateProposalInput['evaluationInputs'] = [ { evaluationType: 'feedback', permissions: [], diff --git a/background/tasks/countAllSpacesBlocksTask.ts b/apps/cron/src/tasks/countAllSpacesBlocksTask.ts similarity index 81% rename from background/tasks/countAllSpacesBlocksTask.ts rename to apps/cron/src/tasks/countAllSpacesBlocksTask.ts index 022022dbec..911e6a6a7c 100644 --- a/background/tasks/countAllSpacesBlocksTask.ts +++ b/apps/cron/src/tasks/countAllSpacesBlocksTask.ts @@ -1,7 +1,6 @@ import { prisma } from '@charmverse/core/prisma-client'; - -import { countSpaceBlocksAndSave } from 'lib/spaces/countSpaceBlocks/countAllSpaceBlocks'; -import { deleteArchivalBlockCounts } from 'lib/spaces/deleteArchivalBlockCounts'; +import { countSpaceBlocksAndSave } from '@root/lib/spaces/countSpaceBlocks/countAllSpaceBlocks'; +import { deleteArchivalBlockCounts } from '@root/lib/spaces/deleteArchivalBlockCounts'; const perBatch = 1000; export async function countAllSpacesBlocks({ offset = 0 }: { offset?: number } = {}): Promise { diff --git a/background/tasks/deleteArchivedPages/index.ts b/apps/cron/src/tasks/deleteArchivedPages/index.ts similarity index 100% rename from background/tasks/deleteArchivedPages/index.ts rename to apps/cron/src/tasks/deleteArchivedPages/index.ts diff --git a/background/tasks/deleteArchivedPages/task.ts b/apps/cron/src/tasks/deleteArchivedPages/task.ts similarity index 90% rename from background/tasks/deleteArchivedPages/task.ts rename to apps/cron/src/tasks/deleteArchivedPages/task.ts index 9b805aba14..f970727237 100644 --- a/background/tasks/deleteArchivedPages/task.ts +++ b/apps/cron/src/tasks/deleteArchivedPages/task.ts @@ -1,7 +1,6 @@ import { log } from '@charmverse/core/log'; - -import { count } from 'lib/metrics'; -import { deleteArchivedPages } from 'lib/pages/server/deleteArchivedPages'; +import { count } from '@root/lib/metrics'; +import { deleteArchivedPages } from '@root/lib/pages/server/deleteArchivedPages'; const MAX_ARCHIVE_DAYS = process.env.MAX_ARCHIVE_DAYS ? parseInt(process.env.MAX_ARCHIVE_DAYS) : 30; diff --git a/background/tasks/indexPendingCredentialsTask.ts b/apps/cron/src/tasks/indexPendingCredentialsTask.ts similarity index 83% rename from background/tasks/indexPendingCredentialsTask.ts rename to apps/cron/src/tasks/indexPendingCredentialsTask.ts index b2bfaf247e..82adf6025d 100644 --- a/background/tasks/indexPendingCredentialsTask.ts +++ b/apps/cron/src/tasks/indexPendingCredentialsTask.ts @@ -1,9 +1,8 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; - -import type { EasSchemaChain } from 'lib/credentials/connectors'; -import { indexGnosisSafeCredentialTransaction } from 'lib/credentials/indexGnosisSafeCredentialTransaction'; -import { count } from 'lib/metrics'; +import type { EasSchemaChain } from '@root/lib/credentials/connectors'; +import { indexGnosisSafeCredentialTransaction } from '@root/lib/credentials/indexGnosisSafeCredentialTransaction'; +import { count } from '@root/lib/metrics'; export async function indexPendingCredentialsTask() { log.debug('Running Credential indexing cron job'); diff --git a/background/tasks/processCollablandWebhookMessages/index.ts b/apps/cron/src/tasks/processCollablandWebhookMessages/index.ts similarity index 100% rename from background/tasks/processCollablandWebhookMessages/index.ts rename to apps/cron/src/tasks/processCollablandWebhookMessages/index.ts diff --git a/background/tasks/processCollablandWebhookMessages/task.ts b/apps/cron/src/tasks/processCollablandWebhookMessages/task.ts similarity index 59% rename from background/tasks/processCollablandWebhookMessages/task.ts rename to apps/cron/src/tasks/processCollablandWebhookMessages/task.ts index 9533f55a98..92bf6dfb98 100644 --- a/background/tasks/processCollablandWebhookMessages/task.ts +++ b/apps/cron/src/tasks/processCollablandWebhookMessages/task.ts @@ -1,8 +1,7 @@ import { log } from '@charmverse/core/log'; - -import { processMessages } from 'lib/aws/webhookSqs'; -import { SQS_WEBHOOK_COLLABLAND_QUEUE_NAME } from 'lib/collabland/config'; -import { processWebhookMessage } from 'lib/collabland/webhook/processWebhookMessage'; +import { processMessages } from '@root/lib/aws/webhookSqs'; +import { SQS_WEBHOOK_COLLABLAND_QUEUE_NAME } from '@root/lib/collabland/config'; +import { processWebhookMessage } from '@root/lib/collabland/webhook/processWebhookMessage'; log.info('Collabland Queue url:', SQS_WEBHOOK_COLLABLAND_QUEUE_NAME); const queueUrl = SQS_WEBHOOK_COLLABLAND_QUEUE_NAME || ''; diff --git a/background/tasks/processGithubWebhookMessages/index.ts b/apps/cron/src/tasks/processGithubWebhookMessages/index.ts similarity index 100% rename from background/tasks/processGithubWebhookMessages/index.ts rename to apps/cron/src/tasks/processGithubWebhookMessages/index.ts diff --git a/background/tasks/processGithubWebhookMessages/task.ts b/apps/cron/src/tasks/processGithubWebhookMessages/task.ts similarity index 59% rename from background/tasks/processGithubWebhookMessages/task.ts rename to apps/cron/src/tasks/processGithubWebhookMessages/task.ts index fcf4005f35..486e4b6fa3 100644 --- a/background/tasks/processGithubWebhookMessages/task.ts +++ b/apps/cron/src/tasks/processGithubWebhookMessages/task.ts @@ -1,8 +1,7 @@ import { log } from '@charmverse/core/log'; - -import { processMessages } from 'lib/aws/webhookSqs'; -import { SQS_WEBHOOK_GITHUB_QUEUE_NAME } from 'lib/github/constants'; -import { processWebhookMessage } from 'lib/github/webhook/processWebhookMessage'; +import { processMessages } from '@root/lib/aws/webhookSqs'; +import { SQS_WEBHOOK_GITHUB_QUEUE_NAME } from '@root/lib/github/constants'; +import { processWebhookMessage } from '@root/lib/github/webhook/processWebhookMessage'; log.info('Github Queue url:', SQS_WEBHOOK_GITHUB_QUEUE_NAME); const queueUrl = SQS_WEBHOOK_GITHUB_QUEUE_NAME || ''; diff --git a/background/tasks/processMailgunWebhookMessages/index.ts b/apps/cron/src/tasks/processMailgunWebhookMessages/index.ts similarity index 100% rename from background/tasks/processMailgunWebhookMessages/index.ts rename to apps/cron/src/tasks/processMailgunWebhookMessages/index.ts diff --git a/background/tasks/processMailgunWebhookMessages/task.ts b/apps/cron/src/tasks/processMailgunWebhookMessages/task.ts similarity index 66% rename from background/tasks/processMailgunWebhookMessages/task.ts rename to apps/cron/src/tasks/processMailgunWebhookMessages/task.ts index 11a27711e7..7eec24b258 100644 --- a/background/tasks/processMailgunWebhookMessages/task.ts +++ b/apps/cron/src/tasks/processMailgunWebhookMessages/task.ts @@ -1,8 +1,7 @@ import { log } from '@charmverse/core/log'; - -import { processMessages } from 'lib/aws/webhookSqs'; -import { SQS_WEBHOOK_MAILGUN_QUEUE_NAME } from 'lib/mailer/mailgunClient'; -import { processWebhookMessage } from 'lib/mailer/webhook/processWebhookMessage'; +import { processMessages } from '@root/lib/aws/webhookSqs'; +import { SQS_WEBHOOK_MAILGUN_QUEUE_NAME } from '@root/lib/mailer/mailgunClient'; +import { processWebhookMessage } from '@root/lib/mailer/webhook/processWebhookMessage'; log.info('Mailgun Queue url:', SQS_WEBHOOK_MAILGUN_QUEUE_NAME); const queueUrl = SQS_WEBHOOK_MAILGUN_QUEUE_NAME || ''; diff --git a/background/tasks/processSynapsWebhookMessages/index.ts b/apps/cron/src/tasks/processSynapsWebhookMessages/index.ts similarity index 100% rename from background/tasks/processSynapsWebhookMessages/index.ts rename to apps/cron/src/tasks/processSynapsWebhookMessages/index.ts diff --git a/background/tasks/processSynapsWebhookMessages/task.ts b/apps/cron/src/tasks/processSynapsWebhookMessages/task.ts similarity index 55% rename from background/tasks/processSynapsWebhookMessages/task.ts rename to apps/cron/src/tasks/processSynapsWebhookMessages/task.ts index a772a86aad..272972e0d0 100644 --- a/background/tasks/processSynapsWebhookMessages/task.ts +++ b/apps/cron/src/tasks/processSynapsWebhookMessages/task.ts @@ -1,8 +1,7 @@ import { log } from '@charmverse/core/log'; - -import { processMessages } from 'lib/aws/webhookSqs'; -import { SQS_WEBHOOK_SYNAPS_QUEUE_NAME } from 'lib/kyc/config'; -import { processWebhookMessage } from 'lib/kyc/synaps/webhook/processWebhookMessage'; +import { processMessages } from '@root/lib/aws/webhookSqs'; +import { SQS_WEBHOOK_SYNAPS_QUEUE_NAME } from '@root/lib/kyc/config'; +import { processWebhookMessage } from '@root/lib/kyc/synaps/webhook/processWebhookMessage'; const queueUrl = SQS_WEBHOOK_SYNAPS_QUEUE_NAME || ''; diff --git a/background/tasks/refreshBountyApplications/task.ts b/apps/cron/src/tasks/refreshBountyApplications/task.ts similarity index 84% rename from background/tasks/refreshBountyApplications/task.ts rename to apps/cron/src/tasks/refreshBountyApplications/task.ts index 1f0152cb0a..266e96506f 100644 --- a/background/tasks/refreshBountyApplications/task.ts +++ b/apps/cron/src/tasks/refreshBountyApplications/task.ts @@ -1,7 +1,6 @@ import { log } from '@charmverse/core/log'; - -import { count } from 'lib/metrics'; -import { refreshUnpaidApplications } from 'lib/rewards/refreshUnpaidApplications'; +import { count } from '@root/lib/metrics'; +import { refreshUnpaidApplications } from '@root/lib/rewards/refreshUnpaidApplications'; export async function refreshBountyApplications() { log.debug('Running refresh unpaid applications statuses cron job'); diff --git a/background/tasks/refreshDocusignOAuthTask.ts b/apps/cron/src/tasks/refreshDocusignOAuthTask.ts similarity index 91% rename from background/tasks/refreshDocusignOAuthTask.ts rename to apps/cron/src/tasks/refreshDocusignOAuthTask.ts index 90aed7fcc1..3c914d9278 100644 --- a/background/tasks/refreshDocusignOAuthTask.ts +++ b/apps/cron/src/tasks/refreshDocusignOAuthTask.ts @@ -1,7 +1,6 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; - -import { refreshDocusignAccessToken } from 'lib/docusign/authentication'; +import { refreshDocusignAccessToken } from '@root/lib/docusign/authentication'; export async function refreshDocusignOAuthTask() { log.debug('Running Docusign credential refresh cron job'); diff --git a/background/tasks/sendDraftProposalNotificationTask.ts b/apps/cron/src/tasks/sendDraftProposalNotificationTask.ts similarity index 93% rename from background/tasks/sendDraftProposalNotificationTask.ts rename to apps/cron/src/tasks/sendDraftProposalNotificationTask.ts index 1f3fc222a6..a23fb766d2 100644 --- a/background/tasks/sendDraftProposalNotificationTask.ts +++ b/apps/cron/src/tasks/sendDraftProposalNotificationTask.ts @@ -1,10 +1,9 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; - -import { count } from 'lib/metrics'; -import { sendNotificationEmail } from 'lib/notifications/mailer/sendNotificationEmail'; -import { saveProposalNotification } from 'lib/notifications/saveNotification'; -import { isTruthy } from 'lib/utils/types'; +import { count } from '@root/lib/metrics'; +import { sendNotificationEmail } from '@root/lib/notifications/mailer/sendNotificationEmail'; +import { saveProposalNotification } from '@root/lib/notifications/saveNotification'; +import { isTruthy } from '@root/lib/utils/types'; export async function sendDraftProposalNotificationTask() { const draftProposals = await prisma.proposal.findMany({ diff --git a/background/tasks/sendProposalEvaluationNotifications.ts b/apps/cron/src/tasks/sendProposalEvaluationNotifications.ts similarity index 94% rename from background/tasks/sendProposalEvaluationNotifications.ts rename to apps/cron/src/tasks/sendProposalEvaluationNotifications.ts index c26b2d3734..c207b9ade8 100644 --- a/background/tasks/sendProposalEvaluationNotifications.ts +++ b/apps/cron/src/tasks/sendProposalEvaluationNotifications.ts @@ -1,11 +1,10 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; import { getCurrentEvaluation } from '@charmverse/core/proposals'; - -import { count } from 'lib/metrics'; -import { sendNotificationEmail } from 'lib/notifications/mailer/sendNotificationEmail'; -import { saveProposalNotification } from 'lib/notifications/saveNotification'; -import { isTruthy } from 'lib/utils/types'; +import { count } from '@root/lib/metrics'; +import { sendNotificationEmail } from '@root/lib/notifications/mailer/sendNotificationEmail'; +import { saveProposalNotification } from '@root/lib/notifications/saveNotification'; +import { isTruthy } from '@root/lib/utils/types'; export async function sendProposalEvaluationNotifications(spaceId?: string) { const proposals = await prisma.proposal.findMany({ diff --git a/background/tasks/sendPushNotificationsToSunyAppTask/index.ts b/apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/index.ts similarity index 100% rename from background/tasks/sendPushNotificationsToSunyAppTask/index.ts rename to apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/index.ts diff --git a/apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/initWebPush.ts b/apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/initWebPush.ts new file mode 100644 index 0000000000..672de02105 --- /dev/null +++ b/apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/initWebPush.ts @@ -0,0 +1,9 @@ +import { InvalidInputError } from '@charmverse/core/errors'; +import webPush from 'web-push'; + +export function initWebPush() { + if (!process.env.VAPID_PUBLIC_KEY || !process.env.VAPID_PRIVATE_KEY) { + throw new InvalidInputError('VAPID keys are not set'); + } + webPush.setVapidDetails('https://scoutgame.xyz', process.env.VAPID_PUBLIC_KEY, process.env.VAPID_PRIVATE_KEY); +} diff --git a/background/tasks/sendPushNotificationsToSunyAppTask/task.ts b/apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/task.ts similarity index 88% rename from background/tasks/sendPushNotificationsToSunyAppTask/task.ts rename to apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/task.ts index 10a9c2bc30..bd851186d4 100644 --- a/background/tasks/sendPushNotificationsToSunyAppTask/task.ts +++ b/apps/cron/src/tasks/sendPushNotificationsToSunyAppTask/task.ts @@ -1,9 +1,9 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; -import { initWebPush } from 'apps/scoutgame/lib/pwa/initWebPush'; +import { count } from '@root/lib/metrics'; import webpush from 'web-push'; -import { count } from 'lib/metrics'; +import { initWebPush } from './initWebPush'; initWebPush(); diff --git a/background/tasks/storeOptimismProjectAttestations/index.ts b/apps/cron/src/tasks/storeOptimismProjectAttestations/index.ts similarity index 100% rename from background/tasks/storeOptimismProjectAttestations/index.ts rename to apps/cron/src/tasks/storeOptimismProjectAttestations/index.ts diff --git a/background/tasks/storeOptimismProjectAttestations/task.ts b/apps/cron/src/tasks/storeOptimismProjectAttestations/task.ts similarity index 80% rename from background/tasks/storeOptimismProjectAttestations/task.ts rename to apps/cron/src/tasks/storeOptimismProjectAttestations/task.ts index 27c843364a..bbaf07b612 100644 --- a/background/tasks/storeOptimismProjectAttestations/task.ts +++ b/apps/cron/src/tasks/storeOptimismProjectAttestations/task.ts @@ -1,6 +1,5 @@ import { log } from '@charmverse/core/log'; - -import { storeOptimismProjectAttestations } from 'lib/optimism/storeOptimismProjectAttestations'; +import { storeOptimismProjectAttestations } from '@root/lib/optimism/storeOptimismProjectAttestations'; export async function task() { log.debug('Running store-optimism-project-attestation cron job'); diff --git a/background/tasks/syncOptimismReviews.ts b/apps/cron/src/tasks/syncOptimismReviews.ts similarity index 100% rename from background/tasks/syncOptimismReviews.ts rename to apps/cron/src/tasks/syncOptimismReviews.ts diff --git a/background/tasks/syncSummonSpaceRoles/task.ts b/apps/cron/src/tasks/syncSummonSpaceRoles/task.ts similarity index 89% rename from background/tasks/syncSummonSpaceRoles/task.ts rename to apps/cron/src/tasks/syncSummonSpaceRoles/task.ts index 4a3a124437..b1c0646fb9 100644 --- a/background/tasks/syncSummonSpaceRoles/task.ts +++ b/apps/cron/src/tasks/syncSummonSpaceRoles/task.ts @@ -1,7 +1,6 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; - -import { syncSummonSpaceRoles } from 'lib/summon/syncSummonSpaceRoles'; +import { syncSummonSpaceRoles } from '@root/lib/summon/syncSummonSpaceRoles'; export async function syncSummonSpacesRoles() { const spaces = await prisma.space.findMany({ diff --git a/background/tasks/updateMixpanelProfilesTask.ts b/apps/cron/src/tasks/updateMixpanelProfilesTask.ts similarity index 78% rename from background/tasks/updateMixpanelProfilesTask.ts rename to apps/cron/src/tasks/updateMixpanelProfilesTask.ts index be78ce3d1b..cd1757078f 100644 --- a/background/tasks/updateMixpanelProfilesTask.ts +++ b/apps/cron/src/tasks/updateMixpanelProfilesTask.ts @@ -1,8 +1,10 @@ import { prisma } from '@charmverse/core/prisma-client'; - -import { batchUpdateSpaceProfiles, type SpaceWithMixpanelProfile } from 'lib/metrics/mixpanel/batchUpdateSpaceProfiles'; -import { getTrackGroupProfile } from 'lib/metrics/mixpanel/updateTrackGroupProfile'; -import { getSpaceBlockCount } from 'lib/spaces/getSpaceBlockCount'; +import { + batchUpdateSpaceProfiles, + type SpaceWithMixpanelProfile +} from '@root/lib/metrics/mixpanel/batchUpdateSpaceProfiles'; +import { getTrackGroupProfile } from '@root/lib/metrics/mixpanel/updateTrackGroupProfile'; +import { getSpaceBlockCount } from '@root/lib/spaces/getSpaceBlockCount'; const perBatch = 1000; export async function updateMixpanelProfiles({ offset = 0 }: { offset?: number } = {}): Promise { diff --git a/background/tasks/updateProposalStatus/index.ts b/apps/cron/src/tasks/updateProposalStatus/index.ts similarity index 100% rename from background/tasks/updateProposalStatus/index.ts rename to apps/cron/src/tasks/updateProposalStatus/index.ts diff --git a/background/tasks/updateProposalStatus/task.ts b/apps/cron/src/tasks/updateProposalStatus/task.ts similarity index 95% rename from background/tasks/updateProposalStatus/task.ts rename to apps/cron/src/tasks/updateProposalStatus/task.ts index d79b50027f..12febacf4e 100644 --- a/background/tasks/updateProposalStatus/task.ts +++ b/apps/cron/src/tasks/updateProposalStatus/task.ts @@ -1,7 +1,6 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; - -import { count } from 'lib/metrics'; +import { count } from '@root/lib/metrics'; export async function task() { log.debug('Running Proposal status cron job'); diff --git a/background/tasks/updateVotesStatus/index.ts b/apps/cron/src/tasks/updateVotesStatus/index.ts similarity index 100% rename from background/tasks/updateVotesStatus/index.ts rename to apps/cron/src/tasks/updateVotesStatus/index.ts diff --git a/background/tasks/updateVotesStatus/task.ts b/apps/cron/src/tasks/updateVotesStatus/task.ts similarity index 91% rename from background/tasks/updateVotesStatus/task.ts rename to apps/cron/src/tasks/updateVotesStatus/task.ts index 5a0fa21fa7..3b8214e8da 100644 --- a/background/tasks/updateVotesStatus/task.ts +++ b/apps/cron/src/tasks/updateVotesStatus/task.ts @@ -1,6 +1,5 @@ import { log } from '@charmverse/core/log'; - -import { count } from 'lib/metrics'; +import { count } from '@root/lib/metrics'; import updateVoteStatus from './updateVoteStatus'; diff --git a/background/tasks/updateVotesStatus/updateVoteStatus.ts b/apps/cron/src/tasks/updateVotesStatus/updateVoteStatus.ts similarity index 88% rename from background/tasks/updateVotesStatus/updateVoteStatus.ts rename to apps/cron/src/tasks/updateVotesStatus/updateVoteStatus.ts index f01b8fd15c..c754bb5acf 100644 --- a/background/tasks/updateVotesStatus/updateVoteStatus.ts +++ b/apps/cron/src/tasks/updateVotesStatus/updateVoteStatus.ts @@ -1,9 +1,8 @@ import { prisma } from '@charmverse/core/prisma-client'; - -import { issueOffchainProposalCredentialsIfNecessary } from 'lib/credentials/issueOffchainProposalCredentialsIfNecessary'; -import { getVotesByState } from 'lib/votes/getVotesByState'; -import { VOTE_STATUS } from 'lib/votes/interfaces'; -import { publishProposalEvent } from 'lib/webhookPublisher/publishEvent'; +import { issueOffchainProposalCredentialsIfNecessary } from '@root/lib/credentials/issueOffchainProposalCredentialsIfNecessary'; +import { getVotesByState } from '@root/lib/votes/getVotesByState'; +import { VOTE_STATUS } from '@root/lib/votes/interfaces'; +import { publishProposalEvent } from '@root/lib/webhookPublisher/publishEvent'; const updateVoteStatus = async () => { const votesPassedDeadline = await prisma.vote.findMany({ diff --git a/background/tasks/verifyTokenGateMemberships/index.ts b/apps/cron/src/tasks/verifyTokenGateMemberships/index.ts similarity index 100% rename from background/tasks/verifyTokenGateMemberships/index.ts rename to apps/cron/src/tasks/verifyTokenGateMemberships/index.ts diff --git a/background/tasks/verifyTokenGateMemberships/task.ts b/apps/cron/src/tasks/verifyTokenGateMemberships/task.ts similarity index 84% rename from background/tasks/verifyTokenGateMemberships/task.ts rename to apps/cron/src/tasks/verifyTokenGateMemberships/task.ts index bea5c501c7..8b274935ae 100644 --- a/background/tasks/verifyTokenGateMemberships/task.ts +++ b/apps/cron/src/tasks/verifyTokenGateMemberships/task.ts @@ -1,7 +1,6 @@ import { log } from '@charmverse/core/log'; - -import { count } from 'lib/metrics'; -import { verifyTokenGateMemberships } from 'lib/tokenGates/verifyTokenGateMemberships'; +import { count } from '@root/lib/metrics'; +import { verifyTokenGateMemberships } from '@root/lib/tokenGates/verifyTokenGateMemberships'; export async function task() { log.debug('Running Verify Token Gate memberships cron job'); diff --git a/apps/cron/tsconfig.json b/apps/cron/tsconfig.json new file mode 100644 index 0000000000..1c3ca9746b --- /dev/null +++ b/apps/cron/tsconfig.json @@ -0,0 +1,20 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "esModuleInterop": true, + "paths": { + "@packages/charmeditor/*": ["../../packages/charmeditor/src/*"], + "@packages/utils/*": ["../../packages/utils/src/*"], + "@root/adapters/*": ["../../adapters/*"], + "@root/config/*": ["../../config/*"], + "@root/abis/*": ["../../abis/*"], + "@root/connectors/*": ["../../connectors/*"], + "@root/theme/*": ["../../theme/*"], + "@root/lib/*": ["../../lib/*"], + "@root/testing/*": ["../../testing/*"], + "components/*": ["../../components/*"], + "lib/*": ["../../lib/*"] + } + }, + "exclude": ["jest.config.ts", "esbuild.config.ts"] +} \ No newline at end of file diff --git a/apps/scoutgame/tsconfig.json b/apps/scoutgame/tsconfig.json index beb9b5f110..166d74711f 100644 --- a/apps/scoutgame/tsconfig.json +++ b/apps/scoutgame/tsconfig.json @@ -34,7 +34,6 @@ "@root/connectors/*": ["../../connectors/*"], "@root/lib/*": ["../../lib/*"], "@root/hooks/*": ["../../hooks/*"], - "@root/models": ["../../models"], "@charmverse/core/prisma": ["../../node_modules/@charmverse/core/dist/cjs/prisma"], "@charmverse/core/prisma-client": ["../../node_modules/@charmverse/core/dist/cjs/prisma-client"], "@charmverse/core/shared": ["../../node_modules/@charmverse/core/dist/cjs/shared"], diff --git a/apps/sunnyawards/tsconfig.json b/apps/sunnyawards/tsconfig.json index fbcbc9618a..51cca6bc31 100644 --- a/apps/sunnyawards/tsconfig.json +++ b/apps/sunnyawards/tsconfig.json @@ -33,7 +33,6 @@ "@root/connectors/*": ["../../connectors/*"], "@root/hooks/*": ["../../hooks/*"], "@root/lib/*": ["../../lib/*"], - "@root/models": ["../../models"], "@charmverse/core/prisma": ["../../node_modules/@charmverse/core/dist/cjs/prisma"], "@charmverse/core/prisma-client": ["../../node_modules/@charmverse/core/dist/cjs/prisma-client"], "@charmverse/core/shared": ["../../node_modules/@charmverse/core/dist/cjs/shared"], diff --git a/apps/websockets/esbuild.config.ts b/apps/websockets/esbuild.config.ts new file mode 100644 index 0000000000..ac9ae4a811 --- /dev/null +++ b/apps/websockets/esbuild.config.ts @@ -0,0 +1,27 @@ +import * as fs from 'fs'; + +import * as esbuild from 'esbuild'; + +esbuild + .build({ + bundle: true, + entryPoints: ['./src/initWebsockets.ts'], + // metafile: true, // uncomment to analyize build file contents + outdir: './dist', + tsconfig: './tsconfig.json', + packages: 'external', + platform: 'node', + sourcemap: true + // target: 'node18' + // logLevel: 'verbose' // uncomment to see more build details like imported file info + }) + .catch(() => process.exit(1)) + .then(async (result) => { + if (result.metafile) { + // upload output to https://esbuild.github.io/analyze/ + fs.writeFileSync('dist/meta.json', JSON.stringify(result.metafile)); + // review this output to see why a file was included + const depsTreeOutput = await esbuild.analyzeMetafile(result.metafile, { verbose: true }); + fs.writeFileSync('dist/dependencies.txt', depsTreeOutput); + } + }); diff --git a/apps/websockets/package.json b/apps/websockets/package.json new file mode 100644 index 0000000000..0be0c783b8 --- /dev/null +++ b/apps/websockets/package.json @@ -0,0 +1,14 @@ +{ + "name": "websockets", + "version": "1.0.0", + "description": "", + "scripts": { + "build": "npx tsx esbuild.config.ts", + "start": "tsx watch src/initWebsockets.ts", + "start:prod": "node ./dist/initWebsockets.js", + "typecheck": "../../node_modules/typescript/bin/tsc --project ./tsconfig.json --noEmit" + }, + "dependencies": { + "@packages/charmeditor": "^1.0.0" + } +} diff --git a/apps/websockets/src/__tests__/healthCheck.spec.ts b/apps/websockets/src/__tests__/healthCheck.spec.ts new file mode 100644 index 0000000000..f80418d5f6 --- /dev/null +++ b/apps/websockets/src/__tests__/healthCheck.spec.ts @@ -0,0 +1,21 @@ +import type { Server } from 'http'; + +import request from 'supertest'; + +import app from '../healthCheck/app'; + +let server: Server; + +beforeAll(() => { + server = app.listen(); +}); + +afterAll((done) => { + server.close(done); +}); + +describe('health check', () => { + test('should return 200', async () => { + await request(server).get(`/health_check`).expect(200); + }); +}); diff --git a/background/__tests__/websockets.spec.ts b/apps/websockets/src/__tests__/websockets.spec.ts similarity index 92% rename from background/__tests__/websockets.spec.ts rename to apps/websockets/src/__tests__/websockets.spec.ts index 1795123e37..7ef875bcd2 100644 --- a/background/__tests__/websockets.spec.ts +++ b/apps/websockets/src/__tests__/websockets.spec.ts @@ -4,8 +4,8 @@ import type { Socket } from 'socket.io-client'; import io from 'socket.io-client'; import request from 'supertest'; -import { httpServer, socketServer } from '../websockets/app'; -import { cleanup } from '../websockets/verifyCustomOrigin'; +import { httpServer, socketServer } from '../app/server'; +import { cleanup } from '../app/verifyCustomOrigin'; let client: Socket; let socketUrl: string; diff --git a/background/websockets/datadog.ts b/apps/websockets/src/app/datadog.ts similarity index 100% rename from background/websockets/datadog.ts rename to apps/websockets/src/app/datadog.ts diff --git a/background/websockets/app.ts b/apps/websockets/src/app/server.ts similarity index 89% rename from background/websockets/app.ts rename to apps/websockets/src/app/server.ts index c8619181e4..746f902e0a 100644 --- a/background/websockets/app.ts +++ b/apps/websockets/src/app/server.ts @@ -2,18 +2,17 @@ import { createServer } from 'http'; import { log } from '@charmverse/core/log'; import { isDevEnv, isTestEnv } from '@root/config/constants'; +import { config } from '@root/lib/websockets/config'; +import { relay } from '@root/lib/websockets/relay'; import { Server } from 'socket.io'; -import { config } from 'lib/websockets/config'; -import { relay } from 'lib/websockets/relay'; - import app from '../healthCheck/app'; import { verifyCustomOrigin } from './verifyCustomOrigin'; const httpServer = createServer(app.callback()); -const socketServer = new Server(httpServer, { +const socketServer: Server = new Server(httpServer, { ...config, cors: { allowedHeaders: ['authorization'], diff --git a/background/websockets/verifyCustomOrigin.ts b/apps/websockets/src/app/verifyCustomOrigin.ts similarity index 93% rename from background/websockets/verifyCustomOrigin.ts rename to apps/websockets/src/app/verifyCustomOrigin.ts index 8926fd15e8..c827f8b290 100644 --- a/background/websockets/verifyCustomOrigin.ts +++ b/apps/websockets/src/app/verifyCustomOrigin.ts @@ -1,6 +1,5 @@ import { log } from '@charmverse/core/log'; - -import { getSpaceByDomain } from 'lib/spaces/getSpaceByDomain'; +import { getSpaceByDomain } from '@root/lib/spaces/getSpaceByDomain'; let cache: Record = {}; let intervalId: ReturnType | undefined; diff --git a/apps/websockets/src/healthCheck/app.ts b/apps/websockets/src/healthCheck/app.ts new file mode 100644 index 0000000000..4e869e0751 --- /dev/null +++ b/apps/websockets/src/healthCheck/app.ts @@ -0,0 +1,14 @@ +import Router from '@koa/router'; +import Koa from 'koa'; + +import * as routes from './routes'; + +const app = new Koa(); +const router = new Router(); + +router.get('/', routes.healthCheck); +router.get('/health_check', routes.healthCheck); + +app.use(routes.errorHandler).use(router.routes()).use(router.allowedMethods()); + +export default app; diff --git a/apps/websockets/src/healthCheck/routes.ts b/apps/websockets/src/healthCheck/routes.ts new file mode 100644 index 0000000000..0387ef87eb --- /dev/null +++ b/apps/websockets/src/healthCheck/routes.ts @@ -0,0 +1,16 @@ +import { log } from '@charmverse/core/log'; +import type Koa from 'koa'; + +export async function healthCheck(ctx: Koa.Context) { + ctx.body = 'hello world'; +} + +export async function errorHandler(ctx: Koa.Context, next: () => Promise) { + try { + await next(); + } catch (err: any) { + log.error('Service Error', { status: err.status, error: err.message, errorRaw: err }); + ctx.status = err.status || 500; + ctx.body = err.message; + } +} diff --git a/background/initWebsockets.ts b/apps/websockets/src/initWebsockets.ts similarity index 78% rename from background/initWebsockets.ts rename to apps/websockets/src/initWebsockets.ts index a533de730d..e33f4f6e98 100644 --- a/background/initWebsockets.ts +++ b/apps/websockets/src/initWebsockets.ts @@ -1,10 +1,10 @@ // init app instrumentation -import './websockets/datadog'; +import './app/datadog'; import { log } from '@charmverse/core/log'; import { appEnv } from '@root/config/constants'; -import { httpServer, socketServer } from './websockets/app'; -import { cleanup as originCacheCleanup } from './websockets/verifyCustomOrigin'; +import { httpServer, socketServer } from './app/server'; +import { cleanup as originCacheCleanup } from './app/verifyCustomOrigin'; const port = process.env.PORT || 3002; diff --git a/apps/websockets/tsconfig.json b/apps/websockets/tsconfig.json new file mode 100644 index 0000000000..242bf49a10 --- /dev/null +++ b/apps/websockets/tsconfig.json @@ -0,0 +1,18 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "paths": { + "@packages/charmeditor/*": ["../../packages/charmeditor/src/*"], + "@packages/utils/*": ["../../packages/utils/src/*"], + "@root/adapters/*": ["../../adapters/*"], + "@root/config/*": ["../../config/*"], + "@root/lib/*": ["../../lib/*"], + "@root/testing/*": ["../../testing/*"], + "@root/abis/*": ["../../abis/*"], + "@root/connectors/*": ["../../connectors/*"], + "lib/*": ["../../lib/*"], + "components/*": ["../../components/*"] + } + }, + "exclude": ["./esbuild.config.ts", "./__tests__"] +} \ No newline at end of file diff --git a/background/ceramicServer/package.json b/background/ceramicServer/package.json deleted file mode 100644 index aead43de36..0000000000 --- a/background/ceramicServer/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "type": "module" -} \ No newline at end of file diff --git a/background/jest.config.ts b/background/jest.config.ts deleted file mode 100644 index ec3af3d83f..0000000000 --- a/background/jest.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import makeConfig from 'jest.config.nodejs'; - -export default makeConfig(__dirname); diff --git a/charmClient/apis/discordApi.ts b/charmClient/apis/discordApi.ts index 82dbb9849f..b6909cc30b 100644 --- a/charmClient/apis/discordApi.ts +++ b/charmClient/apis/discordApi.ts @@ -1,6 +1,6 @@ import type { Space, User } from '@charmverse/core/prisma'; import * as http from '@root/adapters/http'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { CheckDiscordGateResult } from 'lib/discord/interface'; import type { OauthFlowType } from 'lib/oauth/interfaces'; diff --git a/charmClient/apis/googleApi.ts b/charmClient/apis/googleApi.ts index 150219f35e..40690755f9 100644 --- a/charmClient/apis/googleApi.ts +++ b/charmClient/apis/googleApi.ts @@ -1,6 +1,6 @@ import type { ProfileItem } from '@charmverse/core/prisma'; import * as http from '@root/adapters/http'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { DisconnectGoogleAccountRequest } from 'lib/google/disconnectGoogleAccount'; import type { EmailAccountDisconnect } from 'lib/google/disconnectVerifiedEmail'; diff --git a/charmClient/apis/profileApi.ts b/charmClient/apis/profileApi.ts index 2aa8eea625..2109efd8d7 100644 --- a/charmClient/apis/profileApi.ts +++ b/charmClient/apis/profileApi.ts @@ -1,6 +1,6 @@ import type { ProfileItem } from '@charmverse/core/prisma'; import * as http from '@root/adapters/http'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { UserCommunity } from 'lib/profile'; import type { SetForumCategoryNotificationInput } from 'lib/userNotifications/setForumCategoryNotification'; diff --git a/charmClient/charmClient.ts b/charmClient/charmClient.ts index 13e14e8bf8..750fc2f5fa 100644 --- a/charmClient/charmClient.ts +++ b/charmClient/charmClient.ts @@ -12,9 +12,9 @@ import type { import * as http from '@root/adapters/http'; import type { FiatCurrency, IPairQuote } from '@root/connectors/chains'; import type { FarcasterUser } from '@root/lib/farcaster/getFarcasterUsers'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import { blockToFBBlock, fbBlockToBlock, fixBlocks } from 'components/common/DatabaseEditor/utils/blockUtils'; import type { ExtendedPoap } from 'lib/blockchain/interfaces'; import type { BlockWithDetails, BlockPatch, UIBlockWithDetails as FBBlock } from 'lib/databases/block'; @@ -26,11 +26,11 @@ import type { FailedImportsError } from 'lib/notion/interfaces'; import type { TrashOrDeletePageResponse, PageLink } from 'lib/pages'; import type { PublicPageResponse } from 'lib/pages/interfaces'; import type { AggregatedProfileData } from 'lib/profile'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; import type { ITokenMetadata, ITokenMetadataRequest } from 'lib/tokens/tokenData'; import { encodeFilename } from 'lib/utils/encodeFilename'; import type { SocketAuthResponse } from 'lib/websockets/interfaces'; import type { ImportGuildRolesPayload } from 'pages/api/guild-xyz/importRoles'; -import type { TelegramAccount } from 'pages/api/telegram/connect'; import { BlockchainApi } from './apis/blockchainApi'; import { CommentsApi } from './apis/commentsApi'; diff --git a/charmClient/hooks/blockchain.ts b/charmClient/hooks/blockchain.ts index 8fb7c15847..4ffdf721a1 100644 --- a/charmClient/hooks/blockchain.ts +++ b/charmClient/hooks/blockchain.ts @@ -1,4 +1,4 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NFTData, NFTRequest } from 'lib/blockchain/getNFTs'; diff --git a/charmClient/hooks/farcaster.ts b/charmClient/hooks/farcaster.ts index 8a26be9230..deb4ccacd4 100644 --- a/charmClient/hooks/farcaster.ts +++ b/charmClient/hooks/farcaster.ts @@ -1,5 +1,5 @@ import type { StatusAPIResponse as FarcasterPayload } from '@farcaster/auth-kit'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { Frame } from 'frames.js'; import type { FrameActionRequest, FrameActionResponse } from 'pages/api/farcaster/frame-action'; diff --git a/charmClient/hooks/profile.ts b/charmClient/hooks/profile.ts index ab7b097bcc..8307662e1b 100644 --- a/charmClient/hooks/profile.ts +++ b/charmClient/hooks/profile.ts @@ -1,5 +1,5 @@ import type { UserWallet } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { SignatureVerificationPayloadWithAddress } from 'lib/blockchain/signAndVerify'; import type { EmailPreferences } from 'pages/api/profile/onboarding-email'; diff --git a/components/_app/OpenGraphData.tsx b/components/_app/OpenGraphData.tsx index c848c2332c..3965665573 100644 --- a/components/_app/OpenGraphData.tsx +++ b/components/_app/OpenGraphData.tsx @@ -1,4 +1,4 @@ -import { blueColor } from 'theme/colors'; +import { charmBlue as blueColor } from '@root/config/colors'; export type OpenGraphProps = { title?: string; diff --git a/components/_app/components/ConnectedAccounts.tsx b/components/_app/components/ConnectedAccounts.tsx index 2f62a713d8..277c0baa14 100644 --- a/components/_app/components/ConnectedAccounts.tsx +++ b/components/_app/components/ConnectedAccounts.tsx @@ -1,5 +1,5 @@ import { Stack, Typography } from '@mui/material'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import dynamic from 'next/dynamic'; import { useAddUserWallets } from 'charmClient/hooks/profile'; @@ -14,8 +14,8 @@ import { useUser } from 'hooks/useUser'; import { useAccount } from 'hooks/wagmi'; import type { SignatureVerificationPayload } from 'lib/blockchain/signAndVerify'; import type { DiscordAccount } from 'lib/discord/client/getDiscordAccount'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; import { shortenHex } from 'lib/utils/blockchain'; -import type { TelegramAccount } from 'pages/api/telegram/connect'; import { useRequiredMemberProperties } from '../../members/hooks/useRequiredMemberProperties'; diff --git a/components/_app/components/FarcasterConnect.tsx b/components/_app/components/FarcasterConnect.tsx index 6a67d7e9c4..a37693e0c8 100644 --- a/components/_app/components/FarcasterConnect.tsx +++ b/components/_app/components/FarcasterConnect.tsx @@ -1,6 +1,6 @@ import { AuthKitProvider } from '@farcaster/auth-kit'; import { Typography } from '@mui/material'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { FarcasterLoginModal } from 'components/login/components/FarcasterModal'; import { useWarpcastLogin } from 'components/login/hooks/useWarpcastLogin'; diff --git a/components/_app/components/UserOnboardingDialog.tsx b/components/_app/components/UserOnboardingDialog.tsx index 3ff122df9d..729a2ee300 100644 --- a/components/_app/components/UserOnboardingDialog.tsx +++ b/components/_app/components/UserOnboardingDialog.tsx @@ -1,7 +1,7 @@ import { log } from '@charmverse/core/log'; import type { Space } from '@charmverse/core/prisma-client'; import { Alert } from '@mui/material'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { usePopupState } from 'material-ui-popup-state/hooks'; import { useEffect, useState } from 'react'; diff --git a/components/_app/hooks/useOnboarding.tsx b/components/_app/hooks/useOnboarding.tsx index 47be329440..12a617e2b9 100644 --- a/components/_app/hooks/useOnboarding.tsx +++ b/components/_app/hooks/useOnboarding.tsx @@ -1,4 +1,4 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import charmClient from 'charmClient'; import { useMembers } from 'hooks/useMembers'; diff --git a/components/common/CharmEditor/components/callout/components/Callout.tsx b/components/common/CharmEditor/components/callout/components/Callout.tsx index e94a89cc14..8d89d49061 100644 --- a/components/common/CharmEditor/components/callout/components/Callout.tsx +++ b/components/common/CharmEditor/components/callout/components/Callout.tsx @@ -4,7 +4,7 @@ import type { MouseEvent, ReactNode } from 'react'; import { useState } from 'react'; import { CustomEmojiPicker } from 'components/common/CustomEmojiPicker'; -import { getTwitterEmoji } from 'components/common/Emoji'; +import { getTwitterEmoji } from 'lib/utils/emoji'; import type { CharmNodeViewProps } from '../../nodeView/nodeView'; diff --git a/components/common/CharmEditor/components/emojiSuggest/emojiSuggest.specs.ts b/components/common/CharmEditor/components/emojiSuggest/emojiSuggest.specs.ts index 59b4cbd190..bf7e24983e 100644 --- a/components/common/CharmEditor/components/emojiSuggest/emojiSuggest.specs.ts +++ b/components/common/CharmEditor/components/emojiSuggest/emojiSuggest.specs.ts @@ -1,6 +1,6 @@ import { log } from '@charmverse/core/log'; -import { getTwitterEmoji } from 'components/common/Emoji'; +import { getTwitterEmoji } from 'lib/utils/emoji'; import { domSerializationHelpers } from '../@bangle.dev/core/domSerializationHelpers'; import type { RawSpecs, BaseRawMarkSpec } from '../@bangle.dev/core/specRegistry'; diff --git a/components/common/CharmEditor/components/iframe/IframeComponent.tsx b/components/common/CharmEditor/components/iframe/IframeComponent.tsx index 06fe7fd2b2..e7f81ffd22 100644 --- a/components/common/CharmEditor/components/iframe/IframeComponent.tsx +++ b/components/common/CharmEditor/components/iframe/IframeComponent.tsx @@ -4,12 +4,12 @@ import MultiTabs from 'components/common/MultiTabs'; import { isPdfEmbedLink } from 'lib/pdf/extractPdfEmbedLink'; import { isUrl } from 'lib/utils/strings'; -import { extractAttrsFromUrl as extractNFTAttrs } from '../../../../../lib/blockchain/utils'; import BlockAligner from '../BlockAligner'; import { IframeContainer } from '../common/IframeContainer'; import { MediaSelectionPopup } from '../common/MediaSelectionPopup'; import { MediaUrlInput } from '../common/MediaUrlInput'; import { extractEmbedType, extractIframeProps } from '../iframe/utils'; +import { extractAttrsFromUrl as extractNFTAttrs } from '../nft/utils'; import type { CharmNodeViewProps } from '../nodeView/nodeView'; import VerticalResizer from '../Resizable/VerticalResizer'; import { extractTweetAttrs } from '../tweet/tweetSpec'; diff --git a/components/common/CharmEditor/components/nft/nft.plugins.ts b/components/common/CharmEditor/components/nft/nft.plugins.ts index 931bd7e4e3..3dc4efada8 100644 --- a/components/common/CharmEditor/components/nft/nft.plugins.ts +++ b/components/common/CharmEditor/components/nft/nft.plugins.ts @@ -1,4 +1,4 @@ -import { NodeView } from 'components/common/CharmEditor/components/@bangle.dev/core/node-view'; +import { NodeView } from '../@bangle.dev/core/node-view'; import { name } from './config'; diff --git a/components/common/CharmEditor/components/nft/utils.ts b/components/common/CharmEditor/components/nft/utils.ts index c41891f9a6..575fe79a6b 100644 --- a/components/common/CharmEditor/components/nft/utils.ts +++ b/components/common/CharmEditor/components/nft/utils.ts @@ -1,4 +1,4 @@ -import { openseaChainsByPath } from '@root/lib/blockchain/getNFTUrl'; +import { openseaChainsByPath } from '@root/lib/blockchain/config'; import type { NodeAttrs } from './nft.specs'; diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/CustomPropertiesList.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/CustomPropertiesList.tsx index a77a21b8c1..03b26d8fa3 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/CustomPropertiesList.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/CustomPropertiesList.tsx @@ -2,8 +2,8 @@ import { Divider, Stack, Typography } from '@mui/material'; import { useProposalsBoardAdapter } from 'components/proposals/ProposalPage/components/ProposalProperties/hooks/useProposalsBoardAdapter'; +import type { SelectedProposalProperties } from './interfaces'; import { PropertySelector } from './PropertiesListSelector'; -import type { SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; export function CustomPropertiesList({ selectedProperties, diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/FormFieldPropertiesList.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/FormFieldPropertiesList.tsx index 88c1603d0a..92007734b2 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/FormFieldPropertiesList.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/FormFieldPropertiesList.tsx @@ -3,8 +3,8 @@ import { useMemo } from 'react'; import { useProposalTemplates } from 'components/proposals/hooks/useProposalTemplates'; +import type { SelectedProposalProperties } from './interfaces'; import { PropertySelector } from './PropertiesListSelector'; -import type { SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; export function FormFieldPropertiesList({ selectedProperties, diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProjectProfilePropertiesList.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProjectProfilePropertiesList.tsx index 6c841cceeb..6b39479a6d 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProjectProfilePropertiesList.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProjectProfilePropertiesList.tsx @@ -3,8 +3,8 @@ import { useMemo } from 'react'; import { projectFieldProperties, projectMemberFieldProperties } from 'lib/projects/formField'; +import type { SelectedProposalProperties } from './interfaces'; import { PropertySelector } from './PropertiesListSelector'; -import type { SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; import { SelectedPropertiesList } from './SelectedPropertiesList'; const projectMemberFields = projectMemberFieldProperties.map((propertyFieldProperty) => propertyFieldProperty.field); diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalDefaultPropertiesList.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalDefaultPropertiesList.tsx index 416ef639e9..1cd7b68a67 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalDefaultPropertiesList.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalDefaultPropertiesList.tsx @@ -2,8 +2,8 @@ import { Stack } from '@mui/material'; import { defaultProposalProperties, defaultProposalPropertyTypes } from 'lib/databases/proposalDbProperties'; +import type { SelectedProposalProperties } from './interfaces'; import { PropertySelector } from './PropertiesListSelector'; -import type { SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; import { SelectedPropertiesList } from './SelectedPropertiesList'; export function ProposalDefaultPropertiesList({ diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourceDialogButton.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourceDialogButton.tsx index 453aa32508..31a3aacc70 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourceDialogButton.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourceDialogButton.tsx @@ -13,7 +13,7 @@ import { useIsAdmin } from 'hooks/useIsAdmin'; import type { Board } from 'lib/databases/board'; import { createSelectedPropertiesStateFromBoardProperties } from 'lib/databases/proposalsSource/createSelectedPropertiesFromBoardProperties'; -import type { SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from './interfaces'; import { ProposalSourcePropertiesDialog } from './ProposalSourcePropertiesDialog'; export function ProposalSourceDialogButton({ board }: { board: Board }) { diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog.tsx index 6017dd533e..2429695a5f 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog.tsx @@ -13,37 +13,12 @@ import { defaultProposalPropertyTypes } from 'lib/databases/proposalDbProperties import { CustomPropertiesList, CustomPropertiesReadonlyList } from './CustomPropertiesList'; import { FormFieldPropertiesList } from './FormFieldPropertiesList'; +import type { SelectedProposalProperties } from './interfaces'; import { ProjectProfilePropertiesList, ProjectProfilePropertiesReadonlyList } from './ProjectProfilePropertiesList'; import { ProposalDefaultPropertiesList, ProposalDefaultPropertiesReadonlyList } from './ProposalDefaultPropertiesList'; import { RubricEvaluationPropertiesList } from './RubricEvaluationPropertiesList'; import { TemplatePropertiesReadonlyList } from './TemplatePropertiesReadonlyList'; -export type RubricEvaluationProperty = - | 'average' - | 'total' - | 'reviewers' - | 'criteriaTotal' - | 'reviewerScore' - | 'reviewerComment' - | 'criteriaAverage' - | 'reviewerAverage'; - -export type SelectedProposalProperties = { - projectMember: string[]; - project: string[]; - customProperties: string[]; - templateProperties: { - templateId: string; - rubricEvaluations: { - title: string; - properties: RubricEvaluationProperty[]; - evaluationId: string; - }[]; - formFields: string[]; - }[]; - defaults: string[]; -}; - type SelectedGroup = | { group: 'projectProfile'; diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/RubricEvaluationPropertiesList.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/RubricEvaluationPropertiesList.tsx index bfb56eaf1b..31579173b0 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/RubricEvaluationPropertiesList.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/RubricEvaluationPropertiesList.tsx @@ -3,8 +3,8 @@ import { useMemo } from 'react'; import { useProposalTemplates } from 'components/proposals/hooks/useProposalTemplates'; +import type { RubricEvaluationProperty, SelectedProposalProperties } from './interfaces'; import { PropertySelector } from './PropertiesListSelector'; -import type { RubricEvaluationProperty, SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; export function RubricEvaluationPropertiesList({ selectedProperties, diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/TemplatePropertiesReadonlyList.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/TemplatePropertiesReadonlyList.tsx index 2e60a2af0a..c52b79c573 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/TemplatePropertiesReadonlyList.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/TemplatePropertiesReadonlyList.tsx @@ -2,7 +2,7 @@ import { Divider, Stack, Typography } from '@mui/material'; import { useProposalTemplates } from 'components/proposals/hooks/useProposalTemplates'; -import type { RubricEvaluationProperty, SelectedProposalProperties } from './ProposalSourcePropertiesDialog'; +import type { RubricEvaluationProperty, SelectedProposalProperties } from './interfaces'; import { SelectedPropertiesList } from './SelectedPropertiesList'; const RubricPropertyLabel: Record = { diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces.ts b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces.ts new file mode 100644 index 0000000000..48a8997bff --- /dev/null +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces.ts @@ -0,0 +1,25 @@ +export type RubricEvaluationProperty = + | 'average' + | 'total' + | 'reviewers' + | 'criteriaTotal' + | 'reviewerScore' + | 'reviewerComment' + | 'criteriaAverage' + | 'reviewerAverage'; + +export type SelectedProposalProperties = { + projectMember: string[]; + project: string[]; + customProperties: string[]; + templateProperties: { + templateId: string; + rubricEvaluations: { + title: string; + properties: RubricEvaluationProperty[]; + evaluationId: string; + }[]; + formFields: string[]; + }[]; + defaults: string[]; +}; diff --git a/components/common/Emoji.tsx b/components/common/Emoji.tsx index e71b39b131..a624e01bef 100644 --- a/components/common/Emoji.tsx +++ b/components/common/Emoji.tsx @@ -1,13 +1,10 @@ -import { log } from '@charmverse/core/log'; import styled from '@emotion/styled'; import type { ComponentProps, ReactNode } from 'react'; import { memo } from 'react'; -import twemoji from 'twemoji'; -import { isMac } from 'lib/utils/browser'; +import { getTwitterEmoji } from 'lib/utils/emoji'; type ImgSize = 'large' | 'small'; - export const Emoji = styled.div<{ size?: ImgSize }>` font-size: ${({ size }) => (size === 'large' ? '78px' : 'inherit')}; overflow: hidden; @@ -43,24 +40,6 @@ export const Emoji = styled.div<{ size?: ImgSize }>` } `; -// Use system font for Mac OS, but Twitter emojis for everyone else -export function getTwitterEmoji(emoji: string): string | null { - if (isMac() || !emoji) return null; - try { - const html = twemoji.parse(emoji, { - // the original maxCDN went down Jan 11, 2023 - base: 'https://cdn.jsdelivr.net/gh/twitter/twemoji@14.0.2/assets/', - folder: 'svg', - ext: '.svg' - }) as string; - const match = / = { + ethereum: mainnet.id, + bsc: bsc.id, + base: base.id, + arbitrum: arbitrum.id, + avalanche: avalanche.id, + matic: polygon.id, + optimism: optimism.id +}; diff --git a/lib/blockchain/getNFTUrl.ts b/lib/blockchain/getNFTUrl.ts index 354a6225aa..356d6cdbd8 100644 --- a/lib/blockchain/getNFTUrl.ts +++ b/lib/blockchain/getNFTUrl.ts @@ -1,17 +1,7 @@ import { log } from '@charmverse/core/log'; import { arbitrum, avalanche, base, bsc, mainnet, fantom, mantle, optimism, polygon, zora } from 'viem/chains'; -import type { SupportedChainId } from './getNFTs'; - -export const openseaChainsByPath: Record = { - ethereum: 1, - bsc: 56, - base: base.id, - arbitrum: 42161, - avalanche: 43114, - matic: 137, - optimism: 10 -}; +import { openseaChainsByPath } from './config'; export const openseaPathsByChain = Object.entries(openseaChainsByPath).reduce>( (acc, [path, chain]) => { diff --git a/lib/blockchain/refreshENSName.ts b/lib/blockchain/refreshENSName.ts index bd6118b10e..ab67e0b343 100644 --- a/lib/blockchain/refreshENSName.ts +++ b/lib/blockchain/refreshENSName.ts @@ -1,9 +1,9 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; -import { getUserProfile } from '@root/lib/users/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { matchWalletAddress, shortWalletAddress } from '@root/lib/utils/blockchain'; import { InvalidInputError, MissingDataError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; import { getENSName } from './getENSName'; diff --git a/lib/blockchain/utils.ts b/lib/blockchain/utils.ts index f519af7fd3..cd6a115a28 100644 --- a/lib/blockchain/utils.ts +++ b/lib/blockchain/utils.ts @@ -1,8 +1,6 @@ import { log } from '@charmverse/core/log'; import { arbitrum, avalanche, base, bsc, mainnet, fantom, mantle, optimism, polygon, zora } from 'viem/chains'; -import type { NodeAttrs } from '../../components/common/CharmEditor/components/nft/nft.specs'; - import type { SupportedChainId } from './getNFTs'; const openseaChainsByPath: Record = { @@ -22,27 +20,6 @@ const openseaPathsByChain = Object.entries(openseaChainsByPath).reduce = { declined: 'Declined', in_progress: 'In Progress', diff --git a/lib/databases/proposalsSource/__tests__/createSelectedPropertiesFromBoardProperties.spec.ts b/lib/databases/proposalsSource/__tests__/createSelectedPropertiesFromBoardProperties.spec.ts index c6b3f94ac3..927e1800bd 100644 --- a/lib/databases/proposalsSource/__tests__/createSelectedPropertiesFromBoardProperties.spec.ts +++ b/lib/databases/proposalsSource/__tests__/createSelectedPropertiesFromBoardProperties.spec.ts @@ -1,6 +1,6 @@ import { v4 } from 'uuid'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import { PROJECT_DESCRIPTION_ID, PROJECT_MEMBER_NAMES_ID, diff --git a/lib/databases/proposalsSource/__tests__/getCardProperties.spec.ts b/lib/databases/proposalsSource/__tests__/getCardProperties.spec.ts index 2d0511c12a..eb7511b46e 100644 --- a/lib/databases/proposalsSource/__tests__/getCardProperties.spec.ts +++ b/lib/databases/proposalsSource/__tests__/getCardProperties.spec.ts @@ -1,4 +1,3 @@ -import type { ProposalEvaluationTestInput } from '@charmverse/core/dist/cjs/lib/testing/proposals'; import type { FormField, Prisma, Space, User } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsCredentials, testUtilsProposals, testUtilsUser } from '@charmverse/core/test'; @@ -84,7 +83,7 @@ describe('getCardPropertiesFromProposals', () => { spaceId: generated.space.id }); - const evaluationInputs: ProposalEvaluationTestInput[] = [ + const evaluationInputs: testUtilsProposals.GenerateProposalInput['evaluationInputs'] = [ { rubricCriteria: [ { @@ -347,7 +346,7 @@ describe('getCardPropertiesFromProposals', () => { spaceId: generated.space.id }); - const evaluationInputs: ProposalEvaluationTestInput[] = [ + const evaluationInputs: testUtilsProposals.GenerateProposalInput['evaluationInputs'] = [ { evaluationType: 'feedback', title: 'Feedback', diff --git a/lib/databases/proposalsSource/__tests__/updateBoardProperties.spec.ts b/lib/databases/proposalsSource/__tests__/updateBoardProperties.spec.ts index a246bdd72f..d0a7026e2c 100644 --- a/lib/databases/proposalsSource/__tests__/updateBoardProperties.spec.ts +++ b/lib/databases/proposalsSource/__tests__/updateBoardProperties.spec.ts @@ -1,4 +1,3 @@ -import type { ProposalEvaluationTestInput } from '@charmverse/core/dist/cjs/lib/testing/proposals'; import type { FormField, Prisma, Space, User } from '@charmverse/core/prisma-client'; import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsProposals, testUtilsUser } from '@charmverse/core/test'; @@ -160,7 +159,7 @@ describe('updateBoardProperties()', () => { const rootId = uuid(); - const evaluationInputs: ProposalEvaluationTestInput[] = [ + const evaluationInputs: testUtilsProposals.GenerateProposalInput['evaluationInputs'] = [ { evaluationType: 'feedback', permissions: [], diff --git a/lib/databases/proposalsSource/createSelectedPropertiesFromBoardProperties.ts b/lib/databases/proposalsSource/createSelectedPropertiesFromBoardProperties.ts index 061ef4ccf8..d6df0a816b 100644 --- a/lib/databases/proposalsSource/createSelectedPropertiesFromBoardProperties.ts +++ b/lib/databases/proposalsSource/createSelectedPropertiesFromBoardProperties.ts @@ -1,6 +1,6 @@ import { projectFieldProperties, projectMemberFieldProperties } from '@root/lib/projects/formField'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import type { ProposalTemplateMeta } from 'lib/proposals/getProposalTemplates'; import type { Board } from '../board'; diff --git a/lib/databases/proposalsSource/filterBoardProperties.ts b/lib/databases/proposalsSource/filterBoardProperties.ts index 2135e8deee..7ff1813413 100644 --- a/lib/databases/proposalsSource/filterBoardProperties.ts +++ b/lib/databases/proposalsSource/filterBoardProperties.ts @@ -1,6 +1,6 @@ import { projectFieldProperties, projectMemberFieldProperties } from '@root/lib/projects/formField'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import type { IPropertyTemplate } from '../board'; import { defaultProposalPropertyTypes } from '../proposalDbProperties'; diff --git a/lib/databases/proposalsSource/getBoardProperties.ts b/lib/databases/proposalsSource/getBoardProperties.ts index bb1da2132d..bc24c23459 100644 --- a/lib/databases/proposalsSource/getBoardProperties.ts +++ b/lib/databases/proposalsSource/getBoardProperties.ts @@ -6,7 +6,7 @@ import { projectFieldProperties, projectMemberFieldProperties } from '@root/lib/ import type { PageContent } from '@root/lib/prosemirror/interfaces'; import { v4 as uuid } from 'uuid'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import { filterBoardProperties } from './filterBoardProperties'; diff --git a/lib/databases/proposalsSource/updateBoardProperties.ts b/lib/databases/proposalsSource/updateBoardProperties.ts index e27b97517f..8b74d8f05e 100644 --- a/lib/databases/proposalsSource/updateBoardProperties.ts +++ b/lib/databases/proposalsSource/updateBoardProperties.ts @@ -5,7 +5,7 @@ import type { FormFieldInput } from '@root/lib/forms/interfaces'; import { InvalidStateError } from '@root/lib/middleware/errors'; import { DEFAULT_BOARD_BLOCK_ID } from '@root/lib/proposals/blocks/constants'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import { getBoardProperties } from './getBoardProperties'; diff --git a/lib/discord/disconnectDiscordAccount.ts b/lib/discord/disconnectDiscordAccount.ts index 74ce0f1d61..1b46009c20 100644 --- a/lib/discord/disconnectDiscordAccount.ts +++ b/lib/discord/disconnectDiscordAccount.ts @@ -1,8 +1,8 @@ import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import { updateUsedIdentity } from '@root/lib/users/updateUsedIdentity'; import { InvalidInputError, MissingDataError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export type DisconnectDiscordRequest = { userId: string; diff --git a/lib/farcaster/connectFarcaster.ts b/lib/farcaster/connectFarcaster.ts index c749bf3086..a82cd3bc80 100644 --- a/lib/farcaster/connectFarcaster.ts +++ b/lib/farcaster/connectFarcaster.ts @@ -2,10 +2,10 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; import type { StatusAPIResponse as FarcasterBody } from '@farcaster/auth-client'; import { InvalidStateError } from '@root/lib/middleware'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; -import { getUserProfile } from '@root/lib/users/getUser'; import { DisabledAccountError, ExternalServiceError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export async function connectFarcaster({ fid, diff --git a/lib/farcaster/disconnectFarcaster.ts b/lib/farcaster/disconnectFarcaster.ts index 0e59e60c67..125334502a 100644 --- a/lib/farcaster/disconnectFarcaster.ts +++ b/lib/farcaster/disconnectFarcaster.ts @@ -1,7 +1,7 @@ import { prisma } from '@charmverse/core/prisma-client'; -import { getUserProfile } from '@root/lib/users/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { InvalidInputError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export async function disconnectFarcaster({ userId }: { userId: string }): Promise { const farcasterUser = await prisma.farcasterUser.findUnique({ diff --git a/lib/farcaster/loginWithFarcaster.ts b/lib/farcaster/loginWithFarcaster.ts index cfb4b1cf7b..53b29396d3 100644 --- a/lib/farcaster/loginWithFarcaster.ts +++ b/lib/farcaster/loginWithFarcaster.ts @@ -5,10 +5,10 @@ import { getChainById } from '@root/connectors/chains'; import type { SignupAnalytics } from '@root/lib/metrics/mixpanel/interfaces/UserEvent'; import { trackUserAction } from '@root/lib/metrics/mixpanel/trackUserAction'; import { InvalidStateError } from '@root/lib/middleware'; -import { getUserProfile } from '@root/lib/users/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { postUserCreate } from '@root/lib/users/postUserCreate'; import { InvalidInputError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; import { optimism } from 'viem/chains'; import { trackOpSpaceClickSigninEvent } from '../metrics/mixpanel/trackOpSpaceSigninEvent'; diff --git a/lib/gnosis/index.ts b/lib/gnosis/index.ts deleted file mode 100644 index d34c2e4809..0000000000 --- a/lib/gnosis/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './gnosis'; diff --git a/lib/google/__tests__/connectGoogleAccount.spec.ts b/lib/google/__tests__/connectGoogleAccount.spec.ts index 11aefe96d4..b483309852 100644 --- a/lib/google/__tests__/connectGoogleAccount.spec.ts +++ b/lib/google/__tests__/connectGoogleAccount.spec.ts @@ -1,5 +1,5 @@ import { prisma } from '@charmverse/core/prisma-client'; -import { getUserProfile } from '@root/lib/users/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import { uid } from '@root/lib/utils/strings'; import { v4 } from 'uuid'; diff --git a/lib/google/__tests__/loginWithMagicLink.spec.ts b/lib/google/__tests__/loginWithMagicLink.spec.ts index ec38fbae93..a6f91ebd8f 100644 --- a/lib/google/__tests__/loginWithMagicLink.spec.ts +++ b/lib/google/__tests__/loginWithMagicLink.spec.ts @@ -1,7 +1,7 @@ import { InvalidInputError } from '@charmverse/core/errors'; import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsUser } from '@charmverse/core/test'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { v4 as uuid } from 'uuid'; import { generateUserAndSpace } from 'testing/setupDatabase'; diff --git a/lib/google/connectGoogleAccount.ts b/lib/google/connectGoogleAccount.ts index 2a369467e2..fdea363ea4 100644 --- a/lib/google/connectGoogleAccount.ts +++ b/lib/google/connectGoogleAccount.ts @@ -1,11 +1,11 @@ import { prisma } from '@charmverse/core/prisma-client'; import type { LoginWithGoogleRequest } from '@root/lib/google/loginWithGoogle'; import { checkUserSpaceBanStatus } from '@root/lib/members/checkUserSpaceBanStatus'; -import { getUserProfile } from '@root/lib/users/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { softDeleteUserWithoutConnectableIdentities } from '@root/lib/users/softDeleteUserWithoutConnectableIdentities'; import { updateUsedIdentity } from '@root/lib/users/updateUsedIdentity'; import { InvalidInputError, MissingDataError, UnauthorisedActionError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; import { verifyGoogleToken } from './verifyGoogleToken'; diff --git a/lib/google/connectGoogleAccountWithCode.ts b/lib/google/connectGoogleAccountWithCode.ts index e2300f346e..1c5ea9e5a0 100644 --- a/lib/google/connectGoogleAccountWithCode.ts +++ b/lib/google/connectGoogleAccountWithCode.ts @@ -2,8 +2,8 @@ import { googleOAuthClientIdSensitive } from '@root/config/constants'; import { getClient } from '@root/lib/google/authorization/authClient'; import { connectGoogleAccount } from '@root/lib/google/connectGoogleAccount'; import { getCallbackDomain } from '@root/lib/oauth/getCallbackDomain'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { InvalidInputError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export type ConnectAccountRequest = { code: string; diff --git a/lib/google/disconnectGoogleAccount.ts b/lib/google/disconnectGoogleAccount.ts index 7f30d2ec96..f7f054b00e 100644 --- a/lib/google/disconnectGoogleAccount.ts +++ b/lib/google/disconnectGoogleAccount.ts @@ -1,8 +1,8 @@ import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import { updateUsedIdentity } from '@root/lib/users/updateUsedIdentity'; import { InvalidInputError, MissingDataError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export type DisconnectGoogleAccountRequest = { userId: string; diff --git a/lib/google/disconnectVerifiedEmail.ts b/lib/google/disconnectVerifiedEmail.ts index ed7eea303c..a35d1c7872 100644 --- a/lib/google/disconnectVerifiedEmail.ts +++ b/lib/google/disconnectVerifiedEmail.ts @@ -1,8 +1,8 @@ import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import { updateUsedIdentity } from '@root/lib/users/updateUsedIdentity'; import { InvalidInputError, MissingDataError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export type EmailAccountDisconnect = { email: string; diff --git a/lib/google/loginWithGoogle.ts b/lib/google/loginWithGoogle.ts index df93f51de6..7076f5e0ff 100644 --- a/lib/google/loginWithGoogle.ts +++ b/lib/google/loginWithGoogle.ts @@ -4,12 +4,12 @@ import type { GoogleLoginOauthParams } from '@root/lib/google/authorization/auth import type { SignupAnalytics } from '@root/lib/metrics/mixpanel/interfaces/UserEvent'; import { trackUserAction } from '@root/lib/metrics/mixpanel/trackUserAction'; import { updateTrackUserProfile } from '@root/lib/metrics/mixpanel/updateTrackUserProfile'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; -import { getUserProfile } from '@root/lib/users/getUser'; import { postUserCreate } from '@root/lib/users/postUserCreate'; import { DisabledAccountError, InsecureOperationError, InvalidInputError, SystemError } from '@root/lib/utils/errors'; import { uid } from '@root/lib/utils/strings'; -import type { LoggedInUser } from '@root/models'; import { trackOpSpaceClickSigninEvent } from '../metrics/mixpanel/trackOpSpaceSigninEvent'; diff --git a/lib/google/loginWithGoogleCode.ts b/lib/google/loginWithGoogleCode.ts index eacff3518e..6e90053531 100644 --- a/lib/google/loginWithGoogleCode.ts +++ b/lib/google/loginWithGoogleCode.ts @@ -4,8 +4,8 @@ import { getClient } from '@root/lib/google/authorization/authClient'; import { loginWithGoogle } from '@root/lib/google/loginWithGoogle'; import type { SignupAnalytics } from '@root/lib/metrics/mixpanel/interfaces/UserEvent'; import { getCallbackDomain } from '@root/lib/oauth/getCallbackDomain'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { InvalidInputError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; export type LoginWithGoogleRequest = { code: string; diff --git a/lib/google/loginWithMagicLink.ts b/lib/google/loginWithMagicLink.ts index 2d5b4a603f..d87ed6ee8a 100644 --- a/lib/google/loginWithMagicLink.ts +++ b/lib/google/loginWithMagicLink.ts @@ -3,9 +3,9 @@ import { prisma } from '@charmverse/core/prisma-client'; import { stringUtils } from '@charmverse/core/utilities'; import { firebaseApp } from '@root/lib/google/firebaseApp'; import { checkUserSpaceBanStatus } from '@root/lib/members/checkUserSpaceBanStatus'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; -import { getUserProfile } from '@root/lib/users/getUser'; -import type { LoggedInUser } from '@root/models'; import type { LoginWithGoogleRequest } from './loginWithGoogle'; diff --git a/lib/invites/acceptInvite.ts b/lib/invites/acceptInvite.ts index f3723a79c9..a24333c18a 100644 --- a/lib/invites/acceptInvite.ts +++ b/lib/invites/acceptInvite.ts @@ -6,7 +6,7 @@ import { joinSpace } from '@root/lib/spaces/joinSpace'; import { trackOpUserAction } from '../metrics/mixpanel/trackOpUserAction'; import { updateTrackOpUserProfile } from '../metrics/mixpanel/updateTrackOpUserProfile'; -import { getUserProfile } from '../users/getUser'; +import { getUserProfile } from '../profile/getUser'; import { validateInviteLink } from './validateInviteLink'; diff --git a/lib/mailer/emails/templates/components/Button.tsx b/lib/mailer/emails/templates/components/Button.tsx index 8930409239..def81e9468 100644 --- a/lib/mailer/emails/templates/components/Button.tsx +++ b/lib/mailer/emails/templates/components/Button.tsx @@ -1,8 +1,7 @@ import type { LinkProps } from '@react-email/link'; +import { charmBlue as blueColor } from '@root/config/colors'; import type { ReactNode } from 'react'; -import { blueColor } from 'theme/colors'; - import Link from './Link'; import Text from './Text'; diff --git a/lib/mailer/emails/templates/components/EmailWrapper.tsx b/lib/mailer/emails/templates/components/EmailWrapper.tsx index 8573613c39..1533136e3d 100644 --- a/lib/mailer/emails/templates/components/EmailWrapper.tsx +++ b/lib/mailer/emails/templates/components/EmailWrapper.tsx @@ -2,10 +2,9 @@ import { Head } from '@react-email/head'; import { Html } from '@react-email/html'; import { Preview } from '@react-email/preview'; import { Section } from '@react-email/section'; +import { lightGreyColor } from '@root/theme/colors'; import React from 'react'; -import { lightGreyColor } from 'theme/colors'; - import Footer from './Footer'; import Header from './Header'; diff --git a/lib/mailer/emails/templates/components/Link.tsx b/lib/mailer/emails/templates/components/Link.tsx index b53154f2e2..48d56c55d0 100644 --- a/lib/mailer/emails/templates/components/Link.tsx +++ b/lib/mailer/emails/templates/components/Link.tsx @@ -1,9 +1,8 @@ import type { LinkProps } from '@react-email/link'; import { Link as ReactEmailLink } from '@react-email/link'; +import { charmBlue as blueColor } from '@root/config/colors'; import type { ReactNode } from 'react'; -import { blueColor } from 'theme/colors'; - export default function Link({ primaryColor = blueColor, children, diff --git a/lib/mailer/emails/templates/components/Text.tsx b/lib/mailer/emails/templates/components/Text.tsx index 9545ef2a22..5c582dae08 100644 --- a/lib/mailer/emails/templates/components/Text.tsx +++ b/lib/mailer/emails/templates/components/Text.tsx @@ -1,9 +1,8 @@ import type { TextProps } from '@react-email/text'; import { Text as ReactEmailText } from '@react-email/text'; +import { blueColor, primaryTextColor, secondaryTextColor } from '@root/theme/colors'; import type { CSSProperties, ReactNode } from 'react'; -import { blueColor, primaryTextColor, secondaryTextColor } from 'theme/colors'; - // copied from theme/fonts.ts because next/fonts doesnt play well with tsx or ts-node. TODO: maybe remove next/fonts? const defaultFont = 'ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol"'; diff --git a/lib/members/__tests__/getSpaceMemberRoles.spec.ts b/lib/members/__tests__/getSpaceMemberRoles.spec.ts index 3afcbf7e52..b6eaba6a57 100644 --- a/lib/members/__tests__/getSpaceMemberRoles.spec.ts +++ b/lib/members/__tests__/getSpaceMemberRoles.spec.ts @@ -1,7 +1,7 @@ import type { Space, User } from '@charmverse/core/prisma'; import { getSpaceMemberMetadata } from '@root/lib/members/getSpaceMemberMetadata'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { assignRole } from '@root/lib/roles'; -import type { LoggedInUser } from '@root/models'; import { generateRole, generateUserAndSpace } from 'testing/setupDatabase'; import { addUserToSpace, generateSpaceForUser } from 'testing/utils/spaces'; diff --git a/lib/members/__tests__/getSpacesPropertyValues.spec.ts b/lib/members/__tests__/getSpacesPropertyValues.spec.ts index 9d9716ca70..7bdd510685 100644 --- a/lib/members/__tests__/getSpacesPropertyValues.spec.ts +++ b/lib/members/__tests__/getSpacesPropertyValues.spec.ts @@ -1,6 +1,6 @@ import type { MemberProperty, Space } from '@charmverse/core/prisma'; import { getSpacesPropertyValues } from '@root/lib/members/getSpacesPropertyValues'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { v4 } from 'uuid'; import { generateUserAndSpaceWithApiToken } from 'testing/setupDatabase'; diff --git a/lib/members/__tests__/updateMemberPropertyVisibility.spec.ts b/lib/members/__tests__/updateMemberPropertyVisibility.spec.ts index b82508f93d..d7f5e1181c 100644 --- a/lib/members/__tests__/updateMemberPropertyVisibility.spec.ts +++ b/lib/members/__tests__/updateMemberPropertyVisibility.spec.ts @@ -1,7 +1,7 @@ import type { MemberProperty, Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { UndesirableOperationError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; import { generateUserAndSpaceWithApiToken } from 'testing/setupDatabase'; import { generateMemberProperty } from 'testing/utils/members'; diff --git a/lib/members/getMemberUsername.ts b/lib/members/getMemberUsername.ts index fe5bbdc196..78c52aea49 100644 --- a/lib/members/getMemberUsername.ts +++ b/lib/members/getMemberUsername.ts @@ -3,7 +3,7 @@ import { prisma } from '@charmverse/core/prisma-client'; import type { DiscordAccount } from '@root/lib/discord/client/getDiscordAccount'; import { shortenHex } from '@root/lib/utils/blockchain'; -import type { TelegramAccount } from 'pages/api/telegram/connect'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; export type UserIdentities = { username: string; diff --git a/lib/members/getMembersExportData.ts b/lib/members/getMembersExportData.ts index fb141d79ae..55188ac384 100644 --- a/lib/members/getMembersExportData.ts +++ b/lib/members/getMembersExportData.ts @@ -4,7 +4,7 @@ import type { SelectOptionType } from '@root/lib/forms/interfaces'; import { getAllMemberPropertiesBySpace } from '@root/lib/members/getAccessibleMemberPropertiesBySpace'; import { getSpaceMembers } from '@root/lib/members/getSpaceMembers'; -import type { TelegramAccount } from 'pages/api/telegram/connect'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; export async function getMembersExportData(spaceId: string) { const members = await getSpaceMembers({ spaceId, skipAccessCheck: true }); diff --git a/lib/members/getSpaceMembers.ts b/lib/members/getSpaceMembers.ts index c16c8c2184..2b6138e1aa 100644 --- a/lib/members/getSpaceMembers.ts +++ b/lib/members/getSpaceMembers.ts @@ -13,7 +13,7 @@ import { getPropertiesWithValues } from '@root/lib/members/utils'; import { hasNftAvatar } from '@root/lib/users/hasNftAvatar'; import { replaceS3Domain } from '@root/lib/utils/url'; -import type { TelegramAccount } from 'pages/api/telegram/connect'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; import type { UserIdentities } from './getMemberUsername'; import { getMemberUsername } from './getMemberUsername'; diff --git a/lib/members/getSpacesPropertyValues.ts b/lib/members/getSpacesPropertyValues.ts index 2518f0bd67..55266ce4b6 100644 --- a/lib/members/getSpacesPropertyValues.ts +++ b/lib/members/getSpacesPropertyValues.ts @@ -6,7 +6,7 @@ import { getSpaceMemberMetadata } from '@root/lib/members/getSpaceMemberMetadata import type { CommonSpacesInput, MemberPropertyValuesBySpace } from '@root/lib/members/interfaces'; import { getPropertiesWithValues, groupPropertyValuesBySpace } from '@root/lib/members/utils'; -import type { TelegramAccount } from 'pages/api/telegram/connect'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; export async function getSpacesPropertyValues({ memberId, diff --git a/lib/metrics/mixpanel/updateTrackOpUserProfile.ts b/lib/metrics/mixpanel/updateTrackOpUserProfile.ts index c35fa4b6a3..141f9d9400 100644 --- a/lib/metrics/mixpanel/updateTrackOpUserProfile.ts +++ b/lib/metrics/mixpanel/updateTrackOpUserProfile.ts @@ -1,5 +1,5 @@ import { log } from '@charmverse/core/log'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { mixpanelOp } from './mixpanel'; diff --git a/lib/metrics/mixpanel/updateTrackUserProfile.ts b/lib/metrics/mixpanel/updateTrackUserProfile.ts index 9fe73df2d4..f19ab0384d 100644 --- a/lib/metrics/mixpanel/updateTrackUserProfile.ts +++ b/lib/metrics/mixpanel/updateTrackUserProfile.ts @@ -1,7 +1,7 @@ import { log } from '@charmverse/core/log'; import type { Prisma, Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { mixpanel } from './mixpanel'; diff --git a/lib/metrics/mixpanel/updateTrackUserProfileById.ts b/lib/metrics/mixpanel/updateTrackUserProfileById.ts index 873ca9a2f9..d1b990ce96 100644 --- a/lib/metrics/mixpanel/updateTrackUserProfileById.ts +++ b/lib/metrics/mixpanel/updateTrackUserProfileById.ts @@ -1,4 +1,4 @@ -import { getUserProfile } from '@root/lib/users/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import { updateTrackUserProfile } from './updateTrackUserProfile'; diff --git a/lib/notifications/mailer/sendNotificationEmail.ts b/lib/notifications/mailer/sendNotificationEmail.ts index 9dfecbb7bc..1b4033ba61 100644 --- a/lib/notifications/mailer/sendNotificationEmail.ts +++ b/lib/notifications/mailer/sendNotificationEmail.ts @@ -1,5 +1,6 @@ import type { User } from '@charmverse/core/prisma-client'; import { prisma } from '@charmverse/core/prisma-client'; +import { charmBlue as blueColor } from '@root/config/colors'; import type { FeatureJson } from '@root/lib/features/constants'; import * as mailer from '@root/lib/mailer'; import * as emails from '@root/lib/mailer/emails'; @@ -13,8 +14,6 @@ import { getProposalNotifications } from '@root/lib/notifications/proposals/getP import { getBountyNotifications } from '@root/lib/notifications/rewards/getRewardNotifications'; import type { MessagesSendResult } from 'mailgun.js'; -import { blueColor } from 'theme/colors'; - const notificationSelectFields = { notificationMetadata: { select: { user: { select: { id: true, email: true, username: true, emailNotifications: true, avatar: true } } } diff --git a/lib/notion/__tests__/NotionImport.spec.ts b/lib/notion/__tests__/NotionImport.spec.ts index c4458f92a9..a1d0d74cd7 100644 --- a/lib/notion/__tests__/NotionImport.spec.ts +++ b/lib/notion/__tests__/NotionImport.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable camelcase */ import type { Space } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { v4 } from 'uuid'; import { generateUserAndSpaceWithApiToken } from 'testing/setupDatabase'; diff --git a/lib/pages/addPage.ts b/lib/pages/addPage.ts index 4ecbbd3da3..cab63d8d43 100644 --- a/lib/pages/addPage.ts +++ b/lib/pages/addPage.ts @@ -6,7 +6,6 @@ import type { BoardView } from '@root/lib/databases/boardView'; import type { Card } from '@root/lib/databases/card'; import { createTableView } from '@root/lib/databases/tableView'; import type { PageCreated } from '@root/lib/websockets/interfaces'; -import type { NextRouter } from 'next/router'; import { mutate } from 'swr'; import { v4 } from 'uuid'; diff --git a/lib/pages/index.ts b/lib/pages/index.ts index ddaa2be663..5a34a4a251 100644 --- a/lib/pages/index.ts +++ b/lib/pages/index.ts @@ -1,3 +1,2 @@ -export * from './addPage'; export * from './interfaces'; export * from './utils'; diff --git a/lib/profile/__tests__/getAggregatedData.spec.ts b/lib/profile/__tests__/getAggregatedData.spec.ts index 532bb76e50..a69863b741 100644 --- a/lib/profile/__tests__/getAggregatedData.spec.ts +++ b/lib/profile/__tests__/getAggregatedData.spec.ts @@ -1,8 +1,8 @@ import type { Space, SpaceRole } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; import { getAggregatedData } from '@root/lib/profile'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { randomETHWalletAddress } from '@root/lib/utils/blockchain'; -import type { LoggedInUser } from '@root/models'; import fetchMock from 'fetch-mock-jest'; import { generateBountyWithSingleApplication, generateUserAndSpaceWithApiToken } from 'testing/setupDatabase'; diff --git a/lib/users/getUser.ts b/lib/profile/getUser.ts similarity index 59% rename from lib/users/getUser.ts rename to lib/profile/getUser.ts index 7b3fe92e87..46bdb76456 100644 --- a/lib/users/getUser.ts +++ b/lib/profile/getUser.ts @@ -1,8 +1,45 @@ -import type { Prisma } from '@charmverse/core/prisma'; +import type { + Prisma, + DiscordUser, + FarcasterUser, + GoogleAccount, + Role as RoleMembership, + SpaceRole, + SpaceRoleToRole, + TelegramUser, + User, + UserNotificationState, + UserWallet, + VerifiedEmail +} from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; import { sessionUserRelations } from '@root/lib/session/config'; import { InvalidInputError, MissingDataError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; + +interface NestedMemberships { + spaceRoleToRole: (SpaceRoleToRole & { role: RoleMembership })[]; +} + +export interface LoggedInUser extends User { + favorites: { pageId: string; index?: number }[]; + spaceRoles: (SpaceRole & NestedMemberships)[]; + wallets: Pick[]; + googleAccounts: Pick[]; + verifiedEmails: Pick[]; + ensName?: string; + discordUser?: DiscordUser | null; + telegramUser?: TelegramUser | null; + farcasterUser?: FarcasterUser | null; + notificationState?: UserNotificationState | null; + isNew?: boolean; + otp?: { + activatedAt: Date | null; + } | null; + profile?: { + timezone?: string | null; + locale?: string | null; + } | null; +} export async function getUserProfile( key: 'id' | 'addresses', diff --git a/lib/profile/updateProfileAvatar.ts b/lib/profile/updateProfileAvatar.ts index 8b17b00f0c..296ccfdfe5 100644 --- a/lib/profile/updateProfileAvatar.ts +++ b/lib/profile/updateProfileAvatar.ts @@ -2,11 +2,11 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; import { getUserS3FilePath, uploadUrlToS3 } from '@root/lib/aws/uploadToS3Server'; import { getNFT, verifyNFTOwner } from '@root/lib/blockchain/getNFTs'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import type { UserAvatar } from '@root/lib/users/interfaces'; import { InvalidInputError } from '@root/lib/utils/errors'; import { getFilenameWithExtension } from '@root/lib/utils/getFilenameWithExtension'; -import type { LoggedInUser } from '@root/models'; export async function updateProfileAvatar({ avatar, diff --git a/lib/projects/getDefaultProjectValues.ts b/lib/projects/getDefaultProjectValues.ts index 2e4ddb3a36..9ac5427992 100644 --- a/lib/projects/getDefaultProjectValues.ts +++ b/lib/projects/getDefaultProjectValues.ts @@ -1,5 +1,5 @@ import type { Member } from '@root/lib/members/interfaces'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { createDefaultProject, defaultProjectMember } from './constants'; import type { ProjectAndMembersPayload } from './interfaces'; diff --git a/lib/proposals/documentsToSign/addEnvelopeToEvaluation.ts b/lib/proposals/documentsToSign/addEnvelopeToEvaluation.ts index 0891cf83cb..6d809b5fd2 100644 --- a/lib/proposals/documentsToSign/addEnvelopeToEvaluation.ts +++ b/lib/proposals/documentsToSign/addEnvelopeToEvaluation.ts @@ -2,7 +2,7 @@ import { InvalidInputError } from '@charmverse/core/errors'; import { prisma } from '@charmverse/core/prisma-client'; import { getEnvelope } from '@root/lib/docusign/api'; import { getSpaceDocusignCredentials } from '@root/lib/docusign/getSpaceDocusignCredentials'; -import { userByEmailOrGoogleAccountQuery } from '@root/lib/users/getUser'; +import { userByEmailOrGoogleAccountQuery } from '@root/lib/profile/getUser'; import { lowerCaseEqual } from '@root/lib/utils/strings'; import type { DocumentWithSigners } from './getProposalDocumentsToSign'; diff --git a/lib/proposals/workflows/__tests__/upsertWorkflowTemplate.spec.ts b/lib/proposals/workflows/__tests__/upsertWorkflowTemplate.spec.ts index 63f1e461f5..c0d0b43ef7 100644 --- a/lib/proposals/workflows/__tests__/upsertWorkflowTemplate.spec.ts +++ b/lib/proposals/workflows/__tests__/upsertWorkflowTemplate.spec.ts @@ -1,4 +1,3 @@ -import type { ProposalEvaluationTestInput } from '@charmverse/core/dist/cjs/lib/testing/proposals'; import type { Space, User } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; import type { WorkflowEvaluationJson } from '@charmverse/core/proposals'; @@ -197,7 +196,7 @@ describe('Saving space workflows', () => { ] }); - const evaluationInputs: ProposalEvaluationTestInput[] = [ + const evaluationInputs: testUtilsProposals.GenerateProposalInput['evaluationInputs'] = [ { title: 'Review', evaluationType: 'pass_fail', diff --git a/lib/telegram/interfaces.ts b/lib/telegram/interfaces.ts new file mode 100644 index 0000000000..c6534872c4 --- /dev/null +++ b/lib/telegram/interfaces.ts @@ -0,0 +1,9 @@ +export type TelegramAccount = { + auth_date: number; + first_name: string; + hash: string; + id: number; + last_name: string; + photo_url: string; + username: string; +}; diff --git a/lib/users/__tests__/getUserProfile.spec.ts b/lib/users/__tests__/getUserProfile.spec.ts index 544b7e5109..26d7994094 100644 --- a/lib/users/__tests__/getUserProfile.spec.ts +++ b/lib/users/__tests__/getUserProfile.spec.ts @@ -1,11 +1,11 @@ import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import { InvalidInputError, MissingDataError } from '@root/lib/utils/errors'; import { uid } from '@root/lib/utils/strings'; -import type { LoggedInUser } from '@root/models'; import { v4 } from 'uuid'; -import { getUserProfile } from '../getUser'; +import { getUserProfile } from '../../profile/getUser'; let user: LoggedInUser; const walletAddress = `0x${v4()}`; diff --git a/lib/users/countConnectableIdentities.ts b/lib/users/countConnectableIdentities.ts index 672a8f24f7..0a2596777d 100644 --- a/lib/users/countConnectableIdentities.ts +++ b/lib/users/countConnectableIdentities.ts @@ -1,4 +1,4 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; export function countConnectableIdentities(user: LoggedInUser): number { let count = 0; diff --git a/lib/users/createUser.ts b/lib/users/createUser.ts index 05089cb4ba..521751445e 100644 --- a/lib/users/createUser.ts +++ b/lib/users/createUser.ts @@ -3,14 +3,15 @@ import { prisma } from '@charmverse/core/prisma-client'; import { getENSName } from '@root/lib/blockchain/getENSName'; import type { SignupAnalytics } from '@root/lib/metrics/mixpanel/interfaces/UserEvent'; import { logSignupViaWallet } from '@root/lib/metrics/postToDiscord'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { isProfilePathAvailable } from '@root/lib/profile/isProfilePathAvailable'; import { sessionUserRelations } from '@root/lib/session/config'; import { shortWalletAddress } from '@root/lib/utils/blockchain'; import { uid } from '@root/lib/utils/strings'; -import type { LoggedInUser } from '@root/models'; import { v4 } from 'uuid'; -import { getUserProfile } from './getUser'; +import { getUserProfile } from '../profile/getUser'; + import { postUserCreate } from './postUserCreate'; import { prepopulateUserProfile } from './prepopulateUserProfile'; diff --git a/lib/users/isSpaceAdmin.ts b/lib/users/isSpaceAdmin.ts index 2536cef189..8e8b85ffb2 100644 --- a/lib/users/isSpaceAdmin.ts +++ b/lib/users/isSpaceAdmin.ts @@ -1,4 +1,4 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; export default function isSpaceAdmin(user?: LoggedInUser | null, spaceId?: string): boolean { return !!spaceId && !!user && user.spaceRoles.some((role) => role.isAdmin === true && role.spaceId === spaceId); diff --git a/lib/users/postUserCreate.ts b/lib/users/postUserCreate.ts index 7e12c10782..53edc851ae 100644 --- a/lib/users/postUserCreate.ts +++ b/lib/users/postUserCreate.ts @@ -2,8 +2,8 @@ import type { IdentityType } from '@charmverse/core/prisma'; import type { SignupAnalytics } from '@root/lib/metrics/mixpanel/interfaces/UserEvent'; import { trackUserAction } from '@root/lib/metrics/mixpanel/trackUserAction'; import { updateTrackUserProfile } from '@root/lib/metrics/mixpanel/updateTrackUserProfile'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { processSignupReferral } from '@root/lib/users/processSignupReferral'; -import type { LoggedInUser } from '@root/models'; export async function postUserCreate({ user, diff --git a/lib/users/softDeleteUserWithoutConnectableIdentities.ts b/lib/users/softDeleteUserWithoutConnectableIdentities.ts index 7b91587125..cbada63cbe 100644 --- a/lib/users/softDeleteUserWithoutConnectableIdentities.ts +++ b/lib/users/softDeleteUserWithoutConnectableIdentities.ts @@ -2,8 +2,9 @@ import { log } from '@charmverse/core/log'; import type { Prisma } from '@charmverse/core/prisma-client'; import { prisma } from '@charmverse/core/prisma-client'; +import { getUserProfile } from '../profile/getUser'; + import { countConnectableIdentities } from './countConnectableIdentities'; -import { getUserProfile } from './getUser'; export async function softDeleteUserWithoutConnectableIdentities({ userId, diff --git a/lib/users/updateUsedIdentity.ts b/lib/users/updateUsedIdentity.ts index 73dba04dd0..7795d3cbd9 100644 --- a/lib/users/updateUsedIdentity.ts +++ b/lib/users/updateUsedIdentity.ts @@ -1,12 +1,12 @@ import type { Prisma } from '@charmverse/core/prisma'; import { IdentityType } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import { matchWalletAddress, shortWalletAddress } from '@root/lib/utils/blockchain'; import { InsecureOperationError, InvalidInputError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; -import { getUserProfile } from './getUser'; +import { getUserProfile } from '../profile/getUser'; export type IdentityUpdate = { displayName: string; diff --git a/lib/users/updateUserProfile.ts b/lib/users/updateUserProfile.ts index a55bad6ec7..99135f5c5c 100644 --- a/lib/users/updateUserProfile.ts +++ b/lib/users/updateUserProfile.ts @@ -1,11 +1,12 @@ import { log } from '@charmverse/core/log'; import type { User } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import { sessionUserRelations } from '@root/lib/session/config'; import { MissingDataError } from '@root/lib/utils/errors'; -import type { LoggedInUser } from '@root/models'; -import { getUserProfile } from './getUser'; +import { getUserProfile } from '../profile/getUser'; + import { updateUsedIdentity } from './updateUsedIdentity'; export async function updateUserProfile(userId: string, update: Partial): Promise { diff --git a/lib/utils/emoji.ts b/lib/utils/emoji.ts new file mode 100644 index 0000000000..12e780a835 --- /dev/null +++ b/lib/utils/emoji.ts @@ -0,0 +1,22 @@ +import { log } from '@charmverse/core/log'; +import twemoji from 'twemoji'; + +import { isMac } from './browser'; + +// Use system font for Mac OS, but Twitter emojis for everyone else +export function getTwitterEmoji(emoji: string): string | null { + if (isMac() || !emoji) return null; + try { + const html = twemoji.parse(emoji, { + // the original maxCDN went down Jan 11, 2023 + base: 'https://cdn.jsdelivr.net/gh/twitter/twemoji@14.0.2/assets/', + folder: 'svg', + ext: '.svg' + }) as string; + const match = / = { id: string } & T; diff --git a/marketing-site/README.md b/marketing-site/README.md deleted file mode 100644 index b60bbe0c84..0000000000 --- a/marketing-site/README.md +++ /dev/null @@ -1,11 +0,0 @@ -## Marketing site folder - -This folder holds the code used on our marketing site, hosted on www.charmverse.io and managed by Wix. - -Unless indicated otherwise, these code snippets are used in the custom code snippets of the Wix site. - -When making any updates to Wix, you should update the corresponding snippet here, so we have a record. - -## Wix practices - -- All links to CharmVerse should have the "norefferer" option unticked. Otherwise, our app site will not know it received marketing site as a referrer. diff --git a/marketing-site/analytics.html b/marketing-site/analytics.html deleted file mode 100644 index fe61b87947..0000000000 --- a/marketing-site/analytics.html +++ /dev/null @@ -1,38 +0,0 @@ - - diff --git a/models/User.ts b/models/User.ts deleted file mode 100644 index b22cad51d1..0000000000 --- a/models/User.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { - DiscordUser, - FarcasterUser, - GoogleAccount, - Role as RoleMembership, - SpaceRole, - SpaceRoleToRole, - TelegramUser, - User, - UserNotificationState, - UserWallet, - VerifiedEmail -} from '@charmverse/core/prisma'; - -interface NestedMemberships { - spaceRoleToRole: (SpaceRoleToRole & { role: RoleMembership })[]; -} - -export interface LoggedInUser extends User { - favorites: { pageId: string; index?: number }[]; - spaceRoles: (SpaceRole & NestedMemberships)[]; - wallets: Pick[]; - googleAccounts: Pick[]; - verifiedEmails: Pick[]; - ensName?: string; - discordUser?: DiscordUser | null; - telegramUser?: TelegramUser | null; - farcasterUser?: FarcasterUser | null; - notificationState?: UserNotificationState | null; - isNew?: boolean; - otp?: { - activatedAt: Date | null; - } | null; - profile?: { - timezone?: string | null; - locale?: string | null; - } | null; -} diff --git a/models/index.ts b/models/index.ts deleted file mode 100644 index f6b9f36c6e..0000000000 --- a/models/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './User'; diff --git a/package-lock.json b/package-lock.json index cb518eb3ba..c532ecb15d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,11 +28,8 @@ "@bangle.dev/pm-commands": "^0.31.6", "@bangle.dev/utils": "^0.31.6", "@beam-australia/react-env": "^3.1.1", - "@ceramicnetwork/http-client": "^5.6.0", "@charmverse/core": "^0.81.4", "@column-resizer/core": "^1.0.2", - "@composedb/devtools": "^0.7.1", - "@composedb/devtools-node": "^0.7.1", "@datadog/browser-logs": "^4.42.2", "@datadog/browser-rum": "^4.42.2", "@delegatexyz/sdk": "^0.5.2", @@ -129,7 +126,6 @@ "cryptr": "^6.1.0", "csv": "^6.3.3", "dd-trace": "^5.2.0", - "dids": "^4.0.4", "diff": "^5.1.0", "emoji-mart": "^3.0.1", "ethers": "^5.7.2", @@ -148,8 +144,6 @@ "iron-session": "^8.0.1", "jose": "^4.15.5", "jszip": "^3.10.1", - "key-did-provider-ed25519": "^3.0.2", - "key-did-resolver": "^3.0.0", "koa": "^2.15.3", "koa-router": "^12.0.1", "lodash": "^4.17.21", @@ -167,7 +161,6 @@ "next-bundle-analyzer": "^0.6.8", "next-connect": "^0.13.0", "next-swagger-doc": "^0.3.6", - "node-cron": "^3.0.0", "octokit": "^3.2.0", "otpauth": "^9.2.1", "papaparse": "^5.3.2", @@ -242,7 +235,6 @@ "zksync-web3": "^0.16.0" }, "devDependencies": { - "@ceramicnetwork/streamid": "^3.2.0", "@depay/web3-mock": "^13.18.1", "@graphql-codegen/typescript-react-apollo": "^4.1.0", "@next/eslint-plugin-next": "^14.2.5", @@ -283,7 +275,6 @@ "@types/marked": "^4.0.2", "@types/nanoid-dictionary": "^4.2.3", "@types/node": "^20.6.3", - "@types/node-cron": "^3.0.1", "@types/papaparse": "^5.3.5", "@types/promise-retry": "^1.1.3", "@types/qrcode": "^1.5.5", @@ -329,7 +320,6 @@ "lint-staged": "^12.3.2", "msw": "^2.2.14", "node-mocks-http": "^1.14.1", - "ora": "^8.0.1", "patch-package": "^8.0.0", "pino-pretty": "^11.2.2", "playwright": "^1.42.1", @@ -371,6 +361,110 @@ "version": "0.1.0", "extraneous": true }, + "apps/ceramic": { + "dependencies": { + "@ceramicnetwork/http-client": "^5.16.0", + "@ceramicnetwork/streamid": "^3.4.1", + "@composedb/devtools-node": "^0.7.1", + "dids": "^4.0.4", + "key-did-provider-ed25519": "^3.0.2", + "key-did-resolver": "^3.0.0", + "ora": "^8.1.0" + } + }, + "apps/ceramic/node_modules/@ceramicnetwork/http-client": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/http-client/-/http-client-5.16.0.tgz", + "integrity": "sha512-5oUim/t/nxzSXRJdEAhVtm+1ymCXOg5skVgzgR6BC8wkXE/qIorHBxLyWSo00F0Q7T0Z5HsqmQpexcw/ThIGnA==", + "dependencies": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-caip10-link": "^5.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/stream-model-instance": "^4.16.0", + "@ceramicnetwork/stream-tile": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", + "@scarf/scarf": "^1.1.1", + "query-string": "^7.1.0", + "rxjs": "^7.8.1" + } + }, + "apps/ceramic/node_modules/@ceramicnetwork/http-client/node_modules/@ceramicnetwork/streamid": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/sha256": "^1.0.1", + "cborg": "^4.0.8", + "mapmoize": "^1.2.1", + "multiformats": "~13.1.3", + "uint8arrays": "^5.0.1", + "varint": "^6.0.0" + } + }, + "apps/ceramic/node_modules/@ceramicnetwork/http-client/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, + "apps/ceramic/node_modules/cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", + "bin": { + "cborg": "lib/bin.js" + } + }, + "apps/ceramic/node_modules/key-did-resolver": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", + "integrity": "sha512-IyEq64AdS6lUwtn3YSvGpu7KAGA2x5+fjRCUIa8+ccSLmWrODV/ICM5aa6hHV/19EPWef8/e322r9sQJJ6/3qA==", + "dependencies": { + "@stablelib/ed25519": "^1.0.2", + "bigint-mod-arith": "^3.1.0", + "multiformats": "^11.0.1", + "nist-weierstrauss": "^1.6.1", + "uint8arrays": "^4.0.3", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "apps/ceramic/node_modules/key-did-resolver/node_modules/uint8arrays": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", + "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", + "dependencies": { + "multiformats": "^12.0.1" + } + }, + "apps/ceramic/node_modules/key-did-resolver/node_modules/uint8arrays/node_modules/multiformats": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", + "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "apps/ceramic/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "apps/ceramic/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, "apps/comingsoon": { "version": "0.1.0", "dependencies": { @@ -769,6 +863,15 @@ "serwist": "^9.0.5" } }, + "apps/cron": { + "version": "1.0.0", + "dependencies": { + "node-cron": "^3.0.3" + }, + "devDependencies": { + "@types/node-cron": "^3.0.11" + } + }, "apps/farcaster": { "version": "0.1.0", "dependencies": { @@ -1207,6 +1310,12 @@ "apps/waitlist": { "version": "0.1.0" }, + "apps/websockets": { + "version": "1.0.0", + "dependencies": { + "@packages/charmeditor": "^1.0.0" + } + }, "node_modules/@adobe/css-tools": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.2.tgz", @@ -5070,11 +5179,11 @@ } }, "node_modules/@ceramicnetwork/anchor-listener": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-listener/-/anchor-listener-4.5.0.tgz", - "integrity": "sha512-m2Z9v0ZHsAETEKJQh+lpgzW3IpBFif/V35qPmW+JWtWXlnm3HA87kgY/1xnZ22wQdvQCEfEuiLaGnAC2yvuTGg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-listener/-/anchor-listener-4.15.0.tgz", + "integrity": "sha512-IM5Im3/ySHHOSbSXdOO0dY/wwkp8kGMeTlaZ6ruHaPmMx7CP5V6UZ3n5wlhbC5YFlBERU+gQtboqBQqfaTOsoQ==", "dependencies": { - "@ceramicnetwork/anchor-utils": "^4.5.0", + "@ceramicnetwork/anchor-utils": "^4.15.0", "@ethersproject/providers": "^5.5.1", "rxjs": "^7.8.1" } @@ -5088,27 +5197,27 @@ } }, "node_modules/@ceramicnetwork/anchor-utils": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-utils/-/anchor-utils-4.5.0.tgz", - "integrity": "sha512-7gsjNZq5WuKrdnOIaBoW5MeOr0UJRlkNU4J8KBq4Q73YnIBF1Swhm/T63XnIzq6qffW7LVqDxRkT7Ud1SerNtw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-utils/-/anchor-utils-4.15.0.tgz", + "integrity": "sha512-/P2Uajsxg+Nl63HRT3J2GwLfl7BiL+3J1BMWkxIhz1tLr915AyK590t3Ij3a43kbQSFcFYS5enypnMxz3uetfw==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", + "@ceramicnetwork/common": "^5.15.0", "@ethersproject/abi": "^5.7.0", "multiformats": "^13.0.0", "uint8arrays": "^5.0.1" } }, "node_modules/@ceramicnetwork/anchor-utils/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ceramicnetwork/blockchain-utils-linking": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-linking/-/blockchain-utils-linking-5.0.0.tgz", - "integrity": "sha512-9WzcRioVzbaxkA9+YTCa+UiOqJnprrK5r3BopPE7gDVk69vpdoEYjf3kP+gmHSQyFUFArwSO9vuYbJ8JQr1k0A==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-linking/-/blockchain-utils-linking-5.6.0.tgz", + "integrity": "sha512-UhaIK+wGAIMCwBJQTKc7ey9GffIZhMg16nQ5K55QLMbW9YnkU3W6yQ2JpBWe5BulymIe4uCOsT8cdo7tAgafJA==", "dependencies": { - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/streamid": "^5.6.0", "@didtools/cacao": "^3.0.0", "@stablelib/random": "^1.0.1", "@stablelib/sha256": "^1.0.1", @@ -5118,15 +5227,15 @@ } }, "node_modules/@ceramicnetwork/blockchain-utils-linking/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } @@ -5149,9 +5258,9 @@ } }, "node_modules/@ceramicnetwork/blockchain-utils-linking/node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -5186,25 +5295,25 @@ } }, "node_modules/@ceramicnetwork/blockchain-utils-linking/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/blockchain-utils-linking/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/blockchain-utils-validation": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-validation/-/blockchain-utils-validation-5.5.0.tgz", - "integrity": "sha512-1hLGXugUE6qNjkbzOAeInj0l58y9ejI19wW8y1TTQTpeThUjkUFxdaiLkKWitIXAcw8Ve+Vnpw5f0VnwtR/+hA==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-validation/-/blockchain-utils-validation-5.15.0.tgz", + "integrity": "sha512-CiAR8pwBUxNIOk2IfnsmhNj4txjea/rC7En52ljJyMghjilzJvqZCbRIlNHdmH+oBFl8kGnnWwxtTdznDa3UcA==", "dependencies": { - "@ceramicnetwork/blockchain-utils-linking": "^5.0.0", - "@ceramicnetwork/common": "^5.5.0", + "@ceramicnetwork/blockchain-utils-linking": "^5.4.0", + "@ceramicnetwork/common": "^5.15.0", "@ethersproject/contracts": "^5.5.0", "@ethersproject/providers": "^5.5.1", "@ethersproject/wallet": "^5.5.0", @@ -5220,12 +5329,12 @@ } }, "node_modules/@ceramicnetwork/codecs": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/codecs/-/codecs-4.5.0.tgz", - "integrity": "sha512-++PHxu6B4s7Tvk8RDOGgj2LxpZISJBAAVbzQd8bedPs/qSMufDs3EE99SR92YhHLbn5Wt/+uEZcSNGiHh8HyhQ==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/codecs/-/codecs-4.15.0.tgz", + "integrity": "sha512-BsFRPoVCVPUHGoMOfL+KWq2D8HFxiyUqphq9KQMiiTTsDTEiHOLgJ6x1YEMP0A10ZschTbc1wCaQbUxlz5w5Qg==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "cartonne": "^3.0.1", "codeco": "^1.1.0", "dag-jose": "^4.0.0", @@ -5234,39 +5343,46 @@ } }, "node_modules/@ceramicnetwork/codecs/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, + "node_modules/@ceramicnetwork/codecs/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, "node_modules/@ceramicnetwork/codecs/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/codecs/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ceramicnetwork/common": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-5.5.0.tgz", - "integrity": "sha512-zEYVVZAZ6lo0GHgtJu7uiQRPn8++32SzNFA4n8gao9jTujlFYsmQW8n7EbfZIooIPTrByqLpg/YSurr8kvQMhw==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-5.15.0.tgz", + "integrity": "sha512-yseYMFT36Ty9FAUuYv5yqygQ4H1jGGfxcjKEYSNDBwczMjVKYsPm77/txzpFDDjOWiVM4hHlM15bPiRVXW4L4w==", "dependencies": { - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/node-metrics": "^1.0.3", + "@ceramicnetwork/streamid": "^5.4.0", "@didtools/cacao": "^3.0.0", + "@didtools/key-webauthn": "^2.0.2", "@didtools/pkh-ethereum": "^0.2.0", "@didtools/pkh-solana": "^0.2.0", "@didtools/pkh-stacks": "^0.2.0", @@ -5285,15 +5401,15 @@ } }, "node_modules/@ceramicnetwork/common/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } @@ -5320,6 +5436,11 @@ "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" }, + "node_modules/@ceramicnetwork/common/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, "node_modules/@ceramicnetwork/common/node_modules/@didtools/cacao": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", @@ -5476,30 +5597,31 @@ } }, "node_modules/@ceramicnetwork/core": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/core/-/core-5.6.0.tgz", - "integrity": "sha512-svRyYxXW1HeP0EhxDjtisrZYfYuPUjMA4ZlM5o4xs6qGO0GJl88ttPTFPA5LI/iWAdzwyeTxpvmORwoq0A+j6w==", - "dependencies": { - "@ceramicnetwork/anchor-listener": "^4.5.0", - "@ceramicnetwork/anchor-utils": "^4.5.0", - "@ceramicnetwork/codecs": "^4.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/indexing": "^4.6.0", - "@ceramicnetwork/ipfs-topology": "^5.5.0", - "@ceramicnetwork/job-queue": "^4.6.0", - "@ceramicnetwork/model-metrics": "^1.2.5", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/core/-/core-5.16.0.tgz", + "integrity": "sha512-mRTbGJGaHZjTzGuc+GsS1qBmwcqrXAzUioXMYya9n8D5AoIjYAaJANJXKXd4+aOUwFGlx099MSMwu12FIOy9sA==", + "dependencies": { + "@ceramicnetwork/anchor-listener": "^4.15.0", + "@ceramicnetwork/anchor-utils": "^4.15.0", + "@ceramicnetwork/codecs": "^4.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/indexing": "^4.16.0", + "@ceramicnetwork/ipfs-topology": "^5.15.0", + "@ceramicnetwork/job-queue": "^4.16.0", + "@ceramicnetwork/node-metrics": "^1.0.3", "@ceramicnetwork/observability": "^1.4.4", - "@ceramicnetwork/pinning-aggregation": "^5.5.0", - "@ceramicnetwork/pinning-ipfs-backend": "^5.5.0", - "@ceramicnetwork/stream-caip10-link": "^5.5.0", - "@ceramicnetwork/stream-caip10-link-handler": "^5.6.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/stream-model-handler": "^4.6.0", - "@ceramicnetwork/stream-model-instance": "^4.6.0", - "@ceramicnetwork/stream-model-instance-handler": "^4.6.0", - "@ceramicnetwork/stream-tile": "^5.5.0", - "@ceramicnetwork/stream-tile-handler": "^5.6.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/pinning-aggregation": "^5.15.0", + "@ceramicnetwork/pinning-ipfs-backend": "^5.15.0", + "@ceramicnetwork/stream-caip10-link": "^5.15.0", + "@ceramicnetwork/stream-caip10-link-handler": "^5.16.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/stream-model-handler": "^4.16.0", + "@ceramicnetwork/stream-model-instance": "^4.16.0", + "@ceramicnetwork/stream-model-instance-handler": "^4.16.0", + "@ceramicnetwork/stream-tile": "^5.15.0", + "@ceramicnetwork/stream-tile-handler": "^5.16.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ceramicnetwork/wasm-bloom-filter": "^0.1.0", "@datastructures-js/priority-queue": "^6.1.0", "@ethersproject/providers": "^5.5.1", @@ -5520,7 +5642,7 @@ "it-first": "^3.0.4", "knex": "^2.5.1", "least-recent": "^1.0.3", - "level-ts": "^2.1.0", + "level": "^8.0.1", "lodash.clonedeep": "^4.5.0", "mapmoize": "^1.2.1", "multiformats": "^13.0.0", @@ -5535,19 +5657,24 @@ } }, "node_modules/@ceramicnetwork/core/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, + "node_modules/@ceramicnetwork/core/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, "node_modules/@ceramicnetwork/core/node_modules/@didtools/cacao": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", @@ -5566,9 +5693,9 @@ } }, "node_modules/@ceramicnetwork/core/node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -5591,6 +5718,21 @@ "node": ">=14.14" } }, + "node_modules/@ceramicnetwork/core/node_modules/@didtools/pkh-ethereum": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", + "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", + "dependencies": { + "@didtools/cacao": "^3.0.0", + "@noble/curves": "^1.2.0", + "@noble/hashes": "^1.3.2", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, "node_modules/@ceramicnetwork/core/node_modules/@didtools/siwx": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", @@ -5602,21 +5744,10 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/core/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/@ceramicnetwork/core/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } @@ -5631,9 +5762,9 @@ } }, "node_modules/@ceramicnetwork/core/node_modules/dag-jose-utils/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -5664,25 +5795,10 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/core/node_modules/dids/node_modules/@didtools/pkh-ethereum": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", - "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", - "dependencies": { - "@didtools/cacao": "^3.0.0", - "@noble/curves": "^1.2.0", - "@noble/hashes": "^1.3.2", - "@stablelib/random": "^1.0.2", - "caip": "^1.1.0" - }, - "engines": { - "node": ">=14.14" - } - }, "node_modules/@ceramicnetwork/core/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ceramicnetwork/core/node_modules/rxjs": { "version": "7.8.1", @@ -5744,16 +5860,16 @@ } }, "node_modules/@ceramicnetwork/indexing": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/indexing/-/indexing-4.6.0.tgz", - "integrity": "sha512-e5afRrLfr4lh7nUbEzZz5CbSQr9fkinfTDHiYVCKpxYEVQLEVCo1qihDCVJ3vK1p0psk6eIUZ1CYKXdV6Js5Lg==", - "dependencies": { - "@ceramicnetwork/anchor-listener": "^4.5.0", - "@ceramicnetwork/anchor-utils": "^4.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/job-queue": "^4.6.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/indexing/-/indexing-4.16.0.tgz", + "integrity": "sha512-q0eF7FRMR4MD8uwMqpMfKH4E0qh2Dzs+oUldnbZy9+XqaPVh6WV6/wNiO+a+Qyq97mSvQAnhWTWc6zU/KzX3IA==", + "dependencies": { + "@ceramicnetwork/anchor-listener": "^4.15.0", + "@ceramicnetwork/anchor-utils": "^4.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/job-queue": "^4.16.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ethersproject/providers": "^5.5.1", "knex": "^2.5.1", "lodash.clonedeep": "^4.5.0", @@ -5765,31 +5881,36 @@ } }, "node_modules/@ceramicnetwork/indexing/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, + "node_modules/@ceramicnetwork/indexing/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, "node_modules/@ceramicnetwork/indexing/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/indexing/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ceramicnetwork/indexing/node_modules/rxjs": { "version": "7.8.1", @@ -5800,19 +5921,19 @@ } }, "node_modules/@ceramicnetwork/ipfs-topology": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/ipfs-topology/-/ipfs-topology-5.5.0.tgz", - "integrity": "sha512-Pbk3TbdLNRM7/auC/PhDGiEeLMpk36dG9HxdHr3F/dl28ODJe6gEU9TSYlfw9n8IFJaf+DYtdHVLHHn4BaQ53Q==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/ipfs-topology/-/ipfs-topology-5.15.0.tgz", + "integrity": "sha512-2IeDXua96UJE3ksPa9j4tUbhQOMnQA0WRGcc33Uw1hCvmXgsav5dXN/zEpK0q8Jz9xHx4DsZLtzSSD2qVqrdkg==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0" + "@ceramicnetwork/common": "^5.15.0" } }, "node_modules/@ceramicnetwork/job-queue": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/job-queue/-/job-queue-4.6.0.tgz", - "integrity": "sha512-YqAcD2yHArZnwU47h4mGYust5K2OmMa9pu9z46lIL2+WBpWrstT5I8Nbr9p+zpZ4JS5y1TZveKVsQFnk9c9iSw==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/job-queue/-/job-queue-4.16.0.tgz", + "integrity": "sha512-dCafjMxpuNUZOwgK9qey+LZDM3NwxbcHghOvsT6ephgcoImUKwIA/6tpX8SFsw97yfDXUJLpzvTWzmQT3qwclw==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", + "@ceramicnetwork/common": "^5.15.0", "pg": "^8.11.3", "pg-boss": "^8.2.0", "rxjs": "^7.8.1" @@ -5826,10 +5947,10 @@ "tslib": "^2.1.0" } }, - "node_modules/@ceramicnetwork/model-metrics": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/model-metrics/-/model-metrics-1.2.5.tgz", - "integrity": "sha512-L2T0K57CWCyHzTkGmBdM3BNX35YRPX9KqRVkPSjBv2q3Cwwm9KkrBRYHLN6W+37eWVBmKOq57lSTiQsnuSskAw==", + "node_modules/@ceramicnetwork/node-metrics": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/node-metrics/-/node-metrics-1.0.5.tgz", + "integrity": "sha512-2PcMKitsE+J+uOfVk25RtZliZoQAE26qCAadQsUqTSCQn1QZOnrMXpexWtNnzyxW0jVKtmQ6/05qYPkYZ5jl3w==", "dependencies": { "@ceramicnetwork/stream-model-instance": "^2.3.0", "@ceramicnetwork/streamid": "^3.3.0", @@ -5840,7 +5961,7 @@ "uint8arrays": "^5.0.1" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@ceramicnetwork/codecs": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@ceramicnetwork/codecs": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/@ceramicnetwork/codecs/-/codecs-2.4.1.tgz", "integrity": "sha512-QhdUHp7PJm+qL05f6ovlUe7K85urBt3V7JKQrmq33jCYt4YlVT2bTyUdsrgcyA+IJZnXP1KEWuSdcpE1V3Qe/A==", @@ -5853,7 +5974,7 @@ "uint8arrays": "^5.0.1" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@ceramicnetwork/common": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@ceramicnetwork/common": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-3.4.1.tgz", "integrity": "sha512-SVtPG6tkaDF77iM2mweXV+JSgZa3tKvuku0TIrA+pZswa1EHtnRHssSilaj4q91JNaTy2Gsk86oK6MuQp9+LKg==", @@ -5877,7 +5998,7 @@ "uint8arrays": "^5.0.1" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@ceramicnetwork/stream-model-instance": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@ceramicnetwork/stream-model-instance": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-2.4.1.tgz", "integrity": "sha512-vp+oY27BFM64pXN2l4riwK3/3rN1DCEZe/iBrWWJ79SC99S9jFsSnx2TB0RLkBF+n87IsWi+t1WA+FR1KNIe/Q==", @@ -5891,21 +6012,7 @@ "uint8arrays": "^5.0.1" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@ceramicnetwork/streamid": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-3.4.1.tgz", - "integrity": "sha512-m6uZjcdMdwzyO6TIVTJF4IJYjuceflmYDrlRxDcXrZySBNNKnL40tSHbzpcTfOy5YcIsTqJFxqUZQrFrC0mlDA==", - "dependencies": { - "@ipld/dag-cbor": "^7.0.0", - "@stablelib/sha256": "^1.0.1", - "cborg": "^1.10.2", - "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", - "uint8arrays": "^5.0.1", - "varint": "^6.0.0" - } - }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/cacao": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/cacao": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", "integrity": "sha512-vV1JirxqVsBf2dqdvoS/msNN8fabvMfseZB0kf1FG8TbosrHd81+hgDOlQMZit7zJbTk5g3CGkZg3b7iYKkynw==", @@ -5922,10 +6029,10 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -5935,15 +6042,15 @@ "npm": ">=7.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/cacao/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/cacao/node_modules/cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/codecs": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/codecs": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-3.0.0.tgz", "integrity": "sha512-TemoVySZrs1XflMtOkwVTATtZEs42Mh2yk9SoYvBXES6Mz30PBJCm8v7U/2y1N5lrjb2cAPWs48Ryc7paetSxQ==", @@ -5956,7 +6063,7 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.2.1.tgz", "integrity": "sha512-apQefbOqqy8HQMDNVG0ITxHLr9I5iZrjADX+mPB+ie1ue8MO8pOHMifLQ3j0R6RjS2einCd+hEZ4Ib4AKs3Xlw==", @@ -5970,7 +6077,7 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/cacao": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/cacao": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-2.1.0.tgz", "integrity": "sha512-35gopj+mOmAlA3nHoHiYMvNMXJtbJDJnVpIlCf/Wf/+/x+uG9aIQefXfF35D6JuaTCZ0apabjpT2umL5h3EXcw==", @@ -5986,7 +6093,7 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/cacao/node_modules/multiformats": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/cacao/node_modules/multiformats": { "version": "11.0.2", "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", @@ -5995,7 +6102,7 @@ "npm": ">=7.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/codecs": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/codecs": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-1.0.1.tgz", "integrity": "sha512-6PYXOCX7mwVWUcudKQ3eW5LtI8v5esozazbf2q2F01PE+LoeEvTytvgU9FEspj4pATpq3hPx1eenX2uLirDJ8w==", @@ -6008,7 +6115,7 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/codecs/node_modules/multiformats": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/codecs/node_modules/multiformats": { "version": "11.0.2", "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", @@ -6017,7 +6124,7 @@ "npm": ">=7.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/siwx": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@didtools/siwx": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-1.0.0.tgz", "integrity": "sha512-b7sPDTNHdySoJ+Rp2p06x3rg1iTxI4yPTTA3PrPh40xcvFJ0K/YhdIb/Rzff13t92arcJ+VYGFhqtJorauV91g==", @@ -6028,10 +6135,10 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -6041,15 +6148,15 @@ "npm": ">=7.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/uint8arrays": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/uint8arrays": { "version": "4.0.10", "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", @@ -6057,7 +6164,7 @@ "multiformats": "^12.0.1" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/pkh-ethereum/node_modules/uint8arrays/node_modules/multiformats": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/pkh-ethereum/node_modules/uint8arrays/node_modules/multiformats": { "version": "12.1.3", "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==", @@ -6066,7 +6173,7 @@ "npm": ">=7.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@didtools/siwx": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/@didtools/siwx": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", "integrity": "sha512-eqBtI5dZrptXTCyadnhvU0di/KvumoByT7F8KB/8BLU7M1lltfEmvf/c5AnsyrWO9338ygCs2u5mKz1p1Zdj5A==", @@ -6077,18 +6184,7 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/dag-jose-utils": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/dag-jose-utils": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/dag-jose-utils/-/dag-jose-utils-4.0.0.tgz", "integrity": "sha512-bmmXtVdEKp/zYH8El4GGkMREJioUztz8fzOErfy5dTbyKIVOF61C5sfsZLYCB/wiT/I9+SPNrQeo/Cx6Ik3wJQ==", @@ -6097,10 +6193,10 @@ "multiformats": "^13.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/dag-jose-utils/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "node_modules/@ceramicnetwork/node-metrics/node_modules/dag-jose-utils/node_modules/@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -6110,15 +6206,15 @@ "npm": ">=7.0.0" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/dag-jose-utils/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "node_modules/@ceramicnetwork/node-metrics/node_modules/dag-jose-utils/node_modules/cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/dids": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/dids": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/dids/-/dids-5.0.2.tgz", "integrity": "sha512-sxTgrvJtatqdm7dukGbquk23BVvbiaxf3nTKywWaY9AUqwC2IYEo6FG0En2cMl3J1fqMMQXrGg9luh2xDmYOmw==", @@ -6139,7 +6235,7 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/dids/node_modules/@didtools/pkh-ethereum": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/dids/node_modules/@didtools/pkh-ethereum": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", @@ -6154,26 +6250,12 @@ "node": ">=14.14" } }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/key-did-resolver": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-4.0.0.tgz", - "integrity": "sha512-+U2nd/0rjO4Yqe2hnHBD7ygcLRfT43Oje9IIjv1BlBi0lopwxZpIFQ7GekguOHK02r+JGdl8mpJVNHs5lvXVOA==", - "dependencies": { - "@noble/curves": "^1.2.0", - "multiformats": "^13.0.0", - "uint8arrays": "^5.0.1", - "varint": "^6.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "node_modules/@ceramicnetwork/node-metrics/node_modules/multiformats": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, - "node_modules/@ceramicnetwork/model-metrics/node_modules/rxjs": { + "node_modules/@ceramicnetwork/node-metrics/node_modules/rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", @@ -6182,42 +6264,42 @@ } }, "node_modules/@ceramicnetwork/observability": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/observability/-/observability-1.4.4.tgz", - "integrity": "sha512-kHWnfq8SoTjO8qAU+ErXPa0iqFY3cXSQcA9CJJK40tyB6tIR+9zKNbfCDFwEF/UPZSiVQcO/pVsxTe5CcmHeEg==", - "dependencies": { - "@opentelemetry/api": "1.3.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.41.0", - "@opentelemetry/exporter-prometheus": "0.41.0", - "@opentelemetry/exporter-trace-otlp-http": "0.41.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "@opentelemetry/sdk-trace-base": "1.15.0", - "@opentelemetry/semantic-conventions": "1.15.0", + "version": "1.5.7", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/observability/-/observability-1.5.7.tgz", + "integrity": "sha512-tyUJZD1lhpLSd5jrV4VO00OufiYTfP2bFJ5yGiwNoHn8ZufNfAufFveGPpc1TfseuveY0OOO1stjx0/ECJNojA==", + "dependencies": { + "@opentelemetry/api": "^1.8.0", + "@opentelemetry/exporter-metrics-otlp-http": "^0.50.0", + "@opentelemetry/exporter-prometheus": "^0.50.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.50.0", + "@opentelemetry/resources": "^1.23.0", + "@opentelemetry/sdk-metrics": "^1.23.0", + "@opentelemetry/sdk-trace-base": "^1.23.0", + "@opentelemetry/semantic-conventions": "^1.23.0", "@types/node": "^20.11.16" } }, "node_modules/@ceramicnetwork/observability/node_modules/@opentelemetry/api": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.3.0.tgz", - "integrity": "sha512-YveTnGNsFFixTKJz09Oi4zYkiLT5af3WpZDu4aIUM7xX+2bHAkOJayFTVQd6zB8kkWPpbua4Ha6Ql00grdLlJQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", + "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", "engines": { "node": ">=8.0.0" } }, "node_modules/@ceramicnetwork/pinning-aggregation": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-aggregation/-/pinning-aggregation-5.5.0.tgz", - "integrity": "sha512-6w03kdpuo7fGHu8WJxt/bEXa3M7W3xAb6HDQRNf6Iz8edGh/R3iKjgloVMZke+BLWn0e7RBaZFaVo5CpUtTlIg==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-aggregation/-/pinning-aggregation-5.15.0.tgz", + "integrity": "sha512-Zkz4tXoTSEtwUv2fRlBR2wBX5lnq4Kc/R4qLI3GxDccB1vHKZChd94dn9HXHl7Mm8nlL9xIPq/+BDkeBVNsU4A==", "dependencies": { "@stablelib/sha256": "^1.0.1", "uint8arrays": "^5.0.1" } }, "node_modules/@ceramicnetwork/pinning-ipfs-backend": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-ipfs-backend/-/pinning-ipfs-backend-5.5.0.tgz", - "integrity": "sha512-2e47FvJGFmxjOomhj4dpTfb8OrvbOJA63rW2PYKwhA99FE0HBcbvSgRsejddYC1FsBYlnDsd7iR40wzhM8loyA==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-ipfs-backend/-/pinning-ipfs-backend-5.15.0.tgz", + "integrity": "sha512-5eQRmM/oK0oWbT9ReTtIZ0lGyUApVftAIlJ8FmreIMvj78t9lYrwG8+LU1/1GlxDp0zXaBxV8DHRcfVIAV41uA==", "dependencies": { "@stablelib/sha256": "^1.0.1", "ipfs-http-client": "^60.0.0", @@ -6225,100 +6307,101 @@ } }, "node_modules/@ceramicnetwork/stream-caip10-link": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link/-/stream-caip10-link-5.5.0.tgz", - "integrity": "sha512-X7HFHOuWlMBoZH3gSHbdXVjY8QYiDR5971uvhkNSpzxXV/Q9oqyRAULEFBuAKdH1+FUkaiaCxC2xaVh3ydC5Cg==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link/-/stream-caip10-link-5.15.0.tgz", + "integrity": "sha512-txZQvb3NHcvpikzMUCPjUdBtQmKrbm859nCaGCafNo1nJkM3yLRA1h0ZvRSYT516PXC6COut4DKnPNJMeM68fw==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "caip": "~1.1.0", "did-resolver": "^4.0.1", "lodash.clonedeep": "^4.5.0" } }, "node_modules/@ceramicnetwork/stream-caip10-link-handler": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link-handler/-/stream-caip10-link-handler-5.6.0.tgz", - "integrity": "sha512-pKCipn3y6CflzY/K3oeRyHwDDhBSvFy+jvZPqSbMY5s+96vueBNPsaBcqMZEd2onjl+hMGqjukH+QtGk+S5faQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link-handler/-/stream-caip10-link-handler-5.16.0.tgz", + "integrity": "sha512-L7hOoYmQQLlQ0nm6QycrpucutXaJAPK2y5DOQXCX213ARZMuVOd6fVCJvlEflOStiBz7W1SkdrIt7hDgfiSvpQ==", "dependencies": { - "@ceramicnetwork/blockchain-utils-validation": "^5.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-caip10-link": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0" + "@ceramicnetwork/blockchain-utils-validation": "^5.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-caip10-link": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0" } }, "node_modules/@ceramicnetwork/stream-caip10-link/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/stream-caip10-link/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-caip10-link/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/stream-handler-common": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-handler-common/-/stream-handler-common-4.5.0.tgz", - "integrity": "sha512-WpvAuSEtrHviLj4AOV9muoNb6CfdqkBFWYE6Ph8xRHvL5Q9noBZprn5Mi0wt6XSCe8sydsFM+Cw0A2vhQ37bRw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-handler-common/-/stream-handler-common-4.15.0.tgz", + "integrity": "sha512-0QFXL38tME0zZuVr3bY8neRJOFJioj+1k1ChlltaFzu2kLUsF5aCwsStYbxkFz+h8p0AOXi1cIxQxaQiTzM8LQ==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/observability": "^1.4.4", + "@ceramicnetwork/streamid": "^5.4.0", "lodash.clonedeep": "^4.5.0" } }, "node_modules/@ceramicnetwork/stream-handler-common/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/stream-handler-common/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-handler-common/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/stream-model": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model/-/stream-model-4.5.0.tgz", - "integrity": "sha512-I0jYlptr4v31T3VlSwvYMggrx2DLahsC1u5ErVRBZeW8NeY/7VWUzKVQtuOfc5Wa2XdRJ7ODINyszWKb6nIneg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model/-/stream-model-4.15.0.tgz", + "integrity": "sha512-lUeoTfKHLARYiz9KNxYJaZUgy6KlkJL8oXpDgkE65sZIzGl0zXedtmLmiS8xKwgjYQwUMsAOmW8v4D4HSztAvg==", "dependencies": { - "@ceramicnetwork/codecs": "^4.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/codecs": "^4.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ipld/dag-cbor": "^7.0.0", "@stablelib/random": "^1.0.1", "ajv": "^8.8.2", @@ -6331,14 +6414,14 @@ } }, "node_modules/@ceramicnetwork/stream-model-handler": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-handler/-/stream-model-handler-4.6.0.tgz", - "integrity": "sha512-+pP6xoBlOl4LIMAHEp4RXwk5DclnQ/TnE8dgBYWDI3OhGEsCzY911v+y1J2ldTic5UxakE/tNMm2a4Rh60PBQQ==", - "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-handler/-/stream-model-handler-4.16.0.tgz", + "integrity": "sha512-WdyBByaZYFfTHRms/gWasqhxz5S12WqfpIDMoREHSXq2Wc4PXraZfCiUHKvpkJVN66vLlaCho7tUZ1AQVEcIxg==", + "dependencies": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "ajv": "^8.8.2", "ajv-formats": "^2.1.1", "fast-json-patch": "^3.1.0", @@ -6349,39 +6432,39 @@ } }, "node_modules/@ceramicnetwork/stream-model-handler/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/stream-model-handler/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-model-handler/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/stream-model-instance": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-4.6.0.tgz", - "integrity": "sha512-uksXGq4ytcR9bHgLm68t2unsk2QCOqEVOnGWmZH7G47XvbfV/Bm18NAO9cZagSRa5ogbCf4+N3AuZtLg/TDWKA==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-4.16.0.tgz", + "integrity": "sha512-kq0Uv3/oAikj1ZHNYZzhVtEPhSpf6JXoIiCF60h1X7IqEc5/Fb6EarLyhuETFCVa+xFqhAsJpahtPW0YR5tJ+w==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ipld/dag-cbor": "^7.0.0", "@stablelib/random": "^1.0.1", "fast-json-patch": "^3.1.0", @@ -6390,111 +6473,115 @@ } }, "node_modules/@ceramicnetwork/stream-model-instance-handler": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance-handler/-/stream-model-instance-handler-4.6.0.tgz", - "integrity": "sha512-K4XnwsXFTfLIPUii9GaJDvJ369XFtJ7Ye8ZFZaaMPnmS6B0wb55k4fTNrAXWULUx7Rn4PoFjXgvxPcSm9nKCQA==", - "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/stream-model-instance": "^4.6.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance-handler/-/stream-model-instance-handler-4.16.0.tgz", + "integrity": "sha512-Qphg1tkD9FjjDLG0uOOzzBoBmwwDiUAPt1VzzU/WX2l1vKms+oapqvzP8gzJApFgBW3L7A5GxP9i+2i3XU94IA==", + "dependencies": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/stream-model-instance": "^4.16.0", + "@ceramicnetwork/streamid": "^5.4.0", "ajv": "^8.8.2", "ajv-formats": "^2.1.1", "fast-json-patch": "^3.1.0", - "least-recent": "^1.0.3", "lodash.clonedeep": "^4.5.0", "uint8arrays": "^5.0.1" } }, "node_modules/@ceramicnetwork/stream-model-instance-handler/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/stream-model-instance-handler/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-model-instance-handler/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/stream-model-instance/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/stream-model-instance/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-model-instance/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/stream-model/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, + "node_modules/@ceramicnetwork/stream-model/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, "node_modules/@ceramicnetwork/stream-model/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-model/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ceramicnetwork/stream-tile": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile/-/stream-tile-5.5.0.tgz", - "integrity": "sha512-KhY5u553qh1Cl0R1BZbxvXpzDyW2p+lGzzDvQYO7et2D7KKqd9O0mkFSCzlsJC43xcOwY00JkbcRtHX3JhzabA==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile/-/stream-tile-5.15.0.tgz", + "integrity": "sha512-BzHIhfQfCXdGGSykoeKpxEhJ811BZWCYOHR98UXAguzQdPbMR1uXLoxnu08bMMrcSd8KhO1BZ3kl2BWC5gbqkA==", "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ipld/dag-cbor": "^7.0.0", "@stablelib/random": "^1.0.1", "dids": "^5.0.0", @@ -6504,14 +6591,14 @@ } }, "node_modules/@ceramicnetwork/stream-tile-handler": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile-handler/-/stream-tile-handler-5.6.0.tgz", - "integrity": "sha512-wOkmvcSzGCbrU2SC0Q8wvCFc4P/gX6FM2y4MHmk6wziUovqFFcp+n2vD1X8CC5WZllpji4JRiLdphjZNRZSruw==", - "dependencies": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0", - "@ceramicnetwork/stream-tile": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile-handler/-/stream-tile-handler-5.16.0.tgz", + "integrity": "sha512-cz/ZMWm24C4vW4mjxcgE/UcOxpLVZe7lbFJyDIZjL4JYuR16BR4S+SO0TaBobzYOdY1fiC3FHeWlpPi1ena+8A==", + "dependencies": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-tile": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "ajv": "^8.8.2", "ajv-formats": "^2.1.1", "fast-json-patch": "^3.1.0", @@ -6521,42 +6608,42 @@ } }, "node_modules/@ceramicnetwork/stream-tile-handler/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/stream-tile-handler/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ceramicnetwork/stream-tile-handler/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/stream-tile/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } @@ -6682,53 +6769,28 @@ } }, "node_modules/@ceramicnetwork/stream-tile/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@ceramicnetwork/streamid": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-3.2.0.tgz", - "integrity": "sha512-o1nlXcSosbl2pcA3vkdZyiwdwDC7J8O+u/mGdBysJ6brQvQcbB9W9QYE6OgB5p+dxXdY9u5zwATURIEw5Ify3w==", - "dev": true, + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-3.4.1.tgz", + "integrity": "sha512-m6uZjcdMdwzyO6TIVTJF4IJYjuceflmYDrlRxDcXrZySBNNKnL40tSHbzpcTfOy5YcIsTqJFxqUZQrFrC0mlDA==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^1.10.2", "mapmoize": "^1.2.1", - "multiformats": "^11.0.1", - "uint8arrays": "^4.0.9", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", - "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", - "dev": true, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/@ceramicnetwork/streamid/node_modules/uint8arrays": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", - "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", - "dev": true, - "dependencies": { - "multiformats": "^12.0.1" - } - }, - "node_modules/@ceramicnetwork/streamid/node_modules/uint8arrays/node_modules/multiformats": { - "version": "12.1.3", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", - "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==", - "dev": true, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ceramicnetwork/wasm-bloom-filter": { "version": "0.1.0", @@ -6896,6 +6958,7 @@ "version": "0.7.1", "resolved": "https://registry.npmjs.org/@composedb/devtools/-/devtools-0.7.1.tgz", "integrity": "sha512-J9IFquEmJL/0gwl3BUerXUR3tOm9v8dd3oucrRbuYDbZXLN803mptOQqQEDxzncfkF80CjVh0qtWZ6dTaYGVHQ==", + "peer": true, "dependencies": { "@ceramicnetwork/common": "^5.1.0", "@ceramicnetwork/stream-model": "^4.1.0", @@ -6948,23 +7011,31 @@ } }, "node_modules/@composedb/devtools/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", + "peer": true, "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, + "node_modules/@composedb/devtools/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==", + "peer": true + }, "node_modules/@composedb/devtools/node_modules/@didtools/cacao": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", "integrity": "sha512-vV1JirxqVsBf2dqdvoS/msNN8fabvMfseZB0kf1FG8TbosrHd81+hgDOlQMZit7zJbTk5g3CGkZg3b7iYKkynw==", + "peer": true, "dependencies": { "@didtools/codecs": "^3.0.0", "@didtools/siwx": "2.0.0", @@ -6979,9 +7050,10 @@ } }, "node_modules/@composedb/devtools/node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", + "peer": true, "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -6995,6 +7067,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-3.0.0.tgz", "integrity": "sha512-TemoVySZrs1XflMtOkwVTATtZEs42Mh2yk9SoYvBXES6Mz30PBJCm8v7U/2y1N5lrjb2cAPWs48Ryc7paetSxQ==", + "peer": true, "dependencies": { "codeco": "^1.2.0", "multiformats": "^13.0.0", @@ -7008,6 +7081,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", "integrity": "sha512-eqBtI5dZrptXTCyadnhvU0di/KvumoByT7F8KB/8BLU7M1lltfEmvf/c5AnsyrWO9338ygCs2u5mKz1p1Zdj5A==", + "peer": true, "dependencies": { "codeco": "^1.2.0" }, @@ -7016,9 +7090,10 @@ } }, "node_modules/@composedb/devtools/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", + "peer": true, "bin": { "cborg": "lib/bin.js" } @@ -7026,17 +7101,20 @@ "node_modules/@composedb/devtools/node_modules/change-case": { "version": "5.4.4", "resolved": "https://registry.npmjs.org/change-case/-/change-case-5.4.4.tgz", - "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==" + "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==", + "peer": true }, "node_modules/@composedb/devtools/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==", + "peer": true }, "node_modules/@composedb/devtools/node_modules/type-fest": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.15.0.tgz", - "integrity": "sha512-tB9lu0pQpX5KJq54g+oHOLumOx+pMep4RaM6liXh2PKmVRFF+/vAtUP0ZaJ0kOySfVNjF6doBWPHhBhISKdlIA==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", + "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", + "peer": true, "engines": { "node": ">=16" }, @@ -7061,31 +7139,36 @@ } }, "node_modules/@composedb/graphql-scalars/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, + "node_modules/@composedb/graphql-scalars/node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + }, "node_modules/@composedb/graphql-scalars/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@composedb/graphql-scalars/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@composedb/loader": { "version": "0.7.1", @@ -7101,31 +7184,31 @@ } }, "node_modules/@composedb/loader/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@composedb/loader/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@composedb/loader/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@composedb/runtime": { "version": "0.7.1", @@ -7146,31 +7229,31 @@ } }, "node_modules/@composedb/runtime/node_modules/@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "node_modules/@composedb/runtime/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@composedb/runtime/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, "node_modules/@composedb/server": { "version": "0.7.1", @@ -7188,17 +7271,6 @@ "node": ">=20" } }, - "node_modules/@composedb/server/node_modules/get-port": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-7.1.0.tgz", - "integrity": "sha512-QB9NKEeDg3xxVwCCwJQ9+xycaz6pBB6iQ76wiWMl1927n0Kir6alPiP+yuiICLLU4jpMe08dXfpebuQppFA2zw==", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@composedb/types": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/@composedb/types/-/types-0.7.1.tgz", @@ -7233,19 +7305,6 @@ "node": ">=14.14" } }, - "node_modules/@composedb/types/node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", - "dependencies": { - "cborg": "^4.0.0", - "multiformats": "^13.1.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, "node_modules/@composedb/types/node_modules/@didtools/codecs": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-3.0.0.tgz", @@ -7259,6 +7318,21 @@ "node": ">=14.14" } }, + "node_modules/@composedb/types/node_modules/@didtools/pkh-ethereum": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", + "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", + "dependencies": { + "@didtools/cacao": "^3.0.0", + "@noble/curves": "^1.2.0", + "@noble/hashes": "^1.3.2", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, "node_modules/@composedb/types/node_modules/@didtools/siwx": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", @@ -7270,21 +7344,23 @@ "node": ">=14.14" } }, - "node_modules/@composedb/types/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" + "node_modules/@composedb/types/node_modules/@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", + "dependencies": { + "cborg": "^4.0.0", + "multiformats": "^13.1.0" }, - "funding": { - "url": "https://paulmillr.com/funding/" + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" } }, "node_modules/@composedb/types/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } @@ -7298,19 +7374,6 @@ "multiformats": "^13.0.0" } }, - "node_modules/@composedb/types/node_modules/dag-jose-utils/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", - "dependencies": { - "cborg": "^4.0.0", - "multiformats": "^13.1.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, "node_modules/@composedb/types/node_modules/dids": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/dids/-/dids-5.0.2.tgz", @@ -7332,25 +7395,10 @@ "node": ">=14.14" } }, - "node_modules/@composedb/types/node_modules/dids/node_modules/@didtools/pkh-ethereum": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", - "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", - "dependencies": { - "@didtools/cacao": "^3.0.0", - "@noble/curves": "^1.2.0", - "@noble/hashes": "^1.3.2", - "@stablelib/random": "^1.0.2", - "caip": "^1.1.0" - }, - "engines": { - "node": ">=14.14" - } - }, "node_modules/@composedb/types/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@cspotcode/source-map-support": { "version": "0.8.1", @@ -7690,6 +7738,91 @@ "npm": ">=7.0.0" } }, + "node_modules/@didtools/key-webauthn": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@didtools/key-webauthn/-/key-webauthn-2.0.2.tgz", + "integrity": "sha512-MkOqAiRBcRO64PMVfSFAB0SUIJMk+L8QyymE9dknjmfSKgD/ZKz7cw4pFV6IUNin75/DLrlDSfmCIIjYokivvQ==", + "dependencies": { + "@didtools/cacao": "3.0.1", + "@ipld/dag-cbor": "^9.0.6", + "@noble/curves": "^1.2.0", + "caip": "^1.1.0", + "cborg": "^4.0.5", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/key-webauthn/node_modules/@didtools/cacao": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", + "integrity": "sha512-vV1JirxqVsBf2dqdvoS/msNN8fabvMfseZB0kf1FG8TbosrHd81+hgDOlQMZit7zJbTk5g3CGkZg3b7iYKkynw==", + "dependencies": { + "@didtools/codecs": "^3.0.0", + "@didtools/siwx": "2.0.0", + "@ipld/dag-cbor": "^9.0.7", + "caip": "^1.1.0", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", + "viem": "^1.21.4" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/key-webauthn/node_modules/@didtools/codecs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-3.0.0.tgz", + "integrity": "sha512-TemoVySZrs1XflMtOkwVTATtZEs42Mh2yk9SoYvBXES6Mz30PBJCm8v7U/2y1N5lrjb2cAPWs48Ryc7paetSxQ==", + "dependencies": { + "codeco": "^1.2.0", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/key-webauthn/node_modules/@didtools/siwx": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", + "integrity": "sha512-eqBtI5dZrptXTCyadnhvU0di/KvumoByT7F8KB/8BLU7M1lltfEmvf/c5AnsyrWO9338ygCs2u5mKz1p1Zdj5A==", + "dependencies": { + "codeco": "^1.2.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/key-webauthn/node_modules/@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", + "dependencies": { + "cborg": "^4.0.0", + "multiformats": "^13.1.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@didtools/key-webauthn/node_modules/cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", + "bin": { + "cborg": "lib/bin.js" + } + }, + "node_modules/@didtools/key-webauthn/node_modules/multiformats": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" + }, "node_modules/@didtools/pkh-ethereum": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.4.1.tgz", @@ -8166,9 +8299,9 @@ "integrity": "sha512-JRDFP6+Hczb1E0/HhIg0PONgBYasfGfDheujmfxaZaAv/NAH4jE6Kf48WbqfRZdxt4IZI3jl3Ri7sZ1nP09lgw==" }, "node_modules/@envelop/core": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@envelop/core/-/core-5.0.0.tgz", - "integrity": "sha512-aJdnH/ptv+cvwfvciCBe7TSvccBwo9g0S5f6u35TBVzRVqIGkK03lFlIL+x1cnfZgN9EfR2b1PH2galrT1CdCQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@envelop/core/-/core-5.0.2.tgz", + "integrity": "sha512-tVL6OrMe6UjqLosiE+EH9uxh2TQC0469GwF4tE014ugRaDDKKVWwFwZe0TBMlcyHKh5MD4ZxktWo/1hqUxIuhw==", "dependencies": { "@envelop/types": "5.0.0", "tslib": "^2.5.0" @@ -10885,12 +11018,12 @@ "dev": true }, "node_modules/@graphql-tools/batch-delegate": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/batch-delegate/-/batch-delegate-9.0.1.tgz", - "integrity": "sha512-a5DWcrjPLvLCT1PvDetWfwxWHAxupGW9xDesMJOcM7NvBktBWMDheD0qHHvEBLmCL4dimWpvilmQaowQx7oJJw==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/@graphql-tools/batch-delegate/-/batch-delegate-9.0.3.tgz", + "integrity": "sha512-wYYbDLQeXU+lEUQJDjylN/e1V3OTVkeJSZYgroDniBfg3etDuOJruAIWZ6S6skKB1PZBy1emEbs6HjrziHeX0A==", "dependencies": { - "@graphql-tools/delegate": "^10.0.4", - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/delegate": "^10.0.11", + "@graphql-tools/utils": "^10.2.1", "dataloader": "2.2.2", "tslib": "^2.4.0", "value-or-promise": "^1.0.12" @@ -10920,14 +11053,15 @@ } }, "node_modules/@graphql-tools/delegate": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-10.0.4.tgz", - "integrity": "sha512-WswZRbQZMh/ebhc8zSomK9DIh6Pd5KbuiMsyiKkKz37TWTrlCOe+4C/fyrBFez30ksq6oFyCeSKMwfrCbeGo0Q==", + "version": "10.0.21", + "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-10.0.21.tgz", + "integrity": "sha512-UytyYVvDfLQbCYG1aQo8Vc67c1WhEjzW9ytYKEEqMJSdlwfMCujHmCz7EyH5DNjTAKapDHuQcN5VivKGap/Beg==", "dependencies": { "@graphql-tools/batch-execute": "^9.0.4", - "@graphql-tools/executor": "^1.2.1", - "@graphql-tools/schema": "^10.0.3", - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/executor": "^1.3.1", + "@graphql-tools/schema": "^10.0.4", + "@graphql-tools/utils": "^10.3.4", + "@repeaterjs/repeater": "^3.0.6", "dataloader": "^2.2.2", "tslib": "^2.5.0" }, @@ -10939,11 +11073,11 @@ } }, "node_modules/@graphql-tools/executor": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@graphql-tools/executor/-/executor-1.2.6.tgz", - "integrity": "sha512-+1kjfqzM5T2R+dCw7F4vdJ3CqG+fY/LYJyhNiWEFtq0ToLwYzR/KKyD8YuzTirEjSxWTVlcBh7endkx5n5F6ew==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor/-/executor-1.3.1.tgz", + "integrity": "sha512-tgJDdGf9SCAm64ofEMZdv925u6/J+eTmv36TGNLxgP2DpCJsZ6gnJ4A+0D28EazDXqJIvMiPd+3d+o3cCRCAnQ==", "dependencies": { - "@graphql-tools/utils": "^10.1.1", + "@graphql-tools/utils": "^10.3.4", "@graphql-typed-document-node/core": "3.2.0", "@repeaterjs/repeater": "^3.0.4", "tslib": "^2.4.0", @@ -10957,11 +11091,11 @@ } }, "node_modules/@graphql-tools/merge": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.3.tgz", - "integrity": "sha512-FeKv9lKLMwqDu0pQjPpF59GY3HReUkWXKsMIuMuJQOKh9BETu7zPEFUELvcw8w+lwZkl4ileJsHXC9+AnsT2Lw==", + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.7.tgz", + "integrity": "sha512-lbTrIuXIbUSmSumHkPRY1QX0Z8JEtmRhnIrkH7vkfeEmf0kNn/nCWvJwqokm5U7L+a+DA1wlRM4slIlbfXjJBA==", "dependencies": { - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/utils": "^10.5.4", "tslib": "^2.4.0" }, "engines": { @@ -11011,12 +11145,12 @@ } }, "node_modules/@graphql-tools/schema": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.3.tgz", - "integrity": "sha512-p28Oh9EcOna6i0yLaCFOnkcBDQECVf3SCexT6ktb86QNj9idnkhI+tCxnwZDh58Qvjd2nURdkbevvoZkvxzCog==", + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.6.tgz", + "integrity": "sha512-EIJgPRGzpvDFEjVp+RF1zNNYIC36BYuIeZ514jFoJnI6IdxyVyIRDLx/ykgMdaa1pKQerpfdqDnsF4JnZoDHSQ==", "dependencies": { - "@graphql-tools/merge": "^9.0.3", - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/merge": "^9.0.6", + "@graphql-tools/utils": "^10.5.4", "tslib": "^2.4.0", "value-or-promise": "^1.0.12" }, @@ -11028,16 +11162,16 @@ } }, "node_modules/@graphql-tools/stitch": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/stitch/-/stitch-9.1.0.tgz", - "integrity": "sha512-EEZn2BcvuOX+7DOSROv+3Td0SvuC/YnJ5+ua2xjhThOU7q8QFqL+JxgT4BOdI829ZR+rQqaX6do3VEY4UNo1Yg==", - "dependencies": { - "@graphql-tools/batch-delegate": "^9.0.1", - "@graphql-tools/delegate": "^10.0.4", - "@graphql-tools/executor": "^1.2.1", - "@graphql-tools/merge": "^9.0.3", - "@graphql-tools/schema": "^10.0.3", - "@graphql-tools/utils": "^10.0.13", + "version": "9.2.10", + "resolved": "https://registry.npmjs.org/@graphql-tools/stitch/-/stitch-9.2.10.tgz", + "integrity": "sha512-p4BOr6YTYZ9xjnHtrd6AsNR9Y2XtRSroSEEdOwv3KTHQLFhOD9wiLxb+UlKiHYm2jtTvL4wl6+TWV9dKCeNQ3g==", + "dependencies": { + "@graphql-tools/batch-delegate": "^9.0.3", + "@graphql-tools/delegate": "^10.0.12", + "@graphql-tools/executor": "^1.2.8", + "@graphql-tools/merge": "^9.0.4", + "@graphql-tools/schema": "^10.0.4", + "@graphql-tools/utils": "^10.2.3", "@graphql-tools/wrap": "^10.0.2", "tslib": "^2.4.0", "value-or-promise": "^1.0.11" @@ -11050,12 +11184,12 @@ } }, "node_modules/@graphql-tools/utils": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.1.2.tgz", - "integrity": "sha512-fX13CYsDnX4yifIyNdiN0cVygz/muvkreWWem6BBw130+ODbRRgfiVveL0NizCEnKXkpvdeTy9Bxvo9LIKlhrw==", + "version": "10.5.4", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.5.4.tgz", + "integrity": "sha512-XHnyCWSlg1ccsD8s0y6ugo5GZ5TpkTiFVNPSYms5G0s6Z/xTuSmiLBfeqgkfaCwLmLaQnRCmNDL2JRnqc2R5bQ==", "dependencies": { "@graphql-typed-document-node/core": "^3.1.1", - "cross-inspect": "1.0.0", + "cross-inspect": "1.0.1", "dset": "^3.1.2", "tslib": "^2.4.0" }, @@ -11104,9 +11238,9 @@ } }, "node_modules/@graphql-yoga/subscription": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@graphql-yoga/subscription/-/subscription-5.0.0.tgz", - "integrity": "sha512-Ri7sK8hmxd/kwaEa0YT8uqQUb2wOLsmBMxI90QDyf96lzOMJRgBuNYoEkU1pSgsgmW2glceZ96sRYfaXqwVxUw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@graphql-yoga/subscription/-/subscription-5.0.1.tgz", + "integrity": "sha512-1wCB1DfAnaLzS+IdoOzELGGnx1ODEg9nzQXFh4u2j02vAnne6d+v4A7HIH9EqzVdPLoAaMKXCZUUdKs+j3z1fg==", "dependencies": { "@graphql-yoga/typed-event-target": "^3.0.0", "@repeaterjs/repeater": "^3.0.4", @@ -12372,9 +12506,9 @@ "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" }, "node_modules/@ipld/dag-json": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-json/-/dag-json-10.2.0.tgz", - "integrity": "sha512-O9YLUrl3d3WbVz7v1WkajFkyfOLEe2Fep+wor4fgVe0ywxzrivrj437NiPcVyB+2EDdFn/Q7tCHFf8YVhDf8ZA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/@ipld/dag-json/-/dag-json-10.2.2.tgz", + "integrity": "sha512-NnU8HdHKwAoGyrW3S09NMa8aZw0tImLRyR64hoafpLpDpAbA9g1+fb24JsdlugbL4sXUQVwDVA+qK4Ud8V83lA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -12385,22 +12519,22 @@ } }, "node_modules/@ipld/dag-json/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } }, "node_modules/@ipld/dag-json/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@ipld/dag-pb": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-4.1.0.tgz", - "integrity": "sha512-LJU451Drqs5zjFm7jI4Hs3kHlilOqkjcSfPiQgVsZnWaYb2C7YdfhnclrVn/X+ucKejlU9BL3+gXFCZUXkMuCg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-4.1.2.tgz", + "integrity": "sha512-BSztO4l3C+ya9HjCaQot26Y4AVsqIKtnn6+23ubc1usucnf6yoTBme18oCCdM6gKBMxuPqju5ye3lh9WEJsdeQ==", "dependencies": { "multiformats": "^13.1.0" }, @@ -12410,9 +12544,9 @@ } }, "node_modules/@ipld/dag-pb/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@isaacs/cliui": { "version": "8.0.2", @@ -13851,11 +13985,11 @@ } }, "node_modules/@libp2p/interface": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.6.tgz", - "integrity": "sha512-CLz6TAZf+Mw1PCIU8pjMIct1uh3A1fIene2/t+E57Tw4uJLCBJE9CLed/Opxliy5RH0e32Aa6bi4QSXtkJTK7A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.7.0.tgz", + "integrity": "sha512-/zFyaIaIGW0aihhsH7/93vQdpWInUzFocxF11RO/029Y6h0SVjs24HHbils+DqaFDTqN+L7oNlBx2rM2MnmTjA==", "dependencies": { - "@multiformats/multiaddr": "^12.2.1", + "@multiformats/multiaddr": "^12.2.3", "it-pushable": "^3.2.3", "it-stream-types": "^2.0.1", "multiformats": "^13.1.0", @@ -13880,9 +14014,9 @@ } }, "node_modules/@libp2p/interface-connection/node_modules/@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "dependencies": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -13894,9 +14028,9 @@ } }, "node_modules/@libp2p/interface-connection/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@libp2p/interface-keychain": { "version": "2.0.5", @@ -13955,9 +14089,9 @@ } }, "node_modules/@libp2p/interface-peer-info/node_modules/@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "dependencies": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -13969,9 +14103,9 @@ } }, "node_modules/@libp2p/interface-peer-info/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@libp2p/interface-pubsub": { "version": "3.0.7", @@ -13990,9 +14124,9 @@ } }, "node_modules/@libp2p/interface/node_modules/@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "dependencies": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -14013,9 +14147,9 @@ } }, "node_modules/@libp2p/interface/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@libp2p/interfaces": { "version": "3.3.2", @@ -14043,9 +14177,9 @@ } }, "node_modules/@libp2p/logger/node_modules/@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "dependencies": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -14057,9 +14191,9 @@ } }, "node_modules/@libp2p/logger/node_modules/@multiformats/multiaddr/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@libp2p/logger/node_modules/multiformats": { "version": "11.0.2", @@ -15641,9 +15775,9 @@ } }, "node_modules/@multiformats/multiaddr-to-uri/node_modules/@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "dependencies": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -15655,9 +15789,9 @@ } }, "node_modules/@multiformats/multiaddr-to-uri/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/@multiformats/multiaddr/node_modules/err-code": { "version": "3.0.1", @@ -16481,26 +16615,11 @@ "semver": "^7.3.5" } }, - "node_modules/@npmcli/fs/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "optional": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -16508,12 +16627,6 @@ "node": ">=10" } }, - "node_modules/@npmcli/fs/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true - }, "node_modules/@npmcli/move-file": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", @@ -18261,43 +18374,40 @@ } }, "node_modules/@opentelemetry/api-logs": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.41.0.tgz", - "integrity": "sha512-kopW4ZEKX2mgaPi9jh3lTP+2ixbe0z+tAEOn3v0ZM6jzQl7z+2C1ZZjU1cVYbX+RDGqu7n6BMyv5wmWuqiuKYQ==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.50.0.tgz", + "integrity": "sha512-JdZuKrhOYggqOpUljAq4WWNi5nB10PmgoF0y2CvedLGXd0kSawb/UBnWT8gg1ND3bHCNHStAIVT0ELlxJJRqrA==", "dependencies": { - "@opentelemetry/api": "^1.0.0", - "tslib": "^2.3.1" + "@opentelemetry/api": "^1.0.0" }, "engines": { "node": ">=14" } }, "node_modules/@opentelemetry/core": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.15.0.tgz", - "integrity": "sha512-GGTS6BytfaN8OgbCUOnxg/a9WVsVUj0484zXHZuBzvIXx7V4Tmkb0IHnnhS7Q0cBLNLgjNuvrCpQaP8fIvO4bg==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.26.0.tgz", + "integrity": "sha512-1iKxXXE8415Cdv0yjG3G6hQnB5eVEsJce3QaawX8SjDn0mAS0ZM8fAbZZJD4ajvhC15cePvosSCut404KrIIvQ==", "dependencies": { - "@opentelemetry/semantic-conventions": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/semantic-conventions": "1.27.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.10.0" } }, "node_modules/@opentelemetry/exporter-metrics-otlp-http": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-metrics-otlp-http/-/exporter-metrics-otlp-http-0.41.0.tgz", - "integrity": "sha512-YttGW1XEHB9GocXtEY+n0qAT2Ewi/P4l7882kYK4kEl78EAnVvvWvFX1El+TvHA3D2LHDxx9ASu1i+icCqj/Fw==", - "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/otlp-exporter-base": "0.41.0", - "@opentelemetry/otlp-transformer": "0.41.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "tslib": "^2.3.1" + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-metrics-otlp-http/-/exporter-metrics-otlp-http-0.50.0.tgz", + "integrity": "sha512-DMilj0pTOGxeaRPvVBil/KugvLMV5l+GzoXEWBKXYGEnfNlX+huPeMpYl+zJJBtI3Coht2KArnNOLhs2wqA3yA==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/otlp-exporter-base": "0.50.0", + "@opentelemetry/otlp-transformer": "0.50.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-metrics": "1.23.0" }, "engines": { "node": ">=14" @@ -18306,15 +18416,67 @@ "@opentelemetry/api": "^1.3.0" } }, + "node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.3.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/exporter-prometheus": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-prometheus/-/exporter-prometheus-0.41.0.tgz", - "integrity": "sha512-ydoRgNo8CzMNCosyFchfHOV4KlKhEFPFF9uVQD8K2r4VV/AE7uxd8uVj+1uv64YZMjWuxSnNCxJd0VQpDWQFKw==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-prometheus/-/exporter-prometheus-0.50.0.tgz", + "integrity": "sha512-6jBrGqzpU1b2gCPUWTSSW+G3ejbZRx9SYhhFg0MO6v8R51mcln9KH6oIdTDrA+3Ie3L18bpygKrIWA9VPWEifg==", "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-metrics": "1.23.0" }, "engines": { "node": ">=14" @@ -18323,17 +18485,69 @@ "@opentelemetry/api": "^1.3.0" } }, + "node_modules/@opentelemetry/exporter-prometheus/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-prometheus/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-prometheus/node_modules/@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.3.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-prometheus/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/exporter-trace-otlp-http": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.41.0.tgz", - "integrity": "sha512-xG/EJAphB8SFi635vUWJ7rNOwU2nTSIWz1zCu1G6tzQUcej5M1FYtTuUeoJ+HrjHUDOq0SgFbvzfFh6ReggWMQ==", - "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/otlp-exporter-base": "0.41.0", - "@opentelemetry/otlp-transformer": "0.41.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-trace-base": "1.15.0", - "tslib": "^2.3.1" + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.50.0.tgz", + "integrity": "sha512-L7OtIMT7MsFqkmhbQlPBGRXt7152VN5esHpQEJYIBFedOEo3Da+yHpu5ojMZtPzpIvSpB5Xr5lnJUjJCbkttCA==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/otlp-exporter-base": "0.50.0", + "@opentelemetry/otlp-transformer": "0.50.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-trace-base": "1.23.0" }, "engines": { "node": ">=14" @@ -18342,13 +18556,65 @@ "@opentelemetry/api": "^1.0.0" } }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/sdk-trace-base": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz", + "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/otlp-exporter-base": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.41.0.tgz", - "integrity": "sha512-fSHtZznIU6kvCLFQC77nOhHj059G1sc/wNl96YiPdro4A8t8ue//ET0yAtpRCQ9lynn4RNrpsw5iEFJszEbmLg==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.50.0.tgz", + "integrity": "sha512-JUmjmrCmE1/fc4LjCQMqLfudgSl5OpUkzx7iA94b4jgeODM7zWxUoVXL7/CT7fWf47Cn+pmKjMvTCSESqZZ3mA==", "dependencies": { - "@opentelemetry/core": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.23.0" }, "engines": { "node": ">=14" @@ -18357,100 +18623,219 @@ "@opentelemetry/api": "^1.0.0" } }, + "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/otlp-transformer": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.41.0.tgz", - "integrity": "sha512-a5GqVSdVIhAoYcQrdWQAeMbrkz0iDwKC6BUsuqPuykh+T4QZzrF6cwneOXKbQI5Dl7ms6ha9dYHf4Ka0kc66ZQ==", - "dependencies": { - "@opentelemetry/api-logs": "0.41.0", - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-logs": "0.41.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "@opentelemetry/sdk-trace-base": "1.15.0", - "tslib": "^2.3.1" + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.50.0.tgz", + "integrity": "sha512-s0sl1Yfqd5q1Kjrf6DqXPWzErL+XHhrXOfejh4Vc/SMTNqC902xDsC8JQxbjuramWt/+hibfguIvi7Ns8VLolA==", + "dependencies": { + "@opentelemetry/api-logs": "0.50.0", + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-logs": "0.50.0", + "@opentelemetry/sdk-metrics": "1.23.0", + "@opentelemetry/sdk-trace-base": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.3.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.3.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.3.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz", + "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" } }, "node_modules/@opentelemetry/resources": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.15.0.tgz", - "integrity": "sha512-Sb8A6ZXHXDlgHv32UNRE3y8McWE3vkb5dsSttYArYa5ZpwjiF5ge0vnnKUUnG7bY0AgF9VBIOORZE8gsrnD2WA==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.26.0.tgz", + "integrity": "sha512-CPNYchBE7MBecCSVy0HKpUISEeJOniWqcHaAHpmasZ3j9o6V3AyBzhRc90jdmemq0HOxDr6ylhUbDhBqqPpeNw==", "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/semantic-conventions": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.26.0", + "@opentelemetry/semantic-conventions": "1.27.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.10.0" } }, "node_modules/@opentelemetry/sdk-logs": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.41.0.tgz", - "integrity": "sha512-+Qs8uHcd/tYKS1n6lfSPiQXMOuyPN0c3xKeyWjD5mExRvmA1H6SIYfZmB6KeQNXWODK4z4JtWo5g5Efe0gJ1Vg==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.50.0.tgz", + "integrity": "sha512-PeUEupBB29p9nlPNqXoa1PUWNLsZnxG0DCDj3sHqzae+8y76B/A5hvZjg03ulWdnvBLYpnJslqzylG9E0IL87g==", "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.4.0 <1.5.0", + "@opentelemetry/api": ">=1.4.0 <1.9.0", "@opentelemetry/api-logs": ">=0.39.1" } }, + "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/sdk-metrics": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.15.0.tgz", - "integrity": "sha512-fFUnAcPvlXO39nlIduGuaeCuiZyFtSLCn9gW/0djFRO5DFst4m4gcT6+llXvNWuUvtGB49s56NP10B9IZRN0Rw==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.26.0.tgz", + "integrity": "sha512-0SvDXmou/JjzSDOjUmetAAvcKQW6ZrvosU0rkbDGpXvvZN+pQF6JbK/Kd4hNdK4q/22yeruqvukXEJyySTzyTQ==", "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "lodash.merge": "^4.6.2", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.26.0", + "@opentelemetry/resources": "1.26.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.3.0 <1.5.0" + "@opentelemetry/api": ">=1.3.0 <1.10.0" } }, "node_modules/@opentelemetry/sdk-trace-base": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.15.0.tgz", - "integrity": "sha512-udt1c9VHipbZwvCPIQR1VLg25Z4AMR/g0X8KmcInbFruGWQ/lptVPkz3yvWAsGSta5yHNQ3uoPwcyCygGnQ6Lg==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.26.0.tgz", + "integrity": "sha512-olWQldtvbK4v22ymrKLbIcBi9L2SpMO84sCPY54IVsJhP9fRsxJT194C/AVaAuJzLE30EdhhM1VmvVYR7az+cw==", "dependencies": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/semantic-conventions": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.26.0", + "@opentelemetry/resources": "1.26.0", + "@opentelemetry/semantic-conventions": "1.27.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.10.0" } }, "node_modules/@opentelemetry/semantic-conventions": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.15.0.tgz", - "integrity": "sha512-f3wwFrFyCpGrFBrFs7lCUJSCSCGyeKG52c+EKeobs3Dd29M75yO6GYkt6PkYPfDawxSlV5p+4yJPPk8tPObzTQ==", - "dependencies": { - "tslib": "^2.3.1" - }, + "version": "1.27.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz", + "integrity": "sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==", "engines": { "node": ">=14" } @@ -21686,9 +22071,9 @@ "integrity": "sha512-42aWfPrimMfDKDi4YegyS7x+/0tlzaqwPQCULLanv3DMIlu96KTJR0fM5isWX2UViOqlGnX6YFgqWepcX+XMNg==" }, "node_modules/@repeaterjs/repeater": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.5.tgz", - "integrity": "sha512-l3YHBLAol6d/IKnB9LhpD0cEZWAoe3eFKUyTYWmFmCO2Q/WOckxLQAUyMZWwZV2M/m3+4vgRoaolFqaII82/TA==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.6.tgz", + "integrity": "sha512-Javneu5lsuhwNCryN+pXH93VPQ8g0dBX7wItHFgYiwQmzE1sVdg5tWHiOgHywzL2W21XQopa7IwIEnNbmeUJYA==" }, "node_modules/@reservoir0x/reservoir-sdk": { "version": "2.0.9", @@ -28321,9 +28706,9 @@ } }, "node_modules/@tendermint/sig/node_modules/node-gyp-build": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", - "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.2.tgz", + "integrity": "sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==", "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", @@ -29305,9 +29690,9 @@ } }, "node_modules/@types/node-cron": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@types/node-cron/-/node-cron-3.0.7.tgz", - "integrity": "sha512-9PuLtBboc/+JJ7FshmJWv769gDonTpItN0Ol5TMwclpSQNjVyB2SRxSKBcTtbSysSL5R7Oea06kTTFNciCoYwA==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@types/node-cron/-/node-cron-3.0.11.tgz", + "integrity": "sha512-0ikrnug3/IyneSHqCBeslAhlK2aBfYek1fGo4bP4QnZPmiqSGRK+Oy7ZMisLWkesffJvQ1cqAcBnJC+8+nxIAg==", "dev": true }, "node_modules/@types/node-fetch": { @@ -31176,52 +31561,69 @@ } }, "node_modules/@whatwg-node/events": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@whatwg-node/events/-/events-0.1.1.tgz", - "integrity": "sha512-AyQEn5hIPV7Ze+xFoXVU3QTHXVbWPrzaOkxtENMPMuNL6VVHrp4hHfDt9nrQpjO7BgvuM95dMtkycX5M/DZR3w==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@whatwg-node/events/-/events-0.1.2.tgz", + "integrity": "sha512-ApcWxkrs1WmEMS2CaLLFUEem/49erT3sxIVjpzU5f6zmVcnijtDSrhoK2zVobOIikZJdH63jdAXOrvjf6eOUNQ==", + "dependencies": { + "tslib": "^2.6.3" + }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" } }, + "node_modules/@whatwg-node/events/node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + }, "node_modules/@whatwg-node/fetch": { - "version": "0.9.17", - "resolved": "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.9.17.tgz", - "integrity": "sha512-TDYP3CpCrxwxpiNY0UMNf096H5Ihf67BK1iKGegQl5u9SlpEDYrvnV71gWBGJm+Xm31qOy8ATgma9rm8Pe7/5Q==", + "version": "0.9.21", + "resolved": "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.9.21.tgz", + "integrity": "sha512-Wt0jPb+04JjobK0pAAN7mEHxVHcGA9HoP3OyCsZtyAecNQeADXCZ1MihFwVwjsgaRYuGVmNlsCmLxlG6mor8Gw==", "dependencies": { - "@whatwg-node/node-fetch": "^0.5.7", + "@whatwg-node/node-fetch": "^0.5.23", "urlpattern-polyfill": "^10.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" } }, "node_modules/@whatwg-node/node-fetch": { - "version": "0.5.10", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.10.tgz", - "integrity": "sha512-KIAHepie/T1PRkUfze4t+bPlyvpxlWiXTPtcGlbIZ0vWkBJMdRmCg4ZrJ2y4XaO1eTPo1HlWYUuj1WvoIpumqg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "dependencies": { "@kamilkisiela/fast-url-parser": "^1.1.4", - "@whatwg-node/events": "^0.1.0", "busboy": "^1.6.0", "fast-querystring": "^1.1.1", - "tslib": "^2.3.1" + "tslib": "^2.6.3" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" } }, + "node_modules/@whatwg-node/node-fetch/node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + }, "node_modules/@whatwg-node/server": { - "version": "0.9.32", - "resolved": "https://registry.npmjs.org/@whatwg-node/server/-/server-0.9.32.tgz", - "integrity": "sha512-PRTRE8ZhObwYx9yRoUdxYkrhCoDk2vyDA5BtaG+NAqEmU1wwbwlXUpaeRRrPuGaM7ScbIkueU25A0GJIRQzccw==", + "version": "0.9.49", + "resolved": "https://registry.npmjs.org/@whatwg-node/server/-/server-0.9.49.tgz", + "integrity": "sha512-3KzLXw80gWnTsQ746G/LFdCThTPfDodjQs4PnmoNuPa6XUOl4HWq8TlJpxtmnEEB+y+UYLal+3VQ68dtYlbUDQ==", "dependencies": { - "@whatwg-node/fetch": "^0.9.17", - "tslib": "^2.3.1" + "@whatwg-node/fetch": "^0.9.21", + "tslib": "^2.6.3" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" } }, + "node_modules/@whatwg-node/server/node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + }, "node_modules/@wry/caches": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@wry/caches/-/caches-1.0.1.tgz", @@ -31641,18 +32043,6 @@ "node": ">=4" } }, - "node_modules/abstract-leveldown": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.0.3.tgz", - "integrity": "sha512-jzewKKpZbaYUa6HTThnrl+GrJhzjEAeuc7hTVpZdzg7kupXZFoqQDFwyOwLNbmJKJlmzw8yiipMPkDiuKkT06Q==", - "dependencies": { - "level-concat-iterator": "~2.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -33642,9 +34032,9 @@ "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" }, "node_modules/blob-to-it": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/blob-to-it/-/blob-to-it-2.0.5.tgz", - "integrity": "sha512-3VIFla8L4JuB+0WCdf+0POI7E1tTl8mhdGiwwwmnZEu6QjRJciS9fIvz8NgWY9URb0iagXYModGEYTcYeq9BMg==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/blob-to-it/-/blob-to-it-2.0.7.tgz", + "integrity": "sha512-mFAR/GKDDqFOkSBB7shXfsUZwU5DgK453++I8/SImNacfJsdKlx/oHTO0T4ZYHz8A2dnSONE+CX8L29VlWGKiQ==", "dependencies": { "browser-readablestream-to-it": "^2.0.0" } @@ -33965,9 +34355,9 @@ } }, "node_modules/browser-readablestream-to-it": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/browser-readablestream-to-it/-/browser-readablestream-to-it-2.0.5.tgz", - "integrity": "sha512-obLCT9jnxAeZlbaRWluUiZrcSJEoi2JkM0eoiJqlIP7MFwZwZjcB6giZvD343PXfr96ilD91M/wFqFvyAZq+Gg==" + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/browser-readablestream-to-it/-/browser-readablestream-to-it-2.0.7.tgz", + "integrity": "sha512-g1Aznml3HmqTLSXylZhGwdfnAa67+vlNAYhT9ROJZkAxY7yYmWusND10olvCMPe4sVhZyVwn5tPkRzOg85kBEg==" }, "node_modules/browser-stdout": { "version": "1.3.1", @@ -34390,15 +34780,6 @@ "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" }, - "node_modules/callback-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz", - "integrity": "sha512-sAZ9kODla+mGACBZ1IpTCAisKoGnv6PykW7fPk1LrM+mMepE18Yz0515yoVcrZy7dQsTUp3uZLQ/9Sx1RnLoHw==", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "> 1.0.0 < 3.0.0" - } - }, "node_modules/caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", @@ -34711,6 +35092,10 @@ "ieee754": "^1.2.1" } }, + "node_modules/ceramic": { + "resolved": "apps/ceramic", + "link": true + }, "node_modules/chai": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", @@ -36217,6 +36602,10 @@ "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz", "integrity": "sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==" }, + "node_modules/cron": { + "resolved": "apps/cron", + "link": true + }, "node_modules/cron-parser": { "version": "4.9.0", "resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz", @@ -36352,9 +36741,9 @@ } }, "node_modules/cross-inspect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cross-inspect/-/cross-inspect-1.0.0.tgz", - "integrity": "sha512-4PFfn4b5ZN6FMNGSZlyb7wUhuN8wvj8t/VQHZdM4JsDcruGJ8L2kf9zao98QIrBPFCpdk27qst/AGTl7pL3ypQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cross-inspect/-/cross-inspect-1.0.1.tgz", + "integrity": "sha512-Pcw1JTvZLSJH83iiGWt6fRcT+BjZlCDRVwYLbUcHzv/CRpB7r0MlSrGbIyQvVSNyGnbt7G4AXuyCiDR3POvZ1A==", "dependencies": { "tslib": "^2.4.0" }, @@ -37061,49 +37450,6 @@ "node": ">=0.8" } }, - "node_modules/deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", - "dependencies": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deferred-leveldown/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deferred-leveldown/node_modules/immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "node_modules/deferred-leveldown/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -38570,51 +38916,6 @@ "iconv-lite": "^0.6.2" } }, - "node_modules/encoding-down": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz", - "integrity": "sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==", - "dependencies": { - "abstract-leveldown": "^6.2.1", - "inherits": "^2.0.3", - "level-codec": "^9.0.0", - "level-errors": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/encoding-down/node_modules/abstract-leveldown": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz", - "integrity": "sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==", - "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/encoding-down/node_modules/immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "node_modules/encoding-down/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -38860,17 +39161,6 @@ "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -41375,9 +41665,9 @@ "dev": true }, "node_modules/fast-fifo": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", - "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==" + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==" }, "node_modules/fast-folder-size": { "version": "1.6.1", @@ -41486,26 +41776,6 @@ "fxparser": "src/cli/cli.js" } }, - "node_modules/fastfall": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/fastfall/-/fastfall-1.5.1.tgz", - "integrity": "sha512-KH6p+Z8AKPXnmA7+Iz2Lh8ARCMr+8WNPVludm1LGkZoD2MjY6LVnRMtTKhkdzI+jr0RzQWXKzKyBJm1zoHEL4Q==", - "dependencies": { - "reusify": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fastparallel": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/fastparallel/-/fastparallel-2.4.1.tgz", - "integrity": "sha512-qUmhxPgNHmvRjZKBFUNI0oZuuH9OlSIOXmJ98lhKPxMZZ7zS/Fi0wRHOihDSz0R1YiIOjxzOY4bq65YTcdBi2Q==", - "dependencies": { - "reusify": "^1.0.4", - "xtend": "^4.0.2" - } - }, "node_modules/fastq": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", @@ -41514,15 +41784,6 @@ "reusify": "^1.0.4" } }, - "node_modules/fastseries": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/fastseries/-/fastseries-1.7.2.tgz", - "integrity": "sha512-dTPFrPGS8SNSzAt7u/CbMKCJ3s01N04s4JFbORHcmyvVfVKmbhMD1VtRbh5enGHxkaQDqWyLefiKOGGmohGDDQ==", - "dependencies": { - "reusify": "^1.0.0", - "xtend": "^4.0.0" - } - }, "node_modules/fault": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", @@ -42638,7 +42899,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", - "dev": true, "engines": { "node": ">=18" }, @@ -42702,6 +42962,17 @@ "node": ">=8.0.0" } }, + "node_modules/get-port": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-7.1.0.tgz", + "integrity": "sha512-QB9NKEeDg3xxVwCCwJQ9+xycaz6pBB6iQ76wiWMl1927n0Kir6alPiP+yuiICLLU4jpMe08dXfpebuQppFA2zw==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-port-please": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz", @@ -43142,9 +43413,9 @@ } }, "node_modules/graphql-relay": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/graphql-relay/-/graphql-relay-0.10.1.tgz", - "integrity": "sha512-8AtwSe6B0/b4+YzynHr38PP7S+zX5Vs5LEo0BEzGCPq/THAiHa5H5ZLf3bRbKbok15ADxDQSsGJmlqXeJDDPIw==", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/graphql-relay/-/graphql-relay-0.10.2.tgz", + "integrity": "sha512-abybva1hmlNt7Y9pMpAzHuFnM2Mme/a2Usd8S4X27fNteLGRAECMYfhmsrpZFvGn3BhmBZugMXYW/Mesv3P1Kw==", "engines": { "node": "^12.20.0 || ^14.15.0 || >= 15.9.0" }, @@ -43248,18 +43519,18 @@ } }, "node_modules/graphql-yoga": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/graphql-yoga/-/graphql-yoga-5.3.0.tgz", - "integrity": "sha512-6mXoGE5AMN6YNugJvjBFIQ0dFUiOMloN0dAzLL8GFt4iJ5WlWRgjdzGHod2zZz7yWQokEVD42DHgrc7NY3Dm0w==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/graphql-yoga/-/graphql-yoga-5.7.0.tgz", + "integrity": "sha512-QyGVvFAvGhMrzjJvhjsxsyoE+e4lNrj5f5qOsRYJuWIjyw7tHfbBvybZIwzNOGY0aB5sgA8BlVvu5hxjdKJ5tQ==", "dependencies": { - "@envelop/core": "^5.0.0", - "@graphql-tools/executor": "^1.2.5", - "@graphql-tools/schema": "^10.0.0", - "@graphql-tools/utils": "^10.1.0", + "@envelop/core": "^5.0.1", + "@graphql-tools/executor": "^1.3.0", + "@graphql-tools/schema": "^10.0.4", + "@graphql-tools/utils": "^10.3.2", "@graphql-yoga/logger": "^2.0.0", - "@graphql-yoga/subscription": "^5.0.0", - "@whatwg-node/fetch": "^0.9.17", - "@whatwg-node/server": "^0.9.32", + "@graphql-yoga/subscription": "^5.0.1", + "@whatwg-node/fetch": "^0.9.18", + "@whatwg-node/server": "^0.9.44", "dset": "^3.1.1", "lru-cache": "^10.0.0", "tslib": "^2.5.2" @@ -43272,12 +43543,9 @@ } }, "node_modules/graphql-yoga/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "engines": { - "node": "14 || >=16.14" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/gtoken": { "version": "6.1.2", @@ -44702,18 +44970,18 @@ "integrity": "sha512-v7cSY1J8ydZ0GyjUHqF+1bshJ6cnEVLo9EnjB8p+4HDRPZc9N5jjmvUV7NvEsqQOKyH0pmIBFWXVQbiS0+OBbA==" }, "node_modules/interface-datastore": { - "version": "8.2.11", - "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.2.11.tgz", - "integrity": "sha512-9E0iXehfp/j0UbZ2mvlYB4K9pP7uQBCppfuy8WHs1EHF6wLQrM9+zwyX+8Qt6HnH4GKZRyXX/CNXm6oD4+QYgA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.3.0.tgz", + "integrity": "sha512-RM/rTSmRcnoCwGZIHrPm+nlGYVoT4R0lcFvNnDyhdFT4R6BuHHhfFP47UldVEjs98SfxLuMhaNMsyjI918saHw==", "dependencies": { - "interface-store": "^5.0.0", + "interface-store": "6.0.0", "uint8arrays": "^5.0.2" } }, "node_modules/interface-store": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-5.1.8.tgz", - "integrity": "sha512-7na81Uxkl0vqk0CBPO5PvyTkdaJBaezwUJGsMOz7riPOq0rJt+7W31iaopaMICWea/iykUsvNlPx/Tc+MxC3/w==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-6.0.0.tgz", + "integrity": "sha512-HkjsDPsjA7SKkCr+TH1elUQApAAM3X3JPwrz3vFzaf614wI+ZD6GVvwKGZCHYcbSRqeZP/uzVPqezzeISeo5kA==" }, "node_modules/internal-slot": { "version": "1.0.7", @@ -44788,12 +45056,6 @@ "node": ">= 12" } }, - "node_modules/ip-address/node_modules/jsbn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", - "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "optional": true - }, "node_modules/ip-address/node_modules/sprintf-js": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", @@ -44839,9 +45101,9 @@ } }, "node_modules/ipfs-core-types/node_modules/@types/node": { - "version": "18.19.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz", - "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==", + "version": "18.19.50", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.50.tgz", + "integrity": "sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg==", "dependencies": { "undici-types": "~5.26.4" } @@ -45033,9 +45295,9 @@ } }, "node_modules/ipfs-http-client/node_modules/@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "dependencies": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -45046,14 +45308,14 @@ } }, "node_modules/ipfs-http-client/node_modules/@ipld/dag-cbor/node_modules/multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/ipfs-http-client/node_modules/cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", "bin": { "cborg": "lib/bin.js" } @@ -45574,7 +45836,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", - "dev": true, "engines": { "node": ">=12" }, @@ -46067,14 +46328,14 @@ } }, "node_modules/it-all": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/it-all/-/it-all-3.0.4.tgz", - "integrity": "sha512-UMiy0i9DqCHBdWvMbzdYvVGa5/w4t1cc4nchpbnjdLhklglv8mQeEYnii0gvKESJuL1zV32Cqdb33R6/GPfxpQ==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/it-all/-/it-all-3.0.6.tgz", + "integrity": "sha512-HXZWbxCgQZJfrv5rXvaVeaayXED8nTKx9tj9fpBhmcUJcedVZshMMMqTj0RG2+scGypb9Ut1zd1ifbf3lA8L+Q==" }, "node_modules/it-batch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/it-batch/-/it-batch-3.0.4.tgz", - "integrity": "sha512-WRu2mqOYIs+T9k7+yxSK9VJdk0UE4R0jKQsWQcti5c6vhb1FhjC2+yCB5XBrctQ9edNfCMU/wVzdDj8qSwimbA==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/it-batch/-/it-batch-3.0.6.tgz", + "integrity": "sha512-pQAAlSvJ4aV6xM/6LRvkPdKSKXxS4my2fGzNUxJyAQ8ccFdxPmK1bUuF5OoeUDkcdrbs8jtsmc4DypCMrGY6sg==" }, "node_modules/it-first": { "version": "3.0.4", @@ -48628,6 +48889,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "optional": true + }, "node_modules/jsc-android": { "version": "250231.0.0", "resolved": "https://registry.npmjs.org/jsc-android/-/jsc-android-250231.0.0.tgz", @@ -49200,15 +49467,13 @@ } }, "node_modules/key-did-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", - "integrity": "sha512-IyEq64AdS6lUwtn3YSvGpu7KAGA2x5+fjRCUIa8+ccSLmWrODV/ICM5aa6hHV/19EPWef8/e322r9sQJJ6/3qA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-4.0.0.tgz", + "integrity": "sha512-+U2nd/0rjO4Yqe2hnHBD7ygcLRfT43Oje9IIjv1BlBi0lopwxZpIFQ7GekguOHK02r+JGdl8mpJVNHs5lvXVOA==", "dependencies": { - "@stablelib/ed25519": "^1.0.2", - "bigint-mod-arith": "^3.1.0", - "multiformats": "^11.0.1", - "nist-weierstrauss": "^1.6.1", - "uint8arrays": "^4.0.3", + "@noble/curves": "^1.2.0", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", "varint": "^6.0.0" }, "engines": { @@ -49216,30 +49481,9 @@ } }, "node_modules/key-did-resolver/node_modules/multiformats": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", - "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/key-did-resolver/node_modules/uint8arrays": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", - "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", - "dependencies": { - "multiformats": "^12.0.1" - } - }, - "node_modules/key-did-resolver/node_modules/uint8arrays/node_modules/multiformats": { - "version": "12.1.3", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", - "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==", - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "node_modules/keygrip": { "version": "1.1.0", @@ -49618,99 +49862,6 @@ "url": "https://opencollective.com/level" } }, - "node_modules/level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", - "dependencies": { - "buffer": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", - "dependencies": { - "errno": "~0.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/level-iterator-stream/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/level-iterator-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/level-js": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-js/-/level-js-4.0.2.tgz", - "integrity": "sha512-PeGjZsyMG4O89KHiez1zoMJxStnkM+oBIqgACjoo5PJqFiSUUm3GNod/KcbqN5ktyZa8jkG7I1T0P2u6HN9lIg==", - "dependencies": { - "abstract-leveldown": "~6.0.1", - "immediate": "~3.2.3", - "inherits": "^2.0.3", - "ltgt": "^2.1.2", - "typedarray-to-buffer": "~3.1.5" - } - }, - "node_modules/level-js/node_modules/immediate": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.2.3.tgz", - "integrity": "sha512-RrGCXRm/fRVqMIhqXrGEX9rRADavPiDFSoMb/k64i9XMk8uH4r/Omi5Ctierj6XzNecwDbO4WuFbDD1zmpl3Tg==" - }, - "node_modules/level-packager": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz", - "integrity": "sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==", - "dependencies": { - "encoding-down": "^6.3.0", - "levelup": "^4.3.2" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/level-supports": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", @@ -49754,213 +49905,6 @@ "ieee754": "^1.2.1" } }, - "node_modules/level-ts": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/level-ts/-/level-ts-2.1.0.tgz", - "integrity": "sha512-nzj/cy60OO7Pb4ofzpN0Xq+NiZaOI2f6FDWZGBczJJWxVHlPdcLJXAUQa8HuPdeLojPNBH3byr2l7rNCRF4VCQ==", - "dependencies": { - "level": "^5.0.1", - "levelgraph": "^2.1.1" - } - }, - "node_modules/level-ts/node_modules/level": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/level/-/level-5.0.1.tgz", - "integrity": "sha512-wcak5OQeA4rURGacqS62R/xNHjCYnJSQDBOlm4KNUGJVE9bWv2B04TclqReYejN+oD65PzD4FsqeWoI5wNC5Lg==", - "hasInstallScript": true, - "dependencies": { - "level-js": "^4.0.0", - "level-packager": "^5.0.0", - "leveldown": "^5.0.0", - "opencollective-postinstall": "^2.0.0" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/level-ws": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.1.0.tgz", - "integrity": "sha512-YlWbD7feUlvnI4Gm1khvsY59YhHk3ur/IZ1iywLqplBOfW2efwm9c6tn1jJcBYhHPUPEDNJxjXHtF3ksL2IXRg==", - "dependencies": { - "readable-stream": "^2.2.8", - "xtend": "^4.0.0" - } - }, - "node_modules/level-ws/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/level-ws/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/level-ws/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/level-ws/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/leveldown": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz", - "integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==", - "hasInstallScript": true, - "dependencies": { - "abstract-leveldown": "~6.2.1", - "napi-macros": "~2.0.0", - "node-gyp-build": "~4.1.0" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/leveldown/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/leveldown/node_modules/immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "node_modules/leveldown/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/leveldown/node_modules/napi-macros": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==" - }, - "node_modules/leveldown/node_modules/node-gyp-build": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz", - "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/levelgraph": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/levelgraph/-/levelgraph-2.1.1.tgz", - "integrity": "sha512-ckWZFYyTNsnZ681cLcRD+VDq33Tr0ia2tFR6jxwQk4iuvteSyVGHancHUYWbeiDOx3lJco8kJ7SQDOYqRVSOYA==", - "dependencies": { - "callback-stream": "^1.1.0", - "inherits": "^2.0.1", - "level-ws": "^0.1.0", - "lodash.keys": "^4.0.6", - "pump": "^1.0.1", - "readable-stream": "^2.2.10", - "steed": "^1.1.3", - "xtend": "^4.0.0" - } - }, - "node_modules/levelgraph/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/levelgraph/node_modules/pump": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", - "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/levelgraph/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/levelgraph/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/levelgraph/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", - "dependencies": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/levelup/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -50426,7 +50370,8 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true }, "node_modules/lodash.camelcase": { "version": "4.3.0", @@ -50511,11 +50456,6 @@ "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==" }, - "node_modules/lodash.keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-4.2.0.tgz", - "integrity": "sha512-J79MkJcp7Df5mizHiVNpjoHXLi4HLjh9VLS/M7lQSGoQ+0oQ+lWEigREkqKyizPB1IawvQLLKY8mzEcm1tkyxQ==" - }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -51026,11 +50966,6 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/ltgt": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", - "integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==" - }, "node_modules/luxon": { "version": "3.4.4", "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", @@ -52796,6 +52731,17 @@ "node": ">=6" } }, + "node_modules/mimic-function": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/min-document": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", @@ -53959,9 +53905,9 @@ "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" }, "node_modules/node-cron": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.2.tgz", - "integrity": "sha512-iP8l0yGlNpE0e6q1o185yOApANRe47UPbLf4YxfbiNHt/RU5eBcGB/e0oudruheSf+LQeDMezqC5BVAb5wwRcQ==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.3.tgz", + "integrity": "sha512-dOal67//nohNgYWb+nWmg5dkFdIwDm8EpeGYMekPMrngV3637lqnX0lbUcCtgibHTz6SEz7DAIjKvKDFYCnO1A==", "dependencies": { "uuid": "8.3.2" }, @@ -54103,6 +54049,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "deprecated": "This package is no longer supported.", "optional": true, "dependencies": { "delegates": "^1.0.0", @@ -54116,6 +54063,7 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "deprecated": "This package is no longer supported.", "optional": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", @@ -54131,18 +54079,6 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "optional": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/node-gyp/node_modules/nopt": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", @@ -54162,6 +54098,7 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "deprecated": "This package is no longer supported.", "optional": true, "dependencies": { "are-we-there-yet": "^3.0.0", @@ -54188,13 +54125,10 @@ } }, "node_modules/node-gyp/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -54226,12 +54160,6 @@ "node": ">= 8" } }, - "node_modules/node-gyp/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true - }, "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", @@ -55122,14 +55050,6 @@ "integrity": "sha512-XpeCy01X6L5EpP+6Hc3jWN7rMZJ+/k1lwki/kTmWzbVhdPie3jd5O2ZtedEx8Yp58icJ0osVldLMrTB/zslQXA==", "peer": true }, - "node_modules/opencollective-postinstall": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", - "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", - "bin": { - "opencollective-postinstall": "index.js" - } - }, "node_modules/opener": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", @@ -55186,19 +55106,18 @@ } }, "node_modules/ora": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-8.0.1.tgz", - "integrity": "sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==", - "dev": true, + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-8.1.0.tgz", + "integrity": "sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==", "dependencies": { "chalk": "^5.3.0", - "cli-cursor": "^4.0.0", + "cli-cursor": "^5.0.0", "cli-spinners": "^2.9.2", "is-interactive": "^2.0.0", "is-unicode-supported": "^2.0.0", "log-symbols": "^6.0.0", - "stdin-discarder": "^0.2.1", - "string-width": "^7.0.0", + "stdin-discarder": "^0.2.2", + "string-width": "^7.2.0", "strip-ansi": "^7.1.0" }, "engines": { @@ -55212,7 +55131,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, "engines": { "node": ">=12" }, @@ -55224,7 +55142,6 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -55233,31 +55150,28 @@ } }, "node_modules/ora/node_modules/cli-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", "dependencies": { - "restore-cursor": "^4.0.0" + "restore-cursor": "^5.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/ora/node_modules/emoji-regex": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", - "dev": true + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==" }, "node_modules/ora/node_modules/is-unicode-supported": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", - "dev": true, "engines": { "node": ">=18" }, @@ -55269,7 +55183,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", - "dev": true, "dependencies": { "chalk": "^5.3.0", "is-unicode-supported": "^1.3.0" @@ -55285,7 +55198,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", - "dev": true, "engines": { "node": ">=12" }, @@ -55293,27 +55205,50 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ora/node_modules/onetime": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", + "dependencies": { + "mimic-function": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/ora/node_modules/restore-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", - "dev": true, + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "onetime": "^7.0.0", + "signal-exit": "^4.1.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ora/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/ora/node_modules/string-width": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.0.0.tgz", - "integrity": "sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw==", - "dev": true, + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dependencies": { "emoji-regex": "^10.3.0", "get-east-asian-width": "^1.0.0", @@ -55330,7 +55265,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, "dependencies": { "ansi-regex": "^6.0.1" }, @@ -55501,7 +55435,7 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-queue/node_modules/p-timeout": { + "node_modules/p-timeout": { "version": "6.1.2", "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-6.1.2.tgz", "integrity": "sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==", @@ -57113,13 +57047,9 @@ "integrity": "sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==" }, "node_modules/progress-events": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/progress-events/-/progress-events-1.0.0.tgz", - "integrity": "sha512-zIB6QDrSbPfRg+33FZalluFIowkbV5Xh1xSuetjG+rlC5he6u2dc6VQJ0TbMdlN3R1RHdpOqxEFMKTnQ+itUwA==", - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/progress-events/-/progress-events-1.0.1.tgz", + "integrity": "sha512-MOzLIwhpt64KIVN64h1MwdKWiyKFNc/S6BoYKPIVUHFg0/eIEyBulhWCgn678v/4c0ri3FdGuzXymNCv02MUIw==" }, "node_modules/promise": { "version": "8.3.0", @@ -57527,11 +57457,6 @@ "resolved": "https://registry.npmjs.org/proxy-compare/-/proxy-compare-2.5.1.tgz", "integrity": "sha512-oyfc0Tx87Cpwva5ZXezSp5V9vht1c7dZBhvuV/y3ctkgMVUmiAGDVeeB0dKhGSyT0v1ZTEQYpe/RXlBVBNuCLA==" }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" - }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -62143,12 +62068,9 @@ } }, "node_modules/sqlite3/node_modules/node-addon-api": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", - "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==", - "engines": { - "node": "^16 || ^18 || >= 20" - } + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" }, "node_modules/ssri": { "version": "8.0.1", @@ -62240,7 +62162,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz", "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==", - "dev": true, "engines": { "node": ">=18" }, @@ -62248,18 +62169,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/steed": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/steed/-/steed-1.1.3.tgz", - "integrity": "sha512-EUkci0FAUiE4IvGTSKcDJIQ/eRUP2JJb56+fvZ4sdnguLTqIdKjSxUe138poW8mkvKWXW2sFPrgTsxqoISnmoA==", - "dependencies": { - "fastfall": "^1.5.0", - "fastparallel": "^2.2.0", - "fastq": "^1.3.0", - "fastseries": "^1.7.0", - "reusify": "^1.0.0" - } - }, "node_modules/stop-iteration-iterator": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", @@ -66502,6 +66411,10 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/websockets": { + "resolved": "apps/websockets", + "link": true + }, "node_modules/whatwg-fetch": { "version": "3.6.17", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz", @@ -70070,11 +69983,11 @@ } }, "@ceramicnetwork/anchor-listener": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-listener/-/anchor-listener-4.5.0.tgz", - "integrity": "sha512-m2Z9v0ZHsAETEKJQh+lpgzW3IpBFif/V35qPmW+JWtWXlnm3HA87kgY/1xnZ22wQdvQCEfEuiLaGnAC2yvuTGg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-listener/-/anchor-listener-4.15.0.tgz", + "integrity": "sha512-IM5Im3/ySHHOSbSXdOO0dY/wwkp8kGMeTlaZ6ruHaPmMx7CP5V6UZ3n5wlhbC5YFlBERU+gQtboqBQqfaTOsoQ==", "requires": { - "@ceramicnetwork/anchor-utils": "^4.5.0", + "@ceramicnetwork/anchor-utils": "^4.15.0", "@ethersproject/providers": "^5.5.1", "rxjs": "^7.8.1" }, @@ -70090,29 +70003,29 @@ } }, "@ceramicnetwork/anchor-utils": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-utils/-/anchor-utils-4.5.0.tgz", - "integrity": "sha512-7gsjNZq5WuKrdnOIaBoW5MeOr0UJRlkNU4J8KBq4Q73YnIBF1Swhm/T63XnIzq6qffW7LVqDxRkT7Ud1SerNtw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/anchor-utils/-/anchor-utils-4.15.0.tgz", + "integrity": "sha512-/P2Uajsxg+Nl63HRT3J2GwLfl7BiL+3J1BMWkxIhz1tLr915AyK590t3Ij3a43kbQSFcFYS5enypnMxz3uetfw==", "requires": { - "@ceramicnetwork/common": "^5.5.0", + "@ceramicnetwork/common": "^5.15.0", "@ethersproject/abi": "^5.7.0", "multiformats": "^13.0.0", "uint8arrays": "^5.0.1" }, "dependencies": { "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, "@ceramicnetwork/blockchain-utils-linking": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-linking/-/blockchain-utils-linking-5.0.0.tgz", - "integrity": "sha512-9WzcRioVzbaxkA9+YTCa+UiOqJnprrK5r3BopPE7gDVk69vpdoEYjf3kP+gmHSQyFUFArwSO9vuYbJ8JQr1k0A==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-linking/-/blockchain-utils-linking-5.6.0.tgz", + "integrity": "sha512-UhaIK+wGAIMCwBJQTKc7ey9GffIZhMg16nQ5K55QLMbW9YnkU3W6yQ2JpBWe5BulymIe4uCOsT8cdo7tAgafJA==", "requires": { - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/streamid": "^5.6.0", "@didtools/cacao": "^3.0.0", "@stablelib/random": "^1.0.1", "@stablelib/sha256": "^1.0.1", @@ -70122,15 +70035,15 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } @@ -70150,9 +70063,9 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -70179,24 +70092,24 @@ } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/blockchain-utils-validation": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-validation/-/blockchain-utils-validation-5.5.0.tgz", - "integrity": "sha512-1hLGXugUE6qNjkbzOAeInj0l58y9ejI19wW8y1TTQTpeThUjkUFxdaiLkKWitIXAcw8Ve+Vnpw5f0VnwtR/+hA==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/blockchain-utils-validation/-/blockchain-utils-validation-5.15.0.tgz", + "integrity": "sha512-CiAR8pwBUxNIOk2IfnsmhNj4txjea/rC7En52ljJyMghjilzJvqZCbRIlNHdmH+oBFl8kGnnWwxtTdznDa3UcA==", "requires": { - "@ceramicnetwork/blockchain-utils-linking": "^5.0.0", - "@ceramicnetwork/common": "^5.5.0", + "@ceramicnetwork/blockchain-utils-linking": "^5.4.0", + "@ceramicnetwork/common": "^5.15.0", "@ethersproject/contracts": "^5.5.0", "@ethersproject/providers": "^5.5.1", "@ethersproject/wallet": "^5.5.0", @@ -70212,12 +70125,12 @@ } }, "@ceramicnetwork/codecs": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/codecs/-/codecs-4.5.0.tgz", - "integrity": "sha512-++PHxu6B4s7Tvk8RDOGgj2LxpZISJBAAVbzQd8bedPs/qSMufDs3EE99SR92YhHLbn5Wt/+uEZcSNGiHh8HyhQ==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/codecs/-/codecs-4.15.0.tgz", + "integrity": "sha512-BsFRPoVCVPUHGoMOfL+KWq2D8HFxiyUqphq9KQMiiTTsDTEiHOLgJ6x1YEMP0A10ZschTbc1wCaQbUxlz5w5Qg==", "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "cartonne": "^3.0.1", "codeco": "^1.1.0", "dag-jose": "^4.0.0", @@ -70226,38 +70139,47 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + } } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, "@ceramicnetwork/common": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-5.5.0.tgz", - "integrity": "sha512-zEYVVZAZ6lo0GHgtJu7uiQRPn8++32SzNFA4n8gao9jTujlFYsmQW8n7EbfZIooIPTrByqLpg/YSurr8kvQMhw==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-5.15.0.tgz", + "integrity": "sha512-yseYMFT36Ty9FAUuYv5yqygQ4H1jGGfxcjKEYSNDBwczMjVKYsPm77/txzpFDDjOWiVM4hHlM15bPiRVXW4L4w==", "requires": { - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/node-metrics": "^1.0.3", + "@ceramicnetwork/streamid": "^5.4.0", "@didtools/cacao": "^3.0.0", + "@didtools/key-webauthn": "^2.0.2", "@didtools/pkh-ethereum": "^0.2.0", "@didtools/pkh-solana": "^0.2.0", "@didtools/pkh-stacks": "^0.2.0", @@ -70276,15 +70198,15 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" }, @@ -70309,6 +70231,11 @@ "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" } } + }, + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, @@ -70438,30 +70365,31 @@ } }, "@ceramicnetwork/core": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/core/-/core-5.6.0.tgz", - "integrity": "sha512-svRyYxXW1HeP0EhxDjtisrZYfYuPUjMA4ZlM5o4xs6qGO0GJl88ttPTFPA5LI/iWAdzwyeTxpvmORwoq0A+j6w==", - "requires": { - "@ceramicnetwork/anchor-listener": "^4.5.0", - "@ceramicnetwork/anchor-utils": "^4.5.0", - "@ceramicnetwork/codecs": "^4.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/indexing": "^4.6.0", - "@ceramicnetwork/ipfs-topology": "^5.5.0", - "@ceramicnetwork/job-queue": "^4.6.0", - "@ceramicnetwork/model-metrics": "^1.2.5", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/core/-/core-5.16.0.tgz", + "integrity": "sha512-mRTbGJGaHZjTzGuc+GsS1qBmwcqrXAzUioXMYya9n8D5AoIjYAaJANJXKXd4+aOUwFGlx099MSMwu12FIOy9sA==", + "requires": { + "@ceramicnetwork/anchor-listener": "^4.15.0", + "@ceramicnetwork/anchor-utils": "^4.15.0", + "@ceramicnetwork/codecs": "^4.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/indexing": "^4.16.0", + "@ceramicnetwork/ipfs-topology": "^5.15.0", + "@ceramicnetwork/job-queue": "^4.16.0", + "@ceramicnetwork/node-metrics": "^1.0.3", "@ceramicnetwork/observability": "^1.4.4", - "@ceramicnetwork/pinning-aggregation": "^5.5.0", - "@ceramicnetwork/pinning-ipfs-backend": "^5.5.0", - "@ceramicnetwork/stream-caip10-link": "^5.5.0", - "@ceramicnetwork/stream-caip10-link-handler": "^5.6.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/stream-model-handler": "^4.6.0", - "@ceramicnetwork/stream-model-instance": "^4.6.0", - "@ceramicnetwork/stream-model-instance-handler": "^4.6.0", - "@ceramicnetwork/stream-tile": "^5.5.0", - "@ceramicnetwork/stream-tile-handler": "^5.6.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/pinning-aggregation": "^5.15.0", + "@ceramicnetwork/pinning-ipfs-backend": "^5.15.0", + "@ceramicnetwork/stream-caip10-link": "^5.15.0", + "@ceramicnetwork/stream-caip10-link-handler": "^5.16.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/stream-model-handler": "^4.16.0", + "@ceramicnetwork/stream-model-instance": "^4.16.0", + "@ceramicnetwork/stream-model-instance-handler": "^4.16.0", + "@ceramicnetwork/stream-tile": "^5.15.0", + "@ceramicnetwork/stream-tile-handler": "^5.16.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ceramicnetwork/wasm-bloom-filter": "^0.1.0", "@datastructures-js/priority-queue": "^6.1.0", "@ethersproject/providers": "^5.5.1", @@ -70482,7 +70410,7 @@ "it-first": "^3.0.4", "knex": "^2.5.1", "least-recent": "^1.0.3", - "level-ts": "^2.1.0", + "level": "^8.0.1", "lodash.clonedeep": "^4.5.0", "mapmoize": "^1.2.1", "multiformats": "^13.0.0", @@ -70494,17 +70422,24 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + } } }, "@didtools/cacao": { @@ -70522,9 +70457,9 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -70542,6 +70477,18 @@ "uint8arrays": "^5.0.1" } }, + "@didtools/pkh-ethereum": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", + "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", + "requires": { + "@didtools/cacao": "^3.0.0", + "@noble/curves": "^1.2.0", + "@noble/hashes": "^1.3.2", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + } + }, "@didtools/siwx": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", @@ -70550,15 +70497,10 @@ "codeco": "^1.2.0" } }, - "@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==" - }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "dag-jose-utils": { "version": "4.0.0", @@ -70570,9 +70512,9 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -70596,26 +70538,12 @@ "multiformats": "^13.0.0", "rpc-utils": "^0.6.2", "uint8arrays": "^5.0.1" - }, - "dependencies": { - "@didtools/pkh-ethereum": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", - "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", - "requires": { - "@didtools/cacao": "^3.0.0", - "@noble/curves": "^1.2.0", - "@noble/hashes": "^1.3.2", - "@stablelib/random": "^1.0.2", - "caip": "^1.1.0" - } - } } }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "rxjs": { "version": "7.8.1", @@ -70678,16 +70606,16 @@ } }, "@ceramicnetwork/indexing": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/indexing/-/indexing-4.6.0.tgz", - "integrity": "sha512-e5afRrLfr4lh7nUbEzZz5CbSQr9fkinfTDHiYVCKpxYEVQLEVCo1qihDCVJ3vK1p0psk6eIUZ1CYKXdV6Js5Lg==", - "requires": { - "@ceramicnetwork/anchor-listener": "^4.5.0", - "@ceramicnetwork/anchor-utils": "^4.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/job-queue": "^4.6.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/indexing/-/indexing-4.16.0.tgz", + "integrity": "sha512-q0eF7FRMR4MD8uwMqpMfKH4E0qh2Dzs+oUldnbZy9+XqaPVh6WV6/wNiO+a+Qyq97mSvQAnhWTWc6zU/KzX3IA==", + "requires": { + "@ceramicnetwork/anchor-listener": "^4.15.0", + "@ceramicnetwork/anchor-utils": "^4.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/job-queue": "^4.16.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ethersproject/providers": "^5.5.1", "knex": "^2.5.1", "lodash.clonedeep": "^4.5.0", @@ -70699,28 +70627,35 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + } } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "rxjs": { "version": "7.8.1", @@ -70733,19 +70668,19 @@ } }, "@ceramicnetwork/ipfs-topology": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/ipfs-topology/-/ipfs-topology-5.5.0.tgz", - "integrity": "sha512-Pbk3TbdLNRM7/auC/PhDGiEeLMpk36dG9HxdHr3F/dl28ODJe6gEU9TSYlfw9n8IFJaf+DYtdHVLHHn4BaQ53Q==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/ipfs-topology/-/ipfs-topology-5.15.0.tgz", + "integrity": "sha512-2IeDXua96UJE3ksPa9j4tUbhQOMnQA0WRGcc33Uw1hCvmXgsav5dXN/zEpK0q8Jz9xHx4DsZLtzSSD2qVqrdkg==", "requires": { - "@ceramicnetwork/common": "^5.5.0" + "@ceramicnetwork/common": "^5.15.0" } }, "@ceramicnetwork/job-queue": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/job-queue/-/job-queue-4.6.0.tgz", - "integrity": "sha512-YqAcD2yHArZnwU47h4mGYust5K2OmMa9pu9z46lIL2+WBpWrstT5I8Nbr9p+zpZ4JS5y1TZveKVsQFnk9c9iSw==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/job-queue/-/job-queue-4.16.0.tgz", + "integrity": "sha512-dCafjMxpuNUZOwgK9qey+LZDM3NwxbcHghOvsT6ephgcoImUKwIA/6tpX8SFsw97yfDXUJLpzvTWzmQT3qwclw==", "requires": { - "@ceramicnetwork/common": "^5.5.0", + "@ceramicnetwork/common": "^5.15.0", "pg": "^8.11.3", "pg-boss": "^8.2.0", "rxjs": "^7.8.1" @@ -70761,10 +70696,10 @@ } } }, - "@ceramicnetwork/model-metrics": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/model-metrics/-/model-metrics-1.2.5.tgz", - "integrity": "sha512-L2T0K57CWCyHzTkGmBdM3BNX35YRPX9KqRVkPSjBv2q3Cwwm9KkrBRYHLN6W+37eWVBmKOq57lSTiQsnuSskAw==", + "@ceramicnetwork/node-metrics": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/node-metrics/-/node-metrics-1.0.5.tgz", + "integrity": "sha512-2PcMKitsE+J+uOfVk25RtZliZoQAE26qCAadQsUqTSCQn1QZOnrMXpexWtNnzyxW0jVKtmQ6/05qYPkYZ5jl3w==", "requires": { "@ceramicnetwork/stream-model-instance": "^2.3.0", "@ceramicnetwork/streamid": "^3.3.0", @@ -70826,20 +70761,6 @@ "uint8arrays": "^5.0.1" } }, - "@ceramicnetwork/streamid": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-3.4.1.tgz", - "integrity": "sha512-m6uZjcdMdwzyO6TIVTJF4IJYjuceflmYDrlRxDcXrZySBNNKnL40tSHbzpcTfOy5YcIsTqJFxqUZQrFrC0mlDA==", - "requires": { - "@ipld/dag-cbor": "^7.0.0", - "@stablelib/sha256": "^1.0.1", - "cborg": "^1.10.2", - "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", - "uint8arrays": "^5.0.1", - "varint": "^6.0.0" - } - }, "@didtools/cacao": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", @@ -70855,18 +70776,18 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" } } }, @@ -70937,18 +70858,18 @@ } }, "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "uint8arrays": { "version": "4.0.10", @@ -70975,11 +70896,6 @@ "codeco": "^1.2.0" } }, - "@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==" - }, "dag-jose-utils": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/dag-jose-utils/-/dag-jose-utils-4.0.0.tgz", @@ -70990,18 +70906,18 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" } } }, @@ -71037,21 +70953,10 @@ } } }, - "key-did-resolver": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-4.0.0.tgz", - "integrity": "sha512-+U2nd/0rjO4Yqe2hnHBD7ygcLRfT43Oje9IIjv1BlBi0lopwxZpIFQ7GekguOHK02r+JGdl8mpJVNHs5lvXVOA==", - "requires": { - "@noble/curves": "^1.2.0", - "multiformats": "^13.0.0", - "uint8arrays": "^5.0.1", - "varint": "^6.0.0" - } - }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" }, "rxjs": { "version": "7.8.1", @@ -71064,41 +70969,41 @@ } }, "@ceramicnetwork/observability": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/observability/-/observability-1.4.4.tgz", - "integrity": "sha512-kHWnfq8SoTjO8qAU+ErXPa0iqFY3cXSQcA9CJJK40tyB6tIR+9zKNbfCDFwEF/UPZSiVQcO/pVsxTe5CcmHeEg==", - "requires": { - "@opentelemetry/api": "1.3.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.41.0", - "@opentelemetry/exporter-prometheus": "0.41.0", - "@opentelemetry/exporter-trace-otlp-http": "0.41.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "@opentelemetry/sdk-trace-base": "1.15.0", - "@opentelemetry/semantic-conventions": "1.15.0", + "version": "1.5.7", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/observability/-/observability-1.5.7.tgz", + "integrity": "sha512-tyUJZD1lhpLSd5jrV4VO00OufiYTfP2bFJ5yGiwNoHn8ZufNfAufFveGPpc1TfseuveY0OOO1stjx0/ECJNojA==", + "requires": { + "@opentelemetry/api": "^1.8.0", + "@opentelemetry/exporter-metrics-otlp-http": "^0.50.0", + "@opentelemetry/exporter-prometheus": "^0.50.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.50.0", + "@opentelemetry/resources": "^1.23.0", + "@opentelemetry/sdk-metrics": "^1.23.0", + "@opentelemetry/sdk-trace-base": "^1.23.0", + "@opentelemetry/semantic-conventions": "^1.23.0", "@types/node": "^20.11.16" }, "dependencies": { "@opentelemetry/api": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.3.0.tgz", - "integrity": "sha512-YveTnGNsFFixTKJz09Oi4zYkiLT5af3WpZDu4aIUM7xX+2bHAkOJayFTVQd6zB8kkWPpbua4Ha6Ql00grdLlJQ==" + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", + "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==" } } }, "@ceramicnetwork/pinning-aggregation": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-aggregation/-/pinning-aggregation-5.5.0.tgz", - "integrity": "sha512-6w03kdpuo7fGHu8WJxt/bEXa3M7W3xAb6HDQRNf6Iz8edGh/R3iKjgloVMZke+BLWn0e7RBaZFaVo5CpUtTlIg==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-aggregation/-/pinning-aggregation-5.15.0.tgz", + "integrity": "sha512-Zkz4tXoTSEtwUv2fRlBR2wBX5lnq4Kc/R4qLI3GxDccB1vHKZChd94dn9HXHl7Mm8nlL9xIPq/+BDkeBVNsU4A==", "requires": { "@stablelib/sha256": "^1.0.1", "uint8arrays": "^5.0.1" } }, "@ceramicnetwork/pinning-ipfs-backend": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-ipfs-backend/-/pinning-ipfs-backend-5.5.0.tgz", - "integrity": "sha512-2e47FvJGFmxjOomhj4dpTfb8OrvbOJA63rW2PYKwhA99FE0HBcbvSgRsejddYC1FsBYlnDsd7iR40wzhM8loyA==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/pinning-ipfs-backend/-/pinning-ipfs-backend-5.15.0.tgz", + "integrity": "sha512-5eQRmM/oK0oWbT9ReTtIZ0lGyUApVftAIlJ8FmreIMvj78t9lYrwG8+LU1/1GlxDp0zXaBxV8DHRcfVIAV41uA==", "requires": { "@stablelib/sha256": "^1.0.1", "ipfs-http-client": "^60.0.0", @@ -71106,98 +71011,99 @@ } }, "@ceramicnetwork/stream-caip10-link": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link/-/stream-caip10-link-5.5.0.tgz", - "integrity": "sha512-X7HFHOuWlMBoZH3gSHbdXVjY8QYiDR5971uvhkNSpzxXV/Q9oqyRAULEFBuAKdH1+FUkaiaCxC2xaVh3ydC5Cg==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link/-/stream-caip10-link-5.15.0.tgz", + "integrity": "sha512-txZQvb3NHcvpikzMUCPjUdBtQmKrbm859nCaGCafNo1nJkM3yLRA1h0ZvRSYT516PXC6COut4DKnPNJMeM68fw==", "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "caip": "~1.1.0", "did-resolver": "^4.0.1", "lodash.clonedeep": "^4.5.0" }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/stream-caip10-link-handler": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link-handler/-/stream-caip10-link-handler-5.6.0.tgz", - "integrity": "sha512-pKCipn3y6CflzY/K3oeRyHwDDhBSvFy+jvZPqSbMY5s+96vueBNPsaBcqMZEd2onjl+hMGqjukH+QtGk+S5faQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link-handler/-/stream-caip10-link-handler-5.16.0.tgz", + "integrity": "sha512-L7hOoYmQQLlQ0nm6QycrpucutXaJAPK2y5DOQXCX213ARZMuVOd6fVCJvlEflOStiBz7W1SkdrIt7hDgfiSvpQ==", "requires": { - "@ceramicnetwork/blockchain-utils-validation": "^5.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-caip10-link": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0" + "@ceramicnetwork/blockchain-utils-validation": "^5.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-caip10-link": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0" } }, "@ceramicnetwork/stream-handler-common": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-handler-common/-/stream-handler-common-4.5.0.tgz", - "integrity": "sha512-WpvAuSEtrHviLj4AOV9muoNb6CfdqkBFWYE6Ph8xRHvL5Q9noBZprn5Mi0wt6XSCe8sydsFM+Cw0A2vhQ37bRw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-handler-common/-/stream-handler-common-4.15.0.tgz", + "integrity": "sha512-0QFXL38tME0zZuVr3bY8neRJOFJioj+1k1ChlltaFzu2kLUsF5aCwsStYbxkFz+h8p0AOXi1cIxQxaQiTzM8LQ==", "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/observability": "^1.4.4", + "@ceramicnetwork/streamid": "^5.4.0", "lodash.clonedeep": "^4.5.0" }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/stream-model": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model/-/stream-model-4.5.0.tgz", - "integrity": "sha512-I0jYlptr4v31T3VlSwvYMggrx2DLahsC1u5ErVRBZeW8NeY/7VWUzKVQtuOfc5Wa2XdRJ7ODINyszWKb6nIneg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model/-/stream-model-4.15.0.tgz", + "integrity": "sha512-lUeoTfKHLARYiz9KNxYJaZUgy6KlkJL8oXpDgkE65sZIzGl0zXedtmLmiS8xKwgjYQwUMsAOmW8v4D4HSztAvg==", "requires": { - "@ceramicnetwork/codecs": "^4.5.0", - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/codecs": "^4.15.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ipld/dag-cbor": "^7.0.0", "@stablelib/random": "^1.0.1", "ajv": "^8.8.2", @@ -71210,40 +71116,47 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + } } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, "@ceramicnetwork/stream-model-handler": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-handler/-/stream-model-handler-4.6.0.tgz", - "integrity": "sha512-+pP6xoBlOl4LIMAHEp4RXwk5DclnQ/TnE8dgBYWDI3OhGEsCzY911v+y1J2ldTic5UxakE/tNMm2a4Rh60PBQQ==", - "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-handler/-/stream-model-handler-4.16.0.tgz", + "integrity": "sha512-WdyBByaZYFfTHRms/gWasqhxz5S12WqfpIDMoREHSXq2Wc4PXraZfCiUHKvpkJVN66vLlaCho7tUZ1AQVEcIxg==", + "requires": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "ajv": "^8.8.2", "ajv-formats": "^2.1.1", "fast-json-patch": "^3.1.0", @@ -71254,38 +71167,38 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/stream-model-instance": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-4.6.0.tgz", - "integrity": "sha512-uksXGq4ytcR9bHgLm68t2unsk2QCOqEVOnGWmZH7G47XvbfV/Bm18NAO9cZagSRa5ogbCf4+N3AuZtLg/TDWKA==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-4.16.0.tgz", + "integrity": "sha512-kq0Uv3/oAikj1ZHNYZzhVtEPhSpf6JXoIiCF60h1X7IqEc5/Fb6EarLyhuETFCVa+xFqhAsJpahtPW0YR5tJ+w==", "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ipld/dag-cbor": "^7.0.0", "@stablelib/random": "^1.0.1", "fast-json-patch": "^3.1.0", @@ -71294,82 +71207,81 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/stream-model-instance-handler": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance-handler/-/stream-model-instance-handler-4.6.0.tgz", - "integrity": "sha512-K4XnwsXFTfLIPUii9GaJDvJ369XFtJ7Ye8ZFZaaMPnmS6B0wb55k4fTNrAXWULUx7Rn4PoFjXgvxPcSm9nKCQA==", - "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0", - "@ceramicnetwork/stream-model": "^4.5.0", - "@ceramicnetwork/stream-model-instance": "^4.6.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance-handler/-/stream-model-instance-handler-4.16.0.tgz", + "integrity": "sha512-Qphg1tkD9FjjDLG0uOOzzBoBmwwDiUAPt1VzzU/WX2l1vKms+oapqvzP8gzJApFgBW3L7A5GxP9i+2i3XU94IA==", + "requires": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/stream-model-instance": "^4.16.0", + "@ceramicnetwork/streamid": "^5.4.0", "ajv": "^8.8.2", "ajv-formats": "^2.1.1", "fast-json-patch": "^3.1.0", - "least-recent": "^1.0.3", "lodash.clonedeep": "^4.5.0", "uint8arrays": "^5.0.1" }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/stream-tile": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile/-/stream-tile-5.5.0.tgz", - "integrity": "sha512-KhY5u553qh1Cl0R1BZbxvXpzDyW2p+lGzzDvQYO7et2D7KKqd9O0mkFSCzlsJC43xcOwY00JkbcRtHX3JhzabA==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile/-/stream-tile-5.15.0.tgz", + "integrity": "sha512-BzHIhfQfCXdGGSykoeKpxEhJ811BZWCYOHR98UXAguzQdPbMR1uXLoxnu08bMMrcSd8KhO1BZ3kl2BWC5gbqkA==", "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "@ipld/dag-cbor": "^7.0.0", "@stablelib/random": "^1.0.1", "dids": "^5.0.0", @@ -71379,15 +71291,15 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } @@ -71491,21 +71403,21 @@ } }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/stream-tile-handler": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile-handler/-/stream-tile-handler-5.6.0.tgz", - "integrity": "sha512-wOkmvcSzGCbrU2SC0Q8wvCFc4P/gX6FM2y4MHmk6wziUovqFFcp+n2vD1X8CC5WZllpji4JRiLdphjZNRZSruw==", - "requires": { - "@ceramicnetwork/common": "^5.5.0", - "@ceramicnetwork/stream-handler-common": "^4.5.0", - "@ceramicnetwork/stream-tile": "^5.5.0", - "@ceramicnetwork/streamid": "^5.0.0", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile-handler/-/stream-tile-handler-5.16.0.tgz", + "integrity": "sha512-cz/ZMWm24C4vW4mjxcgE/UcOxpLVZe7lbFJyDIZjL4JYuR16BR4S+SO0TaBobzYOdY1fiC3FHeWlpPi1ena+8A==", + "requires": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-handler-common": "^4.15.0", + "@ceramicnetwork/stream-tile": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", "ajv": "^8.8.2", "ajv-formats": "^2.1.1", "fast-json-patch": "^3.1.0", @@ -71515,68 +71427,49 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, "@ceramicnetwork/streamid": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-3.2.0.tgz", - "integrity": "sha512-o1nlXcSosbl2pcA3vkdZyiwdwDC7J8O+u/mGdBysJ6brQvQcbB9W9QYE6OgB5p+dxXdY9u5zwATURIEw5Ify3w==", - "dev": true, + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-3.4.1.tgz", + "integrity": "sha512-m6uZjcdMdwzyO6TIVTJF4IJYjuceflmYDrlRxDcXrZySBNNKnL40tSHbzpcTfOy5YcIsTqJFxqUZQrFrC0mlDA==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^1.10.2", "mapmoize": "^1.2.1", - "multiformats": "^11.0.1", - "uint8arrays": "^4.0.9", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", "varint": "^6.0.0" }, "dependencies": { "multiformats": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", - "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", - "dev": true - }, - "uint8arrays": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", - "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", - "dev": true, - "requires": { - "multiformats": "^12.0.1" - }, - "dependencies": { - "multiformats": { - "version": "12.1.3", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", - "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==", - "dev": true - } - } + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -71719,6 +71612,7 @@ "version": "0.7.1", "resolved": "https://registry.npmjs.org/@composedb/devtools/-/devtools-0.7.1.tgz", "integrity": "sha512-J9IFquEmJL/0gwl3BUerXUR3tOm9v8dd3oucrRbuYDbZXLN803mptOQqQEDxzncfkF80CjVh0qtWZ6dTaYGVHQ==", + "peer": true, "requires": { "@ceramicnetwork/common": "^5.1.0", "@ceramicnetwork/stream-model": "^4.1.0", @@ -71737,23 +71631,33 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", + "peer": true, "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==", + "peer": true + } } }, "@didtools/cacao": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", "integrity": "sha512-vV1JirxqVsBf2dqdvoS/msNN8fabvMfseZB0kf1FG8TbosrHd81+hgDOlQMZit7zJbTk5g3CGkZg3b7iYKkynw==", + "peer": true, "requires": { "@didtools/codecs": "^3.0.0", "@didtools/siwx": "2.0.0", @@ -71765,9 +71669,10 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", + "peer": true, "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" @@ -71779,6 +71684,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-3.0.0.tgz", "integrity": "sha512-TemoVySZrs1XflMtOkwVTATtZEs42Mh2yk9SoYvBXES6Mz30PBJCm8v7U/2y1N5lrjb2cAPWs48Ryc7paetSxQ==", + "peer": true, "requires": { "codeco": "^1.2.0", "multiformats": "^13.0.0", @@ -71789,29 +71695,34 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", "integrity": "sha512-eqBtI5dZrptXTCyadnhvU0di/KvumoByT7F8KB/8BLU7M1lltfEmvf/c5AnsyrWO9338ygCs2u5mKz1p1Zdj5A==", + "peer": true, "requires": { "codeco": "^1.2.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", + "peer": true }, "change-case": { "version": "5.4.4", "resolved": "https://registry.npmjs.org/change-case/-/change-case-5.4.4.tgz", - "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==" + "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==", + "peer": true }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==", + "peer": true }, "type-fest": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.15.0.tgz", - "integrity": "sha512-tB9lu0pQpX5KJq54g+oHOLumOx+pMep4RaM6liXh2PKmVRFF+/vAtUP0ZaJ0kOySfVNjF6doBWPHhBhISKdlIA==" + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", + "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", + "peer": true } } }, @@ -71853,28 +71764,35 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + } } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -71889,28 +71807,28 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, @@ -71930,28 +71848,28 @@ }, "dependencies": { "@ceramicnetwork/streamid": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.0.0.tgz", - "integrity": "sha512-BerENlA/dRIZNjCDeJSZfluCx69coZFbhmjzPwe8G1NZtdWGX/4NECq6a9xzrxxRJ3jNPcXFabYb94Mp1diMWA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@stablelib/sha256": "^1.0.1", "cborg": "^4.0.8", "mapmoize": "^1.2.1", - "multiformats": "^13.0.0", + "multiformats": "~13.1.3", "uint8arrays": "^5.0.1", "varint": "^6.0.0" } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" } } }, @@ -71966,13 +71884,6 @@ "get-port": "^7.0.0", "graphql": "^16.8.1", "graphql-yoga": "^5.1.1" - }, - "dependencies": { - "get-port": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-7.1.0.tgz", - "integrity": "sha512-QB9NKEeDg3xxVwCCwJQ9+xycaz6pBB6iQ76wiWMl1927n0Kir6alPiP+yuiICLLU4jpMe08dXfpebuQppFA2zw==" - } } }, "@composedb/types": { @@ -72001,17 +71912,6 @@ "multiformats": "^13.0.0", "uint8arrays": "^5.0.1", "viem": "^2.17.3" - }, - "dependencies": { - "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", - "requires": { - "cborg": "^4.0.0", - "multiformats": "^13.1.0" - } - } } }, "@didtools/codecs": { @@ -72024,6 +71924,18 @@ "uint8arrays": "^5.0.1" } }, + "@didtools/pkh-ethereum": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", + "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", + "requires": { + "@didtools/cacao": "^3.0.0", + "@noble/curves": "^1.2.0", + "@noble/hashes": "^1.3.2", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + } + }, "@didtools/siwx": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", @@ -72032,15 +71944,19 @@ "codeco": "^1.2.0" } }, - "@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==" + "@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", + "requires": { + "cborg": "^4.0.0", + "multiformats": "^13.1.0" + } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "dag-jose-utils": { "version": "4.0.0", @@ -72049,17 +71965,6 @@ "requires": { "@ipld/dag-cbor": "^9.0.7", "multiformats": "^13.0.0" - }, - "dependencies": { - "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", - "requires": { - "cborg": "^4.0.0", - "multiformats": "^13.1.0" - } - } } }, "dids": { @@ -72078,26 +71983,12 @@ "multiformats": "^13.0.0", "rpc-utils": "^0.6.2", "uint8arrays": "^5.0.1" - }, - "dependencies": { - "@didtools/pkh-ethereum": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.5.0.tgz", - "integrity": "sha512-2S+TS/I2jVTNnkgyslxQvSjCzzLsCabjXD2UWjJnVkAoxeJgPE9GvY1JhTDgvVLfxLPnYwTIP/O1WR9wJcDkFg==", - "requires": { - "@didtools/cacao": "^3.0.0", - "@noble/curves": "^1.2.0", - "@noble/hashes": "^1.3.2", - "@stablelib/random": "^1.0.2", - "caip": "^1.1.0" - } - } } }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -72369,6 +72260,74 @@ } } }, + "@didtools/key-webauthn": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@didtools/key-webauthn/-/key-webauthn-2.0.2.tgz", + "integrity": "sha512-MkOqAiRBcRO64PMVfSFAB0SUIJMk+L8QyymE9dknjmfSKgD/ZKz7cw4pFV6IUNin75/DLrlDSfmCIIjYokivvQ==", + "requires": { + "@didtools/cacao": "3.0.1", + "@ipld/dag-cbor": "^9.0.6", + "@noble/curves": "^1.2.0", + "caip": "^1.1.0", + "cborg": "^4.0.5", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", + "varint": "^6.0.0" + }, + "dependencies": { + "@didtools/cacao": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-3.0.1.tgz", + "integrity": "sha512-vV1JirxqVsBf2dqdvoS/msNN8fabvMfseZB0kf1FG8TbosrHd81+hgDOlQMZit7zJbTk5g3CGkZg3b7iYKkynw==", + "requires": { + "@didtools/codecs": "^3.0.0", + "@didtools/siwx": "2.0.0", + "@ipld/dag-cbor": "^9.0.7", + "caip": "^1.1.0", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", + "viem": "^2.17.3" + } + }, + "@didtools/codecs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@didtools/codecs/-/codecs-3.0.0.tgz", + "integrity": "sha512-TemoVySZrs1XflMtOkwVTATtZEs42Mh2yk9SoYvBXES6Mz30PBJCm8v7U/2y1N5lrjb2cAPWs48Ryc7paetSxQ==", + "requires": { + "codeco": "^1.2.0", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1" + } + }, + "@didtools/siwx": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@didtools/siwx/-/siwx-2.0.0.tgz", + "integrity": "sha512-eqBtI5dZrptXTCyadnhvU0di/KvumoByT7F8KB/8BLU7M1lltfEmvf/c5AnsyrWO9338ygCs2u5mKz1p1Zdj5A==", + "requires": { + "codeco": "^1.2.0" + } + }, + "@ipld/dag-cbor": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", + "requires": { + "cborg": "^4.0.0", + "multiformats": "^13.1.0" + } + }, + "cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" + }, + "multiformats": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" + } + } + }, "@didtools/pkh-ethereum": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.4.1.tgz", @@ -72752,9 +72711,9 @@ "integrity": "sha512-JRDFP6+Hczb1E0/HhIg0PONgBYasfGfDheujmfxaZaAv/NAH4jE6Kf48WbqfRZdxt4IZI3jl3Ri7sZ1nP09lgw==" }, "@envelop/core": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@envelop/core/-/core-5.0.0.tgz", - "integrity": "sha512-aJdnH/ptv+cvwfvciCBe7TSvccBwo9g0S5f6u35TBVzRVqIGkK03lFlIL+x1cnfZgN9EfR2b1PH2galrT1CdCQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@envelop/core/-/core-5.0.2.tgz", + "integrity": "sha512-tVL6OrMe6UjqLosiE+EH9uxh2TQC0469GwF4tE014ugRaDDKKVWwFwZe0TBMlcyHKh5MD4ZxktWo/1hqUxIuhw==", "requires": { "@envelop/types": "5.0.0", "tslib": "^2.5.0" @@ -74760,12 +74719,12 @@ } }, "@graphql-tools/batch-delegate": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/batch-delegate/-/batch-delegate-9.0.1.tgz", - "integrity": "sha512-a5DWcrjPLvLCT1PvDetWfwxWHAxupGW9xDesMJOcM7NvBktBWMDheD0qHHvEBLmCL4dimWpvilmQaowQx7oJJw==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/@graphql-tools/batch-delegate/-/batch-delegate-9.0.3.tgz", + "integrity": "sha512-wYYbDLQeXU+lEUQJDjylN/e1V3OTVkeJSZYgroDniBfg3etDuOJruAIWZ6S6skKB1PZBy1emEbs6HjrziHeX0A==", "requires": { - "@graphql-tools/delegate": "^10.0.4", - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/delegate": "^10.0.11", + "@graphql-tools/utils": "^10.2.1", "dataloader": "2.2.2", "tslib": "^2.4.0", "value-or-promise": "^1.0.12" @@ -74783,24 +74742,25 @@ } }, "@graphql-tools/delegate": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-10.0.4.tgz", - "integrity": "sha512-WswZRbQZMh/ebhc8zSomK9DIh6Pd5KbuiMsyiKkKz37TWTrlCOe+4C/fyrBFez30ksq6oFyCeSKMwfrCbeGo0Q==", + "version": "10.0.21", + "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-10.0.21.tgz", + "integrity": "sha512-UytyYVvDfLQbCYG1aQo8Vc67c1WhEjzW9ytYKEEqMJSdlwfMCujHmCz7EyH5DNjTAKapDHuQcN5VivKGap/Beg==", "requires": { "@graphql-tools/batch-execute": "^9.0.4", - "@graphql-tools/executor": "^1.2.1", - "@graphql-tools/schema": "^10.0.3", - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/executor": "^1.3.1", + "@graphql-tools/schema": "^10.0.4", + "@graphql-tools/utils": "^10.3.4", + "@repeaterjs/repeater": "^3.0.6", "dataloader": "^2.2.2", "tslib": "^2.5.0" } }, "@graphql-tools/executor": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@graphql-tools/executor/-/executor-1.2.6.tgz", - "integrity": "sha512-+1kjfqzM5T2R+dCw7F4vdJ3CqG+fY/LYJyhNiWEFtq0ToLwYzR/KKyD8YuzTirEjSxWTVlcBh7endkx5n5F6ew==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor/-/executor-1.3.1.tgz", + "integrity": "sha512-tgJDdGf9SCAm64ofEMZdv925u6/J+eTmv36TGNLxgP2DpCJsZ6gnJ4A+0D28EazDXqJIvMiPd+3d+o3cCRCAnQ==", "requires": { - "@graphql-tools/utils": "^10.1.1", + "@graphql-tools/utils": "^10.3.4", "@graphql-typed-document-node/core": "3.2.0", "@repeaterjs/repeater": "^3.0.4", "tslib": "^2.4.0", @@ -74808,11 +74768,11 @@ } }, "@graphql-tools/merge": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.3.tgz", - "integrity": "sha512-FeKv9lKLMwqDu0pQjPpF59GY3HReUkWXKsMIuMuJQOKh9BETu7zPEFUELvcw8w+lwZkl4ileJsHXC9+AnsT2Lw==", + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.7.tgz", + "integrity": "sha512-lbTrIuXIbUSmSumHkPRY1QX0Z8JEtmRhnIrkH7vkfeEmf0kNn/nCWvJwqokm5U7L+a+DA1wlRM4slIlbfXjJBA==", "requires": { - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/utils": "^10.5.4", "tslib": "^2.4.0" } }, @@ -74849,39 +74809,39 @@ } }, "@graphql-tools/schema": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.3.tgz", - "integrity": "sha512-p28Oh9EcOna6i0yLaCFOnkcBDQECVf3SCexT6ktb86QNj9idnkhI+tCxnwZDh58Qvjd2nURdkbevvoZkvxzCog==", + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.6.tgz", + "integrity": "sha512-EIJgPRGzpvDFEjVp+RF1zNNYIC36BYuIeZ514jFoJnI6IdxyVyIRDLx/ykgMdaa1pKQerpfdqDnsF4JnZoDHSQ==", "requires": { - "@graphql-tools/merge": "^9.0.3", - "@graphql-tools/utils": "^10.0.13", + "@graphql-tools/merge": "^9.0.6", + "@graphql-tools/utils": "^10.5.4", "tslib": "^2.4.0", "value-or-promise": "^1.0.12" } }, "@graphql-tools/stitch": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/stitch/-/stitch-9.1.0.tgz", - "integrity": "sha512-EEZn2BcvuOX+7DOSROv+3Td0SvuC/YnJ5+ua2xjhThOU7q8QFqL+JxgT4BOdI829ZR+rQqaX6do3VEY4UNo1Yg==", - "requires": { - "@graphql-tools/batch-delegate": "^9.0.1", - "@graphql-tools/delegate": "^10.0.4", - "@graphql-tools/executor": "^1.2.1", - "@graphql-tools/merge": "^9.0.3", - "@graphql-tools/schema": "^10.0.3", - "@graphql-tools/utils": "^10.0.13", + "version": "9.2.10", + "resolved": "https://registry.npmjs.org/@graphql-tools/stitch/-/stitch-9.2.10.tgz", + "integrity": "sha512-p4BOr6YTYZ9xjnHtrd6AsNR9Y2XtRSroSEEdOwv3KTHQLFhOD9wiLxb+UlKiHYm2jtTvL4wl6+TWV9dKCeNQ3g==", + "requires": { + "@graphql-tools/batch-delegate": "^9.0.3", + "@graphql-tools/delegate": "^10.0.12", + "@graphql-tools/executor": "^1.2.8", + "@graphql-tools/merge": "^9.0.4", + "@graphql-tools/schema": "^10.0.4", + "@graphql-tools/utils": "^10.2.3", "@graphql-tools/wrap": "^10.0.2", "tslib": "^2.4.0", "value-or-promise": "^1.0.11" } }, "@graphql-tools/utils": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.1.2.tgz", - "integrity": "sha512-fX13CYsDnX4yifIyNdiN0cVygz/muvkreWWem6BBw130+ODbRRgfiVveL0NizCEnKXkpvdeTy9Bxvo9LIKlhrw==", + "version": "10.5.4", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.5.4.tgz", + "integrity": "sha512-XHnyCWSlg1ccsD8s0y6ugo5GZ5TpkTiFVNPSYms5G0s6Z/xTuSmiLBfeqgkfaCwLmLaQnRCmNDL2JRnqc2R5bQ==", "requires": { "@graphql-typed-document-node/core": "^3.1.1", - "cross-inspect": "1.0.0", + "cross-inspect": "1.0.1", "dset": "^3.1.2", "tslib": "^2.4.0" } @@ -74913,9 +74873,9 @@ } }, "@graphql-yoga/subscription": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@graphql-yoga/subscription/-/subscription-5.0.0.tgz", - "integrity": "sha512-Ri7sK8hmxd/kwaEa0YT8uqQUb2wOLsmBMxI90QDyf96lzOMJRgBuNYoEkU1pSgsgmW2glceZ96sRYfaXqwVxUw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@graphql-yoga/subscription/-/subscription-5.0.1.tgz", + "integrity": "sha512-1wCB1DfAnaLzS+IdoOzELGGnx1ODEg9nzQXFh4u2j02vAnne6d+v4A7HIH9EqzVdPLoAaMKXCZUUdKs+j3z1fg==", "requires": { "@graphql-yoga/typed-event-target": "^3.0.0", "@repeaterjs/repeater": "^3.0.4", @@ -75826,38 +75786,38 @@ } }, "@ipld/dag-json": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-json/-/dag-json-10.2.0.tgz", - "integrity": "sha512-O9YLUrl3d3WbVz7v1WkajFkyfOLEe2Fep+wor4fgVe0ywxzrivrj437NiPcVyB+2EDdFn/Q7tCHFf8YVhDf8ZA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/@ipld/dag-json/-/dag-json-10.2.2.tgz", + "integrity": "sha512-NnU8HdHKwAoGyrW3S09NMa8aZw0tImLRyR64hoafpLpDpAbA9g1+fb24JsdlugbL4sXUQVwDVA+qK4Ud8V83lA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" }, "dependencies": { "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, "@ipld/dag-pb": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-4.1.0.tgz", - "integrity": "sha512-LJU451Drqs5zjFm7jI4Hs3kHlilOqkjcSfPiQgVsZnWaYb2C7YdfhnclrVn/X+ucKejlU9BL3+gXFCZUXkMuCg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-4.1.2.tgz", + "integrity": "sha512-BSztO4l3C+ya9HjCaQot26Y4AVsqIKtnn6+23ubc1usucnf6yoTBme18oCCdM6gKBMxuPqju5ye3lh9WEJsdeQ==", "requires": { "multiformats": "^13.1.0" }, "dependencies": { "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -76925,11 +76885,11 @@ } }, "@libp2p/interface": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.6.tgz", - "integrity": "sha512-CLz6TAZf+Mw1PCIU8pjMIct1uh3A1fIene2/t+E57Tw4uJLCBJE9CLed/Opxliy5RH0e32Aa6bi4QSXtkJTK7A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.7.0.tgz", + "integrity": "sha512-/zFyaIaIGW0aihhsH7/93vQdpWInUzFocxF11RO/029Y6h0SVjs24HHbils+DqaFDTqN+L7oNlBx2rM2MnmTjA==", "requires": { - "@multiformats/multiaddr": "^12.2.1", + "@multiformats/multiaddr": "^12.2.3", "it-pushable": "^3.2.3", "it-stream-types": "^2.0.1", "multiformats": "^13.1.0", @@ -76938,9 +76898,9 @@ }, "dependencies": { "@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "requires": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -76957,9 +76917,9 @@ "integrity": "sha512-6DmOs5r7ERDbvS4q8yLKENcj6Yecr7QQTqWApbZdfAUTEC947d+PEha7PCqhm//9oxaLYL7TWRekwhoXl2s6fg==" }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -76976,9 +76936,9 @@ }, "dependencies": { "@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "requires": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -76990,9 +76950,9 @@ } }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -77037,9 +76997,9 @@ }, "dependencies": { "@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "requires": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -77051,9 +77011,9 @@ } }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -77087,9 +77047,9 @@ }, "dependencies": { "@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "requires": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -77101,9 +77061,9 @@ }, "dependencies": { "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -78245,9 +78205,9 @@ }, "dependencies": { "@multiformats/multiaddr": { - "version": "12.2.1", - "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz", - "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.3.0.tgz", + "integrity": "sha512-JQ8Gc/jgucqqvEaDTFN/AvxlYDHEE7lgEWLMYW7hKZkWggER+GvG/tVxUgUxIP8M0vFpvEHKKHE0lKzyMsgi8Q==", "requires": { "@chainsafe/is-ip": "^2.0.1", "@chainsafe/netmask": "^2.0.0", @@ -78259,9 +78219,9 @@ } }, "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -78786,28 +78746,10 @@ "semver": "^7.3.5" }, "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "optional": true, - "requires": { - "yallist": "^4.0.0" - } - }, "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "optional": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "optional": true } } @@ -80221,132 +80163,302 @@ "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==" }, "@opentelemetry/api-logs": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.41.0.tgz", - "integrity": "sha512-kopW4ZEKX2mgaPi9jh3lTP+2ixbe0z+tAEOn3v0ZM6jzQl7z+2C1ZZjU1cVYbX+RDGqu7n6BMyv5wmWuqiuKYQ==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.50.0.tgz", + "integrity": "sha512-JdZuKrhOYggqOpUljAq4WWNi5nB10PmgoF0y2CvedLGXd0kSawb/UBnWT8gg1ND3bHCNHStAIVT0ELlxJJRqrA==", "requires": { - "@opentelemetry/api": "^1.0.0", - "tslib": "^2.3.1" + "@opentelemetry/api": "^1.0.0" } }, "@opentelemetry/core": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.15.0.tgz", - "integrity": "sha512-GGTS6BytfaN8OgbCUOnxg/a9WVsVUj0484zXHZuBzvIXx7V4Tmkb0IHnnhS7Q0cBLNLgjNuvrCpQaP8fIvO4bg==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.26.0.tgz", + "integrity": "sha512-1iKxXXE8415Cdv0yjG3G6hQnB5eVEsJce3QaawX8SjDn0mAS0ZM8fAbZZJD4ajvhC15cePvosSCut404KrIIvQ==", "requires": { - "@opentelemetry/semantic-conventions": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/semantic-conventions": "1.27.0" } }, "@opentelemetry/exporter-metrics-otlp-http": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-metrics-otlp-http/-/exporter-metrics-otlp-http-0.41.0.tgz", - "integrity": "sha512-YttGW1XEHB9GocXtEY+n0qAT2Ewi/P4l7882kYK4kEl78EAnVvvWvFX1El+TvHA3D2LHDxx9ASu1i+icCqj/Fw==", - "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/otlp-exporter-base": "0.41.0", - "@opentelemetry/otlp-transformer": "0.41.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "tslib": "^2.3.1" + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-metrics-otlp-http/-/exporter-metrics-otlp-http-0.50.0.tgz", + "integrity": "sha512-DMilj0pTOGxeaRPvVBil/KugvLMV5l+GzoXEWBKXYGEnfNlX+huPeMpYl+zJJBtI3Coht2KArnNOLhs2wqA3yA==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/otlp-exporter-base": "0.50.0", + "@opentelemetry/otlp-transformer": "0.50.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-metrics": "1.23.0" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "requires": { + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==" + } } }, "@opentelemetry/exporter-prometheus": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-prometheus/-/exporter-prometheus-0.41.0.tgz", - "integrity": "sha512-ydoRgNo8CzMNCosyFchfHOV4KlKhEFPFF9uVQD8K2r4VV/AE7uxd8uVj+1uv64YZMjWuxSnNCxJd0VQpDWQFKw==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-prometheus/-/exporter-prometheus-0.50.0.tgz", + "integrity": "sha512-6jBrGqzpU1b2gCPUWTSSW+G3ejbZRx9SYhhFg0MO6v8R51mcln9KH6oIdTDrA+3Ie3L18bpygKrIWA9VPWEifg==", "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-metrics": "1.23.0" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "requires": { + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==" + } } }, "@opentelemetry/exporter-trace-otlp-http": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.41.0.tgz", - "integrity": "sha512-xG/EJAphB8SFi635vUWJ7rNOwU2nTSIWz1zCu1G6tzQUcej5M1FYtTuUeoJ+HrjHUDOq0SgFbvzfFh6ReggWMQ==", - "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/otlp-exporter-base": "0.41.0", - "@opentelemetry/otlp-transformer": "0.41.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-trace-base": "1.15.0", - "tslib": "^2.3.1" + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.50.0.tgz", + "integrity": "sha512-L7OtIMT7MsFqkmhbQlPBGRXt7152VN5esHpQEJYIBFedOEo3Da+yHpu5ojMZtPzpIvSpB5Xr5lnJUjJCbkttCA==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/otlp-exporter-base": "0.50.0", + "@opentelemetry/otlp-transformer": "0.50.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-trace-base": "1.23.0" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "requires": { + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/sdk-trace-base": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz", + "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==" + } } }, "@opentelemetry/otlp-exporter-base": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.41.0.tgz", - "integrity": "sha512-fSHtZznIU6kvCLFQC77nOhHj059G1sc/wNl96YiPdro4A8t8ue//ET0yAtpRCQ9lynn4RNrpsw5iEFJszEbmLg==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.50.0.tgz", + "integrity": "sha512-JUmjmrCmE1/fc4LjCQMqLfudgSl5OpUkzx7iA94b4jgeODM7zWxUoVXL7/CT7fWf47Cn+pmKjMvTCSESqZZ3mA==", "requires": { - "@opentelemetry/core": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.23.0" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "requires": { + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==" + } } }, "@opentelemetry/otlp-transformer": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.41.0.tgz", - "integrity": "sha512-a5GqVSdVIhAoYcQrdWQAeMbrkz0iDwKC6BUsuqPuykh+T4QZzrF6cwneOXKbQI5Dl7ms6ha9dYHf4Ka0kc66ZQ==", - "requires": { - "@opentelemetry/api-logs": "0.41.0", - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/sdk-logs": "0.41.0", - "@opentelemetry/sdk-metrics": "1.15.0", - "@opentelemetry/sdk-trace-base": "1.15.0", - "tslib": "^2.3.1" + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.50.0.tgz", + "integrity": "sha512-s0sl1Yfqd5q1Kjrf6DqXPWzErL+XHhrXOfejh4Vc/SMTNqC902xDsC8JQxbjuramWt/+hibfguIvi7Ns8VLolA==", + "requires": { + "@opentelemetry/api-logs": "0.50.0", + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-logs": "0.50.0", + "@opentelemetry/sdk-metrics": "1.23.0", + "@opentelemetry/sdk-trace-base": "1.23.0" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "requires": { + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + } + }, + "@opentelemetry/sdk-trace-base": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz", + "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==" + } } }, "@opentelemetry/resources": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.15.0.tgz", - "integrity": "sha512-Sb8A6ZXHXDlgHv32UNRE3y8McWE3vkb5dsSttYArYa5ZpwjiF5ge0vnnKUUnG7bY0AgF9VBIOORZE8gsrnD2WA==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.26.0.tgz", + "integrity": "sha512-CPNYchBE7MBecCSVy0HKpUISEeJOniWqcHaAHpmasZ3j9o6V3AyBzhRc90jdmemq0HOxDr6ylhUbDhBqqPpeNw==", "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/semantic-conventions": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.26.0", + "@opentelemetry/semantic-conventions": "1.27.0" } }, "@opentelemetry/sdk-logs": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.41.0.tgz", - "integrity": "sha512-+Qs8uHcd/tYKS1n6lfSPiQXMOuyPN0c3xKeyWjD5mExRvmA1H6SIYfZmB6KeQNXWODK4z4JtWo5g5Efe0gJ1Vg==", + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.50.0.tgz", + "integrity": "sha512-PeUEupBB29p9nlPNqXoa1PUWNLsZnxG0DCDj3sHqzae+8y76B/A5hvZjg03ulWdnvBLYpnJslqzylG9E0IL87g==", "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "requires": { + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "requires": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==" + } } }, "@opentelemetry/sdk-metrics": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.15.0.tgz", - "integrity": "sha512-fFUnAcPvlXO39nlIduGuaeCuiZyFtSLCn9gW/0djFRO5DFst4m4gcT6+llXvNWuUvtGB49s56NP10B9IZRN0Rw==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.26.0.tgz", + "integrity": "sha512-0SvDXmou/JjzSDOjUmetAAvcKQW6ZrvosU0rkbDGpXvvZN+pQF6JbK/Kd4hNdK4q/22yeruqvukXEJyySTzyTQ==", "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "lodash.merge": "^4.6.2", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.26.0", + "@opentelemetry/resources": "1.26.0" } }, "@opentelemetry/sdk-trace-base": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.15.0.tgz", - "integrity": "sha512-udt1c9VHipbZwvCPIQR1VLg25Z4AMR/g0X8KmcInbFruGWQ/lptVPkz3yvWAsGSta5yHNQ3uoPwcyCygGnQ6Lg==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.26.0.tgz", + "integrity": "sha512-olWQldtvbK4v22ymrKLbIcBi9L2SpMO84sCPY54IVsJhP9fRsxJT194C/AVaAuJzLE30EdhhM1VmvVYR7az+cw==", "requires": { - "@opentelemetry/core": "1.15.0", - "@opentelemetry/resources": "1.15.0", - "@opentelemetry/semantic-conventions": "1.15.0", - "tslib": "^2.3.1" + "@opentelemetry/core": "1.26.0", + "@opentelemetry/resources": "1.26.0", + "@opentelemetry/semantic-conventions": "1.27.0" } }, "@opentelemetry/semantic-conventions": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.15.0.tgz", - "integrity": "sha512-f3wwFrFyCpGrFBrFs7lCUJSCSCGyeKG52c+EKeobs3Dd29M75yO6GYkt6PkYPfDawxSlV5p+4yJPPk8tPObzTQ==", - "requires": { - "tslib": "^2.3.1" - } + "version": "1.27.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz", + "integrity": "sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==" }, "@packages/charmeditor": { "version": "file:packages/charmeditor", @@ -82656,9 +82768,9 @@ "integrity": "sha512-42aWfPrimMfDKDi4YegyS7x+/0tlzaqwPQCULLanv3DMIlu96KTJR0fM5isWX2UViOqlGnX6YFgqWepcX+XMNg==" }, "@repeaterjs/repeater": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.5.tgz", - "integrity": "sha512-l3YHBLAol6d/IKnB9LhpD0cEZWAoe3eFKUyTYWmFmCO2Q/WOckxLQAUyMZWwZV2M/m3+4vgRoaolFqaII82/TA==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.6.tgz", + "integrity": "sha512-Javneu5lsuhwNCryN+pXH93VPQ8g0dBX7wItHFgYiwQmzE1sVdg5tWHiOgHywzL2W21XQopa7IwIEnNbmeUJYA==" }, "@reservoir0x/reservoir-sdk": { "version": "2.0.9", @@ -87516,9 +87628,9 @@ }, "dependencies": { "node-gyp-build": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", - "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==" + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.2.tgz", + "integrity": "sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==" }, "secp256k1": { "version": "4.0.1", @@ -88373,9 +88485,9 @@ } }, "@types/node-cron": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@types/node-cron/-/node-cron-3.0.7.tgz", - "integrity": "sha512-9PuLtBboc/+JJ7FshmJWv769gDonTpItN0Ol5TMwclpSQNjVyB2SRxSKBcTtbSysSL5R7Oea06kTTFNciCoYwA==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@types/node-cron/-/node-cron-3.0.11.tgz", + "integrity": "sha512-0ikrnug3/IyneSHqCBeslAhlK2aBfYek1fGo4bP4QnZPmiqSGRK+Oy7ZMisLWkesffJvQ1cqAcBnJC+8+nxIAg==", "dev": true }, "@types/node-fetch": { @@ -89913,38 +90025,61 @@ } }, "@whatwg-node/events": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@whatwg-node/events/-/events-0.1.1.tgz", - "integrity": "sha512-AyQEn5hIPV7Ze+xFoXVU3QTHXVbWPrzaOkxtENMPMuNL6VVHrp4hHfDt9nrQpjO7BgvuM95dMtkycX5M/DZR3w==" + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@whatwg-node/events/-/events-0.1.2.tgz", + "integrity": "sha512-ApcWxkrs1WmEMS2CaLLFUEem/49erT3sxIVjpzU5f6zmVcnijtDSrhoK2zVobOIikZJdH63jdAXOrvjf6eOUNQ==", + "requires": { + "tslib": "^2.6.3" + }, + "dependencies": { + "tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + } + } }, "@whatwg-node/fetch": { - "version": "0.9.17", - "resolved": "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.9.17.tgz", - "integrity": "sha512-TDYP3CpCrxwxpiNY0UMNf096H5Ihf67BK1iKGegQl5u9SlpEDYrvnV71gWBGJm+Xm31qOy8ATgma9rm8Pe7/5Q==", + "version": "0.9.21", + "resolved": "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.9.21.tgz", + "integrity": "sha512-Wt0jPb+04JjobK0pAAN7mEHxVHcGA9HoP3OyCsZtyAecNQeADXCZ1MihFwVwjsgaRYuGVmNlsCmLxlG6mor8Gw==", "requires": { - "@whatwg-node/node-fetch": "^0.5.7", + "@whatwg-node/node-fetch": "^0.5.23", "urlpattern-polyfill": "^10.0.0" } }, "@whatwg-node/node-fetch": { - "version": "0.5.10", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.10.tgz", - "integrity": "sha512-KIAHepie/T1PRkUfze4t+bPlyvpxlWiXTPtcGlbIZ0vWkBJMdRmCg4ZrJ2y4XaO1eTPo1HlWYUuj1WvoIpumqg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "requires": { "@kamilkisiela/fast-url-parser": "^1.1.4", - "@whatwg-node/events": "^0.1.0", "busboy": "^1.6.0", "fast-querystring": "^1.1.1", - "tslib": "^2.3.1" + "tslib": "^2.6.3" + }, + "dependencies": { + "tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + } } }, "@whatwg-node/server": { - "version": "0.9.32", - "resolved": "https://registry.npmjs.org/@whatwg-node/server/-/server-0.9.32.tgz", - "integrity": "sha512-PRTRE8ZhObwYx9yRoUdxYkrhCoDk2vyDA5BtaG+NAqEmU1wwbwlXUpaeRRrPuGaM7ScbIkueU25A0GJIRQzccw==", + "version": "0.9.49", + "resolved": "https://registry.npmjs.org/@whatwg-node/server/-/server-0.9.49.tgz", + "integrity": "sha512-3KzLXw80gWnTsQ746G/LFdCThTPfDodjQs4PnmoNuPa6XUOl4HWq8TlJpxtmnEEB+y+UYLal+3VQ68dtYlbUDQ==", "requires": { - "@whatwg-node/fetch": "^0.9.17", - "tslib": "^2.3.1" + "@whatwg-node/fetch": "^0.9.21", + "tslib": "^2.6.3" + }, + "dependencies": { + "tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + } } }, "@wry/caches": { @@ -90269,15 +90404,6 @@ } } }, - "abstract-leveldown": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.0.3.tgz", - "integrity": "sha512-jzewKKpZbaYUa6HTThnrl+GrJhzjEAeuc7hTVpZdzg7kupXZFoqQDFwyOwLNbmJKJlmzw8yiipMPkDiuKkT06Q==", - "requires": { - "level-concat-iterator": "~2.0.0", - "xtend": "~4.0.0" - } - }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -91789,9 +91915,9 @@ "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" }, "blob-to-it": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/blob-to-it/-/blob-to-it-2.0.5.tgz", - "integrity": "sha512-3VIFla8L4JuB+0WCdf+0POI7E1tTl8mhdGiwwwmnZEu6QjRJciS9fIvz8NgWY9URb0iagXYModGEYTcYeq9BMg==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/blob-to-it/-/blob-to-it-2.0.7.tgz", + "integrity": "sha512-mFAR/GKDDqFOkSBB7shXfsUZwU5DgK453++I8/SImNacfJsdKlx/oHTO0T4ZYHz8A2dnSONE+CX8L29VlWGKiQ==", "requires": { "browser-readablestream-to-it": "^2.0.0" } @@ -92040,9 +92166,9 @@ } }, "browser-readablestream-to-it": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/browser-readablestream-to-it/-/browser-readablestream-to-it-2.0.5.tgz", - "integrity": "sha512-obLCT9jnxAeZlbaRWluUiZrcSJEoi2JkM0eoiJqlIP7MFwZwZjcB6giZvD343PXfr96ilD91M/wFqFvyAZq+Gg==" + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/browser-readablestream-to-it/-/browser-readablestream-to-it-2.0.7.tgz", + "integrity": "sha512-g1Aznml3HmqTLSXylZhGwdfnAa67+vlNAYhT9ROJZkAxY7yYmWusND10olvCMPe4sVhZyVwn5tPkRzOg85kBEg==" }, "browser-stdout": { "version": "1.3.1", @@ -92395,15 +92521,6 @@ "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" }, - "callback-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz", - "integrity": "sha512-sAZ9kODla+mGACBZ1IpTCAisKoGnv6PykW7fPk1LrM+mMepE18Yz0515yoVcrZy7dQsTUp3uZLQ/9Sx1RnLoHw==", - "requires": { - "inherits": "^2.0.1", - "readable-stream": "> 1.0.0 < 3.0.0" - } - }, "caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", @@ -92634,6 +92751,105 @@ } } }, + "ceramic": { + "version": "file:apps/ceramic", + "requires": { + "@ceramicnetwork/http-client": "^5.16.0", + "@ceramicnetwork/streamid": "^3.4.1", + "@composedb/devtools-node": "^0.7.1", + "dids": "^4.0.4", + "key-did-provider-ed25519": "^3.0.2", + "key-did-resolver": "^3.0.0", + "ora": "^8.1.0" + }, + "dependencies": { + "@ceramicnetwork/http-client": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/http-client/-/http-client-5.16.0.tgz", + "integrity": "sha512-5oUim/t/nxzSXRJdEAhVtm+1ymCXOg5skVgzgR6BC8wkXE/qIorHBxLyWSo00F0Q7T0Z5HsqmQpexcw/ThIGnA==", + "requires": { + "@ceramicnetwork/common": "^5.15.0", + "@ceramicnetwork/stream-caip10-link": "^5.15.0", + "@ceramicnetwork/stream-model": "^4.15.0", + "@ceramicnetwork/stream-model-instance": "^4.16.0", + "@ceramicnetwork/stream-tile": "^5.15.0", + "@ceramicnetwork/streamid": "^5.4.0", + "@scarf/scarf": "^1.1.1", + "query-string": "^7.1.0", + "rxjs": "^7.8.1" + }, + "dependencies": { + "@ceramicnetwork/streamid": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", + "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", + "requires": { + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/sha256": "^1.0.1", + "cborg": "^4.0.8", + "mapmoize": "^1.2.1", + "multiformats": "~13.1.3", + "uint8arrays": "^5.0.1", + "varint": "^6.0.0" + } + }, + "multiformats": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", + "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" + } + } + }, + "cborg": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" + }, + "key-did-resolver": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", + "integrity": "sha512-IyEq64AdS6lUwtn3YSvGpu7KAGA2x5+fjRCUIa8+ccSLmWrODV/ICM5aa6hHV/19EPWef8/e322r9sQJJ6/3qA==", + "requires": { + "@stablelib/ed25519": "^1.0.2", + "bigint-mod-arith": "^3.1.0", + "multiformats": "^11.0.1", + "nist-weierstrauss": "^1.6.1", + "uint8arrays": "^4.0.3", + "varint": "^6.0.0" + }, + "dependencies": { + "uint8arrays": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", + "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", + "requires": { + "multiformats": "^12.0.1" + }, + "dependencies": { + "multiformats": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", + "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==" + } + } + } + } + }, + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "requires": { + "tslib": "^2.1.0" + } + } + } + }, "chai": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", @@ -94090,6 +94306,13 @@ "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz", "integrity": "sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==" }, + "cron": { + "version": "file:apps/cron", + "requires": { + "@types/node-cron": "^3.0.11", + "node-cron": "^3.0.3" + } + }, "cron-parser": { "version": "4.9.0", "resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz", @@ -94188,9 +94411,9 @@ } }, "cross-inspect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cross-inspect/-/cross-inspect-1.0.0.tgz", - "integrity": "sha512-4PFfn4b5ZN6FMNGSZlyb7wUhuN8wvj8t/VQHZdM4JsDcruGJ8L2kf9zao98QIrBPFCpdk27qst/AGTl7pL3ypQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cross-inspect/-/cross-inspect-1.0.1.tgz", + "integrity": "sha512-Pcw1JTvZLSJH83iiGWt6fRcT+BjZlCDRVwYLbUcHzv/CRpB7r0MlSrGbIyQvVSNyGnbt7G4AXuyCiDR3POvZ1A==", "requires": { "tslib": "^2.4.0" } @@ -94739,42 +94962,6 @@ } } }, - "deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", - "requires": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "requires": { - "xtend": "^4.0.2" - } - } - } - }, "define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -95918,44 +96105,6 @@ "iconv-lite": "^0.6.2" } }, - "encoding-down": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz", - "integrity": "sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==", - "requires": { - "abstract-leveldown": "^6.2.1", - "inherits": "^2.0.3", - "level-codec": "^9.0.0", - "level-errors": "^2.0.0" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz", - "integrity": "sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==", - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "requires": { - "xtend": "^4.0.2" - } - } - } - }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -96149,14 +96298,6 @@ "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "requires": { - "prr": "~1.0.1" - } - }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -97968,9 +98109,9 @@ "dev": true }, "fast-fifo": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", - "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==" + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==" }, "fast-folder-size": { "version": "1.6.1", @@ -98055,23 +98196,6 @@ "strnum": "^1.0.5" } }, - "fastfall": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/fastfall/-/fastfall-1.5.1.tgz", - "integrity": "sha512-KH6p+Z8AKPXnmA7+Iz2Lh8ARCMr+8WNPVludm1LGkZoD2MjY6LVnRMtTKhkdzI+jr0RzQWXKzKyBJm1zoHEL4Q==", - "requires": { - "reusify": "^1.0.0" - } - }, - "fastparallel": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/fastparallel/-/fastparallel-2.4.1.tgz", - "integrity": "sha512-qUmhxPgNHmvRjZKBFUNI0oZuuH9OlSIOXmJ98lhKPxMZZ7zS/Fi0wRHOihDSz0R1YiIOjxzOY4bq65YTcdBi2Q==", - "requires": { - "reusify": "^1.0.4", - "xtend": "^4.0.2" - } - }, "fastq": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", @@ -98080,15 +98204,6 @@ "reusify": "^1.0.4" } }, - "fastseries": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/fastseries/-/fastseries-1.7.2.tgz", - "integrity": "sha512-dTPFrPGS8SNSzAt7u/CbMKCJ3s01N04s4JFbORHcmyvVfVKmbhMD1VtRbh5enGHxkaQDqWyLefiKOGGmohGDDQ==", - "requires": { - "reusify": "^1.0.0", - "xtend": "^4.0.0" - } - }, "fault": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", @@ -98924,8 +99039,7 @@ "get-east-asian-width": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", - "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", - "dev": true + "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==" }, "get-func-name": { "version": "2.0.2", @@ -98965,6 +99079,11 @@ "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==" }, + "get-port": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-7.1.0.tgz", + "integrity": "sha512-QB9NKEeDg3xxVwCCwJQ9+xycaz6pBB6iQ76wiWMl1927n0Kir6alPiP+yuiICLLU4jpMe08dXfpebuQppFA2zw==" + }, "get-port-please": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz", @@ -99309,9 +99428,9 @@ "integrity": "sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==" }, "graphql-relay": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/graphql-relay/-/graphql-relay-0.10.1.tgz", - "integrity": "sha512-8AtwSe6B0/b4+YzynHr38PP7S+zX5Vs5LEo0BEzGCPq/THAiHa5H5ZLf3bRbKbok15ADxDQSsGJmlqXeJDDPIw==", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/graphql-relay/-/graphql-relay-0.10.2.tgz", + "integrity": "sha512-abybva1hmlNt7Y9pMpAzHuFnM2Mme/a2Usd8S4X27fNteLGRAECMYfhmsrpZFvGn3BhmBZugMXYW/Mesv3P1Kw==", "requires": {} }, "graphql-request": { @@ -99384,27 +99503,27 @@ } }, "graphql-yoga": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/graphql-yoga/-/graphql-yoga-5.3.0.tgz", - "integrity": "sha512-6mXoGE5AMN6YNugJvjBFIQ0dFUiOMloN0dAzLL8GFt4iJ5WlWRgjdzGHod2zZz7yWQokEVD42DHgrc7NY3Dm0w==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/graphql-yoga/-/graphql-yoga-5.7.0.tgz", + "integrity": "sha512-QyGVvFAvGhMrzjJvhjsxsyoE+e4lNrj5f5qOsRYJuWIjyw7tHfbBvybZIwzNOGY0aB5sgA8BlVvu5hxjdKJ5tQ==", "requires": { - "@envelop/core": "^5.0.0", - "@graphql-tools/executor": "^1.2.5", - "@graphql-tools/schema": "^10.0.0", - "@graphql-tools/utils": "^10.1.0", + "@envelop/core": "^5.0.1", + "@graphql-tools/executor": "^1.3.0", + "@graphql-tools/schema": "^10.0.4", + "@graphql-tools/utils": "^10.3.2", "@graphql-yoga/logger": "^2.0.0", - "@graphql-yoga/subscription": "^5.0.0", - "@whatwg-node/fetch": "^0.9.17", - "@whatwg-node/server": "^0.9.32", + "@graphql-yoga/subscription": "^5.0.1", + "@whatwg-node/fetch": "^0.9.18", + "@whatwg-node/server": "^0.9.44", "dset": "^3.1.1", "lru-cache": "^10.0.0", "tslib": "^2.5.2" }, "dependencies": { "lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==" + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" } } }, @@ -100490,18 +100609,18 @@ "integrity": "sha512-v7cSY1J8ydZ0GyjUHqF+1bshJ6cnEVLo9EnjB8p+4HDRPZc9N5jjmvUV7NvEsqQOKyH0pmIBFWXVQbiS0+OBbA==" }, "interface-datastore": { - "version": "8.2.11", - "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.2.11.tgz", - "integrity": "sha512-9E0iXehfp/j0UbZ2mvlYB4K9pP7uQBCppfuy8WHs1EHF6wLQrM9+zwyX+8Qt6HnH4GKZRyXX/CNXm6oD4+QYgA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.3.0.tgz", + "integrity": "sha512-RM/rTSmRcnoCwGZIHrPm+nlGYVoT4R0lcFvNnDyhdFT4R6BuHHhfFP47UldVEjs98SfxLuMhaNMsyjI918saHw==", "requires": { - "interface-store": "^5.0.0", + "interface-store": "6.0.0", "uint8arrays": "^5.0.2" } }, "interface-store": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-5.1.8.tgz", - "integrity": "sha512-7na81Uxkl0vqk0CBPO5PvyTkdaJBaezwUJGsMOz7riPOq0rJt+7W31iaopaMICWea/iykUsvNlPx/Tc+MxC3/w==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-6.0.0.tgz", + "integrity": "sha512-HkjsDPsjA7SKkCr+TH1elUQApAAM3X3JPwrz3vFzaf614wI+ZD6GVvwKGZCHYcbSRqeZP/uzVPqezzeISeo5kA==" }, "internal-slot": { "version": "1.0.7", @@ -100569,12 +100688,6 @@ "sprintf-js": "^1.1.3" }, "dependencies": { - "jsbn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", - "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "optional": true - }, "sprintf-js": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", @@ -100611,9 +100724,9 @@ }, "dependencies": { "@types/node": { - "version": "18.19.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz", - "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==", + "version": "18.19.50", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.50.tgz", + "integrity": "sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg==", "requires": { "undici-types": "~5.26.4" } @@ -100751,25 +100864,25 @@ }, "dependencies": { "@ipld/dag-cbor": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.0.tgz", - "integrity": "sha512-N14oMy0q4gM6OuZkIpisKe0JBSjf1Jb39VI+7jMLiWX9124u1Z3Fdj/Tag1NA0cVxxqWDh0CqsjcVfOKtelPDA==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.2.1.tgz", + "integrity": "sha512-nyY48yE7r3dnJVlxrdaimrbloh4RokQaNRdI//btfTkcTEZbpmSrbYcBQ4VKTf8ZxXAOUJy4VsRpkJo+y9RTnA==", "requires": { "cborg": "^4.0.0", "multiformats": "^13.1.0" }, "dependencies": { "multiformats": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz", - "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ==" + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, "cborg": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.0.tgz", - "integrity": "sha512-q6cFW5m3KxfP/9xGI3yGLaC1l5DP6DWM9IvjiJojnIwohL5CQDl02EXViPV852mOfQo+7PJGPN01MI87vFGzyA==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", + "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, "err-code": { "version": "3.0.1", @@ -101116,8 +101229,7 @@ "is-interactive": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", - "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", - "dev": true + "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==" }, "is-lambda": { "version": "1.0.1", @@ -101459,14 +101571,14 @@ } }, "it-all": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/it-all/-/it-all-3.0.4.tgz", - "integrity": "sha512-UMiy0i9DqCHBdWvMbzdYvVGa5/w4t1cc4nchpbnjdLhklglv8mQeEYnii0gvKESJuL1zV32Cqdb33R6/GPfxpQ==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/it-all/-/it-all-3.0.6.tgz", + "integrity": "sha512-HXZWbxCgQZJfrv5rXvaVeaayXED8nTKx9tj9fpBhmcUJcedVZshMMMqTj0RG2+scGypb9Ut1zd1ifbf3lA8L+Q==" }, "it-batch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/it-batch/-/it-batch-3.0.4.tgz", - "integrity": "sha512-WRu2mqOYIs+T9k7+yxSK9VJdk0UE4R0jKQsWQcti5c6vhb1FhjC2+yCB5XBrctQ9edNfCMU/wVzdDj8qSwimbA==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/it-batch/-/it-batch-3.0.6.tgz", + "integrity": "sha512-pQAAlSvJ4aV6xM/6LRvkPdKSKXxS4my2fGzNUxJyAQ8ccFdxPmK1bUuF5OoeUDkcdrbs8jtsmc4DypCMrGY6sg==" }, "it-first": { "version": "3.0.4", @@ -103347,6 +103459,12 @@ "argparse": "^2.0.1" } }, + "jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "optional": true + }, "jsc-android": { "version": "250231.0.0", "resolved": "https://registry.npmjs.org/jsc-android/-/jsc-android-250231.0.0.tgz", @@ -103819,37 +103937,20 @@ } }, "key-did-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", - "integrity": "sha512-IyEq64AdS6lUwtn3YSvGpu7KAGA2x5+fjRCUIa8+ccSLmWrODV/ICM5aa6hHV/19EPWef8/e322r9sQJJ6/3qA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-4.0.0.tgz", + "integrity": "sha512-+U2nd/0rjO4Yqe2hnHBD7ygcLRfT43Oje9IIjv1BlBi0lopwxZpIFQ7GekguOHK02r+JGdl8mpJVNHs5lvXVOA==", "requires": { - "@stablelib/ed25519": "^1.0.2", - "bigint-mod-arith": "^3.1.0", - "multiformats": "^11.0.1", - "nist-weierstrauss": "^1.6.1", - "uint8arrays": "^4.0.3", + "@noble/curves": "^1.2.0", + "multiformats": "^13.0.0", + "uint8arrays": "^5.0.1", "varint": "^6.0.0" }, "dependencies": { "multiformats": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", - "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" - }, - "uint8arrays": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.10.tgz", - "integrity": "sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==", - "requires": { - "multiformats": "^12.0.1" - }, - "dependencies": { - "multiformats": { - "version": "12.1.3", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-12.1.3.tgz", - "integrity": "sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==" - } - } + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.2.2.tgz", + "integrity": "sha512-RWI+nyf0q64vyOxL8LbKtjJMki0sogRL/8axvklNtiTM0iFCVtHwME9w6+0P1/v4dQvsIg8A45oT3ka1t/M/+A==" } } }, @@ -104145,85 +104246,6 @@ "classic-level": "^1.2.0" } }, - "level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", - "requires": { - "buffer": "^5.6.0" - } - }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==" - }, - "level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", - "requires": { - "errno": "~0.1.1" - } - }, - "level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "level-js": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-js/-/level-js-4.0.2.tgz", - "integrity": "sha512-PeGjZsyMG4O89KHiez1zoMJxStnkM+oBIqgACjoo5PJqFiSUUm3GNod/KcbqN5ktyZa8jkG7I1T0P2u6HN9lIg==", - "requires": { - "abstract-leveldown": "~6.0.1", - "immediate": "~3.2.3", - "inherits": "^2.0.3", - "ltgt": "^2.1.2", - "typedarray-to-buffer": "~3.1.5" - }, - "dependencies": { - "immediate": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.2.3.tgz", - "integrity": "sha512-RrGCXRm/fRVqMIhqXrGEX9rRADavPiDFSoMb/k64i9XMk8uH4r/Omi5Ctierj6XzNecwDbO4WuFbDD1zmpl3Tg==" - } - } - }, - "level-packager": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz", - "integrity": "sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==", - "requires": { - "encoding-down": "^6.3.0", - "levelup": "^4.3.2" - } - }, "level-supports": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", @@ -104249,198 +104271,6 @@ } } }, - "level-ts": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/level-ts/-/level-ts-2.1.0.tgz", - "integrity": "sha512-nzj/cy60OO7Pb4ofzpN0Xq+NiZaOI2f6FDWZGBczJJWxVHlPdcLJXAUQa8HuPdeLojPNBH3byr2l7rNCRF4VCQ==", - "requires": { - "level": "^5.0.1", - "levelgraph": "^2.1.1" - }, - "dependencies": { - "level": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/level/-/level-5.0.1.tgz", - "integrity": "sha512-wcak5OQeA4rURGacqS62R/xNHjCYnJSQDBOlm4KNUGJVE9bWv2B04TclqReYejN+oD65PzD4FsqeWoI5wNC5Lg==", - "requires": { - "level-js": "^4.0.0", - "level-packager": "^5.0.0", - "leveldown": "^5.0.0", - "opencollective-postinstall": "^2.0.0" - } - } - } - }, - "level-ws": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.1.0.tgz", - "integrity": "sha512-YlWbD7feUlvnI4Gm1khvsY59YhHk3ur/IZ1iywLqplBOfW2efwm9c6tn1jJcBYhHPUPEDNJxjXHtF3ksL2IXRg==", - "requires": { - "readable-stream": "^2.2.8", - "xtend": "^4.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "leveldown": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz", - "integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==", - "requires": { - "abstract-leveldown": "~6.2.1", - "napi-macros": "~2.0.0", - "node-gyp-build": "~4.1.0" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "requires": { - "xtend": "^4.0.2" - } - }, - "napi-macros": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==" - }, - "node-gyp-build": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz", - "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==" - } - } - }, - "levelgraph": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/levelgraph/-/levelgraph-2.1.1.tgz", - "integrity": "sha512-ckWZFYyTNsnZ681cLcRD+VDq33Tr0ia2tFR6jxwQk4iuvteSyVGHancHUYWbeiDOx3lJco8kJ7SQDOYqRVSOYA==", - "requires": { - "callback-stream": "^1.1.0", - "inherits": "^2.0.1", - "level-ws": "^0.1.0", - "lodash.keys": "^4.0.6", - "pump": "^1.0.1", - "readable-stream": "^2.2.10", - "steed": "^1.1.3", - "xtend": "^4.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "pump": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", - "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", - "requires": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "dependencies": { - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "requires": { - "xtend": "^4.0.2" - } - } - } - }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -104797,7 +104627,8 @@ "lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true }, "lodash.camelcase": { "version": "4.3.0", @@ -104882,11 +104713,6 @@ "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==" }, - "lodash.keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-4.2.0.tgz", - "integrity": "sha512-J79MkJcp7Df5mizHiVNpjoHXLi4HLjh9VLS/M7lQSGoQ+0oQ+lWEigREkqKyizPB1IawvQLLKY8mzEcm1tkyxQ==" - }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -105292,11 +105118,6 @@ } } }, - "ltgt": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", - "integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==" - }, "luxon": { "version": "3.4.4", "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", @@ -106684,6 +106505,11 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" }, + "mimic-function": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==" + }, "min-document": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", @@ -107553,9 +107379,9 @@ "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" }, "node-cron": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.2.tgz", - "integrity": "sha512-iP8l0yGlNpE0e6q1o185yOApANRe47UPbLf4YxfbiNHt/RU5eBcGB/e0oudruheSf+LQeDMezqC5BVAb5wwRcQ==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.3.tgz", + "integrity": "sha512-dOal67//nohNgYWb+nWmg5dkFdIwDm8EpeGYMekPMrngV3637lqnX0lbUcCtgibHTz6SEz7DAIjKvKDFYCnO1A==", "requires": { "uuid": "8.3.2" } @@ -107665,15 +107491,6 @@ "wide-align": "^1.1.5" } }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "optional": true, - "requires": { - "yallist": "^4.0.0" - } - }, "nopt": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", @@ -107707,13 +107524,10 @@ } }, "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "optional": true, - "requires": { - "lru-cache": "^6.0.0" - } + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "optional": true }, "string_decoder": { "version": "1.3.0", @@ -107732,12 +107546,6 @@ "requires": { "isexe": "^2.0.0" } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true } } }, @@ -108427,11 +108235,6 @@ "integrity": "sha512-XpeCy01X6L5EpP+6Hc3jWN7rMZJ+/k1lwki/kTmWzbVhdPie3jd5O2ZtedEx8Yp58icJ0osVldLMrTB/zslQXA==", "peer": true }, - "opencollective-postinstall": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", - "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==" - }, "opener": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", @@ -108478,60 +108281,53 @@ } }, "ora": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-8.0.1.tgz", - "integrity": "sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==", - "dev": true, + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-8.1.0.tgz", + "integrity": "sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==", "requires": { "chalk": "^5.3.0", - "cli-cursor": "^4.0.0", + "cli-cursor": "^5.0.0", "cli-spinners": "^2.9.2", "is-interactive": "^2.0.0", "is-unicode-supported": "^2.0.0", "log-symbols": "^6.0.0", - "stdin-discarder": "^0.2.1", - "string-width": "^7.0.0", + "stdin-discarder": "^0.2.2", + "string-width": "^7.2.0", "strip-ansi": "^7.1.0" }, "dependencies": { "ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" }, "chalk": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==" }, "cli-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", "requires": { - "restore-cursor": "^4.0.0" + "restore-cursor": "^5.0.0" } }, "emoji-regex": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", - "dev": true + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==" }, "is-unicode-supported": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", - "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", - "dev": true + "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==" }, "log-symbols": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", - "dev": true, "requires": { "chalk": "^5.3.0", "is-unicode-supported": "^1.3.0" @@ -108540,26 +108336,36 @@ "is-unicode-supported": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", - "dev": true + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==" } } }, + "onetime": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", + "requires": { + "mimic-function": "^5.0.0" + } + }, "restore-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", - "dev": true, + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "onetime": "^7.0.0", + "signal-exit": "^4.1.0" } }, + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==" + }, "string-width": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.0.0.tgz", - "integrity": "sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw==", - "dev": true, + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "requires": { "emoji-regex": "^10.3.0", "get-east-asian-width": "^1.0.0", @@ -108570,7 +108376,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, "requires": { "ansi-regex": "^6.0.1" } @@ -108682,15 +108487,13 @@ "requires": { "eventemitter3": "^5.0.1", "p-timeout": "^6.1.2" - }, - "dependencies": { - "p-timeout": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-6.1.2.tgz", - "integrity": "sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==" - } } }, + "p-timeout": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-6.1.2.tgz", + "integrity": "sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==" + }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -109885,9 +109688,9 @@ "integrity": "sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==" }, "progress-events": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/progress-events/-/progress-events-1.0.0.tgz", - "integrity": "sha512-zIB6QDrSbPfRg+33FZalluFIowkbV5Xh1xSuetjG+rlC5he6u2dc6VQJ0TbMdlN3R1RHdpOqxEFMKTnQ+itUwA==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/progress-events/-/progress-events-1.0.1.tgz", + "integrity": "sha512-MOzLIwhpt64KIVN64h1MwdKWiyKFNc/S6BoYKPIVUHFg0/eIEyBulhWCgn678v/4c0ri3FdGuzXymNCv02MUIw==" }, "promise": { "version": "8.3.0", @@ -110262,11 +110065,6 @@ "resolved": "https://registry.npmjs.org/proxy-compare/-/proxy-compare-2.5.1.tgz", "integrity": "sha512-oyfc0Tx87Cpwva5ZXezSp5V9vht1c7dZBhvuV/y3ctkgMVUmiAGDVeeB0dKhGSyT0v1ZTEQYpe/RXlBVBNuCLA==" }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" - }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -113955,9 +113753,9 @@ }, "dependencies": { "node-addon-api": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", - "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==" + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" } } }, @@ -114035,20 +113833,7 @@ "stdin-discarder": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz", - "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==", - "dev": true - }, - "steed": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/steed/-/steed-1.1.3.tgz", - "integrity": "sha512-EUkci0FAUiE4IvGTSKcDJIQ/eRUP2JJb56+fvZ4sdnguLTqIdKjSxUe138poW8mkvKWXW2sFPrgTsxqoISnmoA==", - "requires": { - "fastfall": "^1.5.0", - "fastparallel": "^2.2.0", - "fastq": "^1.3.0", - "fastseries": "^1.7.0", - "reusify": "^1.0.0" - } + "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==" }, "stop-iteration-iterator": { "version": "1.0.0", @@ -117250,6 +117035,12 @@ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" }, + "websockets": { + "version": "file:apps/websockets", + "requires": { + "@packages/charmeditor": "^1.0.0" + } + }, "whatwg-fetch": { "version": "3.6.17", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz", diff --git a/package.json b/package.json index b851cc45d8..cafe6279f4 100644 --- a/package.json +++ b/package.json @@ -12,25 +12,25 @@ "scripts": { "testgen": "python scripts/testgen/make_tests.py", "getcontext": "npx tsx scripts/prompts/traverseAndTokenise.ts", - "ceramic:local": "CERAMIC_ENABLE_EXPERIMENTAL_COMPOSE_DB='true' npx ceramic daemon", - "ceramic:graphql": "npx dotenv -e .env.local -- tsx background/ceramicServer/ceramic-client.ts", - "ceramic:graphql:stg": "npx dotenv -e .env.staging -- tsx background/ceramicServer/ceramic-client.ts", + "ceramic": "npm start -w apps/ceramic", + "ceramic:build": "npm run build -w apps/ceramic", "build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build && npm run esbuild", "build:analyze": "cross-env ANALYZE=true next build --experimental-debug-memory-usage", - "esbuild": "tsx esbuild.config.ts && tsx esbuild.ceramic.ts", + "esbuild": "tsx esbuild.config.ts", "verifydeps": "npx depcruise --ts-config ./tsconfig.json --config .dependency-cruiser.js -- ./", "postdeploy:staging": "node --eval \"console.log('env_url=' + require('./cdk.out.json')['stg-charmverse-${STAGE}'].DeploymentUrl)\" >> $GITHUB_OUTPUT", "destroy:staging": "npx cdk destroy \"stg-charmverse-${STAGE}\" --force", "lint": "npx eslint --ext .tsx,.ts", - "cron:staging": "npx dotenv -e .env.staging -- node ./dist/cron.js", - "cron:dev": "cross-env PORT=3002 npx dotenv -e .env.staging.local -- ts-node --transpileOnly ./background/cron.ts", - "cron:prod": "node ./dist/cron.js", - "sockets": "npm run sockets:dev", - "sockets:dev": "cross-env PORT=3336 npx dotenv -e .env.local -- tsx watch background/initWebsockets.ts", - "sockets:remote": "cross-env PORT=3336 npx dotenv -e .env.production -- tsx watch background/initWebsockets.ts", - "sockets:test": "dotenv -e .env.test.local -v PORT=3336 -- node ./dist/initWebsockets.js", + "cron": "dotenv -e .env.local -- npm start -w apps/cron", + "cron:build": "npm run build -w apps/cron", + "cron:staging": "npx dotenv -e .env.staging -- npm run start:prod -w apps/cron", + "cron:prod": "npm run start:prod -w apps/cron", + "sockets": "PORT=3336 dotenv -e .env.local -- npm run start -w apps/websockets", + "sockets:build": "npm run build -w apps/websockets", + "sockets:remote": "dotenv -e .env.production -v PORT=3336 -- npm run start -w apps/websockets", + "sockets:test": "dotenv -e .env.test.local -v PORT=3336 -- npm run start:prod -w apps/websockets", "sockets:test:ci": "npm run sockets:test", - "sockets:staging": "cross-env PORT=3336 npx dotenv -e .env.staging.local -- tsx watch background/initWebsockets.ts", + "sockets:staging": "PORT=3336 npx dotenv -e .env.staging.local -- tsx watch background/initWebsockets.ts", "prisma:link": "rm -rf ./node_modules/.prisma && npm link @charmverse/core && npm run prisma:generate", "prisma:migrate": "cd node_modules/@charmverse/core && npm run prisma:migrate", "prisma:studio": "cd node_modules/@charmverse/core && npm run prisma:studio", @@ -133,11 +133,8 @@ "@bangle.dev/pm-commands": "^0.31.6", "@bangle.dev/utils": "^0.31.6", "@beam-australia/react-env": "^3.1.1", - "@ceramicnetwork/http-client": "^5.6.0", "@charmverse/core": "^0.81.4", "@column-resizer/core": "^1.0.2", - "@composedb/devtools": "^0.7.1", - "@composedb/devtools-node": "^0.7.1", "@datadog/browser-logs": "^4.42.2", "@datadog/browser-rum": "^4.42.2", "@delegatexyz/sdk": "^0.5.2", @@ -234,7 +231,6 @@ "cryptr": "^6.1.0", "csv": "^6.3.3", "dd-trace": "^5.2.0", - "dids": "^4.0.4", "diff": "^5.1.0", "emoji-mart": "^3.0.1", "ethers": "^5.7.2", @@ -253,8 +249,6 @@ "iron-session": "^8.0.1", "jose": "^4.15.5", "jszip": "^3.10.1", - "key-did-provider-ed25519": "^3.0.2", - "key-did-resolver": "^3.0.0", "koa": "^2.15.3", "koa-router": "^12.0.1", "lodash": "^4.17.21", @@ -272,7 +266,6 @@ "next-bundle-analyzer": "^0.6.8", "next-connect": "^0.13.0", "next-swagger-doc": "^0.3.6", - "node-cron": "^3.0.0", "octokit": "^3.2.0", "otpauth": "^9.2.1", "papaparse": "^5.3.2", @@ -347,7 +340,6 @@ "zksync-web3": "^0.16.0" }, "devDependencies": { - "@ceramicnetwork/streamid": "^3.2.0", "@depay/web3-mock": "^13.18.1", "@graphql-codegen/typescript-react-apollo": "^4.1.0", "@next/eslint-plugin-next": "^14.2.5", @@ -388,7 +380,6 @@ "@types/marked": "^4.0.2", "@types/nanoid-dictionary": "^4.2.3", "@types/node": "^20.6.3", - "@types/node-cron": "^3.0.1", "@types/papaparse": "^5.3.5", "@types/promise-retry": "^1.1.3", "@types/qrcode": "^1.5.5", @@ -434,7 +425,6 @@ "lint-staged": "^12.3.2", "msw": "^2.2.14", "node-mocks-http": "^1.14.1", - "ora": "^8.0.1", "patch-package": "^8.0.0", "pino-pretty": "^11.2.2", "playwright": "^1.42.1", diff --git a/pages/_document.tsx b/pages/_document.tsx index 91da069e3b..54d195e161 100644 --- a/pages/_document.tsx +++ b/pages/_document.tsx @@ -1,7 +1,7 @@ /* eslint-disable @next/next/no-sync-scripts */ +import { charmBlue as blueColor } from '@root/config/colors'; import Document, { Head, Html, Main, NextScript } from 'next/document'; -import { blueColor } from 'theme/colors'; // Source for Emotion SSR: https://github.com/mui/material-ui/tree/332081eb5e5e107d915e3c70f92e430dc364048f/examples/nextjs-with-typescript class MyDocument extends Document { diff --git a/pages/api/discord/login.ts b/pages/api/discord/login.ts index 164ae08091..665a9a90f7 100644 --- a/pages/api/discord/login.ts +++ b/pages/api/discord/login.ts @@ -1,7 +1,7 @@ import { log } from '@charmverse/core/log'; import { isTestEnv } from '@root/config/constants'; import { trackOpSpaceSuccessfulSigninEvent } from '@root/lib/metrics/mixpanel/trackOpSpaceSigninEvent'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/email-templates.ts b/pages/api/email-templates.ts index 69e09639ef..f805b275db 100644 --- a/pages/api/email-templates.ts +++ b/pages/api/email-templates.ts @@ -1,4 +1,5 @@ import type { User } from '@charmverse/core/prisma-client'; +import { charmBlue as blueColor } from '@root/config/colors'; import nc from 'next-connect'; import { v4 } from 'uuid'; @@ -16,7 +17,6 @@ import { getPagePath } from 'lib/pages/utils'; import { createDocumentWithText } from 'lib/prosemirror/constants'; import { randomName } from 'lib/utils/randomName'; import type { VoteTask } from 'lib/votes/interfaces'; -import { blueColor } from 'theme/colors'; const handler = nc({ onError, diff --git a/pages/api/email/send-test.ts b/pages/api/email/send-test.ts index 36be23a8e2..a81525acc9 100644 --- a/pages/api/email/send-test.ts +++ b/pages/api/email/send-test.ts @@ -1,5 +1,6 @@ import { InvalidInputError, UnauthorisedActionError } from '@charmverse/core/errors'; import { prisma } from '@charmverse/core/prisma-client'; +import { charmBlue as blueColor } from '@root/config/colors'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; import { v4 } from 'uuid'; @@ -12,7 +13,6 @@ import { onError, onNoMatch, requireUser } from 'lib/middleware'; import { withSessionRoute } from 'lib/session/withSession'; import { hasAccessToSpace } from 'lib/users/hasAccessToSpace'; import { isValidEmail } from 'lib/utils/strings'; -import { blueColor } from 'theme/colors'; const handler = nc({ onError, diff --git a/pages/api/farcaster/connect.ts b/pages/api/farcaster/connect.ts index e6f2e6558b..4a6e92982c 100644 --- a/pages/api/farcaster/connect.ts +++ b/pages/api/farcaster/connect.ts @@ -1,6 +1,6 @@ import { log } from '@charmverse/core/log'; import type { StatusAPIResponse as FarcasterBody } from '@farcaster/auth-kit'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/farcaster/login.ts b/pages/api/farcaster/login.ts index 64424a5ab0..dfc8c1342d 100644 --- a/pages/api/farcaster/login.ts +++ b/pages/api/farcaster/login.ts @@ -1,7 +1,7 @@ import { log } from '@charmverse/core/log'; import type { StatusAPIResponse as FarcasterBody } from '@farcaster/auth-kit'; import { trackOpSpaceSuccessfulSigninEvent } from '@root/lib/metrics/mixpanel/trackOpSpaceSigninEvent'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/google/code.ts b/pages/api/google/code.ts index 8fc06951a1..00d730ac43 100644 --- a/pages/api/google/code.ts +++ b/pages/api/google/code.ts @@ -1,5 +1,5 @@ import { trackOpSpaceSuccessfulSigninEvent } from '@root/lib/metrics/mixpanel/trackOpSpaceSigninEvent'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/google/connect-email-account.ts b/pages/api/google/connect-email-account.ts index 92491724de..ec3be08707 100644 --- a/pages/api/google/connect-email-account.ts +++ b/pages/api/google/connect-email-account.ts @@ -1,5 +1,5 @@ import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/google/disconnect-email-account.ts b/pages/api/google/disconnect-email-account.ts index 6829bf32d7..7becaa8f76 100644 --- a/pages/api/google/disconnect-email-account.ts +++ b/pages/api/google/disconnect-email-account.ts @@ -1,4 +1,4 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/google/verify-magic-link.ts b/pages/api/google/verify-magic-link.ts index 0f5ccf2f81..20504e354f 100644 --- a/pages/api/google/verify-magic-link.ts +++ b/pages/api/google/verify-magic-link.ts @@ -1,5 +1,5 @@ import { log } from '@charmverse/core/log'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/pages/[id]/proposal-source.ts b/pages/api/pages/[id]/proposal-source.ts index f283a5a0ca..f5ab6428c4 100644 --- a/pages/api/pages/[id]/proposal-source.ts +++ b/pages/api/pages/[id]/proposal-source.ts @@ -3,7 +3,7 @@ import { prisma } from '@charmverse/core/prisma-client'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import { prismaToBlock } from 'lib/databases/block'; import type { Board } from 'lib/databases/board'; import { updateBoardProperties } from 'lib/databases/proposalsSource/updateBoardProperties'; diff --git a/pages/api/profile/add-wallets.ts b/pages/api/profile/add-wallets.ts index 9621dffa0e..57d2ee1994 100644 --- a/pages/api/profile/add-wallets.ts +++ b/pages/api/profile/add-wallets.ts @@ -1,6 +1,6 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/profile/avatar.ts b/pages/api/profile/avatar.ts index f56540e7af..7bfcf95934 100644 --- a/pages/api/profile/avatar.ts +++ b/pages/api/profile/avatar.ts @@ -1,4 +1,4 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/profile/dev.ts b/pages/api/profile/dev.ts index 39c30a92aa..3271d30dd5 100644 --- a/pages/api/profile/dev.ts +++ b/pages/api/profile/dev.ts @@ -1,13 +1,13 @@ import { InvalidInputError } from '@charmverse/core/errors'; import { isTestEnv } from '@root/config/constants'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; import { onError, onNoMatch } from 'lib/middleware'; import { withSessionRoute } from 'lib/session/withSession'; import { createOrGetUserFromWallet } from 'lib/users/createUser'; -import { getUserProfile } from 'lib/users/getUser'; const handler = nc({ onError, onNoMatch }); diff --git a/pages/api/profile/favorites.ts b/pages/api/profile/favorites.ts index d3a34ca421..770d2c69cd 100644 --- a/pages/api/profile/favorites.ts +++ b/pages/api/profile/favorites.ts @@ -1,6 +1,6 @@ import type { FavoritePage } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/profile/index.ts b/pages/api/profile/index.ts index b44cf4aaec..6e34b4b7c3 100644 --- a/pages/api/profile/index.ts +++ b/pages/api/profile/index.ts @@ -1,6 +1,7 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import Cookies from 'cookies'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; @@ -21,7 +22,6 @@ import { requireWalletSignature } from 'lib/middleware/requireWalletSignature'; import { removeOldCookieFromResponse } from 'lib/session/removeOldCookie'; import { withSessionRoute } from 'lib/session/withSession'; import { createOrGetUserFromWallet } from 'lib/users/createUser'; -import { getUserProfile } from 'lib/users/getUser'; import { updateUserProfile } from 'lib/users/updateUserProfile'; const handler = nc({ onError, onNoMatch }); diff --git a/pages/api/profile/otp/recovery-code.ts b/pages/api/profile/otp/recovery-code.ts index ca8d2c14fc..9f9c6c3fe4 100644 --- a/pages/api/profile/otp/recovery-code.ts +++ b/pages/api/profile/otp/recovery-code.ts @@ -1,7 +1,8 @@ import { InvalidInputError } from '@charmverse/core/errors'; import { log } from '@charmverse/core/log'; import type { IdentityType } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; @@ -12,7 +13,6 @@ import { createUserOtp } from 'lib/profile/otp/createUserOtp'; import { verifyOtpToken } from 'lib/profile/otp/verifyOtpToken'; import { verifyRecoveryCode } from 'lib/profile/otp/verifyRecoveryCode'; import { withSessionRoute } from 'lib/session/withSession'; -import { getUserProfile } from 'lib/users/getUser'; const handler = nc({ onError, onNoMatch }); diff --git a/pages/api/profile/otp/verify.ts b/pages/api/profile/otp/verify.ts index 46b1890010..a1952dda94 100644 --- a/pages/api/profile/otp/verify.ts +++ b/pages/api/profile/otp/verify.ts @@ -1,7 +1,8 @@ import { InvalidInputError } from '@charmverse/core/errors'; import { log } from '@charmverse/core/log'; import type { IdentityType } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; @@ -9,7 +10,6 @@ import { trackUserAction } from 'lib/metrics/mixpanel/trackUserAction'; import { onError, onNoMatch, requireKeys } from 'lib/middleware'; import { verifyOtpToken } from 'lib/profile/otp/verifyOtpToken'; import { withSessionRoute } from 'lib/session/withSession'; -import { getUserProfile } from 'lib/users/getUser'; const handler = nc({ onError, onNoMatch }); diff --git a/pages/api/profile/remove-wallet.ts b/pages/api/profile/remove-wallet.ts index 40675756b4..b1003e457a 100644 --- a/pages/api/profile/remove-wallet.ts +++ b/pages/api/profile/remove-wallet.ts @@ -1,5 +1,5 @@ import type { UserWallet } from '@charmverse/core/prisma'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/session/login.ts b/pages/api/session/login.ts index 655c51dbb0..9663c1d8d5 100644 --- a/pages/api/session/login.ts +++ b/pages/api/session/login.ts @@ -4,7 +4,7 @@ import { trackOpSpaceClickSigninEvent, trackOpSpaceSuccessfulSigninEvent } from '@root/lib/metrics/mixpanel/trackOpSpaceSigninEvent'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; diff --git a/pages/api/telegram/connect.ts b/pages/api/telegram/connect.ts index a706d5fd5b..ba1b76126c 100644 --- a/pages/api/telegram/connect.ts +++ b/pages/api/telegram/connect.ts @@ -6,22 +6,12 @@ import nc from 'next-connect'; import { onError, InvalidStateError, onNoMatch, requireUser } from 'lib/middleware'; import { withSessionRoute } from 'lib/session/withSession'; +import type { TelegramAccount } from 'lib/telegram/interfaces'; const handler = nc({ onError, onNoMatch }); - -export interface TelegramAccount { - auth_date: number; - first_name: string; - hash: string; - id: number; - last_name: string; - photo_url: string; - username: string; -} - async function connectTelegram(req: NextApiRequest, res: NextApiResponse) { const telegramAccount = req.body as TelegramAccount; diff --git a/pages/api/telegram/disconnect.ts b/pages/api/telegram/disconnect.ts index 9f672c7dec..70c5ca83fc 100644 --- a/pages/api/telegram/disconnect.ts +++ b/pages/api/telegram/disconnect.ts @@ -1,11 +1,11 @@ import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { getUserProfile } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; import { onError, onNoMatch, requireUser } from 'lib/middleware'; import { withSessionRoute } from 'lib/session/withSession'; -import { getUserProfile } from 'lib/users/getUser'; import { updateUsedIdentity } from 'lib/users/updateUsedIdentity'; const handler = nc({ diff --git a/pages/api/v1/webhooks/docusign/[docusignWebhookKey]/index.ts b/pages/api/v1/webhooks/docusign/[docusignWebhookKey]/index.ts index 9c6573ce2b..d13f1ca368 100644 --- a/pages/api/v1/webhooks/docusign/[docusignWebhookKey]/index.ts +++ b/pages/api/v1/webhooks/docusign/[docusignWebhookKey]/index.ts @@ -1,5 +1,6 @@ import { log } from '@charmverse/core/log'; import { prisma } from '@charmverse/core/prisma-client'; +import { userByEmailOrGoogleAccountQuery } from '@root/lib/profile/getUser'; import type { NextApiRequest, NextApiResponse } from 'next'; import nc from 'next-connect'; @@ -8,7 +9,6 @@ import { getEnvelope, setEnvelopeInCache } from 'lib/docusign/api'; import { onError, onNoMatch } from 'lib/middleware'; import type { NextApiRequestWithApiPageKey } from 'lib/middleware/requireApiPageKey'; import { passDocumentEvaluationStepIfNecessaryOrReopenEvaluation } from 'lib/proposals/documentsToSign/passDocumentEvaluationStepIfNecessaryOrReopenEvaluation'; -import { userByEmailOrGoogleAccountQuery } from 'lib/users/getUser'; const handler = nc({ onError, onNoMatch }); diff --git a/scripts/migrations/2024_07_11_updateProposalSourceDatabaseBoardProperties.ts b/scripts/migrations/2024_07_11_updateProposalSourceDatabaseBoardProperties.ts index 9b46d1cccb..df90fc00e2 100644 --- a/scripts/migrations/2024_07_11_updateProposalSourceDatabaseBoardProperties.ts +++ b/scripts/migrations/2024_07_11_updateProposalSourceDatabaseBoardProperties.ts @@ -1,5 +1,8 @@ import { prisma } from '@charmverse/core/prisma-client'; -import { RubricEvaluationProperty, SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import { + RubricEvaluationProperty, + SelectedProposalProperties +} from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import { BoardFields, IPropertyTemplate } from 'lib/databases/board'; import { defaultProposalPropertyTypes } from 'lib/databases/proposalDbProperties'; import { DEFAULT_BOARD_BLOCK_ID } from 'lib/proposals/blocks/constants'; @@ -8,19 +11,19 @@ import { isTruthy } from 'lib/utils/types'; import { updateBoardProperties } from 'lib/databases/proposalsSource/updateBoardProperties'; const ProposalPropertyRubricPropertyRecord: Record = { - 'proposalEvaluatedBy': 'reviewers', - 'proposalEvaluationTotal': 'total', - 'proposalEvaluationAverage': 'average', - 'proposalRubricCriteriaTotal': 'criteriaTotal', - 'proposalRubricCriteriaAverage': 'criteriaAverage', - 'proposalRubricCriteriaReviewerScore': 'reviewerScore', - 'proposalRubricCriteriaReviewerComment': 'reviewerComment' -} + proposalEvaluatedBy: 'reviewers', + proposalEvaluationTotal: 'total', + proposalEvaluationAverage: 'average', + proposalRubricCriteriaTotal: 'criteriaTotal', + proposalRubricCriteriaAverage: 'criteriaAverage', + proposalRubricCriteriaReviewerScore: 'reviewerScore', + proposalRubricCriteriaReviewerComment: 'reviewerComment' +}; async function updateProposalSourceDatabaseBoardProperties() { const proposalSourceBoards = await prisma.block.findMany({ where: { - type: "board", + type: 'board', fields: { path: ['sourceType'], equals: 'proposals' @@ -31,7 +34,7 @@ async function updateProposalSourceDatabaseBoardProperties() { id: true, fields: true } - }) + }); let count = 0; const total = proposalSourceBoards.length; @@ -56,7 +59,9 @@ async function updateProposalSourceDatabaseBoardProperties() { const formFieldProperties = cardProperties.filter((cardProperty) => cardProperty.formFieldId); const boardSelectedProperties: SelectedProposalProperties = { customProperties: proposalCustomProperties.map((field) => field.id), - defaults: cardProperties.filter(cardProperty => defaultProposalPropertyTypes.includes(cardProperty.type)).map(property => property.type), + defaults: cardProperties + .filter((cardProperty) => defaultProposalPropertyTypes.includes(cardProperty.type)) + .map((property) => property.type), project: projectFieldProperties .filter((property) => cardPropertyIds.includes(property.columnPropertyId)) .map((property) => property.field), @@ -64,12 +69,12 @@ async function updateProposalSourceDatabaseBoardProperties() { .filter((property) => cardPropertyIds.includes(property.columnPropertyId)) .map((property) => property.field), templateProperties: [] - } + }; const formFields = await prisma.formField.findMany({ where: { id: { - in: formFieldProperties.map(property => property.formFieldId as string) + in: formFieldProperties.map((property) => property.formFieldId as string) } }, select: { @@ -79,7 +84,7 @@ async function updateProposalSourceDatabaseBoardProperties() { proposal: { where: { page: { - type: "proposal_template" + type: 'proposal_template' } }, select: { @@ -94,33 +99,38 @@ async function updateProposalSourceDatabaseBoardProperties() { } } } - }) + }); const proposalTemplateIdFormFieldIdsRecord: Record = {}; - formFields.forEach(formField => { - const proposalTemplateId = formField.form.proposal.find(proposal => proposal.page?.type === 'proposal_template')?.page?.id; + formFields.forEach((formField) => { + const proposalTemplateId = formField.form.proposal.find( + (proposal) => proposal.page?.type === 'proposal_template' + )?.page?.id; if (proposalTemplateId) { if (!proposalTemplateIdFormFieldIdsRecord[proposalTemplateId]) { proposalTemplateIdFormFieldIdsRecord[proposalTemplateId] = []; } proposalTemplateIdFormFieldIdsRecord[proposalTemplateId].push(formField.id); } - }) + }); Object.entries(proposalTemplateIdFormFieldIdsRecord).forEach(([templateId, formFieldIds]) => { boardSelectedProperties.templateProperties.push({ formFields: formFieldIds, rubricEvaluations: [], templateId - }) - }) + }); + }); const uniqueRubricTitles = Array.from( new Set( - cardProperties.filter(cardProperty => !!cardProperty.evaluationTitle).map(property => property.evaluationTitle).filter(isTruthy) + cardProperties + .filter((cardProperty) => !!cardProperty.evaluationTitle) + .map((property) => property.evaluationTitle) + .filter(isTruthy) ) - ) + ); const rubricEvaluations = await prisma.proposalEvaluation.findMany({ where: { @@ -130,7 +140,7 @@ async function updateProposalSourceDatabaseBoardProperties() { proposal: { spaceId: proposalSourceBoard.spaceId, page: { - type: "proposal_template" + type: 'proposal_template' } } }, @@ -147,36 +157,42 @@ async function updateProposalSourceDatabaseBoardProperties() { } } } - }) + }); const evaluationTitleProposalTemplateIdsRecord: Record = {}; - rubricEvaluations.forEach(evaluation => { + rubricEvaluations.forEach((evaluation) => { const proposalTemplateId = evaluation.proposal.page?.id; if (proposalTemplateId) { if (!evaluationTitleProposalTemplateIdsRecord[evaluation.title]) { evaluationTitleProposalTemplateIdsRecord[evaluation.title] = []; } - + evaluationTitleProposalTemplateIdsRecord[evaluation.title].push(proposalTemplateId); } - }) + }); - cardProperties.forEach(property => { + cardProperties.forEach((property) => { if ( (property.type === 'proposalEvaluatedBy' || - property.type === 'proposalEvaluationTotal' || - property.type === 'proposalEvaluationAverage' || - property.type === 'proposalRubricCriteriaTotal' || - property.type === 'proposalRubricCriteriaAverage' || - property.type === 'proposalRubricCriteriaReviewerScore' || - property.type === 'proposalRubricCriteriaReviewerComment' ) && property.evaluationTitle + property.type === 'proposalEvaluationTotal' || + property.type === 'proposalEvaluationAverage' || + property.type === 'proposalRubricCriteriaTotal' || + property.type === 'proposalRubricCriteriaAverage' || + property.type === 'proposalRubricCriteriaReviewerScore' || + property.type === 'proposalRubricCriteriaReviewerComment') && + property.evaluationTitle ) { const evaluationTitle = property.evaluationTitle; const proposalTemplateIds = evaluationTitleProposalTemplateIdsRecord[evaluationTitle]; - proposalTemplateIds.forEach(proposalTemplateId => { - const proposalTemplateProperty = boardSelectedProperties.templateProperties.find(templateProperty => templateProperty.templateId === proposalTemplateId); - const rubricEvaluation = rubricEvaluations.find(evaluation => evaluation.title === evaluationTitle && evaluation.proposal.page?.id === proposalTemplateId); + proposalTemplateIds.forEach((proposalTemplateId) => { + const proposalTemplateProperty = boardSelectedProperties.templateProperties.find( + (templateProperty) => templateProperty.templateId === proposalTemplateId + ); + const rubricEvaluation = rubricEvaluations.find( + (evaluation) => + evaluation.title === evaluationTitle && evaluation.proposal.page?.id === proposalTemplateId + ); if (rubricEvaluation) { if (!proposalTemplateProperty) { boardSelectedProperties.templateProperties.push({ @@ -184,17 +200,17 @@ async function updateProposalSourceDatabaseBoardProperties() { rubricEvaluations: [ { evaluationId: rubricEvaluation.id, - properties: [ - ProposalPropertyRubricPropertyRecord[property.type] - ], + properties: [ProposalPropertyRubricPropertyRecord[property.type]], title: evaluationTitle } ], templateId: proposalTemplateId - }) + }); } else { const rubricEvaluationProperty = ProposalPropertyRubricPropertyRecord[property.type]; - const propertyRubricEvaluation = proposalTemplateProperty.rubricEvaluations.find(evaluation => evaluation.evaluationId === rubricEvaluation.id); + const propertyRubricEvaluation = proposalTemplateProperty.rubricEvaluations.find( + (evaluation) => evaluation.evaluationId === rubricEvaluation.id + ); if (propertyRubricEvaluation) { if (!propertyRubricEvaluation.properties.includes(rubricEvaluationProperty)) { propertyRubricEvaluation.properties.push(rubricEvaluationProperty); @@ -202,22 +218,20 @@ async function updateProposalSourceDatabaseBoardProperties() { } else { proposalTemplateProperty.rubricEvaluations.push({ evaluationId: rubricEvaluation.id, - properties: [ - rubricEvaluationProperty - ], + properties: [rubricEvaluationProperty], title: evaluationTitle - }) + }); } } } - }) + }); } - }) + }); await updateBoardProperties({ boardId: proposalSourceBoard.id, selectedProperties: boardSelectedProperties - }) + }); } catch (err) { console.error('Error in board:', proposalSourceBoard.id, { err @@ -229,4 +243,4 @@ async function updateProposalSourceDatabaseBoardProperties() { } } -updateProposalSourceDatabaseBoardProperties().then(() => console.log('Done')); \ No newline at end of file +updateProposalSourceDatabaseBoardProperties().then(() => console.log('Done')); diff --git a/scripts/sendProposalEvaluationNotifications.ts b/scripts/sendProposalEvaluationNotifications.ts index 587dbac844..6cfe91880c 100644 --- a/scripts/sendProposalEvaluationNotifications.ts +++ b/scripts/sendProposalEvaluationNotifications.ts @@ -1,4 +1,4 @@ -import { sendProposalEvaluationNotifications } from 'background/tasks/sendProposalEvaluationNotifications'; +import { sendProposalEvaluationNotifications } from 'apps/cron/src/tasks/sendProposalEvaluationNotifications'; // Send proposal evaluation notifications sendProposalEvaluationNotifications(); diff --git a/scripts/updateMixpanelBlockCounts.ts b/scripts/updateMixpanelBlockCounts.ts index e5a15c0b4a..4ff363df84 100644 --- a/scripts/updateMixpanelBlockCounts.ts +++ b/scripts/updateMixpanelBlockCounts.ts @@ -1,4 +1,4 @@ -import { updateMixpanelProfilesTask } from 'background/tasks/updateMixpanelProfilesTask'; +import { updateMixpanelProfilesTask } from 'apps/cron/src/tasks/updateMixpanelProfilesTask'; export async function updateMixpanelBlockCounts() { await updateMixpanelProfilesTask(); diff --git a/stories/lib/mockData.ts b/stories/lib/mockData.ts index 473d22162e..8609132982 100644 --- a/stories/lib/mockData.ts +++ b/stories/lib/mockData.ts @@ -1,6 +1,6 @@ import type { Member, MemberPropertyWithPermissions, PropertyValueWithDetails } from '@root/lib/members/interfaces'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; import type { ProposalTemplateMeta } from '@root/lib/proposals/getProposalTemplates'; -import type { LoggedInUser } from '@root/models'; import { createMemberProperty, createMemberPropertyValue } from 'testing/mocks/memberProperty'; import { createMockSpace } from 'testing/mocks/space'; diff --git a/testing/__tests__/forums.spec.ts b/testing/__tests__/forums.spec.ts index 328f27f4cb..e86331400f 100644 --- a/testing/__tests__/forums.spec.ts +++ b/testing/__tests__/forums.spec.ts @@ -1,10 +1,9 @@ -import { generateUserAndSpaceWithApiToken } from 'testing/setupDatabase'; - import { generateForumPosts } from '../forums'; +import { generateUserAndSpace } from '../setupDatabase'; describe('generateForumPosts', () => { it('should generate an arbitrary number of posts in a given space, each with their own createdAt date', async () => { - const { space, user } = await generateUserAndSpaceWithApiToken(); + const { space, user } = await generateUserAndSpace(); const posts = await generateForumPosts({ spaceId: space.id, diff --git a/testing/__tests__/generateBoard.spec.ts b/testing/__tests__/generateBoard.spec.ts index e34529e0e7..1cf6e85638 100644 --- a/testing/__tests__/generateBoard.spec.ts +++ b/testing/__tests__/generateBoard.spec.ts @@ -1,13 +1,12 @@ import type { Block } from '@charmverse/core/prisma-client'; import { prisma } from '@charmverse/core/prisma-client'; import { testUtilsUser } from '@charmverse/core/test'; +import type { BoardFields } from '@root/lib/databases/board'; +import type { BoardViewFields, IViewType } from '@root/lib/databases/boardView'; +import type { CardFields } from '@root/lib/databases/card'; import { v4 as uuid } from 'uuid'; -import type { BoardFields } from 'lib/databases/board'; -import type { BoardViewFields, IViewType } from 'lib/databases/boardView'; -import type { CardFields } from 'lib/databases/card'; -import { generateSchema } from 'testing/publicApi/schemas'; - +import { generateSchema } from '../publicApi/schemas'; import { createPage, generateBoard, generateRole } from '../setupDatabase'; describe('generateBoard', () => { diff --git a/testing/__tests__/generateStubs.spec.ts b/testing/__tests__/generateStubs.spec.ts index 29c6181a2b..ade0def247 100644 --- a/testing/__tests__/generateStubs.spec.ts +++ b/testing/__tests__/generateStubs.spec.ts @@ -1,6 +1,6 @@ import { isAddress } from 'viem'; -import { randomETHWalletAddress } from 'testing/generateStubs'; +import { randomETHWalletAddress } from '../generateStubs'; describe('randomETHWalletAddress', () => { it('should return a random lowercase ETH wallet address', () => { diff --git a/testing/__tests__/setupDatabase.spec.ts b/testing/__tests__/setupDatabase.spec.ts index 62a0701a94..b5202f6ac4 100644 --- a/testing/__tests__/setupDatabase.spec.ts +++ b/testing/__tests__/setupDatabase.spec.ts @@ -1,7 +1,6 @@ import { prisma } from '@charmverse/core/prisma-client'; - -import { InvalidInputError } from 'lib/utils/errors'; -import { uid } from 'lib/utils/strings'; +import { InvalidInputError } from '@root/lib/utils/errors'; +import { uid } from '@root/lib/utils/strings'; import { generateRole, generateUserAndSpace } from '../setupDatabase'; diff --git a/testing/errors.ts b/testing/errors.ts index 2e74a976d9..de3acf69c5 100644 --- a/testing/errors.ts +++ b/testing/errors.ts @@ -1,4 +1,4 @@ -import { SystemError } from 'lib/utils/errors'; +import { SystemError } from '@root/lib/utils/errors'; /** * Used in tests when we should be receiving an error diff --git a/testing/generateBoardStub.ts b/testing/generateBoardStub.ts index af9282372e..0c7abab588 100644 --- a/testing/generateBoardStub.ts +++ b/testing/generateBoardStub.ts @@ -1,13 +1,12 @@ import type { Block, Page, PagePermission, PageType, Prisma } from '@charmverse/core/prisma'; +import type { BoardFields, DataSourceType, IPropertyOption, IPropertyTemplate } from '@root/lib/databases/board'; +import type { BoardViewFields, IViewType } from '@root/lib/databases/boardView'; +import type { CardFields } from '@root/lib/databases/card'; +import { Constants } from '@root/lib/databases/constants'; +import type { RelatedPageData } from '@root/lib/templates/exportWorkspacePages'; +import { typedKeys } from '@root/lib/utils/objects'; import { v4 } from 'uuid'; -import type { BoardFields, DataSourceType, IPropertyOption, IPropertyTemplate } from 'lib/databases/board'; -import type { BoardViewFields, IViewType } from 'lib/databases/boardView'; -import type { CardFields } from 'lib/databases/card'; -import { Constants } from 'lib/databases/constants'; -import type { RelatedPageData } from 'lib/templates/exportWorkspacePages'; -import { typedKeys } from 'lib/utils/objects'; - import { pageContentStub } from './generatePageStub'; export type CustomBoardProps = { diff --git a/testing/generateStubs.ts b/testing/generateStubs.ts index 04a0a4b731..024e546cce 100644 --- a/testing/generateStubs.ts +++ b/testing/generateStubs.ts @@ -1,11 +1,10 @@ import type { PageNode } from '@charmverse/core/pages'; import type { Application, Page } from '@charmverse/core/prisma'; +import { getPagePath } from '@root/lib/pages/utils'; +import { randomETHWalletAddress as _randomETHWalletAddress } from '@root/lib/utils/blockchain'; +import type { RequiredNotNull } from '@root/lib/utils/types'; import { v4 } from 'uuid'; -import { getPagePath } from 'lib/pages/utils'; -import { randomETHWalletAddress as _randomETHWalletAddress } from 'lib/utils/blockchain'; -import type { RequiredNotNull } from 'lib/utils/types'; - export function generatePageToCreateStub({ userId, spaceId, diff --git a/testing/mockApiCall.ts b/testing/mockApiCall.ts index ccd347b9ab..02404d2eb0 100644 --- a/testing/mockApiCall.ts +++ b/testing/mockApiCall.ts @@ -1,10 +1,10 @@ import { log } from '@charmverse/core/log'; import type { IdentityType } from '@charmverse/core/prisma-client'; +import { getIronOptions } from '@root/lib/session/getIronOptions'; import { serialize } from 'cookie'; import { sealData } from 'iron-session'; import request from 'supertest'; -import { getIronOptions } from 'lib/session/getIronOptions'; import type { TestLoginRequest } from 'pages/api/session/login-testenv'; export const baseUrl = process.env.DOMAIN as string; diff --git a/testing/mocks/block.ts b/testing/mocks/block.ts index aac65c6dae..dfd6aff342 100644 --- a/testing/mocks/block.ts +++ b/testing/mocks/block.ts @@ -1,8 +1,9 @@ +import type { UIBlockWithDetails } from '@root/lib/databases/block'; +import type { Board } from '@root/lib/databases/board'; +import type { BoardView } from '@root/lib/databases/boardView'; +import type { Card } from '@root/lib/databases/card'; + import { TestBlockFactory } from 'components/common/DatabaseEditor/test/testBlockFactory'; -import type { UIBlockWithDetails } from 'lib/databases/block'; -import type { Board } from 'lib/databases/board'; -import type { BoardView } from 'lib/databases/boardView'; -import type { Card } from 'lib/databases/card'; export function createMockBoard(): Board { return TestBlockFactory.createBoard(); diff --git a/testing/mocks/form.ts b/testing/mocks/form.ts index 388f2ceaaa..a3d273952c 100644 --- a/testing/mocks/form.ts +++ b/testing/mocks/form.ts @@ -1,12 +1,11 @@ -import { v4 as uuid } from 'uuid'; - -import type { FormFieldInput } from 'lib/forms/interfaces'; -import type { FieldConfig, ProjectFieldConfig } from 'lib/projects/formField'; +import type { FormFieldInput } from '@root/lib/forms/interfaces'; +import type { FieldConfig, ProjectFieldConfig } from '@root/lib/projects/formField'; import { createDefaultProjectAndMembersFieldConfig, projectMemberFieldProperties, projectFieldProperties -} from 'lib/projects/formField'; +} from '@root/lib/projects/formField'; +import { v4 as uuid } from 'uuid'; export type ProjectAndMembersFieldConfig = Record; diff --git a/testing/mocks/memberProperty.ts b/testing/mocks/memberProperty.ts index 16ca71ae88..950229e2d1 100644 --- a/testing/mocks/memberProperty.ts +++ b/testing/mocks/memberProperty.ts @@ -1,8 +1,7 @@ import type { MemberProperty } from '@charmverse/core/prisma-client'; +import type { Social, Member } from '@root/lib/members/interfaces'; import { v4 } from 'uuid'; -import type { Social, Member } from 'lib/members/interfaces'; - const createdAt = new Date('2023-07-19T00:00:00.000Z'); export function createMemberProperty( diff --git a/testing/mocks/page.ts b/testing/mocks/page.ts index 4dba1823a8..1fb914b9fe 100644 --- a/testing/mocks/page.ts +++ b/testing/mocks/page.ts @@ -1,7 +1,6 @@ +import type { PageWithContent } from '@root/lib/pages/interfaces'; import { v4 as uuid } from 'uuid'; -import type { PageWithContent } from 'lib/pages/interfaces'; - export type MockPageInput = Partial; type MockPageOutput = PageWithContent & { additionalPaths: string[]; autoGenerated: boolean; version: number }; diff --git a/testing/mocks/proposal.ts b/testing/mocks/proposal.ts index 917d9f41b2..88ac0db080 100644 --- a/testing/mocks/proposal.ts +++ b/testing/mocks/proposal.ts @@ -1,9 +1,8 @@ import type { ProposalPermissionFlags } from '@charmverse/core/permissions'; +import type { ProposalWithUsersAndRubric } from '@root/lib/proposals/interfaces'; +import type { OptionalNullable } from '@root/lib/utils/types'; import { v4 as uuid } from 'uuid'; -import type { ProposalWithUsersAndRubric } from 'lib/proposals/interfaces'; -import type { OptionalNullable } from 'lib/utils/types'; - type ProposalInput = Partial> & { evaluations?: Partial[]; fields?: Partial; diff --git a/testing/mocks/rewards.ts b/testing/mocks/rewards.ts index e43bc57a5f..9f2a385cae 100644 --- a/testing/mocks/rewards.ts +++ b/testing/mocks/rewards.ts @@ -1,6 +1,5 @@ import type { RewardBlock, Prisma } from '@charmverse/core/prisma'; - -import type { OptionalNullable } from 'lib/utils/types'; +import type { OptionalNullable } from '@root/lib/utils/types'; export function mockRewardBlocks({ spaceId, diff --git a/testing/mocks/space.ts b/testing/mocks/space.ts index 2b09099da4..82f214e9a8 100644 --- a/testing/mocks/space.ts +++ b/testing/mocks/space.ts @@ -1,9 +1,8 @@ import type { Space } from '@charmverse/core/prisma'; +import { STATIC_PAGES } from '@root/lib/features/constants'; +import { memberProfileNames } from '@root/lib/profile/memberProfiles'; import { v4 as uuid } from 'uuid'; -import { STATIC_PAGES } from 'lib/features/constants'; -import { memberProfileNames } from 'lib/profile/memberProfiles'; - export const createMockSpace = (space?: Partial): Space => { const newUserId = uuid(); return { diff --git a/testing/mocks/spaceMember.ts b/testing/mocks/spaceMember.ts index 6e4bf221d0..0ff211b024 100644 --- a/testing/mocks/spaceMember.ts +++ b/testing/mocks/spaceMember.ts @@ -1,4 +1,4 @@ -import type { Social, Member } from 'lib/members/interfaces'; +import type { Social, Member } from '@root/lib/members/interfaces'; import { createMockUser } from './user'; diff --git a/testing/mocks/tokenGate.ts b/testing/mocks/tokenGate.ts index 5be8c5422a..35b74cbd3d 100644 --- a/testing/mocks/tokenGate.ts +++ b/testing/mocks/tokenGate.ts @@ -1,4 +1,4 @@ -import type { TokenGateWithRoles } from 'lib/tokenGates/interfaces'; +import type { TokenGateWithRoles } from '@root/lib/tokenGates/interfaces'; let tokenGateId = 0; diff --git a/testing/mocks/user.ts b/testing/mocks/user.ts index 8302cbcaed..53736bbfae 100644 --- a/testing/mocks/user.ts +++ b/testing/mocks/user.ts @@ -1,8 +1,7 @@ -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { deterministicRandomName } from '@root/lib/utils/randomName'; import { v4 as uuid } from 'uuid'; -import { deterministicRandomName } from 'lib/utils/randomName'; - export function createMockUser(user?: Partial): LoggedInUser { const id = user?.id ?? uuid(); return { diff --git a/testing/pages.ts b/testing/pages.ts index 93dc13c5cd..c25476fecc 100644 --- a/testing/pages.ts +++ b/testing/pages.ts @@ -1,11 +1,10 @@ import type { PageWithPermissions } from '@charmverse/core/pages'; import type { Prisma, Page } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; +import { createPage as createPageDb } from '@root/lib/pages/server/createPage'; +import { getPagePath } from '@root/lib/pages/utils'; import { v4 } from 'uuid'; -import { createPage as createPageDb } from 'lib/pages/server/createPage'; -import { getPagePath } from 'lib/pages/utils'; - export function createPage( options: Partial & Pick & { pagePermissions?: Prisma.PagePermissionCreateManyPageInput[] } diff --git a/testing/publicApi/schemas.ts b/testing/publicApi/schemas.ts index df2a2c66b4..9dcc4b5b24 100644 --- a/testing/publicApi/schemas.ts +++ b/testing/publicApi/schemas.ts @@ -1,10 +1,9 @@ import { InvalidInputError } from '@charmverse/core/errors'; +import type { PropertyType } from '@root/lib/databases/board'; +import type { PageProperty } from '@root/lib/public-api/interfaces'; +import type { UpdateableDatabaseFields } from '@root/lib/public-api/mapPropertiesFromApiToSystemFormat'; import { v4 as uuid } from 'uuid'; -import type { PropertyType } from 'lib/databases/board'; -import type { PageProperty } from 'lib/public-api/interfaces'; -import type { UpdateableDatabaseFields } from 'lib/public-api/mapPropertiesFromApiToSystemFormat'; - const textSchema: PageProperty<'text'> = { id: uuid(), name: 'Text', diff --git a/testing/setupDatabase.ts b/testing/setupDatabase.ts index 07c525c73a..3152cad55c 100644 --- a/testing/setupDatabase.ts +++ b/testing/setupDatabase.ts @@ -23,29 +23,29 @@ import type { import { Prisma } from '@charmverse/core/prisma'; import type { Application, FarcasterUser, PagePermission, PageType } from '@charmverse/core/prisma-client'; import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { DataSourceType } from '@root/lib/databases/board'; +import type { IViewType } from '@root/lib/databases/boardView'; +import { updateBoardProperties } from '@root/lib/databases/proposalsSource/updateBoardProperties'; +import { provisionApiKey } from '@root/lib/middleware/requireApiKey'; +import type { NotificationToggles } from '@root/lib/notifications/notificationToggles'; +import { createPage as createPageDb } from '@root/lib/pages/server/createPage'; +import { getPagePath } from '@root/lib/pages/utils'; +import type { TargetPermissionGroup, AssignablePermissionGroupsWithPublic } from '@root/lib/permissions/interfaces'; +import { getUserProfile } from '@root/lib/profile/getUser'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import type { ProposalWithUsersAndRubric } from '@root/lib/proposals/interfaces'; +import { emptyDocument } from '@root/lib/prosemirror/constants'; +import { getRewardOrThrow } from '@root/lib/rewards/getReward'; +import type { RewardWithUsers } from '@root/lib/rewards/interfaces'; +import { sessionUserRelations } from '@root/lib/session/config'; +import { uniqueValues } from '@root/lib/utils/array'; +import { randomETHWalletAddress } from '@root/lib/utils/blockchain'; +import { InvalidInputError } from '@root/lib/utils/errors'; +import { typedKeys } from '@root/lib/utils/objects'; +import { uid } from '@root/lib/utils/strings'; import { v4 as uuid, v4 } from 'uuid'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; -import type { DataSourceType } from 'lib/databases/board'; -import type { IViewType } from 'lib/databases/boardView'; -import { updateBoardProperties } from 'lib/databases/proposalsSource/updateBoardProperties'; -import { provisionApiKey } from 'lib/middleware/requireApiKey'; -import type { NotificationToggles } from 'lib/notifications/notificationToggles'; -import { createPage as createPageDb } from 'lib/pages/server/createPage'; -import { getPagePath } from 'lib/pages/utils'; -import type { TargetPermissionGroup, AssignablePermissionGroupsWithPublic } from 'lib/permissions/interfaces'; -import type { ProposalWithUsersAndRubric } from 'lib/proposals/interfaces'; -import { emptyDocument } from 'lib/prosemirror/constants'; -import { getRewardOrThrow } from 'lib/rewards/getReward'; -import type { RewardWithUsers } from 'lib/rewards/interfaces'; -import { sessionUserRelations } from 'lib/session/config'; -import { getUserProfile } from 'lib/users/getUser'; -import { uniqueValues } from 'lib/utils/array'; -import { randomETHWalletAddress } from 'lib/utils/blockchain'; -import { InvalidInputError } from 'lib/utils/errors'; -import { typedKeys } from 'lib/utils/objects'; -import { uid } from 'lib/utils/strings'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; import type { CustomBoardProps } from './generateBoardStub'; import { boardWithCardsArgs } from './generateBoardStub'; diff --git a/testing/stripeMock.ts b/testing/stripeMock.ts index ef438ab82c..1414889930 100644 --- a/testing/stripeMock.ts +++ b/testing/stripeMock.ts @@ -1,7 +1,6 @@ +import { loopCheckoutUrl, communityProduct } from '@root/lib/subscription/constants'; import { v4 } from 'uuid'; -import { loopCheckoutUrl, communityProduct } from 'lib/subscription/constants'; - export const stripeMockIds = { subscriptionId: v4(), couponId: v4(), diff --git a/testing/userOtp.ts b/testing/userOtp.ts index 25bbd2e8e6..f741d86f6e 100644 --- a/testing/userOtp.ts +++ b/testing/userOtp.ts @@ -1,11 +1,10 @@ import type { User, Otp } from '@charmverse/core/prisma-client'; import { prisma } from '@charmverse/core/prisma-client'; +import { createOtp } from '@root/lib/profile/otp/createOtp'; +import { createRecoveryCode } from '@root/lib/profile/otp/createRecoveryCode'; +import { decryptRecoveryCode } from '@root/lib/profile/otp/recoveryCodeEncryption'; import * as OTPAuth from 'otpauth'; -import { createOtp } from 'lib/profile/otp/createOtp'; -import { createRecoveryCode } from 'lib/profile/otp/createRecoveryCode'; -import { decryptRecoveryCode } from 'lib/profile/otp/recoveryCodeEncryption'; - export async function getTestUserOtp(userId: string, withRecoveryCode?: boolean) { const userOtp = await prisma.otp.findUnique({ where: { diff --git a/testing/utils/__tests__/generatePostCategory.spec.ts b/testing/utils/__tests__/generatePostCategory.spec.ts index 0186dd6324..d3799a343c 100644 --- a/testing/utils/__tests__/generatePostCategory.spec.ts +++ b/testing/utils/__tests__/generatePostCategory.spec.ts @@ -1,8 +1,7 @@ import type { PostCategory } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; -import { generateUserAndSpace } from 'testing/setupDatabase'; - +import { generateUserAndSpace } from '../../setupDatabase'; import { generatePostCategory } from '../forums'; describe('generatePostCategory', () => { diff --git a/testing/utils/__tests__/generateProposal.spec.ts b/testing/utils/__tests__/generateProposal.spec.ts index 6d3cbd481e..dcc47bcb79 100644 --- a/testing/utils/__tests__/generateProposal.spec.ts +++ b/testing/utils/__tests__/generateProposal.spec.ts @@ -1,5 +1,4 @@ -import { generateUserAndSpace } from 'testing/setupDatabase'; - +import { generateUserAndSpace } from '../../setupDatabase'; import type { ProposalWithUsersAndPageMeta } from '../proposals'; import { generateProposal } from '../proposals'; diff --git a/testing/utils/forums.ts b/testing/utils/forums.ts index fc9bfa5561..6c6b6bef5c 100644 --- a/testing/utils/forums.ts +++ b/testing/utils/forums.ts @@ -1,12 +1,11 @@ import type { PostCategory } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; +import { getPostCategoryPath } from '@root/lib/forums/categories/getPostCategoryPath'; +import { createPostComment } from '@root/lib/forums/comments/createPostComment'; +import type { CreatePostCommentInput } from '@root/lib/forums/comments/interface'; +import { upsertPostCategoryPermission } from '@root/lib/permissions/forum/upsertPostCategoryPermission'; import { v4 } from 'uuid'; -import { getPostCategoryPath } from 'lib/forums/categories/getPostCategoryPath'; -import { createPostComment } from 'lib/forums/comments/createPostComment'; -import type { CreatePostCommentInput } from 'lib/forums/comments/interface'; -import { upsertPostCategoryPermission } from 'lib/permissions/forum/upsertPostCategoryPermission'; - export async function generatePostCategory({ spaceId, name = `Category-${Math.random()}`, diff --git a/testing/utils/members.ts b/testing/utils/members.ts index 7ccbb93baf..d963a16df7 100644 --- a/testing/utils/members.ts +++ b/testing/utils/members.ts @@ -1,8 +1,7 @@ import type { MemberProperty, MemberPropertyType, MemberPropertyValue, Prisma } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; - -import { createMemberProperty } from 'lib/members/createMemberProperty'; -import type { MemberPropertyValueType } from 'lib/members/interfaces'; +import { createMemberProperty } from '@root/lib/members/createMemberProperty'; +import type { MemberPropertyValueType } from '@root/lib/members/interfaces'; type GenerateMemberPropertyProps = { type?: MemberPropertyType; diff --git a/testing/utils/pages.ts b/testing/utils/pages.ts index 705d835766..1349020a08 100644 --- a/testing/utils/pages.ts +++ b/testing/utils/pages.ts @@ -1,8 +1,8 @@ +import type { CreatePostCommentInput } from '@root/lib/forums/comments/interface'; +import { createPageComment } from '@root/lib/pages/comments/createPageComment'; import { v4 } from 'uuid'; -import type { CreatePostCommentInput } from 'lib/forums/comments/interface'; -import { createPageComment } from 'lib/pages/comments/createPageComment'; -import { createPage } from 'testing/setupDatabase'; +import { createPage } from '../setupDatabase'; type CommentInput = { content: any; diff --git a/testing/utils/proposals.ts b/testing/utils/proposals.ts index 32fe3f8908..4ca4524c26 100644 --- a/testing/utils/proposals.ts +++ b/testing/utils/proposals.ts @@ -10,18 +10,19 @@ import type { import { ProposalSystemRole, prisma } from '@charmverse/core/prisma-client'; import type { ProposalWorkflowTyped, WorkflowEvaluationJson, PermissionJson } from '@charmverse/core/proposals'; import { testUtilsProposals } from '@charmverse/core/test'; +import { prismaToBlock } from '@root/lib/databases/block'; +import type { Board } from '@root/lib/databases/board'; +import { updateBoardProperties } from '@root/lib/databases/proposalsSource/updateBoardProperties'; +import { updateViews } from '@root/lib/databases/proposalsSource/updateViews'; +import { createPage as createPageDb } from '@root/lib/pages/server/createPage'; +import type { PopulatedEvaluation, ProposalFields } from '@root/lib/proposals/interfaces'; +import { getDefaultPermissions } from '@root/lib/proposals/workflows/defaultEvaluation'; import { sortBy } from 'lodash'; import { v4 as uuid } from 'uuid'; -import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; -import { prismaToBlock } from 'lib/databases/block'; -import type { Board } from 'lib/databases/board'; -import { updateBoardProperties } from 'lib/databases/proposalsSource/updateBoardProperties'; -import { updateViews } from 'lib/databases/proposalsSource/updateViews'; -import { createPage as createPageDb } from 'lib/pages/server/createPage'; -import type { PopulatedEvaluation, ProposalFields } from 'lib/proposals/interfaces'; -import { getDefaultPermissions } from 'lib/proposals/workflows/defaultEvaluation'; -import { generateBoard } from 'testing/setupDatabase'; +import type { SelectedProposalProperties } from 'components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/components/ProposalSourceProperties/interfaces'; + +import { generateBoard } from '../setupDatabase'; export type ProposalWithUsersAndPageMeta = Omit & { authors: ProposalAuthor[]; diff --git a/testing/utils/spaces.ts b/testing/utils/spaces.ts index 5db39b741c..591f50f6c4 100644 --- a/testing/utils/spaces.ts +++ b/testing/utils/spaces.ts @@ -1,9 +1,8 @@ import { prisma } from '@charmverse/core/prisma-client'; -import type { LoggedInUser } from '@root/models'; +import type { LoggedInUser } from '@root/lib/profile/getUser'; +import { sessionUserRelations } from '@root/lib/session/config'; import { v4 } from 'uuid'; -import { sessionUserRelations } from 'lib/session/config'; - /** * Utility to add existing user to existing space */ diff --git a/testing/utils/tokenGates.ts b/testing/utils/tokenGates.ts index 1a80a19e7e..fcd917b856 100644 --- a/testing/utils/tokenGates.ts +++ b/testing/utils/tokenGates.ts @@ -1,6 +1,5 @@ import { prisma } from '@charmverse/core/prisma-client'; - -import type { AccessControlCondition } from 'lib/tokenGates/interfaces'; +import type { AccessControlCondition } from '@root/lib/tokenGates/interfaces'; export async function generateTokenGate({ userId, diff --git a/testing/utils/users.ts b/testing/utils/users.ts index 3aaeab4063..61eff64304 100644 --- a/testing/utils/users.ts +++ b/testing/utils/users.ts @@ -1,8 +1,7 @@ import type { User } from '@charmverse/core/prisma'; import { prisma } from '@charmverse/core/prisma-client'; - -import { randomName } from 'lib/utils/randomName'; -import { uid } from 'lib/utils/strings'; +import { randomName } from '@root/lib/utils/randomName'; +import { uid } from '@root/lib/utils/strings'; export async function addUserGoogleAccount({ userId, diff --git a/theme/colors.ts b/theme/colors.ts index 6df9f1c5c8..893b11e215 100644 --- a/theme/colors.ts +++ b/theme/colors.ts @@ -1,9 +1,10 @@ import { darken, lighten } from '@mui/material/styles'; +import { charmBlue } from '@root/config/colors'; export const blackColor = '#111'; export const yellowColor = '#EAD637'; -export const blueColor = '#009Fb7'; +export const blueColor = charmBlue; export const darkBlueColor = darken(blueColor, 0.1); export const whiteColor = '#fff'; export const lightGreyColor = '#edf2f4'; diff --git a/tsconfig.base.json b/tsconfig.base.json index 71c589858e..e3f9b7f9e8 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -2,6 +2,7 @@ "compilerOptions": { // declarationMap seems necessary for "Go to definition" to work in VS Code "declarationMap": true, + "declaration": true, "sourceMap": true, "jsx": "react-jsx", "jsxImportSource": "@emotion/react", @@ -9,6 +10,7 @@ // https://www.typescriptlang.org/tsconfig/#moduleResolution // Use "bundler" which supports imports and exports, but does not require file extensions "moduleResolution": "bundler", + "skipLibCheck": true, "strict": true, "target": "ESNext", }, diff --git a/tsconfig.json b/tsconfig.json index a2bed1869c..7772e30efb 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -35,7 +35,6 @@ "@root/connectors/*": ["./connectors/*"], "@root/config/*": ["./config/*"], "@root/lib/*": ["./lib/*"], - "@root/models": ["./models"], "@root/testing/*": ["./testing/*"], "config/*": ["./config/*"], "scripts/*": ["./scripts/*"], diff --git a/tsconfig.next.json b/tsconfig.next.json index cc8b2d88ee..9253bc53fb 100644 --- a/tsconfig.next.json +++ b/tsconfig.next.json @@ -15,7 +15,6 @@ "@root/connectors/*": ["./connectors/*"], "@root/config/*": ["./config/*"], "@root/lib/*": ["./lib/*"], - "@root/models": ["./models"], "@charmverse/core/prisma": [ "node_modules/@charmverse/core/dist/esm/prisma" ], From bf75c79e22cc53dbc499285a23737a9766c6e612 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 10:58:48 -0600 Subject: [PATCH 02/51] add yml for websockets and cron --- .github/actions/build_app/action.yml | 5 +- .github/actions/deploy_production/action.yml | 48 ++++ .github/actions/deploy_staging/action.yml | 2 +- .github/actions/install/action.yml | 1 + .github/actions/notify_error/action.yml | 2 +- .github/workflows/deploy_cron.yml | 61 +---- .github/workflows/deploy_websockets.yml | 245 +++++++++++++++++++ package.json | 3 +- 8 files changed, 308 insertions(+), 59 deletions(-) create mode 100644 .github/actions/deploy_production/action.yml create mode 100644 .github/workflows/deploy_websockets.yml diff --git a/.github/actions/build_app/action.yml b/.github/actions/build_app/action.yml index e5de587481..ab6dfc2c46 100644 --- a/.github/actions/build_app/action.yml +++ b/.github/actions/build_app/action.yml @@ -1,8 +1,9 @@ name: 'Build app' +description: '' inputs: app_name: - description: The name of the app' + description: 'The name of the app' required: true runs: @@ -34,4 +35,4 @@ runs: shell: bash if: steps.restore_build.outputs.cache-hit != 'true' run: | - npm run ${{ inputs.app_name }}:build + npm run build -w apps/${{ inputs.app_name }} diff --git a/.github/actions/deploy_production/action.yml b/.github/actions/deploy_production/action.yml new file mode 100644 index 0000000000..c32665882d --- /dev/null +++ b/.github/actions/deploy_production/action.yml @@ -0,0 +1,48 @@ +name: 'Deploy to production' +description: '' + +inputs: + app_name: + description: 'The name of the app' + required: true + stack: + description: 'The name of the CDK stack' + required: true + +runs: + using: 'composite' + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Inject slug/short variables + uses: rlespinasse/github-slug-action@v4.x + with: + short-length: 7 + + # we need to bring back node_modules which includes tsconfig-paths which is used by CDK files + - name: Install dependencies + uses: ./.github/actions/install + + - name: Set the docker compose env variables + uses: mikefarah/yq@master + with: + cmd: | + mv .ebextensions .ebextensions_tmp && mv .ebextensions_tmp/${{ inputs.app_name }} .ebextensions + yq -I 4 -i ' + with(.option_settings."aws:elasticbeanstalk:application:environment"; + .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") + ' .ebextensions/00_env_vars.config + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 + + - name: Package and deploy + shell: bash + run: | + cat files_to_zip.txt | zip --symlinks -r@ ${{ inputs.stack }}.zip + npx aws-cdk deploy --method=direct -c name=${{ inputs.stack }} \ No newline at end of file diff --git a/.github/actions/deploy_staging/action.yml b/.github/actions/deploy_staging/action.yml index 672da7fdb0..2007544793 100644 --- a/.github/actions/deploy_staging/action.yml +++ b/.github/actions/deploy_staging/action.yml @@ -3,7 +3,7 @@ description: 'Deploy to staging' inputs: app_name: - description: The name of the app' + description: 'The name of the app' required: true runs: diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 0d518cdd33..f615f0923e 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -43,6 +43,7 @@ runs: path: | ./node_modules ./apps/*/node_modules + ./packages/*/node_modules key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }} - name: Install npm dependencies diff --git a/.github/actions/notify_error/action.yml b/.github/actions/notify_error/action.yml index e36e0ad8cc..9ac371c6f0 100644 --- a/.github/actions/notify_error/action.yml +++ b/.github/actions/notify_error/action.yml @@ -3,7 +3,7 @@ description: 'Notify Discord when a step fails' inputs: app_name: - description: The name of the app' + description: 'The name of the app' required: true runs: diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index c51a4b545c..20d5c87d0e 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -89,7 +89,7 @@ jobs: with: app_name: cron - test-cron: + test: name: Test apps runs-on: ubuntu-latest needs: build @@ -190,7 +190,7 @@ jobs: - name: Calculate Build ID id: get_build_id run: | - build_id=${{ hashFiles('package-lock.json', 'apps/**/*.[jt]s', 'lib/**/*.[jt]s') }} + build_id=${{ hashFiles('package-lock.json', 'apps/cron/*.[jt]s') }} echo "build_id=$build_id" >> $GITHUB_OUTPUT - name: Restore app from cache @@ -198,23 +198,12 @@ jobs: with: app_name: cron - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: us-east-1 - - - name: Upload static assets to S3 - run: | - aws s3 sync apps/cron/.next/static/ s3://charm.cdn/webapp-assets/_next/static/ - - name: Upload JS source maps to Datadog env: DATADOG_API_KEY: ${{ secrets.DATADOG_API_KEY }} run: | npm install -g @datadog/datadog-ci - datadog-ci sourcemaps upload apps/cron/.next/static \ + datadog-ci sourcemaps upload apps/cron/dist \ --service=cron \ --release-version=${{ steps.get_build_id.outputs.build_id }} \ --minified-path-prefix=https://cdn.charmverse.io/_next/static @@ -223,47 +212,13 @@ jobs: name: Deploy to production # run whether previous jobs were successful or skipped if: github.ref == 'refs/heads/main' && !(failure() || cancelled()) - needs: [test-cron, upload-docker, upload-static-assets] + needs: [test, upload-docker, upload-static-assets] runs-on: ubuntu-latest - strategy: - matrix: - include: - - stack: prd-cron - ebextensions: cron steps: - - uses: actions/checkout@v4 + - uses: ./.github/actions/deploy_production with: - fetch-depth: 0 - - name: Inject slug/short variables - uses: rlespinasse/github-slug-action@v4.x - with: - short-length: 7 - - # we need to bring back node_modules which includes tsconfig-paths which is used by CDK files - - name: Install dependencies - uses: ./.github/actions/install - - - name: Set the docker compose env variables - uses: mikefarah/yq@master - with: - cmd: | - mv .ebextensions .ebextensions_tmp && mv .ebextensions_tmp/${{ matrix.ebextensions }} .ebextensions - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/00_env_vars.config - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: us-east-1 - - - name: Package and deploy - run: | - cat files_to_zip.txt | zip --symlinks -r@ ${{ matrix.stack }}.zip - npx aws-cdk deploy --method=direct -c name=${{ matrix.stack }} + app_name: cron + stack: prd-cron deploy-staging: name: Deploy to staging @@ -282,7 +237,7 @@ jobs: runs-on: ubuntu-latest if: github.ref == 'refs/heads/main' && failure() # pass in all steps so we can check if any failed - needs: [test-cron, upload-docker, upload-static-assets, upload-docker, deploy-production] + needs: [test, upload-docker, upload-static-assets, upload-docker, deploy-production] steps: - name: Notify Discord uses: ./.github/actions/notify_error diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml new file mode 100644 index 0000000000..d4f43cff8a --- /dev/null +++ b/.github/workflows/deploy_websockets.yml @@ -0,0 +1,245 @@ +name: Websockets CI + +on: + push: + branches: [main] + paths: + - '.cdk' + - 'docker-compose.yml' + - '.ebextensions/websockets/**' + - '.ebstalk.apps.env/websockets.env' + - '.github/actions/**' + - '.github/workflows/deploy_websockets.yml' + - 'package.json' + - 'package-lock.json' + - 'apps/websockets/**' + - '@connect-shared/**' + - 'abis/**' + - 'adapters/**' + - 'config/**' + - 'connectors/**' + - 'lib/**' + - 'hooks/**' + pull_request: + types: [labeled, opened, synchronize] + branches: ['**'] + paths: + - '.cdk' + - 'docker-compose.yml' + - '.ebextensions/websockets/**' + - '.ebstalk.apps.env/websockets.env' + - '.github/actions/**' + - '.github/workflows/deploy_websockets.yml' + - 'package.json' + - 'package-lock.json' + - 'apps/websockets/**' + - '@connect-shared/**' + - 'abis/**' + - 'adapters/**' + - 'config/**' + - 'connectors/**' + - 'lib/**' + - 'hooks/**' + workflow_dispatch: + inputs: + core_pkg_version: + description: 'Core pkg version to update to' + required: true + +concurrency: + group: ci-websockets-${{ github.event_name }}-${{ github.ref }} + +jobs: + build: + name: Build apps + runs-on: ubuntu-latest + outputs: + head_commit_message: ${{ steps.setup_variables.outputs.commit_message }} + deploy_staging: ${{ steps.setup_variables.outputs.deploy_staging }} + skip_tests: ${{ steps.setup_variables.outputs.skip_tests }} + steps: + - name: Print Triggering event context payload + env: + workflow_event_context: ${{ toJSON(github.event) }} + run: | + echo "$workflow_event_context" + echo "Workflow and code ref: ${{github.ref}}" + + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup variables + id: setup_variables + # source https://github.com/orgs/community/discussions/28474 + run: | + echo "commit_message=$(git show -s --format=%s)" >> "$GITHUB_OUTPUT" + echo "deploy_staging=${{(github.event.action == 'labeled' && github.event.label.name == ':rocket: deploy-websockets') || (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, ':rocket: deploy-websockets'))}}" >> $GITHUB_OUTPUT + echo "skip_tests=${{ contains(env.commit_message, 'skip-tests') }}" >> $GITHUB_OUTPUT + + - name: Install dependencies + uses: ./.github/actions/install + with: + npm_install_args: -w apps/websockets + core_pkg_version: ${{ inputs.core_pkg_version }} + commit_core_pkg_upgrade: true + + - name: Build app + uses: ./.github/actions/build_app + with: + app_name: websockets + + test: + name: Test apps + runs-on: ubuntu-latest + needs: build + if: ${{ github.event.action != 'labeled' && needs.build.outputs.skip_tests != 'true' }} + # Postgres setup copied from https://gist.github.com/2color/537f8ef13ecec80059abb007839a6878 + services: + postgres: + image: postgres + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + --hostname postgres + ports: + # Maps tcp port 5432 on service container to the host + - 5432:5432 + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Restore dependencies from cache + uses: ./.github/actions/install + + - name: Setup test database + run: npx dotenv -e .env.test.local -- npm run prisma:reset + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: websockets + + - name: Typecheck app + run: npm run typecheck -w apps/websockets + + - name: Run eslint on changed files + uses: tj-actions/eslint-changed-files@v25 + with: + skip_annotations: 'true' # do not annotate code in the PR + file_extensions: '**/*.{ts,tsx}' + + - name: Run tests + run: npm run test -w apps/websockets + + upload-docker: + name: Upload Docker image + runs-on: ubuntu-latest + # run whether previous jobs were successful or skipped + if: | + github.ref == 'refs/heads/main' || needs.build.outputs.deploy_staging == 'true' + needs: build + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install dependencies + uses: ./.github/actions/install + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: websockets + + - name: Update Dockerfile + run: | + rm Dockerfile && mv apps/websockets/Dockerfile Dockerfile + + - name: Build and Push Docker image + id: docker_build_push + uses: ./.github/actions/build_docker_image + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: us-east-1 + with: + ecr_registry: websockets + + upload-static-assets: + name: Upload assets in production + runs-on: ubuntu-latest + # run whether previous jobs were successful or skipped + if: github.ref == 'refs/heads/main' && !(failure() || cancelled()) + needs: build + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install dependencies + uses: ./.github/actions/install + + - name: Calculate Build ID + id: get_build_id + run: | + build_id=${{ hashFiles('package-lock.json', 'apps/websockets/*.[jt]s') }} + echo "build_id=$build_id" >> $GITHUB_OUTPUT + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: websockets + + - name: Upload JS source maps to Datadog + env: + DATADOG_API_KEY: ${{ secrets.DATADOG_API_KEY }} + run: | + npm install -g @datadog/datadog-ci + datadog-ci sourcemaps upload apps/websockets/dist \ + --service=websockets \ + --release-version=${{ steps.get_build_id.outputs.build_id }} \ + --minified-path-prefix=https://cdn.charmverse.io/_next/static + + deploy-production: + name: Deploy to production + # run whether previous jobs were successful or skipped + if: github.ref == 'refs/heads/main' && !(failure() || cancelled()) + needs: [test, upload-docker, upload-static-assets] + runs-on: ubuntu-latest + steps: + - uses: ./.github/actions/deploy_production + with: + app_name: websockets + stack: prd-websockets + + deploy-staging: + name: Deploy to staging + if: needs.build.outputs.deploy_staging == 'true' + runs-on: ubuntu-latest + # prevent staging deploys + cleanup running in parallel + concurrency: staging-${{ github.ref }} + needs: [build, upload-docker] + steps: + - uses: ./github/actions/deploy_staging + with: + app_name: websockets + + discord-alert: + name: Notify Discord of failure + runs-on: ubuntu-latest + if: github.ref == 'refs/heads/main' && failure() + # pass in all steps so we can check if any failed + needs: [test, upload-docker, upload-static-assets, upload-docker, deploy-production] + steps: + - name: Notify Discord + uses: ./.github/actions/notify_error + with: + app_name: websockets diff --git a/package.json b/package.json index cafe6279f4..f0480d253d 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "getcontext": "npx tsx scripts/prompts/traverseAndTokenise.ts", "ceramic": "npm start -w apps/ceramic", "ceramic:build": "npm run build -w apps/ceramic", - "build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build && npm run esbuild", + "build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build", "build:analyze": "cross-env ANALYZE=true next build --experimental-debug-memory-usage", "esbuild": "tsx esbuild.config.ts", "verifydeps": "npx depcruise --ts-config ./tsconfig.json --config .dependency-cruiser.js -- ./", @@ -65,7 +65,6 @@ "test:setup-db": "./scripts/configure-db.sh", "test:browser": "TZ=UTC jest --config='./components/jest.config.ts' && TZ=UTC jest --config='./hooks/jest.config.ts'", "test:browser:update": "TZ=UTC jest --config='./components/jest.config.ts' -u && TZ=UTC jest --config='./hooks/jest.config.ts' -u", - "e2e:compile": "npx tsx esbuild.e2e.ts", "test:e2e": "npx dotenv -e .env.test.local -- npx playwright test --timeout=0", "test:e2e:ci": "NODE_OPTIONS=\"--max_old_space_size=4096\" dotenv -e .env.test.local -- npx playwright test", "test": "npm run test:ci -- --verbose --watch --config='./lib/jest.config.ts'", From 3ec9de6dcea129b3177c0615d0644f39defcc6cb Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 11:11:21 -0600 Subject: [PATCH 03/51] fix install --- .github/actions/install/action.yml | 2 +- .github/workflows/deploy_cron.yml | 2 +- .github/workflows/deploy_websockets.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index f615f0923e..6984748b7f 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -44,7 +44,7 @@ runs: ./node_modules ./apps/*/node_modules ./packages/*/node_modules - key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }} + key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }}-${{ inputs.npm_install_args }} - name: Install npm dependencies shell: bash diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 20d5c87d0e..585cc8b5a6 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -80,7 +80,7 @@ jobs: - name: Install dependencies uses: ./.github/actions/install with: - npm_install_args: -w apps/cron + npm_install_args: --include-workspace-root -w apps/cron core_pkg_version: ${{ inputs.core_pkg_version }} commit_core_pkg_upgrade: true diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index d4f43cff8a..2454946554 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -80,7 +80,7 @@ jobs: - name: Install dependencies uses: ./.github/actions/install with: - npm_install_args: -w apps/websockets + npm_install_args: --include-workspace-root -w apps/cron core_pkg_version: ${{ inputs.core_pkg_version }} commit_core_pkg_upgrade: true From 3cbd85366aff5ba14f997e2a8804d95f073838c9 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 11:14:31 -0600 Subject: [PATCH 04/51] fix types for theme --- .github/workflows/deploy_cron.yml | 2 +- apps/cron/tsconfig.json | 1 - lib/databases/proposalDbProperties.ts | 3 +-- lib/mailer/emails/templates/components/EmailWrapper.tsx | 3 ++- lib/mailer/emails/templates/components/Text.tsx | 5 ++++- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 585cc8b5a6..68d81cd42c 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -1,4 +1,4 @@ -name: cron CI +name: Cron CI on: push: diff --git a/apps/cron/tsconfig.json b/apps/cron/tsconfig.json index 1c3ca9746b..acb75cc204 100644 --- a/apps/cron/tsconfig.json +++ b/apps/cron/tsconfig.json @@ -9,7 +9,6 @@ "@root/config/*": ["../../config/*"], "@root/abis/*": ["../../abis/*"], "@root/connectors/*": ["../../connectors/*"], - "@root/theme/*": ["../../theme/*"], "@root/lib/*": ["../../lib/*"], "@root/testing/*": ["../../testing/*"], "components/*": ["../../components/*"], diff --git a/lib/databases/proposalDbProperties.ts b/lib/databases/proposalDbProperties.ts index 7586121de6..4a9c1ac002 100644 --- a/lib/databases/proposalDbProperties.ts +++ b/lib/databases/proposalDbProperties.ts @@ -15,7 +15,6 @@ import type { ProposalEvaluationStatus, ProposalEvaluationStep } from '@root/lib/proposals/interfaces'; -import type { BrandColor } from '@root/theme/colors'; import { v4 as uuid } from 'uuid'; export const EVALUATION_STATUS_LABELS: Record = { @@ -26,7 +25,7 @@ export const EVALUATION_STATUS_LABELS: Record archived: 'Archived' }; -export const proposalStatusColors: Record = { +export const proposalStatusColors: Record = { declined: 'red', in_progress: 'yellow', passed: 'green', diff --git a/lib/mailer/emails/templates/components/EmailWrapper.tsx b/lib/mailer/emails/templates/components/EmailWrapper.tsx index 1533136e3d..62097456fe 100644 --- a/lib/mailer/emails/templates/components/EmailWrapper.tsx +++ b/lib/mailer/emails/templates/components/EmailWrapper.tsx @@ -2,12 +2,13 @@ import { Head } from '@react-email/head'; import { Html } from '@react-email/html'; import { Preview } from '@react-email/preview'; import { Section } from '@react-email/section'; -import { lightGreyColor } from '@root/theme/colors'; import React from 'react'; import Footer from './Footer'; import Header from './Header'; +const lightGreyColor = '#edf2f4'; + interface Props { children: React.ReactNode; preview?: string; diff --git a/lib/mailer/emails/templates/components/Text.tsx b/lib/mailer/emails/templates/components/Text.tsx index 5c582dae08..cc5558a163 100644 --- a/lib/mailer/emails/templates/components/Text.tsx +++ b/lib/mailer/emails/templates/components/Text.tsx @@ -1,7 +1,10 @@ import type { TextProps } from '@react-email/text'; import { Text as ReactEmailText } from '@react-email/text'; -import { blueColor, primaryTextColor, secondaryTextColor } from '@root/theme/colors'; +import { charmBlue as blueColor } from '@root/config/colors'; import type { CSSProperties, ReactNode } from 'react'; +// taken from theme/colors.ts +const primaryTextColor = '#37352f'; +const secondaryTextColor = '#888'; // copied from theme/fonts.ts because next/fonts doesnt play well with tsx or ts-node. TODO: maybe remove next/fonts? const defaultFont = From a0acd3468210d0143362d211beb54f5b741d0efe Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 11:32:00 -0600 Subject: [PATCH 05/51] add test env files --- .github/actions/install/action.yml | 2 +- .github/workflows/deploy_ceramic.yml | 146 ++++++++++++++++++++++++ .github/workflows/deploy_cron.yml | 56 +-------- .github/workflows/deploy_scoutgame.yml | 2 +- .github/workflows/deploy_staging.yml | 7 +- .github/workflows/deploy_waitlist.yml | 2 +- .github/workflows/deploy_websockets.yml | 28 +++-- .github/workflows/test_and_deploy.yml | 81 ++----------- 8 files changed, 176 insertions(+), 148 deletions(-) create mode 100644 .github/workflows/deploy_ceramic.yml diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 6984748b7f..f615f0923e 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -44,7 +44,7 @@ runs: ./node_modules ./apps/*/node_modules ./packages/*/node_modules - key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }}-${{ inputs.npm_install_args }} + key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }} - name: Install npm dependencies shell: bash diff --git a/.github/workflows/deploy_ceramic.yml b/.github/workflows/deploy_ceramic.yml new file mode 100644 index 0000000000..1edcd14bbf --- /dev/null +++ b/.github/workflows/deploy_ceramic.yml @@ -0,0 +1,146 @@ +name: Ceramic CI + +on: + push: + branches: [main] + paths: + - '.cdk' + - 'docker-compose.yml' + - '.ebextensions/ceramic/**' + - '.ebstalk.apps.env/ceramic.env' + - '.github/actions/**' + - '.github/workflows/deploy_ceramic.yml' + - 'package.json' + - 'package-lock.json' + - 'apps/ceramic/**' + pull_request: + types: [labeled, opened, synchronize] + branches: ['**'] + paths: + - '.cdk' + - 'docker-compose.yml' + - '.ebextensions/ceramic/**' + - '.ebstalk.apps.env/ceramic.env' + - '.github/actions/**' + - '.github/workflows/deploy_ceramic.yml' + - 'package.json' + - 'package-lock.json' + - 'apps/ceramic/**' + workflow_dispatch: + inputs: + core_pkg_version: + description: 'Core pkg version to update to' + required: true + +concurrency: + group: ci-ceramic-${{ github.event_name }}-${{ github.ref }} + +jobs: + build: + name: Build apps + runs-on: ubuntu-latest + outputs: + head_commit_message: ${{ steps.setup_variables.outputs.commit_message }} + deploy_staging: ${{ steps.setup_variables.outputs.deploy_staging }} + skip_tests: ${{ steps.setup_variables.outputs.skip_tests }} + steps: + - name: Print Triggering event context payload + env: + workflow_event_context: ${{ toJSON(github.event) }} + run: | + echo "$workflow_event_context" + echo "Workflow and code ref: ${{github.ref}}" + + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup variables + id: setup_variables + # source https://github.com/orgs/community/discussions/28474 + run: | + echo "commit_message=$(git show -s --format=%s)" >> "$GITHUB_OUTPUT" + echo "deploy_staging=${{(github.event.action == 'labeled' && github.event.label.name == ':rocket: deploy-ceramic') || (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, ':rocket: deploy-ceramic'))}}" >> $GITHUB_OUTPUT + echo "skip_tests=${{ contains(env.commit_message, 'skip-tests') }}" >> $GITHUB_OUTPUT + + - name: Install dependencies + uses: ./.github/actions/install + with: + npm_install_args: -w apps/ceramic + core_pkg_version: ${{ inputs.core_pkg_version }} + commit_core_pkg_upgrade: true + + - name: Build app + uses: ./.github/actions/build_app + with: + app_name: ceramic + + upload-docker: + name: Upload Docker image + runs-on: ubuntu-latest + # run whether previous jobs were successful or skipped + if: | + github.ref == 'refs/heads/main' || needs.build.outputs.deploy_staging == 'true' + needs: build + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install dependencies + uses: ./.github/actions/install + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: ceramic + + - name: Update Dockerfile + run: | + rm Dockerfile && mv apps/ceramic/Dockerfile Dockerfile + + - name: Build and Push Docker image + id: docker_build_push + uses: ./.github/actions/build_docker_image + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: us-east-1 + with: + ecr_registry: ceramic + + deploy-production: + name: Deploy to production + # run whether previous jobs were successful or skipped + if: github.ref == 'refs/heads/main' && !(failure() || cancelled()) + needs: [upload-docker] + runs-on: ubuntu-latest + steps: + - uses: ./.github/actions/deploy_production + with: + app_name: ceramic + stack: prd-ceramic + + deploy-staging: + name: Deploy to staging + if: needs.build.outputs.deploy_staging == 'true' + runs-on: ubuntu-latest + # prevent staging deploys + cleanup running in parallel + concurrency: staging-${{ github.ref }} + needs: [build, upload-docker] + steps: + - uses: ./github/actions/deploy_staging + with: + app_name: ceramic + + discord-alert: + name: Notify Discord of failure + runs-on: ubuntu-latest + if: github.ref == 'refs/heads/main' && failure() + # pass in all steps so we can check if any failed + needs: [upload-docker, deploy-production] + steps: + - name: Notify Discord + uses: ./.github/actions/notify_error + with: + app_name: ceramic diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 68d81cd42c..e305b921aa 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -13,13 +13,11 @@ on: - 'package.json' - 'package-lock.json' - 'apps/cron/**' - - '@connect-shared/**' - 'abis/**' - 'adapters/**' - 'config/**' - 'connectors/**' - 'lib/**' - - 'hooks/**' pull_request: types: [labeled, opened, synchronize] branches: ['**'] @@ -33,13 +31,11 @@ on: - 'package.json' - 'package-lock.json' - 'apps/cron/**' - - '@connect-shared/**' - 'abis/**' - 'adapters/**' - 'config/**' - 'connectors/**' - 'lib/**' - - 'hooks/**' workflow_dispatch: inputs: core_pkg_version: @@ -89,56 +85,6 @@ jobs: with: app_name: cron - test: - name: Test apps - runs-on: ubuntu-latest - needs: build - if: ${{ github.event.action != 'labeled' && needs.build.outputs.skip_tests != 'true' }} - # Postgres setup copied from https://gist.github.com/2color/537f8ef13ecec80059abb007839a6878 - services: - postgres: - image: postgres - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: postgres - options: >- - --health-cmd pg_isready - --health-interval 10s - --health-timeout 5s - --health-retries 5 - --hostname postgres - ports: - # Maps tcp port 5432 on service container to the host - - 5432:5432 - - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Restore dependencies from cache - uses: ./.github/actions/install - - - name: Setup test database - run: npx dotenv -e .env.test.local -- npm run prisma:reset - - - name: Restore app from cache - uses: ./.github/actions/build_app - with: - app_name: cron - - - name: Typecheck cron app - run: npm run typecheck -w apps/cron - - - name: Run eslint on changed files - uses: tj-actions/eslint-changed-files@v25 - with: - skip_annotations: 'true' # do not annotate code in the PR - file_extensions: '**/*.{ts,tsx}' - - - name: Run tests - run: npm run test -w apps/cron - upload-docker: name: Upload Docker image runs-on: ubuntu-latest @@ -237,7 +183,7 @@ jobs: runs-on: ubuntu-latest if: github.ref == 'refs/heads/main' && failure() # pass in all steps so we can check if any failed - needs: [test, upload-docker, upload-static-assets, upload-docker, deploy-production] + needs: [test, upload-docker, upload-static-assets, deploy-production] steps: - name: Notify Discord uses: ./.github/actions/notify_error diff --git a/.github/workflows/deploy_scoutgame.yml b/.github/workflows/deploy_scoutgame.yml index 893f8bc013..e31aac1ab9 100644 --- a/.github/workflows/deploy_scoutgame.yml +++ b/.github/workflows/deploy_scoutgame.yml @@ -136,7 +136,7 @@ jobs: file_extensions: '**/*.{ts,tsx}' - name: Run tests - run: npm run test -w apps/scoutgame + run: npx dotenv -e .env.test.local -- npm run test -w apps/scoutgame test-scoutgame-e2e: name: Test Scoutgame e2e diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_staging.yml index 29b6b400da..f2f4e4ee87 100644 --- a/.github/workflows/deploy_staging.yml +++ b/.github/workflows/deploy_staging.yml @@ -14,7 +14,7 @@ jobs: deploy: if: | (github.event.action == 'labeled' && github.event.label.name == ':rocket: deploy') || - (github.event.action != 'labeled' && (contains(github.event.pull_request.labels.*.name, ':rocket: deploy') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-ceramic'))) + (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, ':rocket: deploy')) runs-on: ubuntu-latest # prevent workflows running in parallel @@ -91,11 +91,6 @@ jobs: .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") ' .ebextensions/webapp/00_env_vars.config - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/cron/00_env_vars.config - yq -I 4 -i ' with(.option_settings."aws:elasticbeanstalk:application:environment"; .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") diff --git a/.github/workflows/deploy_waitlist.yml b/.github/workflows/deploy_waitlist.yml index dc439d327e..d114b98672 100644 --- a/.github/workflows/deploy_waitlist.yml +++ b/.github/workflows/deploy_waitlist.yml @@ -128,7 +128,7 @@ jobs: run: npm run typecheck -w apps/waitlist - name: Run Waitlist Unit tests - run: npm run test -w apps/waitlist + run: npx dotenv -e .env.test.local -- npm run test -w apps/waitlist - name: Run eslint on changed files uses: tj-actions/eslint-changed-files@v25 diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index 2454946554..7bee9b1e5a 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -13,13 +13,9 @@ on: - 'package.json' - 'package-lock.json' - 'apps/websockets/**' - - '@connect-shared/**' - - 'abis/**' - 'adapters/**' - 'config/**' - - 'connectors/**' - 'lib/**' - - 'hooks/**' pull_request: types: [labeled, opened, synchronize] branches: ['**'] @@ -33,13 +29,9 @@ on: - 'package.json' - 'package-lock.json' - 'apps/websockets/**' - - '@connect-shared/**' - - 'abis/**' - 'adapters/**' - 'config/**' - - 'connectors/**' - 'lib/**' - - 'hooks/**' workflow_dispatch: inputs: core_pkg_version: @@ -137,7 +129,7 @@ jobs: file_extensions: '**/*.{ts,tsx}' - name: Run tests - run: npm run test -w apps/websockets + run: npm run websockets:test upload-docker: name: Upload Docker image @@ -215,6 +207,22 @@ jobs: needs: [test, upload-docker, upload-static-assets] runs-on: ubuntu-latest steps: + # - name: Package websockets + # id: pkg_websocket + # run: | + # rm -r .ebextensions && mv .ebextensions_tmp/websockets .ebextensions + # cat files_to_zip.txt | zip --symlinks -r@ deploy_websockets.zip + + # changed_files=$(git diff --name-only ${{github.event.before}} ${{github.event.after}}) + # websocket_src_file_pattern='^(background/|config/|[dD]ocker|esbuild|lib/|package|next|tsconfig|components/common/CharmEditor/components)+' + # for file in $changed_files; do + # echo "evaluating $file:" + # if [[ $file =~ $websocket_src_file_pattern ]]; then + # echo "Requires deployment to websocket" + # echo "deploy_websocket=true" >> $GITHUB_OUTPUT + # break + # fi + # done - uses: ./.github/actions/deploy_production with: app_name: websockets @@ -237,7 +245,7 @@ jobs: runs-on: ubuntu-latest if: github.ref == 'refs/heads/main' && failure() # pass in all steps so we can check if any failed - needs: [test, upload-docker, upload-static-assets, upload-docker, deploy-production] + needs: [test, upload-docker, upload-static-assets, deploy-production] steps: - name: Notify Discord uses: ./.github/actions/notify_error diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index b4d4331c18..fcc07708bc 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -397,28 +397,14 @@ jobs: cmd: | yq -I 4 -i ' with(.option_settings."aws:elasticbeanstalk:application:environment"; + .NODE_ENV = "production" | .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/websockets/00_env_vars.config - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .NODE_ENV = "production" | - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/webapp/00_env_vars.config - - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/cron/00_env_vars.config - - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/ceramic/00_env_vars.config - - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/websockets/00_env_vars.config + ' .ebextensions/webapp/00_env_vars.config + + yq -I 4 -i ' + with(.option_settings."aws:elasticbeanstalk:application:environment"; + .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") + ' .ebextensions/websockets/00_env_vars.config - name: Package webapp run: | @@ -426,33 +412,6 @@ jobs: mv .ebextensions_tmp/webapp .ebextensions cat files_to_zip.txt | zip --symlinks -r@ deploy.zip - - name: Package cron worker - run: | - rm -r .ebextensions && mv .ebextensions_tmp/cron .ebextensions - cat files_to_zip.txt | zip --symlinks -r@ deploy_cron.zip - - - name: Package ceramic server - run: | - rm -r .ebextensions && mv .ebextensions_tmp/ceramic .ebextensions - cat files_to_zip.txt | zip --symlinks -r@ deploy_ceramic.zip - - - name: Package websockets - id: pkg_websocket - run: | - rm -r .ebextensions && mv .ebextensions_tmp/websockets .ebextensions - cat files_to_zip.txt | zip --symlinks -r@ deploy_websockets.zip - - changed_files=$(git diff --name-only ${{github.event.before}} ${{github.event.after}}) - websocket_src_file_pattern='^(background/|config/|[dD]ocker|esbuild|lib/|package|next|tsconfig|components/common/CharmEditor/components)+' - for file in $changed_files; do - echo "evaluating $file:" - if [[ $file =~ $websocket_src_file_pattern ]]; then - echo "Requires deployment to websocket" - echo "deploy_websocket=true" >> $GITHUB_OUTPUT - break - fi - done - - name: Deploy webapp to Beanstalk id: webapp_deploy uses: einaregilsson/beanstalk-deploy@v21 @@ -481,32 +440,6 @@ jobs: use_existing_version_if_available: true # allows triggering re-deploys with same version wait_for_deployment: false # set to false to save sweet Github - - name: Deploy cron worker to Beanstalk - uses: einaregilsson/beanstalk-deploy@v21 - with: - aws_access_key: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws_secret_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - application_name: charmverse-worker - environment_name: prd-charmverse-worker - version_label: ${{ github.sha }} - region: us-east-1 - deployment_package: deploy_cron.zip - use_existing_version_if_available: true # allows triggering re-deploys with same version - wait_for_deployment: false # set to false to save sweet Github minutes - - - name: Deploy ceramic to Beanstalk - uses: einaregilsson/beanstalk-deploy@v21 - with: - aws_access_key: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws_secret_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - application_name: prd-charmverse-ceramic-link - environment_name: prd-charmverse-ceramic-link - version_label: ${{ github.sha }} - region: us-east-1 - deployment_package: deploy_ceramic.zip - use_existing_version_if_available: true # allows triggering re-deploys with same version - wait_for_deployment: false # set to false to save sweet Github minutes - discord-alert: name: Notify Discord of failure runs-on: ubuntu-latest From f3ea4dbb0315cec526d6d6a420076a3f0f1e78a6 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 11:35:07 -0600 Subject: [PATCH 06/51] add test command to sockets --- apps/websockets/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/websockets/package.json b/apps/websockets/package.json index 0be0c783b8..cd507e7e67 100644 --- a/apps/websockets/package.json +++ b/apps/websockets/package.json @@ -6,6 +6,7 @@ "build": "npx tsx esbuild.config.ts", "start": "tsx watch src/initWebsockets.ts", "start:prod": "node ./dist/initWebsockets.js", + "test": "npx jest", "typecheck": "../../node_modules/typescript/bin/tsc --project ./tsconfig.json --noEmit" }, "dependencies": { From 7c11591d93e491592a555d0ac9832b3d085db35f Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 11:49:36 -0600 Subject: [PATCH 07/51] fix socket tests --- .github/workflows/deploy_cron.yml | 50 +++++++++++++++++++++++++ .github/workflows/deploy_websockets.yml | 2 +- apps/cron/jest.config.ts | 14 +------ apps/scoutgame/package.json | 2 +- apps/websockets/jest.config.ts | 8 ++++ apps/websockets/tsconfig.json | 3 +- package.json | 9 +++-- 7 files changed, 68 insertions(+), 20 deletions(-) create mode 100644 apps/websockets/jest.config.ts diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index e305b921aa..9ec61330c8 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -85,6 +85,56 @@ jobs: with: app_name: cron + test: + name: Test apps + runs-on: ubuntu-latest + needs: build + if: ${{ github.event.action != 'labeled' && needs.build.outputs.skip_tests != 'true' }} + # Postgres setup copied from https://gist.github.com/2color/537f8ef13ecec80059abb007839a6878 + services: + postgres: + image: postgres + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + --hostname postgres + ports: + # Maps tcp port 5432 on service container to the host + - 5432:5432 + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Restore dependencies from cache + uses: ./.github/actions/install + + - name: Setup test database + run: npx dotenv -e .env.test.local -- npm run prisma:reset + + - name: Restore app from cache + uses: ./.github/actions/build_app + with: + app_name: cron + + - name: Typecheck cron app + run: npm run typecheck -w apps/cron + + - name: Run eslint on changed files + uses: tj-actions/eslint-changed-files@v25 + with: + skip_annotations: 'true' # do not annotate code in the PR + file_extensions: '**/*.{ts,tsx}' + + - name: Run tests + run: npx dotenv -e .env.test.local -- npm run test -w apps/cron + upload-docker: name: Upload Docker image runs-on: ubuntu-latest diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index 7bee9b1e5a..5b7fcae185 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -129,7 +129,7 @@ jobs: file_extensions: '**/*.{ts,tsx}' - name: Run tests - run: npm run websockets:test + run: npm run sockets:test upload-docker: name: Upload Docker image diff --git a/apps/cron/jest.config.ts b/apps/cron/jest.config.ts index 1fc7a31c57..e8b8b5fb42 100644 --- a/apps/cron/jest.config.ts +++ b/apps/cron/jest.config.ts @@ -1,20 +1,8 @@ import { pathsToModuleNameMapper } from 'ts-jest'; -import makeConfig from '../../jest.config.nodejs'; - import { compilerOptions } from './tsconfig.json'; export default { - // ...makeConfig(__dirname), preset: 'ts-jest', - extensionsToTreatAsEsm: ['.ts'], - transform: { - '^.+\\.(ts|tsx)?$': 'ts-jest' - }, - - roots: [''], - // baseUrl: '.', - modulePaths: [''], // <-- This will be set to 'baseUrl' value - moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '/' }) // <-- This will be set to 'paths' value - // testMatch: ['/src/**/*.spec.ts'] + moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '/' }) }; diff --git a/apps/scoutgame/package.json b/apps/scoutgame/package.json index c86edaba73..bd73456d3e 100644 --- a/apps/scoutgame/package.json +++ b/apps/scoutgame/package.json @@ -7,7 +7,7 @@ "start:test": "DISABLE_PUBLISHED_CREDENTIALS=\"true\" PORT=3337 dotenv -e ../../.env.test.local npx next dev", "build": "npx next build", "start:prod": "npx next start", - "test": "dotenv -e .env.test.local --override -- npx jest --maxWorkers=2 --passWithNoTests", + "test": "npx jest --maxWorkers=2 --passWithNoTests", "start:test:ci": "DISABLE_PUBLISHED_CREDENTIALS=\"true\" PORT=3337 npx react-env --path ../../.env.test.local --dest ./public -- npx next start", "lint": "npx next lint", "debug:e2e": "npx dotenv -e ../../.env.test.local -- npx playwright test --headed --config ./playwright.config.ts", diff --git a/apps/websockets/jest.config.ts b/apps/websockets/jest.config.ts new file mode 100644 index 0000000000..e8b8b5fb42 --- /dev/null +++ b/apps/websockets/jest.config.ts @@ -0,0 +1,8 @@ +import { pathsToModuleNameMapper } from 'ts-jest'; + +import { compilerOptions } from './tsconfig.json'; + +export default { + preset: 'ts-jest', + moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '/' }) +}; diff --git a/apps/websockets/tsconfig.json b/apps/websockets/tsconfig.json index 242bf49a10..9145949760 100644 --- a/apps/websockets/tsconfig.json +++ b/apps/websockets/tsconfig.json @@ -1,6 +1,7 @@ { "extends": "../../tsconfig.base.json", "compilerOptions": { + "esModuleInterop": true, "paths": { "@packages/charmeditor/*": ["../../packages/charmeditor/src/*"], "@packages/utils/*": ["../../packages/utils/src/*"], @@ -14,5 +15,5 @@ "components/*": ["../../components/*"] } }, - "exclude": ["./esbuild.config.ts", "./__tests__"] + "exclude": ["jest.config.ts", "esbuild.config.ts"] } \ No newline at end of file diff --git a/package.json b/package.json index f0480d253d..aa5e543fb4 100644 --- a/package.json +++ b/package.json @@ -25,11 +25,12 @@ "cron:build": "npm run build -w apps/cron", "cron:staging": "npx dotenv -e .env.staging -- npm run start:prod -w apps/cron", "cron:prod": "npm run start:prod -w apps/cron", + "cron:test": "dotenv -e .env.test.local -- npm test -w apps/cron", "sockets": "PORT=3336 dotenv -e .env.local -- npm run start -w apps/websockets", "sockets:build": "npm run build -w apps/websockets", "sockets:remote": "dotenv -e .env.production -v PORT=3336 -- npm run start -w apps/websockets", - "sockets:test": "dotenv -e .env.test.local -v PORT=3336 -- npm run start:prod -w apps/websockets", - "sockets:test:ci": "npm run sockets:test", + "sockets:start:test": "dotenv -e .env.test.local -v PORT=3336 -- npm run start:prod -w apps/websockets", + "sockets:test": "dotenv -e .env.test.local -- npm test -w apps/websockets", "sockets:staging": "PORT=3336 npx dotenv -e .env.staging.local -- tsx watch background/initWebsockets.ts", "prisma:link": "rm -rf ./node_modules/.prisma && npm link @charmverse/core && npm run prisma:generate", "prisma:migrate": "cd node_modules/@charmverse/core && npm run prisma:migrate", @@ -51,8 +52,8 @@ "start:debug": "cross-env NODE_OPTIONS='--inspect' next", "start:ssl": "(npx local-ssl-proxy --source 3000 --target 8080) & next dev --port 8080", "start:ssl:prod": "(npx local-ssl-proxy --source 3000 --target 8080) & next start --port 8080", - "start:test": "concurrently --names \"next,sockets\" -c \"green,yellow\" \"npm run server:test\" \"npm run sockets:test\"", - "start:test:ci": "DISABLE_PUBLISHED_CREDENTIALS=\"true\" concurrently --names \"next,sockets\" -c \"green,yellow\" \"npm run server:test:ci\" \"npm run sockets:test:ci\"", + "start:test": "concurrently --names \"next,sockets\" -c \"green,yellow\" \"npm run server:test\" \"npm run sockets:start:test\"", + "start:test:ci": "DISABLE_PUBLISHED_CREDENTIALS=\"true\" concurrently --names \"next,sockets\" -c \"green,yellow\" \"npm run server:test:ci\" \"npm run sockets:start:test\"", "start:remote": "concurrently --names \"next,sockets\" -c \"green,yellow\" \"npm run server:remote\" \"npm run sockets:remote\"", "start:staging": "concurrently --names \"next,sockets\" -c \"green,yellow\" \"REACT_APP_WEBSOCKETS_HOST=http://127.0.0.1:3336 npm run server:staging\" \"npm run sockets:staging\"", "prepare": "husky install", From cc45102e7f833fc60351ea2c7d565fbd82f92b1c Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 11:51:00 -0600 Subject: [PATCH 08/51] add test command for scouts --- .github/workflows/deploy_scoutgame.yml | 2 +- package.json | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy_scoutgame.yml b/.github/workflows/deploy_scoutgame.yml index e31aac1ab9..d7e2754a9e 100644 --- a/.github/workflows/deploy_scoutgame.yml +++ b/.github/workflows/deploy_scoutgame.yml @@ -136,7 +136,7 @@ jobs: file_extensions: '**/*.{ts,tsx}' - name: Run tests - run: npx dotenv -e .env.test.local -- npm run test -w apps/scoutgame + run: npm run scoutgame:test test-scoutgame-e2e: name: Test Scoutgame e2e diff --git a/package.json b/package.json index aa5e543fb4..2bf5127600 100644 --- a/package.json +++ b/package.json @@ -85,6 +85,7 @@ "scoutgame:build": "npm run build --w=apps/scoutgame", "scoutgame:start:prod": "npx react-env --path .env.local --dest ./apps/scoutgame/public -- npm run start:prod --workspace=apps/scoutgame", "scoutgame:debug:e2e": "npm run debug:e2e -w=apps/scoutgame", + "scoutgame:test": "dotenv -e .env.test.local -- npm test -w apps/scoutgame", "scoutgame:test:e2e": "npm run test:e2e -w=apps/scoutgame -- --headed", "scoutgame:test:e2e:ci": "npm run test:e2e -w=apps/scoutgame", "scoutgame:start:test:ci": "npm run start:test:ci -w=apps/scoutgame", From 9526f511bc62a26af5113ab93dc0e734918d6052 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 12:00:05 -0600 Subject: [PATCH 09/51] add docker files --- .github/workflows/deploy_ceramic.yml | 2 +- apps/ceramic/Dockerfile | 35 ++ apps/cron/Dockerfile | 35 ++ apps/websockets/Dockerfile | 35 ++ package-lock.json | 627 +++++++++++++++++++++++++++ 5 files changed, 733 insertions(+), 1 deletion(-) create mode 100644 apps/ceramic/Dockerfile create mode 100644 apps/cron/Dockerfile create mode 100644 apps/websockets/Dockerfile diff --git a/.github/workflows/deploy_ceramic.yml b/.github/workflows/deploy_ceramic.yml index 1edcd14bbf..15cea6435e 100644 --- a/.github/workflows/deploy_ceramic.yml +++ b/.github/workflows/deploy_ceramic.yml @@ -66,7 +66,7 @@ jobs: - name: Install dependencies uses: ./.github/actions/install with: - npm_install_args: -w apps/ceramic + npm_install_args: --include-workspace-root -w apps/ceramic core_pkg_version: ${{ inputs.core_pkg_version }} commit_core_pkg_upgrade: true diff --git a/apps/ceramic/Dockerfile b/apps/ceramic/Dockerfile new file mode 100644 index 0000000000..d8b54f0666 --- /dev/null +++ b/apps/ceramic/Dockerfile @@ -0,0 +1,35 @@ +#syntax=docker/dockerfile:1.7-labs + +# Use node-slim because node-alpine does not seem to supports the `sharp` npm library that gets built +FROM node:18.19.0-slim AS base-app + +# useful for node-alpine +# RUN apk add --no-cache libc6-compat git +RUN apt update +RUN apt install openssl -y + +WORKDIR /app + +# Copy dependencies +COPY --parents apps/*/package.json \ + packages/*/package.json \ + node_modules \ + package.json \ + apps/ceramic/node_modules \ + apps/ceramic/package.json \ + . + +# Copy compiled code +COPY --parents apps/*/dist . + +ENV PORT=3000 + +# Next.js collects completely anonymous telemetry data about general usage. +# Learn more here: https://nextjs.org/telemetry +# Uncomment the following line in case you want to disable telemetry. +ENV NEXT_TELEMETRY_DISABLED=1 +ENV LOG_LEVEL=debug + +EXPOSE 3000 +# need something to keep docker container running until docker-compose runs its command +CMD ["tail", "-f", "/dev/null"] diff --git a/apps/cron/Dockerfile b/apps/cron/Dockerfile new file mode 100644 index 0000000000..c3181a45dc --- /dev/null +++ b/apps/cron/Dockerfile @@ -0,0 +1,35 @@ +#syntax=docker/dockerfile:1.7-labs + +# Use node-slim because node-alpine does not seem to supports the `sharp` npm library that gets built +FROM node:18.19.0-slim AS base-app + +# useful for node-alpine +# RUN apk add --no-cache libc6-compat git +RUN apt update +RUN apt install openssl -y + +WORKDIR /app + +# Copy dependencies +COPY --parents apps/*/package.json \ + packages/*/package.json \ + node_modules \ + package.json \ + apps/cron/node_modules \ + apps/cron/package.json \ + . + +# Copy compiled code +COPY --parents apps/*/dist . + +ENV PORT=3000 + +# Next.js collects completely anonymous telemetry data about general usage. +# Learn more here: https://nextjs.org/telemetry +# Uncomment the following line in case you want to disable telemetry. +ENV NEXT_TELEMETRY_DISABLED=1 +ENV LOG_LEVEL=debug + +EXPOSE 3000 +# need something to keep docker container running until docker-compose runs its command +CMD ["tail", "-f", "/dev/null"] diff --git a/apps/websockets/Dockerfile b/apps/websockets/Dockerfile new file mode 100644 index 0000000000..09e5a93407 --- /dev/null +++ b/apps/websockets/Dockerfile @@ -0,0 +1,35 @@ +#syntax=docker/dockerfile:1.7-labs + +# Use node-slim because node-alpine does not seem to supports the `sharp` npm library that gets built +FROM node:18.19.0-slim AS base-app + +# useful for node-alpine +# RUN apk add --no-cache libc6-compat git +RUN apt update +RUN apt install openssl -y + +WORKDIR /app + +# Copy dependencies +COPY --parents apps/*/package.json \ + packages/*/package.json \ + node_modules \ + package.json \ + apps/websockets/node_modules \ + apps/websockets/package.json \ + . + +# Copy compiled code +COPY --parents apps/*/dist . + +ENV PORT=3000 + +# Next.js collects completely anonymous telemetry data about general usage. +# Learn more here: https://nextjs.org/telemetry +# Uncomment the following line in case you want to disable telemetry. +ENV NEXT_TELEMETRY_DISABLED=1 +ENV LOG_LEVEL=debug + +EXPOSE 3000 +# need something to keep docker container running until docker-compose runs its command +CMD ["tail", "-f", "/dev/null"] diff --git a/package-lock.json b/package-lock.json index c532ecb15d..07d3bb9387 100644 --- a/package-lock.json +++ b/package-lock.json @@ -370,6 +370,9 @@ "key-did-provider-ed25519": "^3.0.2", "key-did-resolver": "^3.0.0", "ora": "^8.1.0" + }, + "devDependencies": { + "esbuild": "^0.23.1" } }, "apps/ceramic/node_modules/@ceramicnetwork/http-client": { @@ -407,6 +410,22 @@ "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, + "apps/ceramic/node_modules/@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, "apps/ceramic/node_modules/cborg": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", @@ -415,6 +434,45 @@ "cborg": "lib/bin.js" } }, + "apps/ceramic/node_modules/esbuild": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" + } + }, "apps/ceramic/node_modules/key-did-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", @@ -8321,6 +8379,70 @@ "node": ">=18.0.0" } }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/darwin-arm64": { "version": "0.19.5", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", @@ -8336,6 +8458,310 @@ "node": ">=12" } }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -72727,12 +73153,173 @@ "tslib": "^2.5.0" } }, + "@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "dev": true, + "optional": true + }, "@esbuild/darwin-arm64": { "version": "0.19.5", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", "optional": true }, + "@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "dev": true, + "optional": true + }, "@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -92758,6 +93345,7 @@ "@ceramicnetwork/streamid": "^3.4.1", "@composedb/devtools-node": "^0.7.1", "dids": "^4.0.4", + "esbuild": "^0.23.1", "key-did-provider-ed25519": "^3.0.2", "key-did-resolver": "^3.0.0", "ora": "^8.1.0" @@ -92800,11 +93388,50 @@ } } }, + "@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "dev": true, + "optional": true + }, "cborg": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, + "esbuild": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "dev": true, + "requires": { + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" + } + }, "key-did-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", From 65468d59afb46a42d7b109ed5f624f62f6397305 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 12:08:38 -0600 Subject: [PATCH 10/51] fix types --- apps/comingsoon/package.json | 16 - apps/cron/package.json | 4 +- apps/scoutgame/package.json | 3 +- package-lock.json | 1300 +--------------------------------- package.json | 1 - 5 files changed, 17 insertions(+), 1307 deletions(-) diff --git a/apps/comingsoon/package.json b/apps/comingsoon/package.json index 3a749150b3..51ec9e404f 100644 --- a/apps/comingsoon/package.json +++ b/apps/comingsoon/package.json @@ -8,21 +8,5 @@ "start:prod": "npx next start", "lint": "npx next lint", "typecheck": "../../node_modules/typescript/bin/tsc --project ./tsconfig.json --noEmit" - }, - "dependencies": { - "@hookform/resolvers": "^3.6.0", - "@mui/material-nextjs": "^5.16.6", - "@serwist/next": "^9.0.5", - "@tanstack/react-query": "^5.52.2", - "@typeschema/yup": "^0.13.3", - "framer-motion": "^11.3.17", - "next-safe-action": "^7.4.2", - "server-only": "^0.0.1", - "viem": "^2.20.1", - "wagmi": "^2.12.7" - }, - "devDependencies": { - "@types/web-push": "^3.6.3", - "serwist": "^9.0.5" } } diff --git a/apps/cron/package.json b/apps/cron/package.json index b2dd3b59fb..7d12472774 100644 --- a/apps/cron/package.json +++ b/apps/cron/package.json @@ -10,7 +10,9 @@ "typecheck": "../../node_modules/typescript/bin/tsc --project ./tsconfig.json --noEmit" }, "dependencies": { - "node-cron": "^3.0.3" + "@types/web-push": "^3.6.3", + "node-cron": "^3.0.3", + "web-push": "^3.6.7" }, "devDependencies": { "@types/node-cron": "^3.0.11" diff --git a/apps/scoutgame/package.json b/apps/scoutgame/package.json index bd73456d3e..a93d45dce9 100644 --- a/apps/scoutgame/package.json +++ b/apps/scoutgame/package.json @@ -24,7 +24,8 @@ "next-safe-action": "^7.4.2", "server-only": "^0.0.1", "viem": "^2.20.1", - "wagmi": "^2.12.7" + "wagmi": "^2.12.7", + "web-push": "^3.6.7" }, "devDependencies": { "@types/web-push": "^3.6.3", diff --git a/package-lock.json b/package-lock.json index 07d3bb9387..2d147d1837 100644 --- a/package-lock.json +++ b/package-lock.json @@ -230,7 +230,6 @@ "uuid": "^8.3.2", "viem": "^2.17.3", "wagmi": "^2.12.4", - "web-push": "^3.6.7", "yup": "^1.4.0", "zksync-web3": "^0.16.0" }, @@ -370,9 +369,6 @@ "key-did-provider-ed25519": "^3.0.2", "key-did-resolver": "^3.0.0", "ora": "^8.1.0" - }, - "devDependencies": { - "esbuild": "^0.23.1" } }, "apps/ceramic/node_modules/@ceramicnetwork/http-client": { @@ -410,22 +406,6 @@ "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" }, - "apps/ceramic/node_modules/@esbuild/darwin-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", - "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, "apps/ceramic/node_modules/cborg": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", @@ -434,45 +414,6 @@ "cborg": "lib/bin.js" } }, - "apps/ceramic/node_modules/esbuild": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", - "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.1", - "@esbuild/android-arm": "0.23.1", - "@esbuild/android-arm64": "0.23.1", - "@esbuild/android-x64": "0.23.1", - "@esbuild/darwin-arm64": "0.23.1", - "@esbuild/darwin-x64": "0.23.1", - "@esbuild/freebsd-arm64": "0.23.1", - "@esbuild/freebsd-x64": "0.23.1", - "@esbuild/linux-arm": "0.23.1", - "@esbuild/linux-arm64": "0.23.1", - "@esbuild/linux-ia32": "0.23.1", - "@esbuild/linux-loong64": "0.23.1", - "@esbuild/linux-mips64el": "0.23.1", - "@esbuild/linux-ppc64": "0.23.1", - "@esbuild/linux-riscv64": "0.23.1", - "@esbuild/linux-s390x": "0.23.1", - "@esbuild/linux-x64": "0.23.1", - "@esbuild/netbsd-x64": "0.23.1", - "@esbuild/openbsd-arm64": "0.23.1", - "@esbuild/openbsd-x64": "0.23.1", - "@esbuild/sunos-x64": "0.23.1", - "@esbuild/win32-arm64": "0.23.1", - "@esbuild/win32-ia32": "0.23.1", - "@esbuild/win32-x64": "0.23.1" - } - }, "apps/ceramic/node_modules/key-did-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", @@ -524,386 +465,7 @@ } }, "apps/comingsoon": { - "version": "0.1.0", - "dependencies": { - "@hookform/resolvers": "^3.6.0", - "@mui/material-nextjs": "^5.16.6", - "@serwist/next": "^9.0.5", - "@tanstack/react-query": "^5.52.2", - "@typeschema/yup": "^0.13.3", - "framer-motion": "^11.3.17", - "next-safe-action": "^7.4.2", - "server-only": "^0.0.1", - "viem": "^2.20.1", - "wagmi": "^2.12.7" - }, - "devDependencies": { - "@types/web-push": "^3.6.3", - "serwist": "^9.0.5" - } - }, - "apps/comingsoon/node_modules/@hookform/resolvers": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.9.0.tgz", - "integrity": "sha512-bU0Gr4EepJ/EQsH/IwEzYLsT/PEj5C0ynLQ4m+GSHS+xKH4TfSelhluTgOaoc4kA5s7eCsQbM4wvZLzELmWzUg==", - "peerDependencies": { - "react-hook-form": "^7.0.0" - } - }, - "apps/comingsoon/node_modules/@noble/curves": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz", - "integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "apps/comingsoon/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "apps/comingsoon/node_modules/@scure/base": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.8.tgz", - "integrity": "sha512-6CyAclxj3Nb0XT7GHK6K4zK6k2xJm6E4Ft0Ohjt4WgegiFUHEtFb2CGzmPmGBwoIhrLsqNLYfLr04Y1GePrzZg==", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "apps/comingsoon/node_modules/@scure/bip39": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.4.0.tgz", - "integrity": "sha512-BEEm6p8IueV/ZTfQLp/0vhw4NPnT9oWf5+28nvmeUICjP99f4vr2d+qc7AVGDDtwRep6ifR43Yed9ERVmiITzw==", - "dependencies": { - "@noble/hashes": "~1.5.0", - "@scure/base": "~1.1.8" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "apps/comingsoon/node_modules/@scure/bip39/node_modules/@noble/hashes": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.5.0.tgz", - "integrity": "sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "apps/comingsoon/node_modules/@tanstack/query-core": { - "version": "5.54.1", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.54.1.tgz", - "integrity": "sha512-hKS+WRpT5zBFip21pB6Jx1C0hranWQrbv5EJ7qPoiV5MYI3C8rTCqWC9DdBseiPT1JgQWh8Y55YthuYZNiw3Xw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "apps/comingsoon/node_modules/@tanstack/react-query": { - "version": "5.55.0", - "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.55.0.tgz", - "integrity": "sha512-2uYuxEbRQD8TORUiTUacEOwt1e8aoSqUOJFGY5TUrh6rQ3U85zrMS2wvbNhBhXGh6Vj69QDCP2yv8tIY7joo6Q==", - "dependencies": { - "@tanstack/query-core": "5.54.1" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^18 || ^19" - } - }, - "apps/comingsoon/node_modules/@wagmi/connectors": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/@wagmi/connectors/-/connectors-5.1.8.tgz", - "integrity": "sha512-LdImInHFogis83/Yhq0vJLracIFUSl9m8961JEWS+lGDPuU2QbVg4Rv2VAfratfRoR8oDuSJNTvIvp9Kyiu5ug==", - "dependencies": { - "@coinbase/wallet-sdk": "4.0.4", - "@metamask/sdk": "0.27.0", - "@safe-global/safe-apps-provider": "0.18.3", - "@safe-global/safe-apps-sdk": "9.1.0", - "@walletconnect/ethereum-provider": "2.15.2", - "@walletconnect/modal": "2.6.2", - "cbw-sdk": "npm:@coinbase/wallet-sdk@3.9.3" - }, - "funding": { - "url": "https://github.com/sponsors/wevm" - }, - "peerDependencies": { - "@wagmi/core": "2.13.4", - "typescript": ">=5.0.4", - "viem": "2.x" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "apps/comingsoon/node_modules/@wagmi/core": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/@wagmi/core/-/core-2.13.4.tgz", - "integrity": "sha512-J6gfxHYr8SCc/BzEa712LnI+qLFs5K2nBLupwQqQl4WiAlCu8SdcpbZokqiwfCMYhIRMj0+YFEP9qe4ypcexmw==", - "dependencies": { - "eventemitter3": "5.0.1", - "mipd": "0.0.7", - "zustand": "4.4.1" - }, - "funding": { - "url": "https://github.com/sponsors/wevm" - }, - "peerDependencies": { - "@tanstack/query-core": ">=5.0.0", - "typescript": ">=5.0.4", - "viem": "2.x" - }, - "peerDependenciesMeta": { - "@tanstack/query-core": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "apps/comingsoon/node_modules/@walletconnect/core": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.15.2.tgz", - "integrity": "sha512-u4BGuazSNAQ48QBY7EphanBuBN6EJWyD5MXi83n1wXwfPQWAu0XNvmOjjF+xmMI5TsYH9N6Y78O6HP/VX9EOvg==", - "dependencies": { - "@walletconnect/heartbeat": "1.2.2", - "@walletconnect/jsonrpc-provider": "1.0.14", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/jsonrpc-ws-connection": "1.0.14", - "@walletconnect/keyvaluestorage": "1.1.1", - "@walletconnect/logger": "2.1.2", - "@walletconnect/relay-api": "1.0.11", - "@walletconnect/relay-auth": "1.0.4", - "@walletconnect/safe-json": "1.0.2", - "@walletconnect/time": "1.0.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0", - "lodash.isequal": "4.5.0", - "uint8arrays": "3.1.0" - }, - "engines": { - "node": ">=18" - } - }, - "apps/comingsoon/node_modules/@walletconnect/ethereum-provider": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-2.15.2.tgz", - "integrity": "sha512-POH2Wov2cXdASDDyv2bwY9Y2JzkGzGFS4SzltMt1zxKUMTyoJ8xKAgWaxoiJw0pqsLGY7T5msmk9qeKOavQtAA==", - "dependencies": { - "@walletconnect/jsonrpc-http-connection": "1.0.8", - "@walletconnect/jsonrpc-provider": "1.0.14", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/modal": "2.6.2", - "@walletconnect/sign-client": "2.15.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/universal-provider": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0" - } - }, - "apps/comingsoon/node_modules/@walletconnect/relay-api": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.11.tgz", - "integrity": "sha512-tLPErkze/HmC9aCmdZOhtVmYZq1wKfWTJtygQHoWtgg722Jd4homo54Cs4ak2RUFUZIGO2RsOpIcWipaua5D5Q==", - "dependencies": { - "@walletconnect/jsonrpc-types": "^1.0.2" - } - }, - "apps/comingsoon/node_modules/@walletconnect/sign-client": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.15.2.tgz", - "integrity": "sha512-Yp4/z3IdTMngbjr7Zy7Qi1X6EZDH4nxY91X6K2KpA3MjLW0yPTGalEJgJ4p9WH7fmHRlwvfR4hjwM5eQcLo5Zg==", - "dependencies": { - "@walletconnect/core": "2.15.2", - "@walletconnect/events": "1.0.1", - "@walletconnect/heartbeat": "1.2.2", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/logger": "2.1.2", - "@walletconnect/time": "1.0.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0" - } - }, - "apps/comingsoon/node_modules/@walletconnect/types": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.15.2.tgz", - "integrity": "sha512-TGnQZYWZJJ3I8dqgpMPwhO1IRXDuY8/tWPI0nNWJDyTK7b3E9prDGugnPmDDjpTYVoETnUTgW/jQaHNTq4yV7Q==", - "dependencies": { - "@walletconnect/events": "1.0.1", - "@walletconnect/heartbeat": "1.2.2", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/keyvaluestorage": "1.1.1", - "@walletconnect/logger": "2.1.2", - "events": "3.3.0" - } - }, - "apps/comingsoon/node_modules/@walletconnect/universal-provider": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.15.2.tgz", - "integrity": "sha512-AWK5nUA4tJ57C8JDPOmqAWf5aF1VXIN4JpkqKekNKMP4+xiBTotKrwj0XD5xvtDUyaqjhRZPvYmUk24z1udrHA==", - "dependencies": { - "@walletconnect/jsonrpc-http-connection": "1.0.8", - "@walletconnect/jsonrpc-provider": "1.0.14", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/logger": "2.1.2", - "@walletconnect/sign-client": "2.15.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0" - } - }, - "apps/comingsoon/node_modules/@walletconnect/utils": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.15.2.tgz", - "integrity": "sha512-H+fNH9cHDezdaEiEsO7/3URSIzqhumuacwB/+0PX0sSCoktmU9AfTqA8fJGG43zOPixleBqOymzO6owB1Y7jtQ==", - "dependencies": { - "@stablelib/chacha20poly1305": "1.0.1", - "@stablelib/hkdf": "1.0.1", - "@stablelib/random": "1.0.2", - "@stablelib/sha256": "1.0.1", - "@stablelib/x25519": "1.0.3", - "@walletconnect/relay-api": "1.0.11", - "@walletconnect/relay-auth": "1.0.4", - "@walletconnect/safe-json": "1.0.2", - "@walletconnect/time": "1.0.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/window-getters": "1.0.1", - "@walletconnect/window-metadata": "1.0.1", - "detect-browser": "5.3.0", - "elliptic": "^6.5.7", - "query-string": "7.1.3", - "uint8arrays": "3.1.0" - } - }, - "apps/comingsoon/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "apps/comingsoon/node_modules/elliptic": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", - "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "apps/comingsoon/node_modules/multiformats": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", - "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" - }, - "apps/comingsoon/node_modules/uint8arrays": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.0.tgz", - "integrity": "sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==", - "dependencies": { - "multiformats": "^9.4.2" - } - }, - "apps/comingsoon/node_modules/viem": { - "version": "2.21.2", - "resolved": "https://registry.npmjs.org/viem/-/viem-2.21.2.tgz", - "integrity": "sha512-gTzwKbmyepEDUBKXs3GslTcg5KXfDIgQfHKNxIV9cs7Xout55F8NvHhNeBGBfuw1Ix4Vz8aCMFGYwX5a64CGFg==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/wevm" - } - ], - "dependencies": { - "@adraffy/ens-normalize": "1.10.0", - "@noble/curves": "1.4.0", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.4.0", - "abitype": "1.0.5", - "isows": "1.0.4", - "webauthn-p256": "0.0.5", - "ws": "8.17.1" - }, - "peerDependencies": { - "typescript": ">=5.0.4" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "apps/comingsoon/node_modules/wagmi": { - "version": "2.12.8", - "resolved": "https://registry.npmjs.org/wagmi/-/wagmi-2.12.8.tgz", - "integrity": "sha512-+HP3T02La4rIbBWF2mAVX63CykTGMQt77WN1PzZco7MWeUtjYeutwmnNjkDWWE7HFVZHZqNTVFYe3sbtu2LR4A==", - "dependencies": { - "@wagmi/connectors": "5.1.8", - "@wagmi/core": "2.13.4", - "use-sync-external-store": "1.2.0" - }, - "funding": { - "url": "https://github.com/sponsors/wevm" - }, - "peerDependencies": { - "@tanstack/react-query": ">=5.0.0", - "react": ">=18", - "typescript": ">=5.0.4", - "viem": "2.x" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "apps/comingsoon/node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } + "version": "0.1.0" }, "apps/connect": { "version": "0.1.0", @@ -924,7 +486,9 @@ "apps/cron": { "version": "1.0.0", "dependencies": { - "node-cron": "^3.0.3" + "@types/web-push": "^3.6.3", + "node-cron": "^3.0.3", + "web-push": "^3.6.7" }, "devDependencies": { "@types/node-cron": "^3.0.11" @@ -960,7 +524,8 @@ "next-safe-action": "^7.4.2", "server-only": "^0.0.1", "viem": "^2.20.1", - "wagmi": "^2.12.7" + "wagmi": "^2.12.7", + "web-push": "^3.6.7" }, "devDependencies": { "@types/web-push": "^3.6.3", @@ -8379,70 +7944,6 @@ "node": ">=18.0.0" } }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", - "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", - "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", - "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", - "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, "node_modules/@esbuild/darwin-arm64": { "version": "0.19.5", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", @@ -8458,310 +7959,6 @@ "node": ">=12" } }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", - "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", - "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", - "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", - "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", - "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", - "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", - "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", - "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", - "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", - "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", - "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", - "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", - "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", - "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", - "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", - "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", - "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", - "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", - "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -30473,7 +29670,6 @@ "version": "3.6.3", "resolved": "https://registry.npmjs.org/@types/web-push/-/web-push-3.6.3.tgz", "integrity": "sha512-v3oT4mMJsHeJ/rraliZ+7TbZtr5bQQuxcgD7C3/1q/zkAj29c8RE0F9lVZVu3hiQe5Z9fYcBreV7TLnfKR+4mg==", - "dev": true, "dependencies": { "@types/node": "*" } @@ -73153,173 +72349,12 @@ "tslib": "^2.5.0" } }, - "@esbuild/aix-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", - "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", - "dev": true, - "optional": true - }, - "@esbuild/android-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", - "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", - "dev": true, - "optional": true - }, - "@esbuild/android-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", - "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", - "dev": true, - "optional": true - }, - "@esbuild/android-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", - "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", - "dev": true, - "optional": true - }, "@esbuild/darwin-arm64": { "version": "0.19.5", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", "optional": true }, - "@esbuild/darwin-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", - "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", - "dev": true, - "optional": true - }, - "@esbuild/freebsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", - "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", - "dev": true, - "optional": true - }, - "@esbuild/freebsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", - "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", - "dev": true, - "optional": true - }, - "@esbuild/linux-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", - "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", - "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", - "dev": true, - "optional": true - }, - "@esbuild/linux-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", - "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-loong64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", - "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", - "dev": true, - "optional": true - }, - "@esbuild/linux-mips64el": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", - "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", - "dev": true, - "optional": true - }, - "@esbuild/linux-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", - "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", - "dev": true, - "optional": true - }, - "@esbuild/linux-riscv64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", - "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", - "dev": true, - "optional": true - }, - "@esbuild/linux-s390x": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", - "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", - "dev": true, - "optional": true - }, - "@esbuild/linux-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", - "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", - "dev": true, - "optional": true - }, - "@esbuild/netbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", - "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", - "dev": true, - "optional": true - }, - "@esbuild/openbsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", - "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", - "dev": true, - "optional": true - }, - "@esbuild/openbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", - "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", - "dev": true, - "optional": true - }, - "@esbuild/sunos-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", - "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", - "dev": true, - "optional": true - }, - "@esbuild/win32-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", - "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", - "dev": true, - "optional": true - }, - "@esbuild/win32-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", - "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", - "dev": true, - "optional": true - }, - "@esbuild/win32-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", - "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", - "dev": true, - "optional": true - }, "@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -89430,7 +88465,6 @@ "version": "3.6.3", "resolved": "https://registry.npmjs.org/@types/web-push/-/web-push-3.6.3.tgz", "integrity": "sha512-v3oT4mMJsHeJ/rraliZ+7TbZtr5bQQuxcgD7C3/1q/zkAj29c8RE0F9lVZVu3hiQe5Z9fYcBreV7TLnfKR+4mg==", - "dev": true, "requires": { "@types/node": "*" } @@ -93345,7 +92379,6 @@ "@ceramicnetwork/streamid": "^3.4.1", "@composedb/devtools-node": "^0.7.1", "dids": "^4.0.4", - "esbuild": "^0.23.1", "key-did-provider-ed25519": "^3.0.2", "key-did-resolver": "^3.0.0", "ora": "^8.1.0" @@ -93388,50 +92421,11 @@ } } }, - "@esbuild/darwin-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", - "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", - "dev": true, - "optional": true - }, "cborg": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" }, - "esbuild": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", - "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", - "dev": true, - "requires": { - "@esbuild/aix-ppc64": "0.23.1", - "@esbuild/android-arm": "0.23.1", - "@esbuild/android-arm64": "0.23.1", - "@esbuild/android-x64": "0.23.1", - "@esbuild/darwin-arm64": "0.23.1", - "@esbuild/darwin-x64": "0.23.1", - "@esbuild/freebsd-arm64": "0.23.1", - "@esbuild/freebsd-x64": "0.23.1", - "@esbuild/linux-arm": "0.23.1", - "@esbuild/linux-arm64": "0.23.1", - "@esbuild/linux-ia32": "0.23.1", - "@esbuild/linux-loong64": "0.23.1", - "@esbuild/linux-mips64el": "0.23.1", - "@esbuild/linux-ppc64": "0.23.1", - "@esbuild/linux-riscv64": "0.23.1", - "@esbuild/linux-s390x": "0.23.1", - "@esbuild/linux-x64": "0.23.1", - "@esbuild/netbsd-x64": "0.23.1", - "@esbuild/openbsd-arm64": "0.23.1", - "@esbuild/openbsd-x64": "0.23.1", - "@esbuild/sunos-x64": "0.23.1", - "@esbuild/win32-arm64": "0.23.1", - "@esbuild/win32-ia32": "0.23.1", - "@esbuild/win32-x64": "0.23.1" - } - }, "key-did-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", @@ -94083,280 +93077,7 @@ } }, "comingsoon": { - "version": "file:apps/comingsoon", - "requires": { - "@hookform/resolvers": "^3.6.0", - "@mui/material-nextjs": "^5.16.6", - "@serwist/next": "^9.0.5", - "@tanstack/react-query": "^5.52.2", - "@types/web-push": "^3.6.3", - "@typeschema/yup": "^0.13.3", - "framer-motion": "^11.3.17", - "next-safe-action": "^7.4.2", - "server-only": "^0.0.1", - "serwist": "^9.0.5", - "viem": "^2.20.1", - "wagmi": "^2.12.7" - }, - "dependencies": { - "@hookform/resolvers": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.9.0.tgz", - "integrity": "sha512-bU0Gr4EepJ/EQsH/IwEzYLsT/PEj5C0ynLQ4m+GSHS+xKH4TfSelhluTgOaoc4kA5s7eCsQbM4wvZLzELmWzUg==", - "requires": {} - }, - "@noble/curves": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz", - "integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==", - "requires": { - "@noble/hashes": "1.4.0" - } - }, - "@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==" - }, - "@scure/base": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.8.tgz", - "integrity": "sha512-6CyAclxj3Nb0XT7GHK6K4zK6k2xJm6E4Ft0Ohjt4WgegiFUHEtFb2CGzmPmGBwoIhrLsqNLYfLr04Y1GePrzZg==" - }, - "@scure/bip39": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.4.0.tgz", - "integrity": "sha512-BEEm6p8IueV/ZTfQLp/0vhw4NPnT9oWf5+28nvmeUICjP99f4vr2d+qc7AVGDDtwRep6ifR43Yed9ERVmiITzw==", - "requires": { - "@noble/hashes": "~1.5.0", - "@scure/base": "~1.1.8" - }, - "dependencies": { - "@noble/hashes": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.5.0.tgz", - "integrity": "sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==" - } - } - }, - "@tanstack/query-core": { - "version": "5.54.1", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.54.1.tgz", - "integrity": "sha512-hKS+WRpT5zBFip21pB6Jx1C0hranWQrbv5EJ7qPoiV5MYI3C8rTCqWC9DdBseiPT1JgQWh8Y55YthuYZNiw3Xw==" - }, - "@tanstack/react-query": { - "version": "5.55.0", - "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.55.0.tgz", - "integrity": "sha512-2uYuxEbRQD8TORUiTUacEOwt1e8aoSqUOJFGY5TUrh6rQ3U85zrMS2wvbNhBhXGh6Vj69QDCP2yv8tIY7joo6Q==", - "requires": { - "@tanstack/query-core": "5.54.1" - } - }, - "@wagmi/connectors": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/@wagmi/connectors/-/connectors-5.1.8.tgz", - "integrity": "sha512-LdImInHFogis83/Yhq0vJLracIFUSl9m8961JEWS+lGDPuU2QbVg4Rv2VAfratfRoR8oDuSJNTvIvp9Kyiu5ug==", - "requires": { - "@coinbase/wallet-sdk": "4.0.4", - "@metamask/sdk": "0.27.0", - "@safe-global/safe-apps-provider": "0.18.3", - "@safe-global/safe-apps-sdk": "9.1.0", - "@walletconnect/ethereum-provider": "2.15.2", - "@walletconnect/modal": "2.6.2", - "cbw-sdk": "npm:@coinbase/wallet-sdk@3.9.3" - } - }, - "@wagmi/core": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/@wagmi/core/-/core-2.13.4.tgz", - "integrity": "sha512-J6gfxHYr8SCc/BzEa712LnI+qLFs5K2nBLupwQqQl4WiAlCu8SdcpbZokqiwfCMYhIRMj0+YFEP9qe4ypcexmw==", - "requires": { - "eventemitter3": "5.0.1", - "mipd": "0.0.7", - "zustand": "4.4.1" - } - }, - "@walletconnect/core": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.15.2.tgz", - "integrity": "sha512-u4BGuazSNAQ48QBY7EphanBuBN6EJWyD5MXi83n1wXwfPQWAu0XNvmOjjF+xmMI5TsYH9N6Y78O6HP/VX9EOvg==", - "requires": { - "@walletconnect/heartbeat": "1.2.2", - "@walletconnect/jsonrpc-provider": "1.0.14", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/jsonrpc-ws-connection": "1.0.14", - "@walletconnect/keyvaluestorage": "1.1.1", - "@walletconnect/logger": "2.1.2", - "@walletconnect/relay-api": "1.0.11", - "@walletconnect/relay-auth": "1.0.4", - "@walletconnect/safe-json": "1.0.2", - "@walletconnect/time": "1.0.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0", - "lodash.isequal": "4.5.0", - "uint8arrays": "3.1.0" - } - }, - "@walletconnect/ethereum-provider": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-2.15.2.tgz", - "integrity": "sha512-POH2Wov2cXdASDDyv2bwY9Y2JzkGzGFS4SzltMt1zxKUMTyoJ8xKAgWaxoiJw0pqsLGY7T5msmk9qeKOavQtAA==", - "requires": { - "@walletconnect/jsonrpc-http-connection": "1.0.8", - "@walletconnect/jsonrpc-provider": "1.0.14", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/modal": "2.6.2", - "@walletconnect/sign-client": "2.15.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/universal-provider": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0" - } - }, - "@walletconnect/relay-api": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.11.tgz", - "integrity": "sha512-tLPErkze/HmC9aCmdZOhtVmYZq1wKfWTJtygQHoWtgg722Jd4homo54Cs4ak2RUFUZIGO2RsOpIcWipaua5D5Q==", - "requires": { - "@walletconnect/jsonrpc-types": "^1.0.2" - } - }, - "@walletconnect/sign-client": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.15.2.tgz", - "integrity": "sha512-Yp4/z3IdTMngbjr7Zy7Qi1X6EZDH4nxY91X6K2KpA3MjLW0yPTGalEJgJ4p9WH7fmHRlwvfR4hjwM5eQcLo5Zg==", - "requires": { - "@walletconnect/core": "2.15.2", - "@walletconnect/events": "1.0.1", - "@walletconnect/heartbeat": "1.2.2", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/logger": "2.1.2", - "@walletconnect/time": "1.0.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0" - } - }, - "@walletconnect/types": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.15.2.tgz", - "integrity": "sha512-TGnQZYWZJJ3I8dqgpMPwhO1IRXDuY8/tWPI0nNWJDyTK7b3E9prDGugnPmDDjpTYVoETnUTgW/jQaHNTq4yV7Q==", - "requires": { - "@walletconnect/events": "1.0.1", - "@walletconnect/heartbeat": "1.2.2", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/keyvaluestorage": "1.1.1", - "@walletconnect/logger": "2.1.2", - "events": "3.3.0" - } - }, - "@walletconnect/universal-provider": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.15.2.tgz", - "integrity": "sha512-AWK5nUA4tJ57C8JDPOmqAWf5aF1VXIN4JpkqKekNKMP4+xiBTotKrwj0XD5xvtDUyaqjhRZPvYmUk24z1udrHA==", - "requires": { - "@walletconnect/jsonrpc-http-connection": "1.0.8", - "@walletconnect/jsonrpc-provider": "1.0.14", - "@walletconnect/jsonrpc-types": "1.0.4", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/logger": "2.1.2", - "@walletconnect/sign-client": "2.15.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/utils": "2.15.2", - "events": "3.3.0" - } - }, - "@walletconnect/utils": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.15.2.tgz", - "integrity": "sha512-H+fNH9cHDezdaEiEsO7/3URSIzqhumuacwB/+0PX0sSCoktmU9AfTqA8fJGG43zOPixleBqOymzO6owB1Y7jtQ==", - "requires": { - "@stablelib/chacha20poly1305": "1.0.1", - "@stablelib/hkdf": "1.0.1", - "@stablelib/random": "1.0.2", - "@stablelib/sha256": "1.0.1", - "@stablelib/x25519": "1.0.3", - "@walletconnect/relay-api": "1.0.11", - "@walletconnect/relay-auth": "1.0.4", - "@walletconnect/safe-json": "1.0.2", - "@walletconnect/time": "1.0.2", - "@walletconnect/types": "2.15.2", - "@walletconnect/window-getters": "1.0.1", - "@walletconnect/window-metadata": "1.0.1", - "detect-browser": "5.3.0", - "elliptic": "^6.5.7", - "query-string": "7.1.3", - "uint8arrays": "3.1.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "elliptic": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", - "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "multiformats": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", - "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" - }, - "uint8arrays": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.0.tgz", - "integrity": "sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==", - "requires": { - "multiformats": "^9.4.2" - } - }, - "viem": { - "version": "2.21.2", - "resolved": "https://registry.npmjs.org/viem/-/viem-2.21.2.tgz", - "integrity": "sha512-gTzwKbmyepEDUBKXs3GslTcg5KXfDIgQfHKNxIV9cs7Xout55F8NvHhNeBGBfuw1Ix4Vz8aCMFGYwX5a64CGFg==", - "requires": { - "@adraffy/ens-normalize": "1.10.0", - "@noble/curves": "1.4.0", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.4.0", - "abitype": "1.0.5", - "isows": "1.0.4", - "webauthn-p256": "0.0.5", - "ws": "8.17.1" - } - }, - "wagmi": { - "version": "2.12.8", - "resolved": "https://registry.npmjs.org/wagmi/-/wagmi-2.12.8.tgz", - "integrity": "sha512-+HP3T02La4rIbBWF2mAVX63CykTGMQt77WN1PzZco7MWeUtjYeutwmnNjkDWWE7HFVZHZqNTVFYe3sbtu2LR4A==", - "requires": { - "@wagmi/connectors": "5.1.8", - "@wagmi/core": "2.13.4", - "use-sync-external-store": "1.2.0" - } - }, - "ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "requires": {} - } - } + "version": "file:apps/comingsoon" }, "comma-separated-tokens": { "version": "1.0.8", @@ -94937,7 +93658,9 @@ "version": "file:apps/cron", "requires": { "@types/node-cron": "^3.0.11", - "node-cron": "^3.0.3" + "@types/web-push": "^3.6.3", + "node-cron": "^3.0.3", + "web-push": "^3.6.7" } }, "cron-parser": { @@ -112979,7 +111702,8 @@ "server-only": "^0.0.1", "serwist": "^9.0.5", "viem": "^2.20.1", - "wagmi": "^2.12.7" + "wagmi": "^2.12.7", + "web-push": "^3.6.7" }, "dependencies": { "@hookform/resolvers": { diff --git a/package.json b/package.json index 2bf5127600..85b32d7106 100644 --- a/package.json +++ b/package.json @@ -336,7 +336,6 @@ "uuid": "^8.3.2", "viem": "^2.17.3", "wagmi": "^2.12.4", - "web-push": "^3.6.7", "yup": "^1.4.0", "zksync-web3": "^0.16.0" }, From 3771435fd2aa2d16def0f5d5319e1c1d75f1473d Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 12:10:16 -0600 Subject: [PATCH 11/51] fix dockerfile --- apps/ceramic/Dockerfile | 13 +++++++------ apps/cron/Dockerfile | 13 +++++++------ apps/websockets/Dockerfile | 13 +++++++------ 3 files changed, 21 insertions(+), 18 deletions(-) diff --git a/apps/ceramic/Dockerfile b/apps/ceramic/Dockerfile index d8b54f0666..4f7ae8c884 100644 --- a/apps/ceramic/Dockerfile +++ b/apps/ceramic/Dockerfile @@ -11,12 +11,13 @@ RUN apt install openssl -y WORKDIR /app # Copy dependencies -COPY --parents apps/*/package.json \ - packages/*/package.json \ - node_modules \ - package.json \ - apps/ceramic/node_modules \ - apps/ceramic/package.json \ +COPY --parents @connect-shared/package.json \ + apps/*/package.json \ + packages/*/package.json \ + node_modules \ + package.json \ + apps/ceramic/node_modules \ + apps/ceramic/package.json \ . # Copy compiled code diff --git a/apps/cron/Dockerfile b/apps/cron/Dockerfile index c3181a45dc..4213c66614 100644 --- a/apps/cron/Dockerfile +++ b/apps/cron/Dockerfile @@ -11,12 +11,13 @@ RUN apt install openssl -y WORKDIR /app # Copy dependencies -COPY --parents apps/*/package.json \ - packages/*/package.json \ - node_modules \ - package.json \ - apps/cron/node_modules \ - apps/cron/package.json \ +COPY --parents @connect-shared/package.json \ + apps/*/package.json \ + packages/*/package.json \ + node_modules \ + package.json \ + apps/cron/node_modules \ + apps/cron/package.json \ . # Copy compiled code diff --git a/apps/websockets/Dockerfile b/apps/websockets/Dockerfile index 09e5a93407..f63658494a 100644 --- a/apps/websockets/Dockerfile +++ b/apps/websockets/Dockerfile @@ -11,12 +11,13 @@ RUN apt install openssl -y WORKDIR /app # Copy dependencies -COPY --parents apps/*/package.json \ - packages/*/package.json \ - node_modules \ - package.json \ - apps/websockets/node_modules \ - apps/websockets/package.json \ +COPY --parents @connect-shared/package.json \ + apps/*/package.json \ + packages/*/package.json \ + node_modules \ + package.json \ + apps/websockets/node_modules \ + apps/websockets/package.json \ . # Copy compiled code From 474333f4df2883cfde49306e6e18b765ebbf74c0 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 12:50:39 -0600 Subject: [PATCH 12/51] fix install args --- .github/actions/deploy_production/action.yml | 2 ++ .github/actions/deploy_staging/action.yml | 2 ++ .github/actions/install/action.yml | 8 ++++---- .github/workflows/deploy_ceramic.yml | 4 +++- .github/workflows/deploy_cron.yml | 8 +++++++- .github/workflows/deploy_websockets.yml | 2 +- 6 files changed, 19 insertions(+), 7 deletions(-) diff --git a/.github/actions/deploy_production/action.yml b/.github/actions/deploy_production/action.yml index c32665882d..c59cbb0cdf 100644 --- a/.github/actions/deploy_production/action.yml +++ b/.github/actions/deploy_production/action.yml @@ -23,6 +23,8 @@ runs: # we need to bring back node_modules which includes tsconfig-paths which is used by CDK files - name: Install dependencies uses: ./.github/actions/install + with: + app_name: ${{ inputs.app_name }} - name: Set the docker compose env variables uses: mikefarah/yq@master diff --git a/.github/actions/deploy_staging/action.yml b/.github/actions/deploy_staging/action.yml index 2007544793..96068f69ac 100644 --- a/.github/actions/deploy_staging/action.yml +++ b/.github/actions/deploy_staging/action.yml @@ -30,6 +30,8 @@ runs: # we need to bring back node_modules which includes tsconfig-paths which is used by CDK files - name: Install dependencies uses: ./.github/actions/install + with: + app_name: ${{ inputs.app_name }} - name: Replace env_var with staging settings shell: bash diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index f615f0923e..3d4dafbc7d 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -8,8 +8,8 @@ inputs: commit_core_pkg_upgrade: description: 'Whether commit the update to core package back to branch' required: false - npm_install_args: - description: 'Example: -w app/websockets' + app_name: + description: '' required: false use_github_core_branch: description: | @@ -44,13 +44,13 @@ runs: ./node_modules ./apps/*/node_modules ./packages/*/node_modules - key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }} + key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }}-${{ inputs.app_name || '' }} - name: Install npm dependencies shell: bash if: steps.restore_node_modules.outputs.cache-hit != 'true' # This is a temporary step while we figure out a way to ensure compatibility with lens protocol which currently needs ethers-v5 - run: npm ci --no-audit --no-fund --force ${{ inputs.npm_install_args }} + run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && `--include-workspace-root -w apps/${inputs.app_name}` || '' }} # If installing specific version of core via npmjs - name: Upgrade Core package to version ${{ inputs.core_pkg_version }} diff --git a/.github/workflows/deploy_ceramic.yml b/.github/workflows/deploy_ceramic.yml index 15cea6435e..e9204f5e02 100644 --- a/.github/workflows/deploy_ceramic.yml +++ b/.github/workflows/deploy_ceramic.yml @@ -66,7 +66,7 @@ jobs: - name: Install dependencies uses: ./.github/actions/install with: - npm_install_args: --include-workspace-root -w apps/ceramic + app_name: ceramic core_pkg_version: ${{ inputs.core_pkg_version }} commit_core_pkg_upgrade: true @@ -89,6 +89,8 @@ jobs: - name: Install dependencies uses: ./.github/actions/install + with: + app_name: ceramic - name: Restore app from cache uses: ./.github/actions/build_app diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 9ec61330c8..279b26efec 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -76,7 +76,7 @@ jobs: - name: Install dependencies uses: ./.github/actions/install with: - npm_install_args: --include-workspace-root -w apps/cron + app_name: cron core_pkg_version: ${{ inputs.core_pkg_version }} commit_core_pkg_upgrade: true @@ -114,6 +114,8 @@ jobs: - name: Restore dependencies from cache uses: ./.github/actions/install + with: + app_name: cron - name: Setup test database run: npx dotenv -e .env.test.local -- npm run prisma:reset @@ -149,6 +151,8 @@ jobs: - name: Install dependencies uses: ./.github/actions/install + with: + app_name: cron - name: Restore app from cache uses: ./.github/actions/build_app @@ -182,6 +186,8 @@ jobs: - name: Install dependencies uses: ./.github/actions/install + with: + app_name: cron - name: Calculate Build ID id: get_build_id diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index 5b7fcae185..a0938be664 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -72,7 +72,7 @@ jobs: - name: Install dependencies uses: ./.github/actions/install with: - npm_install_args: --include-workspace-root -w apps/cron + app_name: websockets core_pkg_version: ${{ inputs.core_pkg_version }} commit_core_pkg_upgrade: true From 0bb515bfd56e739bf4466f4c6c6568b40dd7698b Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 12:56:21 -0600 Subject: [PATCH 13/51] fix tpl --- .github/actions/install/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 3d4dafbc7d..906f21359b 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -50,7 +50,7 @@ runs: shell: bash if: steps.restore_node_modules.outputs.cache-hit != 'true' # This is a temporary step while we figure out a way to ensure compatibility with lens protocol which currently needs ethers-v5 - run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && `--include-workspace-root -w apps/${inputs.app_name}` || '' }} + run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && format('--include-workspace-root -w apps/{0}`, inputs.app_name) || '' }} # If installing specific version of core via npmjs - name: Upgrade Core package to version ${{ inputs.core_pkg_version }} From 75d2cd7e9b0efeb0bb0dcef4a8d88f89741561f4 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 12:57:43 -0600 Subject: [PATCH 14/51] .. --- .github/actions/install/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 906f21359b..33f8c82009 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -50,7 +50,7 @@ runs: shell: bash if: steps.restore_node_modules.outputs.cache-hit != 'true' # This is a temporary step while we figure out a way to ensure compatibility with lens protocol which currently needs ethers-v5 - run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && format('--include-workspace-root -w apps/{0}`, inputs.app_name) || '' }} + run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && format('--include-workspace-root -w apps/{0}', inputs.app_name) || '' }} # If installing specific version of core via npmjs - name: Upgrade Core package to version ${{ inputs.core_pkg_version }} From 25adbfff53604d4f56ef388b07172a4d2ba1fbeb Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 13:25:38 -0600 Subject: [PATCH 15/51] fix script --- .github/actions/build/action.yml | 1 + .github/workflows/deploy_ceramic.yml | 2 +- .github/workflows/deploy_cron.yml | 2 +- .github/workflows/deploy_websockets.yml | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml index e51262da9b..1146b3dc75 100644 --- a/.github/actions/build/action.yml +++ b/.github/actions/build/action.yml @@ -1,4 +1,5 @@ name: 'Build application' +description: '' inputs: save_cache: diff --git a/.github/workflows/deploy_ceramic.yml b/.github/workflows/deploy_ceramic.yml index e9204f5e02..c06761d354 100644 --- a/.github/workflows/deploy_ceramic.yml +++ b/.github/workflows/deploy_ceramic.yml @@ -131,7 +131,7 @@ jobs: concurrency: staging-${{ github.ref }} needs: [build, upload-docker] steps: - - uses: ./github/actions/deploy_staging + - uses: ./.github/actions/deploy_staging with: app_name: ceramic diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 279b26efec..de77ea4100 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -230,7 +230,7 @@ jobs: concurrency: staging-${{ github.ref }} needs: [build, upload-docker] steps: - - uses: ./github/actions/deploy_staging + - uses: ./.github/actions/deploy_staging with: app_name: cron diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index a0938be664..adbb2e31a5 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -236,7 +236,7 @@ jobs: concurrency: staging-${{ github.ref }} needs: [build, upload-docker] steps: - - uses: ./github/actions/deploy_staging + - uses: ./.github/actions/deploy_staging with: app_name: websockets From e71acf527a9ada9aab14f2c78cc932bde7c42c3c Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 13:41:43 -0600 Subject: [PATCH 16/51] fix checkout --- .github/workflows/deploy_cron.yml | 9 +++++++++ .github/workflows/deploy_websockets.yml | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index de77ea4100..037364209d 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -217,6 +217,9 @@ jobs: needs: [test, upload-docker, upload-static-assets] runs-on: ubuntu-latest steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: ./.github/actions/deploy_production with: app_name: cron @@ -230,6 +233,9 @@ jobs: concurrency: staging-${{ github.ref }} needs: [build, upload-docker] steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: ./.github/actions/deploy_staging with: app_name: cron @@ -241,6 +247,9 @@ jobs: # pass in all steps so we can check if any failed needs: [test, upload-docker, upload-static-assets, deploy-production] steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error with: diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index adbb2e31a5..0daf5816b6 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -207,6 +207,9 @@ jobs: needs: [test, upload-docker, upload-static-assets] runs-on: ubuntu-latest steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 # - name: Package websockets # id: pkg_websocket # run: | @@ -236,6 +239,9 @@ jobs: concurrency: staging-${{ github.ref }} needs: [build, upload-docker] steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: ./.github/actions/deploy_staging with: app_name: websockets @@ -247,6 +253,9 @@ jobs: # pass in all steps so we can check if any failed needs: [test, upload-docker, upload-static-assets, deploy-production] steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error with: From 42ad90e78607b999559619e020fbd57a00722f5d Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 13:52:21 -0600 Subject: [PATCH 17/51] add to staging cleanup --- .github/workflows/destroy_staging.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/destroy_staging.yml b/.github/workflows/destroy_staging.yml index 6785f242ec..a6836246cf 100644 --- a/.github/workflows/destroy_staging.yml +++ b/.github/workflows/destroy_staging.yml @@ -45,15 +45,21 @@ jobs: - name: destroy the stack on AWS # we need to create a dummy zip file or else cdk throws an error it cannot find the asset run: | - touch stg-webapp-${{ env.STAGE_SUFFIX }}.zip + touch stg-ceramic-${{ env.STAGE_SUFFIX }}.zip + touch stg-cron-${{ env.STAGE_SUFFIX }}.zip + touch stg-farcaster-${{ env.STAGE_SUFFIX }}.zip touch stg-scoutgame-${{ env.STAGE_SUFFIX }}.zip touch stg-sunnyawards-${{ env.STAGE_SUFFIX }}.zip - touch stg-farcaster-${{ env.STAGE_SUFFIX }}.zip + touch stg-webapp-${{ env.STAGE_SUFFIX }}.zip + touch stg-websockets-${{ env.STAGE_SUFFIX }}.zip - npx cdk destroy -c name=stg-webapp-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-ceramic-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-cron-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-farcaster-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-scoutgame-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-sunnyawards-${{ env.STAGE_SUFFIX }} --force - npx cdk destroy -c name=stg-farcaster-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-webapp-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-websockets-${{ env.STAGE_SUFFIX }} --force - name: delete the webapp github deployment uses: strumwolf/delete-deployment-environment@v3 From 2e5ec8db5e43499b58ce5616dbdebe215c387dc3 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 13:54:05 -0600 Subject: [PATCH 18/51] add to destroy staging --- .github/workflows/destroy_staging.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/destroy_staging.yml b/.github/workflows/destroy_staging.yml index a6836246cf..fb734500f9 100644 --- a/.github/workflows/destroy_staging.yml +++ b/.github/workflows/destroy_staging.yml @@ -11,7 +11,7 @@ jobs: clean-up: if: | (github.event.action == 'unlabeled' && startsWith(github.event.label.name, ':rocket: deploy')) || - (github.event.action == 'closed' && (contains(github.event.pull_request.labels.*.name, ':rocket: deploy') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-ceramic') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-scoutgame') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-sunnyawards') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-farcaster'))) + (github.event.action == 'closed' && (contains(github.event.pull_request.labels.*.name, ':rocket: deploy') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-ceramic') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-scoutgame') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-sunnyawards') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-farcaster') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-cron') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-websockets'))) runs-on: ubuntu-latest steps: - name: configure AWS credentials From 6159a9f8206eac8655cc659edf9330b8f063cb5c Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 14:02:34 -0600 Subject: [PATCH 19/51] pass secrest in --- .github/actions/deploy_production/action.yml | 4 ++-- .github/actions/deploy_staging/action.yml | 8 ++++---- .github/actions/notify_error/action.yml | 2 +- .github/workflows/deploy_cron.yml | 10 ++++++++++ 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/.github/actions/deploy_production/action.yml b/.github/actions/deploy_production/action.yml index c59cbb0cdf..81adaddea3 100644 --- a/.github/actions/deploy_production/action.yml +++ b/.github/actions/deploy_production/action.yml @@ -39,8 +39,8 @@ runs: - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v4 with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-access-key-id: ${{ env.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ env.AWS_SECRET_ACCESS_KEY }} aws-region: us-east-1 - name: Package and deploy diff --git a/.github/actions/deploy_staging/action.yml b/.github/actions/deploy_staging/action.yml index 96068f69ac..5c2500155b 100644 --- a/.github/actions/deploy_staging/action.yml +++ b/.github/actions/deploy_staging/action.yml @@ -58,7 +58,7 @@ runs: id: deployment with: step: start - token: ${{ secrets.GITHUB_TOKEN }} + token: ${{ env.GITHUB_TOKEN }} env: ${{ env.STAGE_NAME }} ref: ${{ github.head_ref }} override: true @@ -66,8 +66,8 @@ runs: - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v4 with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-access-key-id: ${{ env.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ env.AWS_SECRET_ACCESS_KEY }} aws-region: us-east-1 - name: Set the docker compose env variables @@ -97,7 +97,7 @@ runs: env: ${{ steps.deployment.outputs.env }} step: finish override: false - token: ${{ secrets.GITHUB_TOKEN }} + token: ${{ env.GITHUB_TOKEN }} status: ${{ job.status }} deployment_id: ${{ steps.deployment.outputs.deployment_id }} env_url: ${{ steps.cdk_deploy.outputs.env_url }} \ No newline at end of file diff --git a/.github/actions/notify_error/action.yml b/.github/actions/notify_error/action.yml index 9ac371c6f0..eada7654c7 100644 --- a/.github/actions/notify_error/action.yml +++ b/.github/actions/notify_error/action.yml @@ -12,7 +12,7 @@ runs: - name: If any of prev jobs failed notify discord uses: sarisia/actions-status-discord@v1 with: - webhook: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} + webhook: ${{ env.DISCORD_WARNINGS_WEBHOOK }} status: 'failure' content: 'Hey <@&1027309276454207519>' title: '${{ inputs.app_name }} deploy workflow failed' diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 037364209d..134f3a042f 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -221,6 +221,9 @@ jobs: with: fetch-depth: 0 - uses: ./.github/actions/deploy_production + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} with: app_name: cron stack: prd-cron @@ -237,6 +240,11 @@ jobs: with: fetch-depth: 0 - uses: ./.github/actions/deploy_staging + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + STAGE_NAME: ${{ env.STAGE_NAME }} with: app_name: cron @@ -252,5 +260,7 @@ jobs: fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error + env: + DISCORD_WARNINGS_WEBHOOK: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} with: app_name: cron From 9292e6ff8f272cbab77cc07df234375fec0bfe70 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 15:02:02 -0600 Subject: [PATCH 20/51] remove env --- .github/workflows/deploy_cron.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 134f3a042f..45d12c4a37 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -244,7 +244,6 @@ jobs: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - STAGE_NAME: ${{ env.STAGE_NAME }} with: app_name: cron From 4e97d50aca75913c15ce8ca49ea15175c8a89d2b Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 18:45:29 -0600 Subject: [PATCH 21/51] ci everything --- .github/actions/install/action.yml | 2 +- docker-compose.yml | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 33f8c82009..e582939013 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -50,7 +50,7 @@ runs: shell: bash if: steps.restore_node_modules.outputs.cache-hit != 'true' # This is a temporary step while we figure out a way to ensure compatibility with lens protocol which currently needs ethers-v5 - run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && format('--include-workspace-root -w apps/{0}', inputs.app_name) || '' }} + run: npm ci --no-audit --no-fund --force # If installing specific version of core via npmjs - name: Upgrade Core package to version ${{ inputs.core_pkg_version }} diff --git a/docker-compose.yml b/docker-compose.yml index f3f543294d..d9468d4b83 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -67,6 +67,15 @@ services: profiles: - stg-webapp + prd-ceramic: + extends: + service: defaults + command: ['sh', '-c', 'node ./apps/ceramic/dist/ceramic-client.js'] + ports: + - '5001:5001' + profiles: + - prd-ceramic + stg-ceramic: extends: service: defaults @@ -184,15 +193,6 @@ services: profiles: - stg-sunnyawards - prd-ceramic: - extends: - service: defaults - command: ['sh', '-c', 'node ./apps/ceramic/dist/ceramic-client.js'] - ports: - - '5001:5001' - profiles: - - prd-ceramic - prd-sockets: extends: service: defaults From ea4f8fd5307e0c1c3dd4c51a7964d455a01af08e Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 19:48:52 -0600 Subject: [PATCH 22/51] rebuild npm --- .github/actions/install/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index e582939013..1e1c0540ef 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -44,7 +44,7 @@ runs: ./node_modules ./apps/*/node_modules ./packages/*/node_modules - key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }}-${{ inputs.app_name || '' }} + key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }} - name: Install npm dependencies shell: bash From 988f896c81668c0f42b4345a656e5b19789d81ed Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 20:07:57 -0600 Subject: [PATCH 23/51] try installing again --- .github/actions/install/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 1e1c0540ef..e582939013 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -44,7 +44,7 @@ runs: ./node_modules ./apps/*/node_modules ./packages/*/node_modules - key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }} + key: nodemodule-cache-${{ hashFiles('package-lock.json') }}-${{ hashFiles('patches/**.patch', 'prisma/schema.prisma') }}-${{ inputs.app_name || '' }} - name: Install npm dependencies shell: bash From 2a3dc8faba6cf5a9384edc4edb8f49337dc4ae79 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 20:20:50 -0600 Subject: [PATCH 24/51] remove use of dotenv --- .github/actions/install/action.yml | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index e582939013..33f8c82009 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -50,7 +50,7 @@ runs: shell: bash if: steps.restore_node_modules.outputs.cache-hit != 'true' # This is a temporary step while we figure out a way to ensure compatibility with lens protocol which currently needs ethers-v5 - run: npm ci --no-audit --no-fund --force + run: npm ci --no-audit --no-fund --force ${{ inputs.app_name && format('--include-workspace-root -w apps/{0}', inputs.app_name) || '' }} # If installing specific version of core via npmjs - name: Upgrade Core package to version ${{ inputs.core_pkg_version }} diff --git a/package.json b/package.json index 85b32d7106..da91561667 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "lint": "npx eslint --ext .tsx,.ts", "cron": "dotenv -e .env.local -- npm start -w apps/cron", "cron:build": "npm run build -w apps/cron", - "cron:staging": "npx dotenv -e .env.staging -- npm run start:prod -w apps/cron", + "cron:staging": "npm run start:prod -w apps/cron", "cron:prod": "npm run start:prod -w apps/cron", "cron:test": "dotenv -e .env.test.local -- npm test -w apps/cron", "sockets": "PORT=3336 dotenv -e .env.local -- npm run start -w apps/websockets", From 9e14f865ad67a0386920af7d99a65474037587ed Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 21:08:27 -0600 Subject: [PATCH 25/51] allow custom health check --- .cdk/StagingStack.ts | 11 ++++++++--- .cdk/bin/app.ts | 2 ++ .github/workflows/deploy_ceramic.yml | 9 +++++++++ 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/.cdk/StagingStack.ts b/.cdk/StagingStack.ts index e7c86bd508..3ab5e1cdb4 100644 --- a/.cdk/StagingStack.ts +++ b/.cdk/StagingStack.ts @@ -6,10 +6,15 @@ import { Construct } from 'constructs'; const domain = 'charmverse.co'; -type CustomOptions = { options?: elasticbeanstalk.CfnEnvironment.OptionSettingProperty[] }; +type CustomOptions = { healthCheck?: string; options?: elasticbeanstalk.CfnEnvironment.OptionSettingProperty[] }; export class StagingStack extends Stack { - constructor(scope: Construct, appName: string, props: StackProps, { options = [] }: CustomOptions = {}) { + constructor( + scope: Construct, + appName: string, + props: StackProps, + { healthCheck = '/api/health', options = [] }: CustomOptions = {} + ) { super(scope, appName, props); const webAppZipArchive = new s3assets.Asset(this, 'WebAppZip', { @@ -135,7 +140,7 @@ export class StagingStack extends Stack { // ALB health check namespace: 'aws:elasticbeanstalk:application', optionName: 'Application Healthcheck URL', - value: '/api/health' + value: healthCheck }, { namespace: 'aws:elasticbeanstalk:application:environment', diff --git a/.cdk/bin/app.ts b/.cdk/bin/app.ts index 465949429f..e56decc8d4 100644 --- a/.cdk/bin/app.ts +++ b/.cdk/bin/app.ts @@ -38,6 +38,8 @@ else if (stackNameParam.startsWith('prd')) { }); } else if (stackNameParam.startsWith('stg-webapp')) { new WebappStagingStack(app, stackNameParam, deployProps); +} else if (stackNameParam.startsWith('stg-ceramic')) { + new StagingStack(app, stackNameParam, deployProps, { healthCheck: '/graphql' }); } else if (stackNameParam.startsWith('stg-')) { new StagingStack(app, stackNameParam, deployProps); } else { diff --git a/.github/workflows/deploy_ceramic.yml b/.github/workflows/deploy_ceramic.yml index c06761d354..901e593803 100644 --- a/.github/workflows/deploy_ceramic.yml +++ b/.github/workflows/deploy_ceramic.yml @@ -118,6 +118,9 @@ jobs: needs: [upload-docker] runs-on: ubuntu-latest steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: ./.github/actions/deploy_production with: app_name: ceramic @@ -131,6 +134,9 @@ jobs: concurrency: staging-${{ github.ref }} needs: [build, upload-docker] steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: ./.github/actions/deploy_staging with: app_name: ceramic @@ -142,6 +148,9 @@ jobs: # pass in all steps so we can check if any failed needs: [upload-docker, deploy-production] steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error with: From a34e218897c4e8b052c0a2c282d584cccbf4aed0 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 22:29:04 -0600 Subject: [PATCH 26/51] fix env for deploy --- .github/workflows/deploy_ceramic.yml | 8 ++++++-- .github/workflows/deploy_cron.yml | 6 ------ .github/workflows/deploy_websockets.yml | 12 ++++++------ 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/.github/workflows/deploy_ceramic.yml b/.github/workflows/deploy_ceramic.yml index 901e593803..5f56df18d9 100644 --- a/.github/workflows/deploy_ceramic.yml +++ b/.github/workflows/deploy_ceramic.yml @@ -138,6 +138,10 @@ jobs: with: fetch-depth: 0 - uses: ./.github/actions/deploy_staging + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: app_name: ceramic @@ -149,9 +153,9 @@ jobs: needs: [upload-docker, deploy-production] steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error + env: + DISCORD_WARNINGS_WEBHOOK: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} with: app_name: ceramic diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index 45d12c4a37..b66c371dfe 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -218,8 +218,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 - uses: ./.github/actions/deploy_production env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} @@ -237,8 +235,6 @@ jobs: needs: [build, upload-docker] steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 - uses: ./.github/actions/deploy_staging env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} @@ -255,8 +251,6 @@ jobs: needs: [test, upload-docker, upload-static-assets, deploy-production] steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error env: diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index 0daf5816b6..7b56d10d29 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -208,8 +208,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 # - name: Package websockets # id: pkg_websocket # run: | @@ -240,9 +238,11 @@ jobs: needs: [build, upload-docker] steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 - uses: ./.github/actions/deploy_staging + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: app_name: websockets @@ -254,9 +254,9 @@ jobs: needs: [test, upload-docker, upload-static-assets, deploy-production] steps: - uses: actions/checkout@v4 - with: - fetch-depth: 0 - name: Notify Discord uses: ./.github/actions/notify_error + env: + DISCORD_WARNINGS_WEBHOOK: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} with: app_name: websockets From 0a2b779e4bbd3980f2af71c412a3033eb2593b90 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sat, 7 Sep 2024 23:29:05 -0600 Subject: [PATCH 27/51] copy generated files --- apps/ceramic/Dockerfile | 2 +- .../generated/composite-definition.json | 0 apps/ceramic/package.json | 2 +- apps/ceramic/src/ceramic-client.ts | 1 - apps/ceramic/src/deploy-composites.ts | 6 +- package-lock.json | 105 +----------------- 6 files changed, 6 insertions(+), 110 deletions(-) rename apps/ceramic/{src => }/generated/composite-definition.json (100%) diff --git a/apps/ceramic/Dockerfile b/apps/ceramic/Dockerfile index 4f7ae8c884..c775a24728 100644 --- a/apps/ceramic/Dockerfile +++ b/apps/ceramic/Dockerfile @@ -21,7 +21,7 @@ COPY --parents @connect-shared/package.json \ . # Copy compiled code -COPY --parents apps/*/dist . +COPY --parents apps/*/dist apps/ceramic/generated . ENV PORT=3000 diff --git a/apps/ceramic/src/generated/composite-definition.json b/apps/ceramic/generated/composite-definition.json similarity index 100% rename from apps/ceramic/src/generated/composite-definition.json rename to apps/ceramic/generated/composite-definition.json diff --git a/apps/ceramic/package.json b/apps/ceramic/package.json index 269538c583..6bc49e970c 100644 --- a/apps/ceramic/package.json +++ b/apps/ceramic/package.json @@ -7,7 +7,7 @@ "ceramic:graphql:stg": "npx dotenv -e .env.staging -- tsx src/ceramic-client.ts" }, "dependencies": { - "@ceramicnetwork/http-client": "^5.16.0", + "@ceramicnetwork/http-client": "5.6", "@ceramicnetwork/streamid": "^3.4.1", "@composedb/devtools-node": "^0.7.1", "dids": "^4.0.4", diff --git a/apps/ceramic/src/ceramic-client.ts b/apps/ceramic/src/ceramic-client.ts index dc8f58a9dd..1dca839e69 100644 --- a/apps/ceramic/src/ceramic-client.ts +++ b/apps/ceramic/src/ceramic-client.ts @@ -1,4 +1,3 @@ -/* eslint-disable import/no-extraneous-dependencies */ import { log } from '@charmverse/core/log'; import { serveEncodedDefinition } from '@composedb/devtools-node'; diff --git a/apps/ceramic/src/deploy-composites.ts b/apps/ceramic/src/deploy-composites.ts index 6d34db4d2c..0e1bfcf344 100644 --- a/apps/ceramic/src/deploy-composites.ts +++ b/apps/ceramic/src/deploy-composites.ts @@ -1,11 +1,9 @@ -/* eslint-disable import/no-extraneous-dependencies */ - import { createComposite, readEncodedComposite, writeEncodedComposite } from '@composedb/devtools-node'; import ora from 'ora'; import { getCeramicClient } from './authenticate'; -const folder = 'apps/ceramic/src'; +const folder = 'apps/ceramic'; function getCompositesFolder(filename: string) { return `${folder}/generated/${filename}`; @@ -22,7 +20,7 @@ export async function writeCompositeJson() { spinner.info('creating composite for runtime usage'); - const compositeGraphQLDefinition = await createComposite(ceramic, `${folder}/credentials.gql`); + const compositeGraphQLDefinition = await createComposite(ceramic, `${folder}/src/credentials.gql`); await writeEncodedComposite(compositeGraphQLDefinition, compositeDefinitionFile); } diff --git a/package-lock.json b/package-lock.json index 2d147d1837..edcd7af183 100644 --- a/package-lock.json +++ b/package-lock.json @@ -362,7 +362,7 @@ }, "apps/ceramic": { "dependencies": { - "@ceramicnetwork/http-client": "^5.16.0", + "@ceramicnetwork/http-client": "5.6", "@ceramicnetwork/streamid": "^3.4.1", "@composedb/devtools-node": "^0.7.1", "dids": "^4.0.4", @@ -371,49 +371,6 @@ "ora": "^8.1.0" } }, - "apps/ceramic/node_modules/@ceramicnetwork/http-client": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/http-client/-/http-client-5.16.0.tgz", - "integrity": "sha512-5oUim/t/nxzSXRJdEAhVtm+1ymCXOg5skVgzgR6BC8wkXE/qIorHBxLyWSo00F0Q7T0Z5HsqmQpexcw/ThIGnA==", - "dependencies": { - "@ceramicnetwork/common": "^5.15.0", - "@ceramicnetwork/stream-caip10-link": "^5.15.0", - "@ceramicnetwork/stream-model": "^4.15.0", - "@ceramicnetwork/stream-model-instance": "^4.16.0", - "@ceramicnetwork/stream-tile": "^5.15.0", - "@ceramicnetwork/streamid": "^5.4.0", - "@scarf/scarf": "^1.1.1", - "query-string": "^7.1.0", - "rxjs": "^7.8.1" - } - }, - "apps/ceramic/node_modules/@ceramicnetwork/http-client/node_modules/@ceramicnetwork/streamid": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", - "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", - "dependencies": { - "@ipld/dag-cbor": "^7.0.0", - "@stablelib/sha256": "^1.0.1", - "cborg": "^4.0.8", - "mapmoize": "^1.2.1", - "multiformats": "~13.1.3", - "uint8arrays": "^5.0.1", - "varint": "^6.0.0" - } - }, - "apps/ceramic/node_modules/@ceramicnetwork/http-client/node_modules/multiformats": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", - "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" - }, - "apps/ceramic/node_modules/cborg": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", - "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==", - "bin": { - "cborg": "lib/bin.js" - } - }, "apps/ceramic/node_modules/key-did-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", @@ -456,14 +413,6 @@ "npm": ">=7.0.0" } }, - "apps/ceramic/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dependencies": { - "tslib": "^2.1.0" - } - }, "apps/comingsoon": { "version": "0.1.0" }, @@ -92375,7 +92324,7 @@ "ceramic": { "version": "file:apps/ceramic", "requires": { - "@ceramicnetwork/http-client": "^5.16.0", + "@ceramicnetwork/http-client": "5.6", "@ceramicnetwork/streamid": "^3.4.1", "@composedb/devtools-node": "^0.7.1", "dids": "^4.0.4", @@ -92384,48 +92333,6 @@ "ora": "^8.1.0" }, "dependencies": { - "@ceramicnetwork/http-client": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/http-client/-/http-client-5.16.0.tgz", - "integrity": "sha512-5oUim/t/nxzSXRJdEAhVtm+1ymCXOg5skVgzgR6BC8wkXE/qIorHBxLyWSo00F0Q7T0Z5HsqmQpexcw/ThIGnA==", - "requires": { - "@ceramicnetwork/common": "^5.15.0", - "@ceramicnetwork/stream-caip10-link": "^5.15.0", - "@ceramicnetwork/stream-model": "^4.15.0", - "@ceramicnetwork/stream-model-instance": "^4.16.0", - "@ceramicnetwork/stream-tile": "^5.15.0", - "@ceramicnetwork/streamid": "^5.4.0", - "@scarf/scarf": "^1.1.1", - "query-string": "^7.1.0", - "rxjs": "^7.8.1" - }, - "dependencies": { - "@ceramicnetwork/streamid": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-5.6.0.tgz", - "integrity": "sha512-at9lTm993U1K3yzZ2cuQUPQ26d+Ws0OlrfVyvnrAgalRmmqjdOew9pH8U51TWN/ZdLwcDwo8duXdipeisaQHdw==", - "requires": { - "@ipld/dag-cbor": "^7.0.0", - "@stablelib/sha256": "^1.0.1", - "cborg": "^4.0.8", - "mapmoize": "^1.2.1", - "multiformats": "~13.1.3", - "uint8arrays": "^5.0.1", - "varint": "^6.0.0" - } - }, - "multiformats": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.3.tgz", - "integrity": "sha512-CZPi9lFZCM/+7oRolWYsvalsyWQGFo+GpdaTmjxXXomC+nP/W1Rnxb9sUgjvmNmRZ5bOPqRAl4nuK+Ydw/4tGw==" - } - } - }, - "cborg": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/cborg/-/cborg-4.2.3.tgz", - "integrity": "sha512-XBFbEJ6WMfn9L7woc2t+EzOxF8vGqddoopKBbrhIvZBt2WIUgSlT8xLmM6Aq1xv8eWt4yOSjwxWjYeuHU3CpJA==" - }, "key-did-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-3.0.0.tgz", @@ -92460,14 +92367,6 @@ "version": "11.0.2", "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" - }, - "rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "requires": { - "tslib": "^2.1.0" - } } } }, From 51627543ab2b4ada08016edb52a13fbf7a8863e1 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 00:07:12 -0600 Subject: [PATCH 28/51] update health check port --- .cdk/StagingStack.ts | 14 +++++++++++--- .cdk/bin/app.ts | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.cdk/StagingStack.ts b/.cdk/StagingStack.ts index 3ab5e1cdb4..24989c39d3 100644 --- a/.cdk/StagingStack.ts +++ b/.cdk/StagingStack.ts @@ -6,14 +6,17 @@ import { Construct } from 'constructs'; const domain = 'charmverse.co'; -type CustomOptions = { healthCheck?: string; options?: elasticbeanstalk.CfnEnvironment.OptionSettingProperty[] }; +type CustomOptions = { + healthCheck?: { port: number; path: string }; + options?: elasticbeanstalk.CfnEnvironment.OptionSettingProperty[]; +}; export class StagingStack extends Stack { constructor( scope: Construct, appName: string, props: StackProps, - { healthCheck = '/api/health', options = [] }: CustomOptions = {} + { healthCheck = { path: '/api/health', port: 80 }, options = [] }: CustomOptions = {} ) { super(scope, appName, props); @@ -140,7 +143,12 @@ export class StagingStack extends Stack { // ALB health check namespace: 'aws:elasticbeanstalk:application', optionName: 'Application Healthcheck URL', - value: healthCheck + value: healthCheck.path + }, + { + namespace: 'aws:elasticbeanstalk:application', + optionName: 'Application Healthcheck Port', + value: healthCheck.port.toString() }, { namespace: 'aws:elasticbeanstalk:application:environment', diff --git a/.cdk/bin/app.ts b/.cdk/bin/app.ts index e56decc8d4..c9a09c74e8 100644 --- a/.cdk/bin/app.ts +++ b/.cdk/bin/app.ts @@ -39,7 +39,7 @@ else if (stackNameParam.startsWith('prd')) { } else if (stackNameParam.startsWith('stg-webapp')) { new WebappStagingStack(app, stackNameParam, deployProps); } else if (stackNameParam.startsWith('stg-ceramic')) { - new StagingStack(app, stackNameParam, deployProps, { healthCheck: '/graphql' }); + new StagingStack(app, stackNameParam, deployProps, { healthCheck: { path: '/graphql', port: 5001 } }); } else if (stackNameParam.startsWith('stg-')) { new StagingStack(app, stackNameParam, deployProps); } else { From 13b13851844a0030d7e90c4977b9dbccf2216a28 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 00:20:52 -0600 Subject: [PATCH 29/51] update prod stack --- .cdk/ProductionStack.ts | 21 ++++++++++++++++----- .cdk/StagingStack.ts | 4 +++- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/.cdk/ProductionStack.ts b/.cdk/ProductionStack.ts index 41441a8d67..51119c01b6 100644 --- a/.cdk/ProductionStack.ts +++ b/.cdk/ProductionStack.ts @@ -4,11 +4,19 @@ import * as s3assets from 'aws-cdk-lib/aws-s3-assets'; import { Construct } from 'constructs'; export type Options = { + healthCheck?: { port: number; path: string }; sslCert: string; }; +const defaultHealthCheck = { path: '/api/health', port: 80 }; + export class ProductionStack extends Stack { - constructor(scope: Construct, appName: string, props: StackProps, options: Options) { + constructor( + scope: Construct, + appName: string, + props: StackProps, + { sslCert, healthCheck = defaultHealthCheck }: Options + ) { super(scope, appName, props); const webAppZipArchive = new s3assets.Asset(this, 'WebAppZip', { @@ -45,8 +53,6 @@ export class ProductionStack extends Stack { Version: 1 }; - const sslCert = 'arn:aws:acm:us-east-1:310849459438:certificate/4618b240-08da-4d91-98c1-ac12362be229'; - // list of all options: https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options-general.html const optionSettingProperties: elasticbeanstalk.CfnEnvironment.OptionSettingProperty[] = [ { @@ -92,7 +98,7 @@ export class ProductionStack extends Stack { { namespace: 'aws:elbv2:listener:443', optionName: 'SSLCertificateArns', - value: options.sslCert + value: sslCert }, { namespace: 'aws:elbv2:listener:443', @@ -134,7 +140,12 @@ export class ProductionStack extends Stack { // ALB health check namespace: 'aws:elasticbeanstalk:application', optionName: 'Application Healthcheck URL', - value: '/api/health' + value: healthCheck.path + }, + { + namespace: 'aws:elasticbeanstalk:application', + optionName: 'Application Healthcheck Port', + value: healthCheck.port.toString() } ]; diff --git a/.cdk/StagingStack.ts b/.cdk/StagingStack.ts index 24989c39d3..0819e44ad2 100644 --- a/.cdk/StagingStack.ts +++ b/.cdk/StagingStack.ts @@ -11,12 +11,14 @@ type CustomOptions = { options?: elasticbeanstalk.CfnEnvironment.OptionSettingProperty[]; }; +const defaultHealthCheck = { path: '/api/health', port: 80 }; + export class StagingStack extends Stack { constructor( scope: Construct, appName: string, props: StackProps, - { healthCheck = { path: '/api/health', port: 80 }, options = [] }: CustomOptions = {} + { healthCheck = defaultHealthCheck, options = [] }: CustomOptions = {} ) { super(scope, appName, props); From e92aba92f931678bb826be9c7a2e988f03c4e3f2 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 00:23:17 -0600 Subject: [PATCH 30/51] remove ssl if one is not specified --- .cdk/ProductionStack.ts | 46 ++++++++++++++++++++++------------------- .cdk/bin/app.ts | 7 +++++++ 2 files changed, 32 insertions(+), 21 deletions(-) diff --git a/.cdk/ProductionStack.ts b/.cdk/ProductionStack.ts index 51119c01b6..31cbb5294b 100644 --- a/.cdk/ProductionStack.ts +++ b/.cdk/ProductionStack.ts @@ -5,7 +5,7 @@ import { Construct } from 'constructs'; export type Options = { healthCheck?: { port: number; path: string }; - sslCert: string; + sslCert?: string; }; const defaultHealthCheck = { path: '/api/health', port: 80 }; @@ -85,26 +85,30 @@ export class ProductionStack extends Stack { optionName: 'ConfigDocument', value: JSON.stringify(healthReportingSystemConfig) }, - { - namespace: 'aws:elbv2:listener:443', - optionName: 'Protocol', - value: 'HTTPS' - }, - { - namespace: 'aws:elbv2:listener:443', - optionName: 'ListenerEnabled', - value: 'true' - }, - { - namespace: 'aws:elbv2:listener:443', - optionName: 'SSLCertificateArns', - value: sslCert - }, - { - namespace: 'aws:elbv2:listener:443', - optionName: 'SSLPolicy', - value: 'ELBSecurityPolicy-TLS13-1-2-2021-06' - }, + ...(sslCert + ? [ + { + namespace: 'aws:elbv2:listener:443', + optionName: 'Protocol', + value: 'HTTPS' + }, + { + namespace: 'aws:elbv2:listener:443', + optionName: 'ListenerEnabled', + value: 'true' + }, + { + namespace: 'aws:elbv2:listener:443', + optionName: 'SSLCertificateArns', + value: sslCert + }, + { + namespace: 'aws:elbv2:listener:443', + optionName: 'SSLPolicy', + value: 'ELBSecurityPolicy-TLS13-1-2-2021-06' + } + ] + : []), { // add security group to access namespace: 'aws:autoscaling:launchconfiguration', diff --git a/.cdk/bin/app.ts b/.cdk/bin/app.ts index c9a09c74e8..e34b1b130b 100644 --- a/.cdk/bin/app.ts +++ b/.cdk/bin/app.ts @@ -30,6 +30,13 @@ else if ( new ProductionStack(app, stackNameParam, deployProps, { sslCert: 'arn:aws:acm:us-east-1:310849459438:certificate/b901f27e-5a33-4dea-b4fb-39308a580423' }); +} else if (stackNameParam === 'prd-ceramic') { + new ProductionStack(app, stackNameParam, deployProps, { + healthCheck: { + path: '/graphql', + port: 5001 + } + }); } // Connect webapp and api production else if (stackNameParam.startsWith('prd')) { From 8b0c77acba985ebeda0c8cf75da7a9ff1a8c5e05 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 00:54:30 -0600 Subject: [PATCH 31/51] fix cofnig --- .cdk/ProductionStack.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.cdk/ProductionStack.ts b/.cdk/ProductionStack.ts index 31cbb5294b..9e77696e70 100644 --- a/.cdk/ProductionStack.ts +++ b/.cdk/ProductionStack.ts @@ -140,16 +140,16 @@ export class ProductionStack extends Stack { optionName: 'InstanceTypes', value: 't3a.small,t3.small' }, + { + namespace: 'aws:elasticbeanstalk:application:environment', + optionName: 'PORT', + value: healthCheck.port?.toString() || '80' + }, { // ALB health check namespace: 'aws:elasticbeanstalk:application', optionName: 'Application Healthcheck URL', value: healthCheck.path - }, - { - namespace: 'aws:elasticbeanstalk:application', - optionName: 'Application Healthcheck Port', - value: healthCheck.port.toString() } ]; From 6f09889abcc88e54995817a551e798ab29966e8a Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 00:55:00 -0600 Subject: [PATCH 32/51] fix staging config --- .cdk/StagingStack.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.cdk/StagingStack.ts b/.cdk/StagingStack.ts index 0819e44ad2..d1ff80f136 100644 --- a/.cdk/StagingStack.ts +++ b/.cdk/StagingStack.ts @@ -141,17 +141,17 @@ export class StagingStack extends Stack { optionName: 'InstanceTypes', value: 't3a.small,t3.small' }, + { + namespace: 'aws:elasticbeanstalk:application:environment', + optionName: 'PORT', + value: healthCheck.port?.toString() || '80' + }, { // ALB health check namespace: 'aws:elasticbeanstalk:application', optionName: 'Application Healthcheck URL', value: healthCheck.path }, - { - namespace: 'aws:elasticbeanstalk:application', - optionName: 'Application Healthcheck Port', - value: healthCheck.port.toString() - }, { namespace: 'aws:elasticbeanstalk:application:environment', optionName: 'DOMAIN', From 283b51b766d341eb2c964bb4ab45fe7936b3fc2f Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 01:14:32 -0600 Subject: [PATCH 33/51] override port of default process health check --- .cdk/StagingStack.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.cdk/StagingStack.ts b/.cdk/StagingStack.ts index d1ff80f136..02acf4073b 100644 --- a/.cdk/StagingStack.ts +++ b/.cdk/StagingStack.ts @@ -142,8 +142,13 @@ export class StagingStack extends Stack { value: 't3a.small,t3.small' }, { - namespace: 'aws:elasticbeanstalk:application:environment', - optionName: 'PORT', + namespace: 'aws:elasticbeanstalk:environment:process:default', + optionName: 'HealthCheckPath', + value: healthCheck.path + }, + { + namespace: 'aws:elasticbeanstalk:environment:process:default', + optionName: 'Port', value: healthCheck.port?.toString() || '80' }, { From 024be090bba7a6f8b69fb0690fad4b89cd026f0b Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 01:33:21 -0600 Subject: [PATCH 34/51] fix staging github destroy --- .github/workflows/destroy_staging.yml | 30 ++++- migration-storybook.log | 164 -------------------------- 2 files changed, 24 insertions(+), 170 deletions(-) delete mode 100644 migration-storybook.log diff --git a/.github/workflows/destroy_staging.yml b/.github/workflows/destroy_staging.yml index fb734500f9..c7c17ce801 100644 --- a/.github/workflows/destroy_staging.yml +++ b/.github/workflows/destroy_staging.yml @@ -61,26 +61,44 @@ jobs: npx cdk destroy -c name=stg-webapp-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-websockets-${{ env.STAGE_SUFFIX }} --force - - name: delete the webapp github deployment + - name: delete ceramic github deployment uses: strumwolf/delete-deployment-environment@v3 with: token: ${{ secrets.GITHUB_TOKEN }} - environment: stg-webapp-${{ env.STAGE_SUFFIX }} + environment: stg-ceramic-${{ env.STAGE_SUFFIX }} + + - name: delete cron github deployment + uses: strumwolf/delete-deployment-environment@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + environment: stg-cron-${{ env.STAGE_SUFFIX }} + + - name: delete farcaster github deployment + uses: strumwolf/delete-deployment-environment@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + environment: stg-farcaster-${{ env.STAGE_SUFFIX }} - - name: delete the scoutgame github deployment + - name: delete scoutgame github deployment uses: strumwolf/delete-deployment-environment@v3 with: token: ${{ secrets.GITHUB_TOKEN }} environment: stg-scoutgame-${{ env.STAGE_SUFFIX }} - - name: delete the sunnyawards github deployment + - name: delete sunnyawards github deployment uses: strumwolf/delete-deployment-environment@v3 with: token: ${{ secrets.GITHUB_TOKEN }} environment: stg-sunnyawards-${{ env.STAGE_SUFFIX }} - - name: delete the farcaster github deployment + - name: delete webapp github deployment uses: strumwolf/delete-deployment-environment@v3 with: token: ${{ secrets.GITHUB_TOKEN }} - environment: stg-farcaster-${{ env.STAGE_SUFFIX }} + environment: stg-webapp-${{ env.STAGE_SUFFIX }} + + - name: delete websockets github deployment + uses: strumwolf/delete-deployment-environment@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + environment: stg-websockets-${{ env.STAGE_SUFFIX }} diff --git a/migration-storybook.log b/migration-storybook.log deleted file mode 100644 index 1b7859d914..0000000000 --- a/migration-storybook.log +++ /dev/null @@ -1,164 +0,0 @@ -🔎 checking possible migrations.. - -🔎 found a 'remove-jest-testing-library' migration: -╭ Automigration detected ──────────────────────────────────────────────────────────────────────────────────────────────────────╮ -│ │ -│ Attention: We've detected that you're using the following packages which are known to be incompatible since Storybook 8: │ -│ │ -│ - @storybook/testing-library │ -│ │ -│ We will uninstall them for you and install @storybook/test instead. │ -│ │ -│ Also, we can help you migrate your stories to use the new package. │ -│ │ -╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -? Do you want to run the 'remove-jest-testing-library' migration on your project? › (Y/n)✔ Do you want to run the 'remove-jest-testing-library' migration on your project? … yes -? Please enter the glob for your stories to migrate to @storybook/test › ./src/**/*.stories.*? Please enter the glob for your stories to migrate to @storybook/test › .? Please enter the glob for your stories to migrate to @storybook/test › ./src/**/*.stories.*? Please enter the glob for your stories to migrate to @storybook/test › .? Please enter the glob for your stories to migrate to @storybook/test › ./? Please enter the glob for your stories to migrate to @storybook/test › ./s? Please enter the glob for your stories to migrate to @storybook/test › ./st? Please enter the glob for your stories to migrate to @storybook/test › ./sto? Please enter the glob for your stories to migrate to @storybook/test › ./stor? Please enter the glob for your stories to migrate to @storybook/test › ./stori? Please enter the glob for your stories to migrate to @storybook/test › ./storie? Please enter the glob for your stories to migrate to @storybook/test › ./stories? Please enter the glob for your stories to migrate to @storybook/test › ./stories/? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.s? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.st? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.sto? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.stor? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.stori? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.storie? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.stories? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.stories.? Please enter the glob for your stories to migrate to @storybook/test › ./stories/*.stories.*✔ Please enter the glob for your stories to migrate to @storybook/test … ./stories/*.stories.* -=> Applying migrate-to-test-package: 0 files -=> No matching files for glob: ./stories/*.stories.* -✅ ran remove-jest-testing-library migration - -🔎 found a 'remove-argtypes-regex' migration: -╭ Manual migration detected ────────────────────────────────────────────────────────────────────────────────────╮ -│ │ -│ Attention: We've detected that you're using argTypesRegex: │ -│ │ -│ .storybook/preview.tsx │ -│ 74 | }, │ -│ 75 | layout: 'fullscreen', // removes padding around the views │ -│ > 76 | actions: { argTypesRegex: '^on[A-Z].*' }, │ -│ | ^^^^^^^^^^^^^ │ -│ 77 | controls: { │ -│ 78 | matchers: { │ -│ 79 | color: /(background|color)$/i, │ -│ │ -│ In Storybook you can write so-called play functions, which are used to render your stories interactively. │ -│ Mocking action args in play functions was done implicitly by analyzing the argTypesRegex. │ -│ │ -│ Since Storybook 8, implicit action args mocking isn't supported anymore. │ -│ │ -│ Use the following command to check for mocked action usages in your play functions: │ -│ npx storybook migrate find-implicit-spies --glob="**/*.stories.@(js|jsx|ts|tsx)" │ -│ │ -│ And follow the documentation to migrate your play functions: │ -│ https://storybook.js.org/docs/8.0/essentials/actions#via-storybooktest-fn-spy-function │ -│ │ -╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ - -? Select continue once you have made the required changes, or quit to exit the migration process › quit / continue✔ Select continue once you have made the required changes, or quit to exit the migration process … quit / continue - -🔎 found a 'webpack5-compiler-setup' migration: -╭ Migration notification ──────────────────────────────────────────────────────────────────────────────────────────────────╮ -│ │ -│ Storybook now detects whether it should use Babel or SWC as a compiler by applying the same logic as Next.js itself: │ -│ │ -│ - If you have a .babelrc (or babel.config.js) file in your project, Storybook will use Babel as the compiler. │ -│ - If you have a .babelrc (or babel.config.js) file in your project and you have set │ -│ experimental.forceSwcTransforms = true in your next.config.js file, │ -│ Storybook will use SWC as the compiler. │ -│ - If you don't have a .babelrc (or babel.config.js) file in your project, Storybook will use SWC as the compiler. │ -│ │ -╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -? Do you want to continue? › (Y/n)✔ Do you want to continue? … yes - -🔎 found a 'upgradeStorybookRelatedDependencies' migration: -╭ Automigration detected ────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ -│ │ -│ You're upgrading to the latest version of Storybook. We recommend upgrading the following packages: │ -│ - @storybook/icons: 1.2.1 => 1.2.9 │ -│ - msw-storybook-addon: 1.10.0 => 2.0.0 │ -│ - eslint-plugin-storybook: 0.6.15 => 0.8.0 │ -│ │ -│ After upgrading, we will run the dedupe command, which could possibly have effects on dependencies that are not Storybook related. │ -│ see: https://docs.npmjs.com/cli/commands/npm-dedupe │ -│ │ -│ Do you want to proceed (upgrade the detected packages)? │ -│ │ -╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -? Do you want to run the 'upgradeStorybookRelatedDependencies' migration on your project? › (y/N)✔ Do you want to run the 'upgradeStorybookRelatedDependencies' migration on your project? … yes -Installing dependencies... - -An error occurred while installing dependencies. -❌ error when running upgradeStorybookRelatedDependencies migration -HandledError: Error: Command failed with exit code 1: npm install - at NPMProxy.installDependencies (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/core-common/dist/index.js:28:4695) - at process.processTicksAndRejections (node:internal/process/task_queues:95:5) - at async Object.run (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:556:541) - ... 2 lines matching cause stack trace ... - at async doUpgrade (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:618:1628) - at async withTelemetry (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/core-server/dist/index.js:28:3579) - at async upgrade (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:618:2097) { - handled: true, - cause: Error: Command failed with exit code 1: npm install - at makeError (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/execa/lib/error.js:60:11) - at handlePromise (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/execa/index.js:118:26) - at process.processTicksAndRejections (node:internal/process/task_queues:95:5) - at async NPMProxy.executeCommand (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/core-common/dist/index.js:35:1755) - at async NPMProxy.runInstall (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/core-common/dist/index.js:35:5071) - at async NPMProxy.installDependencies (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/core-common/dist/index.js:28:4590) - at async Object.run (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:556:541) - at async runFixes (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:604:1794) - at async automigrate (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:602:1629) - at async doUpgrade (/Users/matt/.npm/_npx/bc7e1e37fcb46ffc/node_modules/@storybook/cli/dist/generate.js:618:1628) { - shortMessage: 'Command failed with exit code 1: npm install', - command: 'npm install', - escapedCommand: 'npm install', - exitCode: 1, - signal: undefined, - signalDescription: undefined, - stdout: undefined, - stderr: undefined, - failed: true, - timedOut: false, - isCanceled: false, - killed: false - } -} - - -🔎 found a 'visual-tests-addon' migration: -╭ Automigration detected ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ -│ │ -│ New to Storybook 8: Storybook's Visual Tests addon helps you catch unintentional changes/bugs in your stories. The addon is powered by Chromatic, a cloud-based testing tool developed │ -│ by Storybook's core team. │ -│ │ -│ Learn more: storybook.js.org/docs/writing-tests/visual-testing │ -│ │ -│ Install Visual Tests addon in your project? │ -│ │ -╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -? Do you want to run the 'visual-tests-addon' migration on your project? › (Y/n)✔ Do you want to run the 'visual-tests-addon' migration on your project? … no -WARN An issue occurred while trying to find dependencies metadata using npm. - -╭ Migration check ran with failures ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ -│ │ -│ Successful migrations: │ -│ │ -│ remove-jest-testing-library │ -│ │ -│ Failed migrations: │ -│ │ -│ upgradeStorybookRelatedDependencies: │ -│ Error: Command failed with exit code 1: npm install │ -│ │ -│ You can find the full logs in /Users/matt/charmverse/app.charmverse.io/migration-storybook.log │ -│ │ -│ Manual migrations: │ -│ │ -│ remove-argtypes-regex │ -│ │ -│ Skipped migrations: │ -│ │ -│ visual-tests-addon │ -│ │ -│ ───────────────────────────────────────────────── │ -│ │ -│ If you'd like to run the migrations again, you can do so by running 'npx storybook automigrate' │ -│ │ -│ The automigrations try to migrate common patterns in your project, but might not contain everything needed to migrate to the latest version of Storybook. │ -│ │ -│ Please check the changelog and migration guide for manual migrations and more information: https://storybook.js.org/docs/8.0/migration-guide │ -│ And reach out on Discord if you need help: https://discord.gg/storybook │ -│ │ -╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ - From 95d19d26a2fcbb3bc6d0907df2b55a5b02e4731c Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 02:02:55 -0600 Subject: [PATCH 35/51] fix command --- .github/workflows/destroy_staging.yml | 18 +++++++++++++++++- docker-compose.yml | 4 ++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/.github/workflows/destroy_staging.yml b/.github/workflows/destroy_staging.yml index c7c17ce801..2274c6572c 100644 --- a/.github/workflows/destroy_staging.yml +++ b/.github/workflows/destroy_staging.yml @@ -11,7 +11,7 @@ jobs: clean-up: if: | (github.event.action == 'unlabeled' && startsWith(github.event.label.name, ':rocket: deploy')) || - (github.event.action == 'closed' && (contains(github.event.pull_request.labels.*.name, ':rocket: deploy') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-ceramic') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-scoutgame') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-sunnyawards') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-farcaster') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-cron') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-websockets'))) + (github.event.action == 'closed' && (contains(github.event.pull_request.labels.*.name, ':rocket: deploy') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-ceramic') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-scoutgame') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-sunnyawards') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-comingsoon') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-farcaster') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-cron') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-waitlist') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy-websockets'))) runs-on: ubuntu-latest steps: - name: configure AWS credentials @@ -46,18 +46,22 @@ jobs: # we need to create a dummy zip file or else cdk throws an error it cannot find the asset run: | touch stg-ceramic-${{ env.STAGE_SUFFIX }}.zip + touch stg-comingsoon-${{ env.STAGE_SUFFIX }}.zip touch stg-cron-${{ env.STAGE_SUFFIX }}.zip touch stg-farcaster-${{ env.STAGE_SUFFIX }}.zip touch stg-scoutgame-${{ env.STAGE_SUFFIX }}.zip touch stg-sunnyawards-${{ env.STAGE_SUFFIX }}.zip + touch stg-waitlist-${{ env.STAGE_SUFFIX }}.zip touch stg-webapp-${{ env.STAGE_SUFFIX }}.zip touch stg-websockets-${{ env.STAGE_SUFFIX }}.zip npx cdk destroy -c name=stg-ceramic-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-comingsoon-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-cron-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-farcaster-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-scoutgame-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-sunnyawards-${{ env.STAGE_SUFFIX }} --force + npx cdk destroy -c name=stg-waitlist-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-webapp-${{ env.STAGE_SUFFIX }} --force npx cdk destroy -c name=stg-websockets-${{ env.STAGE_SUFFIX }} --force @@ -67,6 +71,12 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} environment: stg-ceramic-${{ env.STAGE_SUFFIX }} + - name: delete coming soon github deployment + uses: strumwolf/delete-deployment-environment@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + environment: stg-comingsoon-${{ env.STAGE_SUFFIX }} + - name: delete cron github deployment uses: strumwolf/delete-deployment-environment@v3 with: @@ -91,6 +101,12 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} environment: stg-sunnyawards-${{ env.STAGE_SUFFIX }} + - name: delete waitlist github deployment + uses: strumwolf/delete-deployment-environment@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + environment: stg-waitlist-${{ env.STAGE_SUFFIX }} + - name: delete webapp github deployment uses: strumwolf/delete-deployment-environment@v3 with: diff --git a/docker-compose.yml b/docker-compose.yml index d9468d4b83..65a8deed3d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -198,14 +198,14 @@ services: service: defaults ports: - '80:3000' - command: ['sh', '-c', 'node ./dist/initWebsockets.js'] + command: ['sh', '-c', 'node ./apps/websockets/dist/initWebsockets.js'] profiles: - prd-sockets stg-sockets: extends: service: defaults - command: ['sh', '-c', 'node ./dist/initWebsockets.js'] + command: ['sh', '-c', 'node ./apps/websockets/dist/initWebsockets.js'] ports: - '3002:3000' environment: From 24bf7de9905f23b7b75f8c0f12a5d2a7830629e5 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 08:14:37 -0600 Subject: [PATCH 36/51] fix edxports in cv --- .../components/inlinePalette/editorItems/database.tsx | 3 +-- .../components/nestedPage/hooks/useAddNestedPage.ts | 2 +- .../viewSidebar/viewSourceOptions/viewSourceOptions.tsx | 2 +- .../PageLayout/components/Sidebar/NavigationSidebar.tsx | 4 ++-- .../Sidebar/components/PageNavigation/PageNavigation.tsx | 4 ++-- lib/notion/NotionImporter/NotionBlock.ts | 2 +- 6 files changed, 8 insertions(+), 9 deletions(-) diff --git a/components/common/CharmEditor/components/inlinePalette/editorItems/database.tsx b/components/common/CharmEditor/components/inlinePalette/editorItems/database.tsx index b1f6640da8..b757b6dc8a 100644 --- a/components/common/CharmEditor/components/inlinePalette/editorItems/database.tsx +++ b/components/common/CharmEditor/components/inlinePalette/editorItems/database.tsx @@ -1,9 +1,8 @@ import { rafCommandExec } from '@bangle.dev/utils'; import type { PageType } from '@charmverse/core/prisma'; import DatabaseIcon from '@mui/icons-material/TableChart'; -import { TextSelection } from 'prosemirror-state'; -import { addPage } from 'lib/pages'; +import { addPage } from 'lib/pages/addPage'; import { insertNode, isAtBeginningOfLine } from '../../../utils'; import { replaceSuggestionMarkWith } from '../inlinePalette'; diff --git a/components/common/CharmEditor/components/nestedPage/hooks/useAddNestedPage.ts b/components/common/CharmEditor/components/nestedPage/hooks/useAddNestedPage.ts index 1dff4f66c2..9b86dbb9ed 100644 --- a/components/common/CharmEditor/components/nestedPage/hooks/useAddNestedPage.ts +++ b/components/common/CharmEditor/components/nestedPage/hooks/useAddNestedPage.ts @@ -6,7 +6,7 @@ import { useEditorViewContext } from 'components/common/CharmEditor/components/@ import { useCharmRouter } from 'hooks/useCharmRouter'; import { useCurrentSpace } from 'hooks/useCurrentSpace'; import { useUser } from 'hooks/useUser'; -import { addPage } from 'lib/pages'; +import { addPage } from 'lib/pages/addPage'; export function useAddNestedPage(currentPageId?: string) { const { space } = useCurrentSpace(); diff --git a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/viewSourceOptions.tsx b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/viewSourceOptions.tsx index e9d4135b7d..2ae8f0e070 100644 --- a/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/viewSourceOptions.tsx +++ b/components/common/DatabaseEditor/components/viewSidebar/viewSourceOptions/viewSourceOptions.tsx @@ -27,7 +27,7 @@ import { DatabaseSidebarHeader } from '../databaseSidebarHeader'; import { GoogleFormsSource } from './components/GoogleForms/GoogleFormsSource'; import { LinkCharmVerseDatabase } from './components/LinkCharmVerseDatabase'; import { NewCharmVerseDatabase } from './components/NewCharmVerseDatabase'; -import type { SelectedProposalProperties } from './components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; +import type { SelectedProposalProperties } from './components/ProposalSourceProperties/interfaces'; import { ProposalSourcePropertiesDialog } from './components/ProposalSourceProperties/ProposalSourcePropertiesDialog'; import { SourceType } from './components/viewSourceType'; import { useSourceOptions } from './useSourceOptions'; diff --git a/components/common/PageLayout/components/Sidebar/NavigationSidebar.tsx b/components/common/PageLayout/components/Sidebar/NavigationSidebar.tsx index 2561d8620c..f309be5b20 100644 --- a/components/common/PageLayout/components/Sidebar/NavigationSidebar.tsx +++ b/components/common/PageLayout/components/Sidebar/NavigationSidebar.tsx @@ -27,8 +27,8 @@ import type { SettingsPath } from 'hooks/useSettingsDialog'; import { useSettingsDialog } from 'hooks/useSettingsDialog'; import { useSpaceFeatures } from 'hooks/useSpaceFeatures'; import { useUser } from 'hooks/useUser'; -import type { NewPageInput } from 'lib/pages'; -import { addPageAndRedirect } from 'lib/pages'; +import type { NewPageInput } from 'lib/pages/addPage'; +import { addPageAndRedirect } from 'lib/pages/addPage'; import TrashModal from '../TrashModal'; diff --git a/components/common/PageLayout/components/Sidebar/components/PageNavigation/PageNavigation.tsx b/components/common/PageLayout/components/Sidebar/components/PageNavigation/PageNavigation.tsx index 01d0cd5094..4e3d216da4 100644 --- a/components/common/PageLayout/components/Sidebar/components/PageNavigation/PageNavigation.tsx +++ b/components/common/PageLayout/components/Sidebar/components/PageNavigation/PageNavigation.tsx @@ -16,8 +16,8 @@ import { usePages } from 'hooks/usePages'; import { useSnackbar } from 'hooks/useSnackbar'; import { useUser } from 'hooks/useUser'; import { emitSocketMessage } from 'hooks/useWebSocketClient'; -import type { NewPageInput } from 'lib/pages'; -import { addPageAndRedirect } from 'lib/pages'; +import type { NewPageInput } from 'lib/pages/addPage'; +import { addPageAndRedirect } from 'lib/pages/addPage'; import { filterVisiblePages } from 'lib/pages/filterVisiblePages'; import type { PageMeta } from 'lib/pages/interfaces'; import { isTruthy } from 'lib/utils/types'; diff --git a/lib/notion/NotionImporter/NotionBlock.ts b/lib/notion/NotionImporter/NotionBlock.ts index 8e4abf4c16..5e763209b6 100644 --- a/lib/notion/NotionImporter/NotionBlock.ts +++ b/lib/notion/NotionImporter/NotionBlock.ts @@ -1,6 +1,5 @@ import { log } from '@charmverse/core/log'; import type { PageObjectResponse, RichTextItemResponse } from '@notionhq/client/build/src/api-endpoints'; -import { extractAttrsFromUrl as extractNFTAttrs } from '@root/lib/blockchain/utils'; import { isPdfEmbedLink } from '@root/lib/pdf/extractPdfEmbedLink'; import type { TextContent, @@ -21,6 +20,7 @@ import { MAX_EMBED_WIDTH, MIN_EMBED_HEIGHT } from 'components/common/CharmEditor/components/iframe/config'; +import { extractAttrsFromUrl as extractNFTAttrs } from 'components/common/CharmEditor/components/nft/utils'; import { extractTweetAttrs } from 'components/common/CharmEditor/components/tweet/tweetSpec'; import { extractYoutubeLinkType } from 'components/common/CharmEditor/components/video/utils'; import { VIDEO_ASPECT_RATIO } from 'components/common/CharmEditor/components/video/videoSpec'; From 955c11a976767dcbe60a85d324270b00c4932f66 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 08:17:33 -0600 Subject: [PATCH 37/51] update health check --- .cdk/WebappStagingStack.ts | 2 +- apps/cron/src/__tests__/healthCheck.spec.ts | 2 +- apps/cron/src/healthCheck/app.ts | 2 +- apps/websockets/src/__tests__/healthCheck.spec.ts | 2 +- apps/websockets/src/app/datadog.ts | 2 +- apps/websockets/src/healthCheck/app.ts | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.cdk/WebappStagingStack.ts b/.cdk/WebappStagingStack.ts index 6c3e115030..8ce236d15e 100644 --- a/.cdk/WebappStagingStack.ts +++ b/.cdk/WebappStagingStack.ts @@ -9,7 +9,7 @@ export class WebappStagingStack extends StagingStack { { namespace: 'aws:elasticbeanstalk:environment:process:websocket', optionName: 'HealthCheckPath', - value: '/health_check' + value: '/api/health' }, { namespace: 'aws:elasticbeanstalk:environment:process:websocket', diff --git a/apps/cron/src/__tests__/healthCheck.spec.ts b/apps/cron/src/__tests__/healthCheck.spec.ts index f80418d5f6..9e16467575 100644 --- a/apps/cron/src/__tests__/healthCheck.spec.ts +++ b/apps/cron/src/__tests__/healthCheck.spec.ts @@ -16,6 +16,6 @@ afterAll((done) => { describe('health check', () => { test('should return 200', async () => { - await request(server).get(`/health_check`).expect(200); + await request(server).get(`/api/health`).expect(200); }); }); diff --git a/apps/cron/src/healthCheck/app.ts b/apps/cron/src/healthCheck/app.ts index 4e869e0751..eef11d2a59 100644 --- a/apps/cron/src/healthCheck/app.ts +++ b/apps/cron/src/healthCheck/app.ts @@ -7,7 +7,7 @@ const app = new Koa(); const router = new Router(); router.get('/', routes.healthCheck); -router.get('/health_check', routes.healthCheck); +router.get('/api/health', routes.healthCheck); app.use(routes.errorHandler).use(router.routes()).use(router.allowedMethods()); diff --git a/apps/websockets/src/__tests__/healthCheck.spec.ts b/apps/websockets/src/__tests__/healthCheck.spec.ts index f80418d5f6..9e16467575 100644 --- a/apps/websockets/src/__tests__/healthCheck.spec.ts +++ b/apps/websockets/src/__tests__/healthCheck.spec.ts @@ -16,6 +16,6 @@ afterAll((done) => { describe('health check', () => { test('should return 200', async () => { - await request(server).get(`/health_check`).expect(200); + await request(server).get(`/api/health`).expect(200); }); }); diff --git a/apps/websockets/src/app/datadog.ts b/apps/websockets/src/app/datadog.ts index be13acc4e6..4d69b12ac6 100644 --- a/apps/websockets/src/app/datadog.ts +++ b/apps/websockets/src/app/datadog.ts @@ -7,6 +7,6 @@ if (process.env.NODE_ENV === 'production') { service: process.env.SERVICE_NAME }); tracer.use('koa', { - blocklist: ['/health_check'] + blocklist: ['/api/health'] }); } diff --git a/apps/websockets/src/healthCheck/app.ts b/apps/websockets/src/healthCheck/app.ts index 4e869e0751..eef11d2a59 100644 --- a/apps/websockets/src/healthCheck/app.ts +++ b/apps/websockets/src/healthCheck/app.ts @@ -7,7 +7,7 @@ const app = new Koa(); const router = new Router(); router.get('/', routes.healthCheck); -router.get('/health_check', routes.healthCheck); +router.get('/api/health', routes.healthCheck); app.use(routes.errorHandler).use(router.routes()).use(router.allowedMethods()); From 6c5cad9a3c29d97ea1f2cd4835ac54fcae6e12ee Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 09:04:01 -0600 Subject: [PATCH 38/51] fix health check --- .cdk/bin/app.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.cdk/bin/app.ts b/.cdk/bin/app.ts index e34b1b130b..f25a64c97e 100644 --- a/.cdk/bin/app.ts +++ b/.cdk/bin/app.ts @@ -45,6 +45,8 @@ else if (stackNameParam.startsWith('prd')) { }); } else if (stackNameParam.startsWith('stg-webapp')) { new WebappStagingStack(app, stackNameParam, deployProps); +} else if (stackNameParam.startsWith('stg-websockets')) { + new StagingStack(app, stackNameParam, deployProps, { healthCheck: { path: '/api/health', port: 3002 } }); } else if (stackNameParam.startsWith('stg-ceramic')) { new StagingStack(app, stackNameParam, deployProps, { healthCheck: { path: '/graphql', port: 5001 } }); } else if (stackNameParam.startsWith('stg-')) { From 58be596c3a00d2de08950a20e91dfa20f569cf67 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 13:40:49 -0600 Subject: [PATCH 39/51] update ports on health check --- .cdk/ProductionStack.ts | 14 ++++++++++++-- .cdk/StagingStack.ts | 5 +++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/.cdk/ProductionStack.ts b/.cdk/ProductionStack.ts index 9e77696e70..a11b993159 100644 --- a/.cdk/ProductionStack.ts +++ b/.cdk/ProductionStack.ts @@ -141,8 +141,18 @@ export class ProductionStack extends Stack { value: 't3a.small,t3.small' }, { - namespace: 'aws:elasticbeanstalk:application:environment', - optionName: 'PORT', + namespace: 'aws:elasticbeanstalk:environment:process:default', + optionName: 'HealthCheckPath', + value: healthCheck.path + }, + { + namespace: 'aws:elasticbeanstalk:environment:process:default', + optionName: 'MatcherHTTPCode', + value: '200' + }, + { + namespace: 'aws:elasticbeanstalk:environment:process:default', + optionName: 'Port', value: healthCheck.port?.toString() || '80' }, { diff --git a/.cdk/StagingStack.ts b/.cdk/StagingStack.ts index 02acf4073b..ec7f34e165 100644 --- a/.cdk/StagingStack.ts +++ b/.cdk/StagingStack.ts @@ -146,6 +146,11 @@ export class StagingStack extends Stack { optionName: 'HealthCheckPath', value: healthCheck.path }, + { + namespace: 'aws:elasticbeanstalk:environment:process:default', + optionName: 'MatcherHTTPCode', + value: '200' + }, { namespace: 'aws:elasticbeanstalk:environment:process:default', optionName: 'Port', From 662852df20218069ea60a2903bf2d3be4c3131c2 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 14:32:58 -0600 Subject: [PATCH 40/51] update staging --- .github/workflows/deploy_staging.yml | 60 +++---------------------- .github/workflows/deploy_websockets.yml | 2 +- 2 files changed, 7 insertions(+), 55 deletions(-) diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_staging.yml index f2f4e4ee87..1765611635 100644 --- a/.github/workflows/deploy_staging.yml +++ b/.github/workflows/deploy_staging.yml @@ -41,6 +41,11 @@ jobs: # export the stage name so that it can be used in other steps echo "STAGE_NAME=$stage_name" >> $GITHUB_ENV + # calculate web sockets staging domain name + websockets_full_stage_name="stg-webapp-${{ github.event.number }}-${{ env.GITHUB_HEAD_REF_SLUG }}" + websockets_stage_name=`echo "$full_stage_name" | sed -E -e 's/[^a-zA-Z0-9-]+//g' -e 's/(.{40}).*/\1/' -e 's/^-/0/' -e 's/-$/0/'` + echo "WEBSOCKETS_STAGE_NAME=$websockets_stage_name" >> $GITHUB_ENV + - name: Install dependencies uses: ./.github/actions/install @@ -79,7 +84,7 @@ jobs: rm .ebextensions/*/06_cloudwatch_alarm.config # substituting the websocket domain name - sed -i 's/REACT_APP_WEBSOCKETS_HOST=.*/REACT_APP_WEBSOCKETS_HOST=https:\/\/${{env.STAGE_NAME}}.charmverse.co:3002/g' .ebstalk.apps.env/webapp.env + sed -i 's/REACT_APP_WEBSOCKETS_HOST=.*/REACT_APP_WEBSOCKETS_HOST=https:\/\/${{env.WEBSOCKETS_STAGE_NAME}}.charmverse.co:3002/g' .ebstalk.apps.env/webapp.env - name: Set the docker compose env variables uses: mikefarah/yq@master @@ -91,16 +96,6 @@ jobs: .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") ' .ebextensions/webapp/00_env_vars.config - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/ceramic/00_env_vars.config - - yq -I 4 -i ' - with(.option_settings."aws:elasticbeanstalk:application:environment"; - .IMGTAG = "${{ github.run_id }}-${{ env.GITHUB_SHA_SHORT }}") - ' .ebextensions/websockets/00_env_vars.config - - name: Run specific version of permission api if SELECTED_PERMISSION_API_TAG exists if: env.SELECTED_PERMISSION_API_TAG && env.GITHUB_HEAD_REF_SLUG == env.SELECTED_PERMISSION_API_TAG uses: mikefarah/yq@master @@ -170,49 +165,6 @@ jobs: deployment_id: ${{ steps.deployment.outputs.deployment_id }} env_url: ${{ steps.cdk_deploy.outputs.env_url }} - # update websockets in staging - - - name: Update and Package ceramic server - run: | - rm -r .ebextensions && mv .ebextensions_tmp/ceramic .ebextensions - cat files_to_zip.txt | zip --symlinks -r@ deploy_ceramic.zip - - - name: Deploy ceramic to Beanstalk - if: > - (github.event.action == 'labeled' && github.event.label.name == 'deploy-ceramic') || - (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, 'deploy-ceramic')) - uses: einaregilsson/beanstalk-deploy@v22 - with: - aws_access_key: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws_secret_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - application_name: stg-charmverse-ceramic-link - environment_name: stg-charmverse-ceramic-link - version_label: ${{ github.sha }} - region: us-east-1 - deployment_package: deploy_ceramic.zip - use_existing_version_if_available: true # allows triggering re-deploys with same version - wait_for_deployment: false # set to false to save sweet Github minutes - - # update websockets in staging - - - name: Update and Package websockets - run: | - rm -r .ebextensions && mv .ebextensions_tmp/websockets .ebextensions - cat files_to_zip.txt | zip --symlinks -r@ deploy_websockets.zip - - - name: Deploy websockets to Beanstalk - uses: einaregilsson/beanstalk-deploy@v22 - with: - aws_access_key: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws_secret_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - application_name: stg-charmverse-websockets - environment_name: stg-charmverse-websockets - version_label: ${{ github.sha }} - region: us-east-1 - deployment_package: deploy_websockets.zip - use_existing_version_if_available: true # allows triggering re-deploys with same version - wait_for_deployment: false # set to false to save sweet Github minutes - - name: Use datadog ci package to upload js maps env: DATADOG_API_KEY: ${{ secrets.DATADOG_API_KEY }} diff --git a/.github/workflows/deploy_websockets.yml b/.github/workflows/deploy_websockets.yml index 7b56d10d29..10c04b9600 100644 --- a/.github/workflows/deploy_websockets.yml +++ b/.github/workflows/deploy_websockets.yml @@ -66,7 +66,7 @@ jobs: # source https://github.com/orgs/community/discussions/28474 run: | echo "commit_message=$(git show -s --format=%s)" >> "$GITHUB_OUTPUT" - echo "deploy_staging=${{(github.event.action == 'labeled' && github.event.label.name == ':rocket: deploy-websockets') || (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, ':rocket: deploy-websockets'))}}" >> $GITHUB_OUTPUT + echo "deploy_staging=${{(github.event.action == 'labeled' && (github.event.label.name == ':rocket: deploy-websockets' || github.event.label.name == ':rocket: deploy')) || (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, ':rocket: deploy-websockets') || contains(github.event.pull_request.labels.*.name, ':rocket: deploy'))}}" >> $GITHUB_OUTPUT echo "skip_tests=${{ contains(env.commit_message, 'skip-tests') }}" >> $GITHUB_OUTPUT - name: Install dependencies From 238e89c91215da4004f0f27721233bff9b872b9e Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 14:58:59 -0600 Subject: [PATCH 41/51] remove cron tests --- .github/workflows/deploy_staging.yml | 2 +- .github/workflows/test_and_deploy.yml | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_staging.yml index 1765611635..98b659cabc 100644 --- a/.github/workflows/deploy_staging.yml +++ b/.github/workflows/deploy_staging.yml @@ -1,4 +1,4 @@ -name: 'Deploy to staging' +name: 'Deploy Webapp to staging' on: pull_request: diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index fcc07708bc..bc7bae66a1 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -1,7 +1,7 @@ # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions -name: CI +name: Webapp CI on: push: @@ -108,8 +108,6 @@ jobs: fail-fast: false matrix: include: - - test_name: 'Cron worker tests' - test_command: 'npm run test:ci -- --config="./background/jest.config.ts"' - test_name: 'Tests for tests' test_command: 'npm run test:ci -- --config="./testing/jest.config.ts"' - test_name: 'Library tests #1' From 6c0507b7ae099bad43f6e91b65e499549ddbec8e Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 15:00:07 -0600 Subject: [PATCH 42/51] build scokets --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index da91561667..ac8ee4a287 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "getcontext": "npx tsx scripts/prompts/traverseAndTokenise.ts", "ceramic": "npm start -w apps/ceramic", "ceramic:build": "npm run build -w apps/ceramic", - "build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build", + "build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build && npm run sockets:build", "build:analyze": "cross-env ANALYZE=true next build --experimental-debug-memory-usage", "esbuild": "tsx esbuild.config.ts", "verifydeps": "npx depcruise --ts-config ./tsconfig.json --config .dependency-cruiser.js -- ./", From c062ebbb19e186bb3b0abb1b65a2e1d1d5799f04 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 21:13:14 -0600 Subject: [PATCH 43/51] try pointing to other socket env --- .github/workflows/deploy_staging.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_staging.yml index 98b659cabc..ab1c7608bd 100644 --- a/.github/workflows/deploy_staging.yml +++ b/.github/workflows/deploy_staging.yml @@ -43,7 +43,7 @@ jobs: # calculate web sockets staging domain name websockets_full_stage_name="stg-webapp-${{ github.event.number }}-${{ env.GITHUB_HEAD_REF_SLUG }}" - websockets_stage_name=`echo "$full_stage_name" | sed -E -e 's/[^a-zA-Z0-9-]+//g' -e 's/(.{40}).*/\1/' -e 's/^-/0/' -e 's/-$/0/'` + websockets_stage_name=`echo "$websockets_full_stage_name" | sed -E -e 's/[^a-zA-Z0-9-]+//g' -e 's/(.{40}).*/\1/' -e 's/^-/0/' -e 's/-$/0/'` echo "WEBSOCKETS_STAGE_NAME=$websockets_stage_name" >> $GITHUB_ENV - name: Install dependencies From 26fb99d3a34ec027c628143e845ecc74a5f574cc Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 22:00:15 -0600 Subject: [PATCH 44/51] remove sockets from staging --- .cdk/WebappStagingStack.ts | 74 ++++++++++++++-------------- .github/workflows/deploy_staging.yml | 2 +- docker-compose.yml | 2 +- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/.cdk/WebappStagingStack.ts b/.cdk/WebappStagingStack.ts index 8ce236d15e..2901c9e235 100644 --- a/.cdk/WebappStagingStack.ts +++ b/.cdk/WebappStagingStack.ts @@ -5,43 +5,43 @@ import { Construct } from 'constructs'; export class WebappStagingStack extends StagingStack { constructor(scope: Construct, id: string, props: StackProps) { super(scope, id, props, { - options: [ - { - namespace: 'aws:elasticbeanstalk:environment:process:websocket', - optionName: 'HealthCheckPath', - value: '/api/health' - }, - { - namespace: 'aws:elasticbeanstalk:environment:process:websocket', - optionName: 'Port', - value: '3002' - }, - { - namespace: 'aws:elasticbeanstalk:environment:process:websocket', - optionName: 'Protocol', - value: 'HTTP' - }, - { - namespace: 'aws:elbv2:listener:3002', - optionName: 'ListenerEnabled', - value: 'true' - }, - { - namespace: 'aws:elbv2:listener:3002', - optionName: 'Protocol', - value: 'HTTPS' - }, - { - namespace: 'aws:elbv2:listener:3002', - optionName: 'SSLCertificateArns', - value: 'arn:aws:acm:us-east-1:310849459438:certificate/bfea3120-a440-4667-80fd-d285146f2339' - }, - { - namespace: 'aws:elbv2:listener:3002', - optionName: 'DefaultProcess', - value: 'websocket' - } - ] + // options: [ + // { + // namespace: 'aws:elasticbeanstalk:environment:process:websocket', + // optionName: 'HealthCheckPath', + // value: '/api/health' + // }, + // { + // namespace: 'aws:elasticbeanstalk:environment:process:websocket', + // optionName: 'Port', + // value: '3002' + // }, + // { + // namespace: 'aws:elasticbeanstalk:environment:process:websocket', + // optionName: 'Protocol', + // value: 'HTTP' + // }, + // { + // namespace: 'aws:elbv2:listener:3002', + // optionName: 'ListenerEnabled', + // value: 'true' + // }, + // { + // namespace: 'aws:elbv2:listener:3002', + // optionName: 'Protocol', + // value: 'HTTPS' + // }, + // { + // namespace: 'aws:elbv2:listener:3002', + // optionName: 'SSLCertificateArns', + // value: 'arn:aws:acm:us-east-1:310849459438:certificate/bfea3120-a440-4667-80fd-d285146f2339' + // }, + // { + // namespace: 'aws:elbv2:listener:3002', + // optionName: 'DefaultProcess', + // value: 'websocket' + // } + // ] }); } } diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_staging.yml index ab1c7608bd..96e5dba702 100644 --- a/.github/workflows/deploy_staging.yml +++ b/.github/workflows/deploy_staging.yml @@ -42,7 +42,7 @@ jobs: echo "STAGE_NAME=$stage_name" >> $GITHUB_ENV # calculate web sockets staging domain name - websockets_full_stage_name="stg-webapp-${{ github.event.number }}-${{ env.GITHUB_HEAD_REF_SLUG }}" + websockets_full_stage_name="stg-websockets-${{ github.event.number }}-${{ env.GITHUB_HEAD_REF_SLUG }}" websockets_stage_name=`echo "$websockets_full_stage_name" | sed -E -e 's/[^a-zA-Z0-9-]+//g' -e 's/(.{40}).*/\1/' -e 's/^-/0/' -e 's/-$/0/'` echo "WEBSOCKETS_STAGE_NAME=$websockets_stage_name" >> $GITHUB_ENV diff --git a/docker-compose.yml b/docker-compose.yml index 65a8deed3d..41b2c9f323 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -212,7 +212,7 @@ services: - REACT_APP_APP_ENV=staging - PERMISSIONS_API_URL=http://permissions-api:3001 profiles: - - stg-sockets + #- stg-sockets - stg-webapp prd-farcaster: From 5dcc56d01330ebfca92b6a5e37ab5767984d7e2f Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 23:28:19 -0600 Subject: [PATCH 45/51] dont use special port --- .github/workflows/deploy_staging.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_staging.yml index 96e5dba702..1c17928c03 100644 --- a/.github/workflows/deploy_staging.yml +++ b/.github/workflows/deploy_staging.yml @@ -84,7 +84,7 @@ jobs: rm .ebextensions/*/06_cloudwatch_alarm.config # substituting the websocket domain name - sed -i 's/REACT_APP_WEBSOCKETS_HOST=.*/REACT_APP_WEBSOCKETS_HOST=https:\/\/${{env.WEBSOCKETS_STAGE_NAME}}.charmverse.co:3002/g' .ebstalk.apps.env/webapp.env + sed -i 's/REACT_APP_WEBSOCKETS_HOST=.*/REACT_APP_WEBSOCKETS_HOST=https:\/\/${{env.WEBSOCKETS_STAGE_NAME}}.charmverse.co/g' .ebstalk.apps.env/webapp.env - name: Set the docker compose env variables uses: mikefarah/yq@master From ac52dca810fba31d691d827df0a618f73339527d Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 23:45:54 -0600 Subject: [PATCH 46/51] cleanup webapp build --- .github/actions/build/action.yml | 18 ++---------------- .github/workflows/test_and_deploy.yml | 2 -- .github/workflows/test_new_core_pkg.yml | 1 - package.json | 6 +++--- 4 files changed, 5 insertions(+), 22 deletions(-) diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml index 1146b3dc75..a927eb6cb6 100644 --- a/.github/actions/build/action.yml +++ b/.github/actions/build/action.yml @@ -2,9 +2,6 @@ name: 'Build application' description: '' inputs: - save_cache: - description: 'Whether to save the cache' - required: false REACT_APP_APP_ENV: description: '...' required: false @@ -20,7 +17,7 @@ runs: - name: Restore build id: restore_build - uses: actions/cache/restore@v4 + uses: actions/cache@v4 with: path: | .next @@ -33,15 +30,4 @@ runs: - name: Build shell: bash if: steps.restore_build.outputs.cache-hit != 'true' - run: npm run build - - # building cache key takes almost a minute, so we only run this if we are saving the cache - - name: Cache build - if: inputs.save_cache - uses: actions/cache/save@v4 - with: - path: | - .next - .env.test.local - dist - key: webapp-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('**/*.ts', '**/*.tsx', '**/*.gql', '**/*.scss', '!node_modules', '!.next', '!dist', '!apps') }} + run: npm run webapp:build diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index bc7bae66a1..c63313e6ec 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -49,8 +49,6 @@ jobs: - name: Build app uses: ./.github/actions/build - with: - save_cache: true # source https://github.com/orgs/community/discussions/28474 - name: Print head git commit message diff --git a/.github/workflows/test_new_core_pkg.yml b/.github/workflows/test_new_core_pkg.yml index 5647852cfa..d9fea3a6f8 100644 --- a/.github/workflows/test_new_core_pkg.yml +++ b/.github/workflows/test_new_core_pkg.yml @@ -28,7 +28,6 @@ jobs: - name: Build app uses: ./.github/actions/build with: - save_cache: true REACT_APP_APP_ENV: 'test' integration-test: diff --git a/package.json b/package.json index ac8ee4a287..300646108b 100644 --- a/package.json +++ b/package.json @@ -14,9 +14,9 @@ "getcontext": "npx tsx scripts/prompts/traverseAndTokenise.ts", "ceramic": "npm start -w apps/ceramic", "ceramic:build": "npm run build -w apps/ceramic", - "build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build && npm run sockets:build", - "build:analyze": "cross-env ANALYZE=true next build --experimental-debug-memory-usage", - "esbuild": "tsx esbuild.config.ts", + "build": "npm run webapp:build", + "webapp:build": "NODE_OPTIONS=\"--max_old_space_size=4096\" npx next build", + "webapp:build:analyze": "cross-env ANALYZE=true next build --experimental-debug-memory-usage", "verifydeps": "npx depcruise --ts-config ./tsconfig.json --config .dependency-cruiser.js -- ./", "postdeploy:staging": "node --eval \"console.log('env_url=' + require('./cdk.out.json')['stg-charmverse-${STAGE}'].DeploymentUrl)\" >> $GITHUB_OUTPUT", "destroy:staging": "npx cdk destroy \"stg-charmverse-${STAGE}\" --force", From 2b5bb01b320dd643fa3dedfec274ced549486ed5 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Sun, 8 Sep 2024 23:49:40 -0600 Subject: [PATCH 47/51] fix socket staging --- docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 41b2c9f323..5192896f67 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -212,8 +212,8 @@ services: - REACT_APP_APP_ENV=staging - PERMISSIONS_API_URL=http://permissions-api:3001 profiles: - #- stg-sockets - - stg-webapp + - stg-sockets + #- stg-webapp prd-farcaster: extends: From 9d2cc3cbfa56da56093494bb608d28986e9e0380 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Mon, 9 Sep 2024 09:46:31 -0600 Subject: [PATCH 48/51] .. --- docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-compose.yml b/docker-compose.yml index 5192896f67..357f44aa0f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -267,6 +267,7 @@ services: - HOST=permissions-api profiles: - stg-webapp + - stg-websockets localpostgres: image: postgres From 9a5eef009179c3c2381b254f6682410e209f1c55 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Mon, 9 Sep 2024 10:19:47 -0600 Subject: [PATCH 49/51] fix eslint --- .eslintrc.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.eslintrc.json b/.eslintrc.json index 743d23e8be..fc82b747b3 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -6,7 +6,7 @@ "node": true }, "settings": { - "import/internal-regex": "^(adapters|background|charmClient|components|config|context|db|hooks|lib|models|pages|public|seedData|testing|theme)", + "import/internal-regex": "^(adapters|charmClient|components|config|context|db|hooks|lib|models|pages|public|seedData|testing|theme)", "import/resolver": { "node": { "moduleDirectory": ["node_modules"] From b3ebbcf66446bfb027dd300a30bc4004c1961287 Mon Sep 17 00:00:00 2001 From: mattcasey Date: Mon, 9 Sep 2024 11:23:24 -0600 Subject: [PATCH 50/51] fix e2e for webapp --- .github/actions/build/action.yml | 5 ++++- .github/workflows/deploy_cron.yml | 2 +- .github/workflows/deploy_scoutgame.yml | 19 ++++++------------- ...{test_and_deploy.yml => deploy_webapp.yml} | 0 ..._staging.yml => deploy_webapp_staging.yml} | 0 5 files changed, 11 insertions(+), 15 deletions(-) rename .github/workflows/{test_and_deploy.yml => deploy_webapp.yml} (100%) rename .github/workflows/{deploy_staging.yml => deploy_webapp_staging.yml} (100%) diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml index a927eb6cb6..0d5707bb7e 100644 --- a/.github/actions/build/action.yml +++ b/.github/actions/build/action.yml @@ -30,4 +30,7 @@ runs: - name: Build shell: bash if: steps.restore_build.outputs.cache-hit != 'true' - run: npm run webapp:build + # Build the sockets for e2e tests to run + run: | + npm run webapp:build + npm run sockets:build diff --git a/.github/workflows/deploy_cron.yml b/.github/workflows/deploy_cron.yml index b66c371dfe..c9d90cc96b 100644 --- a/.github/workflows/deploy_cron.yml +++ b/.github/workflows/deploy_cron.yml @@ -135,7 +135,7 @@ jobs: file_extensions: '**/*.{ts,tsx}' - name: Run tests - run: npx dotenv -e .env.test.local -- npm run test -w apps/cron + run: npm run cron:test upload-docker: name: Upload Docker image diff --git a/.github/workflows/deploy_scoutgame.yml b/.github/workflows/deploy_scoutgame.yml index d7e2754a9e..f0eb663113 100644 --- a/.github/workflows/deploy_scoutgame.yml +++ b/.github/workflows/deploy_scoutgame.yml @@ -437,17 +437,10 @@ jobs: # pass in all steps so we can check if any failed needs: [test-scoutgame, test-scoutgame-e2e, upload-docker, upload-static-assets, upload-docker, deploy-production] steps: - - name: If any of prev jobs failed notify discord - if: contains(needs.*.result, 'failure') - uses: sarisia/actions-status-discord@v1 + - uses: actions/checkout@v4 + - name: Notify Discord + uses: ./.github/actions/notify_error + env: + DISCORD_WARNINGS_WEBHOOK: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} with: - webhook: ${{ secrets.DISCORD_WARNINGS_WEBHOOK }} - status: 'failure' - content: 'Hey <@&1027309276454207519>' - title: 'Scoutgame deploy workflow failed' - description: | - Failed workflow URL: https://github.com/charmverse/app.charmverse.io/actions/runs/${{ github.run_id }} - color: '16515843' - url: 'https://github.com/charmverse/app.charmverse.io/actions/runs/${{ github.run_id }}' - username: GitHub Actions - avatar_url: 'https://github.githubassets.com/images/modules/logos_page/Octocat.png' + app_name: scoutgame diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/deploy_webapp.yml similarity index 100% rename from .github/workflows/test_and_deploy.yml rename to .github/workflows/deploy_webapp.yml diff --git a/.github/workflows/deploy_staging.yml b/.github/workflows/deploy_webapp_staging.yml similarity index 100% rename from .github/workflows/deploy_staging.yml rename to .github/workflows/deploy_webapp_staging.yml From ac841d27c6f44113dce40af26dcadd5e6e6b453a Mon Sep 17 00:00:00 2001 From: mattcasey Date: Mon, 9 Sep 2024 11:34:25 -0600 Subject: [PATCH 51/51] fix staging again --- .github/actions/build/action.yml | 7 ++ .github/actions/build_app/action.yml | 2 - .../account/components/AccountPreferences.tsx | 2 +- docker-compose.yml | 2 +- context/darkMode.tsx => hooks/useDarkMode.tsx | 0 pages/api-docs.tsx | 2 +- shared/components/elements/Button.tsx | 106 ------------------ theme/AppThemeProvider.tsx | 2 +- tsconfig.json | 1 - 9 files changed, 11 insertions(+), 113 deletions(-) rename context/darkMode.tsx => hooks/useDarkMode.tsx (100%) delete mode 100644 shared/components/elements/Button.tsx diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml index 0d5707bb7e..ec20c47fb0 100644 --- a/.github/actions/build/action.yml +++ b/.github/actions/build/action.yml @@ -15,6 +15,13 @@ runs: # GITHUB_CONTEXT: ${{ toJson(github) }} # run: echo "$GITHUB_CONTEXT" + - name: Get last Git commit hashes for cache key + shell: bash + # Instead of hasing files, use the latest git commit in a directory to speed up cache key https://github.com/actions/runner/issues/1840#issuecomment-2094847172 + run: | + echo "NPM_PACKAGES_COMMIT=$(git log -1 --pretty=format:%H -- package-lock.json)" >> $GITHUB_ENV + echo "SOURCE_CODE_COMMIT=$(git log -1 --pretty=format:%H -- lib components packages public pages hooks charmClient adapters abi config connectors)" >> $GITHUB_ENV + - name: Restore build id: restore_build uses: actions/cache@v4 diff --git a/.github/actions/build_app/action.yml b/.github/actions/build_app/action.yml index ab6dfc2c46..f68e427826 100644 --- a/.github/actions/build_app/action.yml +++ b/.github/actions/build_app/action.yml @@ -25,8 +25,6 @@ runs: path: | apps/${{ inputs.app_name }}/.next apps/${{ inputs.app_name }}/public - # Generate a new cache whenever packages or source files change. - # key: app-${{ inputs.app_name }}-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('lib/**/*.ts', 'lib/**/*.tsx', '@connect-shared/**/*.ts', '@connect-shared/**/*.tsx', format('apps/{0}/**/*.ts', inputs.app_name), format('apps/{0}/**/*.tsx', inputs.app_name), format('apps/{0}/**/*.scss', inputs.app_name)) }} key: app-${{ inputs.app_name }}-${{ env.NPM_PACKAGES_COMMIT }}-${{ env.SOURCE_CODE_COMMIT }} restore-keys: | app-${{ inputs.app_name }}-${{ env.NPM_PACKAGES_COMMIT }}- diff --git a/components/settings/account/components/AccountPreferences.tsx b/components/settings/account/components/AccountPreferences.tsx index acb4e18bb4..08a8cb1354 100644 --- a/components/settings/account/components/AccountPreferences.tsx +++ b/components/settings/account/components/AccountPreferences.tsx @@ -19,7 +19,7 @@ import useSWRMutation from 'swr/mutation'; import * as yup from 'yup'; import charmClient from 'charmClient'; -import { useColorMode } from 'context/darkMode'; +import { useColorMode } from 'hooks/useDarkMode'; import { useUser } from 'hooks/useUser'; import { useUserPreferences } from 'hooks/useUserPreferences'; import { formatDateTime, getCurrentDate } from 'lib/utils/dates'; diff --git a/docker-compose.yml b/docker-compose.yml index 357f44aa0f..aa5931c943 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -267,7 +267,7 @@ services: - HOST=permissions-api profiles: - stg-webapp - - stg-websockets + - stg-sockets localpostgres: image: postgres diff --git a/context/darkMode.tsx b/hooks/useDarkMode.tsx similarity index 100% rename from context/darkMode.tsx rename to hooks/useDarkMode.tsx diff --git a/pages/api-docs.tsx b/pages/api-docs.tsx index 0ce7332a73..56f948c002 100644 --- a/pages/api-docs.tsx +++ b/pages/api-docs.tsx @@ -5,7 +5,7 @@ import dynamic from 'next/dynamic'; import { createSwaggerSpec } from 'next-swagger-doc'; import { useEffect } from 'react'; -import { useColorMode } from 'context/darkMode'; +import { useColorMode } from 'hooks/useDarkMode'; import 'swagger-ui-react/swagger-ui.css'; diff --git a/shared/components/elements/Button.tsx b/shared/components/elements/Button.tsx deleted file mode 100644 index 331dd8c27e..0000000000 --- a/shared/components/elements/Button.tsx +++ /dev/null @@ -1,106 +0,0 @@ -'use client'; - -import styled from '@emotion/styled'; -import { Tooltip } from '@mui/material'; -import MaterialButton from '@mui/material/Button'; -import CircularProgress from '@mui/material/CircularProgress'; -import MuiLink from '@mui/material/Link'; -import NextLink from 'next/link'; -import type { ComponentProps, ElementType, MouseEventHandler } from 'react'; -import { forwardRef, useEffect, useRef, useState } from 'react'; - -const StyledButton = styled(MaterialButton)` - white-space: nowrap; -`; - -export const StyledSpinner = styled(CircularProgress)` - margin-left: 5px; -`; - -type ButtonProps = ComponentProps; -export type InputProps = ButtonProps & - // Omit 'variant' because it gets overridden sometimes by component - Omit, 'variant'> & { - component?: C; - external?: boolean; - loading?: boolean; - loadingMessage?: string; - }; - -export const CharmedButton = forwardRef>((_props, ref) => { - const { children, loading, loadingMessage, disabledTooltip, disabled, ...props } = _props; - - // add a small delay so we dont show and hide loading immediately - const [delayedLoading, setDelayedLoading] = useState(false); - const loadingTimeout = useRef(); - - useEffect(() => { - clearTimeout(loadingTimeout.current); - if (loading) { - loadingTimeout.current = setTimeout(() => { - setDelayedLoading(true); - }, 300); - } else { - setDelayedLoading(false); - } - return () => clearTimeout(loadingTimeout.current); - }, [loading, setDelayedLoading]); - - if (delayedLoading && props?.endIcon) { - props.endIcon = ; - } - if (delayedLoading && props?.startIcon) { - props.startIcon = ; - } - - const buttonComponent = ( - - {delayedLoading && loadingMessage ? loadingMessage : children} - {delayedLoading && !props.endIcon && !props.startIcon && } - - ); - if (disabledTooltip) { - // wrap the tooltip in a span so we can add support for line breaks in the tooltip - return ( - {disabledTooltip} : ''} enterDelay={100}> - {buttonComponent} - - ); - } - return buttonComponent; -}); - -// make sure teh id prop is on the same element as onClick -export const Button = forwardRef>((_props, ref) => { - const { href, external, children, id, onClick, target, 'data-test': dataTest, ...props } = _props; - if (href && !_props.disabled) { - if (external) { - return ( - - {children} - - ); - } - // @ts-ignore - const mouseOnClick = onClick as MouseEventHandler; - return ( - - {children} - - ); - } - - return ( - - {children} - - ); -}); diff --git a/theme/AppThemeProvider.tsx b/theme/AppThemeProvider.tsx index 04d0d2971e..fc07a58d04 100644 --- a/theme/AppThemeProvider.tsx +++ b/theme/AppThemeProvider.tsx @@ -6,7 +6,7 @@ import { CssBaseline } from '@mui/material'; import { ThemeProvider } from '@mui/material/styles'; import { useCallback, useEffect, useMemo, useState } from 'react'; -import { ColorModeProvider } from 'context/darkMode'; +import { ColorModeProvider } from 'hooks/useDarkMode'; import { useLocalStorage } from 'hooks/useLocalStorage'; import { createThemeLightSensitive } from 'theme'; import cssVariables from 'theme/cssVariables'; diff --git a/tsconfig.json b/tsconfig.json index 7772e30efb..b43b84c4ad 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -43,7 +43,6 @@ "hooks/*": ["./hooks/*"], "abis/*": ["./abis/*"], "pages/*": ["./pages/*"], - "shared/*": ["./shared/*"], "public/*": ["./public/*"], "theme/*": ["./theme/*"], "testing/*": ["./testing/*"],