@infrab4a/connect 4.1.0-beta.10 → 4.1.0-beta.2
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/domain/catalog/models/category-collection-children.d.ts +1 -1
- package/domain/catalog/models/category-filter.d.ts +1 -1
- package/domain/catalog/models/kit-product.d.ts +1 -1
- package/domain/catalog/models/types/category-condition.type.d.ts +1 -1
- package/domain/catalog/models/types/category-metadata.type.d.ts +1 -1
- package/domain/catalog/models/types/category-product.d.ts +1 -1
- package/domain/catalog/models/types/product-evaluation.type.d.ts +1 -1
- package/domain/catalog/models/types/product-gender.type.d.ts +1 -1
- package/domain/catalog/models/types/product-metadata.type.d.ts +1 -1
- package/domain/catalog/models/types/product-review.type.d.ts +1 -1
- package/domain/catalog/models/types/shop-description.type.d.ts +1 -1
- package/domain/catalog/models/types/shop-price.type.d.ts +1 -1
- package/domain/catalog/models/types/stock.type.d.ts +1 -1
- package/domain/catalog/models/types/variant-grade.type.d.ts +1 -1
- package/domain/catalog/models/variant.d.ts +1 -1
- package/domain/catalog/models/wishlist.d.ts +0 -2
- package/domain/catalog/repositories/product.repository.d.ts +2 -2
- package/domain/generic/model/base.model.d.ts +1 -1
- package/domain/generic/model/types/identifier-model.type.d.ts +3 -3
- package/domain/generic/model/types/model-base-structure.type.d.ts +2 -2
- package/domain/generic/model/types/non-function-properties.type.d.ts +6 -6
- package/domain/generic/model/types/non-function-property-name.type.d.ts +5 -5
- package/domain/generic/repository/create.repository.d.ts +1 -1
- package/domain/generic/repository/crud.repository.d.ts +2 -2
- package/domain/generic/repository/delete.repository.d.ts +1 -1
- package/domain/generic/repository/find.repository.d.ts +1 -1
- package/domain/generic/repository/get.repository.d.ts +1 -1
- package/domain/generic/repository/read.repository.d.ts +2 -2
- package/domain/generic/repository/types/repository-find-filters.type.d.ts +4 -4
- package/domain/generic/repository/types/repository-find-result.type.d.ts +2 -2
- package/domain/generic/repository/types/repository-limit-options.type.d.ts +1 -1
- package/domain/generic/repository/types/repository-order-by-list.type.d.ts +2 -2
- package/domain/generic/repository/types/repository-update-params.type.d.ts +3 -3
- package/domain/generic/repository/types/where-options.type.d.ts +1 -1
- package/domain/generic/repository/update.repository.d.ts +1 -1
- package/domain/location/models/types/location-bound.type.d.ts +1 -1
- package/domain/location/models/types/location-geometry.type.d.ts +1 -1
- package/domain/location/models/types/location-lat-lng.type.d.ts +1 -1
- package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +1 -1
- package/domain/shop-settings/models/shop-settings.d.ts +1 -1
- package/domain/shop-settings/models/types/banner.type.d.ts +1 -1
- package/domain/shop-settings/models/types/benefit.type.d.ts +1 -1
- package/domain/shop-settings/models/types/campaign-page.d.ts +4 -4
- package/domain/shop-settings/models/types/home-data.type.d.ts +3 -3
- package/domain/shop-settings/models/types/index.d.ts +0 -2
- package/domain/shop-settings/models/types/menu-nav.type.d.ts +1 -1
- package/domain/shop-settings/models/types/sections.type.d.ts +13 -16
- package/domain/shop-settings/models/types/shop-banner.type.d.ts +6 -7
- package/domain/shop-settings/models/types/shop-carousel.type.d.ts +2 -1
- package/domain/shop-settings/models/types/shop-home.d.ts +2 -2
- package/domain/shop-settings/models/types/shop-section.type.d.ts +1 -1
- package/domain/shop-settings/models/types/sub-menu.type.d.ts +2 -2
- package/domain/shopping/models/types/payment-address.type.d.ts +1 -1
- package/domain/shopping/models/types/payment-billing.type.d.ts +1 -1
- package/domain/shopping/models/types/payment-card.type.d.ts +1 -1
- package/domain/shopping/models/types/payment-customer.type.d.ts +1 -1
- package/domain/shopping/models/types/payment-document.type.d.ts +1 -1
- package/domain/shopping/models/types/payment-item.type.d.ts +1 -1
- package/domain/shopping/models/types/payment-shipping.type.d.ts +1 -1
- package/domain/users/models/beauty-profile.d.ts +1 -1
- package/domain/users/models/subscription/edition.d.ts +1 -1
- package/domain/users/models/subscription/payment.d.ts +1 -1
- package/domain/users/models/user-address.d.ts +1 -1
- package/domain/users/models/user-payment-method.d.ts +1 -1
- package/domain/users/services/authentication.service.d.ts +1 -1
- package/domain/users/services/register.service.d.ts +1 -1
- package/domain/users/services/types/basic-user-data.type.d.ts +1 -1
- package/domain/users/use-cases/authentication.d.ts +2 -2
- package/domain/users/use-cases/register.d.ts +1 -1
- package/{esm2020 → esm2022}/domain/catalog/models/wishlist.mjs +1 -1
- package/{esm2020 → esm2022}/domain/shop-settings/models/shop-settings.mjs +1 -1
- package/esm2022/domain/shop-settings/models/types/index.mjs +15 -0
- package/esm2022/domain/shop-settings/models/types/sections.type.mjs +2 -0
- package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-banner.type.mjs +1 -1
- package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-carousel.type.mjs +1 -1
- package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +32 -32
- package/esm2022/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +71 -0
- package/esm2022/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +22 -0
- package/esm2022/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +125 -0
- package/esm2022/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +108 -0
- package/esm2022/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +339 -0
- package/esm2022/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +516 -0
- package/esm2022/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.mjs +236 -0
- package/{esm2020 → esm2022}/utils/helpers/debug-decorator.helper.mjs +2 -2
- package/esm2022/utils/helpers/debug.helper.mjs +150 -0
- package/{esm2020 → esm2022}/utils/helpers/reflect.helper.mjs +2 -2
- package/{fesm2020 → fesm2022}/infrab4a-connect.mjs +262 -263
- package/fesm2022/infrab4a-connect.mjs.map +1 -0
- package/infra/elasticsearch/adapters/axios.adapter.d.ts +1 -1
- package/infra/elasticsearch/types/elastic-search-result.d.ts +1 -1
- package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +1 -1
- package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +1 -1
- package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +1 -1
- package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +1 -1
- package/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +1 -1
- package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +1 -1
- package/infra/firebase/firestore/types/firestore.repository.type.d.ts +1 -1
- package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +1 -1
- package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +1 -1
- package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +1 -1
- package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +1 -1
- package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +3 -3
- package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +2 -2
- package/infra/hasura-graphql/types/fields.type.d.ts +1 -1
- package/infra/hasura-graphql/types/graphql.repository.type.d.ts +2 -2
- package/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +1 -1
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +6 -6
- package/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +1 -1
- package/infra/hasura-graphql/types/nested-field.type.d.ts +1 -1
- package/infra/hasura-graphql/types/variable-options.type.d.ts +1 -1
- package/package.json +5 -11
- package/utils/decorators/trace.method.decorator.d.ts +3 -3
- package/utils/helpers/debug-decorator.helper.d.ts +1 -1
- package/utils/helpers/debug.helper.d.ts +3 -3
- package/utils/helpers/reflect.helper.d.ts +7 -7
- package/utils/index.d.ts +1 -1
- package/utils/mixins/merge-constructor-params.type.d.ts +2 -2
- package/utils/mixins/mixin-ctor.type.d.ts +1 -1
- package/utils/types/array-element.type.d.ts +1 -1
- package/utils/types/prop.type.d.ts +1 -1
- package/domain/shop-settings/models/types/landing-page.d.ts +0 -8
- package/esm2020/domain/shop-settings/models/types/index.mjs +0 -17
- package/esm2020/domain/shop-settings/models/types/landing-page.mjs +0 -2
- package/esm2020/domain/shop-settings/models/types/sections.type.mjs +0 -2
- package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +0 -71
- package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +0 -22
- package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +0 -125
- package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +0 -108
- package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +0 -338
- package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +0 -516
- package/esm2020/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.mjs +0 -238
- package/esm2020/utils/helpers/debug.helper.mjs +0 -150
- package/fesm2015/infrab4a-connect.mjs +0 -4976
- package/fesm2015/infrab4a-connect.mjs.map +0 -1
- package/fesm2020/infrab4a-connect.mjs.map +0 -1
- /package/{esm2020 → esm2022}/domain/catalog/helpers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/helpers/round-product-price.helper.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/category-base.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/category-collection-children.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/category-filter.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/category-for-product.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/category.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/enums/product-genders.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/enums/shops.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/filter-option.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/filter.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/kit-product.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/product-base.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/product-for-category.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/product-for-kit.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/product.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/category-condition.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/category-metadata.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/category-product.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/product-evaluation.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/product-gender.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/product-metadata.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/product-review.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/shop-description.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/shop-price.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/stock.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/types/variant-grade.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/models/variant.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/category-collection-children.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/category-filter.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/category.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/filter-option.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/filter.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/product.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/subscription-product.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/variant.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/catalog/repositories/wishlist.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/base.model.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/identifier-fields.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/types/base-model-builder.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/types/identifier-model.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/types/model-base-structure.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/types/non-function-properties.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/model/types/non-function-property-name.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/create.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/crud.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/delete.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/enums/update-option-actions.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/enums/where.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/find.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/get.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/read.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/repository-find-filters.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/repository-find-result.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/repository-limit-options.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/repository-order-by-list.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/repository-update-params.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/types/where-options.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/generic/repository/update.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/models/address.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/models/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/models/types/location-bound.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/models/types/location-geometry.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/location/models/types/location-lat-lng.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/enums/filter-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/enums/questions-filters.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/enums/shop-page-name.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/helpers/beauty-questions.helper.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/helpers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/campaign-banner.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/campaign.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/home.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/shop-menu.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/banner.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/benefit.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/campaign-page.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/home-data.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/menu-nav.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-brands.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-collection.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-gift.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-home.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-post.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/shop-section.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/models/types/sub-menu.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/repositories/campaign-banner.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/repositories/campaign.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/repositories/home.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/repositories/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/repositories/shop-menu.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shop-settings/repositories/shop-settings.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/buy-2-win.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/campaign-dashboard.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/campaign-hashtag.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/checkout.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/coupon.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/enums/coupon-club-mens.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/enums/coupon-subtypes.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/enums/coupon-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/enums/exclusivities.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/coupons/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/enums/checkout-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/enums/order-status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/line-item.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/order.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/payment.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/shipping-method.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/subscription/checkout.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/subscription/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/subscription/plan.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-address.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-billing.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-card.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-customer.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-document.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-item.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/models/types/payment-shipping.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/buy-2-win.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/campaign-dashboard.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/campaign-hashtag.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/checkout.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/coupon.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/legacy-order.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/order.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/payment.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/subscription/checkout.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/subscription/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/shopping/repositories/subscription/plan.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/errors/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/errors/unauthorized.error.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/errors/user-already-registered.error.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/errors/weak-password.error.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/beauty-profile.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/accessory-importances.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/area.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/beard-problems.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/beard-sizes.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/beauty-product-importances.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/body-problems.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/body-shapes.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/body-tattoos.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/face-skin-oilinesses.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/face-skin-problems.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/face-skin-tones.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/family-incomes.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/fragrance-importances.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/hair-colors.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/hair-problems.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/hair-strands.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/hair-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/office-position.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/product-spents.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/enums/user-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/lead.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/edition.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/enums/billing-status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/enums/edition-status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/enums/payment-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/enums/status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/payment.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/subscription/subscription.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/user-address.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/user-payment-method.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/models/user.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/beauty-profile.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/edition.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/lead.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/subscription-payment.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/subscription.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/user-address.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/user-payment-method.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/repositories/user.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/services/authentication.service.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/services/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/services/register.service.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/services/types/basic-user-data.type.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/services/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/use-cases/authentication.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/use-cases/index.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/use-cases/recovery-password.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/use-cases/register.mjs +0 -0
- /package/{esm2020 → esm2022}/domain/users/use-cases/signout.mjs +0 -0
- /package/{esm2020 → esm2022}/errors/duplicated-results.error.mjs +0 -0
- /package/{esm2020 → esm2022}/errors/index.mjs +0 -0
- /package/{esm2020 → esm2022}/errors/invalid-argument.error.mjs +0 -0
- /package/{esm2020 → esm2022}/errors/not-found.error.mjs +0 -0
- /package/{esm2020 → esm2022}/errors/required-argument.error.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/adapters/axios.adapter.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/adapters/elastic-search.adapter.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/adapters/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/indexes/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/indexes/products-index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/types/elastic-search-result.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/elasticsearch/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/auth/authentication-firebase-auth.service.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/auth/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/auth/register-firebase-auth.service.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/auth/types/firebase-user-with-id.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/enums/firestore-field-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-helpers.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/catalog/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/catalog/product-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shop-settings/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/order-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/lead-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/subscription-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/user-address-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/user-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/types/firestore-interceptors.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/types/firestore.helpers.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/types/firestore.repository.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/firestore/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/firebase/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/enums/hasura-graphql-where.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/helpers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/models/category-hasura-graphql.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/models/kit-product-hasura-graphql.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/models/product-hasura-graphql.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/models/variant-hasura-graphql.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/catalog/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/repositories/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/fields.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/graphql.repository.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/hasura-graphql-auth-options.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/hasura-graphql-fields.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/hasura-graphql-headers.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/nested-field.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/query-builder-options.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/hasura-graphql/types/variable-options.type.mjs +0 -0
- /package/{esm2020 → esm2022}/infra/index.mjs +0 -0
- /package/{esm2020 → esm2022}/infrab4a-connect.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/decorators/debug.class.decorator.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/decorators/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/decorators/trace.method.decorator.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/get.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/helpers/class-name.helper.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/helpers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/is-uuid.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/is.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/log.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/mixins/base.mixin.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/mixins/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/mixins/merge-constructor-params.type.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/mixins/mixin-ctor.type.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/parse-datetime.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/types/array-element.type.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/types/prop.type.mjs +0 -0
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { BaseModel, } from '../../../../domain';
|
|
2
|
-
import { is, isDate, isEmpty, isNil, isObject, isString, parseDateTime } from '../../../../utils';
|
|
3
|
-
import { AttributeOptionHelper } from './attribute-option.helper';
|
|
4
|
-
import { BindFilterQueryHelper } from './bind-filter-query.helper';
|
|
5
|
-
export class GraphQLFieldHelper {
|
|
6
|
-
}
|
|
7
|
-
GraphQLFieldHelper.CheckIsGraphQLParams = (params) => !isString(params) && Array.isArray(params) && params.length >= 0 && !!params[0].operation;
|
|
8
|
-
GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields = (fields) => {
|
|
9
|
-
return fields
|
|
10
|
-
?.map((field) => {
|
|
11
|
-
if (isString(field))
|
|
12
|
-
return field.toString();
|
|
13
|
-
if (field === 'affected_rows')
|
|
14
|
-
return field;
|
|
15
|
-
const fieldName = Object.keys(field).shift();
|
|
16
|
-
const fieldValue = is(field[fieldName]);
|
|
17
|
-
if (Array.isArray(fieldValue))
|
|
18
|
-
return { [fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue) };
|
|
19
|
-
if (!AttributeOptionHelper.CheckIsColumnOption(fieldValue))
|
|
20
|
-
return;
|
|
21
|
-
const isNestedField = !!fieldValue.fields;
|
|
22
|
-
if (isNestedField)
|
|
23
|
-
return GraphQLFieldHelper.ConvertNestedFieldsToGraphQLFields(fieldName, fieldValue);
|
|
24
|
-
return fieldValue.columnName;
|
|
25
|
-
})
|
|
26
|
-
.filter((field) => !!field);
|
|
27
|
-
};
|
|
28
|
-
GraphQLFieldHelper.ConvertFieldValueFrom = (data, fields) => Object.keys(data).reduce((result, columnName) => {
|
|
29
|
-
const { attributeName, fields: attributeFields, from, } = AttributeOptionHelper.FindColumnOptionFromList(columnName, fields);
|
|
30
|
-
if (!!attributeFields && Array.isArray(attributeFields)) {
|
|
31
|
-
if (Array.isArray(data[columnName]))
|
|
32
|
-
return {
|
|
33
|
-
...result,
|
|
34
|
-
[attributeName]: from
|
|
35
|
-
? from(data[columnName], data)
|
|
36
|
-
: is(data[columnName]).map((value) => GraphQLFieldHelper.ConvertFieldValueFrom(is(value), attributeFields)),
|
|
37
|
-
};
|
|
38
|
-
if (isObject(data[columnName]))
|
|
39
|
-
return {
|
|
40
|
-
...result,
|
|
41
|
-
[attributeName]: !!from
|
|
42
|
-
? from(data[columnName])
|
|
43
|
-
: GraphQLFieldHelper.ConvertFieldValueFrom(is(data[columnName]), attributeFields),
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
if (!!from)
|
|
47
|
-
return { ...result, [attributeName]: from(data[columnName], data) };
|
|
48
|
-
return {
|
|
49
|
-
...result,
|
|
50
|
-
[attributeName]: isString(data[columnName]) ? parseDateTime(data[columnName].toString()) : data[columnName],
|
|
51
|
-
};
|
|
52
|
-
}, {});
|
|
53
|
-
GraphQLFieldHelper.ConvertFieldValueTo = (instance, fields, update = false) => {
|
|
54
|
-
const data = instance.toPlain?.() || instance;
|
|
55
|
-
return Object.keys(data).reduce((result, attributeName) => {
|
|
56
|
-
const { columnName, fields: attributeFields, foreignKeyColumn, to, bindPersistData, } = AttributeOptionHelper.FindByAttribute(attributeName, fields);
|
|
57
|
-
if (bindPersistData)
|
|
58
|
-
return {
|
|
59
|
-
...result,
|
|
60
|
-
...bindPersistData(data[attributeName], instance),
|
|
61
|
-
};
|
|
62
|
-
if (isNil(columnName))
|
|
63
|
-
return result;
|
|
64
|
-
if (!!foreignKeyColumn &&
|
|
65
|
-
!isEmpty(foreignKeyColumn) &&
|
|
66
|
-
!Object.keys(foreignKeyColumn).filter((key) => !is(data[attributeName])?.[key]).length)
|
|
67
|
-
return Object.keys(foreignKeyColumn).reduce((object, current) => {
|
|
68
|
-
const { columnName: foreignColumnName } = AttributeOptionHelper.FindByAttribute(foreignKeyColumn[current], fields);
|
|
69
|
-
return {
|
|
70
|
-
...object,
|
|
71
|
-
[foreignColumnName]: data[attributeName]?.[current],
|
|
72
|
-
};
|
|
73
|
-
}, { ...result });
|
|
74
|
-
if (update &&
|
|
75
|
-
isObject(data[attributeName]) &&
|
|
76
|
-
!isNil(attributeFields) &&
|
|
77
|
-
!isDate(data[attributeName]))
|
|
78
|
-
return result;
|
|
79
|
-
if (!!columnName &&
|
|
80
|
-
Array.isArray(attributeFields) &&
|
|
81
|
-
isObject(data[attributeName])) {
|
|
82
|
-
const converted = !isNil(columnName) && to
|
|
83
|
-
? to(instance[attributeName], instance)
|
|
84
|
-
: data[attributeName];
|
|
85
|
-
return {
|
|
86
|
-
...result,
|
|
87
|
-
...(converted !== undefined
|
|
88
|
-
? {
|
|
89
|
-
[columnName]: {
|
|
90
|
-
data: instance[attributeName] instanceof BaseModel
|
|
91
|
-
? GraphQLFieldHelper.ConvertFieldValueTo(data[attributeName], attributeFields)
|
|
92
|
-
: converted,
|
|
93
|
-
},
|
|
94
|
-
}
|
|
95
|
-
: {}),
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
if (!!to)
|
|
99
|
-
return {
|
|
100
|
-
...result,
|
|
101
|
-
[columnName]: to(instance[attributeName], instance),
|
|
102
|
-
};
|
|
103
|
-
return { ...result, [columnName]: data[attributeName] };
|
|
104
|
-
}, {});
|
|
105
|
-
};
|
|
106
|
-
GraphQLFieldHelper.ConvertNestedFieldsToGraphQLFields = (fieldName, fieldValue) => {
|
|
107
|
-
const hasCustomFilters = !!fieldValue.filters;
|
|
108
|
-
if (hasCustomFilters)
|
|
109
|
-
return {
|
|
110
|
-
operation: fieldValue.columnName || fieldName,
|
|
111
|
-
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
|
|
112
|
-
variables: {
|
|
113
|
-
[`${fieldValue.columnName}_where`]: {
|
|
114
|
-
name: 'where',
|
|
115
|
-
type: fieldValue.filters.filterType,
|
|
116
|
-
value: BindFilterQueryHelper.MakeGraphQLWhere(fieldValue.filters.filters, fieldValue.fields),
|
|
117
|
-
required: true,
|
|
118
|
-
},
|
|
119
|
-
},
|
|
120
|
-
};
|
|
121
|
-
return {
|
|
122
|
-
[fieldValue.columnName || fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
|
|
123
|
-
};
|
|
124
|
-
};
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC1maWVsZC5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9ncmFwaHFsLWZpZWxkLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsU0FBUyxHQUtWLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRWpHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBRWxFLE1BQU0sT0FBTyxrQkFBa0I7O0FBQ3RCLHVDQUFvQixHQUFHLENBQzVCLE1BQW9ELEVBQ2xCLEVBQUUsQ0FDcEMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtBQUVwRixvREFBaUMsR0FBRyxDQUN6QyxNQUFrQyxFQUMxQixFQUFFO0lBQ1YsT0FBTyxNQUFNO1FBQ1gsRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNkLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQzVDLElBQUksS0FBSyxLQUFLLGVBQWU7WUFBRSxPQUFPLEtBQUssQ0FBQTtRQUUzQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUss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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJT3BlcmF0aW9uIH0gZnJvbSAnZ3FsLXF1ZXJ5LWJ1aWxkZXIvYnVpbGQvSVF1ZXJ5QnVpbGRlck9wdGlvbnMnXHJcbmltcG9ydCB7XHJcbiAgQmFzZU1vZGVsLFxyXG4gIE1vZGVsQmFzZVN0cnVjdHVyZSxcclxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbCxcclxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzLFxyXG4gIFBhcnRpYWxJZGVudGlmaWVyc01vZGVsLFxyXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcclxuaW1wb3J0IHsgaXMsIGlzRGF0ZSwgaXNFbXB0eSwgaXNOaWwsIGlzT2JqZWN0LCBpc1N0cmluZywgcGFyc2VEYXRlVGltZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQgeyBDb2x1bW5PcHRpb25zLCBGaWVsZHMsIEdyYXBoUUxQYXJhbXMsIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9hdHRyaWJ1dGUtb3B0aW9uLmhlbHBlcidcclxuaW1wb3J0IHsgQmluZEZpbHRlclF1ZXJ5SGVscGVyIH0gZnJvbSAnLi9iaW5kLWZpbHRlci1xdWVyeS5oZWxwZXInXHJcblxyXG5leHBvcnQgY2xhc3MgR3JhcGhRTEZpZWxkSGVscGVyIHtcclxuICBzdGF0aWMgQ2hlY2tJc0dyYXBoUUxQYXJhbXMgPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+PihcclxuICAgIHBhcmFtczogc3RyaW5nIHwgSU9wZXJhdGlvbiB8IEdyYXBoUUxQYXJhbXM8TW9kZWw+W10sXHJcbiAgKTogcGFyYW1zIGlzIEdyYXBoUUxQYXJhbXM8TW9kZWw+W10gPT5cclxuICAgICFpc1N0cmluZyhwYXJhbXMpICYmIEFycmF5LmlzQXJyYXkocGFyYW1zKSAmJiBwYXJhbXMubGVuZ3RoID49IDAgJiYgISFwYXJhbXNbMF0ub3BlcmF0aW9uXHJcblxyXG4gIHN0YXRpYyBDb252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMgPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+PihcclxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD4sXHJcbiAgKTogRmllbGRzID0+IHtcclxuICAgIHJldHVybiBmaWVsZHNcclxuICAgICAgPy5tYXAoKGZpZWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGlzU3RyaW5nKGZpZWxkKSkgcmV0dXJuIGZpZWxkLnRvU3RyaW5nKClcclxuICAgICAgICBpZiAoZmllbGQgPT09ICdhZmZlY3RlZF9yb3dzJykgcmV0dXJuIGZpZWxkXHJcblxyXG4gICAgICAgIGNvbnN0IGZpZWxkTmFtZSA9IE9iamVjdC5rZXlzKGZpZWxkKS5zaGlmdCgpXHJcbiAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IGlzPENvbHVtbk9wdGlvbnM8YW55LCBNb2RlbD4+KGZpZWxkW2ZpZWxkTmFtZSBhcyBrZXlvZiB0eXBlb2YgZmllbGRdKVxyXG5cclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZFZhbHVlKSlcclxuICAgICAgICAgIHJldHVybiB7IFtmaWVsZE5hbWVdOiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydE1vZGVsRmllbGRzVG9HcmFwaFFMRmllbGRzKGZpZWxkVmFsdWUpIH1cclxuICAgICAgICBpZiAoIUF0dHJpYnV0ZU9wdGlvbkhlbHBlci5DaGVja0lzQ29sdW1uT3B0aW9uKGZpZWxkVmFsdWUpKSByZXR1cm5cclxuXHJcbiAgICAgICAgY29uc3QgaXNOZXN0ZWRGaWVsZCA9ICEhZmllbGRWYWx1ZS5maWVsZHNcclxuXHJcbiAgICAgICAgaWYgKGlzTmVzdGVkRmllbGQpIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydE5lc3RlZEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZE5hbWUsIGZpZWxkVmFsdWUgYXMgYW55KVxyXG5cclxuICAgICAgICByZXR1cm4gZmllbGRWYWx1ZS5jb2x1bW5OYW1lXHJcbiAgICAgIH0pXHJcbiAgICAgIC5maWx0ZXIoKGZpZWxkKSA9PiAhIWZpZWxkKVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIENvbnZlcnRGaWVsZFZhbHVlRnJvbSA9IDxcclxuICAgIE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxyXG4gICAgUmVjb3JkRGF0YVR5cGUgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXIgfCBEYXRhVHlwZSB8IERhdGUsXHJcbiAgICBEYXRhVHlwZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIFJlY29yZERhdGFUeXBlIHwgUmVjb3JkRGF0YVR5cGVbXT4sXHJcbiAgPihcclxuICAgIGRhdGE6IERhdGFUeXBlLFxyXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcclxuICApOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbDxNb2RlbD4gfCBQYXJ0aWFsSWRlbnRpZmllcnNNb2RlbDxNb2RlbD4gPT5cclxuICAgIE9iamVjdC5rZXlzKGRhdGEpLnJlZHVjZSgocmVzdWx0LCBjb2x1bW5OYW1lKSA9PiB7XHJcbiAgICAgIGNvbnN0IHtcclxuICAgICAgICBhdHRyaWJ1dGVOYW1lLFxyXG4gICAgICAgIGZpZWxkczogYXR0cmlidXRlRmllbGRzLFxyXG4gICAgICAgIGZyb20sXHJcbiAgICAgIH0gPSBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZENvbHVtbk9wdGlvbkZyb21MaXN0KGNvbHVtbk5hbWUsIGZpZWxkcylcclxuXHJcbiAgICAgIGlmICghIWF0dHJpYnV0ZUZpZWxkcyAmJiBBcnJheS5pc0FycmF5KGF0dHJpYnV0ZUZpZWxkcykpIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhW2NvbHVtbk5hbWVdKSlcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIC4uLnJlc3VsdCxcclxuICAgICAgICAgICAgW2F0dHJpYnV0ZU5hbWVdOiBmcm9tXHJcbiAgICAgICAgICAgICAgPyBmcm9tKGRhdGFbY29sdW1uTmFtZV0sIGRhdGEpXHJcbiAgICAgICAgICAgICAgOiBpczxSZWNvcmREYXRhVHlwZVtdPihkYXRhW2NvbHVtbk5hbWVdKS5tYXAoKHZhbHVlKSA9PlxyXG4gICAgICAgICAgICAgICAgICBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVGcm9tKGlzPERhdGFUeXBlPih2YWx1ZSksIGF0dHJpYnV0ZUZpZWxkcyksXHJcbiAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIGlmIChpc09iamVjdChkYXRhW2NvbHVtbk5hbWVdKSlcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIC4uLnJlc3VsdCxcclxuICAgICAgICAgICAgW2F0dHJpYnV0ZU5hbWVdOiAhIWZyb21cclxuICAgICAgICAgICAgICA/IGZyb20oZGF0YVtjb2x1bW5OYW1lXSlcclxuICAgICAgICAgICAgICA6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oaXM8RGF0YVR5cGU+KGRhdGFbY29sdW1uTmFtZV0pLCBhdHRyaWJ1dGVGaWVsZHMpLFxyXG4gICAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoISFmcm9tKSByZXR1cm4geyAuLi5yZXN1bHQsIFthdHRyaWJ1dGVOYW1lXTogZnJvbShkYXRhW2NvbHVtbk5hbWVdLCBkYXRhKSB9XHJcblxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIC4uLnJlc3VsdCxcclxuICAgICAgICBbYXR0cmlidXRlTmFtZV06IGlzU3RyaW5nKGRhdGFbY29sdW1uTmFtZV0pID8gcGFyc2VEYXRlVGltZShkYXRhW2NvbHVtbk5hbWVdLnRvU3RyaW5nKCkpIDogZGF0YVtjb2x1bW5OYW1lXSxcclxuICAgICAgfVxyXG4gICAgfSwge30pXHJcblxyXG4gIHN0YXRpYyBDb252ZXJ0RmllbGRWYWx1ZVRvID0gPFxyXG4gICAgTW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+LFxyXG4gICAgRGF0YVR5cGUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBEYXRhVHlwZSB8IERhdGU+LFxyXG4gID4oXHJcbiAgICBpbnN0YW5jZTogTW9kZWwsXHJcbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+LFxyXG4gICAgdXBkYXRlID0gZmFsc2UsXHJcbiAgKTogRGF0YVR5cGUgPT4ge1xyXG4gICAgY29uc3QgZGF0YTogUGFydGlhbDxNb2RlbD4gPSBpbnN0YW5jZS50b1BsYWluPy4oKSB8fCBpbnN0YW5jZVxyXG5cclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhkYXRhKS5yZWR1Y2UoKHJlc3VsdCwgYXR0cmlidXRlTmFtZSkgPT4ge1xyXG4gICAgICBjb25zdCB7XHJcbiAgICAgICAgY29sdW1uTmFtZSxcclxuICAgICAgICBmaWVsZHM6IGF0dHJpYnV0ZUZpZWxkcyxcclxuICAgICAgICBmb3JlaWduS2V5Q29sdW1uLFxyXG4gICAgICAgIHRvLFxyXG4gICAgICAgIGJpbmRQZXJzaXN0RGF0YSxcclxuICAgICAgfSA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPiwgZmllbGRzKVxyXG5cclxuICAgICAgaWYgKGJpbmRQZXJzaXN0RGF0YSlcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4ucmVzdWx0LFxyXG4gICAgICAgICAgLi4uYmluZFBlcnNpc3REYXRhKGRhdGFbYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0sIGluc3RhbmNlKSxcclxuICAgICAgICB9XHJcbiAgICAgIGlmIChpc05pbChjb2x1bW5OYW1lKSkgcmV0dXJuIHJlc3VsdFxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgISFmb3JlaWduS2V5Q29sdW1uICYmXHJcbiAgICAgICAgIWlzRW1wdHkoZm9yZWlnbktleUNvbHVtbikgJiZcclxuICAgICAgICAhT2JqZWN0LmtleXMoZm9yZWlnbktleUNvbHVtbikuZmlsdGVyKFxyXG4gICAgICAgICAgKGtleSkgPT5cclxuICAgICAgICAgICAgIWlzPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KGRhdGFbYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0pPy5ba2V5XSxcclxuICAgICAgICApLmxlbmd0aFxyXG4gICAgICApXHJcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGZvcmVpZ25LZXlDb2x1bW4pLnJlZHVjZShcclxuICAgICAgICAgIChvYmplY3QsIGN1cnJlbnQpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgeyBjb2x1bW5OYW1lOiBmb3JlaWduQ29sdW1uTmFtZSB9ID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShcclxuICAgICAgICAgICAgICBmb3JlaWduS2V5Q29sdW1uW2N1cnJlbnQgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0sXHJcbiAgICAgICAgICAgICAgZmllbGRzLFxyXG4gICAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIC4uLm9iamVjdCxcclxuICAgICAgICAgICAgICBbZm9yZWlnbkNvbHVtbk5hbWVdOiBkYXRhW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0/LltjdXJyZW50XSxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHsgLi4ucmVzdWx0IH0sXHJcbiAgICAgICAgKVxyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgIHVwZGF0ZSAmJlxyXG4gICAgICAgIGlzT2JqZWN0KGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSkgJiZcclxuICAgICAgICAhaXNOaWwoYXR0cmlidXRlRmllbGRzKSAmJlxyXG4gICAgICAgICFpc0RhdGUoZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dKVxyXG4gICAgICApXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdFxyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgICEhY29sdW1uTmFtZSAmJlxyXG4gICAgICAgIEFycmF5LmlzQXJyYXkoYXR0cmlidXRlRmllbGRzKSAmJlxyXG4gICAgICAgIGlzT2JqZWN0KGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSlcclxuICAgICAgKSB7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkID1cclxuICAgICAgICAgICFpc05pbChjb2x1bW5OYW1lKSAmJiB0b1xyXG4gICAgICAgICAgICA/IHRvKGluc3RhbmNlW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0sIGluc3RhbmNlKVxyXG4gICAgICAgICAgICA6IGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXVxyXG5cclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4ucmVzdWx0LFxyXG4gICAgICAgICAgLi4uKGNvbnZlcnRlZCAhPT0gdW5kZWZpbmVkXHJcbiAgICAgICAgICAgID8ge1xyXG4gICAgICAgICAgICAgICAgW2NvbHVtbk5hbWVdOiB7XHJcbiAgICAgICAgICAgICAgICAgIGRhdGE6XHJcbiAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2VbYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0gaW5zdGFuY2VvZiBCYXNlTW9kZWxcclxuICAgICAgICAgICAgICAgICAgICAgID8gR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRGaWVsZFZhbHVlVG8oXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZUZpZWxkcyBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcclxuICAgICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgICAgOiBjb252ZXJ0ZWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgOiB7fSksXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoISF0bylcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4ucmVzdWx0LFxyXG4gICAgICAgICAgW2NvbHVtbk5hbWVdOiB0byhpbnN0YW5jZVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dLCBpbnN0YW5jZSksXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIHsgLi4ucmVzdWx0LCBbY29sdW1uTmFtZV06IGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSB9XHJcbiAgICB9LCB7fSBhcyBEYXRhVHlwZSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIENvbnZlcnROZXN0ZWRGaWVsZHNUb0dyYXBoUUxGaWVsZHMgPSA8XHJcbiAgICBUIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPFQ+LFxyXG4gICAgUCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxQPixcclxuICA+KFxyXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXHJcbiAgICBmaWVsZFZhbHVlOiBDb2x1bW5PcHRpb25zPFQsIFA+LFxyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgaGFzQ3VzdG9tRmlsdGVycyA9ICEhZmllbGRWYWx1ZS5maWx0ZXJzXHJcblxyXG4gICAgaWYgKGhhc0N1c3RvbUZpbHRlcnMpXHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgb3BlcmF0aW9uOiBmaWVsZFZhbHVlLmNvbHVtbk5hbWUgfHwgZmllbGROYW1lLFxyXG4gICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZFZhbHVlLmZpZWxkcyksXHJcbiAgICAgICAgdmFyaWFibGVzOiB7XHJcbiAgICAgICAgICBbYCR7ZmllbGRWYWx1ZS5jb2x1bW5OYW1lfV93aGVyZWBdOiB7XHJcbiAgICAgICAgICAgIG5hbWU6ICd3aGVyZScsXHJcbiAgICAgICAgICAgIHR5cGU6IGZpZWxkVmFsdWUuZmlsdGVycy5maWx0ZXJUeXBlLFxyXG4gICAgICAgICAgICB2YWx1ZTogQmluZEZpbHRlclF1ZXJ5SGVscGVyLk1ha2VHcmFwaFFMV2hlcmUoZmllbGRWYWx1ZS5maWx0ZXJzLmZpbHRlcnMsIGZpZWxkVmFsdWUuZmllbGRzKSxcclxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH1cclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBbZmllbGRWYWx1ZS5jb2x1bW5OYW1lIHx8IGZpZWxkTmFtZV06IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRWYWx1ZS5maWVsZHMpLFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import axios from 'axios';
|
|
2
|
-
import { mutation, query } from 'gql-query-builder';
|
|
3
|
-
import { DebugHelper, isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
|
|
4
|
-
import { GraphQLFieldHelper } from './helpers';
|
|
5
|
-
export const withHasuraGraphQL = (MixinBase) => {
|
|
6
|
-
return class HasuraGraphQLMixin extends MixinBase {
|
|
7
|
-
constructor(...params) {
|
|
8
|
-
const options = params[0];
|
|
9
|
-
super(...params);
|
|
10
|
-
this.tableName = options.tableName;
|
|
11
|
-
this.endpoint = options.endpoint;
|
|
12
|
-
this.authOptions = options.authOptions;
|
|
13
|
-
this.model = options.model;
|
|
14
|
-
this.fields = options.fields || this.model.identifiersFields;
|
|
15
|
-
this.logger = DebugHelper.from(this);
|
|
16
|
-
}
|
|
17
|
-
get headers() {
|
|
18
|
-
return {
|
|
19
|
-
'Content-Type': 'application/json',
|
|
20
|
-
...(isNil(this.authOptions?.authToken) ? {} : { Authorization: this.authOptions?.authToken }),
|
|
21
|
-
...(isNil(this.authOptions?.adminSecret) ? {} : { 'X-Hasura-Admin-Secret': this.authOptions?.adminSecret }),
|
|
22
|
-
...(isNil(this.authOptions?.authRole)
|
|
23
|
-
? {}
|
|
24
|
-
: {
|
|
25
|
-
'X-Hasura-Role': this.authOptions.authRole.role,
|
|
26
|
-
'X-Hasura-User-Id': this.authOptions?.authRole?.userId,
|
|
27
|
-
}),
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
async mutation(operation, fields, variables) {
|
|
31
|
-
const resultQuery = mutation({
|
|
32
|
-
operation,
|
|
33
|
-
variables,
|
|
34
|
-
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fields),
|
|
35
|
-
});
|
|
36
|
-
return this.fetch(resultQuery);
|
|
37
|
-
}
|
|
38
|
-
async query(operation, fields, variables) {
|
|
39
|
-
const builded = this.buildHasuraQueryFields({
|
|
40
|
-
operation,
|
|
41
|
-
fields: fields,
|
|
42
|
-
variables,
|
|
43
|
-
});
|
|
44
|
-
const interpected = (await this.interceptors?.request?.(builded)) || builded;
|
|
45
|
-
const resultQuery = query(interpected);
|
|
46
|
-
const result = await this.fetch(resultQuery);
|
|
47
|
-
return (await this.interceptors?.response?.(result, interpected)) || result;
|
|
48
|
-
}
|
|
49
|
-
async fetch(params) {
|
|
50
|
-
this.logger.with('params').log(params);
|
|
51
|
-
const headers = this.headers;
|
|
52
|
-
const { data: result } = await axios({
|
|
53
|
-
url: `${this.endpoint}`,
|
|
54
|
-
method: 'POST',
|
|
55
|
-
data: params,
|
|
56
|
-
headers,
|
|
57
|
-
});
|
|
58
|
-
if (!isNil(result.errors))
|
|
59
|
-
throw new Error(JSON.stringify(result.errors));
|
|
60
|
-
this.logger.with('returns').log(result);
|
|
61
|
-
return result.data;
|
|
62
|
-
}
|
|
63
|
-
getAttributeGraphQLTypeOf(value) {
|
|
64
|
-
if (isUUID(value))
|
|
65
|
-
return 'uuid';
|
|
66
|
-
if (isString(value))
|
|
67
|
-
return 'String';
|
|
68
|
-
if (isBoolean(value))
|
|
69
|
-
return 'Boolean';
|
|
70
|
-
if (value instanceof Date)
|
|
71
|
-
return 'timestamptz';
|
|
72
|
-
if (isInteger(value))
|
|
73
|
-
return 'Int';
|
|
74
|
-
if (isNumber(value))
|
|
75
|
-
return 'numeric';
|
|
76
|
-
throw new Error('Type not implemented yet');
|
|
77
|
-
}
|
|
78
|
-
checkIfIsDateTimeAndParse(value) {
|
|
79
|
-
if (!/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/.test(value))
|
|
80
|
-
return value;
|
|
81
|
-
const date = parseISO(value);
|
|
82
|
-
if (isNaN(date.getTime()))
|
|
83
|
-
return value;
|
|
84
|
-
return date;
|
|
85
|
-
}
|
|
86
|
-
convertDataFromHasura(data, fields) {
|
|
87
|
-
const plain = GraphQLFieldHelper.ConvertFieldValueFrom(data, fields || this.fields);
|
|
88
|
-
return this.model.toInstance(plain);
|
|
89
|
-
}
|
|
90
|
-
convertDataToHasura(instance, update = false) {
|
|
91
|
-
return GraphQLFieldHelper.ConvertFieldValueTo(instance, this.fields, update);
|
|
92
|
-
}
|
|
93
|
-
buildHasuraQueryFields({ operation, fields, variables, }) {
|
|
94
|
-
return GraphQLFieldHelper.CheckIsGraphQLParams(operation)
|
|
95
|
-
? operation.map((option) => ({
|
|
96
|
-
operation: option.operation,
|
|
97
|
-
variables: option.variables,
|
|
98
|
-
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(option.fields),
|
|
99
|
-
}))
|
|
100
|
-
: {
|
|
101
|
-
operation,
|
|
102
|
-
variables,
|
|
103
|
-
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fields),
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
};
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQTtBQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR25ELE9BQU8sRUFDTCxXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUdOLFFBQVEsR0FDVCxNQUFNLGdCQUFnQixDQUFBO0FBVXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQXNCOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FJL0IsU0FBWSxFQUMwRixFQUFFO0lBQ3hHLE9BQU8sTUFBTSxrQkFBbUIsU0FBUSxTQUFTO1FBdUIvQyxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBbUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBRXpELEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFBO1lBRWhCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQTtZQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUE7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFBO1lBQ3RDLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQTtZQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBZ0Qs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QTtRQUNyQyxDQUFDO1FBRUQsbUJBQW1CLENBQUMsUUFBZSxFQUFFLE1BQU0sR0FBRyxLQUFLO1lBQ2pELE9BQU8sa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDOUUsQ0FBQztRQUVELHNCQUFzQixDQUFDLEVBQ3JCLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxHQUtWO1lBQ0MsT0FBTyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZELENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6QixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztvQkFDM0IsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQzVFLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUM7b0JBQ0UsU0FBUztvQkFDVCxTQUFTO29CQUNULE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxpQ0FBaUMsQ0FBQyxNQUFNLENBQUM7aUJBQ3JFLENBQUE7UUFDUCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tICdheGlvcydcclxuaW1wb3J0IHsgbXV0YXRpb24sIHF1ZXJ5IH0gZnJvbSAnZ3FsLXF1ZXJ5LWJ1aWxkZXInXHJcbmltcG9ydCB7IElPcGVyYXRpb24gfSBmcm9tICdncWwtcXVlcnktYnVpbGRlci9idWlsZC9JUXVlcnlCdWlsZGVyT3B0aW9ucydcclxuaW1wb3J0IHsgQmFzZU1vZGVsQnVpbGRlciwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xyXG5pbXBvcnQge1xyXG4gIERlYnVnSGVscGVyLFxyXG4gIGlzQm9vbGVhbixcclxuICBpc0ludGVnZXIsXHJcbiAgaXNOYU4sXHJcbiAgaXNOaWwsXHJcbiAgaXNOdW1iZXIsXHJcbiAgaXNTdHJpbmcsXHJcbiAgaXNVVUlELFxyXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsXHJcbiAgTWl4aW5DdG9yLFxyXG4gIHBhcnNlSVNPLFxyXG59IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQge1xyXG4gIEZpZWxkcyxcclxuICBHcmFwaFFMUGFyYW1zLFxyXG4gIEdyYXBoUUxSZXBvc2l0b3J5LFxyXG4gIEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyxcclxuICBIYXN1cmFHcmFwaFFMRmllbGRzLFxyXG4gIEhhc3VyYUdyYXBoUUxIZWFkZXJzLFxyXG4gIFZhcmlhYmxlT3B0aW9ucyxcclxufSBmcm9tICcuLi90eXBlcydcclxuaW1wb3J0IHsgR3JhcGhRTEZpZWxkSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xyXG5cclxudHlwZSBRdWVyeUJ1aWxkZXJPcHRpb25zID0ge1xyXG4gIG9wZXJhdGlvbjogc3RyaW5nIHwgSU9wZXJhdGlvblxyXG4gIGZpZWxkczogRmllbGRzXHJcbiAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zXHJcbn1cclxuXHJcbnR5cGUgSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yczxQID0gUXVlcnlCdWlsZGVyT3B0aW9ucyB8IFF1ZXJ5QnVpbGRlck9wdGlvbnNbXT4gPSB7XHJcbiAgcmVxdWVzdD86IDxSPihyZXF1ZXN0OiBQKSA9PiBQcm9taXNlPFAgJiBSPlxyXG4gIHJlc3BvbnNlPzogPFI+KHJlc3BvbnNlOiBSLCByZXF1ZXN0OiBQKSA9PiBQcm9taXNlPFI+XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsLCBNb2RlbFsnaWRlbnRpZmllcnNGaWVsZHMnXVtudW1iZXJdPj4gPSB7XHJcbiAgdGFibGVOYW1lOiBzdHJpbmdcclxuICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNb2RlbD5cclxuICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+XHJcbiAgZW5kcG9pbnQ6IHN0cmluZ1xyXG4gIGludGVyY2VwdG9ycz86IEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnNcclxuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB3aXRoSGFzdXJhR3JhcGhRTCA9IDxcclxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZSwgTUJhc2VbJ2lkZW50aWZpZXJzRmllbGRzJ11bbnVtYmVyXT4sXHJcbiAgVCBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3RvcixcclxuPihcclxuICBNaXhpbkJhc2U6IFQsXHJcbik6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4sIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8YW55W10sIEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPltdPj4gPT4ge1xyXG4gIHJldHVybiBjbGFzcyBIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4ge1xyXG4gICAgdGFibGVOYW1lOiBzdHJpbmdcclxuICAgIGVuZHBvaW50OiBzdHJpbmdcclxuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcclxuICAgIGludGVyY2VwdG9yczogSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yc1xyXG4gICAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8TUJhc2U+XHJcbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XHJcbiAgICBsb2dnZXI6IERlYnVnSGVscGVyXHJcblxyXG4gICAgZ2V0IGhlYWRlcnMoKTogSGFzdXJhR3JhcGhRTEhlYWRlcnMge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhUb2tlbikgPyB7fSA6IHsgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoT3B0aW9ucz8uYXV0aFRva2VuIH0pLFxyXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zPy5hZG1pblNlY3JldCkgPyB7fSA6IHsgJ1gtSGFzdXJhLUFkbWluLVNlY3JldCc6IHRoaXMuYXV0aE9wdGlvbnM/LmFkbWluU2VjcmV0IH0pLFxyXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zPy5hdXRoUm9sZSlcclxuICAgICAgICAgID8ge31cclxuICAgICAgICAgIDoge1xyXG4gICAgICAgICAgICAgICdYLUhhc3VyYS1Sb2xlJzogdGhpcy5hdXRoT3B0aW9ucy5hdXRoUm9sZS5yb2xlLFxyXG4gICAgICAgICAgICAgICdYLUhhc3VyYS1Vc2VyLUlkJzogdGhpcy5hdXRoT3B0aW9ucz8uYXV0aFJvbGU/LnVzZXJJZCxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XHJcbiAgICAgIGNvbnN0IG9wdGlvbnM6IEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiA9IHBhcmFtc1swXVxyXG5cclxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxyXG5cclxuICAgICAgdGhpcy50YWJsZU5hbWUgPSBvcHRpb25zLnRhYmxlTmFtZVxyXG4gICAgICB0aGlzLmVuZHBvaW50ID0gb3B0aW9ucy5lbmRwb2ludFxyXG4gICAgICB0aGlzLmF1dGhPcHRpb25zID0gb3B0aW9ucy5hdXRoT3B0aW9uc1xyXG4gICAgICB0aGlzLm1vZGVsID0gb3B0aW9ucy5tb2RlbFxyXG4gICAgICB0aGlzLmZpZWxkcyA9IG9wdGlvbnMuZmllbGRzIHx8ICh0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KVxyXG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcylcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBtdXRhdGlvbjxSZXR1cm5GaWVsZHMgPSBhbnk+KFxyXG4gICAgICBvcGVyYXRpb246IHN0cmluZyB8IElPcGVyYXRpb24sXHJcbiAgICAgIGZpZWxkcz86IHN0cmluZ1tdIHwgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXHJcbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9ucyxcclxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XHJcbiAgICAgIGNvbnN0IHJlc3VsdFF1ZXJ5ID0gbXV0YXRpb24oe1xyXG4gICAgICAgIG9wZXJhdGlvbixcclxuICAgICAgICB2YXJpYWJsZXMsXHJcbiAgICAgICAgZmllbGRzOiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydE1vZGVsRmllbGRzVG9HcmFwaFFMRmllbGRzKGZpZWxkcyBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPiksXHJcbiAgICAgIH0pXHJcblxyXG4gICAgICByZXR1cm4gdGhpcy5mZXRjaChyZXN1bHRRdWVyeSlcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBxdWVyeTxSZXR1cm5GaWVsZHMgPSBhbnk+KFxyXG4gICAgICBvcGVyYXRpb246IHN0cmluZyB8IElPcGVyYXRpb24gfCBHcmFwaFFMUGFyYW1zPE1CYXNlPltdLFxyXG4gICAgICBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxyXG4gICAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnMsXHJcbiAgICApOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xyXG4gICAgICBjb25zdCBidWlsZGVkID0gdGhpcy5idWlsZEhhc3VyYVF1ZXJ5RmllbGRzKHtcclxuICAgICAgICBvcGVyYXRpb24sXHJcbiAgICAgICAgZmllbGRzOiBmaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXHJcbiAgICAgICAgdmFyaWFibGVzLFxyXG4gICAgICB9KVxyXG4gICAgICBjb25zdCBpbnRlcnBlY3RlZCA9IChhd2FpdCB0aGlzLmludGVyY2VwdG9ycz8ucmVxdWVzdD8uKGJ1aWxkZWQpKSB8fCBidWlsZGVkXHJcbiAgICAgIGNvbnN0IHJlc3VsdFF1ZXJ5ID0gcXVlcnkoaW50ZXJwZWN0ZWQpXHJcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXHJcblxyXG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMuaW50ZXJjZXB0b3JzPy5yZXNwb25zZT8uKHJlc3VsdCwgaW50ZXJwZWN0ZWQpKSB8fCByZXN1bHRcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBmZXRjaDxSZXR1cm5GaWVsZHMgPSBhbnk+KHBhcmFtczogeyB2YXJpYWJsZXM6IGFueTsgcXVlcnk6IHN0cmluZyB9KTogUHJvbWlzZTxSZXR1cm5GaWVsZHM+IHtcclxuICAgICAgdGhpcy5sb2dnZXIud2l0aCgncGFyYW1zJykubG9nKHBhcmFtcylcclxuXHJcbiAgICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLmhlYWRlcnNcclxuICAgICAgY29uc3QgeyBkYXRhOiByZXN1bHQgfSA9IGF3YWl0IGF4aW9zKHtcclxuICAgICAgICB1cmw6IGAke3RoaXMuZW5kcG9pbnR9YCxcclxuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcclxuICAgICAgICBkYXRhOiBwYXJhbXMsXHJcbiAgICAgICAgaGVhZGVycyxcclxuICAgICAgfSlcclxuXHJcbiAgICAgIGlmICghaXNOaWwocmVzdWx0LmVycm9ycykpIHRocm93IG5ldyBFcnJvcihKU09OLnN0cmluZ2lmeShyZXN1bHQuZXJyb3JzKSlcclxuXHJcbiAgICAgIHRoaXMubG9nZ2VyLndpdGgoJ3JldHVybnMnKS5sb2cocmVzdWx0KVxyXG5cclxuICAgICAgcmV0dXJuIHJlc3VsdC5kYXRhXHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QXR0cmlidXRlR3JhcGhRTFR5cGVPZjxGaWVsZFR5cGU+KHZhbHVlOiBGaWVsZFR5cGUpOiBzdHJpbmcge1xyXG4gICAgICBpZiAoaXNVVUlEKHZhbHVlIGFzIGFueSkpIHJldHVybiAndXVpZCdcclxuICAgICAgaWYgKGlzU3RyaW5nKHZhbHVlKSkgcmV0dXJuICdTdHJpbmcnXHJcbiAgICAgIGlmIChpc0Jvb2xlYW4odmFsdWUpKSByZXR1cm4gJ0Jvb2xlYW4nXHJcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHJldHVybiAndGltZXN0YW1wdHonXHJcbiAgICAgIGlmIChpc0ludGVnZXIodmFsdWUpKSByZXR1cm4gJ0ludCdcclxuICAgICAgaWYgKGlzTnVtYmVyKHZhbHVlKSkgcmV0dXJuICdudW1lcmljJ1xyXG5cclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUeXBlIG5vdCBpbXBsZW1lbnRlZCB5ZXQnKVxyXG4gICAgfVxyXG5cclxuICAgIGNoZWNrSWZJc0RhdGVUaW1lQW5kUGFyc2UodmFsdWU6IHN0cmluZyk6IERhdGUgfCBzdHJpbmcge1xyXG4gICAgICBpZiAoIS9eXFxkezR9LSgwWzEtOV18MVswLTJdKS0oMFsxLTldfFsxMl1bMC05XXwzWzAxXSkkLy50ZXN0KHZhbHVlKSkgcmV0dXJuIHZhbHVlXHJcblxyXG4gICAgICBjb25zdCBkYXRlID0gcGFyc2VJU08odmFsdWUpXHJcblxyXG4gICAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSByZXR1cm4gdmFsdWVcclxuXHJcbiAgICAgIHJldHVybiBkYXRlXHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydERhdGFGcm9tSGFzdXJhKFxyXG4gICAgICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+LFxyXG4gICAgICBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxyXG4gICAgKTogTUJhc2Uge1xyXG4gICAgICBjb25zdCBwbGFpbiA9IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICAoZmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KSB8fCB0aGlzLmZpZWxkcyxcclxuICAgICAgKVxyXG5cclxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbilcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0RGF0YVRvSGFzdXJhKGluc3RhbmNlOiBNQmFzZSwgdXBkYXRlID0gZmFsc2UpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+IHtcclxuICAgICAgcmV0dXJuIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKGluc3RhbmNlLCB0aGlzLmZpZWxkcywgdXBkYXRlKVxyXG4gICAgfVxyXG5cclxuICAgIGJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xyXG4gICAgICBvcGVyYXRpb24sXHJcbiAgICAgIGZpZWxkcyxcclxuICAgICAgdmFyaWFibGVzLFxyXG4gICAgfToge1xyXG4gICAgICBvcGVyYXRpb246IHN0cmluZyB8IElPcGVyYXRpb24gfCBHcmFwaFFMUGFyYW1zPE1CYXNlPltdXHJcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XHJcbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xyXG4gICAgfSk6IFF1ZXJ5QnVpbGRlck9wdGlvbnMgfCBRdWVyeUJ1aWxkZXJPcHRpb25zW10ge1xyXG4gICAgICByZXR1cm4gR3JhcGhRTEZpZWxkSGVscGVyLkNoZWNrSXNHcmFwaFFMUGFyYW1zKG9wZXJhdGlvbilcclxuICAgICAgICA/IG9wZXJhdGlvbi5tYXAoKG9wdGlvbikgPT4gKHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uOiBvcHRpb24ub3BlcmF0aW9uLFxyXG4gICAgICAgICAgICB2YXJpYWJsZXM6IG9wdGlvbi52YXJpYWJsZXMsXHJcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhvcHRpb24uZmllbGRzKSxcclxuICAgICAgICAgIH0pKVxyXG4gICAgICAgIDoge1xyXG4gICAgICAgICAgICBvcGVyYXRpb24sXHJcbiAgICAgICAgICAgIHZhcmlhYmxlcyxcclxuICAgICAgICAgICAgZmllbGRzOiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydE1vZGVsRmllbGRzVG9HcmFwaFFMRmllbGRzKGZpZWxkcyksXHJcbiAgICAgICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|