@infrab4a/connect 3.2.4 → 3.2.5-beta.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.
- package/bundles/infrab4a-connect.umd.js +133 -110
- package/bundles/infrab4a-connect.umd.js.map +1 -1
- package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +1 -1
- package/esm2015/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.js +53 -0
- package/esm2015/infra/hasura-graphql/mixins/helpers/graphql-field.helper.js +18 -4
- package/esm2015/infra/hasura-graphql/mixins/helpers/index.js +3 -2
- package/esm2015/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js +4 -52
- package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +5 -1
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +1 -1
- package/fesm2015/infrab4a-connect.js +117 -98
- package/fesm2015/infrab4a-connect.js.map +1 -1
- package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +1 -1
- package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +10 -0
- package/infra/hasura-graphql/mixins/helpers/index.d.ts +2 -1
- package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +6 -12
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +5 -1
- package/package.json +2 -2
|
@@ -4,7 +4,7 @@ declare type FindByAttributeResult<MBase extends ModelBaseStructure<MBase>, Attr
|
|
|
4
4
|
attributeName: Attribute;
|
|
5
5
|
};
|
|
6
6
|
export declare class AttributeOptionHelper {
|
|
7
|
-
static FindByAttribute: <MBase extends ModelBaseStructure<any, any>, Attribute extends NonFunctionAndIdentifierPropertyNames<MBase>>(attributeName: Attribute, fields: HasuraGraphQLFields<MBase>) => FindByAttributeResult<MBase, Attribute>;
|
|
7
|
+
static FindByAttribute: <MBase extends ModelBaseStructure<any, any>, Attribute extends NonFunctionAndIdentifierPropertyNames<MBase> = NonFunctionAndIdentifierPropertyNames<MBase>>(attributeName: Attribute, fields: HasuraGraphQLFields<MBase>) => FindByAttributeResult<MBase, Attribute>;
|
|
8
8
|
static CheckIsColumnOption: <Model extends ModelBaseStructure<any, any>, ParentModel extends ModelBaseStructure<any, any>>(fieldValue: ColumnOptions<Model, ParentModel, any>) => fieldValue is ColumnOptions<Model, ParentModel, any>;
|
|
9
9
|
static FindColumnOptionFromList: <Model extends ModelBaseStructure<any, any>, ParentModel extends ModelBaseStructure<any, any>>(columnName: string, fields: HasuraGraphQLFields<ParentModel>) => ColumnOptions<Model, ParentModel, any> & {
|
|
10
10
|
attributeName: NonFunctionAndIdentifierPropertyNames<ParentModel>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ModelBaseStructure, NonFunctionAndIdentifierPropertyNames, NonFunctionPropertyNames, RepositoryFindFielters, RepositoryFindFieltersOptions } from '../../../../domain';
|
|
2
|
+
import { HasuraGraphQLWhere } from '../../enums';
|
|
3
|
+
import { ColumnOptions, HasuraGraphQLFields, VariableOptions } from '../../types';
|
|
4
|
+
export declare class BindFilterQueryHelper {
|
|
5
|
+
static MakeGraphQLWhere: <MBase extends ModelBaseStructure<any, any>>(filter: RepositoryFindFielters<MBase>, fields: HasuraGraphQLFields<MBase>) => VariableOptions;
|
|
6
|
+
static BuildWhereSentence: <MBase extends ModelBaseStructure<any, any>>(field: NonFunctionAndIdentifierPropertyNames<MBase>, options: RepositoryFindFieltersOptions<MBase, NonFunctionPropertyNames<MBase, keyof MBase>>, fields: HasuraGraphQLFields<MBase>) => VariableOptions;
|
|
7
|
+
static BuildOperatorSentence: <MBase extends ModelBaseStructure<any, any>>(options: RepositoryFindFieltersOptions<MBase, any>, fieldOption: ColumnOptions<any, any>) => VariableOptions;
|
|
8
|
+
static GetHasuraOperator: <MBase extends ModelBaseStructure<any, any>>(options: RepositoryFindFieltersOptions<MBase, NonFunctionPropertyNames<MBase, keyof MBase>>, fieldOption: ColumnOptions<any, any>) => HasuraGraphQLWhere;
|
|
9
|
+
static GetHasuraJsonbOperator: <MBase extends ModelBaseStructure<any, any>>(options: RepositoryFindFieltersOptions<MBase, NonFunctionPropertyNames<MBase, keyof MBase>>) => HasuraGraphQLWhere;
|
|
10
|
+
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { ModelBaseStructure,
|
|
1
|
+
import { ModelBaseStructure, NonFunctionPropertyNames, RepositoryFindFielters, RepositoryFindResult, RepositoryLimitOptions, RepositoryOrderBy } from '../../../domain';
|
|
2
2
|
import { MixinCtor } from '../../../utils';
|
|
3
|
-
import {
|
|
4
|
-
import { ColumnOptions, GraphQLRepository, HasuraGraphQLFields, VariableOptions } from '../types';
|
|
3
|
+
import { GraphQLRepository } from '../types';
|
|
5
4
|
export declare const withFindHasuraGraphQL: <MBase extends ModelBaseStructure<any, any>, TMixinBase extends MixinCtor<GraphQLRepository<MBase>, any[]>>(MixinBase: MixinCtor<GraphQLRepository<MBase>, any[]> & TMixinBase) => {
|
|
6
5
|
new (...args: any[]): {
|
|
7
6
|
find(options?: {
|
|
@@ -10,20 +9,15 @@ export declare const withFindHasuraGraphQL: <MBase extends ModelBaseStructure<an
|
|
|
10
9
|
limits?: RepositoryLimitOptions<MBase>;
|
|
11
10
|
orderBy?: RepositoryOrderBy<MBase>;
|
|
12
11
|
}): Promise<RepositoryFindResult<MBase>>;
|
|
13
|
-
makeGraphQLWhere: (filter: RepositoryFindFielters<MBase>, fields: HasuraGraphQLFields<MBase>) => VariableOptions;
|
|
14
|
-
buildWhereSentence: (field: NonFunctionAndIdentifierPropertyNames<MBase>, options: RepositoryFindFieltersOptions<MBase, NonFunctionPropertyNames<MBase, keyof MBase>>, fields: HasuraGraphQLFields<MBase>) => VariableOptions;
|
|
15
|
-
buildOperatorSentence: (options: RepositoryFindFieltersOptions<MBase, any>, fieldOption: ColumnOptions<any, any>) => VariableOptions;
|
|
16
|
-
getHasuraOperator: (options: RepositoryFindFieltersOptions<MBase, NonFunctionPropertyNames<MBase, keyof MBase>>, fieldOption: ColumnOptions<any, any>) => HasuraGraphQLWhere;
|
|
17
|
-
getHasuraJsonbOperator: (options: RepositoryFindFieltersOptions<MBase, NonFunctionPropertyNames<MBase, keyof MBase>>) => HasuraGraphQLWhere;
|
|
18
12
|
tableName: string;
|
|
19
|
-
model: import("../../../domain").BaseModelBuilder<MBase, NonFunctionAndIdentifierPropertyNames<MBase>, MBase & {
|
|
13
|
+
model: import("../../../domain").BaseModelBuilder<MBase, import("../../../domain").NonFunctionAndIdentifierPropertyNames<MBase>, MBase & {
|
|
20
14
|
prototype: unknown;
|
|
21
15
|
}>;
|
|
22
|
-
fields: HasuraGraphQLFields<MBase>;
|
|
16
|
+
fields: import("../types").HasuraGraphQLFields<MBase>;
|
|
23
17
|
endpoint: string;
|
|
24
18
|
authOptions: import("../types").HasuraGraphQLAuthOptions;
|
|
25
|
-
mutation: <ReturnFields = any>(operation: string, fields?: string[] | HasuraGraphQLFields<MBase>, variables?: VariableOptions) => Promise<ReturnFields>;
|
|
26
|
-
query: <ReturnFields_1 = any>(operation: string | import("../types").GraphQLParams<MBase>[], fields?: string[] | HasuraGraphQLFields<MBase>, variables?: VariableOptions) => Promise<ReturnFields_1>;
|
|
19
|
+
mutation: <ReturnFields = any>(operation: string, fields?: string[] | import("../types").HasuraGraphQLFields<MBase>, variables?: import("../types").VariableOptions) => Promise<ReturnFields>;
|
|
20
|
+
query: <ReturnFields_1 = any>(operation: string | import("../types").GraphQLParams<MBase>[], fields?: string[] | import("../types").HasuraGraphQLFields<MBase>, variables?: import("../types").VariableOptions) => Promise<ReturnFields_1>;
|
|
27
21
|
getAttributeGraphQLTypeOf: <FieldValue>(value: FieldValue) => string;
|
|
28
22
|
convertDataFromHasura: (data: Record<string, string | number>) => MBase;
|
|
29
23
|
convertDataToHasura(instance: MBase, update?: boolean): Record<string, string | number>;
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import { ModelBaseStructure, NonFunctionAndIdentifierPropertyNames, RepositoryFindField } from '../../../domain';
|
|
1
|
+
import { ModelBaseStructure, NestedRepositoryFindFieltersOptions, NonFunctionAndIdentifierPropertyNames, RepositoryFindField } from '../../../domain';
|
|
2
2
|
import { PropType } from '../../../utils';
|
|
3
3
|
import { HasuraGraphQLColumnType } from '../enums';
|
|
4
4
|
export declare type ColumnOptions<FieldType, Model, ValueFrom = any> = {
|
|
5
5
|
type?: HasuraGraphQLColumnType;
|
|
6
6
|
columnName?: string;
|
|
7
|
+
filters?: {
|
|
8
|
+
filterType: HasuraGraphQLColumnType | string;
|
|
9
|
+
filters: NestedRepositoryFindFieltersOptions<FieldType>;
|
|
10
|
+
};
|
|
7
11
|
fields?: HasuraGraphQLFields<FieldType extends any[] ? FieldType[number] : FieldType>;
|
|
8
12
|
foreignKeyColumn?: Partial<Record<NonFunctionAndIdentifierPropertyNames<FieldType extends any[] ? FieldType[number] : FieldType>, NonFunctionAndIdentifierPropertyNames<Model> | (string & {})>> | {};
|
|
9
13
|
from?: (value: ValueFrom | ValueFrom[], data?: any) => FieldType;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@infrab4a/connect",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.5-beta.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"registry": "https://registry.npmjs.org"
|
|
6
6
|
},
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"class-transformer": "^0.5.1",
|
|
14
14
|
"date-fns": "^2.28.0",
|
|
15
15
|
"firebase": "7.24.0",
|
|
16
|
-
"gql-query-builder": "
|
|
16
|
+
"gql-query-builder": "3.7.0",
|
|
17
17
|
"lodash": "^4.17.21",
|
|
18
18
|
"reflect-metadata": "^0.1.13",
|
|
19
19
|
"ts-custom-error": "3.2.2",
|