mirror of
https://github.com/musix-org/musix-oss
synced 2024-11-14 16:00:17 +00:00
1 line
26 KiB
Plaintext
1 line
26 KiB
Plaintext
{"version":3,"file":"index.lite.js","sources":["../src/errors.ts","../src/constants.ts","../src/lite/firebaseAppLite.ts","../src/logger.ts","../src/firebaseNamespaceCore.ts","../src/lite/firebaseNamespaceLite.ts","../index.lite.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { ErrorFactory, ErrorMap } from '@firebase/util';\n\nexport const enum AppError {\n NO_APP = 'no-app',\n BAD_APP_NAME = 'bad-app-name',\n DUPLICATE_APP = 'duplicate-app',\n APP_DELETED = 'app-deleted',\n INVALID_APP_ARGUMENT = 'invalid-app-argument'\n}\n\nconst ERRORS: ErrorMap<AppError> = {\n [AppError.NO_APP]:\n \"No Firebase App '{$appName}' has been created - \" +\n 'call Firebase App.initializeApp()',\n [AppError.BAD_APP_NAME]: \"Illegal App name: '{$appName}\",\n [AppError.DUPLICATE_APP]: \"Firebase App named '{$appName}' already exists\",\n [AppError.APP_DELETED]: \"Firebase App named '{$appName}' already deleted\",\n [AppError.INVALID_APP_ARGUMENT]:\n 'firebase.{$appName}() takes either no argument or a ' +\n 'Firebase App instance.'\n};\n\ntype ErrorParams = { [key in AppError]: { appName: string } };\n\nexport const ERROR_FACTORY = new ErrorFactory<AppError, ErrorParams>(\n 'app',\n 'Firebase',\n ERRORS\n);\n","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const DEFAULT_ENTRY_NAME = '[DEFAULT]';\n","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n FirebaseApp,\n FirebaseOptions,\n FirebaseAppConfig\n} from '@firebase/app-types';\nimport {\n _FirebaseApp,\n _FirebaseNamespace,\n FirebaseService\n} from '@firebase/app-types/private';\nimport { deepCopy, deepExtend } from '@firebase/util';\nimport { ERROR_FACTORY, AppError } from '../errors';\nimport { DEFAULT_ENTRY_NAME } from '../constants';\n\ninterface ServicesCache {\n [name: string]: {\n [serviceName: string]: FirebaseService;\n };\n}\n\n/**\n * Global context object for a collection of services using\n * a shared authentication state.\n */\nexport class FirebaseAppLiteImpl implements FirebaseApp {\n private readonly options_: FirebaseOptions;\n private readonly name_: string;\n private isDeleted_ = false;\n private services_: ServicesCache = {};\n private automaticDataCollectionEnabled_: boolean;\n\n // lite version has an empty INTERNAL namespace\n readonly INTERNAL = {};\n\n constructor(\n options: FirebaseOptions,\n config: FirebaseAppConfig,\n private readonly firebase_: _FirebaseNamespace\n ) {\n this.name_ = config.name!;\n this.automaticDataCollectionEnabled_ =\n config.automaticDataCollectionEnabled || false;\n this.options_ = deepCopy<FirebaseOptions>(options);\n }\n\n get automaticDataCollectionEnabled(): boolean {\n this.checkDestroyed_();\n return this.automaticDataCollectionEnabled_;\n }\n\n set automaticDataCollectionEnabled(val) {\n this.checkDestroyed_();\n this.automaticDataCollectionEnabled_ = val;\n }\n\n get name(): string {\n this.checkDestroyed_();\n return this.name_;\n }\n\n get options(): FirebaseOptions {\n this.checkDestroyed_();\n return this.options_;\n }\n\n delete(): Promise<void> {\n return new Promise(resolve => {\n this.checkDestroyed_();\n resolve();\n })\n .then(() => {\n this.firebase_.INTERNAL.removeApp(this.name_);\n const services: FirebaseService[] = [];\n\n for (const serviceKey of Object.keys(this.services_)) {\n for (const instanceKey of Object.keys(this.services_[serviceKey])) {\n services.push(this.services_[serviceKey][instanceKey]);\n }\n }\n\n return Promise.all(\n services\n .filter(service => 'INTERNAL' in service)\n .map(service => service.INTERNAL!.delete())\n );\n })\n .then((): void => {\n this.isDeleted_ = true;\n this.services_ = {};\n });\n }\n\n /**\n * Return a service instance associated with this app (creating it\n * on demand), identified by the passed instanceIdentifier.\n *\n * NOTE: Currently storage is the only one that is leveraging this\n * functionality. They invoke it by calling:\n *\n * ```javascript\n * firebase.app().storage('STORAGE BUCKET ID')\n * ```\n *\n * The service name is passed to this already\n * @internal\n */\n _getService(\n name: string,\n instanceIdentifier: string = DEFAULT_ENTRY_NAME\n ): FirebaseService {\n this.checkDestroyed_();\n\n if (!this.services_[name]) {\n this.services_[name] = {};\n }\n\n if (!this.services_[name][instanceIdentifier]) {\n /**\n * If a custom instance has been defined (i.e. not '[DEFAULT]')\n * then we will pass that instance on, otherwise we pass `null`\n */\n const instanceSpecifier =\n instanceIdentifier !== DEFAULT_ENTRY_NAME\n ? instanceIdentifier\n : undefined;\n const service = this.firebase_.INTERNAL.factories[name](\n this,\n this.extendApp.bind(this),\n instanceSpecifier\n );\n this.services_[name][instanceIdentifier] = service;\n }\n\n return this.services_[name][instanceIdentifier];\n }\n\n /**\n * Callback function used to extend an App instance at the time\n * of service instance creation.\n */\n private extendApp(props: { [name: string]: unknown }): void {\n // Copy the object onto the FirebaseAppImpl prototype\n deepExtend(this, props);\n }\n\n /**\n * This function will throw an Error if the App has already been deleted -\n * use before performing API actions on the App.\n */\n private checkDestroyed_(): void {\n if (this.isDeleted_) {\n throw ERROR_FACTORY.create(AppError.APP_DELETED, { appName: this.name_ });\n }\n }\n}\n","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Logger } from '@firebase/logger';\n\nexport const logger = new Logger('@firebase/app');\n","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n FirebaseApp,\n FirebaseOptions,\n FirebaseNamespace,\n FirebaseAppConfig\n} from '@firebase/app-types';\nimport {\n _FirebaseApp,\n _FirebaseNamespace,\n FirebaseService,\n FirebaseServiceFactory,\n FirebaseServiceNamespace,\n AppHook\n} from '@firebase/app-types/private';\nimport { deepExtend, contains } from '@firebase/util';\nimport { FirebaseAppImpl } from './firebaseApp';\nimport { ERROR_FACTORY, AppError } from './errors';\nimport { FirebaseAppLiteImpl } from './lite/firebaseAppLite';\nimport { DEFAULT_ENTRY_NAME } from './constants';\nimport { version } from '../../firebase/package.json';\nimport { logger } from './logger';\n\n/**\n * Because auth can't share code with other components, we attach the utility functions\n * in an internal namespace to share code.\n * This function return a firebase namespace object without\n * any utility functions, so it can be shared between the regular firebaseNamespace and\n * the lite version.\n */\nexport function createFirebaseNamespaceCore(\n firebaseAppImpl: typeof FirebaseAppImpl | typeof FirebaseAppLiteImpl\n): FirebaseNamespace {\n const apps: { [name: string]: FirebaseApp } = {};\n const factories: { [service: string]: FirebaseServiceFactory } = {};\n const appHooks: { [service: string]: AppHook } = {};\n\n // A namespace is a plain JavaScript Object.\n const namespace: FirebaseNamespace = {\n // Hack to prevent Babel from modifying the object returned\n // as the firebase namespace.\n // @ts-ignore\n __esModule: true,\n initializeApp,\n // @ts-ignore\n app,\n // @ts-ignore\n apps: null,\n SDK_VERSION: version,\n INTERNAL: {\n registerService,\n removeApp,\n factories,\n useAsService\n }\n };\n\n // Inject a circular default export to allow Babel users who were previously\n // using:\n //\n // import firebase from 'firebase';\n // which becomes: var firebase = require('firebase').default;\n //\n // instead of\n //\n // import * as firebase from 'firebase';\n // which becomes: var firebase = require('firebase');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (namespace as any)['default'] = namespace;\n\n // firebase.apps is a read-only getter.\n Object.defineProperty(namespace, 'apps', {\n get: getApps\n });\n\n /**\n * Called by App.delete() - but before any services associated with the App\n * are deleted.\n */\n function removeApp(name: string): void {\n const app = apps[name];\n callAppHooks(app, 'delete');\n delete apps[name];\n }\n\n /**\n * Get the App object for a given name (or DEFAULT).\n */\n function app(name?: string): FirebaseApp {\n name = name || DEFAULT_ENTRY_NAME;\n if (!contains(apps, name)) {\n throw ERROR_FACTORY.create(AppError.NO_APP, { appName: name });\n }\n return apps[name];\n }\n\n // @ts-ignore\n app['App'] = firebaseAppImpl;\n /**\n * Create a new App instance (name must be unique).\n */\n function initializeApp(\n options: FirebaseOptions,\n config?: FirebaseAppConfig\n ): FirebaseApp;\n function initializeApp(options: FirebaseOptions, name?: string): FirebaseApp;\n function initializeApp(\n options: FirebaseOptions,\n rawConfig = {}\n ): FirebaseApp {\n if (typeof rawConfig !== 'object' || rawConfig === null) {\n const name = rawConfig;\n rawConfig = { name };\n }\n\n const config = rawConfig as FirebaseAppConfig;\n\n if (config.name === undefined) {\n config.name = DEFAULT_ENTRY_NAME;\n }\n\n const { name } = config;\n\n if (typeof name !== 'string' || !name) {\n throw ERROR_FACTORY.create(AppError.BAD_APP_NAME, {\n appName: String(name)\n });\n }\n\n if (contains(apps, name)) {\n throw ERROR_FACTORY.create(AppError.DUPLICATE_APP, { appName: name });\n }\n\n const app = new firebaseAppImpl(\n options,\n config,\n namespace as _FirebaseNamespace\n );\n\n apps[name] = app;\n callAppHooks(app, 'create');\n\n return app;\n }\n\n /*\n * Return an array of all the non-deleted FirebaseApps.\n */\n function getApps(): FirebaseApp[] {\n // Make a copy so caller cannot mutate the apps list.\n return Object.keys(apps).map(name => apps[name]);\n }\n\n /*\n * Register a Firebase Service.\n *\n * firebase.INTERNAL.registerService()\n *\n * TODO: Implement serviceProperties.\n */\n function registerService(\n name: string,\n createService: FirebaseServiceFactory,\n serviceProperties?: { [prop: string]: unknown },\n appHook?: AppHook,\n allowMultipleInstances = false\n ): FirebaseServiceNamespace<FirebaseService> {\n // If re-registering a service that already exists, return existing service\n if (factories[name]) {\n logger.debug(`There were multiple attempts to register service ${name}.`);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (namespace as any)[name] as FirebaseServiceNamespace<\n FirebaseService\n >;\n }\n\n // Capture the service factory for later service instantiation\n factories[name] = createService;\n\n // Capture the appHook, if passed\n if (appHook) {\n appHooks[name] = appHook;\n\n // Run the **new** app hook on all existing apps\n getApps().forEach(app => {\n appHook('create', app);\n });\n }\n\n // The Service namespace is an accessor function ...\n function serviceNamespace(appArg: FirebaseApp = app()): FirebaseService {\n // @ts-ignore\n if (typeof appArg[name] !== 'function') {\n // Invalid argument.\n // This happens in the following case: firebase.storage('gs:/')\n throw ERROR_FACTORY.create(AppError.INVALID_APP_ARGUMENT, {\n appName: name\n });\n }\n\n // Forward service instance lookup to the FirebaseApp.\n // @ts-ignore\n return appArg[name]();\n }\n\n // ... and a container for service-level properties.\n if (serviceProperties !== undefined) {\n deepExtend(serviceNamespace, serviceProperties);\n }\n\n // Monkey-patch the serviceNamespace onto the firebase namespace\n // @ts-ignore\n namespace[name] = serviceNamespace;\n\n // Patch the FirebaseAppImpl prototype\n // @ts-ignore\n firebaseAppImpl.prototype[name] =\n // TODO: The eslint disable can be removed and the 'ignoreRestArgs'\n // option added to the no-explicit-any rule when ESlint releases it.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function(...args: any) {\n const serviceFxn = this._getService.bind(this, name);\n return serviceFxn.apply(this, allowMultipleInstances ? args : []);\n };\n\n return serviceNamespace;\n }\n\n function callAppHooks(app: FirebaseApp, eventName: string): void {\n for (const serviceName of Object.keys(factories)) {\n // Ignore virtual services\n const factoryName = useAsService(app, serviceName);\n if (factoryName === null) {\n return;\n }\n\n if (appHooks[factoryName]) {\n appHooks[factoryName](eventName, app);\n }\n }\n }\n\n // Map the requested service to a registered service name\n // (used to map auth to serverAuth service when needed).\n function useAsService(app: FirebaseApp, name: string): string | null {\n if (name === 'serverAuth') {\n return null;\n }\n\n const useService = name;\n\n return useService;\n }\n\n return namespace;\n}\n","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { FirebaseNamespace } from '@firebase/app-types';\nimport {\n _FirebaseApp,\n _FirebaseNamespace,\n FirebaseServiceFactory,\n AppHook,\n FirebaseServiceNamespace,\n FirebaseService\n} from '@firebase/app-types/private';\nimport { FirebaseAppLiteImpl } from './firebaseAppLite';\nimport { createFirebaseNamespaceCore } from '../firebaseNamespaceCore';\n\nexport function createFirebaseNamespaceLite(): FirebaseNamespace {\n const namespace = createFirebaseNamespaceCore(FirebaseAppLiteImpl);\n\n namespace.SDK_VERSION = `${namespace.SDK_VERSION}_LITE`;\n\n const registerService = (namespace as _FirebaseNamespace).INTERNAL\n .registerService;\n (namespace as _FirebaseNamespace).INTERNAL.registerService = registerServiceForLite;\n\n /**\n * This is a special implementation, so it only works with performance.\n * only allow performance SDK to register.\n */\n function registerServiceForLite(\n name: string,\n createService: FirebaseServiceFactory,\n serviceProperties?: { [prop: string]: unknown },\n appHook?: AppHook,\n allowMultipleInstances?: boolean\n ): FirebaseServiceNamespace<FirebaseService> {\n // only allow performance to register with firebase lite\n if (name !== 'performance' && name !== 'installations') {\n throw Error(`${name} cannot register with the standalone perf instance`);\n }\n\n return registerService(\n name,\n createService,\n serviceProperties,\n appHook,\n allowMultipleInstances\n );\n }\n\n return namespace;\n}\n","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createFirebaseNamespaceLite } from './src/lite/firebaseNamespaceLite';\n\nexport const firebase = createFirebaseNamespaceLite();\n\n// eslint-disable-next-line import/no-default-export\nexport default firebase;\n"],"names":[],"mappings":"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"} |