summaryrefslogtreecommitdiff
path: root/node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js
diff options
context:
space:
mode:
authorrxliuli <rxliuli@gmail.com>2025-11-04 05:03:50 +0800
committerrxliuli <rxliuli@gmail.com>2025-11-04 05:03:50 +0800
commitbce557cc2dc767628bed6aac87301a1be7c5431b (patch)
treeb51a051228d01fe3306cd7626d4a96768aadb944 /node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js
init commit
Diffstat (limited to 'node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js')
-rw-r--r--node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js b/node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js
new file mode 100644
index 0000000..9751c7b
--- /dev/null
+++ b/node_modules/@jet-app/app-store/tmp/src/controllers/arcade/routable-arcade-see-all-page-controller.js
@@ -0,0 +1,42 @@
+import { ArcadeSeeAllGamesPage } from "../../api/models";
+import { defaultAdditionalPlatformsForClient } from "../../foundation/media/data-fetching";
+import { fetchData } from "../../foundation/media/network";
+import { withActiveIntent } from "../../foundation/dependencies/active-intent";
+import { arcadeAppsRequest } from "../../common/arcade/arcade-common";
+import { defaultRequestAttributes, prepareRequestWithSelectedFacets } from "../../common/arcade/arcade-see-all-request";
+import { createArcadeSeeAllGamesPaginationToken, createShelves, } from "../../common/arcade/render-arcade-see-all-games-page";
+import { shouldFetchCustomAttributes } from "../../common/product-page/product-page-variants";
+import { metricsPageInformationFromMediaApiResponse } from "../../common/metrics/helpers/page";
+import { asArrayOrEmpty } from "../../foundation/json-parsing/server-data";
+import { injectWebNavigation } from "../../common/web-navigation/inject-web-navigation";
+import { createDefaultSelectedFacetOptions } from "../../common/arcade/arcade-see-all-games-facets";
+import { arcadeSeeAllRoutes as routes, makeArcadeSeeAllCanonicalUrl } from "../../common/arcade/arcade-see-all-routing";
+import { injectSEOData } from "../../api/models/web-renderable-page";
+export const RoutableArcadeSeeAllPageController = {
+ $intentKind: "RoutableArcadeSeeAllPageIntent",
+ routes,
+ async perform(intent, objectGraphWithoutActiveIntent) {
+ return await withActiveIntent(objectGraphWithoutActiveIntent, intent, async (objectGraph) => {
+ var _a;
+ const mediaApiRequest = arcadeAppsRequest(objectGraph)
+ .includingAdditionalPlatforms(defaultAdditionalPlatformsForClient(objectGraph))
+ .includingAttributes(defaultRequestAttributes(objectGraph))
+ .usingCustomAttributes(shouldFetchCustomAttributes(objectGraph));
+ if (objectGraph.client.isWeb) {
+ mediaApiRequest.withSparseLimit(20);
+ }
+ prepareRequestWithSelectedFacets(mediaApiRequest, createDefaultSelectedFacetOptions(objectGraph));
+ const mediaApiResponse = await fetchData(objectGraph, mediaApiRequest);
+ const pageInformation = metricsPageInformationFromMediaApiResponse(objectGraph, "Room", "arcadeSeeAllGames", mediaApiResponse);
+ const paginationToken = createArcadeSeeAllGamesPaginationToken(objectGraph, { isCompactMode: false }, pageInformation);
+ const page = new ArcadeSeeAllGamesPage(createShelves(objectGraph, asArrayOrEmpty(mediaApiResponse, "results.groups"), paginationToken));
+ if (objectGraph.client.isWeb) {
+ page.canonicalURL = makeArcadeSeeAllCanonicalUrl(objectGraph, intent);
+ injectWebNavigation(objectGraph, page, intent.platform);
+ injectSEOData(page, (_a = objectGraph.seo) === null || _a === void 0 ? void 0 : _a.getSEODataForArcadeSeeAllPage(objectGraph, page, mediaApiResponse));
+ }
+ return page;
+ });
+ },
+};
+//# sourceMappingURL=routable-arcade-see-all-page-controller.js.map \ No newline at end of file