@lpdjs/firestore-repo-service 2.2.1 → 2.2.3
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.
- package/README.md +111 -529
- package/dist/{index-BJQXYHTC.d.ts → index-Bw1fvzu5.d.ts} +8 -4
- package/dist/{index-BjH87AI4.d.cts → index-bqqrGjxe.d.cts} +8 -4
- package/dist/index.cjs +3 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/servers/admin/index.cjs +2 -2
- package/dist/servers/admin/index.cjs.map +1 -1
- package/dist/servers/admin/index.d.cts +3 -2
- package/dist/servers/admin/index.d.ts +3 -2
- package/dist/servers/admin/index.js +2 -2
- package/dist/servers/admin/index.js.map +1 -1
- package/dist/servers/crud/index.cjs +2 -2
- package/dist/servers/crud/index.cjs.map +1 -1
- package/dist/servers/crud/index.d.cts +4 -3
- package/dist/servers/crud/index.d.ts +4 -3
- package/dist/servers/crud/index.js +2 -2
- package/dist/servers/crud/index.js.map +1 -1
- package/dist/servers/index.cjs +6 -6
- package/dist/servers/index.cjs.map +1 -1
- package/dist/servers/index.d.cts +4 -3
- package/dist/servers/index.d.ts +4 -3
- package/dist/servers/index.js +6 -6
- package/dist/servers/index.js.map +1 -1
- package/dist/{types-CYVwoOQx.d.cts → types-DKgWRTDf.d.cts} +7 -3
- package/dist/{types-CYVwoOQx.d.ts → types-DKgWRTDf.d.ts} +7 -3
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as zod from 'zod';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
+
import { HttpsOptions } from 'firebase-functions/v2/https';
|
|
3
4
|
import { DocumentReference, Firestore, DocumentSnapshot, WhereFilterOp, Query, CollectionReference, WriteBatch, Transaction } from 'firebase-admin/firestore';
|
|
4
5
|
|
|
5
6
|
/**
|
|
@@ -600,15 +601,18 @@ declare function generateOpenAPISpec(registry: CrudRepoRegistry, basePath: strin
|
|
|
600
601
|
|
|
601
602
|
/**
|
|
602
603
|
* Extracts the model type `T` from a `ConfiguredRepository`.
|
|
604
|
+
* Uses a two-step inference so it survives intersection types
|
|
605
|
+
* (e.g. `RepositoryConfig<...> & { schema: ZodObject }` produced by
|
|
606
|
+
* `createRepositoryConfig(schema)`).
|
|
603
607
|
* @internal
|
|
604
608
|
*/
|
|
605
|
-
type RepoModelType<TRepo> = TRepo extends ConfiguredRepository<RepositoryConfig<infer T, any, any, any, any, any, any, any, any, any
|
|
609
|
+
type RepoModelType<TRepo> = TRepo extends ConfiguredRepository<infer C> ? C extends RepositoryConfig<infer T, any, any, any, any, any, any, any, any, any> ? T : never : never;
|
|
606
610
|
/**
|
|
607
611
|
* Extracts the auto-managed system keys (documentKey, pathKey, createdKey, updatedKey)
|
|
608
612
|
* from a `ConfiguredRepository`. These keys must never appear in create/update payloads.
|
|
609
613
|
* @internal
|
|
610
614
|
*/
|
|
611
|
-
type RepoSystemKeys<TRepo> = TRepo extends ConfiguredRepository<RepositoryConfig<any, any, any, any, any, any, infer TDocKey, infer TPathKey, infer TCreatedKey, infer TUpdatedKey
|
|
615
|
+
type RepoSystemKeys<TRepo> = TRepo extends ConfiguredRepository<infer C> ? C extends RepositoryConfig<any, any, any, any, any, any, infer TDocKey, infer TPathKey, infer TCreatedKey, infer TUpdatedKey> ? (TDocKey extends string ? TDocKey : never) | (TPathKey extends string ? TPathKey : never) | (TCreatedKey extends string ? TCreatedKey : never) | (TUpdatedKey extends string ? TUpdatedKey : never) : never : never;
|
|
612
616
|
/**
|
|
613
617
|
* `true` when `T` is `any` (the `0 extends (1 & T)` trick).
|
|
614
618
|
* @internal
|
|
@@ -820,7 +824,7 @@ interface CrudServerOptions<TRepos extends Record<string, ConfiguredRepository<a
|
|
|
820
824
|
* export const crud = onRequest(handler.httpsOptions!, handler);
|
|
821
825
|
* ```
|
|
822
826
|
*/
|
|
823
|
-
httpsOptions?:
|
|
827
|
+
httpsOptions?: HttpsOptions;
|
|
824
828
|
}
|
|
825
829
|
/**
|
|
826
830
|
* Standard API response wrapper.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as zod from 'zod';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
+
import { HttpsOptions } from 'firebase-functions/v2/https';
|
|
3
4
|
import { DocumentReference, Firestore, DocumentSnapshot, WhereFilterOp, Query, CollectionReference, WriteBatch, Transaction } from 'firebase-admin/firestore';
|
|
4
5
|
|
|
5
6
|
/**
|
|
@@ -600,15 +601,18 @@ declare function generateOpenAPISpec(registry: CrudRepoRegistry, basePath: strin
|
|
|
600
601
|
|
|
601
602
|
/**
|
|
602
603
|
* Extracts the model type `T` from a `ConfiguredRepository`.
|
|
604
|
+
* Uses a two-step inference so it survives intersection types
|
|
605
|
+
* (e.g. `RepositoryConfig<...> & { schema: ZodObject }` produced by
|
|
606
|
+
* `createRepositoryConfig(schema)`).
|
|
603
607
|
* @internal
|
|
604
608
|
*/
|
|
605
|
-
type RepoModelType<TRepo> = TRepo extends ConfiguredRepository<RepositoryConfig<infer T, any, any, any, any, any, any, any, any, any
|
|
609
|
+
type RepoModelType<TRepo> = TRepo extends ConfiguredRepository<infer C> ? C extends RepositoryConfig<infer T, any, any, any, any, any, any, any, any, any> ? T : never : never;
|
|
606
610
|
/**
|
|
607
611
|
* Extracts the auto-managed system keys (documentKey, pathKey, createdKey, updatedKey)
|
|
608
612
|
* from a `ConfiguredRepository`. These keys must never appear in create/update payloads.
|
|
609
613
|
* @internal
|
|
610
614
|
*/
|
|
611
|
-
type RepoSystemKeys<TRepo> = TRepo extends ConfiguredRepository<RepositoryConfig<any, any, any, any, any, any, infer TDocKey, infer TPathKey, infer TCreatedKey, infer TUpdatedKey
|
|
615
|
+
type RepoSystemKeys<TRepo> = TRepo extends ConfiguredRepository<infer C> ? C extends RepositoryConfig<any, any, any, any, any, any, infer TDocKey, infer TPathKey, infer TCreatedKey, infer TUpdatedKey> ? (TDocKey extends string ? TDocKey : never) | (TPathKey extends string ? TPathKey : never) | (TCreatedKey extends string ? TCreatedKey : never) | (TUpdatedKey extends string ? TUpdatedKey : never) : never : never;
|
|
612
616
|
/**
|
|
613
617
|
* `true` when `T` is `any` (the `0 extends (1 & T)` trick).
|
|
614
618
|
* @internal
|
|
@@ -820,7 +824,7 @@ interface CrudServerOptions<TRepos extends Record<string, ConfiguredRepository<a
|
|
|
820
824
|
* export const crud = onRequest(handler.httpsOptions!, handler);
|
|
821
825
|
* ```
|
|
822
826
|
*/
|
|
823
|
-
httpsOptions?:
|
|
827
|
+
httpsOptions?: HttpsOptions;
|
|
824
828
|
}
|
|
825
829
|
/**
|
|
826
830
|
* Standard API response wrapper.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lpdjs/firestore-repo-service",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.3",
|
|
4
4
|
"description": "⚡ Type-safe Firestore ORM with auto-generated repositories, advanced queries, relations with typed select, pagination with include, batch/bulk operations, aggregations and transactions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|