From bce557cc2dc767628bed6aac87301a1be7c5431b Mon Sep 17 00:00:00 2001 From: rxliuli Date: Tue, 4 Nov 2025 05:03:50 +0800 Subject: init commit --- src/jet/dependencies/object-graph.ts | 59 ++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 src/jet/dependencies/object-graph.ts (limited to 'src/jet/dependencies/object-graph.ts') diff --git a/src/jet/dependencies/object-graph.ts b/src/jet/dependencies/object-graph.ts new file mode 100644 index 0000000..40ad0a9 --- /dev/null +++ b/src/jet/dependencies/object-graph.ts @@ -0,0 +1,59 @@ +import { AppStoreObjectGraph } from '@jet-app/app-store/foundation/runtime/app-store-object-graph'; +import { ObjectGraphType } from '@jet-app/app-store/gameservicesui/src/foundation/object-graph-types'; + +import type { Dependencies } from './make-dependencies'; +import { WebFeatureFlags } from './feature-flags'; +import { WebMediaTokenService } from './media-token-service'; + +export { ObjectGraphType }; + +class AppStoreWebObjectGraph extends AppStoreObjectGraph { + /** + * Configures the ObjectGraph from our `Dependencies` definition + * + * @param dependencies + * @returns + */ + configureWithDependencies(dependencies: Dependencies) { + const { + bag, + client, + console, + host, + locale, + localization, + metricsIdentifiers, + net, + properties, + random, + seo, + storage, + user, + } = dependencies; + + return this.addingClient(client) + .addingNetwork(net) + .addingHost(host) + .addingBag(bag) + .addingLoc(localization) + .addingMediaToken(new WebMediaTokenService()) + .addingConsole(console) + .addingAppleSilicon(undefined) + .addingProperties(properties) + .addingLocale(locale) + .addingUser(user) + .addingFeatureFlags(new WebFeatureFlags()) + .addingMetricsIdentifiers(metricsIdentifiers) + .addingSEO(seo) + .addingStorage(storage) + .addingRandom(random); + } +} + +export function makeObjectGraph( + dependencies: Dependencies, +): AppStoreObjectGraph { + const objectGraph = new AppStoreWebObjectGraph('app-store'); + + return objectGraph.configureWithDependencies(dependencies); +} -- cgit v1.2.3