@infrab4a/connect 4.0.0-beta.37 → 4.0.0-beta.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/domain/catalog/helpers/index.d.ts +1 -1
- package/domain/catalog/helpers/round-product-price.helper.d.ts +4 -4
- package/domain/catalog/index.d.ts +3 -3
- package/domain/catalog/models/category-collection-children.d.ts +13 -13
- package/domain/catalog/models/category-filter.d.ts +11 -11
- package/domain/catalog/models/category.d.ts +29 -29
- package/domain/catalog/models/enums/index.d.ts +2 -2
- package/domain/catalog/models/enums/product-genders.enum.d.ts +5 -5
- package/domain/catalog/models/enums/shops.enum.d.ts +6 -6
- package/domain/catalog/models/filter-option.d.ts +9 -9
- package/domain/catalog/models/filter.d.ts +12 -12
- package/domain/catalog/models/index.d.ts +10 -10
- package/domain/catalog/models/kit-product.d.ts +12 -12
- package/domain/catalog/models/product.d.ts +44 -44
- package/domain/catalog/models/types/category-condition.type.d.ts +4 -4
- package/domain/catalog/models/types/category-metadata.type.d.ts +4 -4
- package/domain/catalog/models/types/category-product.d.ts +4 -4
- package/domain/catalog/models/types/index.d.ts +11 -11
- package/domain/catalog/models/types/product-evaluation.type.d.ts +6 -6
- package/domain/catalog/models/types/product-gender.type.d.ts +1 -1
- package/domain/catalog/models/types/product-metadata.type.d.ts +4 -4
- package/domain/catalog/models/types/product-review.type.d.ts +17 -17
- package/domain/catalog/models/types/shop-description.type.d.ts +8 -8
- package/domain/catalog/models/types/shop-price.type.d.ts +6 -6
- package/domain/catalog/models/types/stock.type.d.ts +3 -3
- package/domain/catalog/models/types/variant-grade.type.d.ts +4 -4
- package/domain/catalog/models/variant.d.ts +17 -17
- package/domain/catalog/repositories/category-collection-children.repository.d.ts +4 -4
- package/domain/catalog/repositories/category-filter.repository.d.ts +5 -5
- package/domain/catalog/repositories/category.repository.d.ts +18 -18
- package/domain/catalog/repositories/filter-option.repository.d.ts +4 -4
- package/domain/catalog/repositories/filter.repository.d.ts +4 -4
- package/domain/catalog/repositories/index.d.ts +8 -8
- package/domain/catalog/repositories/product.repository.d.ts +15 -15
- package/domain/catalog/repositories/subscription-product.repository.d.ts +4 -4
- package/domain/catalog/repositories/variant.repository.d.ts +4 -4
- package/domain/generic/index.d.ts +2 -2
- package/domain/generic/model/base.model.d.ts +14 -14
- package/domain/generic/model/identifier-fields.d.ts +4 -4
- package/domain/generic/model/index.d.ts +3 -3
- package/domain/generic/model/types/base-model-builder.type.d.ts +17 -17
- package/domain/generic/model/types/identifier-model.type.d.ts +8 -8
- package/domain/generic/model/types/index.d.ts +5 -5
- package/domain/generic/model/types/model-base-structure.type.d.ts +12 -12
- package/domain/generic/model/types/non-function-properties.type.d.ts +12 -12
- package/domain/generic/model/types/non-function-property-name.type.d.ts +13 -13
- package/domain/generic/repository/create.repository.d.ts +8 -8
- package/domain/generic/repository/crud.repository.d.ts +19 -19
- package/domain/generic/repository/delete.repository.d.ts +7 -7
- package/domain/generic/repository/enums/index.d.ts +2 -2
- package/domain/generic/repository/enums/update-option-actions.enum.d.ts +7 -7
- package/domain/generic/repository/enums/where.enum.d.ts +14 -14
- package/domain/generic/repository/find.repository.d.ts +16 -16
- package/domain/generic/repository/get.repository.d.ts +5 -5
- package/domain/generic/repository/index.d.ts +9 -9
- package/domain/generic/repository/read.repository.d.ts +14 -14
- package/domain/generic/repository/types/index.d.ts +6 -6
- package/domain/generic/repository/types/repository-find-filters.type.d.ts +13 -13
- package/domain/generic/repository/types/repository-find-result.type.d.ts +11 -11
- package/domain/generic/repository/types/repository-limit-options.type.d.ts +4 -4
- package/domain/generic/repository/types/repository-order-by-list.type.d.ts +5 -5
- package/domain/generic/repository/types/repository-update-params.type.d.ts +11 -11
- package/domain/generic/repository/types/where-options.type.d.ts +2 -2
- package/domain/generic/repository/update.repository.d.ts +6 -6
- package/domain/index.d.ts +6 -6
- package/domain/location/index.d.ts +1 -1
- package/domain/location/models/address.d.ts +24 -24
- package/domain/location/models/index.d.ts +2 -2
- package/domain/location/models/types/index.d.ts +3 -3
- package/domain/location/models/types/location-bound.type.d.ts +6 -6
- package/domain/location/models/types/location-geometry.type.d.ts +7 -7
- package/domain/location/models/types/location-lat-lng.type.d.ts +4 -4
- package/domain/shop-settings/enums/filter-type.enum.d.ts +19 -19
- package/domain/shop-settings/enums/index.d.ts +2 -2
- package/domain/shop-settings/enums/questions-filters.enum.d.ts +19 -19
- package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +9 -9
- package/domain/shop-settings/helpers/index.d.ts +1 -1
- package/domain/shop-settings/index.d.ts +4 -4
- package/domain/shop-settings/models/home.d.ts +18 -18
- package/domain/shop-settings/models/index.d.ts +4 -4
- package/domain/shop-settings/models/shop-menu.d.ts +7 -7
- package/domain/shop-settings/models/shop-settings.d.ts +9 -9
- package/domain/shop-settings/models/types/banner.type.d.ts +6 -6
- package/domain/shop-settings/models/types/benefit.type.d.ts +5 -5
- package/domain/shop-settings/models/types/home-data.type.d.ts +15 -15
- package/domain/shop-settings/models/types/index.d.ts +10 -10
- package/domain/shop-settings/models/types/menu-nav.type.d.ts +8 -8
- package/domain/shop-settings/models/types/shop-banner.type.d.ts +12 -12
- package/domain/shop-settings/models/types/shop-brands.type.d.ts +10 -10
- package/domain/shop-settings/models/types/shop-carousel.type.d.ts +5 -5
- package/domain/shop-settings/models/types/shop-collection.type.d.ts +9 -9
- package/domain/shop-settings/models/types/shop-section.type.d.ts +9 -9
- package/domain/shop-settings/models/types/sub-menu.type.d.ts +8 -8
- package/domain/shop-settings/repositories/home.repository.d.ts +4 -4
- package/domain/shop-settings/repositories/index.d.ts +3 -3
- package/domain/shop-settings/repositories/shop-menu.repository.d.ts +4 -4
- package/domain/shop-settings/repositories/shop-settings.repository.d.ts +4 -4
- package/domain/shopping/index.d.ts +2 -2
- package/domain/shopping/models/buy-2-win.d.ts +18 -18
- package/domain/shopping/models/campaign-dashboard.d.ts +15 -15
- package/domain/shopping/models/campaign-hashtag.d.ts +18 -18
- package/domain/shopping/models/checkout.d.ts +26 -26
- package/domain/shopping/models/coupons/coupon.d.ts +60 -60
- package/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +5 -5
- package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +4 -4
- package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +4 -4
- package/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +8 -8
- package/domain/shopping/models/coupons/enums/index.d.ts +3 -3
- package/domain/shopping/models/coupons/index.d.ts +2 -2
- package/domain/shopping/models/enums/checkout-types.enum.d.ts +5 -5
- package/domain/shopping/models/enums/index.d.ts +2 -2
- package/domain/shopping/models/enums/order-status.enum.d.ts +10 -10
- package/domain/shopping/models/index.d.ts +12 -12
- package/domain/shopping/models/line-item.d.ts +8 -8
- package/domain/shopping/models/order.d.ts +9 -9
- package/domain/shopping/models/payment.d.ts +67 -67
- package/domain/shopping/models/shipping-method.d.ts +16 -16
- package/domain/shopping/models/subscription/checkout.d.ts +20 -20
- package/domain/shopping/models/subscription/index.d.ts +2 -2
- package/domain/shopping/models/subscription/plan.d.ts +10 -10
- package/domain/shopping/models/types/index.d.ts +7 -7
- package/domain/shopping/models/types/payment-address.type.d.ts +12 -12
- package/domain/shopping/models/types/payment-billing.type.d.ts +7 -7
- package/domain/shopping/models/types/payment-card.type.d.ts +14 -14
- package/domain/shopping/models/types/payment-customer.type.d.ts +18 -18
- package/domain/shopping/models/types/payment-document.type.d.ts +6 -6
- package/domain/shopping/models/types/payment-item.type.d.ts +11 -11
- package/domain/shopping/models/types/payment-shipping.type.d.ts +10 -10
- package/domain/shopping/repositories/buy-2-win.repository.d.ts +4 -4
- package/domain/shopping/repositories/campaign-dashboard.repository.d.ts +4 -4
- package/domain/shopping/repositories/campaign-hashtag.repository.d.ts +4 -4
- package/domain/shopping/repositories/checkout.repository.d.ts +4 -4
- package/domain/shopping/repositories/coupon.repository.d.ts +4 -4
- package/domain/shopping/repositories/index.d.ts +9 -9
- package/domain/shopping/repositories/legacy-order.repository.d.ts +3 -3
- package/domain/shopping/repositories/order.repository.d.ts +4 -4
- package/domain/shopping/repositories/payment.repository.d.ts +4 -4
- package/domain/shopping/repositories/subscription/checkout.repository.d.ts +4 -4
- package/domain/shopping/repositories/subscription/index.d.ts +2 -2
- package/domain/shopping/repositories/subscription/plan.repository.d.ts +4 -4
- package/domain/users/errors/index.d.ts +3 -3
- package/domain/users/errors/unauthorized.error.d.ts +4 -4
- package/domain/users/errors/user-already-registered.error.d.ts +4 -4
- package/domain/users/errors/weak-password.error.d.ts +4 -4
- package/domain/users/index.d.ts +5 -5
- package/domain/users/models/beauty-profile.d.ts +11 -11
- package/domain/users/models/enums/accessory-importances.enum.d.ts +5 -5
- package/domain/users/models/enums/area.enum.d.ts +11 -11
- package/domain/users/models/enums/beard-problems.enum.d.ts +9 -9
- package/domain/users/models/enums/beard-sizes.enum.d.ts +7 -7
- package/domain/users/models/enums/beauty-product-importances.enum.d.ts +6 -6
- package/domain/users/models/enums/body-problems.enum.d.ts +11 -11
- package/domain/users/models/enums/body-shapes.enum.d.ts +7 -7
- package/domain/users/models/enums/body-tattoos.enum.d.ts +5 -5
- package/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +7 -7
- package/domain/users/models/enums/face-skin-problems.enum.d.ts +10 -10
- package/domain/users/models/enums/face-skin-tones.enum.d.ts +8 -8
- package/domain/users/models/enums/family-incomes.enum.d.ts +8 -8
- package/domain/users/models/enums/fragrance-importances.enum.d.ts +5 -5
- package/domain/users/models/enums/hair-colors.enum.d.ts +10 -10
- package/domain/users/models/enums/hair-problems.enum.d.ts +10 -10
- package/domain/users/models/enums/hair-strands.enum.d.ts +8 -8
- package/domain/users/models/enums/hair-types.enum.d.ts +7 -7
- package/domain/users/models/enums/index.d.ts +20 -20
- package/domain/users/models/enums/office-position.enum.d.ts +6 -6
- package/domain/users/models/enums/product-spents.enum.d.ts +8 -8
- package/domain/users/models/enums/user-type.enum.d.ts +8 -8
- package/domain/users/models/index.d.ts +7 -7
- package/domain/users/models/lead.d.ts +8 -8
- package/domain/users/models/subscription/edition.d.ts +16 -16
- package/domain/users/models/subscription/enums/billing-status.enum.d.ts +3 -3
- package/domain/users/models/subscription/enums/edition-status.enum.d.ts +4 -4
- package/domain/users/models/subscription/enums/index.d.ts +4 -4
- package/domain/users/models/subscription/enums/payment-type.enum.d.ts +5 -5
- package/domain/users/models/subscription/enums/status.enum.d.ts +4 -4
- package/domain/users/models/subscription/index.d.ts +4 -4
- package/domain/users/models/subscription/payment.d.ts +13 -13
- package/domain/users/models/subscription/subscription.d.ts +28 -28
- package/domain/users/models/user-address.d.ts +6 -6
- package/domain/users/models/user-payment-method.d.ts +14 -14
- package/domain/users/models/user.d.ts +27 -27
- package/domain/users/repositories/beauty-profile.repository.d.ts +4 -4
- package/domain/users/repositories/edition.repository.d.ts +4 -4
- package/domain/users/repositories/index.d.ts +8 -8
- package/domain/users/repositories/lead.repository.d.ts +4 -4
- package/domain/users/repositories/subscription-payment.repository.d.ts +4 -4
- package/domain/users/repositories/subscription.repository.d.ts +4 -4
- package/domain/users/repositories/user-address.repository.d.ts +4 -4
- package/domain/users/repositories/user-payment-method.repository.d.ts +4 -4
- package/domain/users/repositories/user.repository.d.ts +6 -6
- package/domain/users/services/authentication.service.d.ts +12 -12
- package/domain/users/services/index.d.ts +3 -3
- package/domain/users/services/register.service.d.ts +7 -7
- package/domain/users/services/types/basic-user-data.type.d.ts +4 -4
- package/domain/users/services/types/index.d.ts +1 -1
- package/domain/users/use-cases/authentication.d.ts +21 -21
- package/domain/users/use-cases/index.d.ts +4 -4
- package/domain/users/use-cases/recovery-password.d.ts +6 -6
- package/domain/users/use-cases/register.d.ts +13 -13
- package/domain/users/use-cases/signout.d.ts +6 -6
- package/errors/duplicated-results.error.d.ts +4 -4
- package/errors/index.d.ts +4 -4
- package/errors/invalid-argument.error.d.ts +4 -4
- package/errors/not-found.error.d.ts +4 -4
- package/errors/required-argument.error.d.ts +6 -6
- package/esm2020/domain/catalog/helpers/index.mjs +2 -2
- package/esm2020/domain/catalog/helpers/round-product-price.helper.mjs +15 -15
- package/esm2020/domain/catalog/index.mjs +4 -4
- package/esm2020/domain/catalog/models/category-collection-children.mjs +13 -13
- package/esm2020/domain/catalog/models/category-filter.mjs +14 -14
- package/esm2020/domain/catalog/models/category.mjs +18 -18
- package/esm2020/domain/catalog/models/enums/index.mjs +3 -3
- package/esm2020/domain/catalog/models/enums/product-genders.enum.mjs +7 -7
- package/esm2020/domain/catalog/models/enums/shops.enum.mjs +8 -8
- package/esm2020/domain/catalog/models/filter-option.mjs +7 -7
- package/esm2020/domain/catalog/models/filter.mjs +7 -7
- package/esm2020/domain/catalog/models/index.mjs +11 -11
- package/esm2020/domain/catalog/models/kit-product.mjs +18 -18
- package/esm2020/domain/catalog/models/product.mjs +37 -37
- package/esm2020/domain/catalog/models/types/category-condition.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/category-metadata.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/category-product.mjs +2 -2
- package/esm2020/domain/catalog/models/types/index.mjs +12 -12
- package/esm2020/domain/catalog/models/types/product-evaluation.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/product-gender.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/product-metadata.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/product-review.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/shop-description.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/shop-price.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/stock.type.mjs +2 -2
- package/esm2020/domain/catalog/models/types/variant-grade.type.mjs +2 -2
- package/esm2020/domain/catalog/models/variant.mjs +7 -7
- package/esm2020/domain/catalog/repositories/category-collection-children.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/category-filter.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/category.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/filter-option.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/filter.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/index.mjs +9 -9
- package/esm2020/domain/catalog/repositories/product.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/subscription-product.repository.mjs +2 -2
- package/esm2020/domain/catalog/repositories/variant.repository.mjs +2 -2
- package/esm2020/domain/generic/index.mjs +3 -3
- package/esm2020/domain/generic/model/base.model.mjs +24 -24
- package/esm2020/domain/generic/model/identifier-fields.mjs +2 -2
- package/esm2020/domain/generic/model/index.mjs +4 -4
- package/esm2020/domain/generic/model/types/base-model-builder.type.mjs +2 -2
- package/esm2020/domain/generic/model/types/identifier-model.type.mjs +2 -2
- package/esm2020/domain/generic/model/types/index.mjs +6 -6
- package/esm2020/domain/generic/model/types/model-base-structure.type.mjs +2 -2
- package/esm2020/domain/generic/model/types/non-function-properties.type.mjs +2 -2
- package/esm2020/domain/generic/model/types/non-function-property-name.type.mjs +2 -2
- package/esm2020/domain/generic/repository/create.repository.mjs +2 -2
- package/esm2020/domain/generic/repository/crud.repository.mjs +2 -2
- package/esm2020/domain/generic/repository/delete.repository.mjs +2 -2
- package/esm2020/domain/generic/repository/enums/index.mjs +3 -3
- package/esm2020/domain/generic/repository/enums/update-option-actions.enum.mjs +9 -9
- package/esm2020/domain/generic/repository/enums/where.enum.mjs +16 -16
- package/esm2020/domain/generic/repository/find.repository.mjs +2 -2
- package/esm2020/domain/generic/repository/get.repository.mjs +2 -2
- package/esm2020/domain/generic/repository/index.mjs +10 -10
- package/esm2020/domain/generic/repository/read.repository.mjs +2 -2
- package/esm2020/domain/generic/repository/types/index.mjs +7 -7
- package/esm2020/domain/generic/repository/types/repository-find-filters.type.mjs +2 -2
- package/esm2020/domain/generic/repository/types/repository-find-result.type.mjs +2 -2
- package/esm2020/domain/generic/repository/types/repository-limit-options.type.mjs +2 -2
- package/esm2020/domain/generic/repository/types/repository-order-by-list.type.mjs +2 -2
- package/esm2020/domain/generic/repository/types/repository-update-params.type.mjs +2 -2
- package/esm2020/domain/generic/repository/types/where-options.type.mjs +2 -2
- package/esm2020/domain/generic/repository/update.repository.mjs +2 -2
- package/esm2020/domain/index.mjs +7 -7
- package/esm2020/domain/location/index.mjs +2 -2
- package/esm2020/domain/location/models/address.mjs +7 -7
- package/esm2020/domain/location/models/index.mjs +3 -3
- package/esm2020/domain/location/models/types/index.mjs +4 -4
- package/esm2020/domain/location/models/types/location-bound.type.mjs +2 -2
- package/esm2020/domain/location/models/types/location-geometry.type.mjs +2 -2
- package/esm2020/domain/location/models/types/location-lat-lng.type.mjs +2 -2
- package/esm2020/domain/shop-settings/enums/filter-type.enum.mjs +21 -21
- package/esm2020/domain/shop-settings/enums/index.mjs +3 -3
- package/esm2020/domain/shop-settings/enums/questions-filters.enum.mjs +21 -21
- package/esm2020/domain/shop-settings/helpers/beauty-questions.helper.mjs +47 -47
- package/esm2020/domain/shop-settings/helpers/index.mjs +2 -2
- package/esm2020/domain/shop-settings/index.mjs +5 -5
- package/esm2020/domain/shop-settings/models/home.mjs +7 -7
- package/esm2020/domain/shop-settings/models/index.mjs +5 -5
- package/esm2020/domain/shop-settings/models/shop-menu.mjs +7 -7
- package/esm2020/domain/shop-settings/models/shop-settings.mjs +7 -7
- package/esm2020/domain/shop-settings/models/types/banner.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/benefit.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/home-data.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/index.mjs +11 -11
- package/esm2020/domain/shop-settings/models/types/menu-nav.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/shop-banner.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/shop-brands.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/shop-carousel.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/shop-collection.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/shop-section.type.mjs +2 -2
- package/esm2020/domain/shop-settings/models/types/sub-menu.type.mjs +2 -2
- package/esm2020/domain/shop-settings/repositories/home.repository.mjs +2 -2
- package/esm2020/domain/shop-settings/repositories/index.mjs +4 -4
- package/esm2020/domain/shop-settings/repositories/shop-menu.repository.mjs +2 -2
- package/esm2020/domain/shop-settings/repositories/shop-settings.repository.mjs +2 -2
- package/esm2020/domain/shopping/index.mjs +3 -3
- package/esm2020/domain/shopping/models/buy-2-win.mjs +14 -14
- package/esm2020/domain/shopping/models/campaign-dashboard.mjs +7 -7
- package/esm2020/domain/shopping/models/campaign-hashtag.mjs +7 -7
- package/esm2020/domain/shopping/models/checkout.mjs +37 -37
- package/esm2020/domain/shopping/models/coupons/coupon.mjs +38 -38
- package/esm2020/domain/shopping/models/coupons/enums/coupon-club-mens.enum.mjs +7 -7
- package/esm2020/domain/shopping/models/coupons/enums/coupon-subtypes.enum.mjs +6 -6
- package/esm2020/domain/shopping/models/coupons/enums/coupon-types.enum.mjs +10 -10
- package/esm2020/domain/shopping/models/coupons/enums/exclusivities.enum.mjs +10 -10
- package/esm2020/domain/shopping/models/coupons/enums/index.mjs +4 -4
- package/esm2020/domain/shopping/models/coupons/index.mjs +3 -3
- package/esm2020/domain/shopping/models/enums/checkout-types.enum.mjs +7 -7
- package/esm2020/domain/shopping/models/enums/index.mjs +3 -3
- package/esm2020/domain/shopping/models/enums/order-status.enum.mjs +12 -12
- package/esm2020/domain/shopping/models/index.mjs +13 -13
- package/esm2020/domain/shopping/models/line-item.mjs +4 -4
- package/esm2020/domain/shopping/models/order.mjs +11 -11
- package/esm2020/domain/shopping/models/payment.mjs +169 -169
- package/esm2020/domain/shopping/models/shipping-method.mjs +7 -7
- package/esm2020/domain/shopping/models/subscription/checkout.mjs +28 -28
- package/esm2020/domain/shopping/models/subscription/index.mjs +3 -3
- package/esm2020/domain/shopping/models/subscription/plan.mjs +7 -7
- package/esm2020/domain/shopping/models/types/index.mjs +8 -8
- package/esm2020/domain/shopping/models/types/payment-address.type.mjs +2 -2
- package/esm2020/domain/shopping/models/types/payment-billing.type.mjs +2 -2
- package/esm2020/domain/shopping/models/types/payment-card.type.mjs +2 -2
- package/esm2020/domain/shopping/models/types/payment-customer.type.mjs +2 -2
- package/esm2020/domain/shopping/models/types/payment-document.type.mjs +2 -2
- package/esm2020/domain/shopping/models/types/payment-item.type.mjs +2 -2
- package/esm2020/domain/shopping/models/types/payment-shipping.type.mjs +2 -2
- package/esm2020/domain/shopping/repositories/buy-2-win.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/campaign-dashboard.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/campaign-hashtag.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/checkout.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/coupon.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/index.mjs +10 -10
- package/esm2020/domain/shopping/repositories/legacy-order.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/order.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/payment.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/subscription/checkout.repository.mjs +2 -2
- package/esm2020/domain/shopping/repositories/subscription/index.mjs +3 -3
- package/esm2020/domain/shopping/repositories/subscription/plan.repository.mjs +2 -2
- package/esm2020/domain/users/errors/index.mjs +4 -4
- package/esm2020/domain/users/errors/unauthorized.error.mjs +7 -7
- package/esm2020/domain/users/errors/user-already-registered.error.mjs +7 -7
- package/esm2020/domain/users/errors/weak-password.error.mjs +7 -7
- package/esm2020/domain/users/index.mjs +6 -6
- package/esm2020/domain/users/models/beauty-profile.mjs +12 -12
- package/esm2020/domain/users/models/enums/accessory-importances.enum.mjs +7 -7
- package/esm2020/domain/users/models/enums/area.enum.mjs +13 -13
- package/esm2020/domain/users/models/enums/beard-problems.enum.mjs +11 -11
- package/esm2020/domain/users/models/enums/beard-sizes.enum.mjs +9 -9
- package/esm2020/domain/users/models/enums/beauty-product-importances.enum.mjs +8 -8
- package/esm2020/domain/users/models/enums/body-problems.enum.mjs +13 -13
- package/esm2020/domain/users/models/enums/body-shapes.enum.mjs +9 -9
- package/esm2020/domain/users/models/enums/body-tattoos.enum.mjs +7 -7
- package/esm2020/domain/users/models/enums/face-skin-oilinesses.enum.mjs +9 -9
- package/esm2020/domain/users/models/enums/face-skin-problems.enum.mjs +12 -12
- package/esm2020/domain/users/models/enums/face-skin-tones.enum.mjs +10 -10
- package/esm2020/domain/users/models/enums/family-incomes.enum.mjs +10 -10
- package/esm2020/domain/users/models/enums/fragrance-importances.enum.mjs +7 -7
- package/esm2020/domain/users/models/enums/hair-colors.enum.mjs +12 -12
- package/esm2020/domain/users/models/enums/hair-problems.enum.mjs +12 -12
- package/esm2020/domain/users/models/enums/hair-strands.enum.mjs +10 -10
- package/esm2020/domain/users/models/enums/hair-types.enum.mjs +9 -9
- package/esm2020/domain/users/models/enums/index.mjs +21 -21
- package/esm2020/domain/users/models/enums/office-position.enum.mjs +8 -8
- package/esm2020/domain/users/models/enums/product-spents.enum.mjs +10 -10
- package/esm2020/domain/users/models/enums/user-type.enum.mjs +10 -10
- package/esm2020/domain/users/models/index.mjs +8 -8
- package/esm2020/domain/users/models/lead.mjs +7 -7
- package/esm2020/domain/users/models/subscription/edition.mjs +7 -7
- package/esm2020/domain/users/models/subscription/enums/billing-status.enum.mjs +5 -5
- package/esm2020/domain/users/models/subscription/enums/edition-status.enum.mjs +6 -6
- package/esm2020/domain/users/models/subscription/enums/index.mjs +5 -5
- package/esm2020/domain/users/models/subscription/enums/payment-type.enum.mjs +7 -7
- package/esm2020/domain/users/models/subscription/enums/status.enum.mjs +6 -6
- package/esm2020/domain/users/models/subscription/index.mjs +5 -5
- package/esm2020/domain/users/models/subscription/payment.mjs +14 -14
- package/esm2020/domain/users/models/subscription/subscription.mjs +43 -43
- package/esm2020/domain/users/models/user-address.mjs +7 -7
- package/esm2020/domain/users/models/user-payment-method.mjs +7 -7
- package/esm2020/domain/users/models/user.mjs +26 -26
- package/esm2020/domain/users/repositories/beauty-profile.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/edition.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/index.mjs +9 -9
- package/esm2020/domain/users/repositories/lead.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/subscription-payment.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/subscription.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/user-address.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/user-payment-method.repository.mjs +2 -2
- package/esm2020/domain/users/repositories/user.repository.mjs +2 -2
- package/esm2020/domain/users/services/authentication.service.mjs +2 -2
- package/esm2020/domain/users/services/index.mjs +4 -4
- package/esm2020/domain/users/services/register.service.mjs +2 -2
- package/esm2020/domain/users/services/types/basic-user-data.type.mjs +2 -2
- package/esm2020/domain/users/services/types/index.mjs +2 -2
- package/esm2020/domain/users/use-cases/authentication.mjs +43 -43
- package/esm2020/domain/users/use-cases/index.mjs +5 -5
- package/esm2020/domain/users/use-cases/recovery-password.mjs +9 -9
- package/esm2020/domain/users/use-cases/register.mjs +38 -38
- package/esm2020/domain/users/use-cases/signout.mjs +9 -9
- package/esm2020/errors/duplicated-results.error.mjs +7 -7
- package/esm2020/errors/index.mjs +5 -5
- package/esm2020/errors/invalid-argument.error.mjs +7 -7
- package/esm2020/errors/not-found.error.mjs +7 -7
- package/esm2020/errors/required-argument.error.mjs +9 -9
- package/esm2020/index.mjs +6 -6
- package/esm2020/infra/elasticsearch/adapters/axios.adapter.mjs +67 -67
- package/esm2020/infra/elasticsearch/adapters/elastic-search.adapter.mjs +2 -2
- package/esm2020/infra/elasticsearch/adapters/index.mjs +3 -3
- package/esm2020/infra/elasticsearch/index.mjs +4 -4
- package/esm2020/infra/elasticsearch/indexes/index.mjs +2 -2
- package/esm2020/infra/elasticsearch/indexes/products-index.mjs +104 -104
- package/esm2020/infra/elasticsearch/types/elastic-search-result.mjs +2 -2
- package/esm2020/infra/elasticsearch/types/index.mjs +2 -2
- package/esm2020/infra/firebase/auth/authentication-firebase-auth.service.mjs +41 -41
- package/esm2020/infra/firebase/auth/index.mjs +3 -3
- package/esm2020/infra/firebase/auth/register-firebase-auth.service.mjs +33 -33
- package/esm2020/infra/firebase/auth/types/firebase-user-with-id.type.mjs +2 -2
- package/esm2020/infra/firebase/firestore/enums/firestore-field-type.enum.mjs +10 -10
- package/esm2020/infra/firebase/firestore/enums/index.mjs +2 -2
- package/esm2020/infra/firebase/firestore/index.mjs +4 -4
- package/esm2020/infra/firebase/firestore/mixins/index.mjs +10 -10
- package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +31 -31
- package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +10 -10
- package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +18 -18
- package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +110 -110
- package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +80 -80
- package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +23 -23
- package/esm2020/infra/firebase/firestore/mixins/with-helpers.mixin.mjs +17 -17
- package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +13 -13
- package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +51 -51
- package/esm2020/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +67 -67
- package/esm2020/infra/firebase/firestore/repositories/catalog/index.mjs +5 -5
- package/esm2020/infra/firebase/firestore/repositories/catalog/product-firestore.repository.mjs +54 -54
- package/esm2020/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.mjs +16 -16
- package/esm2020/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/index.mjs +5 -5
- package/esm2020/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.mjs +60 -60
- package/esm2020/infra/firebase/firestore/repositories/shop-settings/index.mjs +4 -4
- package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.mjs +31 -31
- package/esm2020/infra/firebase/firestore/repositories/shopping/index.mjs +11 -11
- package/esm2020/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.mjs +11 -11
- package/esm2020/infra/firebase/firestore/repositories/shopping/order-firestore.repository.mjs +40 -40
- package/esm2020/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/users/index.mjs +9 -9
- package/esm2020/infra/firebase/firestore/repositories/users/lead-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.mjs +16 -16
- package/esm2020/infra/firebase/firestore/repositories/users/subscription-firestore.repository.mjs +14 -14
- package/esm2020/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.mjs +16 -16
- package/esm2020/infra/firebase/firestore/repositories/users/user-address-firestore.repository.mjs +16 -16
- package/esm2020/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.mjs +16 -16
- package/esm2020/infra/firebase/firestore/repositories/users/user-firestore.repository.mjs +50 -50
- package/esm2020/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.mjs +16 -16
- package/esm2020/infra/firebase/firestore/types/firestore-interceptors.type.mjs +2 -2
- package/esm2020/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +2 -2
- package/esm2020/infra/firebase/firestore/types/firestore.helpers.type.mjs +2 -2
- package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +2 -2
- package/esm2020/infra/firebase/firestore/types/index.mjs +5 -5
- package/esm2020/infra/firebase/index.mjs +3 -3
- package/esm2020/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.mjs +13 -13
- package/esm2020/infra/hasura-graphql/enums/hasura-graphql-where.enum.mjs +17 -17
- package/esm2020/infra/hasura-graphql/enums/index.mjs +3 -3
- package/esm2020/infra/hasura-graphql/index.mjs +5 -5
- package/esm2020/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +35 -35
- package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +71 -71
- package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +22 -22
- package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +125 -125
- package/esm2020/infra/hasura-graphql/mixins/helpers/index.mjs +5 -5
- package/esm2020/infra/hasura-graphql/mixins/index.mjs +8 -8
- package/esm2020/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +39 -39
- package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +10 -10
- package/esm2020/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +31 -31
- package/esm2020/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +115 -115
- package/esm2020/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +37 -37
- package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +108 -108
- package/esm2020/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +62 -62
- package/esm2020/infra/hasura-graphql/models/category-hasura-graphql.mjs +4 -4
- package/esm2020/infra/hasura-graphql/models/index.mjs +5 -5
- package/esm2020/infra/hasura-graphql/models/kit-product-hasura-graphql.mjs +15 -15
- package/esm2020/infra/hasura-graphql/models/product-hasura-graphql.mjs +11 -11
- package/esm2020/infra/hasura-graphql/models/variant-hasura-graphql.mjs +9 -9
- package/esm2020/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.mjs +38 -38
- package/esm2020/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.mjs +56 -56
- package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +354 -354
- package/esm2020/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.mjs +105 -105
- package/esm2020/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.mjs +22 -22
- package/esm2020/infra/hasura-graphql/repositories/catalog/index.mjs +8 -8
- package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +516 -516
- package/esm2020/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.mjs +114 -114
- package/esm2020/infra/hasura-graphql/repositories/index.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/fields.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/graphql.repository.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/hasura-graphql-auth-options.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/hasura-graphql-fields.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/hasura-graphql-headers.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/index.mjs +9 -9
- package/esm2020/infra/hasura-graphql/types/nested-field.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/query-builder-options.type.mjs +2 -2
- package/esm2020/infra/hasura-graphql/types/variable-options.type.mjs +2 -2
- package/esm2020/infra/index.mjs +4 -4
- package/esm2020/infrab4a-connect.mjs +4 -4
- package/esm2020/utils/decorators/debug.class.decorator.mjs +7 -7
- package/esm2020/utils/decorators/index.mjs +3 -3
- package/esm2020/utils/decorators/trace.method.decorator.mjs +81 -81
- package/esm2020/utils/get.mjs +3 -3
- package/esm2020/utils/helpers/class-name.helper.mjs +15 -15
- package/esm2020/utils/helpers/debug-decorator.helper.mjs +18 -18
- package/esm2020/utils/helpers/debug.helper.mjs +150 -150
- package/esm2020/utils/helpers/index.mjs +5 -5
- package/esm2020/utils/helpers/reflect.helper.mjs +165 -165
- package/esm2020/utils/index.mjs +13 -13
- package/esm2020/utils/is-uuid.mjs +3 -3
- package/esm2020/utils/is.mjs +4 -4
- package/esm2020/utils/log.utils.mjs +9 -9
- package/esm2020/utils/mixins/base.mixin.mjs +6 -6
- package/esm2020/utils/mixins/index.mjs +4 -4
- package/esm2020/utils/mixins/merge-constructor-params.type.mjs +2 -2
- package/esm2020/utils/mixins/mixin-ctor.type.mjs +2 -2
- package/esm2020/utils/parse-datetime.mjs +14 -14
- package/esm2020/utils/types/array-element.type.mjs +2 -2
- package/esm2020/utils/types/index.mjs +3 -3
- package/esm2020/utils/types/prop.type.mjs +2 -2
- package/fesm2015/infrab4a-connect.mjs +4247 -4247
- package/fesm2015/infrab4a-connect.mjs.map +1 -1
- package/fesm2020/infrab4a-connect.mjs +4170 -4170
- package/fesm2020/infrab4a-connect.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/infra/elasticsearch/adapters/axios.adapter.d.ts +16 -16
- package/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +8 -8
- package/infra/elasticsearch/adapters/index.d.ts +2 -2
- package/infra/elasticsearch/index.d.ts +3 -3
- package/infra/elasticsearch/indexes/index.d.ts +1 -1
- package/infra/elasticsearch/indexes/products-index.d.ts +13 -13
- package/infra/elasticsearch/types/elastic-search-result.d.ts +9 -9
- package/infra/elasticsearch/types/index.d.ts +1 -1
- package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +12 -12
- package/infra/firebase/auth/index.d.ts +2 -2
- package/infra/firebase/auth/register-firebase-auth.service.d.ts +8 -8
- package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +5 -5
- package/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +8 -8
- package/infra/firebase/firestore/enums/index.d.ts +1 -1
- package/infra/firebase/firestore/index.d.ts +3 -3
- package/infra/firebase/firestore/mixins/index.d.ts +9 -9
- package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +5 -5
- package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +13 -13
- package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +11 -11
- package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +11 -11
- package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +7 -7
- package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +20 -20
- package/infra/firebase/firestore/repositories/catalog/index.d.ts +4 -4
- package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/index.d.ts +4 -4
- package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +16 -16
- package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +3 -3
- package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/shopping/index.d.ts +10 -10
- package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +6 -6
- package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/users/index.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +17 -17
- package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +14 -14
- package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +6 -6
- package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +8 -8
- package/infra/firebase/firestore/types/firestore.repository.type.d.ts +16 -16
- package/infra/firebase/firestore/types/index.d.ts +4 -4
- package/infra/firebase/index.d.ts +2 -2
- package/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +11 -11
- package/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +15 -15
- package/infra/hasura-graphql/enums/index.d.ts +2 -2
- package/infra/hasura-graphql/index.d.ts +4 -4
- package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +19 -19
- package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +10 -10
- package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +8 -8
- package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +11 -11
- package/infra/hasura-graphql/mixins/helpers/index.d.ts +4 -4
- package/infra/hasura-graphql/mixins/index.d.ts +7 -7
- package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +9 -9
- package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +11 -11
- package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +7 -7
- package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +33 -33
- package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +25 -25
- package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +22 -22
- package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +14 -14
- package/infra/hasura-graphql/models/category-hasura-graphql.d.ts +6 -6
- package/infra/hasura-graphql/models/index.d.ts +4 -4
- package/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +6 -6
- package/infra/hasura-graphql/models/product-hasura-graphql.d.ts +18 -18
- package/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +10 -10
- package/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.d.ts +10 -10
- package/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +11 -11
- package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +34 -34
- package/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +18 -18
- package/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +10 -10
- package/infra/hasura-graphql/repositories/catalog/index.d.ts +7 -7
- package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +30 -30
- package/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +14 -14
- package/infra/hasura-graphql/repositories/index.d.ts +1 -1
- package/infra/hasura-graphql/types/fields.type.d.ts +2 -2
- package/infra/hasura-graphql/types/graphql.repository.type.d.ts +23 -23
- package/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +8 -8
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +44 -44
- package/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +7 -7
- package/infra/hasura-graphql/types/index.d.ts +8 -8
- package/infra/hasura-graphql/types/nested-field.type.d.ts +7 -7
- package/infra/hasura-graphql/types/query-builder-options.type.d.ts +7 -7
- package/infra/hasura-graphql/types/variable-options.type.d.ts +9 -9
- package/infra/index.d.ts +3 -3
- package/package.json +1 -1
- package/utils/decorators/debug.class.decorator.d.ts +2 -2
- package/utils/decorators/index.d.ts +2 -2
- package/utils/decorators/trace.method.decorator.d.ts +14 -14
- package/utils/get.d.ts +1 -1
- package/utils/helpers/class-name.helper.d.ts +3 -3
- package/utils/helpers/debug-decorator.helper.d.ts +9 -9
- package/utils/helpers/debug.helper.d.ts +60 -60
- package/utils/helpers/index.d.ts +4 -4
- package/utils/helpers/reflect.helper.d.ts +50 -50
- package/utils/index.d.ts +13 -13
- package/utils/is-uuid.d.ts +1 -1
- package/utils/is.d.ts +1 -1
- package/utils/log.utils.d.ts +7 -7
- package/utils/mixins/base.mixin.d.ts +3 -3
- package/utils/mixins/index.d.ts +3 -3
- package/utils/mixins/merge-constructor-params.type.d.ts +3 -3
- package/utils/mixins/mixin-ctor.type.d.ts +1 -1
- package/utils/parse-datetime.d.ts +1 -1
- package/utils/types/array-element.type.d.ts +1 -1
- package/utils/types/index.d.ts +2 -2
- package/utils/types/prop.type.d.ts +1 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { User, UserPaymentMethod } from '../../../../../domain';
|
|
2
|
-
import { Base } from '../../../../../utils';
|
|
3
|
-
import { withCrudFirestore, withFirestore, withHelpers, withSubCollection, } from '../../mixins';
|
|
4
|
-
export class UserPaymentMethodFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
|
|
5
|
-
constructor({ firestore, interceptors }, parentRepository) {
|
|
6
|
-
super({
|
|
7
|
-
firestore,
|
|
8
|
-
collectionName: 'payment_method',
|
|
9
|
-
parentIdField: 'userId',
|
|
10
|
-
model: UserPaymentMethod,
|
|
11
|
-
interceptors,
|
|
12
|
-
});
|
|
13
|
-
this.parentRepository = parentRepository;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { User, UserPaymentMethod } from '../../../../../domain';
|
|
2
|
+
import { Base } from '../../../../../utils';
|
|
3
|
+
import { withCrudFirestore, withFirestore, withHelpers, withSubCollection, } from '../../mixins';
|
|
4
|
+
export class UserPaymentMethodFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
|
|
5
|
+
constructor({ firestore, interceptors }, parentRepository) {
|
|
6
|
+
super({
|
|
7
|
+
firestore,
|
|
8
|
+
collectionName: 'payment_method',
|
|
9
|
+
parentIdField: 'userId',
|
|
10
|
+
model: UserPaymentMethod,
|
|
11
|
+
interceptors,
|
|
12
|
+
});
|
|
13
|
+
this.parentRepository = parentRepository;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wYXltZW50LW1ldGhvZC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvdXNlcnMvdXNlci1wYXltZW50LW1ldGhvZC1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUErQixNQUFNLHVCQUF1QixDQUFBO0FBQzVGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUMzQyxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixXQUFXLEVBQ1gsaUJBQWlCLEdBQ2xCLE1BQU0sY0FBYyxDQUFBO0FBR3JCLE1BQU0sT0FBTyxvQ0FDWCxTQUFRLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQW9CLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUM7SUFHdkcsWUFDRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFGLEVBQzVGLGdCQUF5QztRQUUzRCxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLGdCQUFnQjtZQUNoQyxhQUFhLEVBQUUsUUFBUTtZQUN2QixLQUFLLEVBQUUsaUJBQWlCO1lBQ3hCLFlBQVk7U0FDYixDQUFDLENBQUE7UUFSZ0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtJQVM3RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2VyLCBVc2VyUGF5bWVudE1ldGhvZCwgVXNlclBheW1lbnRNZXRob2RSZXBvc2l0b3J5IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHtcbiAgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMsXG4gIHdpdGhDcnVkRmlyZXN0b3JlLFxuICB3aXRoRmlyZXN0b3JlLFxuICB3aXRoSGVscGVycyxcbiAgd2l0aFN1YkNvbGxlY3Rpb24sXG59IGZyb20gJy4uLy4uL21peGlucydcbmltcG9ydCB7IFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi91c2VyLWZpcmVzdG9yZS5yZXBvc2l0b3J5J1xuXG5leHBvcnQgY2xhc3MgVXNlclBheW1lbnRNZXRob2RGaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aFN1YkNvbGxlY3Rpb24od2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxVc2VyUGF5bWVudE1ldGhvZD4oQmFzZSkpKSwgVXNlcilcbiAgaW1wbGVtZW50cyBVc2VyUGF5bWVudE1ldGhvZFJlcG9zaXRvcnlcbntcbiAgY29uc3RydWN0b3IoXG4gICAgeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPFVzZXJQYXltZW50TWV0aG9kPiwgJ2ZpcmVzdG9yZScgfCAnaW50ZXJjZXB0b3JzJz4sXG4gICAgb3ZlcnJpZGUgcmVhZG9ubHkgcGFyZW50UmVwb3NpdG9yeTogVXNlckZpcmVzdG9yZVJlcG9zaXRvcnksXG4gICkge1xuICAgIHN1cGVyKHtcbiAgICAgIGZpcmVzdG9yZSxcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAncGF5bWVudF9tZXRob2QnLFxuICAgICAgcGFyZW50SWRGaWVsZDogJ3VzZXJJZCcsXG4gICAgICBtb2RlbDogVXNlclBheW1lbnRNZXRob2QsXG4gICAgICBpbnRlcmNlcHRvcnMsXG4gICAgfSlcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0b3JlLWludGVyY2VwdG9ycy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3R5cGVzL2ZpcmVzdG9yZS1pbnRlcmNlcHRvcnMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzLFxuICBSZXBvc2l0b3J5TGltaXRPcHRpb25zLFxuICBSZXBvc2l0b3J5T3JkZXJCeSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuXG5leHBvcnQgdHlwZSBGaXJlc3RvcmVJbnRlcnRjZXB0b3JSZXF1ZXN0UGFyYW1zPFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLCBUID0gYW55PiA9IHtcbiAgaW5zdGFuY2U/OiBUQmFzZVxuICBmaW5kPzoge1xuICAgIGZpbHRlcnM/OiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPFRCYXNlPlxuICAgIGxpbWl0cz86IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+XG4gICAgb3JkZXJCeT86IFJlcG9zaXRvcnlPcmRlckJ5PFRCYXNlPlxuICB9XG59ICYgVFxuXG5leHBvcnQgaW50ZXJmYWNlIEZpcmVzdG9yZUludGVyY2VwdG9yczxUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4ge1xuICByZXF1ZXN0PzogPFI+KFxuICAgIHJlcXVlc3Q6IEZpcmVzdG9yZUludGVydGNlcHRvclJlcXVlc3RQYXJhbXM8VEJhc2UsIFI+LFxuICApID0+IFByb21pc2U8RmlyZXN0b3JlSW50ZXJ0Y2VwdG9yUmVxdWVzdFBhcmFtczxUQmFzZSwgUj4+XG4gIHJlc3BvbnNlPzxSLCBUPihyZXNwb25zZTogVEJhc2UsIHJlcXVlc3Q6IEZpcmVzdG9yZUludGVydGNlcHRvclJlcXVlc3RQYXJhbXM8VEJhc2UsIFQ+KTogUHJvbWlzZTxUQmFzZSAmIFI+XG4gIHJlc3BvbnNlPzxSLCBUPihyZXNwb25zZTogVEJhc2VbXSwgcmVxdWVzdDogRmlyZXN0b3JlSW50ZXJ0Y2VwdG9yUmVxdWVzdFBhcmFtczxUQmFzZSwgVD4pOiBQcm9taXNlPFRCYXNlW10gJiBSPlxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0b3JlLXN1Yi5yZXBvc2l0b3J5LnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvdHlwZXMvZmlyZXN0b3JlLXN1Yi5yZXBvc2l0b3J5LnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElkZW50aWZpZXJNb2RlbCwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4vZmlyZXN0b3JlLnJlcG9zaXRvcnkudHlwZSdcblxuZXhwb3J0IHR5cGUgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxcbiAgTW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+LFxuICBQYXJlbnRNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxQYXJlbnRNb2RlbD4sXG4+ID0ge1xuICByZWFkb25seSBwYXJlbnRSZXBvc2l0b3J5OiBGaXJlc3RvcmVSZXBvc2l0b3J5PFBhcmVudE1vZGVsPlxuICBwYXJlbnRJZEZpZWxkOiBJZGVudGlmaWVyTW9kZWw8TW9kZWw+XG59ICYgRmlyZXN0b3JlUmVwb3NpdG9yeTxNb2RlbD5cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0b3JlLmhlbHBlcnMudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS90eXBlcy9maXJlc3RvcmUuaGVscGVycy50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWVyeURvY3VtZW50U25hcHNob3QsIFF1ZXJ5U25hcHNob3QgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5cbmltcG9ydCB7IE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcblxuaW1wb3J0IHsgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeSB9IGZyb20gJy4vZmlyZXN0b3JlLXN1Yi5yZXBvc2l0b3J5LnR5cGUnXG5pbXBvcnQgeyBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi9maXJlc3RvcmUucmVwb3NpdG9yeS50eXBlJ1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpcmVzdG9yZUhlbHBlcnMge1xuICB0b0FycmF5PFQgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8VD4+KHNuYXBTaG90OiBRdWVyeVNuYXBzaG90PFQ+IHwgQXJyYXk8UXVlcnlEb2N1bWVudFNuYXBzaG90PFQ+Pik6IEFycmF5PFQ+XG4gIGlzU3ViQ29sbGVjdGlvbjxUIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPFQ+LCBFIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPEU+PihcbiAgICByZXBvc2l0b3J5OiBGaXJlc3RvcmVSZXBvc2l0b3J5PFQ+IHwgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxULCBFPixcbiAgKTogcmVwb3NpdG9yeSBpcyBGaXJlc3RvcmVTdWJSZXBvc2l0b3J5PFQsIEU+XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0b3JlLnJlcG9zaXRvcnkudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS90eXBlcy9maXJlc3RvcmUucmVwb3NpdG9yeS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uUmVmZXJlbmNlLCBEb2N1bWVudERhdGEsIEZpcmVzdG9yZSwgUXVlcnlEb2N1bWVudFNuYXBzaG90IH0gZnJvbSAnZmlyZWJhc2UvZmlyZXN0b3JlJ1xuXG5pbXBvcnQgeyBCYXNlTW9kZWxCdWlsZGVyLCBNb2RlbEJhc2VTdHJ1Y3R1cmUsIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXMgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVGaWVsZFR5cGUgfSBmcm9tICcuLi9lbnVtcydcbmltcG9ydCB7IEZpcmVzdG9yZUludGVyY2VwdG9ycyB9IGZyb20gJy4vZmlyZXN0b3JlLWludGVyY2VwdG9ycy50eXBlJ1xuXG5leHBvcnQgdHlwZSBGaXJlc3RvcmVSZXBvc2l0b3J5PE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsPj4gPSB7XG4gIHJlYWRvbmx5IGZpcmVzdG9yZT86IEZpcmVzdG9yZVxuICBjb2xsZWN0aW9uTmFtZTogc3RyaW5nXG4gIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1vZGVsPlxuICBjb2xsZWN0aW9uKHBhdGg/OiBzdHJpbmcpOiBDb2xsZWN0aW9uUmVmZXJlbmNlPE1vZGVsPlxuICBmaWVsZHM/OiBQYXJ0aWFsPFJlY29yZDxOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPiwgRmlyZXN0b3JlRmllbGRUeXBlPj5cbiAgaW50ZXJjZXB0b3JzPzogRmlyZXN0b3JlSW50ZXJjZXB0b3JzPE1vZGVsPlxuICBidWlsZE1vZGVsSW5zdGFuY2UoKToge1xuICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogTW9kZWwpID0+IERvY3VtZW50RGF0YVxuICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8TW9kZWw+KSA9PiBNb2RlbFxuICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from './firestore-interceptors.type';
|
|
2
|
-
export * from './firestore-sub.repository.type';
|
|
3
|
-
export * from './firestore.helpers.type';
|
|
4
|
-
export * from './firestore.repository.type';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './firestore-interceptors.type';
|
|
2
|
+
export * from './firestore-sub.repository.type';
|
|
3
|
+
export * from './firestore.helpers.type';
|
|
4
|
+
export * from './firestore.repository.type';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLGlDQUFpQyxDQUFBO0FBQy9DLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmlyZXN0b3JlLWludGVyY2VwdG9ycy50eXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9maXJlc3RvcmUtc3ViLnJlcG9zaXRvcnkudHlwZSdcbmV4cG9ydCAqIGZyb20gJy4vZmlyZXN0b3JlLmhlbHBlcnMudHlwZSdcbmV4cG9ydCAqIGZyb20gJy4vZmlyZXN0b3JlLnJlcG9zaXRvcnkudHlwZSdcbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './firestore';
|
|
2
|
-
export * from './auth';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './firestore';
|
|
2
|
+
export * from './auth';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQTtBQUMzQixjQUFjLFFBQVEsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmlyZXN0b3JlJ1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoJ1xuIl19
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export var HasuraGraphQLColumnType;
|
|
2
|
-
(function (HasuraGraphQLColumnType) {
|
|
3
|
-
HasuraGraphQLColumnType["Int"] = "Int";
|
|
4
|
-
HasuraGraphQLColumnType["Float"] = "Float";
|
|
5
|
-
HasuraGraphQLColumnType["Boolean"] = "Boolean";
|
|
6
|
-
HasuraGraphQLColumnType["String"] = "String";
|
|
7
|
-
HasuraGraphQLColumnType["DateTime"] = "timestampz";
|
|
8
|
-
HasuraGraphQLColumnType["Json"] = "json";
|
|
9
|
-
HasuraGraphQLColumnType["Jsonb"] = "jsonb";
|
|
10
|
-
HasuraGraphQLColumnType["Enum"] = "enum";
|
|
11
|
-
HasuraGraphQLColumnType["Uuid"] = "uuid";
|
|
12
|
-
})(HasuraGraphQLColumnType || (HasuraGraphQLColumnType = {}));
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export var HasuraGraphQLColumnType;
|
|
2
|
+
(function (HasuraGraphQLColumnType) {
|
|
3
|
+
HasuraGraphQLColumnType["Int"] = "Int";
|
|
4
|
+
HasuraGraphQLColumnType["Float"] = "Float";
|
|
5
|
+
HasuraGraphQLColumnType["Boolean"] = "Boolean";
|
|
6
|
+
HasuraGraphQLColumnType["String"] = "String";
|
|
7
|
+
HasuraGraphQLColumnType["DateTime"] = "timestampz";
|
|
8
|
+
HasuraGraphQLColumnType["Json"] = "json";
|
|
9
|
+
HasuraGraphQLColumnType["Jsonb"] = "jsonb";
|
|
10
|
+
HasuraGraphQLColumnType["Enum"] = "enum";
|
|
11
|
+
HasuraGraphQLColumnType["Uuid"] = "uuid";
|
|
12
|
+
})(HasuraGraphQLColumnType || (HasuraGraphQLColumnType = {}));
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtY29sdW1uLXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL2VudW1zL2hhc3VyYS1ncmFwaHFsLWNvbHVtbi10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksdUJBVVg7QUFWRCxXQUFZLHVCQUF1QjtJQUNqQyxzQ0FBVyxDQUFBO0lBQ1gsMENBQWUsQ0FBQTtJQUNmLDhDQUFtQixDQUFBO0lBQ25CLDRDQUFpQixDQUFBO0lBQ2pCLGtEQUF1QixDQUFBO0lBQ3ZCLHdDQUFhLENBQUE7SUFDYiwwQ0FBZSxDQUFBO0lBQ2Ysd0NBQWEsQ0FBQTtJQUNiLHdDQUFhLENBQUE7QUFDZixDQUFDLEVBVlcsdUJBQXVCLEtBQXZCLHVCQUF1QixRQVVsQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlIHtcbiAgSW50ID0gJ0ludCcsXG4gIEZsb2F0ID0gJ0Zsb2F0JyxcbiAgQm9vbGVhbiA9ICdCb29sZWFuJyxcbiAgU3RyaW5nID0gJ1N0cmluZycsXG4gIERhdGVUaW1lID0gJ3RpbWVzdGFtcHonLFxuICBKc29uID0gJ2pzb24nLFxuICBKc29uYiA9ICdqc29uYicsXG4gIEVudW0gPSAnZW51bScsXG4gIFV1aWQgPSAndXVpZCcsXG59XG4iXX0=
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export var HasuraGraphQLWhere;
|
|
2
|
-
(function (HasuraGraphQLWhere) {
|
|
3
|
-
HasuraGraphQLWhere["EQUALS"] = "_eq";
|
|
4
|
-
HasuraGraphQLWhere["GT"] = "_gt";
|
|
5
|
-
HasuraGraphQLWhere["GTE"] = "_gte";
|
|
6
|
-
HasuraGraphQLWhere["IN"] = "_in";
|
|
7
|
-
HasuraGraphQLWhere["NOTIN"] = "_nin";
|
|
8
|
-
HasuraGraphQLWhere["LT"] = "_lt";
|
|
9
|
-
HasuraGraphQLWhere["LTE"] = "_lte";
|
|
10
|
-
HasuraGraphQLWhere["LIKE"] = "_like";
|
|
11
|
-
HasuraGraphQLWhere["NOTLIKE"] = "_nlike";
|
|
12
|
-
HasuraGraphQLWhere["ISNULL"] = "_is_null";
|
|
13
|
-
HasuraGraphQLWhere["ISNOTNULL"] = "_is_null";
|
|
14
|
-
HasuraGraphQLWhere["JSON_CONTAINS"] = "_contains";
|
|
15
|
-
HasuraGraphQLWhere["JSON_HAS_KEYS_ANY"] = "_has_keys_any";
|
|
16
|
-
})(HasuraGraphQLWhere || (HasuraGraphQLWhere = {}));
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export var HasuraGraphQLWhere;
|
|
2
|
+
(function (HasuraGraphQLWhere) {
|
|
3
|
+
HasuraGraphQLWhere["EQUALS"] = "_eq";
|
|
4
|
+
HasuraGraphQLWhere["GT"] = "_gt";
|
|
5
|
+
HasuraGraphQLWhere["GTE"] = "_gte";
|
|
6
|
+
HasuraGraphQLWhere["IN"] = "_in";
|
|
7
|
+
HasuraGraphQLWhere["NOTIN"] = "_nin";
|
|
8
|
+
HasuraGraphQLWhere["LT"] = "_lt";
|
|
9
|
+
HasuraGraphQLWhere["LTE"] = "_lte";
|
|
10
|
+
HasuraGraphQLWhere["LIKE"] = "_like";
|
|
11
|
+
HasuraGraphQLWhere["NOTLIKE"] = "_nlike";
|
|
12
|
+
HasuraGraphQLWhere["ISNULL"] = "_is_null";
|
|
13
|
+
HasuraGraphQLWhere["ISNOTNULL"] = "_is_null";
|
|
14
|
+
HasuraGraphQLWhere["JSON_CONTAINS"] = "_contains";
|
|
15
|
+
HasuraGraphQLWhere["JSON_HAS_KEYS_ANY"] = "_has_keys_any";
|
|
16
|
+
})(HasuraGraphQLWhere || (HasuraGraphQLWhere = {}));
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtd2hlcmUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL2VudW1zL2hhc3VyYS1ncmFwaHFsLXdoZXJlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBY1g7QUFkRCxXQUFZLGtCQUFrQjtJQUM1QixvQ0FBYyxDQUFBO0lBQ2QsZ0NBQVUsQ0FBQTtJQUNWLGtDQUFZLENBQUE7SUFDWixnQ0FBVSxDQUFBO0lBQ1Ysb0NBQWMsQ0FBQTtJQUNkLGdDQUFVLENBQUE7SUFDVixrQ0FBWSxDQUFBO0lBQ1osb0NBQWMsQ0FBQTtJQUNkLHdDQUFrQixDQUFBO0lBQ2xCLHlDQUFtQixDQUFBO0lBQ25CLDRDQUFzQixDQUFBO0lBQ3RCLGlEQUEyQixDQUFBO0lBQzNCLHlEQUFtQyxDQUFBO0FBQ3JDLENBQUMsRUFkVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBYzdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gSGFzdXJhR3JhcGhRTFdoZXJlIHtcbiAgRVFVQUxTID0gJ19lcScsXG4gIEdUID0gJ19ndCcsXG4gIEdURSA9ICdfZ3RlJyxcbiAgSU4gPSAnX2luJyxcbiAgTk9USU4gPSAnX25pbicsXG4gIExUID0gJ19sdCcsXG4gIExURSA9ICdfbHRlJyxcbiAgTElLRSA9ICdfbGlrZScsXG4gIE5PVExJS0UgPSAnX25saWtlJyxcbiAgSVNOVUxMID0gJ19pc19udWxsJyxcbiAgSVNOT1ROVUxMID0gJ19pc19udWxsJyxcbiAgSlNPTl9DT05UQUlOUyA9ICdfY29udGFpbnMnLFxuICBKU09OX0hBU19LRVlTX0FOWSA9ICdfaGFzX2tleXNfYW55Jyxcbn1cbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './hasura-graphql-where.enum';
|
|
2
|
-
export * from './hasura-graphql-column-type.enum';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './hasura-graphql-where.enum';
|
|
2
|
+
export * from './hasura-graphql-column-type.enum';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsbUNBQW1DLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hhc3VyYS1ncmFwaHFsLXdoZXJlLmVudW0nXG5leHBvcnQgKiBmcm9tICcuL2hhc3VyYS1ncmFwaHFsLWNvbHVtbi10eXBlLmVudW0nXG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from './mixins';
|
|
2
|
-
export * from './models';
|
|
3
|
-
export * from './repositories';
|
|
4
|
-
export * from './types';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './mixins';
|
|
2
|
+
export * from './models';
|
|
3
|
+
export * from './repositories';
|
|
4
|
+
export * from './types';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQTtBQUN4QixjQUFjLFVBQVUsQ0FBQTtBQUN4QixjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsU0FBUyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9taXhpbnMnXG5leHBvcnQgKiBmcm9tICcuL21vZGVscydcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3NpdG9yaWVzJ1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcbiJdfQ==
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { is, isNil, isObject } from '../../../../utils';
|
|
2
|
-
export class AttributeOptionHelper {
|
|
3
|
-
}
|
|
4
|
-
AttributeOptionHelper.FindByAttribute = (attributeName, fields) => {
|
|
5
|
-
if (fields.includes(attributeName))
|
|
6
|
-
return { columnName: attributeName.toString(), attributeName, to: (value) => value, from: (value) => value };
|
|
7
|
-
const field = fields.find((columnOption) => isObject(columnOption) && Object.keys(columnOption).includes(attributeName.toString()));
|
|
8
|
-
const fieldOption = is(field)?.[attributeName];
|
|
9
|
-
if (isNil(fieldOption))
|
|
10
|
-
return { columnName: attributeName.toString(), attributeName };
|
|
11
|
-
if (Array.isArray(fieldOption))
|
|
12
|
-
return { columnName: attributeName.toString(), attributeName, fields: fieldOption };
|
|
13
|
-
return { attributeName, columnName: attributeName.toString(), ...fieldOption };
|
|
14
|
-
};
|
|
15
|
-
AttributeOptionHelper.CheckIsColumnOption = (fieldValue) => !!fieldValue?.columnName;
|
|
16
|
-
AttributeOptionHelper.FindColumnOptionFromList = (columnName, fields) => {
|
|
17
|
-
if (fields.includes(columnName))
|
|
18
|
-
return { columnName, attributeName: columnName };
|
|
19
|
-
const field = is(fields.find((field) => {
|
|
20
|
-
if (!isObject(field))
|
|
21
|
-
return false;
|
|
22
|
-
const columnOption = Object.values(field).find((option) => AttributeOptionHelper.CheckIsColumnOption(option) && option.columnName === columnName ? option : {});
|
|
23
|
-
return AttributeOptionHelper.CheckIsColumnOption(columnOption) && columnOption?.columnName === columnName;
|
|
24
|
-
}) || {});
|
|
25
|
-
const attributeName = Object.keys(field).find((fieldOptionFromList) => AttributeOptionHelper.CheckIsColumnOption(field[fieldOptionFromList]) || Array.isArray(field[fieldOptionFromList]));
|
|
26
|
-
const fieldOption = field?.[attributeName];
|
|
27
|
-
if (Array.isArray(fieldOption))
|
|
28
|
-
return { attributeName: attributeName, fields: fieldOption };
|
|
29
|
-
return {
|
|
30
|
-
attributeName: attributeName || columnName,
|
|
31
|
-
columnName,
|
|
32
|
-
...fieldOption,
|
|
33
|
-
};
|
|
34
|
-
};
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { is, isNil, isObject } from '../../../../utils';
|
|
2
|
+
export class AttributeOptionHelper {
|
|
3
|
+
}
|
|
4
|
+
AttributeOptionHelper.FindByAttribute = (attributeName, fields) => {
|
|
5
|
+
if (fields.includes(attributeName))
|
|
6
|
+
return { columnName: attributeName.toString(), attributeName, to: (value) => value, from: (value) => value };
|
|
7
|
+
const field = fields.find((columnOption) => isObject(columnOption) && Object.keys(columnOption).includes(attributeName.toString()));
|
|
8
|
+
const fieldOption = is(field)?.[attributeName];
|
|
9
|
+
if (isNil(fieldOption))
|
|
10
|
+
return { columnName: attributeName.toString(), attributeName };
|
|
11
|
+
if (Array.isArray(fieldOption))
|
|
12
|
+
return { columnName: attributeName.toString(), attributeName, fields: fieldOption };
|
|
13
|
+
return { attributeName, columnName: attributeName.toString(), ...fieldOption };
|
|
14
|
+
};
|
|
15
|
+
AttributeOptionHelper.CheckIsColumnOption = (fieldValue) => !!fieldValue?.columnName;
|
|
16
|
+
AttributeOptionHelper.FindColumnOptionFromList = (columnName, fields) => {
|
|
17
|
+
if (fields.includes(columnName))
|
|
18
|
+
return { columnName, attributeName: columnName };
|
|
19
|
+
const field = is(fields.find((field) => {
|
|
20
|
+
if (!isObject(field))
|
|
21
|
+
return false;
|
|
22
|
+
const columnOption = Object.values(field).find((option) => AttributeOptionHelper.CheckIsColumnOption(option) && option.columnName === columnName ? option : {});
|
|
23
|
+
return AttributeOptionHelper.CheckIsColumnOption(columnOption) && columnOption?.columnName === columnName;
|
|
24
|
+
}) || {});
|
|
25
|
+
const attributeName = Object.keys(field).find((fieldOptionFromList) => AttributeOptionHelper.CheckIsColumnOption(field[fieldOptionFromList]) || Array.isArray(field[fieldOptionFromList]));
|
|
26
|
+
const fieldOption = field?.[attributeName];
|
|
27
|
+
if (Array.isArray(fieldOption))
|
|
28
|
+
return { attributeName: attributeName, fields: fieldOption };
|
|
29
|
+
return {
|
|
30
|
+
attributeName: attributeName || columnName,
|
|
31
|
+
columnName,
|
|
32
|
+
...fieldOption,
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLW9wdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9hdHRyaWJ1dGUtb3B0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQVF2RCxNQUFNLE9BQU8scUJBQXFCOztBQUN6QixxQ0FBZSxHQUFHLENBSXZCLGFBQXdCLEVBQ3hCLE1BQWtDLEVBQ08sRUFBRTtJQUMzQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBb0IsQ0FBQztRQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUU5RyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUN2QixDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUN6RyxDQUFBO0lBQ0QsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUE0RCxLQUFLLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBRXpHLElBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRSxFQUFFLGFBQWEsRUFBRSxDQUFBO0lBQ3RGLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFBO0lBRW5ILE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFBO0FBQ2hGLENBQUMsQ0FBQTtBQUVNLHlDQUFtQixHQUFHLENBQzNCLFVBQW1ELEVBQ0YsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFBO0FBRXZFLDhDQUF3QixHQUFHLENBQ2hDLFVBQWtCLEVBQ2xCLE1BQXdDLEVBQ21FLEVBQUU7SUFDN0csSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQXNELENBQUM7UUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsVUFBZ0UsRUFBRSxDQUFBO0lBRXhHLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FDZCxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQTtRQUVsQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ3hELHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDcEcsQ0FBQTtRQUVELE9BQU8scUJBQXFCLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLElBQUksWUFBWSxFQUFFLFVBQVUsS0FBSyxVQUFVLENBQUE7SUFDM0csQ0FBQyxDQUFDLElBQUksRUFBRSxDQUNULENBQUE7SUFDRCxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDM0MsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQ3RCLHFCQUFxQixDQUFDLG1CQUFtQixDQUN2QyxLQUFLLENBQUMsbUJBQXlFLENBQUMsQ0FDakYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBeUUsQ0FBQyxDQUFDLENBQ2pELENBQUE7SUFDdkQsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUE7SUFFMUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQW1FLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFBO0lBRXBILE9BQU87UUFDTCxhQUFhLEVBQUUsYUFBYSxJQUFLLFVBQWlFO1FBQ2xHLFVBQVU7UUFDVixHQUFHLFdBQVc7S0FDZixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kZWxCYXNlU3RydWN0dXJlLCBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXMsIGlzTmlsLCBpc09iamVjdCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgQ29sdW1uT3B0aW9ucywgSGFzdXJhR3JhcGhRTEZpZWxkcyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuXG50eXBlIEZpbmRCeUF0dHJpYnV0ZVJlc3VsdDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+LFxuICBBdHRyaWJ1dGUgZXh0ZW5kcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcbj4gPSBDb2x1bW5PcHRpb25zPE1CYXNlW0F0dHJpYnV0ZV0sIE1CYXNlPiAmIHsgYXR0cmlidXRlTmFtZTogQXR0cmlidXRlIH1cblxuZXhwb3J0IGNsYXNzIEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB7XG4gIHN0YXRpYyBGaW5kQnlBdHRyaWJ1dGUgPSA8XG4gICAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICAgIEF0dHJpYnV0ZSBleHRlbmRzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+ID0gTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4sXG4gID4oXG4gICAgYXR0cmlidXRlTmFtZTogQXR0cmlidXRlLFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICk6IEZpbmRCeUF0dHJpYnV0ZVJlc3VsdDxNQmFzZSwgQXR0cmlidXRlPiA9PiB7XG4gICAgaWYgKGZpZWxkcy5pbmNsdWRlcyhhdHRyaWJ1dGVOYW1lIGFzIGFueSkpXG4gICAgICByZXR1cm4geyBjb2x1bW5OYW1lOiBhdHRyaWJ1dGVOYW1lLnRvU3RyaW5nKCksIGF0dHJpYnV0ZU5hbWUsIHRvOiAodmFsdWUpID0+IHZhbHVlLCBmcm9tOiAodmFsdWUpID0+IHZhbHVlIH1cblxuICAgIGNvbnN0IGZpZWxkID0gZmllbGRzLmZpbmQoXG4gICAgICAoY29sdW1uT3B0aW9uKSA9PiBpc09iamVjdChjb2x1bW5PcHRpb24pICYmIE9iamVjdC5rZXlzKGNvbHVtbk9wdGlvbikuaW5jbHVkZXMoYXR0cmlidXRlTmFtZS50b1N0cmluZygpKSxcbiAgICApXG4gICAgY29uc3QgZmllbGRPcHRpb24gPSBpczxSZWNvcmQ8QXR0cmlidXRlLCBDb2x1bW5PcHRpb25zPE1CYXNlW0F0dHJpYnV0ZV0sIE1CYXNlPj4+KGZpZWxkKT8uW2F0dHJpYnV0ZU5hbWVdXG5cbiAgICBpZiAoaXNOaWwoZmllbGRPcHRpb24pKSByZXR1cm4geyBjb2x1bW5OYW1lOiBhdHRyaWJ1dGVOYW1lLnRvU3RyaW5nKCksIGF0dHJpYnV0ZU5hbWUgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkT3B0aW9uKSkgcmV0dXJuIHsgY29sdW1uTmFtZTogYXR0cmlidXRlTmFtZS50b1N0cmluZygpLCBhdHRyaWJ1dGVOYW1lLCBmaWVsZHM6IGZpZWxkT3B0aW9uIH1cblxuICAgIHJldHVybiB7IGF0dHJpYnV0ZU5hbWUsIGNvbHVtbk5hbWU6IGF0dHJpYnV0ZU5hbWUudG9TdHJpbmcoKSwgLi4uZmllbGRPcHRpb24gfVxuICB9XG5cbiAgc3RhdGljIENoZWNrSXNDb2x1bW5PcHRpb24gPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+LCBQYXJlbnRNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4oXG4gICAgZmllbGRWYWx1ZTogQ29sdW1uT3B0aW9uczxNb2RlbCwgUGFyZW50TW9kZWw+IHwgYW55LFxuICApOiBmaWVsZFZhbHVlIGlzIENvbHVtbk9wdGlvbnM8TW9kZWwsIFBhcmVudE1vZGVsPiA9PiAhIWZpZWxkVmFsdWU/LmNvbHVtbk5hbWVcblxuICBzdGF0aWMgRmluZENvbHVtbk9wdGlvbkZyb21MaXN0ID0gPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLCBQYXJlbnRNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4oXG4gICAgY29sdW1uTmFtZTogc3RyaW5nLFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxQYXJlbnRNb2RlbD4sXG4gICk6IENvbHVtbk9wdGlvbnM8TW9kZWwsIFBhcmVudE1vZGVsPiAmIHsgYXR0cmlidXRlTmFtZTogTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxQYXJlbnRNb2RlbD4gfSA9PiB7XG4gICAgaWYgKGZpZWxkcy5pbmNsdWRlcyhjb2x1bW5OYW1lIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8UGFyZW50TW9kZWw+W251bWJlcl0pKVxuICAgICAgcmV0dXJuIHsgY29sdW1uTmFtZSwgYXR0cmlidXRlTmFtZTogY29sdW1uTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPiB9XG5cbiAgICBjb25zdCBmaWVsZCA9IGlzPFJlY29yZDxOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPiwgQ29sdW1uT3B0aW9uczxNb2RlbCwgUGFyZW50TW9kZWw+Pj4oXG4gICAgICBmaWVsZHMuZmluZCgoZmllbGQpID0+IHtcbiAgICAgICAgaWYgKCFpc09iamVjdChmaWVsZCkpIHJldHVybiBmYWxzZVxuXG4gICAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IE9iamVjdC52YWx1ZXMoZmllbGQpLmZpbmQoKG9wdGlvbikgPT5cbiAgICAgICAgICBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuQ2hlY2tJc0NvbHVtbk9wdGlvbihvcHRpb24pICYmIG9wdGlvbi5jb2x1bW5OYW1lID09PSBjb2x1bW5OYW1lID8gb3B0aW9uIDoge30sXG4gICAgICAgIClcblxuICAgICAgICByZXR1cm4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkNoZWNrSXNDb2x1bW5PcHRpb24oY29sdW1uT3B0aW9uKSAmJiBjb2x1bW5PcHRpb24/LmNvbHVtbk5hbWUgPT09IGNvbHVtbk5hbWVcbiAgICAgIH0pIHx8IHt9LFxuICAgIClcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gT2JqZWN0LmtleXMoZmllbGQpLmZpbmQoXG4gICAgICAoZmllbGRPcHRpb25Gcm9tTGlzdCkgPT5cbiAgICAgICAgQXR0cmlidXRlT3B0aW9uSGVscGVyLkNoZWNrSXNDb2x1bW5PcHRpb24oXG4gICAgICAgICAgZmllbGRbZmllbGRPcHRpb25Gcm9tTGlzdCBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPl0sXG4gICAgICAgICkgfHwgQXJyYXkuaXNBcnJheShmaWVsZFtmaWVsZE9wdGlvbkZyb21MaXN0IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8UGFyZW50TW9kZWw+XSksXG4gICAgKSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPlxuICAgIGNvbnN0IGZpZWxkT3B0aW9uID0gZmllbGQ/LlthdHRyaWJ1dGVOYW1lXVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGRPcHRpb24pKVxuICAgICAgcmV0dXJuIHsgYXR0cmlidXRlTmFtZTogYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPiwgZmllbGRzOiBmaWVsZE9wdGlvbiB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgYXR0cmlidXRlTmFtZTogYXR0cmlidXRlTmFtZSB8fCAoY29sdW1uTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPiksXG4gICAgICBjb2x1bW5OYW1lLFxuICAgICAgLi4uZmllbGRPcHRpb24sXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
import { Where, } from '../../../../domain';
|
|
2
|
-
import { is, isNil, isObject } from '../../../../utils';
|
|
3
|
-
import { HasuraGraphQLColumnType, HasuraGraphQLWhere } from '../../enums';
|
|
4
|
-
import { AttributeOptionHelper } from './attribute-option.helper';
|
|
5
|
-
import { FilterOptionHelper } from './filter-option.helper';
|
|
6
|
-
export class BindFilterQueryHelper {
|
|
7
|
-
}
|
|
8
|
-
BindFilterQueryHelper.MakeGraphQLWhere = (filter, fields) => Object.keys(filter).reduce((variables, fieldName) => {
|
|
9
|
-
const columnOption = AttributeOptionHelper.FindByAttribute(fieldName, fields);
|
|
10
|
-
if (!columnOption.bindFindFilter)
|
|
11
|
-
return {
|
|
12
|
-
...variables,
|
|
13
|
-
...{
|
|
14
|
-
[columnOption.columnName]: BindFilterQueryHelper.BuildWhereSentence(fieldName, filter[fieldName], fields),
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
const builtFilter = columnOption.bindFindFilter(filter[fieldName]);
|
|
18
|
-
return {
|
|
19
|
-
...variables,
|
|
20
|
-
...Object.keys(builtFilter).reduce((variablesList, columnName) => ({
|
|
21
|
-
...variablesList,
|
|
22
|
-
[columnName]: BindFilterQueryHelper.BuildWhereSentence(fieldName, builtFilter[columnName], fields),
|
|
23
|
-
}), {}),
|
|
24
|
-
};
|
|
25
|
-
}, {});
|
|
26
|
-
BindFilterQueryHelper.BuildWhereSentence = (field, options, fields) => {
|
|
27
|
-
const fieldSentenceOptions = AttributeOptionHelper.FindByAttribute(field, fields);
|
|
28
|
-
const isNestedField = !Array.isArray(options) &&
|
|
29
|
-
isObject(options) &&
|
|
30
|
-
isNil(options?.operator) &&
|
|
31
|
-
isNil(options?.value) &&
|
|
32
|
-
isNil(fieldSentenceOptions?.to);
|
|
33
|
-
if (isNestedField)
|
|
34
|
-
return Object.keys(options).reduce((variables, key) => {
|
|
35
|
-
const fieldOptions = AttributeOptionHelper.FindByAttribute(key, fieldSentenceOptions?.fields || fields);
|
|
36
|
-
const columnName = fieldOptions.columnName;
|
|
37
|
-
const columnFields = fieldOptions.fields;
|
|
38
|
-
return {
|
|
39
|
-
...variables,
|
|
40
|
-
[columnName]: BindFilterQueryHelper.BuildWhereSentence(key, is(is(options)[key]), columnFields || []),
|
|
41
|
-
};
|
|
42
|
-
}, {});
|
|
43
|
-
if (!Array.isArray(options) && !isNil(fieldSentenceOptions.fields))
|
|
44
|
-
return {
|
|
45
|
-
[fieldSentenceOptions.fields[0]]: BindFilterQueryHelper.BuildOperatorSentence(options, fieldSentenceOptions),
|
|
46
|
-
};
|
|
47
|
-
if (!Array.isArray(options) && isObject(options) && !FilterOptionHelper.CheckIfIsFilterOption(options))
|
|
48
|
-
options = Object.values(options)[0];
|
|
49
|
-
return Array.isArray(options)
|
|
50
|
-
? options.reduce((whereSentence, option) => ({
|
|
51
|
-
...whereSentence,
|
|
52
|
-
...BindFilterQueryHelper.BuildOperatorSentence(option, fieldSentenceOptions),
|
|
53
|
-
}), {})
|
|
54
|
-
: BindFilterQueryHelper.BuildOperatorSentence(options, fieldSentenceOptions);
|
|
55
|
-
};
|
|
56
|
-
BindFilterQueryHelper.BuildOperatorSentence = (options, fieldOption) => ({
|
|
57
|
-
[BindFilterQueryHelper.GetHasuraOperator(options, fieldOption)]: FilterOptionHelper.GetValueFromFilter(options, fieldOption),
|
|
58
|
-
});
|
|
59
|
-
BindFilterQueryHelper.GetHasuraOperator = (options, fieldOption) => FilterOptionHelper.CheckIfIsFilterOption(options)
|
|
60
|
-
? fieldOption.type === HasuraGraphQLColumnType.Jsonb
|
|
61
|
-
? BindFilterQueryHelper.GetHasuraJsonbOperator(options)
|
|
62
|
-
: HasuraGraphQLWhere[Object.keys(HasuraGraphQLWhere).find((graphQLOperator) => graphQLOperator ===
|
|
63
|
-
Object.keys(Where).find((operator) => Where[operator] === options?.operator))]
|
|
64
|
-
: HasuraGraphQLWhere.EQUALS;
|
|
65
|
-
BindFilterQueryHelper.GetHasuraJsonbOperator = (options) => options.operator === Where.IN
|
|
66
|
-
? HasuraGraphQLWhere.JSON_CONTAINS
|
|
67
|
-
: options.operator === Where.LIKE
|
|
68
|
-
? HasuraGraphQLWhere.JSON_HAS_KEYS_ANY
|
|
69
|
-
: HasuraGraphQLWhere[Object.keys(HasuraGraphQLWhere).find((graphQLOperator) => graphQLOperator ===
|
|
70
|
-
Object.keys(Where).find((operator) => Where[operator] === options?.operator))];
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZC1maWx0ZXItcXVlcnkuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL2hlbHBlcnMvYmluZC1maWx0ZXItcXVlcnkuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFNTCxLQUFLLEdBQ04sTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQixPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFHekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFFM0QsTUFBTSxPQUFPLHFCQUFxQjs7QUFDekIsc0NBQWdCLEdBQUcsQ0FDeEIsTUFBcUMsRUFDckMsTUFBa0MsRUFDakIsRUFBRSxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQTBCLEVBQUUsU0FBaUIsRUFBRSxFQUFFO0lBQzNFLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FDeEQsU0FBeUQsRUFDekQsTUFBTSxDQUNQLENBQUE7SUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWM7UUFDOUIsT0FBTztZQUNMLEdBQUcsU0FBUztZQUNaLEdBQUc7Z0JBQ0QsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUscUJBQXFCLENBQUMsa0JBQWtCLENBQ2pFLFNBQXlELEVBQ3pELE1BQU0sQ0FBQyxTQUF5RCxDQUcvRCxFQUNELE1BQU0sQ0FDUDthQUNGO1NBQ0YsQ0FBQTtJQUVILE1BQU0sV0FBVyxHQUFrQyxZQUFZLENBQUMsY0FBYyxDQUM1RSxNQUFNLENBQUMsU0FBNEMsQ0FHbEQsQ0FDRixDQUFBO0lBRUQsT0FBTztRQUNMLEdBQUcsU0FBUztRQUNaLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQ2hDLENBQUMsYUFBOEIsRUFBRSxVQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELEdBQUcsYUFBYTtZQUNoQixDQUFDLFVBQVUsQ0FBQyxFQUFFLHFCQUFxQixDQUFDLGtCQUFrQixDQUNwRCxTQUF5RCxFQUN6RCxXQUFXLENBQUMsVUFBMEQsQ0FHckUsRUFDRCxNQUFNLENBQ1A7U0FDRixDQUFDLEVBQ0YsRUFBRSxDQUNIO0tBQ0YsQ0FBQTtBQUNILENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUVELHdDQUFrQixHQUFHLENBQzFCLEtBQW1ELEVBQ25ELE9BQTJGLEVBQzNGLE1BQWtDLEVBQ2pCLEVBQUU7SUFDbkIsTUFBTSxvQkFBb0IsR0FBRyxxQkFBcUIsQ0FBQyxlQUFlLENBQVEsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQ3hGLE1BQU0sYUFBYSxHQUNqQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQ3ZCLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDakIsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDeEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7UUFDckIsS0FBSyxDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBRWpDLElBQUksYUFBYTtRQUNmLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDcEQsTUFBTSxZQUFZLEdBQUcscUJBQXFCLENBQUMsZUFBZSxDQUN4RCxHQUFtRCxFQUNuRCxvQkFBb0IsRUFBRSxNQUFNLElBQUssTUFBYyxDQUNoRCxDQUFBO1lBQ0QsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQTtZQUMxQyxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFBO1lBRXhDLE9BQU87Z0JBQ0wsR0FBRyxTQUFTO2dCQUNaLENBQUMsVUFBVSxDQUFDLEVBQUUscUJBQXFCLENBQUMsa0JBQWtCLENBQ3BELEdBQW1ELEVBQ25ELEVBQUUsQ0FDQSxFQUFFLENBQWdDLE9BQU8sQ0FBQyxDQUFDLEdBQW1ELENBQUMsQ0FDaEcsRUFDRCxZQUFZLElBQUssRUFBVSxDQUM1QjthQUNGLENBQUE7UUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFUixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7UUFDaEUsT0FBTztZQUNMLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBaUQsQ0FBQyxFQUM5RSxxQkFBcUIsQ0FBQyxxQkFBcUIsQ0FDekMsT0FBTyxFQUNQLG9CQUFpRyxDQUNsRztTQUNKLENBQUE7SUFFSCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7UUFDcEcsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUE4QyxDQUFBO0lBRWxGLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDM0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ1osQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFCLEdBQUcsYUFBYTtZQUNoQixHQUFHLHFCQUFxQixDQUFDLHFCQUFxQixDQUM1QyxNQUFNLEVBQ04sb0JBQWlHLENBQ2xHO1NBQ0YsQ0FBQyxFQUNGLEVBQUUsQ0FDSDtRQUNILENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxxQkFBcUIsQ0FDekMsT0FBTyxFQUNQLG9CQUFpRyxDQUNsRyxDQUFBO0FBQ1AsQ0FBQyxDQUFBO0FBRU0sMkNBQXFCLEdBQUcsQ0FDN0IsT0FBa0QsRUFDbEQsV0FBb0MsRUFDbkIsRUFBRSxDQUFDLENBQUM7SUFDckIsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FDcEcsT0FBTyxFQUNQLFdBQVcsQ0FDWjtDQUNGLENBQUMsQ0FBQTtBQUVLLHVDQUFpQixHQUFHLENBQ3pCLE9BQThFLEVBQzlFLFdBQW9DLEVBQ2hCLEVBQUUsQ0FDdEIsa0JBQWtCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLHVCQUF1QixDQUFDLEtBQUs7UUFDbEQsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztRQUN2RCxDQUFDLENBQUMsa0JBQWtCLENBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQ2xDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FDbEIsZUFBZTtZQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBOEIsQ0FBQyxLQUFLLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FDbEUsQ0FDckM7SUFDTCxDQUFDLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFBO0FBRXhCLDRDQUFzQixHQUFHLENBQzlCLE9BQThFLEVBQzFELEVBQUUsQ0FDdEIsT0FBTyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsRUFBRTtJQUMzQixDQUFDLENBQUMsa0JBQWtCLENBQUMsYUFBYTtJQUNsQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsSUFBSTtRQUNqQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCO1FBQ3RDLENBQUMsQ0FBQyxrQkFBa0IsQ0FDaEIsTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FDbEMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUNsQixlQUFlO1lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUE4QixDQUFDLEtBQUssT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUNsRSxDQUNyQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBNb2RlbEJhc2VTdHJ1Y3R1cmUsXHJcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcclxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXHJcbiAgUmVwb3NpdG9yeUZpbmRGaWVsdGVycyxcclxuICBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9ucyxcclxuICBXaGVyZSxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IGlzLCBpc05pbCwgaXNPYmplY3QgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcclxuaW1wb3J0IHsgSGFzdXJhR3JhcGhRTENvbHVtblR5cGUsIEhhc3VyYUdyYXBoUUxXaGVyZSB9IGZyb20gJy4uLy4uL2VudW1zJ1xyXG5pbXBvcnQgeyBDb2x1bW5PcHRpb25zLCBIYXN1cmFHcmFwaFFMRmllbGRzLCBWYXJpYWJsZU9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuXHJcbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vYXR0cmlidXRlLW9wdGlvbi5oZWxwZXInXHJcbmltcG9ydCB7IEZpbHRlck9wdGlvbkhlbHBlciB9IGZyb20gJy4vZmlsdGVyLW9wdGlvbi5oZWxwZXInXHJcblxyXG5leHBvcnQgY2xhc3MgQmluZEZpbHRlclF1ZXJ5SGVscGVyIHtcclxuICBzdGF0aWMgTWFrZUdyYXBoUUxXaGVyZSA9IDxNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZT4+KFxyXG4gICAgZmlsdGVyOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPE1CYXNlPixcclxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXHJcbiAgKTogVmFyaWFibGVPcHRpb25zID0+XHJcbiAgICBPYmplY3Qua2V5cyhmaWx0ZXIpLnJlZHVjZSgodmFyaWFibGVzOiBWYXJpYWJsZU9wdGlvbnMsIGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoXHJcbiAgICAgICAgZmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxyXG4gICAgICAgIGZpZWxkcyxcclxuICAgICAgKVxyXG5cclxuICAgICAgaWYgKCFjb2x1bW5PcHRpb24uYmluZEZpbmRGaWx0ZXIpXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLnZhcmlhYmxlcyxcclxuICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgW2NvbHVtbk9wdGlvbi5jb2x1bW5OYW1lXTogQmluZEZpbHRlclF1ZXJ5SGVscGVyLkJ1aWxkV2hlcmVTZW50ZW5jZShcclxuICAgICAgICAgICAgICBmaWVsZE5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4sXHJcbiAgICAgICAgICAgICAgZmlsdGVyW2ZpZWxkTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPl0gYXMgUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnM8XHJcbiAgICAgICAgICAgICAgICBNQmFzZSxcclxuICAgICAgICAgICAgICAgIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XHJcbiAgICAgICAgICAgICAgPixcclxuICAgICAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGJ1aWx0RmlsdGVyOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPE1CYXNlPiA9IGNvbHVtbk9wdGlvbi5iaW5kRmluZEZpbHRlcihcclxuICAgICAgICBmaWx0ZXJbZmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxNQmFzZT5dIGFzIFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFxyXG4gICAgICAgICAgTUJhc2UsXHJcbiAgICAgICAgICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8TUJhc2U+XHJcbiAgICAgICAgPixcclxuICAgICAgKVxyXG5cclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAuLi52YXJpYWJsZXMsXHJcbiAgICAgICAgLi4uT2JqZWN0LmtleXMoYnVpbHRGaWx0ZXIpLnJlZHVjZShcclxuICAgICAgICAgICh2YXJpYWJsZXNMaXN0OiBWYXJpYWJsZU9wdGlvbnMsIGNvbHVtbk5hbWU6IHN0cmluZykgPT4gKHtcclxuICAgICAgICAgICAgLi4udmFyaWFibGVzTGlzdCxcclxuICAgICAgICAgICAgW2NvbHVtbk5hbWVdOiBCaW5kRmlsdGVyUXVlcnlIZWxwZXIuQnVpbGRXaGVyZVNlbnRlbmNlKFxyXG4gICAgICAgICAgICAgIGZpZWxkTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcclxuICAgICAgICAgICAgICBidWlsdEZpbHRlcltjb2x1bW5OYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSBhcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxcclxuICAgICAgICAgICAgICAgIE1CYXNlLFxyXG4gICAgICAgICAgICAgICAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT5cclxuICAgICAgICAgICAgICA+LFxyXG4gICAgICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICAge30sXHJcbiAgICAgICAgKSxcclxuICAgICAgfVxyXG4gICAgfSwge30pXHJcblxyXG4gIHN0YXRpYyBCdWlsZFdoZXJlU2VudGVuY2UgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+PihcclxuICAgIGZpZWxkOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcclxuICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPE1CYXNlLCBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPj4sXHJcbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxyXG4gICk6IFZhcmlhYmxlT3B0aW9ucyA9PiB7XHJcbiAgICBjb25zdCBmaWVsZFNlbnRlbmNlT3B0aW9ucyA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGU8TUJhc2U+KGZpZWxkLCBmaWVsZHMpXHJcbiAgICBjb25zdCBpc05lc3RlZEZpZWxkID1cclxuICAgICAgIUFycmF5LmlzQXJyYXkob3B0aW9ucykgJiZcclxuICAgICAgaXNPYmplY3Qob3B0aW9ucykgJiZcclxuICAgICAgaXNOaWwob3B0aW9ucz8ub3BlcmF0b3IpICYmXHJcbiAgICAgIGlzTmlsKG9wdGlvbnM/LnZhbHVlKSAmJlxyXG4gICAgICBpc05pbChmaWVsZFNlbnRlbmNlT3B0aW9ucz8udG8pXHJcblxyXG4gICAgaWYgKGlzTmVzdGVkRmllbGQpXHJcbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhvcHRpb25zKS5yZWR1Y2UoKHZhcmlhYmxlcywga2V5KSA9PiB7XHJcbiAgICAgICAgY29uc3QgZmllbGRPcHRpb25zID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZTxNQmFzZT4oXHJcbiAgICAgICAgICBrZXkgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4sXHJcbiAgICAgICAgICBmaWVsZFNlbnRlbmNlT3B0aW9ucz8uZmllbGRzIHx8IChmaWVsZHMgYXMgYW55KSxcclxuICAgICAgICApXHJcbiAgICAgICAgY29uc3QgY29sdW1uTmFtZSA9IGZpZWxkT3B0aW9ucy5jb2x1bW5OYW1lXHJcbiAgICAgICAgY29uc3QgY29sdW1uRmllbGRzID0gZmllbGRPcHRpb25zLmZpZWxkc1xyXG5cclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4udmFyaWFibGVzLFxyXG4gICAgICAgICAgW2NvbHVtbk5hbWVdOiBCaW5kRmlsdGVyUXVlcnlIZWxwZXIuQnVpbGRXaGVyZVNlbnRlbmNlPE1CYXNlPihcclxuICAgICAgICAgICAga2V5IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxyXG4gICAgICAgICAgICBpczxSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4+PihcclxuICAgICAgICAgICAgICBpczxSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPE1CYXNlPj4ob3B0aW9ucylba2V5IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgY29sdW1uRmllbGRzIHx8IChbXSBhcyBhbnkpLFxyXG4gICAgICAgICAgKSxcclxuICAgICAgICB9XHJcbiAgICAgIH0sIHt9KVxyXG5cclxuICAgIGlmICghQXJyYXkuaXNBcnJheShvcHRpb25zKSAmJiAhaXNOaWwoZmllbGRTZW50ZW5jZU9wdGlvbnMuZmllbGRzKSlcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBbZmllbGRTZW50ZW5jZU9wdGlvbnMuZmllbGRzWzBdIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XTpcclxuICAgICAgICAgIEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5CdWlsZE9wZXJhdG9yU2VudGVuY2UoXHJcbiAgICAgICAgICAgIG9wdGlvbnMsXHJcbiAgICAgICAgICAgIGZpZWxkU2VudGVuY2VPcHRpb25zIGFzIENvbHVtbk9wdGlvbnM8TUJhc2VbTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT5dLCBNQmFzZT4sXHJcbiAgICAgICAgICApLFxyXG4gICAgICB9XHJcblxyXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpICYmIGlzT2JqZWN0KG9wdGlvbnMpICYmICFGaWx0ZXJPcHRpb25IZWxwZXIuQ2hlY2tJZklzRmlsdGVyT3B0aW9uKG9wdGlvbnMpKVxyXG4gICAgICBvcHRpb25zID0gT2JqZWN0LnZhbHVlcyhvcHRpb25zKVswXSBhcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgYW55PlxyXG5cclxuICAgIHJldHVybiBBcnJheS5pc0FycmF5KG9wdGlvbnMpXHJcbiAgICAgID8gb3B0aW9ucy5yZWR1Y2UoXHJcbiAgICAgICAgICAod2hlcmVTZW50ZW5jZSwgb3B0aW9uKSA9PiAoe1xyXG4gICAgICAgICAgICAuLi53aGVyZVNlbnRlbmNlLFxyXG4gICAgICAgICAgICAuLi5CaW5kRmlsdGVyUXVlcnlIZWxwZXIuQnVpbGRPcGVyYXRvclNlbnRlbmNlKFxyXG4gICAgICAgICAgICAgIG9wdGlvbixcclxuICAgICAgICAgICAgICBmaWVsZFNlbnRlbmNlT3B0aW9ucyBhcyBDb2x1bW5PcHRpb25zPE1CYXNlW05vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSwgTUJhc2U+LFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICB7fSxcclxuICAgICAgICApXHJcbiAgICAgIDogQmluZEZpbHRlclF1ZXJ5SGVscGVyLkJ1aWxkT3BlcmF0b3JTZW50ZW5jZShcclxuICAgICAgICAgIG9wdGlvbnMsXHJcbiAgICAgICAgICBmaWVsZFNlbnRlbmNlT3B0aW9ucyBhcyBDb2x1bW5PcHRpb25zPE1CYXNlW05vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSwgTUJhc2U+LFxyXG4gICAgICAgIClcclxuICB9XHJcblxyXG4gIHN0YXRpYyBCdWlsZE9wZXJhdG9yU2VudGVuY2UgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+PihcclxuICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPE1CYXNlLCBhbnk+LFxyXG4gICAgZmllbGRPcHRpb246IENvbHVtbk9wdGlvbnM8YW55LCBhbnk+LFxyXG4gICk6IFZhcmlhYmxlT3B0aW9ucyA9PiAoe1xyXG4gICAgW0JpbmRGaWx0ZXJRdWVyeUhlbHBlci5HZXRIYXN1cmFPcGVyYXRvcihvcHRpb25zLCBmaWVsZE9wdGlvbildOiBGaWx0ZXJPcHRpb25IZWxwZXIuR2V0VmFsdWVGcm9tRmlsdGVyKFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICBmaWVsZE9wdGlvbixcclxuICAgICksXHJcbiAgfSlcclxuXHJcbiAgc3RhdGljIEdldEhhc3VyYU9wZXJhdG9yID0gPE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1CYXNlPj4oXHJcbiAgICBvcHRpb25zOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPE1CYXNlPj4sXHJcbiAgICBmaWVsZE9wdGlvbjogQ29sdW1uT3B0aW9uczxhbnksIGFueT4sXHJcbiAgKTogSGFzdXJhR3JhcGhRTFdoZXJlID0+XHJcbiAgICBGaWx0ZXJPcHRpb25IZWxwZXIuQ2hlY2tJZklzRmlsdGVyT3B0aW9uKG9wdGlvbnMpXHJcbiAgICAgID8gZmllbGRPcHRpb24udHlwZSA9PT0gSGFzdXJhR3JhcGhRTENvbHVtblR5cGUuSnNvbmJcclxuICAgICAgICA/IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5HZXRIYXN1cmFKc29uYk9wZXJhdG9yKG9wdGlvbnMpXHJcbiAgICAgICAgOiBIYXN1cmFHcmFwaFFMV2hlcmVbXHJcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKEhhc3VyYUdyYXBoUUxXaGVyZSkuZmluZChcclxuICAgICAgICAgICAgICAoZ3JhcGhRTE9wZXJhdG9yKSA9PlxyXG4gICAgICAgICAgICAgICAgZ3JhcGhRTE9wZXJhdG9yID09PVxyXG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoV2hlcmUpLmZpbmQoKG9wZXJhdG9yKSA9PiBXaGVyZVtvcGVyYXRvciBhcyBrZXlvZiB0eXBlb2YgV2hlcmVdID09PSBvcHRpb25zPy5vcGVyYXRvciksXHJcbiAgICAgICAgICAgICkgYXMga2V5b2YgdHlwZW9mIEhhc3VyYUdyYXBoUUxXaGVyZVxyXG4gICAgICAgICAgXVxyXG4gICAgICA6IEhhc3VyYUdyYXBoUUxXaGVyZS5FUVVBTFNcclxuXHJcbiAgc3RhdGljIEdldEhhc3VyYUpzb25iT3BlcmF0b3IgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+PihcclxuICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPE1CYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8TUJhc2U+PixcclxuICApOiBIYXN1cmFHcmFwaFFMV2hlcmUgPT5cclxuICAgIG9wdGlvbnMub3BlcmF0b3IgPT09IFdoZXJlLklOXHJcbiAgICAgID8gSGFzdXJhR3JhcGhRTFdoZXJlLkpTT05fQ09OVEFJTlNcclxuICAgICAgOiBvcHRpb25zLm9wZXJhdG9yID09PSBXaGVyZS5MSUtFXHJcbiAgICAgID8gSGFzdXJhR3JhcGhRTFdoZXJlLkpTT05fSEFTX0tFWVNfQU5ZXHJcbiAgICAgIDogSGFzdXJhR3JhcGhRTFdoZXJlW1xyXG4gICAgICAgICAgT2JqZWN0LmtleXMoSGFzdXJhR3JhcGhRTFdoZXJlKS5maW5kKFxyXG4gICAgICAgICAgICAoZ3JhcGhRTE9wZXJhdG9yKSA9PlxyXG4gICAgICAgICAgICAgIGdyYXBoUUxPcGVyYXRvciA9PT1cclxuICAgICAgICAgICAgICBPYmplY3Qua2V5cyhXaGVyZSkuZmluZCgob3BlcmF0b3IpID0+IFdoZXJlW29wZXJhdG9yIGFzIGtleW9mIHR5cGVvZiBXaGVyZV0gPT09IG9wdGlvbnM/Lm9wZXJhdG9yKSxcclxuICAgICAgICAgICkgYXMga2V5b2YgdHlwZW9mIEhhc3VyYUdyYXBoUUxXaGVyZVxyXG4gICAgICAgIF1cclxufVxyXG4iXX0=
|
|
1
|
+
import { Where, } from '../../../../domain';
|
|
2
|
+
import { is, isNil, isObject } from '../../../../utils';
|
|
3
|
+
import { HasuraGraphQLColumnType, HasuraGraphQLWhere } from '../../enums';
|
|
4
|
+
import { AttributeOptionHelper } from './attribute-option.helper';
|
|
5
|
+
import { FilterOptionHelper } from './filter-option.helper';
|
|
6
|
+
export class BindFilterQueryHelper {
|
|
7
|
+
}
|
|
8
|
+
BindFilterQueryHelper.MakeGraphQLWhere = (filter, fields) => Object.keys(filter).reduce((variables, fieldName) => {
|
|
9
|
+
const columnOption = AttributeOptionHelper.FindByAttribute(fieldName, fields);
|
|
10
|
+
if (!columnOption.bindFindFilter)
|
|
11
|
+
return {
|
|
12
|
+
...variables,
|
|
13
|
+
...{
|
|
14
|
+
[columnOption.columnName]: BindFilterQueryHelper.BuildWhereSentence(fieldName, filter[fieldName], fields),
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
const builtFilter = columnOption.bindFindFilter(filter[fieldName]);
|
|
18
|
+
return {
|
|
19
|
+
...variables,
|
|
20
|
+
...Object.keys(builtFilter).reduce((variablesList, columnName) => ({
|
|
21
|
+
...variablesList,
|
|
22
|
+
[columnName]: BindFilterQueryHelper.BuildWhereSentence(fieldName, builtFilter[columnName], fields),
|
|
23
|
+
}), {}),
|
|
24
|
+
};
|
|
25
|
+
}, {});
|
|
26
|
+
BindFilterQueryHelper.BuildWhereSentence = (field, options, fields) => {
|
|
27
|
+
const fieldSentenceOptions = AttributeOptionHelper.FindByAttribute(field, fields);
|
|
28
|
+
const isNestedField = !Array.isArray(options) &&
|
|
29
|
+
isObject(options) &&
|
|
30
|
+
isNil(options?.operator) &&
|
|
31
|
+
isNil(options?.value) &&
|
|
32
|
+
isNil(fieldSentenceOptions?.to);
|
|
33
|
+
if (isNestedField)
|
|
34
|
+
return Object.keys(options).reduce((variables, key) => {
|
|
35
|
+
const fieldOptions = AttributeOptionHelper.FindByAttribute(key, fieldSentenceOptions?.fields || fields);
|
|
36
|
+
const columnName = fieldOptions.columnName;
|
|
37
|
+
const columnFields = fieldOptions.fields;
|
|
38
|
+
return {
|
|
39
|
+
...variables,
|
|
40
|
+
[columnName]: BindFilterQueryHelper.BuildWhereSentence(key, is(is(options)[key]), columnFields || []),
|
|
41
|
+
};
|
|
42
|
+
}, {});
|
|
43
|
+
if (!Array.isArray(options) && !isNil(fieldSentenceOptions.fields))
|
|
44
|
+
return {
|
|
45
|
+
[fieldSentenceOptions.fields[0]]: BindFilterQueryHelper.BuildOperatorSentence(options, fieldSentenceOptions),
|
|
46
|
+
};
|
|
47
|
+
if (!Array.isArray(options) && isObject(options) && !FilterOptionHelper.CheckIfIsFilterOption(options))
|
|
48
|
+
options = Object.values(options)[0];
|
|
49
|
+
return Array.isArray(options)
|
|
50
|
+
? options.reduce((whereSentence, option) => ({
|
|
51
|
+
...whereSentence,
|
|
52
|
+
...BindFilterQueryHelper.BuildOperatorSentence(option, fieldSentenceOptions),
|
|
53
|
+
}), {})
|
|
54
|
+
: BindFilterQueryHelper.BuildOperatorSentence(options, fieldSentenceOptions);
|
|
55
|
+
};
|
|
56
|
+
BindFilterQueryHelper.BuildOperatorSentence = (options, fieldOption) => ({
|
|
57
|
+
[BindFilterQueryHelper.GetHasuraOperator(options, fieldOption)]: FilterOptionHelper.GetValueFromFilter(options, fieldOption),
|
|
58
|
+
});
|
|
59
|
+
BindFilterQueryHelper.GetHasuraOperator = (options, fieldOption) => FilterOptionHelper.CheckIfIsFilterOption(options)
|
|
60
|
+
? fieldOption.type === HasuraGraphQLColumnType.Jsonb
|
|
61
|
+
? BindFilterQueryHelper.GetHasuraJsonbOperator(options)
|
|
62
|
+
: HasuraGraphQLWhere[Object.keys(HasuraGraphQLWhere).find((graphQLOperator) => graphQLOperator ===
|
|
63
|
+
Object.keys(Where).find((operator) => Where[operator] === options?.operator))]
|
|
64
|
+
: HasuraGraphQLWhere.EQUALS;
|
|
65
|
+
BindFilterQueryHelper.GetHasuraJsonbOperator = (options) => options.operator === Where.IN
|
|
66
|
+
? HasuraGraphQLWhere.JSON_CONTAINS
|
|
67
|
+
: options.operator === Where.LIKE
|
|
68
|
+
? HasuraGraphQLWhere.JSON_HAS_KEYS_ANY
|
|
69
|
+
: HasuraGraphQLWhere[Object.keys(HasuraGraphQLWhere).find((graphQLOperator) => graphQLOperator ===
|
|
70
|
+
Object.keys(Where).find((operator) => Where[operator] === options?.operator))];
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZC1maWx0ZXItcXVlcnkuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL2hlbHBlcnMvYmluZC1maWx0ZXItcXVlcnkuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFNTCxLQUFLLEdBQ04sTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQixPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFHekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFFM0QsTUFBTSxPQUFPLHFCQUFxQjs7QUFDekIsc0NBQWdCLEdBQUcsQ0FDeEIsTUFBcUMsRUFDckMsTUFBa0MsRUFDakIsRUFBRSxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQTBCLEVBQUUsU0FBaUIsRUFBRSxFQUFFO0lBQzNFLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FDeEQsU0FBeUQsRUFDekQsTUFBTSxDQUNQLENBQUE7SUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWM7UUFDOUIsT0FBTztZQUNMLEdBQUcsU0FBUztZQUNaLEdBQUc7Z0JBQ0QsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUscUJBQXFCLENBQUMsa0JBQWtCLENBQ2pFLFNBQXlELEVBQ3pELE1BQU0sQ0FBQyxTQUF5RCxDQUcvRCxFQUNELE1BQU0sQ0FDUDthQUNGO1NBQ0YsQ0FBQTtJQUVILE1BQU0sV0FBVyxHQUFrQyxZQUFZLENBQUMsY0FBYyxDQUM1RSxNQUFNLENBQUMsU0FBNEMsQ0FHbEQsQ0FDRixDQUFBO0lBRUQsT0FBTztRQUNMLEdBQUcsU0FBUztRQUNaLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQ2hDLENBQUMsYUFBOEIsRUFBRSxVQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELEdBQUcsYUFBYTtZQUNoQixDQUFDLFVBQVUsQ0FBQyxFQUFFLHFCQUFxQixDQUFDLGtCQUFrQixDQUNwRCxTQUF5RCxFQUN6RCxXQUFXLENBQUMsVUFBMEQsQ0FHckUsRUFDRCxNQUFNLENBQ1A7U0FDRixDQUFDLEVBQ0YsRUFBRSxDQUNIO0tBQ0YsQ0FBQTtBQUNILENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUVELHdDQUFrQixHQUFHLENBQzFCLEtBQW1ELEVBQ25ELE9BQTJGLEVBQzNGLE1BQWtDLEVBQ2pCLEVBQUU7SUFDbkIsTUFBTSxvQkFBb0IsR0FBRyxxQkFBcUIsQ0FBQyxlQUFlLENBQVEsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQ3hGLE1BQU0sYUFBYSxHQUNqQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQ3ZCLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDakIsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDeEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7UUFDckIsS0FBSyxDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBRWpDLElBQUksYUFBYTtRQUNmLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDcEQsTUFBTSxZQUFZLEdBQUcscUJBQXFCLENBQUMsZUFBZSxDQUN4RCxHQUFtRCxFQUNuRCxvQkFBb0IsRUFBRSxNQUFNLElBQUssTUFBYyxDQUNoRCxDQUFBO1lBQ0QsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQTtZQUMxQyxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFBO1lBRXhDLE9BQU87Z0JBQ0wsR0FBRyxTQUFTO2dCQUNaLENBQUMsVUFBVSxDQUFDLEVBQUUscUJBQXFCLENBQUMsa0JBQWtCLENBQ3BELEdBQW1ELEVBQ25ELEVBQUUsQ0FDQSxFQUFFLENBQWdDLE9BQU8sQ0FBQyxDQUFDLEdBQW1ELENBQUMsQ0FDaEcsRUFDRCxZQUFZLElBQUssRUFBVSxDQUM1QjthQUNGLENBQUE7UUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFUixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7UUFDaEUsT0FBTztZQUNMLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBaUQsQ0FBQyxFQUM5RSxxQkFBcUIsQ0FBQyxxQkFBcUIsQ0FDekMsT0FBTyxFQUNQLG9CQUFpRyxDQUNsRztTQUNKLENBQUE7SUFFSCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7UUFDcEcsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUE4QyxDQUFBO0lBRWxGLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDM0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ1osQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFCLEdBQUcsYUFBYTtZQUNoQixHQUFHLHFCQUFxQixDQUFDLHFCQUFxQixDQUM1QyxNQUFNLEVBQ04sb0JBQWlHLENBQ2xHO1NBQ0YsQ0FBQyxFQUNGLEVBQUUsQ0FDSDtRQUNILENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxxQkFBcUIsQ0FDekMsT0FBTyxFQUNQLG9CQUFpRyxDQUNsRyxDQUFBO0FBQ1AsQ0FBQyxDQUFBO0FBRU0sMkNBQXFCLEdBQUcsQ0FDN0IsT0FBa0QsRUFDbEQsV0FBb0MsRUFDbkIsRUFBRSxDQUFDLENBQUM7SUFDckIsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FDcEcsT0FBTyxFQUNQLFdBQVcsQ0FDWjtDQUNGLENBQUMsQ0FBQTtBQUVLLHVDQUFpQixHQUFHLENBQ3pCLE9BQThFLEVBQzlFLFdBQW9DLEVBQ2hCLEVBQUUsQ0FDdEIsa0JBQWtCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLHVCQUF1QixDQUFDLEtBQUs7UUFDbEQsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztRQUN2RCxDQUFDLENBQUMsa0JBQWtCLENBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQ2xDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FDbEIsZUFBZTtZQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBOEIsQ0FBQyxLQUFLLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FDbEUsQ0FDckM7SUFDTCxDQUFDLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFBO0FBRXhCLDRDQUFzQixHQUFHLENBQzlCLE9BQThFLEVBQzFELEVBQUUsQ0FDdEIsT0FBTyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsRUFBRTtJQUMzQixDQUFDLENBQUMsa0JBQWtCLENBQUMsYUFBYTtJQUNsQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsSUFBSTtRQUNqQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCO1FBQ3RDLENBQUMsQ0FBQyxrQkFBa0IsQ0FDaEIsTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FDbEMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUNsQixlQUFlO1lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUE4QixDQUFDLEtBQUssT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUNsRSxDQUNyQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzLFxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zLFxuICBXaGVyZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXMsIGlzTmlsLCBpc09iamVjdCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgSGFzdXJhR3JhcGhRTENvbHVtblR5cGUsIEhhc3VyYUdyYXBoUUxXaGVyZSB9IGZyb20gJy4uLy4uL2VudW1zJ1xuaW1wb3J0IHsgQ29sdW1uT3B0aW9ucywgSGFzdXJhR3JhcGhRTEZpZWxkcywgVmFyaWFibGVPcHRpb25zIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vYXR0cmlidXRlLW9wdGlvbi5oZWxwZXInXG5pbXBvcnQgeyBGaWx0ZXJPcHRpb25IZWxwZXIgfSBmcm9tICcuL2ZpbHRlci1vcHRpb24uaGVscGVyJ1xuXG5leHBvcnQgY2xhc3MgQmluZEZpbHRlclF1ZXJ5SGVscGVyIHtcbiAgc3RhdGljIE1ha2VHcmFwaFFMV2hlcmUgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+PihcbiAgICBmaWx0ZXI6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8TUJhc2U+LFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICk6IFZhcmlhYmxlT3B0aW9ucyA9PlxuICAgIE9iamVjdC5rZXlzKGZpbHRlcikucmVkdWNlKCh2YXJpYWJsZXM6IFZhcmlhYmxlT3B0aW9ucywgZmllbGROYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoXG4gICAgICAgIGZpZWxkTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcbiAgICAgICAgZmllbGRzLFxuICAgICAgKVxuXG4gICAgICBpZiAoIWNvbHVtbk9wdGlvbi5iaW5kRmluZEZpbHRlcilcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi52YXJpYWJsZXMsXG4gICAgICAgICAgLi4ue1xuICAgICAgICAgICAgW2NvbHVtbk9wdGlvbi5jb2x1bW5OYW1lXTogQmluZEZpbHRlclF1ZXJ5SGVscGVyLkJ1aWxkV2hlcmVTZW50ZW5jZShcbiAgICAgICAgICAgICAgZmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxuICAgICAgICAgICAgICBmaWx0ZXJbZmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSBhcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxcbiAgICAgICAgICAgICAgICBNQmFzZSxcbiAgICAgICAgICAgICAgICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPlxuICAgICAgICAgICAgICA+LFxuICAgICAgICAgICAgICBmaWVsZHMsXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cblxuICAgICAgY29uc3QgYnVpbHRGaWx0ZXI6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8TUJhc2U+ID0gY29sdW1uT3B0aW9uLmJpbmRGaW5kRmlsdGVyKFxuICAgICAgICBmaWx0ZXJbZmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxNQmFzZT5dIGFzIFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFxuICAgICAgICAgIE1CYXNlLFxuICAgICAgICAgIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxNQmFzZT5cbiAgICAgICAgPixcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4udmFyaWFibGVzLFxuICAgICAgICAuLi5PYmplY3Qua2V5cyhidWlsdEZpbHRlcikucmVkdWNlKFxuICAgICAgICAgICh2YXJpYWJsZXNMaXN0OiBWYXJpYWJsZU9wdGlvbnMsIGNvbHVtbk5hbWU6IHN0cmluZykgPT4gKHtcbiAgICAgICAgICAgIC4uLnZhcmlhYmxlc0xpc3QsXG4gICAgICAgICAgICBbY29sdW1uTmFtZV06IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5CdWlsZFdoZXJlU2VudGVuY2UoXG4gICAgICAgICAgICAgIGZpZWxkTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcbiAgICAgICAgICAgICAgYnVpbHRGaWx0ZXJbY29sdW1uTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPl0gYXMgUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnM8XG4gICAgICAgICAgICAgICAgTUJhc2UsXG4gICAgICAgICAgICAgICAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT5cbiAgICAgICAgICAgICAgPixcbiAgICAgICAgICAgICAgZmllbGRzLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICB7fSxcbiAgICAgICAgKSxcbiAgICAgIH1cbiAgICB9LCB7fSlcblxuICBzdGF0aWMgQnVpbGRXaGVyZVNlbnRlbmNlID0gPE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1CYXNlPj4oXG4gICAgZmllbGQ6IE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxuICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPE1CYXNlLCBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPj4sXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgKTogVmFyaWFibGVPcHRpb25zID0+IHtcbiAgICBjb25zdCBmaWVsZFNlbnRlbmNlT3B0aW9ucyA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGU8TUJhc2U+KGZpZWxkLCBmaWVsZHMpXG4gICAgY29uc3QgaXNOZXN0ZWRGaWVsZCA9XG4gICAgICAhQXJyYXkuaXNBcnJheShvcHRpb25zKSAmJlxuICAgICAgaXNPYmplY3Qob3B0aW9ucykgJiZcbiAgICAgIGlzTmlsKG9wdGlvbnM/Lm9wZXJhdG9yKSAmJlxuICAgICAgaXNOaWwob3B0aW9ucz8udmFsdWUpICYmXG4gICAgICBpc05pbChmaWVsZFNlbnRlbmNlT3B0aW9ucz8udG8pXG5cbiAgICBpZiAoaXNOZXN0ZWRGaWVsZClcbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhvcHRpb25zKS5yZWR1Y2UoKHZhcmlhYmxlcywga2V5KSA9PiB7XG4gICAgICAgIGNvbnN0IGZpZWxkT3B0aW9ucyA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGU8TUJhc2U+KFxuICAgICAgICAgIGtleSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcbiAgICAgICAgICBmaWVsZFNlbnRlbmNlT3B0aW9ucz8uZmllbGRzIHx8IChmaWVsZHMgYXMgYW55KSxcbiAgICAgICAgKVxuICAgICAgICBjb25zdCBjb2x1bW5OYW1lID0gZmllbGRPcHRpb25zLmNvbHVtbk5hbWVcbiAgICAgICAgY29uc3QgY29sdW1uRmllbGRzID0gZmllbGRPcHRpb25zLmZpZWxkc1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4udmFyaWFibGVzLFxuICAgICAgICAgIFtjb2x1bW5OYW1lXTogQmluZEZpbHRlclF1ZXJ5SGVscGVyLkJ1aWxkV2hlcmVTZW50ZW5jZTxNQmFzZT4oXG4gICAgICAgICAgICBrZXkgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4sXG4gICAgICAgICAgICBpczxSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4+PihcbiAgICAgICAgICAgICAgaXM8UmVwb3NpdG9yeUZpbmRGaWVsdGVyczxNQmFzZT4+KG9wdGlvbnMpW2tleSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPl0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgY29sdW1uRmllbGRzIHx8IChbXSBhcyBhbnkpLFxuICAgICAgICAgICksXG4gICAgICAgIH1cbiAgICAgIH0sIHt9KVxuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpICYmICFpc05pbChmaWVsZFNlbnRlbmNlT3B0aW9ucy5maWVsZHMpKVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW2ZpZWxkU2VudGVuY2VPcHRpb25zLmZpZWxkc1swXSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPl06XG4gICAgICAgICAgQmluZEZpbHRlclF1ZXJ5SGVscGVyLkJ1aWxkT3BlcmF0b3JTZW50ZW5jZShcbiAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICBmaWVsZFNlbnRlbmNlT3B0aW9ucyBhcyBDb2x1bW5PcHRpb25zPE1CYXNlW05vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSwgTUJhc2U+LFxuICAgICAgICAgICksXG4gICAgICB9XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkob3B0aW9ucykgJiYgaXNPYmplY3Qob3B0aW9ucykgJiYgIUZpbHRlck9wdGlvbkhlbHBlci5DaGVja0lmSXNGaWx0ZXJPcHRpb24ob3B0aW9ucykpXG4gICAgICBvcHRpb25zID0gT2JqZWN0LnZhbHVlcyhvcHRpb25zKVswXSBhcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgYW55PlxuXG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkob3B0aW9ucylcbiAgICAgID8gb3B0aW9ucy5yZWR1Y2UoXG4gICAgICAgICAgKHdoZXJlU2VudGVuY2UsIG9wdGlvbikgPT4gKHtcbiAgICAgICAgICAgIC4uLndoZXJlU2VudGVuY2UsXG4gICAgICAgICAgICAuLi5CaW5kRmlsdGVyUXVlcnlIZWxwZXIuQnVpbGRPcGVyYXRvclNlbnRlbmNlKFxuICAgICAgICAgICAgICBvcHRpb24sXG4gICAgICAgICAgICAgIGZpZWxkU2VudGVuY2VPcHRpb25zIGFzIENvbHVtbk9wdGlvbnM8TUJhc2VbTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT5dLCBNQmFzZT4sXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIHt9LFxuICAgICAgICApXG4gICAgICA6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5CdWlsZE9wZXJhdG9yU2VudGVuY2UoXG4gICAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgICBmaWVsZFNlbnRlbmNlT3B0aW9ucyBhcyBDb2x1bW5PcHRpb25zPE1CYXNlW05vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+XSwgTUJhc2U+LFxuICAgICAgICApXG4gIH1cblxuICBzdGF0aWMgQnVpbGRPcGVyYXRvclNlbnRlbmNlID0gPE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1CYXNlPj4oXG4gICAgb3B0aW9uczogUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnM8TUJhc2UsIGFueT4sXG4gICAgZmllbGRPcHRpb246IENvbHVtbk9wdGlvbnM8YW55LCBhbnk+LFxuICApOiBWYXJpYWJsZU9wdGlvbnMgPT4gKHtcbiAgICBbQmluZEZpbHRlclF1ZXJ5SGVscGVyLkdldEhhc3VyYU9wZXJhdG9yKG9wdGlvbnMsIGZpZWxkT3B0aW9uKV06IEZpbHRlck9wdGlvbkhlbHBlci5HZXRWYWx1ZUZyb21GaWx0ZXIoXG4gICAgICBvcHRpb25zLFxuICAgICAgZmllbGRPcHRpb24sXG4gICAgKSxcbiAgfSlcblxuICBzdGF0aWMgR2V0SGFzdXJhT3BlcmF0b3IgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+PihcbiAgICBvcHRpb25zOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPE1CYXNlPj4sXG4gICAgZmllbGRPcHRpb246IENvbHVtbk9wdGlvbnM8YW55LCBhbnk+LFxuICApOiBIYXN1cmFHcmFwaFFMV2hlcmUgPT5cbiAgICBGaWx0ZXJPcHRpb25IZWxwZXIuQ2hlY2tJZklzRmlsdGVyT3B0aW9uKG9wdGlvbnMpXG4gICAgICA/IGZpZWxkT3B0aW9uLnR5cGUgPT09IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlLkpzb25iXG4gICAgICAgID8gQmluZEZpbHRlclF1ZXJ5SGVscGVyLkdldEhhc3VyYUpzb25iT3BlcmF0b3Iob3B0aW9ucylcbiAgICAgICAgOiBIYXN1cmFHcmFwaFFMV2hlcmVbXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhIYXN1cmFHcmFwaFFMV2hlcmUpLmZpbmQoXG4gICAgICAgICAgICAgIChncmFwaFFMT3BlcmF0b3IpID0+XG4gICAgICAgICAgICAgICAgZ3JhcGhRTE9wZXJhdG9yID09PVxuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKFdoZXJlKS5maW5kKChvcGVyYXRvcikgPT4gV2hlcmVbb3BlcmF0b3IgYXMga2V5b2YgdHlwZW9mIFdoZXJlXSA9PT0gb3B0aW9ucz8ub3BlcmF0b3IpLFxuICAgICAgICAgICAgKSBhcyBrZXlvZiB0eXBlb2YgSGFzdXJhR3JhcGhRTFdoZXJlXG4gICAgICAgICAgXVxuICAgICAgOiBIYXN1cmFHcmFwaFFMV2hlcmUuRVFVQUxTXG5cbiAgc3RhdGljIEdldEhhc3VyYUpzb25iT3BlcmF0b3IgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2U+PihcbiAgICBvcHRpb25zOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNQmFzZSwgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPE1CYXNlPj4sXG4gICk6IEhhc3VyYUdyYXBoUUxXaGVyZSA9PlxuICAgIG9wdGlvbnMub3BlcmF0b3IgPT09IFdoZXJlLklOXG4gICAgICA/IEhhc3VyYUdyYXBoUUxXaGVyZS5KU09OX0NPTlRBSU5TXG4gICAgICA6IG9wdGlvbnMub3BlcmF0b3IgPT09IFdoZXJlLkxJS0VcbiAgICAgID8gSGFzdXJhR3JhcGhRTFdoZXJlLkpTT05fSEFTX0tFWVNfQU5ZXG4gICAgICA6IEhhc3VyYUdyYXBoUUxXaGVyZVtcbiAgICAgICAgICBPYmplY3Qua2V5cyhIYXN1cmFHcmFwaFFMV2hlcmUpLmZpbmQoXG4gICAgICAgICAgICAoZ3JhcGhRTE9wZXJhdG9yKSA9PlxuICAgICAgICAgICAgICBncmFwaFFMT3BlcmF0b3IgPT09XG4gICAgICAgICAgICAgIE9iamVjdC5rZXlzKFdoZXJlKS5maW5kKChvcGVyYXRvcikgPT4gV2hlcmVbb3BlcmF0b3IgYXMga2V5b2YgdHlwZW9mIFdoZXJlXSA9PT0gb3B0aW9ucz8ub3BlcmF0b3IpLFxuICAgICAgICAgICkgYXMga2V5b2YgdHlwZW9mIEhhc3VyYUdyYXBoUUxXaGVyZVxuICAgICAgICBdXG59XG4iXX0=
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Where } from '../../../../domain';
|
|
2
|
-
import { isNil } from '../../../../utils';
|
|
3
|
-
export class FilterOptionHelper {
|
|
4
|
-
}
|
|
5
|
-
FilterOptionHelper.CheckIfIsFilterOption = (filter) => !isNil(filter?.operator);
|
|
6
|
-
FilterOptionHelper.GetValueFromFilter = (filter, fieldOption) => {
|
|
7
|
-
if (!FilterOptionHelper.CheckIfIsFilterOption(filter))
|
|
8
|
-
return filter;
|
|
9
|
-
if (filter.operator === Where.ISNULL)
|
|
10
|
-
return true;
|
|
11
|
-
if (filter.operator === Where.ISNOTNULL)
|
|
12
|
-
return false;
|
|
13
|
-
const converter = fieldOption.to
|
|
14
|
-
? fieldOption.to
|
|
15
|
-
: (value) => filter.operator === Where.LIKE && !Array.isArray(filter.value) && value.indexOf('%') < 0
|
|
16
|
-
? `%${value}%`
|
|
17
|
-
: value;
|
|
18
|
-
return Array.isArray(filter.value) && !fieldOption.fields && [Where.IN, Where.NOTIN].includes(filter.operator)
|
|
19
|
-
? filter.value.map((fieldValue) => converter(fieldValue))
|
|
20
|
-
: converter(filter.value);
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Where } from '../../../../domain';
|
|
2
|
+
import { isNil } from '../../../../utils';
|
|
3
|
+
export class FilterOptionHelper {
|
|
4
|
+
}
|
|
5
|
+
FilterOptionHelper.CheckIfIsFilterOption = (filter) => !isNil(filter?.operator);
|
|
6
|
+
FilterOptionHelper.GetValueFromFilter = (filter, fieldOption) => {
|
|
7
|
+
if (!FilterOptionHelper.CheckIfIsFilterOption(filter))
|
|
8
|
+
return filter;
|
|
9
|
+
if (filter.operator === Where.ISNULL)
|
|
10
|
+
return true;
|
|
11
|
+
if (filter.operator === Where.ISNOTNULL)
|
|
12
|
+
return false;
|
|
13
|
+
const converter = fieldOption.to
|
|
14
|
+
? fieldOption.to
|
|
15
|
+
: (value) => filter.operator === Where.LIKE && !Array.isArray(filter.value) && value.indexOf('%') < 0
|
|
16
|
+
? `%${value}%`
|
|
17
|
+
: value;
|
|
18
|
+
return Array.isArray(filter.value) && !fieldOption.fields && [Where.IN, Where.NOTIN].includes(filter.operator)
|
|
19
|
+
? filter.value.map((fieldValue) => converter(fieldValue))
|
|
20
|
+
: converter(filter.value);
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLW9wdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9maWx0ZXItb3B0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFELEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQzdGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUd6QyxNQUFNLE9BQU8sa0JBQWtCOztBQUN0Qix3Q0FBcUIsR0FBRyxDQUM3QixNQUFXLEVBQzBDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUE7QUFFM0UscUNBQWtCLEdBQUcsQ0FDMUIsTUFBaUQsRUFDakQsV0FBb0MsRUFDL0IsRUFBRTtJQUNQLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7UUFBRSxPQUFPLE1BQU0sQ0FBQTtJQUNwRSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLE1BQU07UUFBRSxPQUFPLElBQUksQ0FBQTtJQUNqRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLFNBQVM7UUFBRSxPQUFPLEtBQUssQ0FBQTtJQUVyRCxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsRUFBRTtRQUM5QixDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDaEIsQ0FBQyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FDYixNQUFNLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUM7WUFDdEYsQ0FBQyxDQUFDLElBQUksS0FBSyxHQUFHO1lBQ2QsQ0FBQyxDQUFDLEtBQUssQ0FBQTtJQUVmLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDNUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBWSxDQUFDLENBQUE7QUFDcEMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kZWxCYXNlU3RydWN0dXJlLCBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9ucywgV2hlcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBpc05pbCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgQ29sdW1uT3B0aW9ucyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuXG5leHBvcnQgY2xhc3MgRmlsdGVyT3B0aW9uSGVscGVyIHtcbiAgc3RhdGljIENoZWNrSWZJc0ZpbHRlck9wdGlvbiA9IDxNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4oXG4gICAgZmlsdGVyOiBhbnksXG4gICk6IGZpbHRlciBpcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNb2RlbCwgYW55PiA9PiAhaXNOaWwoZmlsdGVyPy5vcGVyYXRvcilcblxuICBzdGF0aWMgR2V0VmFsdWVGcm9tRmlsdGVyID0gPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsPj4oXG4gICAgZmlsdGVyOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxNb2RlbCwgYW55PixcbiAgICBmaWVsZE9wdGlvbjogQ29sdW1uT3B0aW9uczxhbnksIGFueT4sXG4gICk6IGFueSA9PiB7XG4gICAgaWYgKCFGaWx0ZXJPcHRpb25IZWxwZXIuQ2hlY2tJZklzRmlsdGVyT3B0aW9uKGZpbHRlcikpIHJldHVybiBmaWx0ZXJcbiAgICBpZiAoZmlsdGVyLm9wZXJhdG9yID09PSBXaGVyZS5JU05VTEwpIHJldHVybiB0cnVlXG4gICAgaWYgKGZpbHRlci5vcGVyYXRvciA9PT0gV2hlcmUuSVNOT1ROVUxMKSByZXR1cm4gZmFsc2VcblxuICAgIGNvbnN0IGNvbnZlcnRlciA9IGZpZWxkT3B0aW9uLnRvXG4gICAgICA/IGZpZWxkT3B0aW9uLnRvXG4gICAgICA6ICh2YWx1ZTogYW55KSA9PlxuICAgICAgICAgIGZpbHRlci5vcGVyYXRvciA9PT0gV2hlcmUuTElLRSAmJiAhQXJyYXkuaXNBcnJheShmaWx0ZXIudmFsdWUpICYmIHZhbHVlLmluZGV4T2YoJyUnKSA8IDBcbiAgICAgICAgICAgID8gYCUke3ZhbHVlfSVgXG4gICAgICAgICAgICA6IHZhbHVlXG5cbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShmaWx0ZXIudmFsdWUpICYmICFmaWVsZE9wdGlvbi5maWVsZHMgJiYgW1doZXJlLklOLCBXaGVyZS5OT1RJTl0uaW5jbHVkZXMoZmlsdGVyLm9wZXJhdG9yKVxuICAgICAgPyBmaWx0ZXIudmFsdWUubWFwKChmaWVsZFZhbHVlKSA9PiBjb252ZXJ0ZXIoZmllbGRWYWx1ZSkpXG4gICAgICA6IGNvbnZlcnRlcihmaWx0ZXIudmFsdWUgYXMgYW55KVxuICB9XG59XG4iXX0=
|