Skip to content

Commit 2d85525

Browse files
committed
fix: 🐛 Removed admin adapters from hyper-fetch/firebase package
1 parent ed5eb0a commit 2d85525

File tree

69 files changed

+83
-990
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+83
-990
lines changed

.husky/pre-commit

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ yarn commitlint --edit "$1"
55
yarn nx run-many --target=build --all --exclude=next,reactjs
66
yarn nx run-many --target=lint --all --exclude=next,reactjs --parallel=10
77
yarn nx run-many --target=typecheck --all --parallel=10
8-
yarn nx run-many --target=tests --all --exclude=adapter-firebase
8+
yarn nx run-many --target=tests --all --exclude=adapter-firebase,adapter-firebase-admin

documentation/docs/documentation/05-adapters/firebase/01-introduction.mdx

+12-5
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,18 @@ title: Firebase introduction
44
sidebar_label: Introduction
55
---
66

7-
Hyper Fetch `firebase` package is a complete integration of `realtime database` and `firestore`, both for frontend and
8-
backend. It offers single, unified approach for all of them.
7+
Hyper Fetch `firebase` packages offer complete integration of `realtime database` and `firestore`, both for frontend and
8+
backend, with a single, unified approach for all of them.
99

1010
## Getting Started
1111

1212
In order to start using the firebase adapter, you have to initialize the firestore/realtime database and set the correct
1313
adapter on the `client`.
1414

15-
There are two adapters to chose from:
15+
There are two subpackage to chose from:
1616

17-
1. `firebaseAdapter` - for working with web realtime and firestore databases.
18-
2. `firebaseAdminAdapter` - for admin versions of the packages.
17+
1. `@hyper-fetch/firebase` - for admin versions of the packages.
18+
2. `@hyper-fetch/firebase-admin` - for working with web realtime and firestore databases.
1919

2020
```tsx
2121
import { firebaseAdapter } from "@hyper-fetch/firebase";
@@ -39,6 +39,13 @@ const getReq = client.createRequest<Tea[]>()({
3939
const { data, status, extra, success, error } = await getReq.send();
4040
```
4141

42+
In case of firebase admin, the only difference is in the import:
43+
44+
```tsx
45+
import { firebaseAdminAdapter } from "@hyper-fetch/firebase-admin";
46+
...
47+
```
48+
4249
Resulting `response` is an object that contains the following properties:
4350

4451
1. `data` - data returned from the database

packages/adapter-firebase-admin/__tests__/features/firestore/shared/methods/on-snapshot.test.suite.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { Tea } from "../../../../utils";
88

