18b02c6d0STomasz Sapeta // Copyright 2023-present 650 Industries. All rights reserved.
28b02c6d0STomasz Sapeta 
38b02c6d0STomasz Sapeta import ExpoModulesCore
4*47a99a80STomasz Sapeta import EXManifests
58b02c6d0STomasz Sapeta 
68b02c6d0STomasz Sapeta final class ExpoGoModule: Module {
7*47a99a80STomasz Sapeta   let manifest: Manifest
8*47a99a80STomasz Sapeta 
9*47a99a80STomasz Sapeta   // swiftlint:disable:next unavailable_function
10*47a99a80STomasz Sapeta   required init(appContext: AppContext) {
11*47a99a80STomasz Sapeta     fatalError("Initializer not implemented, use init(appContext:params:manifest:) instead")
12*47a99a80STomasz Sapeta   }
13*47a99a80STomasz Sapeta 
14*47a99a80STomasz Sapeta   init(appContext: AppContext, manifest: Manifest) {
15*47a99a80STomasz Sapeta     self.manifest = manifest
16*47a99a80STomasz Sapeta     super.init(appContext: appContext)
17*47a99a80STomasz Sapeta   }
18*47a99a80STomasz Sapeta 
definitionnull198b02c6d0STomasz Sapeta   func definition() -> ModuleDefinition {
20*47a99a80STomasz Sapeta     Name("ExpoGo")
218b02c6d0STomasz Sapeta 
228b02c6d0STomasz Sapeta     Constants {
238b02c6d0STomasz Sapeta       return [
24*47a99a80STomasz Sapeta         "expoVersion": Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion"),
25*47a99a80STomasz Sapeta         "projectConfig": manifest.expoGoConfigRootObject()
268b02c6d0STomasz Sapeta       ]
278b02c6d0STomasz Sapeta     }
288b02c6d0STomasz Sapeta   }
298b02c6d0STomasz Sapeta }
30