@infrab4a/connect 3.6.0-beta.0 → 3.6.0-beta.1

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.
Files changed (44) hide show
  1. package/bundles/infrab4a-connect.umd.js +519 -18
  2. package/bundles/infrab4a-connect.umd.js.map +1 -1
  3. package/domain/catalog/models/category-filter.d.ts +9 -0
  4. package/domain/catalog/models/category.d.ts +3 -2
  5. package/domain/catalog/models/filter-option.d.ts +10 -0
  6. package/domain/catalog/models/filter.d.ts +13 -0
  7. package/domain/catalog/models/index.d.ts +3 -0
  8. package/domain/catalog/models/product.d.ts +1 -0
  9. package/domain/catalog/models/types/index.d.ts +0 -1
  10. package/domain/catalog/repositories/category-filter.repository.d.ts +5 -0
  11. package/domain/catalog/repositories/filter-option.repository.d.ts +4 -0
  12. package/domain/catalog/repositories/filter.repository.d.ts +4 -0
  13. package/domain/catalog/repositories/index.d.ts +3 -0
  14. package/esm2015/domain/catalog/models/category-filter.js +10 -0
  15. package/esm2015/domain/catalog/models/category.js +8 -1
  16. package/esm2015/domain/catalog/models/filter-option.js +10 -0
  17. package/esm2015/domain/catalog/models/filter.js +10 -0
  18. package/esm2015/domain/catalog/models/index.js +4 -1
  19. package/esm2015/domain/catalog/models/product.js +1 -1
  20. package/esm2015/domain/catalog/models/types/index.js +1 -2
  21. package/esm2015/domain/catalog/repositories/category-filter.repository.js +2 -0
  22. package/esm2015/domain/catalog/repositories/filter-option.repository.js +2 -0
  23. package/esm2015/domain/catalog/repositories/filter.repository.js +2 -0
  24. package/esm2015/domain/catalog/repositories/index.js +4 -1
  25. package/esm2015/infra/elasticsearch/indexes/products-index.js +3 -2
  26. package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +2 -2
  27. package/esm2015/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.js +24 -0
  28. package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +84 -4
  29. package/esm2015/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.js +123 -0
  30. package/esm2015/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.js +21 -0
  31. package/esm2015/infra/hasura-graphql/repositories/catalog/index.js +4 -1
  32. package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +2 -1
  33. package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +1 -1
  34. package/fesm2015/infrab4a-connect.js +277 -6
  35. package/fesm2015/infrab4a-connect.js.map +1 -1
  36. package/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +11 -0
  37. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +4 -1
  38. package/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +18 -0
  39. package/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +10 -0
  40. package/infra/hasura-graphql/repositories/catalog/index.d.ts +3 -0
  41. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +1 -1
  42. package/package.json +1 -1
  43. package/domain/catalog/models/types/category-filter.type.d.ts +0 -4
  44. package/esm2015/domain/catalog/models/types/category-filter.type.js +0 -2
@@ -0,0 +1,11 @@
1
+ import { CategoryFilter } from '../../../../domain';
2
+ import { CategoryFilterRepository } from '../../../../domain/catalog/repositories';
3
+ import { HasuraGraphQLAuthOptions } from '../../types';
4
+ declare const CategoryFilterHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../../types").GraphQLRepository<CategoryFilter> & import("../../../../domain").CrudRepository<CategoryFilter, import("../../../../domain").CrudParams<CategoryFilter>> & import("../../../../domain").UpdateRepository<CategoryFilter, import("../../../../domain").RepositoryUpdateParams<CategoryFilter>> & {
5
+ paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<CategoryFilter>): Partial<CategoryFilter>;
6
+ }, [import("../../mixins").ConstructorParams<CategoryFilter> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
7
+ export declare class CategoryFilterHasuraGraphQLRepository extends CategoryFilterHasuraGraphQLRepository_base implements CategoryFilterRepository {
8
+ constructor(endpoint: string, authOptions: HasuraGraphQLAuthOptions);
9
+ deleteByCategoryAndFilter(categoryId: number, filterId: number): Promise<any>;
10
+ }
11
+ export {};
@@ -1,13 +1,15 @@
1
1
  import { Category, CategoryRepository, CreateRepositoryParams, GetRepositoryParams, Product, Shops, UpdateRepositoryParams } from '../../../../domain';
2
2
  import { CategoryHasuraGraphQL } from '../../models';
3
3
  import { HasuraGraphQLAuthOptions } from '../../types';
4
+ import { CategoryFilterHasuraGraphQLRepository } from './category-filter-hasura-graphql.repository';
4
5
  import { ProductHasuraGraphQLRepository } from './product-hasura-graphql.repository';
5
6
  declare const CategoryHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../../types").GraphQLRepository<CategoryHasuraGraphQL> & import("../../../../domain").CrudRepository<CategoryHasuraGraphQL, import("../../../../domain").CrudParams<CategoryHasuraGraphQL>> & import("../../../../domain").UpdateRepository<CategoryHasuraGraphQL, import("../../../../domain").RepositoryUpdateParams<CategoryHasuraGraphQL>> & {
6
7
  paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<CategoryHasuraGraphQL>): Partial<CategoryHasuraGraphQL>;
