@infrab4a/connect 1.0.0-beta.19 → 1.0.0-beta.21
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/bundles/infrab4a-connect.umd.js +356 -60
- package/bundles/infrab4a-connect.umd.js.map +1 -1
- package/domain/catalog/models/types/product-review.type.d.ts +10 -8
- package/domain/catalog/repositories/product.repository.d.ts +8 -1
- package/domain/generic/repository/types/repository-find-filters.type.d.ts +1 -1
- package/esm2015/domain/catalog/models/types/product-review.type.js +1 -1
- package/esm2015/domain/catalog/repositories/product.repository.js +1 -1
- package/esm2015/domain/generic/repository/types/repository-find-filters.type.js +1 -1
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +30 -2
- package/esm2015/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.js +6 -2
- package/esm2015/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.js +2 -2
- package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +190 -35
- package/esm2015/infra/hasura-graphql/types/graphql.repository.type.js +1 -1
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +1 -1
- package/fesm2015/infrab4a-connect.js +222 -35
- package/fesm2015/infrab4a-connect.js.map +1 -1
- package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +3 -1
- package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +2 -2
- package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +2 -2
- package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +11 -1
- package/infra/hasura-graphql/types/graphql.repository.type.d.ts +2 -2
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { FirebaseFirestore } from '@firebase/firestore-types';
|
|
2
|
-
import { Product, ProductRepository, Shops } from '../../../../../domain';
|
|
2
|
+
import { Product, ProductRepository, ReviewStatusParams, ReviewWithProductData, Shops } from '../../../../../domain';
|
|
3
3
|
declare const ProductFirestoreRepository_base: import("../../../../../utils").MixinCtor<import("@infrab4a/connect").FirestoreRepository<Product> & import("../../../../../domain").CrudRepository<Product, import("../../../../../domain").CrudParams<Product>> & import("@infrab4a/connect").FirestoreHelpers, never>;
|
|
4
4
|
export declare class ProductFirestoreRepository extends ProductFirestoreRepository_base implements ProductRepository {
|
|
5
5
|
readonly firestore: FirebaseFirestore;
|
|
6
|
+
private reviews;
|
|
6
7
|
constructor(firestore: FirebaseFirestore);
|
|
7
8
|
getBySlug(slug: string, shop: Shops): Promise<Product>;
|
|
9
|
+
fetchReviews(status: ReviewStatusParams): Promise<ReviewWithProductData[]>;
|
|
8
10
|
}
|
|
9
11
|
export {};
|
|
@@ -21,8 +21,8 @@ export declare const withFindHasuraGraphQL: <MBase extends ModelBaseStructure<an
|
|
|
21
21
|
fields: HasuraGraphQLFields<MBase>;
|
|
22
22
|
endpoint: string;
|
|
23
23
|
authOptions: import("../types").HasuraGraphQLAuthOptions;
|
|
24
|
-
mutation: <ReturnFields = any>(operation: string, fields?: HasuraGraphQLFields<MBase>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
25
|
-
query: <ReturnFields_1 = any>(operation: string | import("../types").GraphQLParams<MBase>[], fields?: HasuraGraphQLFields<MBase>, variables?: VariableOptions) => Promise<ReturnFields_1>;
|
|
24
|
+
mutation: <ReturnFields = any>(operation: string, fields?: string[] | HasuraGraphQLFields<MBase>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
25
|
+
query: <ReturnFields_1 = any>(operation: string | import("../types").GraphQLParams<MBase>[], fields?: string[] | HasuraGraphQLFields<MBase>, variables?: VariableOptions) => Promise<ReturnFields_1>;
|
|
26
26
|
getAttributeGraphQLTypeOf: <FieldValue>(value: FieldValue) => string;
|
|
27
27
|
convertDataFromHasura: (data: Record<string, string | number>) => MBase;
|
|
28
28
|
convertDataToHasura(instance: MBase, update?: boolean): Record<string, string | number>;
|
|
@@ -15,8 +15,8 @@ export declare const withGetHasuraGraphQL: <MBase extends ModelBaseStructure<any
|
|
|
15
15
|
fields: import("../types").HasuraGraphQLFields<MBase>;
|
|
16
16
|
endpoint: string;
|
|
17
17
|
authOptions: import("../types").HasuraGraphQLAuthOptions;
|
|
18
|
-
mutation: <ReturnFields = any>(operation: string, fields?: import("../types").HasuraGraphQLFields<MBase>, variables?: import("../types").VariableOptions) => Promise<ReturnFields>;
|
|
19
|
-
query: <ReturnFields_1 = any>(operation: string | import("../types").GraphQLParams<MBase>[], fields?: import("../types").HasuraGraphQLFields<MBase>, variables?: import("../types").VariableOptions) => Promise<ReturnFields_1>;
|
|
18
|
+
mutation: <ReturnFields = any>(operation: string, fields?: string[] | import("../types").HasuraGraphQLFields<MBase>, variables?: import("../types").VariableOptions) => Promise<ReturnFields>;
|
|
19
|
+
query: <ReturnFields_1 = any>(operation: string | import("../types").GraphQLParams<MBase>[], fields?: string[] | import("../types").HasuraGraphQLFields<MBase>, variables?: import("../types").VariableOptions) => Promise<ReturnFields_1>;
|
|
20
20
|
getAttributeGraphQLTypeOf: <FieldValue>(value: FieldValue) => string;
|
|
21
21
|
convertDataFromHasura: (data: Record<string, string | number>) => MBase;
|
|
22
22
|
convertDataToHasura(instance: MBase, update?: boolean): Record<string, string | number>;
|
|
@@ -1,16 +1,26 @@
|
|
|
1
|
-
import { GetRepositoryParams, ProductRepository, Shops, UpdateRepositoryParams } from '../../../../domain';
|
|
1
|
+
import { CreateRepositoryParams, GetRepositoryParams, ProductRepository, ReviewStatusParams, ReviewWithProductData, Shops, UpdateRepositoryParams } from '../../../../domain';
|
|
2
2
|
import { ProductHasuraGraphQL } from '../../models';
|
|
3
3
|
import { HasuraGraphQLAuthOptions } from '../../types';
|
|
4
4
|
declare const ProductHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../../types").GraphQLRepository<ProductHasuraGraphQL> & import("../../../../domain").CrudRepository<ProductHasuraGraphQL, import("../../../../domain").CrudParams<ProductHasuraGraphQL>> & import("../../../../domain").UpdateRepository<ProductHasuraGraphQL, import("../../../../domain").RepositoryUpdateParams<ProductHasuraGraphQL>> & {
|
|
5
5
|
paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<ProductHasuraGraphQL>): Partial<ProductHasuraGraphQL>;
|
|
6
6
|
}, [import("../../mixins").ConstructorParams<ProductHasuraGraphQL> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
|
|
7
7
|
export declare class ProductHasuraGraphQLRepository extends ProductHasuraGraphQLRepository_base implements ProductRepository {
|
|
8
|
+
private get reviewsFields();
|
|
8
9
|
constructor(endpoint: string, authOptions: HasuraGraphQLAuthOptions);
|
|
10
|
+
create(data: CreateRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL>;
|
|
9
11
|
get(identifiers: GetRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL>;
|
|
10
12
|
getBySlug(slug: string, shop: Shops): Promise<ProductHasuraGraphQL>;
|
|
11
13
|
update(params: UpdateRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL>;
|
|
14
|
+
fetchReviews(status: ReviewStatusParams): Promise<ReviewWithProductData[]>;
|
|
12
15
|
private updateCategories;
|
|
13
16
|
private updateKitProducts;
|
|
17
|
+
private updateReviews;
|
|
14
18
|
private getId;
|
|
19
|
+
private findReviewsByProduct;
|
|
20
|
+
private findReview;
|
|
21
|
+
private getReviewByPersonId;
|
|
22
|
+
private getReviewByAuthorAndEmail;
|
|
23
|
+
private bindReviewToModel;
|
|
24
|
+
private bindReviewToHasura;
|
|
15
25
|
}
|
|
16
26
|
export {};
|
|
@@ -13,8 +13,8 @@ export declare type GraphQLRepository<Model extends ModelBaseStructure> = {
|
|
|
13
13
|
fields: HasuraGraphQLFields<Model>;
|
|
14
14
|
endpoint: string;
|
|
15
15
|
authOptions: HasuraGraphQLAuthOptions;
|
|
16
|
-
mutation: <ReturnFields = any>(operation: string, fields?: HasuraGraphQLFields<Model>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
17
|
-
query: <ReturnFields = any>(operation: string | GraphQLParams<Model>[], fields?: HasuraGraphQLFields<Model>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
16
|
+
mutation: <ReturnFields = any>(operation: string, fields?: string[] | HasuraGraphQLFields<Model>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
17
|
+
query: <ReturnFields = any>(operation: string | GraphQLParams<Model>[], fields?: string[] | HasuraGraphQLFields<Model>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
18
18
|
getAttributeGraphQLTypeOf: <FieldValue>(value: FieldValue) => string;
|
|
19
19
|
convertDataFromHasura: (data: Record<string, string | number>) => Model;
|
|
20
20
|
convertDataToHasura(instance: Model, update?: boolean): Record<string, string | number>;
|
|
@@ -28,7 +28,7 @@ export declare type AggregateOptions<Model> = {
|
|
|
28
28
|
variance?: Array<AggregateOptionFields<Model, number>>;
|
|
29
29
|
};
|
|
30
30
|
export declare type HasuraGraphQLFields<Model> = ((Model extends ModelBaseStructure ? NonFunctionAndIdentifierPropertyNames<Model> | {
|
|
31
|
-
[key in NonFunctionAndIdentifierPropertyNames<Model>]?: PropType<Model, key> extends ModelBaseStructure ? HasuraGraphQLFields<PropType<Model, key>> : never;
|
|
31
|
+
[key in NonFunctionAndIdentifierPropertyNames<Model>]?: PropType<Model, key> extends ModelBaseStructure ? HasuraGraphQLFields<PropType<Model, key>> : PropType<Model, key> extends any[] ? PropType<Model, key>[] extends ModelBaseStructure[] ? HasuraGraphQLFields<PropType<Model, key>[]> : never : never;
|
|
32
32
|
} | {
|
|
33
33
|
[key in NonFunctionAndIdentifierPropertyNames<Model>]?: key extends 'aggregate' ? never : PropType<Model, key> extends ModelBaseStructure ? ColumnOptions<PropType<Model, key>, Model> : ColumnOptions<PropType<Model, key>, Model>;
|
|
34
34
|
} : string) | {
|