@hyper-fetch/firebase-admin 6.0.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/index.ts", "../src/adapter/types/adapter.firestore.types.ts", "../src/adapter/types/adapter.realtime.types.ts", "../src/adapter/adapter.sockets.ts", "../src/firestore/firestore.sockets.ts", "../src/firestore/utils/result.utils.ts", "../src/firestore/utils/ref.utils.ts", "../src/constraints/firebase.constraints.ts", "../src/firestore/utils/constraints.utils.ts", "../src/utils/misc.ts", "../src/realtime/realtime.sockets.ts", "../src/realtime/utils/result.utils.ts", "../src/realtime/utils/constraints.utils.ts", "../src/adapter/adapter.ts", "../src/firestore/firestore.methods.ts", "../src/realtime/realtime.methods.ts"],
4
- "sourcesContent": ["export * from \"adapter\";\nexport * from \"constraints\";\nexport * from \"firestore\";\nexport * from \"realtime\";\n", "import { AdapterType } from \"@hyper-fetch/core\";\nimport {\n Unsubscribe as FirestoreUnsubscribe,\n CollectionReference,\n DocumentReference,\n DocumentSnapshot,\n QuerySnapshot,\n} from \"firebase/firestore\";\nimport { SocketAdapterType } from \"@hyper-fetch/sockets\";\n\nimport {\n FirestoreConstraintsUnion,\n FirestorePermittedMethods,\n PermittedConstraints,\n SharedQueryConstraints,\n} from \"constraints\";\n\nexport type FirestoreSocketAdapterType = SocketAdapterType<\n never,\n FirestoreOnSnapshotExtra,\n { groupByChangeType?: boolean } & FirestoreQueryParams\n>;\n\nexport type FirestoreAdapterType =\n | AdapterType<Record<string, never>, \"getDoc\", FirestoreStatuses, FirestoreExtra, FirestoreQueryParams>\n | AdapterType<Record<string, never>, \"getDocs\", FirestoreStatuses, FirestoreGetDocsExtra, FirestoreQueryParams>\n | AdapterType<{ merge: boolean }, \"setDoc\", FirestoreStatuses, FirestoreRefOnlyExtra, Record<string, never>>\n | AdapterType<\n Record<string, never>,\n \"updateDoc\" | \"addDoc\" | \"deleteDoc\" | \"setDoc\",\n FirestoreStatuses,\n FirestoreRefOnlyExtra,\n Record<string, never>\n >;\n\nexport type FirestoreQueryParams = {\n constraints?: PermittedConstraints<FirestorePermittedMethods, FirestoreConstraintsUnion | SharedQueryConstraints>[];\n};\n\nexport enum FirestoreMethods {\n addDoc = \"addDoc\",\n getDoc = \"getDoc\",\n getDocs = \"getDocs\",\n setDoc = \"setDoc\",\n updateDoc = \"updateDoc\",\n deleteDoc = \"deleteDoc\",\n}\n\nexport type FirestoreMethodsUnion =\n | FirestoreMethods.addDoc\n | FirestoreMethods.getDoc\n | FirestoreMethods.getDocs\n | FirestoreMethods.setDoc\n | FirestoreMethods.updateDoc\n | FirestoreMethods.deleteDoc;\n\nexport type FirestoreExtra = {\n ref?: DocumentReference;\n snapshot?: DocumentSnapshot;\n};\n\nexport type FirestoreOnSnapshotExtra = {\n ref?: DocumentReference | CollectionReference;\n snapshot?: DocumentSnapshot;\n unsubscribe?: FirestoreUnsubscribe;\n groupedResult?: { added: DocumentSnapshot[]; modified: DocumentSnapshot[]; removed: DocumentSnapshot[] };\n};\n\nexport type FirestoreGetDocsExtra = {\n ref?: CollectionReference;\n snapshot?: QuerySnapshot;\n};\n\nexport type FirestoreRefOnlyExtra = {\n ref?: DocumentReference;\n};\n\nexport type FirestoreStatuses = \"success\" | \"error\" | \"emptyResource\";\n", "import { AdapterType } from \"@hyper-fetch/core\";\nimport { DatabaseReference, DataSnapshot } from \"firebase/database\";\nimport { SocketAdapterType } from \"@hyper-fetch/sockets\";\n\nimport {\n PermittedConstraints,\n RealtimeConstraintsUnion,\n RealtimePermittedMethods,\n SharedQueryConstraints,\n} from \"constraints\";\n\nexport type RealtimeSocketAdapterType = SocketAdapterType<\n never,\n RealtimeDbOnValueMethodExtra,\n { onlyOnce?: boolean } & RealtimeDBQueryParams\n>;\n\nexport type RealtimeDbAdapterType =\n | AdapterType<\n DefaultRealtimeDBAdapterOptions,\n \"get\",\n RealtimeDBStatuses,\n RealtimeDbGetMethodExtra,\n RealtimeDBQueryParams\n >\n | AdapterType<\n DefaultRealtimeDBAdapterOptions,\n \"push\",\n RealtimeDBStatuses,\n RealtimeDbPushMethodExtra,\n Record<string, never>\n >\n | AdapterType<\n DefaultRealtimeDBAdapterOptions,\n \"set\" | \"update\" | \"remove\",\n RealtimeDBStatuses,\n RealtimeDbDefaultExtra,\n Record<string, never>\n >;\n\nexport type DefaultRealtimeDBAdapterOptions = {\n priority?: number;\n};\n\nexport enum RealtimeDBMethods {\n set = \"set\",\n push = \"push\",\n update = \"update\",\n get = \"get\",\n remove = \"remove\",\n}\n\nexport type RealtimeDBMethodsUnion =\n | RealtimeDBMethods.set\n | RealtimeDBMethods.push\n | RealtimeDBMethods.update\n | RealtimeDBMethods.get\n | RealtimeDBMethods.remove;\n\nexport type RealtimeDBStatuses = \"success\" | \"error\" | \"emptyResource\";\nexport type RealtimeDbOnValueMethodExtra = {\n ref: DatabaseReference;\n snapshot: DataSnapshot;\n};\n\nexport type RealtimeDbGetMethodExtra = {\n ref: DatabaseReference;\n snapshot: DataSnapshot;\n};\n\nexport type RealtimeDbDefaultExtra = {\n ref: DatabaseReference;\n};\n\nexport type RealtimeDbPushMethodExtra = {\n ref: DatabaseReference;\n key: string;\n};\n\nexport type RealtimeDBQueryParams = {\n constraints?: PermittedConstraints<RealtimePermittedMethods, RealtimeConstraintsUnion | SharedQueryConstraints>[];\n};\n", "import { Firestore } from \"firebase-admin/firestore\";\n\nimport { FirebaseAdminDBTypes, FirebaseAdminSocketAdapterTypes } from \"./types\";\nimport { firestoreAdminSockets } from \"../firestore/firestore.sockets\";\nimport { realtimeSocketsAdmin } from \"../realtime/realtime.sockets\";\n\nexport const firebaseSocketsAdminAdapter = <T extends FirebaseAdminDBTypes>(\n database: T,\n): FirebaseAdminSocketAdapterTypes<T> => {\n if (database instanceof Firestore) {\n return firestoreAdminSockets(database) as unknown as FirebaseAdminSocketAdapterTypes<T>;\n }\n return realtimeSocketsAdmin(database) as unknown as FirebaseAdminSocketAdapterTypes<T>;\n};\n", "import { CollectionReference, DocumentReference, DocumentSnapshot, Firestore, Query } from \"firebase-admin/firestore\";\nimport { getSocketAdapterBindings } from \"@hyper-fetch/sockets\";\n\nimport { getGroupedResultFirestore, getOrderedResultFirestore, getRef, applyFireStoreAdminConstraints } from \"./utils\";\nimport { getStatus } from \"utils\";\nimport { FirestoreAdminSocketAdapterType } from \"adapter\";\n\nexport const firestoreAdminSockets = (database: Firestore): FirestoreAdminSocketAdapterType => {\n return (socket) => {\n const {\n open,\n connecting,\n reconnectionAttempts,\n listeners,\n removeListener,\n onReconnect,\n onListen,\n onEvent,\n onError,\n } = getSocketAdapterBindings(socket, { open: true });\n\n const connect = () => {\n throw new Error(\"Connect function is not implemented for Firestore Admin socket.\");\n };\n\n const disconnect = () => {\n throw new Error(\"Cannot disconnect from Firestore database socket. Use 'app.delete()' instead.\");\n };\n\n const reconnect = () => {\n onReconnect(disconnect, connect);\n };\n\n const listen: ReturnType<FirestoreAdminSocketAdapterType>[\"listen\"] = (listener, callback) => {\n const fullUrl = socket.url + listener.endpoint;\n const { options } = listener;\n let pathRef: DocumentReference | Query = getRef(database, fullUrl);\n if (pathRef instanceof CollectionReference) {\n pathRef = applyFireStoreAdminConstraints(pathRef, options?.constraints || []);\n }\n let unsubscribe = () => {};\n let unmount = () => {};\n let clearListeners = () => {};\n\n unsubscribe = pathRef.onSnapshot(\n (snapshot) => {\n const getSnapshotData = (s) => (s.data() ? { ...s.data(), __key: s.id } : null);\n const response =\n snapshot instanceof DocumentSnapshot ? getSnapshotData(snapshot) : getOrderedResultFirestore(snapshot);\n const status = getStatus(response);\n const groupedResult = options?.groupByChangeType === true ? getGroupedResultFirestore(snapshot) : null;\n const extra = { ref: pathRef, snapshot, unsubscribe, groupedResult, status };\n callback({ data: response, extra });\n onEvent(listener.endpoint, response, extra);\n },\n (error) => {\n onError(error);\n },\n );\n unmount = onListen(listener, callback, unsubscribe);\n clearListeners = () => {\n unsubscribe();\n unmount();\n };\n\n return clearListeners;\n };\n\n const emit = async () => {\n throw new Error(\"Cannot emit from Firestore database socket.\");\n };\n\n return {\n open,\n reconnectionAttempts,\n listeners,\n connecting,\n listen,\n removeListener,\n emit,\n connect,\n reconnect,\n disconnect,\n };\n };\n};\n", "export const getOrderedResultFirestore = (snapshot: any) => {\n const result = [];\n snapshot.docs.forEach((d) => {\n result.push({ ...d.data(), __key: d.id });\n });\n return result.length > 0 ? result : null;\n};\n\nexport const getGroupedResultFirestore = (snapshot: any) => {\n const groupedResult = { added: [], modified: [], removed: [] };\n snapshot.docChanges().forEach((change) => {\n groupedResult[change.type].push(change.doc.data());\n });\n return [...groupedResult.added, ...groupedResult.modified, ...groupedResult.removed].length > 0\n ? groupedResult\n : null;\n};\n", "import { CollectionReference, DocumentReference, Firestore } from \"firebase-admin/lib/firestore\";\n\nexport const getRef = (db: Firestore, fullUrl: string) => {\n const withoutSurroundingSlashes = fullUrl.replace(/^\\/|\\/$/g, \"\");\n const urlParts = withoutSurroundingSlashes.split(\"/\").map((element, index) => {\n return index % 2 === 0 ? [\"collection\", element] : [\"doc\", element];\n });\n\n return urlParts.reduce((_db, value) => {\n const [method, pathPart] = value;\n if (method === \"doc\" && \"doc\" in _db) {\n return _db.doc(pathPart);\n }\n if (method === \"collection\" && \"collection\" in _db) {\n return _db.collection(pathPart);\n }\n return _db;\n }, db as unknown as Firestore | CollectionReference | DocumentReference) as CollectionReference | DocumentReference;\n};\n", "import { OrderByDirection, WhereFilterOp } from \"firebase-admin/firestore\";\n\nexport enum SharedQueryConstraints {\n START_AT = \"startAt\",\n START_AFTER = \"startAfter\",\n END_AT = \"endAt\",\n END_BEFORE = \"endBefore\",\n}\nexport enum RealtimeQueryConstraints {\n ORDER_BY_CHILD = \"orderByChild\",\n ORDER_BY_KEY = \"orderByKey\",\n ORDER_BY_VALUE = \"orderByValue\",\n LIMIT_TO_FIRST = \"limitToFirst\",\n LIMIT_TO_LAST = \"limitToLast\",\n EQUAL_TO = \"equalTo\",\n}\n\nexport enum FirestoreQueryConstraints {\n WHERE = \"where\",\n ORDER_BY = \"orderBy\",\n LIMIT = \"limit\",\n}\n\nexport const $where = (fieldPath: string, opStr: WhereFilterOp, value: any) => {\n return {\n toString: () => `${FirestoreQueryConstraints.WHERE}_${fieldPath}${opStr}${value}`,\n type: FirestoreQueryConstraints.WHERE as const,\n values: [fieldPath, opStr, value],\n };\n};\n\nexport const $orderBy = (fieldPath: string, directionStr?: OrderByDirection) => {\n return {\n toString: () => `${FirestoreQueryConstraints.ORDER_BY}_${fieldPath}_${directionStr || \"\"}`,\n type: FirestoreQueryConstraints.ORDER_BY as const,\n values: [fieldPath, directionStr],\n };\n};\n\nexport const $limit = (num: number) => {\n return {\n toString: () => `${FirestoreQueryConstraints.LIMIT}_${num}`,\n type: FirestoreQueryConstraints.LIMIT as const,\n values: [num],\n };\n};\n\nconst startEndConstraintsImpl = (constraintType: SharedQueryConstraints) => {\n return (...docOrFields: any[]) => {\n if (docOrFields.length === 1 && docOrFields[0].query) {\n return {\n toString: () => `${constraintType}_${docOrFields[0].query?._query?.memoizedTarget?.memoizedCanonicalId}`,\n type: constraintType,\n values: [docOrFields],\n };\n }\n return {\n toString: () => `${constraintType}_${docOrFields}`,\n type: constraintType,\n values: [docOrFields],\n };\n };\n};\n\nexport const $startAt = startEndConstraintsImpl(SharedQueryConstraints.START_AT as const);\nexport const $startAfter = startEndConstraintsImpl(SharedQueryConstraints.START_AFTER as const);\n\nexport const $endAt = startEndConstraintsImpl(SharedQueryConstraints.END_AT as const);\nexport const $endBefore = startEndConstraintsImpl(SharedQueryConstraints.END_BEFORE as const);\n\nexport const $orderByChild = (path: string) => {\n return {\n toString: () => `${RealtimeQueryConstraints.ORDER_BY_CHILD}_${path}`,\n type: RealtimeQueryConstraints.ORDER_BY_CHILD as const,\n values: [path],\n };\n};\n\nexport const $orderByKey = () => {\n return {\n toString: () => `${RealtimeQueryConstraints.ORDER_BY_KEY}`,\n type: RealtimeQueryConstraints.ORDER_BY_KEY as const,\n values: [],\n };\n};\n\nexport const $orderByValue = () => {\n return {\n toString: () => `${RealtimeQueryConstraints.ORDER_BY_VALUE}`,\n type: RealtimeQueryConstraints.ORDER_BY_VALUE as const,\n values: [],\n };\n};\n\nexport const $limitToFirst = (num: number) => {\n return {\n toString: () => `${RealtimeQueryConstraints.LIMIT_TO_FIRST}_${num}`,\n type: RealtimeQueryConstraints.LIMIT_TO_FIRST as const,\n values: [num],\n };\n};\n\nexport const $limitToLast = (num: number) => {\n return {\n toString: () => `${RealtimeQueryConstraints.LIMIT_TO_LAST}_${num}`,\n type: RealtimeQueryConstraints.LIMIT_TO_LAST as const,\n values: [num],\n };\n};\n\nexport const $equalTo = (value: any) => {\n return {\n toString: () => `${RealtimeQueryConstraints.LIMIT_TO_LAST}_${value}`,\n type: RealtimeQueryConstraints.EQUAL_TO as const,\n values: [value],\n };\n};\n", "import { CollectionReference } from \"firebase-admin/lib/firestore\";\nimport { OrderByDirection } from \"firebase/firestore\";\n\nimport { FirestorePermittedMethods, FirestoreQueryConstraints, SharedQueryConstraints } from \"../../constraints\";\n\nexport const applyFireStoreAdminConstraint = (\n collectionRef: CollectionReference,\n { type, values }: FirestorePermittedMethods,\n) => {\n switch (type) {\n case FirestoreQueryConstraints.WHERE: {\n const [fieldPath, strOp, value] = values;\n return collectionRef.where(fieldPath, strOp, value);\n }\n case FirestoreQueryConstraints.ORDER_BY: {\n const [field, ord] = values;\n return collectionRef.orderBy(field, ord as OrderByDirection);\n }\n case FirestoreQueryConstraints.LIMIT: {\n const [limitValue] = values;\n return collectionRef.limit(limitValue);\n }\n case SharedQueryConstraints.START_AT: {\n const [docOrFields] = values;\n return collectionRef.startAt(docOrFields);\n }\n case SharedQueryConstraints.START_AFTER: {\n const [docOrFields] = values;\n return collectionRef.startAfter(docOrFields);\n }\n case SharedQueryConstraints.END_AT: {\n const [docOrFields] = values;\n return collectionRef.endAt(docOrFields);\n }\n case SharedQueryConstraints.END_BEFORE: {\n const [docOrFields] = values;\n return collectionRef.endBefore(docOrFields);\n }\n default:\n throw new Error(`Unknown method ${type}`);\n }\n};\n\nexport const applyFireStoreAdminConstraints = (\n collectionRef: CollectionReference,\n constraints: FirestorePermittedMethods[],\n) => {\n return constraints.reduce((collection, constraint) => {\n return applyFireStoreAdminConstraint(collection, constraint);\n }, collectionRef);\n};\n", "export const getStatus = (res: any) => {\n // Deliberate == instead of ===\n return (Array.isArray(res) && res.length === 0) || res == null ? \"emptyResource\" : \"success\";\n};\n\nexport const isDocOrQuery = (fullUrl: string): string => {\n const withoutSurroundingSlashes = fullUrl.replace(/^\\/|\\/$/g, \"\");\n const pathElements = withoutSurroundingSlashes.split(\"/\").length;\n return pathElements % 2 === 0 ? \"doc\" : \"query\";\n};\n", "import { Database } from \"firebase-admin/lib/database\";\nimport { getSocketAdapterBindings } from \"@hyper-fetch/sockets\";\n\nimport { applyRealtimeAdminConstraints, getOrderedResultRealtime } from \"./utils\";\nimport { getStatus, isDocOrQuery } from \"utils\";\nimport { RealtimeAdminOnValueMethodExtra, RealtimeAdminSocketAdapterType } from \"adapter\";\n\nexport const realtimeSocketsAdmin = (database: Database): RealtimeAdminSocketAdapterType => {\n return (socket) => {\n const {\n open,\n connecting,\n reconnectionAttempts,\n listeners,\n removeListener,\n onConnect,\n onReconnect,\n onDisconnect,\n onListen,\n onOpen,\n onClose,\n onEvent,\n onError,\n } = getSocketAdapterBindings(socket, { open: true });\n\n const connect = () => {\n const enabled = onConnect();\n\n if (enabled) {\n database.goOnline();\n onOpen();\n }\n };\n\n const disconnect = () => {\n database.goOffline();\n onDisconnect();\n onClose();\n };\n\n const reconnect = () => {\n onReconnect(disconnect, connect);\n };\n\n const listen: ReturnType<RealtimeAdminSocketAdapterType>[\"listen\"] = (listener, callback) => {\n const fullUrl = socket.url + listener.endpoint;\n const path = database.ref(fullUrl);\n const { options } = listener;\n const onlyOnce = options?.onlyOnce || false;\n const q = applyRealtimeAdminConstraints(path, options?.constraints || []);\n const method = onlyOnce === true ? \"once\" : \"on\";\n q[method](\n \"value\",\n (snapshot) => {\n const getSnapshotData = (s) => (s.val() ? { ...s.val(), __key: s.key } : null);\n const response =\n isDocOrQuery(fullUrl) === \"doc\" ? getSnapshotData(snapshot) : getOrderedResultRealtime(snapshot);\n const status = getStatus(response);\n const extra: RealtimeAdminOnValueMethodExtra = { ref: path, snapshot, status };\n callback({ data: response, extra });\n onEvent(listener.endpoint, response, extra);\n },\n (error) => {\n onError(error);\n },\n );\n const unsubscribe = () => q.off(\"value\");\n const unmount = onListen(listener, callback, unsubscribe);\n\n const clearListeners = () => {\n unsubscribe();\n unmount();\n };\n\n return clearListeners;\n };\n\n const emit = async () => {\n throw new Error(\"Cannot emit from Realtime database socket.\");\n };\n\n return {\n open,\n reconnectionAttempts,\n listeners,\n connecting,\n listen,\n removeListener,\n emit,\n connect,\n reconnect,\n disconnect,\n };\n };\n};\n", "export const getOrderedResultRealtime = (snapshot: any) => {\n const res = [];\n snapshot.forEach((child) => {\n res.push({ ...child.val(), __key: child.key });\n });\n return res.length > 0 ? res : null;\n};\n", "import { Reference } from \"firebase-admin/lib/database\";\n\nimport { RealtimePermittedMethods, RealtimeQueryConstraints, SharedQueryConstraints } from \"constraints\";\n\nexport const applyRealtimeAdminConstraint = (ref: Reference, { type, values }: RealtimePermittedMethods) => {\n switch (type) {\n case RealtimeQueryConstraints.ORDER_BY_CHILD: {\n const [value] = values;\n return ref.orderByChild(value);\n }\n case RealtimeQueryConstraints.ORDER_BY_KEY: {\n return ref.orderByKey();\n }\n case RealtimeQueryConstraints.ORDER_BY_VALUE: {\n return ref.orderByValue();\n }\n case SharedQueryConstraints.START_AT: {\n const [[value]] = values;\n return ref.startAt(value);\n }\n case SharedQueryConstraints.START_AFTER: {\n const [[value]] = values;\n return ref.startAfter(value);\n }\n case SharedQueryConstraints.END_AT: {\n const [[value]] = values;\n return ref.endAt(value);\n }\n case SharedQueryConstraints.END_BEFORE: {\n const [[value]] = values;\n return ref.endBefore(value);\n }\n case RealtimeQueryConstraints.LIMIT_TO_FIRST: {\n const [value] = values;\n return ref.limitToFirst(value);\n }\n case RealtimeQueryConstraints.LIMIT_TO_LAST: {\n const [value] = values;\n return ref.limitToLast(value);\n }\n case RealtimeQueryConstraints.EQUAL_TO: {\n const [value] = values;\n return ref.equalTo(value);\n }\n default:\n throw new Error(`Unknown method ${type}`);\n }\n};\n\nexport const applyRealtimeAdminConstraints = (ref: Reference, constraints: RealtimePermittedMethods[]) => {\n return constraints.reduce((collection, constraint) => {\n return applyRealtimeAdminConstraint(collection, constraint);\n }, ref);\n};\n", "import { getAdapterBindings, ResponseReturnType } from \"@hyper-fetch/core\";\nimport { Firestore } from \"firebase-admin/firestore\";\n\nimport {\n FirestoreAdapterType,\n FirestoreMethodsUnion,\n FirestoreQueryParams,\n FirebaseAdminAdapterTypes,\n FirebaseAdminDBTypes,\n RealtimeDbAdapterType,\n RealtimeDBMethodsUnion,\n RealtimeDBQueryParams,\n FirestoreMethods,\n RealtimeDBMethods,\n} from \"adapter\";\nimport { getFirestoreAdminMethods } from \"../firestore\";\nimport { getRealtimeDbAdminMethods } from \"../realtime\";\n\nexport const firebaseAdminAdapter =\n <T extends FirebaseAdminDBTypes>(database: T) =>\n () => {\n const adapter: FirebaseAdminAdapterTypes<T> = async (request, requestId) => {\n const { fullUrl, onSuccess, onError, onRequestStart, onResponseEnd, onResponseStart, onRequestEnd } =\n await getAdapterBindings<RealtimeDbAdapterType | FirestoreAdapterType>(request, requestId, \"error\", {});\n return new Promise<ResponseReturnType<any, any, FirebaseAdminAdapterTypes<T>>>((resolve) => {\n if (database instanceof Firestore) {\n const {\n method = FirestoreMethods.getDocs,\n queryParams,\n data,\n options,\n }: { method: FirestoreMethodsUnion; queryParams: FirestoreQueryParams; data; options } = request;\n const availableMethods = getFirestoreAdminMethods(request, database, fullUrl, onSuccess, onError, resolve, {\n onRequestStart,\n onResponseEnd,\n onResponseStart,\n onRequestEnd,\n });\n if (!Object.values(FirestoreMethods).includes(method)) {\n throw new Error(`Cannot find method ${method} in Firestore available methods.`);\n }\n availableMethods(method, {\n constraints: queryParams?.constraints ? queryParams.constraints : [],\n data,\n options,\n });\n } else {\n const {\n method = RealtimeDBMethods.get,\n queryParams,\n data,\n options,\n }: { method: RealtimeDBMethodsUnion; queryParams: RealtimeDBQueryParams; data; options } = request;\n const availableMethods = getRealtimeDbAdminMethods(request, database, fullUrl, onSuccess, onError, resolve, {\n onRequestStart,\n onResponseEnd,\n onResponseStart,\n onRequestEnd,\n });\n if (!Object.values(RealtimeDBMethods).includes(method)) {\n throw new Error(`Cannot find method ${method} in Realtime database available methods.`);\n }\n availableMethods(method, {\n constraints: queryParams?.constraints ? queryParams.constraints : [],\n options,\n data,\n });\n }\n });\n };\n return adapter;\n };\n", "import { CollectionReference, DocumentReference, DocumentSnapshot, Firestore } from \"firebase-admin/firestore\";\nimport { RequestInstance } from \"@hyper-fetch/core\";\n\nimport { FirestoreMethodsUnion } from \"adapter\";\nimport { getStatus } from \"utils\";\nimport {\n FirestoreConstraintsUnion,\n FirestorePermittedMethods,\n PermittedConstraints,\n SharedQueryConstraints,\n} from \"constraints\";\nimport { applyFireStoreAdminConstraints, getOrderedResultFirestore, getRef } from \"./utils\";\n\nexport const getFirestoreAdminMethods = <R extends RequestInstance>(\n request: R,\n database: Firestore,\n url: string,\n onSuccess,\n onError,\n resolve,\n events: { onRequestStart; onResponseEnd; onResponseStart; onRequestEnd },\n): ((\n methodName: FirestoreMethodsUnion,\n data: {\n constraints?: PermittedConstraints<FirestorePermittedMethods, FirestoreConstraintsUnion | SharedQueryConstraints>[];\n data?: any;\n options?: Record<string, any>;\n },\n) => Promise<void>) => {\n const [cleanUrl] = url.split(\"?\");\n const methods = {\n getDoc: async () => {\n const path = getRef(database, cleanUrl);\n const snapshot = (await path.get()) as DocumentSnapshot;\n const result = snapshot.data() ? { ...snapshot.data(), __key: snapshot.id } : null;\n const status = result ? \"success\" : \"emptyResource\";\n return { result, status, extra: { ref: path, snapshot } };\n },\n getDocs: async ({ constraints = [] }) => {\n const path = getRef(database, cleanUrl) as CollectionReference;\n const query = applyFireStoreAdminConstraints(path, constraints);\n const querySnapshot = await query.get();\n const result = getOrderedResultFirestore(querySnapshot);\n const status = getStatus(result);\n\n return { result, status, extra: { ref: path, snapshot: querySnapshot } };\n },\n setDoc: async ({ data, options }: { data?: any; options?: Record<string, any> }) => {\n const path = getRef(database, cleanUrl) as DocumentReference;\n const merge = options?.merge === true;\n const res = await path.set(data, { merge });\n return { result: res, status: \"success\", extra: { ref: path } };\n },\n addDoc: async ({ data }: { data?: any }) => {\n const ref = getRef(database, cleanUrl) as CollectionReference;\n const docRef = await ref.add(data);\n return { result: { ...data, __key: docRef.id }, status: \"success\", extra: { ref: docRef } };\n },\n updateDoc: async ({ data }: { data?: any }) => {\n const path = getRef(database, cleanUrl) as DocumentReference;\n await path.update(data);\n return { result: data, status: \"success\", extra: { ref: path } };\n },\n deleteDoc: async () => {\n const path = getRef(database, cleanUrl) as DocumentReference;\n await path.delete();\n return { result: null, status: \"success\", extra: { ref: path } };\n },\n };\n\n return async (methodName: FirestoreMethodsUnion, data) => {\n try {\n events.onRequestStart();\n const { result, status, extra } = await methods[methodName](data);\n events.onRequestEnd();\n events.onResponseStart();\n onSuccess(result, status, extra, resolve);\n events.onResponseEnd();\n } catch (e) {\n events.onRequestEnd();\n events.onResponseStart();\n onError(e, \"error\", {}, resolve);\n events.onResponseEnd();\n }\n };\n};\n", "import { Database } from \"firebase-admin/database\";\nimport { RequestInstance } from \"@hyper-fetch/core\";\n\nimport { RealtimeDBMethodsUnion } from \"adapter/types\";\nimport { getStatus, isDocOrQuery } from \"utils\";\nimport { applyRealtimeAdminConstraints, getOrderedResultRealtime } from \"realtime/index\";\nimport {\n PermittedConstraints,\n RealtimeConstraintsUnion,\n RealtimePermittedMethods,\n SharedQueryConstraints,\n} from \"constraints\";\n\nexport const getRealtimeDbAdminMethods = <R extends RequestInstance>(\n request: R,\n database: Database,\n url: string,\n onSuccess,\n onError,\n resolve,\n events: { onRequestStart; onResponseEnd; onResponseStart; onRequestEnd },\n): ((\n methodName: RealtimeDBMethodsUnion,\n data: {\n constraints: PermittedConstraints<RealtimePermittedMethods, RealtimeConstraintsUnion | SharedQueryConstraints>[];\n data: any;\n options: Record<string, any>;\n },\n) => Promise<void>) => {\n const [fullUrl] = url.split(\"?\");\n const path = database.ref(fullUrl);\n const methods = {\n get: async ({ constraints }) => {\n const docOrQuery = isDocOrQuery(fullUrl);\n const q = applyRealtimeAdminConstraints(path, constraints);\n const snapshot = await q.get();\n const res = docOrQuery === \"doc\" ? snapshot.val() : getOrderedResultRealtime(snapshot);\n const status = getStatus(res);\n return { result: res, status, extra: { ref: path, snapshot } };\n },\n set: async ({ data }) => {\n await path.set(data);\n return { result: data, status: \"success\", extra: { ref: path } };\n },\n push: async ({ data }) => {\n const resRef = await path.push(data);\n return { result: { ...data, __key: resRef.key }, status: \"success\", extra: { ref: resRef, key: resRef.key } };\n },\n update: async ({ data }) => {\n await path.update(data);\n return { result: data, status: \"success\", extra: { ref: path } };\n },\n remove: async () => {\n await path.remove();\n return { result: null, status: \"success\", extra: { ref: path } };\n },\n };\n\n return async (methodName: RealtimeDBMethodsUnion, data) => {\n try {\n events.onRequestStart();\n const { result, status, extra } = await methods[methodName](data);\n events.onRequestEnd();\n events.onResponseStart();\n onSuccess(result, status, extra, resolve);\n events.onResponseEnd();\n } catch (e) {\n events.onRequestEnd();\n events.onResponseStart();\n onError(e, \"error\", {}, resolve);\n events.onResponseEnd();\n }\n };\n};\n"],
5
- "mappings": "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",
6
- "names": ["FirestoreMethods", "RealtimeDBMethods", "import_firestore", "SharedQueryConstraints", "RealtimeQueryConstraints", "FirestoreQueryConstraints", "import_sockets", "import_firestore"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/adapter/types/adapter.firestore.types.ts", "../src/adapter/types/adapter.realtime.types.ts", "../src/adapter/adapter.sockets.ts", "../src/firestore/firestore.sockets.ts", "../src/firestore/utils/result.utils.ts", "../src/firestore/utils/ref.utils.ts", "../src/constraints/firebase.constraints.ts", "../src/firestore/utils/constraints.utils.ts", "../src/utils/misc.ts", "../src/realtime/realtime.sockets.ts", "../src/realtime/utils/result.utils.ts", "../src/realtime/utils/constraints.utils.ts", "../src/adapter/adapter.ts", "../src/firestore/firestore.methods.ts", "../src/realtime/realtime.methods.ts"],
4
- "sourcesContent": ["import { AdapterType } from \"@hyper-fetch/core\";\nimport {\n Unsubscribe as FirestoreUnsubscribe,\n CollectionReference,\n DocumentReference,\n DocumentSnapshot,\n QuerySnapshot,\n} from \"firebase/firestore\";\nimport { SocketAdapterType } from \"@hyper-fetch/sockets\";\n\nimport {\n FirestoreConstraintsUnion,\n FirestorePermittedMethods,\n PermittedConstraints,\n SharedQueryConstraints,\n} from \"constraints\";\n\nexport type FirestoreSocketAdapterType = SocketAdapterType<\n never,\n FirestoreOnSnapshotExtra,\n { groupByChangeType?: boolean } & FirestoreQueryParams\n>;\n\nexport type FirestoreAdapterType =\n | AdapterType<Record<string, never>, \"getDoc\", FirestoreStatuses, FirestoreExtra, FirestoreQueryParams>\n | AdapterType<Record<string, never>, \"getDocs\", FirestoreStatuses, FirestoreGetDocsExtra, FirestoreQueryParams>\n | AdapterType<{ merge: boolean }, \"setDoc\", FirestoreStatuses, FirestoreRefOnlyExtra, Record<string, never>>\n | AdapterType<\n Record<string, never>,\n \"updateDoc\" | \"addDoc\" | \"deleteDoc\" | \"setDoc\",\n FirestoreStatuses,\n FirestoreRefOnlyExtra,\n Record<string, never>\n >;\n\nexport type FirestoreQueryParams = {\n constraints?: PermittedConstraints<FirestorePermittedMethods, FirestoreConstraintsUnion | SharedQueryConstraints>[];\n};\n\nexport enum FirestoreMethods {\n addDoc = \"addDoc\",\n getDoc = \"getDoc\",\n getDocs = \"getDocs\",\n setDoc = \"setDoc\",\n updateDoc = \"updateDoc\",\n deleteDoc = \"deleteDoc\",\n}\n\nexport type FirestoreMethodsUnion =\n | FirestoreMethods.addDoc\n | FirestoreMethods.getDoc\n | FirestoreMethods.getDocs\n | FirestoreMethods.setDoc\n | FirestoreMethods.updateDoc\n | FirestoreMethods.deleteDoc;\n\nexport type FirestoreExtra = {\n ref?: DocumentReference;\n snapshot?: DocumentSnapshot;\n};\n\nexport type FirestoreOnSnapshotExtra = {\n ref?: DocumentReference | CollectionReference;\n snapshot?: DocumentSnapshot;\n unsubscribe?: FirestoreUnsubscribe;\n groupedResult?: { added: DocumentSnapshot[]; modified: DocumentSnapshot[]; removed: DocumentSnapshot[] };\n};\n\nexport type FirestoreGetDocsExtra = {\n ref?: CollectionReference;\n snapshot?: QuerySnapshot;\n};\n\nexport type FirestoreRefOnlyExtra = {\n ref?: DocumentReference;\n};\n\nexport type FirestoreStatuses = \"success\" | \"error\" | \"emptyResource\";\n", "import { AdapterType } from \"@hyper-fetch/core\";\nimport { DatabaseReference, DataSnapshot } from \"firebase/database\";\nimport { SocketAdapterType } from \"@hyper-fetch/sockets\";\n\nimport {\n PermittedConstraints,\n RealtimeConstraintsUnion,\n RealtimePermittedMethods,\n SharedQueryConstraints,\n} from \"constraints\";\n\nexport type RealtimeSocketAdapterType = SocketAdapterType<\n never,\n RealtimeDbOnValueMethodExtra,\n { onlyOnce?: boolean } & RealtimeDBQueryParams\n>;\n\nexport type RealtimeDbAdapterType =\n | AdapterType<\n DefaultRealtimeDBAdapterOptions,\n \"get\",\n RealtimeDBStatuses,\n RealtimeDbGetMethodExtra,\n RealtimeDBQueryParams\n >\n | AdapterType<\n DefaultRealtimeDBAdapterOptions,\n \"push\",\n RealtimeDBStatuses,\n RealtimeDbPushMethodExtra,\n Record<string, never>\n >\n | AdapterType<\n DefaultRealtimeDBAdapterOptions,\n \"set\" | \"update\" | \"remove\",\n RealtimeDBStatuses,\n RealtimeDbDefaultExtra,\n Record<string, never>\n >;\n\nexport type DefaultRealtimeDBAdapterOptions = {\n priority?: number;\n};\n\nexport enum RealtimeDBMethods {\n set = \"set\",\n push = \"push\",\n update = \"update\",\n get = \"get\",\n remove = \"remove\",\n}\n\nexport type RealtimeDBMethodsUnion =\n | RealtimeDBMethods.set\n | RealtimeDBMethods.push\n | RealtimeDBMethods.update\n | RealtimeDBMethods.get\n | RealtimeDBMethods.remove;\n\nexport type RealtimeDBStatuses = \"success\" | \"error\" | \"emptyResource\";\nexport type RealtimeDbOnValueMethodExtra = {\n ref: DatabaseReference;\n snapshot: DataSnapshot;\n};\n\nexport type RealtimeDbGetMethodExtra = {\n ref: DatabaseReference;\n snapshot: DataSnapshot;\n};\n\nexport type RealtimeDbDefaultExtra = {\n ref: DatabaseReference;\n};\n\nexport type RealtimeDbPushMethodExtra = {\n ref: DatabaseReference;\n key: string;\n};\n\nexport type RealtimeDBQueryParams = {\n constraints?: PermittedConstraints<RealtimePermittedMethods, RealtimeConstraintsUnion | SharedQueryConstraints>[];\n};\n", "import { Firestore } from \"firebase-admin/firestore\";\n\nimport { FirebaseAdminDBTypes, FirebaseAdminSocketAdapterTypes } from \"./types\";\nimport { firestoreAdminSockets } from \"../firestore/firestore.sockets\";\nimport { realtimeSocketsAdmin } from \"../realtime/realtime.sockets\";\n\nexport const firebaseSocketsAdminAdapter = <T extends FirebaseAdminDBTypes>(\n database: T,\n): FirebaseAdminSocketAdapterTypes<T> => {\n if (database instanceof Firestore) {\n return firestoreAdminSockets(database) as unknown as FirebaseAdminSocketAdapterTypes<T>;\n }\n return realtimeSocketsAdmin(database) as unknown as FirebaseAdminSocketAdapterTypes<T>;\n};\n", "import { CollectionReference, DocumentReference, DocumentSnapshot, Firestore, Query } from \"firebase-admin/firestore\";\nimport { getSocketAdapterBindings } from \"@hyper-fetch/sockets\";\n\nimport { getGroupedResultFirestore, getOrderedResultFirestore, getRef, applyFireStoreAdminConstraints } from \"./utils\";\nimport { getStatus } from \"utils\";\nimport { FirestoreAdminSocketAdapterType } from \"adapter\";\n\nexport const firestoreAdminSockets = (database: Firestore): FirestoreAdminSocketAdapterType => {\n return (socket) => {\n const {\n open,\n connecting,\n reconnectionAttempts,\n listeners,\n removeListener,\n onReconnect,\n onListen,\n onEvent,\n onError,\n } = getSocketAdapterBindings(socket, { open: true });\n\n const connect = () => {\n throw new Error(\"Connect function is not implemented for Firestore Admin socket.\");\n };\n\n const disconnect = () => {\n throw new Error(\"Cannot disconnect from Firestore database socket. Use 'app.delete()' instead.\");\n };\n\n const reconnect = () => {\n onReconnect(disconnect, connect);\n };\n\n const listen: ReturnType<FirestoreAdminSocketAdapterType>[\"listen\"] = (listener, callback) => {\n const fullUrl = socket.url + listener.endpoint;\n const { options } = listener;\n let pathRef: DocumentReference | Query = getRef(database, fullUrl);\n if (pathRef instanceof CollectionReference) {\n pathRef = applyFireStoreAdminConstraints(pathRef, options?.constraints || []);\n }\n let unsubscribe = () => {};\n let unmount = () => {};\n let clearListeners = () => {};\n\n unsubscribe = pathRef.onSnapshot(\n (snapshot) => {\n const getSnapshotData = (s) => (s.data() ? { ...s.data(), __key: s.id } : null);\n const response =\n snapshot instanceof DocumentSnapshot ? getSnapshotData(snapshot) : getOrderedResultFirestore(snapshot);\n const status = getStatus(response);\n const groupedResult = options?.groupByChangeType === true ? getGroupedResultFirestore(snapshot) : null;\n const extra = { ref: pathRef, snapshot, unsubscribe, groupedResult, status };\n callback({ data: response, extra });\n onEvent(listener.endpoint, response, extra);\n },\n (error) => {\n onError(error);\n },\n );\n unmount = onListen(listener, callback, unsubscribe);\n clearListeners = () => {\n unsubscribe();\n unmount();\n };\n\n return clearListeners;\n };\n\n const emit = async () => {\n throw new Error(\"Cannot emit from Firestore database socket.\");\n };\n\n return {\n open,\n reconnectionAttempts,\n listeners,\n connecting,\n listen,\n removeListener,\n emit,\n connect,\n reconnect,\n disconnect,\n };\n };\n};\n", "export const getOrderedResultFirestore = (snapshot: any) => {\n const result = [];\n snapshot.docs.forEach((d) => {\n result.push({ ...d.data(), __key: d.id });\n });\n return result.length > 0 ? result : null;\n};\n\nexport const getGroupedResultFirestore = (snapshot: any) => {\n const groupedResult = { added: [], modified: [], removed: [] };\n snapshot.docChanges().forEach((change) => {\n groupedResult[change.type].push(change.doc.data());\n });\n return [...groupedResult.added, ...groupedResult.modified, ...groupedResult.removed].length > 0\n ? groupedResult\n : null;\n};\n", "import { CollectionReference, DocumentReference, Firestore } from \"firebase-admin/lib/firestore\";\n\nexport const getRef = (db: Firestore, fullUrl: string) => {\n const withoutSurroundingSlashes = fullUrl.replace(/^\\/|\\/$/g, \"\");\n const urlParts = withoutSurroundingSlashes.split(\"/\").map((element, index) => {\n return index % 2 === 0 ? [\"collection\", element] : [\"doc\", element];\n });\n\n return urlParts.reduce((_db, value) => {\n const [method, pathPart] = value;\n if (method === \"doc\" && \"doc\" in _db) {\n return _db.doc(pathPart);\n }\n if (method === \"collection\" && \"collection\" in _db) {\n return _db.collection(pathPart);\n }\n return _db;\n }, db as unknown as Firestore | CollectionReference | DocumentReference) as CollectionReference | DocumentReference;\n};\n", "import { OrderByDirection, WhereFilterOp } from \"firebase-admin/firestore\";\n\nexport enum SharedQueryConstraints {\n START_AT = \"startAt\",\n START_AFTER = \"startAfter\",\n END_AT = \"endAt\",\n END_BEFORE = \"endBefore\",\n}\nexport enum RealtimeQueryConstraints {\n ORDER_BY_CHILD = \"orderByChild\",\n ORDER_BY_KEY = \"orderByKey\",\n ORDER_BY_VALUE = \"orderByValue\",\n LIMIT_TO_FIRST = \"limitToFirst\",\n LIMIT_TO_LAST = \"limitToLast\",\n EQUAL_TO = \"equalTo\",\n}\n\nexport enum FirestoreQueryConstraints {\n WHERE = \"where\",\n ORDER_BY = \"orderBy\",\n LIMIT = \"limit\",\n}\n\nexport const $where = (fieldPath: string, opStr: WhereFilterOp, value: any) => {\n return {\n toString: () => `${FirestoreQueryConstraints.WHERE}_${fieldPath}${opStr}${value}`,\n type: FirestoreQueryConstraints.WHERE as const,\n values: [fieldPath, opStr, value],\n };\n};\n\nexport const $orderBy = (fieldPath: string, directionStr?: OrderByDirection) => {\n return {\n toString: () => `${FirestoreQueryConstraints.ORDER_BY}_${fieldPath}_${directionStr || \"\"}`,\n type: FirestoreQueryConstraints.ORDER_BY as const,\n values: [fieldPath, directionStr],\n };\n};\n\nexport const $limit = (num: number) => {\n return {\n toString: () => `${FirestoreQueryConstraints.LIMIT}_${num}`,\n type: FirestoreQueryConstraints.LIMIT as const,\n values: [num],\n };\n};\n\nconst startEndConstraintsImpl = (constraintType: SharedQueryConstraints) => {\n return (...docOrFields: any[]) => {\n if (docOrFields.length === 1 && docOrFields[0].query) {\n return {\n toString: () => `${constraintType}_${docOrFields[0].query?._query?.memoizedTarget?.memoizedCanonicalId}`,\n type: constraintType,\n values: [docOrFields],\n };\n }\n return {\n toString: () => `${constraintType}_${docOrFields}`,\n type: constraintType,\n values: [docOrFields],\n };\n };\n};\n\nexport const $startAt = startEndConstraintsImpl(SharedQueryConstraints.START_AT as const);\nexport const $startAfter = startEndConstraintsImpl(SharedQueryConstraints.START_AFTER as const);\n\nexport const $endAt = startEndConstraintsImpl(SharedQueryConstraints.END_AT as const);\nexport const $endBefore = startEndConstraintsImpl(SharedQueryConstraints.END_BEFORE as const);\n\nexport const $orderByChild = (path: string) => {\n return {\n toString: () => `${RealtimeQueryConstraints.ORDER_BY_CHILD}_${path}`,\n type: RealtimeQueryConstraints.ORDER_BY_CHILD as const,\n values: [path],\n };\n};\n\nexport const $orderByKey = () => {\n return {\n toString: () => `${RealtimeQueryConstraints.ORDER_BY_KEY}`,\n type: RealtimeQueryConstraints.ORDER_BY_KEY as const,\n values: [],\n };\n};\n\nexport const $orderByValue = () => {\n return {\n toString: () => `${RealtimeQueryConstraints.ORDER_BY_VALUE}`,\n type: RealtimeQueryConstraints.ORDER_BY_VALUE as const,\n values: [],\n };\n};\n\nexport const $limitToFirst = (num: number) => {\n return {\n toString: () => `${RealtimeQueryConstraints.LIMIT_TO_FIRST}_${num}`,\n type: RealtimeQueryConstraints.LIMIT_TO_FIRST as const,\n values: [num],\n };\n};\n\nexport const $limitToLast = (num: number) => {\n return {\n toString: () => `${RealtimeQueryConstraints.LIMIT_TO_LAST}_${num}`,\n type: RealtimeQueryConstraints.LIMIT_TO_LAST as const,\n values: [num],\n };\n};\n\nexport const $equalTo = (value: any) => {\n return {\n toString: () => `${RealtimeQueryConstraints.LIMIT_TO_LAST}_${value}`,\n type: RealtimeQueryConstraints.EQUAL_TO as const,\n values: [value],\n };\n};\n", "import { CollectionReference } from \"firebase-admin/lib/firestore\";\nimport { OrderByDirection } from \"firebase/firestore\";\n\nimport { FirestorePermittedMethods, FirestoreQueryConstraints, SharedQueryConstraints } from \"../../constraints\";\n\nexport const applyFireStoreAdminConstraint = (\n collectionRef: CollectionReference,\n { type, values }: FirestorePermittedMethods,\n) => {\n switch (type) {\n case FirestoreQueryConstraints.WHERE: {\n const [fieldPath, strOp, value] = values;\n return collectionRef.where(fieldPath, strOp, value);\n }\n case FirestoreQueryConstraints.ORDER_BY: {\n const [field, ord] = values;\n return collectionRef.orderBy(field, ord as OrderByDirection);\n }\n case FirestoreQueryConstraints.LIMIT: {\n const [limitValue] = values;\n return collectionRef.limit(limitValue);\n }\n case SharedQueryConstraints.START_AT: {\n const [docOrFields] = values;\n return collectionRef.startAt(docOrFields);\n }\n case SharedQueryConstraints.START_AFTER: {\n const [docOrFields] = values;\n return collectionRef.startAfter(docOrFields);\n }\n case SharedQueryConstraints.END_AT: {\n const [docOrFields] = values;\n return collectionRef.endAt(docOrFields);\n }\n case SharedQueryConstraints.END_BEFORE: {\n const [docOrFields] = values;\n return collectionRef.endBefore(docOrFields);\n }\n default:\n throw new Error(`Unknown method ${type}`);\n }\n};\n\nexport const applyFireStoreAdminConstraints = (\n collectionRef: CollectionReference,\n constraints: FirestorePermittedMethods[],\n) => {\n return constraints.reduce((collection, constraint) => {\n return applyFireStoreAdminConstraint(collection, constraint);\n }, collectionRef);\n};\n", "export const getStatus = (res: any) => {\n // Deliberate == instead of ===\n return (Array.isArray(res) && res.length === 0) || res == null ? \"emptyResource\" : \"success\";\n};\n\nexport const isDocOrQuery = (fullUrl: string): string => {\n const withoutSurroundingSlashes = fullUrl.replace(/^\\/|\\/$/g, \"\");\n const pathElements = withoutSurroundingSlashes.split(\"/\").length;\n return pathElements % 2 === 0 ? \"doc\" : \"query\";\n};\n", "import { Database } from \"firebase-admin/lib/database\";\nimport { getSocketAdapterBindings } from \"@hyper-fetch/sockets\";\n\nimport { applyRealtimeAdminConstraints, getOrderedResultRealtime } from \"./utils\";\nimport { getStatus, isDocOrQuery } from \"utils\";\nimport { RealtimeAdminOnValueMethodExtra, RealtimeAdminSocketAdapterType } from \"adapter\";\n\nexport const realtimeSocketsAdmin = (database: Database): RealtimeAdminSocketAdapterType => {\n return (socket) => {\n const {\n open,\n connecting,\n reconnectionAttempts,\n listeners,\n removeListener,\n onConnect,\n onReconnect,\n onDisconnect,\n onListen,\n onOpen,\n onClose,\n onEvent,\n onError,\n } = getSocketAdapterBindings(socket, { open: true });\n\n const connect = () => {\n const enabled = onConnect();\n\n if (enabled) {\n database.goOnline();\n onOpen();\n }\n };\n\n const disconnect = () => {\n database.goOffline();\n onDisconnect();\n onClose();\n };\n\n const reconnect = () => {\n onReconnect(disconnect, connect);\n };\n\n const listen: ReturnType<RealtimeAdminSocketAdapterType>[\"listen\"] = (listener, callback) => {\n const fullUrl = socket.url + listener.endpoint;\n const path = database.ref(fullUrl);\n const { options } = listener;\n const onlyOnce = options?.onlyOnce || false;\n const q = applyRealtimeAdminConstraints(path, options?.constraints || []);\n const method = onlyOnce === true ? \"once\" : \"on\";\n q[method](\n \"value\",\n (snapshot) => {\n const getSnapshotData = (s) => (s.val() ? { ...s.val(), __key: s.key } : null);\n const response =\n isDocOrQuery(fullUrl) === \"doc\" ? getSnapshotData(snapshot) : getOrderedResultRealtime(snapshot);\n const status = getStatus(response);\n const extra: RealtimeAdminOnValueMethodExtra = { ref: path, snapshot, status };\n callback({ data: response, extra });\n onEvent(listener.endpoint, response, extra);\n },\n (error) => {\n onError(error);\n },\n );\n const unsubscribe = () => q.off(\"value\");\n const unmount = onListen(listener, callback, unsubscribe);\n\n const clearListeners = () => {\n unsubscribe();\n unmount();\n };\n\n return clearListeners;\n };\n\n const emit = async () => {\n throw new Error(\"Cannot emit from Realtime database socket.\");\n };\n\n return {\n open,\n reconnectionAttempts,\n listeners,\n connecting,\n listen,\n removeListener,\n emit,\n connect,\n reconnect,\n disconnect,\n };\n };\n};\n", "export const getOrderedResultRealtime = (snapshot: any) => {\n const res = [];\n snapshot.forEach((child) => {\n res.push({ ...child.val(), __key: child.key });\n });\n return res.length > 0 ? res : null;\n};\n", "import { Reference } from \"firebase-admin/lib/database\";\n\nimport { RealtimePermittedMethods, RealtimeQueryConstraints, SharedQueryConstraints } from \"constraints\";\n\nexport const applyRealtimeAdminConstraint = (ref: Reference, { type, values }: RealtimePermittedMethods) => {\n switch (type) {\n case RealtimeQueryConstraints.ORDER_BY_CHILD: {\n const [value] = values;\n return ref.orderByChild(value);\n }\n case RealtimeQueryConstraints.ORDER_BY_KEY: {\n return ref.orderByKey();\n }\n case RealtimeQueryConstraints.ORDER_BY_VALUE: {\n return ref.orderByValue();\n }\n case SharedQueryConstraints.START_AT: {\n const [[value]] = values;\n return ref.startAt(value);\n }\n case SharedQueryConstraints.START_AFTER: {\n const [[value]] = values;\n return ref.startAfter(value);\n }\n case SharedQueryConstraints.END_AT: {\n const [[value]] = values;\n return ref.endAt(value);\n }\n case SharedQueryConstraints.END_BEFORE: {\n const [[value]] = values;\n return ref.endBefore(value);\n }\n case RealtimeQueryConstraints.LIMIT_TO_FIRST: {\n const [value] = values;\n return ref.limitToFirst(value);\n }\n case RealtimeQueryConstraints.LIMIT_TO_LAST: {\n const [value] = values;\n return ref.limitToLast(value);\n }\n case RealtimeQueryConstraints.EQUAL_TO: {\n const [value] = values;\n return ref.equalTo(value);\n }\n default:\n throw new Error(`Unknown method ${type}`);\n }\n};\n\nexport const applyRealtimeAdminConstraints = (ref: Reference, constraints: RealtimePermittedMethods[]) => {\n return constraints.reduce((collection, constraint) => {\n return applyRealtimeAdminConstraint(collection, constraint);\n }, ref);\n};\n", "import { getAdapterBindings, ResponseReturnType } from \"@hyper-fetch/core\";\nimport { Firestore } from \"firebase-admin/firestore\";\n\nimport {\n FirestoreAdapterType,\n FirestoreMethodsUnion,\n FirestoreQueryParams,\n FirebaseAdminAdapterTypes,\n FirebaseAdminDBTypes,\n RealtimeDbAdapterType,\n RealtimeDBMethodsUnion,\n RealtimeDBQueryParams,\n FirestoreMethods,\n RealtimeDBMethods,\n} from \"adapter\";\nimport { getFirestoreAdminMethods } from \"../firestore\";\nimport { getRealtimeDbAdminMethods } from \"../realtime\";\n\nexport const firebaseAdminAdapter =\n <T extends FirebaseAdminDBTypes>(database: T) =>\n () => {\n const adapter: FirebaseAdminAdapterTypes<T> = async (request, requestId) => {\n const { fullUrl, onSuccess, onError, onRequestStart, onResponseEnd, onResponseStart, onRequestEnd } =\n await getAdapterBindings<RealtimeDbAdapterType | FirestoreAdapterType>(request, requestId, \"error\", {});\n return new Promise<ResponseReturnType<any, any, FirebaseAdminAdapterTypes<T>>>((resolve) => {\n if (database instanceof Firestore) {\n const {\n method = FirestoreMethods.getDocs,\n queryParams,\n data,\n options,\n }: { method: FirestoreMethodsUnion; queryParams: FirestoreQueryParams; data; options } = request;\n const availableMethods = getFirestoreAdminMethods(request, database, fullUrl, onSuccess, onError, resolve, {\n onRequestStart,\n onResponseEnd,\n onResponseStart,\n onRequestEnd,\n });\n if (!Object.values(FirestoreMethods).includes(method)) {\n throw new Error(`Cannot find method ${method} in Firestore available methods.`);\n }\n availableMethods(method, {\n constraints: queryParams?.constraints ? queryParams.constraints : [],\n data,\n options,\n });\n } else {\n const {\n method = RealtimeDBMethods.get,\n queryParams,\n data,\n options,\n }: { method: RealtimeDBMethodsUnion; queryParams: RealtimeDBQueryParams; data; options } = request;\n const availableMethods = getRealtimeDbAdminMethods(request, database, fullUrl, onSuccess, onError, resolve, {\n onRequestStart,\n onResponseEnd,\n onResponseStart,\n onRequestEnd,\n });\n if (!Object.values(RealtimeDBMethods).includes(method)) {\n throw new Error(`Cannot find method ${method} in Realtime database available methods.`);\n }\n availableMethods(method, {\n constraints: queryParams?.constraints ? queryParams.constraints : [],\n options,\n data,\n });\n }\n });\n };\n return adapter;\n };\n", "import { CollectionReference, DocumentReference, DocumentSnapshot, Firestore } from \"firebase-admin/firestore\";\nimport { RequestInstance } from \"@hyper-fetch/core\";\n\nimport { FirestoreMethodsUnion } from \"adapter\";\nimport { getStatus } from \"utils\";\nimport {\n FirestoreConstraintsUnion,\n FirestorePermittedMethods,\n PermittedConstraints,\n SharedQueryConstraints,\n} from \"constraints\";\nimport { applyFireStoreAdminConstraints, getOrderedResultFirestore, getRef } from \"./utils\";\n\nexport const getFirestoreAdminMethods = <R extends RequestInstance>(\n request: R,\n database: Firestore,\n url: string,\n onSuccess,\n onError,\n resolve,\n events: { onRequestStart; onResponseEnd; onResponseStart; onRequestEnd },\n): ((\n methodName: FirestoreMethodsUnion,\n data: {\n constraints?: PermittedConstraints<FirestorePermittedMethods, FirestoreConstraintsUnion | SharedQueryConstraints>[];\n data?: any;\n options?: Record<string, any>;\n },\n) => Promise<void>) => {\n const [cleanUrl] = url.split(\"?\");\n const methods = {\n getDoc: async () => {\n const path = getRef(database, cleanUrl);\n const snapshot = (await path.get()) as DocumentSnapshot;\n const result = snapshot.data() ? { ...snapshot.data(), __key: snapshot.id } : null;\n const status = result ? \"success\" : \"emptyResource\";\n return { result, status, extra: { ref: path, snapshot } };\n },\n getDocs: async ({ constraints = [] }) => {\n const path = getRef(database, cleanUrl) as CollectionReference;\n const query = applyFireStoreAdminConstraints(path, constraints);\n const querySnapshot = await query.get();\n const result = getOrderedResultFirestore(querySnapshot);\n const status = getStatus(result);\n\n return { result, status, extra: { ref: path, snapshot: querySnapshot } };\n },\n setDoc: async ({ data, options }: { data?: any; options?: Record<string, any> }) => {\n const path = getRef(database, cleanUrl) as DocumentReference;\n const merge = options?.merge === true;\n const res = await path.set(data, { merge });\n return { result: res, status: \"success\", extra: { ref: path } };\n },\n addDoc: async ({ data }: { data?: any }) => {\n const ref = getRef(database, cleanUrl) as CollectionReference;\n const docRef = await ref.add(data);\n return { result: { ...data, __key: docRef.id }, status: \"success\", extra: { ref: docRef } };\n },\n updateDoc: async ({ data }: { data?: any }) => {\n const path = getRef(database, cleanUrl) as DocumentReference;\n await path.update(data);\n return { result: data, status: \"success\", extra: { ref: path } };\n },\n deleteDoc: async () => {\n const path = getRef(database, cleanUrl) as DocumentReference;\n await path.delete();\n return { result: null, status: \"success\", extra: { ref: path } };\n },\n };\n\n return async (methodName: FirestoreMethodsUnion, data) => {\n try {\n events.onRequestStart();\n const { result, status, extra } = await methods[methodName](data);\n events.onRequestEnd();\n events.onResponseStart();\n onSuccess(result, status, extra, resolve);\n events.onResponseEnd();\n } catch (e) {\n events.onRequestEnd();\n events.onResponseStart();\n onError(e, \"error\", {}, resolve);\n events.onResponseEnd();\n }\n };\n};\n", "import { Database } from \"firebase-admin/database\";\nimport { RequestInstance } from \"@hyper-fetch/core\";\n\nimport { RealtimeDBMethodsUnion } from \"adapter/types\";\nimport { getStatus, isDocOrQuery } from \"utils\";\nimport { applyRealtimeAdminConstraints, getOrderedResultRealtime } from \"realtime/index\";\nimport {\n PermittedConstraints,\n RealtimeConstraintsUnion,\n RealtimePermittedMethods,\n SharedQueryConstraints,\n} from \"constraints\";\n\nexport const getRealtimeDbAdminMethods = <R extends RequestInstance>(\n request: R,\n database: Database,\n url: string,\n onSuccess,\n onError,\n resolve,\n events: { onRequestStart; onResponseEnd; onResponseStart; onRequestEnd },\n): ((\n methodName: RealtimeDBMethodsUnion,\n data: {\n constraints: PermittedConstraints<RealtimePermittedMethods, RealtimeConstraintsUnion | SharedQueryConstraints>[];\n data: any;\n options: Record<string, any>;\n },\n) => Promise<void>) => {\n const [fullUrl] = url.split(\"?\");\n const path = database.ref(fullUrl);\n const methods = {\n get: async ({ constraints }) => {\n const docOrQuery = isDocOrQuery(fullUrl);\n const q = applyRealtimeAdminConstraints(path, constraints);\n const snapshot = await q.get();\n const res = docOrQuery === \"doc\" ? snapshot.val() : getOrderedResultRealtime(snapshot);\n const status = getStatus(res);\n return { result: res, status, extra: { ref: path, snapshot } };\n },\n set: async ({ data }) => {\n await path.set(data);\n return { result: data, status: \"success\", extra: { ref: path } };\n },\n push: async ({ data }) => {\n const resRef = await path.push(data);\n return { result: { ...data, __key: resRef.key }, status: \"success\", extra: { ref: resRef, key: resRef.key } };\n },\n update: async ({ data }) => {\n await path.update(data);\n return { result: data, status: \"success\", extra: { ref: path } };\n },\n remove: async () => {\n await path.remove();\n return { result: null, status: \"success\", extra: { ref: path } };\n },\n };\n\n return async (methodName: RealtimeDBMethodsUnion, data) => {\n try {\n events.onRequestStart();\n const { result, status, extra } = await methods[methodName](data);\n events.onRequestEnd();\n events.onResponseStart();\n onSuccess(result, status, extra, resolve);\n events.onResponseEnd();\n } catch (e) {\n events.onRequestEnd();\n events.onResponseStart();\n onError(e, \"error\", {}, resolve);\n events.onResponseEnd();\n }\n };\n};\n"],
5
- "mappings": "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",
6
- "names": ["FirestoreMethods", "RealtimeDBMethods", "Firestore", "SharedQueryConstraints", "RealtimeQueryConstraints", "FirestoreQueryConstraints", "getSocketAdapterBindings", "getSocketAdapterBindings", "Firestore", "Firestore", "Firestore"]
7
- }