7
8
  }, [import("../../mixins").ConstructorParams<CategoryHasuraGraphQL> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
8
9
  export declare class CategoryHasuraGraphQLRepository extends CategoryHasuraGraphQLRepository_base implements CategoryRepository {
9
10
  private readonly productRepository;
10
- constructor(endpoint: string, authOptions: HasuraGraphQLAuthOptions, productRepository: ProductHasuraGraphQLRepository);
11
+ private readonly categoryFilterRepository;
12
+ constructor(endpoint: string, authOptions: HasuraGraphQLAuthOptions, productRepository: ProductHasuraGraphQLRepository, categoryFilterRepository: CategoryFilterHasuraGraphQLRepository);
11
13
  create(params: CreateRepositoryParams<CategoryHasuraGraphQL>): Promise<CategoryHasuraGraphQL>;
12
14
  get(identifiers: GetRepositoryParams<CategoryHasuraGraphQL>): Promise<CategoryHasuraGraphQL>;
13
15
  update(params: UpdateRepositoryParams<CategoryHasuraGraphQL>): Promise<CategoryHasuraGraphQL>;
@@ -23,5 +25,6 @@ export declare class CategoryHasuraGraphQLRepository extends CategoryHasuraGraph
23
25
  private getId;
24
26
  private updateProducts;
25
27
  private updateMetadata;
28
+ private updateFilters;
26
29
  }
27
30
  export {};
@@ -0,0 +1,18 @@
1
+ import { Filter, UpdateRepositoryParams } from '../../../../domain';
2
+ import { FilterRepository } from '../../../../domain/catalog/repositories';
3
+ import { HasuraGraphQLAuthOptions } from '../../types';
4
+ import { CategoryFilterHasuraGraphQLRepository } from './category-filter-hasura-graphql.repository';
5
+ import { FilterOptionHasuraGraphQLRepository } from './filter-option-hasura-graphql.repository';
6
+ declare const FilterHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../../types").GraphQLRepository<Filter> & import("../../../../domain").CrudRepository<Filter, import("../../../../domain").CrudParams<Filter>> & import("../../../../domain").UpdateRepository<Filter, import("../../../../domain").RepositoryUpdateParams<Filter>> & {
7
+ paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<Filter>): Partial<Filter>;
8
+ }, [import("../../mixins").ConstructorParams<Filter> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
9
+ export declare class FilterHasuraGraphQLRepository extends FilterHasuraGraphQLRepository_base implements FilterRepository {
10
+ private readonly filterOptionRepository;
11
+ private readonly categoryFilterRepository;
12
+ constructor(endpoint: string, authOptions: HasuraGraphQLAuthOptions, filterOptionRepository: FilterOptionHasuraGraphQLRepository, categoryFilterRepository: CategoryFilterHasuraGraphQLRepository);
13
+ update(params: UpdateRepositoryParams<Filter>): Promise<Filter>;
14
+ updateOptions(filterId: number, { options }: Pick<UpdateRepositoryParams<Filter>, 'options'>): Promise<any[]>;
15
+ delete(params: UpdateRepositoryParams<Filter>): Promise<void>;
16
+ deleteOptions(options: any): Promise<void>;
17
+ }
18
+ export {};
@@ -0,0 +1,10 @@
1
+ import { FilterOption } from '../../../../domain';
2
+ import { FilterOptionRepository } from '../../../../domain/catalog/repositories';
3
+ import { HasuraGraphQLAuthOptions } from '../../types';
4
+ declare const FilterOptionHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../../types").GraphQLRepository<FilterOption> & import("../../../../domain").CrudRepository<FilterOption, import("../../../../domain").CrudParams<FilterOption>> & import("../../../../domain").UpdateRepository<FilterOption, import("../../../../domain").RepositoryUpdateParams<FilterOption>> & {
5
+ paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<FilterOption>): Partial<FilterOption>;
6
+ }, [import("../../mixins").ConstructorParams<FilterOption> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
7
+ export declare class FilterOptionHasuraGraphQLRepository extends FilterOptionHasuraGraphQLRepository_base implements FilterOptionRepository {
8
+ constructor(endpoint: string, authOptions: HasuraGraphQLAuthOptions);
9
+ }
10
+ export {};
@@ -1,3 +1,6 @@
1
+ export * from './category-filter-hasura-graphql.repository';
1
2
  export * from './category-hasura-graphql.repository';
3
+ export * from './filter-hasura-graphql.repository';
4
+ export * from './filter-option-hasura-graphql.repository';
2
5
  export * from './product-hasura-graphql.repository';
3
6
  export * from './variant-hasura-graphql.repository';
@@ -35,6 +35,6 @@ export declare type HasuraGraphQLFields<Model> = ((Model extends ModelBaseStruct
35
35
  [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;
36
36
  } | {
37
37
  [key in NonFunctionAndIdentifierPropertyNames<Model>]?: key extends 'aggregate' ? never : PropType<Model, key> extends ModelBaseStructure ? ColumnOptions<PropType<Model, key>, Model> : ColumnOptions<PropType<Model, key>, Model>;
38
- } : string) | {
38
+ } | Record<string, ColumnOptions<PropType<Model, any>, Model>> : string) | {
39
39
  aggregate: Array<AggregateOptions<Model> | 'count'>;
40
40
  } | 'affected_rows')[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infrab4a/connect",
3
- "version": "3.6.0-beta.0",
3
+ "version": "3.6.0-beta.1",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org"
6
6
  },
@@ -1,4 +0,0 @@
1
- export declare type CategoryFilter = {
2
- name?: string;
3
- tags?: string[];
4
- };
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlsdGVyLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9kb21haW4vY2F0YWxvZy9tb2RlbHMvdHlwZXMvY2F0ZWdvcnktZmlsdGVyLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIENhdGVnb3J5RmlsdGVyID0ge1xyXG4gIG5hbWU/OiBzdHJpbmdcclxuICB0YWdzPzogc3RyaW5nW11cclxufVxyXG4iXX0=