99
export const onSnapshotTestSuite = (
1010
adapter: FirebaseAdminSocketAdapterTypes<any>,
11-
coreAdapter: FirebaseAdminAdapterTypes<any>,
11+
coreAdapter: () => FirebaseAdminAdapterTypes<any>,
1212
) => {
1313
const newData = { origin: "Poland", type: "Green", year: 2043, name: "Pou Ran Do Cha", amount: 100 } as Tea;
1414
let spy = jest.fn();

packages/adapter-firebase-admin/src/firestore/utils/constraints.utils.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { CollectionReference, DocumentReference, Firestore } from "firebase-admin/lib/firestore";
1+
import { CollectionReference } from "firebase-admin/lib/firestore";
22
import { OrderByDirection } from "firebase/firestore";
33

44
import { FirestorePermittedMethods, FirestoreQueryConstraints, SharedQueryConstraints } from "../../constraints";

packages/adapter-firebase/__tests__/features/firestore/admin/constraints.admin.spec.ts

-23
This file was deleted.

packages/adapter-firebase/__tests__/features/firestore/admin/methods.admin.spec.ts

-20
This file was deleted.

packages/adapter-firebase/__tests__/features/firestore/admin/sockets.base.spec.ts

-17
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,4 @@
1-
import {
2-
firebaseAdminAdapter,
3-
firebaseAdapter,
4-
FirebaseBrowserAdapterTypes,
5-
FirebaseAdminAdapterTypes,
6-
FirebaseAdminSocketAdapterTypes,
7-
FirebaseBrowserSocketAdapterTypes,
8-
} from "adapter";
1+
import { firebaseAdapter, FirebaseBrowserAdapterTypes, FirebaseBrowserSocketAdapterTypes } from "adapter";
92
import { addDocTestSuite } from "./methods/add-doc.test.suite";
103
import { deleteDocTestSuite } from "./methods/delete-doc.test.suite";
114
import { getDocTestSuite } from "./methods/get-doc.test.suite";
@@ -14,9 +7,7 @@ import { setDocTestSuite } from "./methods/set-doc.test.suite";
147
import { updateDocTestSuite } from "./methods/update-doc.test.suite";
158
import { onSnapshotTestSuite } from "./methods/on-snapshot.test.suite";
169

17-
export const methodsSharedTestCases = (
18-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
19-
) => {
10+
export const methodsSharedTestCases = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
2011
addDocTestSuite(adapterFunction);
2112
deleteDocTestSuite(adapterFunction);
2213
getDocTestSuite(adapterFunction);
@@ -26,8 +17,8 @@ export const methodsSharedTestCases = (
2617
};
2718

2819
export const socketsMethodsSharedTestCases = (
29-
adapter: FirebaseAdminSocketAdapterTypes<any> | FirebaseBrowserSocketAdapterTypes<any>,
30-
coreAdapter: () => FirebaseBrowserAdapterTypes<any> | FirebaseAdminAdapterTypes<any>,
20+
adapter: FirebaseBrowserSocketAdapterTypes<any>,
21+
coreAdapter: () => FirebaseBrowserAdapterTypes<any>,
3122
) => {
3223
onSnapshotTestSuite(adapter, coreAdapter);
3324
};

packages/adapter-firebase/__tests__/features/firestore/shared/methods/add-doc.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
4-
import { Tea } from "../../../../utils/seed/seed.data";
3+
import { firebaseAdapter } from "adapter";
4+
import { Tea } from "../../../../utils";
55

6-
export const addDocTestSuite = (
7-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
8-
) => {
6+
export const addDocTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
97
describe("addDoc", () => {
108
it("should allow for adding data to a list", async () => {
119
const newData = { origin: "Poland", type: "Green", year: 2023, name: "Pou Ran Do Cha", amount: 100 } as Tea;

packages/adapter-firebase/__tests__/features/firestore/shared/methods/delete-doc.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
4-
import { Tea } from "../../../../utils/seed/seed.data";
3+
import { firebaseAdapter } from "adapter";
4+
import { Tea } from "../../../../utils";
55
import { testLifecycleEvents } from "../../../../shared/request-events.shared";
66

7-
export const deleteDocTestSuite = (
8-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
9-
) => {
7+
export const deleteDocTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
108
describe("deleteDoc", () => {
119
it("should allow for removing data", async () => {
1210
const client = new Client({ url: "teas/" }).setAdapter(adapterFunction());

packages/adapter-firebase/__tests__/features/firestore/shared/methods/get-doc.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
4-
import { Tea } from "../../../../utils/seed/seed.data";
3+
import { firebaseAdapter } from "adapter";
4+
import { Tea } from "../../../../utils";
55
import { testLifecycleEvents } from "../../../../shared/request-events.shared";
66

7-
export const getDocTestSuite = (
8-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
9-
) => {
7+
export const getDocTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
108
describe("getDoc", () => {
119
it("should return data available for endpoint", async () => {
1210
const client = new Client({ url: "teas/" }).setAdapter(adapterFunction());

packages/adapter-firebase/__tests__/features/firestore/shared/methods/get-docs.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
4-
import { Tea } from "../../../../utils/seed/seed.data";
3+
import { firebaseAdapter } from "adapter";
4+
import { Tea } from "../../../../utils";
55
import { testLifecycleEvents } from "../../../../shared/request-events.shared";
66

7-
export const getDocsTestSuite = (
8-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
9-
) => {
7+
export const getDocsTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
108
describe("getDocs", () => {
119
it("should return data available for endpoint", async () => {
1210
const client = new Client({ url: "teas/" }).setAdapter(adapterFunction());

packages/adapter-firebase/__tests__/features/firestore/shared/methods/on-snapshot.test.suite.ts

+3-8
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,13 @@ import { Client } from "@hyper-fetch/core";
22
import { Socket } from "@hyper-fetch/sockets";
33
import waitForExpect from "wait-for-expect";
44

5-
import {
6-
FirebaseAdminAdapterTypes,
7-
FirebaseBrowserAdapterTypes,
8-
FirebaseBrowserSocketAdapterTypes,
9-
FirebaseAdminSocketAdapterTypes,
10-
} from "adapter";
5+
import { FirebaseBrowserAdapterTypes, FirebaseBrowserSocketAdapterTypes } from "adapter";
116
import { $where } from "constraints";
127
import { Tea } from "../../../../utils";
138

149
export const onSnapshotTestSuite = (
15-
adapter: FirebaseAdminSocketAdapterTypes<any> | FirebaseBrowserSocketAdapterTypes<any>,
16-
coreAdapter: () => FirebaseBrowserAdapterTypes<any> | FirebaseAdminAdapterTypes<any>,
10+
adapter: FirebaseBrowserSocketAdapterTypes<any>,
11+
coreAdapter: () => FirebaseBrowserAdapterTypes<any>,
1712
) => {
1813
const newData = { origin: "Poland", type: "Green", year: 2043, name: "Pou Ran Do Cha", amount: 100 } as Tea;
1914
let spy = jest.fn();

packages/adapter-firebase/__tests__/features/firestore/shared/methods/set-doc.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { Tea } from "../../../../utils/seed/seed.data";
4-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
3+
import { Tea } from "../../../../utils";
4+
import { firebaseAdapter } from "adapter";
55
import { testLifecycleEvents } from "../../../../shared/request-events.shared";
66

7-
export const setDocTestSuite = (
8-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
9-
) => {
7+
export const setDocTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
108
describe("setDoc", () => {
119
it("should set data", async () => {
1210
const newData = { origin: "Poland", type: "Green", year: 2023, name: "Pou Ran Do Cha", amount: 10 } as Tea;

packages/adapter-firebase/__tests__/features/firestore/shared/methods/update-doc.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
4-
import { Tea } from "../../../../utils/seed/seed.data";
3+
import { firebaseAdapter } from "adapter";
4+
import { Tea } from "../../../../utils";
55
import { testLifecycleEvents } from "../../../../shared/request-events.shared";
66

7-
export const updateDocTestSuite = (
8-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
9-
) => {
7+
export const updateDocTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
108
describe("updateDoc", () => {
119
it("should allow for updating data", async () => {
1210
const newData = { name: "Pou Ran Do Cha", amount: 100, year: 966 } as Tea;

packages/adapter-firebase/__tests__/features/realtime/admin/constraints.admin.spec.ts

-15
This file was deleted.

packages/adapter-firebase/__tests__/features/realtime/admin/methods.admin.spec.ts

-25
This file was deleted.

packages/adapter-firebase/__tests__/features/realtime/admin/sockets.base.spec.ts

-15
This file was deleted.

packages/adapter-firebase/__tests__/features/realtime/shared/constraints.shared.tests.ts

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { $endAt, $limitToFirst, $orderByChild, $startAt, firebaseAdminAdapter, firebaseAdapter } from "../../../../src";
4-
import { Tea } from "../../../utils/seed/seed.data";
3+
import { $endAt, $limitToFirst, $orderByChild, $startAt } from "constraints";
4+
import { firebaseAdapter } from "adapter";
5+
import { Tea } from "../../../utils";
56

6-
export const constraintsSharedTestCases = (
7-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
8-
) => {
7+
export const constraintsSharedTestCases = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
98
describe("Ordering", () => {
109
it("Should allow ordering by child", async () => {
1110
const client = new Client({ url: "teas/" }).setAdapter(adapterFunction());
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,12 @@
1-
import {
2-
firebaseAdminAdapter,
3-
firebaseAdapter,
4-
FirebaseAdminAdapterTypes,
5-
FirebaseBrowserAdapterTypes,
6-
FirebaseBrowserSocketAdapterTypes,
7-
FirebaseAdminSocketAdapterTypes,
8-
} from "adapter";
1+
import { firebaseAdapter, FirebaseBrowserAdapterTypes, FirebaseBrowserSocketAdapterTypes } from "adapter";
92
import { getTestSuite } from "./methods/get.test.suite";
103
import { setTestSuite } from "./methods/set.test.suite";
114
import { pushTestSuite } from "./methods/push.test.suite";
125
import { updateTestSuite } from "./methods/update.test.suite";
136
import { removeTestSuite } from "./methods/remove.test.suite";
147
import { onValueTestSuite } from "./methods/on-value.test.suite";
158

16-
export const methodsSharedTestCases = (
17-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
18-
) => {
9+
export const methodsSharedTestCases = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
1910
getTestSuite(adapterFunction);
2011
setTestSuite(adapterFunction);
2112
pushTestSuite(adapterFunction);
@@ -26,8 +17,8 @@ export const methodsSharedTestCases = (
2617
export const socketsMethodsSharedTestCases = (
2718
db,
2819
seedDbMethod: (db) => Promise<void>,
29-
socketsAdapter: (database) => FirebaseBrowserSocketAdapterTypes<any> | FirebaseAdminSocketAdapterTypes<any>,
30-
coreAdapter: (database) => () => FirebaseBrowserAdapterTypes<any> | FirebaseAdminAdapterTypes<any>,
20+
socketsAdapter: (database) => FirebaseBrowserSocketAdapterTypes<any>,
21+
coreAdapter: (database) => () => FirebaseBrowserAdapterTypes<any>,
3122
) => {
3223
onValueTestSuite(db, seedDbMethod, socketsAdapter, coreAdapter);
3324
};

packages/adapter-firebase/__tests__/features/realtime/shared/methods/get.test.suite.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { Client } from "@hyper-fetch/core";
22

3-
import { firebaseAdminAdapter, firebaseAdapter } from "adapter";
3+
import { firebaseAdapter } from "adapter";
44
import { testLifecycleEvents } from "../../../../shared/request-events.shared";
5-
import { Tea } from "../../../../utils/seed/seed.data";
5+
import { Tea } from "../../../../utils";
66

7-
export const getTestSuite = (
8-
adapterFunction: () => ReturnType<typeof firebaseAdapter> | ReturnType<typeof firebaseAdminAdapter>,
9-
) => {
7+
export const getTestSuite = (adapterFunction: () => ReturnType<typeof firebaseAdapter>) => {
108
describe("get", () => {
119
let client = new Client({ url: "teas/" }).setAdapter(adapterFunction());
1210
let clientBees = new Client({ url: "bees/" }).setAdapter(adapterFunction());

0 commit comments

Comments
 (0)