From fc3dd30febedcda9c1f4081d2dfeed08c678748f Mon Sep 17 00:00:00 2001 From: runic-docs-bot Date: Wed, 12 Aug 2026 23:10:47 +0000 Subject: [PATCH] docs(tree): sync website/PROJECT_TREE.md from RunicGateway/website@e0c961c [skip ci] --- website/PROJECT_TREE.md | 180 +++++++++++++++------------------------- 1 file changed, 67 insertions(+), 113 deletions(-) diff --git a/website/PROJECT_TREE.md b/website/PROJECT_TREE.md index c41f81e..4c0c2a4 100644 --- a/website/PROJECT_TREE.md +++ b/website/PROJECT_TREE.md @@ -133,10 +133,6 @@ website/ │ │ │ │ ├── TrustedDevicesPanel.jsx │ │ │ │ └── TrustLimitModal.jsx │ │ │ ├── BrandLogo.jsx -│ │ │ ├── CharacterSheet.jsx -│ │ │ ├── CharacterStats.jsx -│ │ │ ├── CreateGameAccountForm.jsx -│ │ │ ├── GameAccounts.jsx │ │ │ ├── HeroElement.jsx │ │ │ ├── MaintenanceGate.jsx │ │ │ ├── Modal.jsx @@ -144,41 +140,41 @@ website/ │ │ │ ├── NavDropdown.jsx │ │ │ ├── PageHeader.jsx │ │ │ ├── PageState.jsx -│ │ │ ├── PlayersOnline.jsx │ │ │ ├── ProviderIcon.jsx │ │ │ ├── PublicLayout.jsx │ │ │ ├── RequireAuth.jsx │ │ │ ├── RequirePlayer.jsx │ │ │ ├── RichTextEditor.jsx │ │ │ ├── RoleGate.jsx -│ │ │ ├── ShardAccountActions.jsx │ │ │ ├── SiteFooter.jsx -│ │ │ ├── SiteHeader.jsx -│ │ │ └── VendorSales.jsx +│ │ │ └── SiteHeader.jsx │ │ ├── contexts/ │ │ │ ├── AuthContext.jsx │ │ │ └── SiteContext.jsx -│ │ ├── data/ -│ │ │ ├── cityCrests.js -│ │ │ └── regionBuckets.js │ │ ├── lib/ +│ │ │ ├── adminNav.js │ │ │ ├── format.js │ │ │ ├── heroLayout.js +│ │ │ ├── moduleAdmin.js │ │ │ ├── navOverrides.js +│ │ │ ├── pageShell.js │ │ │ ├── settingsJson.js -│ │ │ ├── shardEvents.js │ │ │ ├── themeVars.js │ │ │ ├── useAsync.js -│ │ │ ├── useNavOverrides.js -│ │ │ ├── useShardFeatures.js -│ │ │ └── useShardFeed.js +│ │ │ └── useNavOverrides.js +│ │ ├── modules/ +│ │ │ ├── featureGate.js +│ │ │ ├── features.jsx +│ │ │ ├── nav.js +│ │ │ ├── registry.js +│ │ │ ├── shared.js +│ │ │ ├── Slot.jsx +│ │ │ └── version.js │ │ ├── routes/ │ │ │ ├── admin/ │ │ │ │ ├── views/ │ │ │ │ │ ├── AccountAdmin.jsx │ │ │ │ │ ├── ActivityAdmin.jsx -│ │ │ │ │ ├── AdminCharacter.jsx -│ │ │ │ │ ├── AdminCharacters.jsx │ │ │ │ │ ├── Appeals.jsx │ │ │ │ │ ├── AppearanceAdmin.jsx │ │ │ │ │ ├── AuthProvidersAdmin.jsx @@ -188,10 +184,10 @@ website/ │ │ │ │ │ ├── DiscordBotAdmin.jsx │ │ │ │ │ ├── EmailDelivery.jsx │ │ │ │ │ ├── HeroEditor.jsx -│ │ │ │ │ ├── HousesAdmin.jsx │ │ │ │ │ ├── InvitesAdmin.jsx │ │ │ │ │ ├── Moderation.jsx │ │ │ │ │ ├── ModerationUser.jsx +│ │ │ │ │ ├── ModulesAdmin.jsx │ │ │ │ │ ├── NavEditor.jsx │ │ │ │ │ ├── PageBuilder.jsx │ │ │ │ │ ├── PagesAdmin.jsx @@ -199,10 +195,6 @@ website/ │ │ │ │ │ ├── PostsAdmin.jsx │ │ │ │ │ ├── PublicNavTree.jsx │ │ │ │ │ ├── SettingsAdmin.jsx -│ │ │ │ │ ├── ShardAdmin.jsx -│ │ │ │ │ ├── ShardOps.jsx -│ │ │ │ │ ├── ShardVisibility.jsx -│ │ │ │ │ ├── SpawnAtlas.jsx │ │ │ │ │ ├── UserDetail.jsx │ │ │ │ │ ├── UserEditor.jsx │ │ │ │ │ ├── UsersAdmin.jsx @@ -217,8 +209,6 @@ website/ │ │ │ │ ├── ForgotPassword.jsx │ │ │ │ ├── PlayerAccount.jsx │ │ │ │ ├── PlayerAppeals.jsx -│ │ │ │ ├── PlayerCharacter.jsx -│ │ │ │ ├── PlayerCharacters.jsx │ │ │ │ ├── PlayerLogin.jsx │ │ │ │ ├── PlayerPortalLayout.jsx │ │ │ │ ├── PlayerRegister.jsx @@ -226,26 +216,14 @@ website/ │ │ │ │ └── ResetPassword.jsx │ │ │ ├── public/ │ │ │ │ ├── About.jsx -│ │ │ │ ├── Atlas.jsx -│ │ │ │ ├── AtlasCreature.jsx -│ │ │ │ ├── ChampSpawns.jsx │ │ │ │ ├── CmsPage.jsx │ │ │ │ ├── FiveOnFriday.jsx -│ │ │ │ ├── Governors.jsx -│ │ │ │ ├── Guilds.jsx -│ │ │ │ ├── Houses.jsx -│ │ │ │ ├── Leaderboards.jsx │ │ │ │ ├── Maintenance.jsx -│ │ │ │ ├── Market.jsx -│ │ │ │ ├── MarketVendor.jsx │ │ │ │ ├── News.jsx │ │ │ │ ├── Newsletter.jsx │ │ │ │ ├── NewsletterIssue.jsx │ │ │ │ ├── Portal.jsx -│ │ │ │ ├── Rules.jsx │ │ │ │ ├── Screenshots.jsx -│ │ │ │ ├── Shard.jsx -│ │ │ │ ├── ShardActivity.jsx │ │ │ │ ├── Status.jsx │ │ │ │ └── Website.jsx │ │ │ └── wiki/ @@ -256,18 +234,25 @@ website/ │ │ ├── App.jsx │ │ └── main.jsx │ ├── test/ +│ │ ├── adminNav.test.js │ │ ├── apiClient.test.js +│ │ ├── featureGate.test.js │ │ ├── format.test.js │ │ ├── heroLayout.test.js +│ │ ├── moduleAdmin.test.js +│ │ ├── moduleNav.test.js +│ │ ├── moduleRegistry.test.js +│ │ ├── moduleSlots.test.js │ │ ├── navOverrides.test.js -│ │ ├── regionBuckets.test.js +│ │ ├── pageShell.test.js │ │ ├── settingsJson.test.js -│ │ ├── shardEvents.test.js │ │ └── themeVars.test.js │ ├── index.html │ ├── package-lock.json │ ├── package.json │ └── vite.config.js +├── modules/ +│ └── README.md ├── ntfy/ │ └── server.yml ├── scripts/ @@ -276,15 +261,13 @@ website/ │ │ ├── seed-sso-provider.js │ │ ├── sso-bridge-smoketest.js │ │ └── stub-idp.js +│ ├── checkModuleIdentifiers.js │ └── sonar-test-reporter.mjs ├── server/ │ ├── db/ -│ │ ├── data/ -│ │ │ └── spawnAtlas.art.example.json │ │ ├── schema.sql │ │ └── seed.js │ ├── scripts/ -│ │ ├── importSpawnAtlas.js │ │ └── routeManifest.js │ ├── src/ │ │ ├── auth/ @@ -317,8 +300,8 @@ website/ │ │ │ └── validateBlocks.js │ │ ├── config/ │ │ │ ├── brand.js +│ │ │ ├── coreStreams.js │ │ │ ├── csp.js -│ │ │ ├── notificationStreams.js │ │ │ ├── themePresets.js │ │ │ └── version.js │ │ ├── middleware/ @@ -366,6 +349,9 @@ website/ │ │ │ ├── modNotes/ │ │ │ │ ├── modNotes.db.js │ │ │ │ └── modNotes.model.js +│ │ │ ├── modules/ +│ │ │ │ ├── modules.db.js +│ │ │ │ └── modules.model.js │ │ │ ├── notificationSubs/ │ │ │ │ ├── notificationSubs.db.js │ │ │ │ └── notificationSubs.model.js @@ -391,33 +377,9 @@ website/ │ │ │ ├── settings/ │ │ │ │ ├── settings.db.js │ │ │ │ └── settings.model.js -│ │ │ ├── shardAtlas/ -│ │ │ │ ├── shardAtlas.db.js -│ │ │ │ └── shardAtlas.model.js -│ │ │ ├── shardClilocs/ -│ │ │ │ ├── shardClilocs.db.js -│ │ │ │ └── shardClilocs.model.js -│ │ │ ├── shardEvents/ -│ │ │ │ ├── shardEvents.db.js -│ │ │ │ └── shardEvents.model.js -│ │ │ ├── shardLinks/ -│ │ │ │ ├── shardLinks.db.js -│ │ │ │ └── shardLinks.model.js -│ │ │ ├── shardMarket/ -│ │ │ │ ├── shardMarket.db.js -│ │ │ │ └── shardMarket.model.js -│ │ │ ├── shardState/ -│ │ │ │ ├── shardState.db.js -│ │ │ │ └── shardState.model.js -│ │ │ ├── shardVisibility/ -│ │ │ │ ├── shardVisibility.db.js -│ │ │ │ └── shardVisibility.model.js │ │ │ ├── trustedDevices/ │ │ │ │ ├── trustedDevices.db.js │ │ │ │ └── trustedDevices.model.js -│ │ │ ├── uoLinkConfig/ -│ │ │ │ ├── uoLinkConfig.db.js -│ │ │ │ └── uoLinkConfig.model.js │ │ │ ├── userIdentities/ │ │ │ │ ├── userIdentities.db.js │ │ │ │ └── userIdentities.model.js @@ -429,6 +391,16 @@ website/ │ │ │ │ ├── wiki.links.js │ │ │ │ └── wiki.model.js │ │ │ └── singletonConfigDb.js +│ │ ├── modules/ +│ │ │ ├── archive.js +│ │ │ ├── declared.js +│ │ │ ├── install.js +│ │ │ ├── lifecycle.js +│ │ │ ├── loader.js +│ │ │ ├── registries.js +│ │ │ ├── schema.js +│ │ │ ├── semver.js +│ │ │ └── version.js │ │ ├── router/ │ │ │ ├── v1/ │ │ │ │ ├── admin/ @@ -451,20 +423,14 @@ website/ │ │ │ │ │ ├── invites.router.js │ │ │ │ │ ├── moderation.controller.js │ │ │ │ │ ├── moderation.router.js +│ │ │ │ │ ├── modules.controller.js +│ │ │ │ │ ├── modules.router.js │ │ │ │ │ ├── pages.controller.js │ │ │ │ │ ├── pages.router.js │ │ │ │ │ ├── posts.router.js │ │ │ │ │ ├── settings.router.js -│ │ │ │ │ ├── shard.router.js -│ │ │ │ │ ├── shardAtlas.controller.js -│ │ │ │ │ ├── shardClilocs.controller.js -│ │ │ │ │ ├── shardOps.controller.js -│ │ │ │ │ ├── shardVisibility.controller.js -│ │ │ │ │ ├── uoLink.controller.js -│ │ │ │ │ ├── uoLink.router.js │ │ │ │ │ ├── uploads.router.js │ │ │ │ │ ├── users.router.js -│ │ │ │ │ ├── usersShard.controller.js │ │ │ │ │ └── wiki.router.js │ │ │ │ ├── auth/ │ │ │ │ │ ├── auth.controller.js @@ -494,18 +460,14 @@ website/ │ │ │ │ │ ├── account.router.js │ │ │ │ │ ├── appeals.controller.js │ │ │ │ │ ├── appeals.router.js -│ │ │ │ │ ├── index.js -│ │ │ │ │ ├── shard.controller.js -│ │ │ │ │ └── shard.router.js +│ │ │ │ │ └── index.js │ │ │ │ ├── public/ -│ │ │ │ │ ├── atlas.controller.js -│ │ │ │ │ ├── atlas.router.js │ │ │ │ │ ├── index.js +│ │ │ │ │ ├── modules.controller.js +│ │ │ │ │ ├── modules.router.js │ │ │ │ │ ├── pages.router.js │ │ │ │ │ ├── posts.router.js │ │ │ │ │ ├── public.controller.js -│ │ │ │ │ ├── shard.controller.js -│ │ │ │ │ ├── shard.router.js │ │ │ │ │ ├── site.router.js │ │ │ │ │ └── wiki.router.js │ │ │ │ ├── settings/ @@ -524,52 +486,48 @@ website/ │ │ │ ├── botInternalClient.js │ │ │ ├── botInternalKey.js │ │ │ ├── brandAssets.js -│ │ │ ├── clilocParse.js -│ │ │ ├── clilocSource.js │ │ │ ├── db.js +│ │ │ ├── discordAnnounce.js │ │ │ ├── htmlShell.js │ │ │ ├── logger.js │ │ │ ├── mailer.js │ │ │ ├── navOverrides.js -│ │ │ ├── newsGump.js │ │ │ ├── pushDispatch.js │ │ │ ├── sanitizeHtml.js │ │ │ ├── secretBox.js │ │ │ ├── settingsJson.js -│ │ │ ├── shardBroadcast.js -│ │ │ ├── shardIngest.js -│ │ │ ├── shardSales.js -│ │ │ ├── shardVisibility.js -│ │ │ ├── spawnAtlasParse.js -│ │ │ ├── spawnAtlasSource.js +│ │ │ ├── sqlStatements.js │ │ │ ├── themeResolve.js │ │ │ ├── totp.js -│ │ │ ├── trustProxy.js -│ │ │ ├── uoLinkClient.js -│ │ │ └── uoLinkSocket.js +│ │ │ └── trustProxy.js │ │ ├── app.js │ │ ├── internalApp.js │ │ └── server.js │ ├── swagger/ +│ │ ├── docsSpec.js +│ │ ├── mergeSpec.js +│ │ ├── slotSpecs.js │ │ ├── swagger-output.json │ │ └── swagger.js │ ├── test/ │ │ ├── _helper.js +│ │ ├── _setup.js +│ │ ├── adminModules.test.js │ │ ├── adminTrustedDevices.test.js -│ │ ├── adminUserShard.test.js +│ │ ├── adminUsers.test.js │ │ ├── announceJobs.test.js +│ │ ├── announceLegs.test.js │ │ ├── appeals.pure.test.js │ │ ├── appeals.test.js │ │ ├── appLinks.test.js -│ │ ├── atlasController.test.js │ │ ├── authController.test.js │ │ ├── authMe.test.js │ │ ├── authTrustedDevice.test.js +│ │ ├── bootOrder.test.js │ │ ├── botInternalKey.test.js │ │ ├── botScore.test.js │ │ ├── brandAssets.test.js -│ │ ├── clilocParse.test.js -│ │ ├── clilocSource.test.js +│ │ ├── checkModuleIdentifiers.test.js │ │ ├── csp.test.js │ │ ├── emailConfig.model.test.js │ │ ├── honeypot.test.js @@ -584,8 +542,17 @@ website/ │ │ ├── mobileSsoBridge.test.js │ │ ├── moderation.model.test.js │ │ ├── moderation.test.js +│ │ ├── moduleArchive.test.js +│ │ ├── moduleClientChunk.test.js +│ │ ├── moduleDeclared.test.js +│ │ ├── moduleDocsSpec.test.js +│ │ ├── moduleInstall.test.js +│ │ ├── moduleLifecycle.test.js +│ │ ├── moduleLoader.test.js +│ │ ├── moduleRegistries.test.js +│ │ ├── modules.model.test.js +│ │ ├── moduleSchema.test.js │ │ ├── navOverrides.test.js -│ │ ├── newsGump.test.js │ │ ├── notificationsRoutes.test.js │ │ ├── pages.model.test.js │ │ ├── passwordResetController.test.js @@ -595,7 +562,7 @@ website/ │ │ ├── providers.test.js │ │ ├── publicBrand.test.js │ │ ├── publicController.test.js -│ │ ├── publicShardOnline.test.js +│ │ ├── publicModules.test.js │ │ ├── publicVersion.test.js │ │ ├── pushDispatch.test.js │ │ ├── recoveryCodes.test.js @@ -605,20 +572,8 @@ website/ │ │ ├── secretBox.test.js │ │ ├── selfTrustedDevices.test.js │ │ ├── session.test.js +│ │ ├── settingsGameSignup.test.js │ │ ├── settingsTheming.test.js -│ │ ├── shardBroadcast.visibility.test.js -│ │ ├── shardControllerPublic.test.js -│ │ ├── shardIngest.champsPages.test.js -│ │ ├── shardIngest.market.test.js -│ │ ├── shardIngest.points.test.js -│ │ ├── shardIngest.protocol2.test.js -│ │ ├── shardIngest.ruleset.test.js -│ │ ├── shardMarket.model.test.js -│ │ ├── shardState.governorTerms.test.js -│ │ ├── shardState.model.test.js -│ │ ├── shardVisibility.test.js -│ │ ├── spawnAtlas.parse.test.js -│ │ ├── spawnAtlas.source.test.js │ │ ├── ssoCallback.test.js │ │ ├── ssoState.test.js │ │ ├── ssoTrustedDevice.test.js @@ -626,7 +581,6 @@ website/ │ │ ├── totp.test.js │ │ ├── trustedDevices.test.js │ │ ├── trustProxy.test.js -│ │ ├── uoLinkClient.test.js │ │ └── usernamePolicy.test.js │ ├── tools/ │ │ └── cliloc-export/ -- 2.49.1