@infrab4a/connect 3.3.0-beta.0 → 3.3.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/domain/catalog/index.d.ts +2 -2
- package/domain/catalog/models/category.d.ts +24 -24
- 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/index.d.ts +6 -6
- package/domain/catalog/models/kit-product.d.ts +12 -12
- package/domain/catalog/models/product.d.ts +39 -39
- package/domain/catalog/models/types/category-condition.type.d.ts +4 -4
- package/domain/catalog/models/types/category-filter.type.d.ts +4 -4
- package/domain/catalog/models/types/category-metadata.type.d.ts +4 -4
- package/domain/catalog/models/types/index.d.ts +10 -10
- 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 +7 -7
- 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 +18 -18
- package/domain/catalog/repositories/category.repository.d.ts +15 -15
- package/domain/catalog/repositories/index.d.ts +4 -4
- package/domain/catalog/repositories/product.repository.d.ts +12 -12
- 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 +10 -10
- 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 +15 -15
- package/domain/generic/model/types/identifier-model.type.d.ts +7 -7
- package/domain/generic/model/types/index.d.ts +5 -5
- package/domain/generic/model/types/model-base-structure.type.d.ts +6 -6
- 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 +4 -4
- 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 +11 -11
- 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 +4 -4
- 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 +22 -22
- 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 +3 -4
- package/domain/shop-settings/models/shop-menu.d.ts +7 -7
- 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 +5 -10
- package/domain/shop-settings/models/types/menu-nav.type.d.ts +8 -8
- 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 +2 -3
- package/domain/shop-settings/repositories/shop-menu.repository.d.ts +4 -4
- package/domain/shopping/index.d.ts +2 -2
- package/domain/shopping/models/buy-2-win.d.ts +16 -16
- package/domain/shopping/models/checkout.d.ts +27 -27
- package/domain/shopping/models/coupons/coupon.d.ts +32 -32
- 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 +11 -11
- 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 +21 -21
- 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/checkout.repository.d.ts +4 -4
- package/domain/shopping/repositories/coupon.repository.d.ts +4 -4
- package/domain/shopping/repositories/index.d.ts +7 -7
- 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 +5 -5
- package/domain/users/errors/user-already-registered.error.d.ts +5 -5
- package/domain/users/errors/weak-password.error.d.ts +5 -5
- 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 +7 -7
- 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 +7 -7
- package/domain/users/models/user-payment-method.d.ts +14 -14
- package/domain/users/models/user.d.ts +28 -28
- 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 +5 -5
- package/errors/index.d.ts +4 -4
- package/errors/invalid-argument.error.d.ts +5 -5
- package/errors/not-found.error.d.ts +5 -5
- package/errors/required-argument.error.d.ts +6 -6
- package/{esm2015/domain/catalog/index.js → esm2020/domain/catalog/index.mjs} +3 -3
- package/esm2020/domain/catalog/models/category.mjs +10 -0
- package/{esm2015/domain/catalog/models/enums/index.js → esm2020/domain/catalog/models/enums/index.mjs} +3 -3
- package/{esm2015/domain/catalog/models/enums/product-genders.enum.js → esm2020/domain/catalog/models/enums/product-genders.enum.mjs} +7 -7
- package/{esm2015/domain/catalog/models/enums/shops.enum.js → esm2020/domain/catalog/models/enums/shops.enum.mjs} +8 -8
- package/{esm2015/domain/catalog/models/index.js → esm2020/domain/catalog/models/index.mjs} +7 -7
- package/{esm2015/domain/catalog/models/kit-product.js → esm2020/domain/catalog/models/kit-product.mjs} +18 -18
- package/esm2020/domain/catalog/models/product.mjs +17 -0
- package/{esm2015/domain/catalog/models/types/category-condition.type.js → esm2020/domain/catalog/models/types/category-condition.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/category-filter.type.js → esm2020/domain/catalog/models/types/category-filter.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/category-metadata.type.js → esm2020/domain/catalog/models/types/category-metadata.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/index.js → esm2020/domain/catalog/models/types/index.mjs} +11 -11
- package/{esm2015/domain/catalog/models/types/product-gender.type.js → esm2020/domain/catalog/models/types/product-gender.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/product-metadata.type.js → esm2020/domain/catalog/models/types/product-metadata.type.mjs} +2 -2
- package/esm2020/domain/catalog/models/types/product-review.type.mjs +2 -0
- package/{esm2015/domain/catalog/models/types/shop-description.type.js → esm2020/domain/catalog/models/types/shop-description.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/shop-price.type.js → esm2020/domain/catalog/models/types/shop-price.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/stock.type.js → esm2020/domain/catalog/models/types/stock.type.mjs} +2 -2
- package/{esm2015/domain/catalog/models/types/variant-grade.type.js → esm2020/domain/catalog/models/types/variant-grade.type.mjs} +2 -2
- package/esm2020/domain/catalog/models/variant.mjs +10 -0
- package/esm2020/domain/catalog/repositories/category.repository.mjs +2 -0
- package/{esm2015/domain/catalog/repositories/index.js → esm2020/domain/catalog/repositories/index.mjs} +5 -5
- package/esm2020/domain/catalog/repositories/product.repository.mjs +2 -0
- package/{esm2015/domain/catalog/repositories/subscription-product.repository.js → esm2020/domain/catalog/repositories/subscription-product.repository.mjs} +2 -2
- package/{esm2015/domain/catalog/repositories/variant.repository.js → esm2020/domain/catalog/repositories/variant.repository.mjs} +2 -2
- package/{esm2015/domain/generic/index.js → esm2020/domain/generic/index.mjs} +3 -3
- package/esm2020/domain/generic/model/base.model.mjs +23 -0
- package/{esm2015/domain/generic/model/identifier-fields.js → esm2020/domain/generic/model/identifier-fields.mjs} +2 -2
- package/{esm2015/domain/generic/model/index.js → esm2020/domain/generic/model/index.mjs} +4 -4
- package/esm2020/domain/generic/model/types/base-model-builder.type.mjs +2 -0
- package/esm2020/domain/generic/model/types/identifier-model.type.mjs +2 -0
- package/{esm2015/domain/generic/model/types/index.js → esm2020/domain/generic/model/types/index.mjs} +6 -6
- package/{esm2015/domain/generic/model/types/model-base-structure.type.js → esm2020/domain/generic/model/types/model-base-structure.type.mjs} +2 -2
- package/esm2020/domain/generic/model/types/non-function-properties.type.mjs +2 -0
- package/{esm2015/domain/generic/model/types/non-function-property-name.type.js → esm2020/domain/generic/model/types/non-function-property-name.type.mjs} +2 -2
- package/esm2020/domain/generic/repository/create.repository.mjs +2 -0
- package/esm2020/domain/generic/repository/crud.repository.mjs +2 -0
- package/esm2020/domain/generic/repository/delete.repository.mjs +2 -0
- package/{esm2015/domain/generic/repository/enums/index.js → esm2020/domain/generic/repository/enums/index.mjs} +3 -3
- package/{esm2015/domain/generic/repository/enums/update-option-actions.enum.js → esm2020/domain/generic/repository/enums/update-option-actions.enum.mjs} +9 -9
- package/{esm2015/domain/generic/repository/enums/where.enum.js → esm2020/domain/generic/repository/enums/where.enum.mjs} +16 -16
- package/esm2020/domain/generic/repository/find.repository.mjs +2 -0
- package/esm2020/domain/generic/repository/get.repository.mjs +2 -0
- package/{esm2015/domain/generic/repository/index.js → esm2020/domain/generic/repository/index.mjs} +10 -10
- package/esm2020/domain/generic/repository/read.repository.mjs +2 -0
- package/{esm2015/domain/generic/repository/types/index.js → esm2020/domain/generic/repository/types/index.mjs} +7 -7
- package/esm2020/domain/generic/repository/types/repository-find-filters.type.mjs +2 -0
- package/{esm2015/domain/generic/repository/types/repository-find-result.type.js → esm2020/domain/generic/repository/types/repository-find-result.type.mjs} +2 -2
- package/{esm2015/domain/generic/repository/types/repository-limit-options.type.js → esm2020/domain/generic/repository/types/repository-limit-options.type.mjs} +2 -2
- package/{esm2015/domain/generic/repository/types/repository-order-by-list.type.js → 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 -0
- package/{esm2015/domain/generic/repository/types/where-options.type.js → esm2020/domain/generic/repository/types/where-options.type.mjs} +2 -2
- package/esm2020/domain/generic/repository/update.repository.mjs +2 -0
- package/{esm2015/domain/index.js → esm2020/domain/index.mjs} +7 -7
- package/{esm2015/domain/location/index.js → esm2020/domain/location/index.mjs} +2 -2
- package/esm2020/domain/location/models/address.mjs +7 -0
- package/{esm2015/domain/location/models/index.js → esm2020/domain/location/models/index.mjs} +3 -3
- package/{esm2015/domain/location/models/types/index.js → esm2020/domain/location/models/types/index.mjs} +4 -4
- package/{esm2015/domain/location/models/types/location-bound.type.js → esm2020/domain/location/models/types/location-bound.type.mjs} +2 -2
- package/{esm2015/domain/location/models/types/location-geometry.type.js → esm2020/domain/location/models/types/location-geometry.type.mjs} +2 -2
- package/{esm2015/domain/location/models/types/location-lat-lng.type.js → esm2020/domain/location/models/types/location-lat-lng.type.mjs} +2 -2
- package/{esm2015/domain/shop-settings/enums/filter-type.enum.js → esm2020/domain/shop-settings/enums/filter-type.enum.mjs} +21 -21
- package/{esm2015/domain/shop-settings/enums/index.js → esm2020/domain/shop-settings/enums/index.mjs} +3 -3
- package/{esm2015/domain/shop-settings/enums/questions-filters.enum.js → esm2020/domain/shop-settings/enums/questions-filters.enum.mjs} +21 -21
- package/{esm2015/domain/shop-settings/helpers/beauty-questions.helper.js → esm2020/domain/shop-settings/helpers/beauty-questions.helper.mjs} +46 -46
- package/{esm2015/domain/shop-settings/helpers/index.js → esm2020/domain/shop-settings/helpers/index.mjs} +2 -2
- package/{esm2015/domain/shop-settings/index.js → esm2020/domain/shop-settings/index.mjs} +5 -5
- package/esm2020/domain/shop-settings/models/home.mjs +7 -0
- package/{esm2015/domain/shop-settings/models/index.js → esm2020/domain/shop-settings/models/index.mjs} +4 -5
- package/{esm2015/domain/shop-settings/models/shop-menu.js → esm2020/domain/shop-settings/models/shop-menu.mjs} +7 -7
- package/{esm2015/domain/shop-settings/models/types/banner.type.js → esm2020/domain/shop-settings/models/types/banner.type.mjs} +2 -2
- package/{esm2015/domain/shop-settings/models/types/benefit.type.js → esm2020/domain/shop-settings/models/types/benefit.type.mjs} +2 -2
- package/esm2020/domain/shop-settings/models/types/home-data.type.mjs +2 -0
- package/esm2020/domain/shop-settings/models/types/index.mjs +6 -0
- package/{esm2015/domain/shop-settings/models/types/menu-nav.type.js → esm2020/domain/shop-settings/models/types/menu-nav.type.mjs} +2 -2
- package/{esm2015/domain/shop-settings/models/types/sub-menu.type.js → esm2020/domain/shop-settings/models/types/sub-menu.type.mjs} +2 -2
- package/{esm2015/domain/shop-settings/repositories/home.repository.js → esm2020/domain/shop-settings/repositories/home.repository.mjs} +2 -2
- package/{esm2015/domain/shop-settings/repositories/index.js → esm2020/domain/shop-settings/repositories/index.mjs} +3 -4
- package/{esm2015/domain/shop-settings/repositories/shop-menu.repository.js → esm2020/domain/shop-settings/repositories/shop-menu.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/index.js → esm2020/domain/shopping/index.mjs} +3 -3
- package/{esm2015/domain/shopping/models/buy-2-win.js → esm2020/domain/shopping/models/buy-2-win.mjs} +14 -14
- package/esm2020/domain/shopping/models/checkout.mjs +38 -0
- package/{esm2015/domain/shopping/models/coupons/coupon.js → esm2020/domain/shopping/models/coupons/coupon.mjs} +38 -38
- package/{esm2015/domain/shopping/models/coupons/enums/coupon-club-mens.enum.js → esm2020/domain/shopping/models/coupons/enums/coupon-club-mens.enum.mjs} +7 -7
- package/{esm2015/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js → esm2020/domain/shopping/models/coupons/enums/coupon-subtypes.enum.mjs} +6 -6
- package/{esm2015/domain/shopping/models/coupons/enums/coupon-types.enum.js → esm2020/domain/shopping/models/coupons/enums/coupon-types.enum.mjs} +10 -10
- package/{esm2015/domain/shopping/models/coupons/enums/exclusivities.enum.js → esm2020/domain/shopping/models/coupons/enums/exclusivities.enum.mjs} +10 -10
- package/{esm2015/domain/shopping/models/coupons/enums/index.js → esm2020/domain/shopping/models/coupons/enums/index.mjs} +4 -4
- package/{esm2015/domain/shopping/models/coupons/index.js → esm2020/domain/shopping/models/coupons/index.mjs} +3 -3
- package/{esm2015/domain/shopping/models/enums/checkout-types.enum.js → esm2020/domain/shopping/models/enums/checkout-types.enum.mjs} +7 -7
- package/{esm2015/domain/shopping/models/enums/index.js → esm2020/domain/shopping/models/enums/index.mjs} +3 -3
- package/{esm2015/domain/shopping/models/enums/order-status.enum.js → esm2020/domain/shopping/models/enums/order-status.enum.mjs} +12 -12
- package/{esm2015/domain/shopping/models/index.js → esm2020/domain/shopping/models/index.mjs} +12 -12
- package/{esm2015/domain/shopping/models/line-item.js → esm2020/domain/shopping/models/line-item.mjs} +4 -4
- package/{esm2015/domain/shopping/models/order.js → esm2020/domain/shopping/models/order.mjs} +11 -11
- package/esm2020/domain/shopping/models/payment.mjs +169 -0
- package/{esm2015/domain/shopping/models/shipping-method.js → esm2020/domain/shopping/models/shipping-method.mjs} +7 -7
- package/{esm2015/domain/shopping/models/subscription/checkout.js → esm2020/domain/shopping/models/subscription/checkout.mjs} +28 -28
- package/{esm2015/domain/shopping/models/subscription/index.js → esm2020/domain/shopping/models/subscription/index.mjs} +3 -3
- package/{esm2015/domain/shopping/models/subscription/plan.js → esm2020/domain/shopping/models/subscription/plan.mjs} +7 -7
- package/{esm2015/domain/shopping/models/types/index.js → esm2020/domain/shopping/models/types/index.mjs} +8 -8
- package/esm2020/domain/shopping/models/types/payment-address.type.mjs +2 -0
- package/{esm2015/domain/shopping/models/types/payment-billing.type.js → esm2020/domain/shopping/models/types/payment-billing.type.mjs} +2 -2
- package/esm2020/domain/shopping/models/types/payment-card.type.mjs +2 -0
- package/esm2020/domain/shopping/models/types/payment-customer.type.mjs +2 -0
- package/{esm2015/domain/shopping/models/types/payment-document.type.js → esm2020/domain/shopping/models/types/payment-document.type.mjs} +2 -2
- package/{esm2015/domain/shopping/models/types/payment-item.type.js → esm2020/domain/shopping/models/types/payment-item.type.mjs} +2 -2
- package/{esm2015/domain/shopping/models/types/payment-shipping.type.js → esm2020/domain/shopping/models/types/payment-shipping.type.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/buy-2-win.repository.js → esm2020/domain/shopping/repositories/buy-2-win.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/checkout.repository.js → esm2020/domain/shopping/repositories/checkout.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/coupon.repository.js → esm2020/domain/shopping/repositories/coupon.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/index.js → esm2020/domain/shopping/repositories/index.mjs} +8 -8
- package/{esm2015/domain/shopping/repositories/legacy-order.repository.js → esm2020/domain/shopping/repositories/legacy-order.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/order.repository.js → esm2020/domain/shopping/repositories/order.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/payment.repository.js → esm2020/domain/shopping/repositories/payment.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/subscription/checkout.repository.js → esm2020/domain/shopping/repositories/subscription/checkout.repository.mjs} +2 -2
- package/{esm2015/domain/shopping/repositories/subscription/index.js → esm2020/domain/shopping/repositories/subscription/index.mjs} +3 -3
- package/{esm2015/domain/shopping/repositories/subscription/plan.repository.js → esm2020/domain/shopping/repositories/subscription/plan.repository.mjs} +2 -2
- package/{esm2015/domain/users/errors/index.js → esm2020/domain/users/errors/index.mjs} +4 -4
- package/{esm2015/domain/users/errors/unauthorized.error.js → esm2020/domain/users/errors/unauthorized.error.mjs} +8 -8
- package/{esm2015/domain/users/errors/user-already-registered.error.js → esm2020/domain/users/errors/user-already-registered.error.mjs} +8 -8
- package/{esm2015/domain/users/errors/weak-password.error.js → esm2020/domain/users/errors/weak-password.error.mjs} +8 -8
- package/{esm2015/domain/users/index.js → esm2020/domain/users/index.mjs} +6 -6
- package/{esm2015/domain/users/models/beauty-profile.js → esm2020/domain/users/models/beauty-profile.mjs} +12 -12
- package/{esm2015/domain/users/models/enums/accessory-importances.enum.js → esm2020/domain/users/models/enums/accessory-importances.enum.mjs} +7 -7
- package/{esm2015/domain/users/models/enums/area.enum.js → esm2020/domain/users/models/enums/area.enum.mjs} +13 -13
- package/{esm2015/domain/users/models/enums/beard-problems.enum.js → esm2020/domain/users/models/enums/beard-problems.enum.mjs} +11 -11
- package/{esm2015/domain/users/models/enums/beard-sizes.enum.js → esm2020/domain/users/models/enums/beard-sizes.enum.mjs} +9 -9
- package/{esm2015/domain/users/models/enums/beauty-product-importances.enum.js → esm2020/domain/users/models/enums/beauty-product-importances.enum.mjs} +8 -8
- package/{esm2015/domain/users/models/enums/body-problems.enum.js → esm2020/domain/users/models/enums/body-problems.enum.mjs} +13 -13
- package/{esm2015/domain/users/models/enums/body-shapes.enum.js → esm2020/domain/users/models/enums/body-shapes.enum.mjs} +9 -9
- package/{esm2015/domain/users/models/enums/body-tattoos.enum.js → esm2020/domain/users/models/enums/body-tattoos.enum.mjs} +7 -7
- package/{esm2015/domain/users/models/enums/face-skin-oilinesses.enum.js → esm2020/domain/users/models/enums/face-skin-oilinesses.enum.mjs} +9 -9
- package/{esm2015/domain/users/models/enums/face-skin-problems.enum.js → esm2020/domain/users/models/enums/face-skin-problems.enum.mjs} +12 -12
- package/{esm2015/domain/users/models/enums/face-skin-tones.enum.js → esm2020/domain/users/models/enums/face-skin-tones.enum.mjs} +10 -10
- package/{esm2015/domain/users/models/enums/family-incomes.enum.js → esm2020/domain/users/models/enums/family-incomes.enum.mjs} +10 -10
- package/{esm2015/domain/users/models/enums/fragrance-importances.enum.js → esm2020/domain/users/models/enums/fragrance-importances.enum.mjs} +7 -7
- package/{esm2015/domain/users/models/enums/hair-colors.enum.js → esm2020/domain/users/models/enums/hair-colors.enum.mjs} +12 -12
- package/{esm2015/domain/users/models/enums/hair-problems.enum.js → esm2020/domain/users/models/enums/hair-problems.enum.mjs} +12 -12
- package/{esm2015/domain/users/models/enums/hair-strands.enum.js → esm2020/domain/users/models/enums/hair-strands.enum.mjs} +10 -10
- package/{esm2015/domain/users/models/enums/hair-types.enum.js → esm2020/domain/users/models/enums/hair-types.enum.mjs} +9 -9
- package/{esm2015/domain/users/models/enums/index.js → esm2020/domain/users/models/enums/index.mjs} +21 -21
- package/{esm2015/domain/users/models/enums/office-position.enum.js → esm2020/domain/users/models/enums/office-position.enum.mjs} +8 -8
- package/{esm2015/domain/users/models/enums/product-spents.enum.js → esm2020/domain/users/models/enums/product-spents.enum.mjs} +10 -10
- package/{esm2015/domain/users/models/enums/user-type.enum.js → esm2020/domain/users/models/enums/user-type.enum.mjs} +10 -10
- package/{esm2015/domain/users/models/index.js → esm2020/domain/users/models/index.mjs} +8 -8
- package/{esm2015/domain/users/models/lead.js → esm2020/domain/users/models/lead.mjs} +7 -7
- package/esm2020/domain/users/models/subscription/edition.mjs +7 -0
- package/{esm2015/domain/users/models/subscription/enums/billing-status.enum.js → esm2020/domain/users/models/subscription/enums/billing-status.enum.mjs} +5 -5
- package/{esm2015/domain/users/models/subscription/enums/edition-status.enum.js → esm2020/domain/users/models/subscription/enums/edition-status.enum.mjs} +6 -6
- package/{esm2015/domain/users/models/subscription/enums/index.js → esm2020/domain/users/models/subscription/enums/index.mjs} +5 -5
- package/{esm2015/domain/users/models/subscription/enums/payment-type.enum.js → esm2020/domain/users/models/subscription/enums/payment-type.enum.mjs} +7 -7
- package/{esm2015/domain/users/models/subscription/enums/status.enum.js → esm2020/domain/users/models/subscription/enums/status.enum.mjs} +6 -6
- package/{esm2015/domain/users/models/subscription/index.js → esm2020/domain/users/models/subscription/index.mjs} +5 -5
- package/{esm2015/domain/users/models/subscription/payment.js → esm2020/domain/users/models/subscription/payment.mjs} +14 -14
- package/{esm2015/domain/users/models/subscription/subscription.js → esm2020/domain/users/models/subscription/subscription.mjs} +43 -43
- package/{esm2015/domain/users/models/user-address.js → esm2020/domain/users/models/user-address.mjs} +7 -7
- package/{esm2015/domain/users/models/user-payment-method.js → esm2020/domain/users/models/user-payment-method.mjs} +7 -7
- package/{esm2015/domain/users/models/user.js → esm2020/domain/users/models/user.mjs} +26 -26
- package/{esm2015/domain/users/repositories/beauty-profile.repository.js → esm2020/domain/users/repositories/beauty-profile.repository.mjs} +2 -2
- package/{esm2015/domain/users/repositories/edition.repository.js → esm2020/domain/users/repositories/edition.repository.mjs} +2 -2
- package/{esm2015/domain/users/repositories/index.js → esm2020/domain/users/repositories/index.mjs} +9 -9
- package/{esm2015/domain/users/repositories/lead.repository.js → esm2020/domain/users/repositories/lead.repository.mjs} +2 -2
- package/{esm2015/domain/users/repositories/subscription-payment.repository.js → esm2020/domain/users/repositories/subscription-payment.repository.mjs} +2 -2
- package/{esm2015/domain/users/repositories/subscription.repository.js → esm2020/domain/users/repositories/subscription.repository.mjs} +2 -2
- package/{esm2015/domain/users/repositories/user-address.repository.js → esm2020/domain/users/repositories/user-address.repository.mjs} +2 -2
- package/{esm2015/domain/users/repositories/user-payment-method.repository.js → esm2020/domain/users/repositories/user-payment-method.repository.mjs} +2 -2
- package/esm2020/domain/users/repositories/user.repository.mjs +2 -0
- package/esm2020/domain/users/services/authentication.service.mjs +2 -0
- package/{esm2015/domain/users/services/index.js → esm2020/domain/users/services/index.mjs} +4 -4
- package/{esm2015/domain/users/services/register.service.js → esm2020/domain/users/services/register.service.mjs} +2 -2
- package/{esm2015/domain/users/services/types/basic-user-data.type.js → esm2020/domain/users/services/types/basic-user-data.type.mjs} +2 -2
- package/{esm2015/domain/users/services/types/index.js → esm2020/domain/users/services/types/index.mjs} +2 -2
- package/esm2020/domain/users/use-cases/authentication.mjs +43 -0
- package/{esm2015/domain/users/use-cases/index.js → esm2020/domain/users/use-cases/index.mjs} +5 -5
- package/esm2020/domain/users/use-cases/recovery-password.mjs +9 -0
- package/esm2020/domain/users/use-cases/register.mjs +38 -0
- package/esm2020/domain/users/use-cases/signout.mjs +9 -0
- package/{esm2015/errors/duplicated-results.error.js → esm2020/errors/duplicated-results.error.mjs} +8 -8
- package/{esm2015/errors/index.js → esm2020/errors/index.mjs} +5 -5
- package/{esm2015/errors/invalid-argument.error.js → esm2020/errors/invalid-argument.error.mjs} +8 -8
- package/{esm2015/errors/not-found.error.js → esm2020/errors/not-found.error.mjs} +8 -8
- package/{esm2015/errors/required-argument.error.js → esm2020/errors/required-argument.error.mjs} +9 -9
- package/{esm2015/index.js → esm2020/index.mjs} +6 -6
- package/esm2020/infra/elasticsearch/adapters/axios.adapter.mjs +48 -0
- package/esm2020/infra/elasticsearch/adapters/elastic-search.adapter.mjs +2 -0
- package/{esm2015/infra/elasticsearch/adapters/index.js → esm2020/infra/elasticsearch/adapters/index.mjs} +3 -3
- package/{esm2015/infra/elasticsearch/index.js → esm2020/infra/elasticsearch/index.mjs} +4 -4
- package/{esm2015/infra/elasticsearch/indexes/index.js → esm2020/infra/elasticsearch/indexes/index.mjs} +2 -2
- package/esm2020/infra/elasticsearch/indexes/products-index.mjs +88 -0
- package/{esm2015/infra/elasticsearch/types/elastic-search-result.js → esm2020/infra/elasticsearch/types/elastic-search-result.mjs} +2 -2
- package/{esm2015/infra/elasticsearch/types/index.js → esm2020/infra/elasticsearch/types/index.mjs} +2 -2
- package/esm2020/infra/firebase/auth/authentication-firebase-auth.service.mjs +41 -0
- package/{esm2015/infra/firebase/auth/index.js → esm2020/infra/firebase/auth/index.mjs} +3 -3
- package/esm2020/infra/firebase/auth/register-firebase-auth.service.mjs +23 -0
- package/{esm2015/infra/firebase/auth/types/firebase-user-with-id.type.js → 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 -0
- package/esm2020/infra/firebase/firestore/enums/index.mjs +2 -0
- package/{esm2015/infra/firebase/firestore/index.js → esm2020/infra/firebase/firestore/index.mjs} +4 -4
- package/{esm2015/infra/firebase/firestore/mixins/index.js → esm2020/infra/firebase/firestore/mixins/index.mjs} +10 -10
- package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +25 -0
- package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +10 -0
- package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +15 -0
- package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +94 -0
- package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +52 -0
- package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +21 -0
- package/{esm2015/infra/firebase/firestore/mixins/with-helpers.mixin.js → esm2020/infra/firebase/firestore/mixins/with-helpers.mixin.mjs} +17 -17
- package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +11 -0
- package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +42 -0
- package/esm2020/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +64 -0
- package/{esm2015/infra/firebase/firestore/repositories/catalog/index.js → esm2020/infra/firebase/firestore/repositories/catalog/index.mjs} +5 -5
- package/esm2020/infra/firebase/firestore/repositories/catalog/product-firestore.repository.mjs +45 -0
- package/{esm2015/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.mjs} +14 -14
- package/{esm2015/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/index.js → esm2020/infra/firebase/firestore/repositories/index.mjs} +5 -5
- package/esm2020/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.mjs +54 -0
- package/{esm2015/infra/firebase/firestore/repositories/shop-settings/index.js → esm2020/infra/firebase/firestore/repositories/shop-settings/index.mjs} +3 -4
- package/{esm2015/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.mjs} +29 -29
- package/{esm2015/infra/firebase/firestore/repositories/shopping/index.js → esm2020/infra/firebase/firestore/repositories/shopping/index.mjs} +9 -9
- package/{esm2015/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.mjs} +9 -9
- package/esm2020/infra/firebase/firestore/repositories/shopping/order-firestore.repository.mjs +38 -0
- package/{esm2015/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/users/index.js → esm2020/infra/firebase/firestore/repositories/users/index.mjs} +9 -9
- package/{esm2015/infra/firebase/firestore/repositories/users/lead-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/lead-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.mjs} +14 -14
- package/{esm2015/infra/firebase/firestore/repositories/users/subscription-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/subscription-firestore.repository.mjs} +12 -12
- package/{esm2015/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.mjs} +14 -14
- package/{esm2015/infra/firebase/firestore/repositories/users/user-address-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/user-address-firestore.repository.mjs} +14 -14
- package/{esm2015/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.mjs} +14 -14
- package/esm2020/infra/firebase/firestore/repositories/users/user-firestore.repository.mjs +56 -0
- package/{esm2015/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.js → esm2020/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.mjs} +14 -14
- package/esm2020/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +2 -0
- package/esm2020/infra/firebase/firestore/types/firestore.helpers.type.mjs +2 -0
- package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +2 -0
- package/{esm2015/infra/firebase/firestore/types/index.js → esm2020/infra/firebase/firestore/types/index.mjs} +4 -4
- package/{esm2015/infra/firebase/index.js → esm2020/infra/firebase/index.mjs} +3 -3
- package/{esm2015/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.js → esm2020/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.mjs} +13 -13
- package/{esm2015/infra/hasura-graphql/enums/hasura-graphql-where.enum.js → esm2020/infra/hasura-graphql/enums/hasura-graphql-where.enum.mjs} +15 -15
- package/{esm2015/infra/hasura-graphql/enums/index.js → esm2020/infra/hasura-graphql/enums/index.mjs} +3 -3
- package/{esm2015/infra/hasura-graphql/index.js → esm2020/infra/hasura-graphql/index.mjs} +5 -5
- package/esm2020/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +32 -0
- package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +68 -0
- package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +22 -0
- package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +96 -0
- package/{esm2015/infra/hasura-graphql/mixins/helpers/index.js → esm2020/infra/hasura-graphql/mixins/helpers/index.mjs} +5 -4
- package/{esm2015/infra/hasura-graphql/mixins/index.js → esm2020/infra/hasura-graphql/mixins/index.mjs} +8 -8
- package/esm2020/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +37 -0
- package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +10 -0
- package/esm2020/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +29 -0
- package/esm2020/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +46 -0
- package/esm2020/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +34 -0
- package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +92 -0
- package/esm2020/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +58 -0
- package/{esm2015/infra/hasura-graphql/models/category-hasura-graphql.js → esm2020/infra/hasura-graphql/models/category-hasura-graphql.mjs} +4 -4
- package/{esm2015/infra/hasura-graphql/models/index.js → esm2020/infra/hasura-graphql/models/index.mjs} +5 -5
- package/{esm2015/infra/hasura-graphql/models/kit-product-hasura-graphql.js → esm2020/infra/hasura-graphql/models/kit-product-hasura-graphql.mjs} +15 -15
- package/{esm2015/infra/hasura-graphql/models/product-hasura-graphql.js → esm2020/infra/hasura-graphql/models/product-hasura-graphql.mjs} +11 -11
- package/{esm2015/infra/hasura-graphql/models/variant-hasura-graphql.js → esm2020/infra/hasura-graphql/models/variant-hasura-graphql.mjs} +9 -9
- package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +219 -0
- package/{esm2015/infra/hasura-graphql/repositories/catalog/index.js → esm2020/infra/hasura-graphql/repositories/catalog/index.mjs} +4 -4
- package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +466 -0
- package/esm2020/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.mjs +106 -0
- package/{esm2015/infra/hasura-graphql/repositories/index.js → esm2020/infra/hasura-graphql/repositories/index.mjs} +2 -2
- package/{esm2015/infra/hasura-graphql/types/fields.type.js → esm2020/infra/hasura-graphql/types/fields.type.mjs} +2 -2
- package/esm2020/infra/hasura-graphql/types/graphql.repository.type.mjs +2 -0
- package/{esm2015/infra/hasura-graphql/types/hasura-graphql-auth-options.type.js → 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 -0
- package/{esm2015/infra/hasura-graphql/types/hasura-graphql-headers.type.js → esm2020/infra/hasura-graphql/types/hasura-graphql-headers.type.mjs} +2 -2
- package/{esm2015/infra/hasura-graphql/types/index.js → esm2020/infra/hasura-graphql/types/index.mjs} +9 -9
- package/{esm2015/infra/hasura-graphql/types/nested-field.type.js → esm2020/infra/hasura-graphql/types/nested-field.type.mjs} +2 -2
- package/{esm2015/infra/hasura-graphql/types/query-builder-options.type.js → esm2020/infra/hasura-graphql/types/query-builder-options.type.mjs} +2 -2
- package/{esm2015/infra/hasura-graphql/types/variable-options.type.js → esm2020/infra/hasura-graphql/types/variable-options.type.mjs} +2 -2
- package/{esm2015/infra/index.js → esm2020/infra/index.mjs} +4 -4
- package/{esm2015/infrab4a-connect.js → esm2020/infrab4a-connect.mjs} +4 -4
- package/{esm2015/utils/index.js → esm2020/utils/index.mjs} +8 -8
- package/{esm2015/utils/is-uuid.js → esm2020/utils/is-uuid.mjs} +3 -3
- package/{esm2015/utils/mixins/base.mixin.js → esm2020/utils/mixins/base.mixin.mjs} +6 -6
- package/{esm2015/utils/mixins/index.js → esm2020/utils/mixins/index.mjs} +4 -4
- package/{esm2015/utils/mixins/merge-constructor-params.type.js → esm2020/utils/mixins/merge-constructor-params.type.mjs} +2 -2
- package/{esm2015/utils/mixins/mixin-ctor.type.js → esm2020/utils/mixins/mixin-ctor.type.mjs} +2 -2
- package/{esm2015/utils/parse-datetime.js → esm2020/utils/parse-datetime.mjs} +14 -14
- package/{esm2015/utils/types/array-element.type.js → esm2020/utils/types/array-element.type.mjs} +2 -2
- package/{esm2015/utils/types/index.js → esm2020/utils/types/index.mjs} +3 -3
- package/{esm2015/utils/types/prop.type.js → esm2020/utils/types/prop.type.mjs} +2 -2
- package/fesm2015/{infrab4a-connect.js → infrab4a-connect.mjs} +3158 -3073
- package/fesm2015/infrab4a-connect.mjs.map +1 -0
- package/fesm2020/infrab4a-connect.mjs +3261 -0
- package/fesm2020/infrab4a-connect.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/infra/elasticsearch/adapters/axios.adapter.d.ts +14 -14
- package/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +7 -7
- 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 +15 -15
- package/infra/elasticsearch/types/elastic-search-result.d.ts +7 -7
- 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 +3 -3
- package/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +8 -0
- package/infra/firebase/firestore/enums/index.d.ts +1 -0
- 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 +4 -4
- 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 +4 -4
- 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 +7 -7
- package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +7 -7
- package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +17 -17
- package/infra/firebase/firestore/repositories/catalog/index.d.ts +4 -4
- package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +11 -11
- package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +8 -8
- 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 +2 -3
- package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/shopping/index.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +13 -8
- package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/index.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +13 -13
- 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 +13 -13
- 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 +14 -12
- package/infra/firebase/firestore/types/index.d.ts +3 -3
- 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 +13 -13
- 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 +13 -13
- package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +10 -0
- package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +6 -6
- package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +8 -8
- package/infra/hasura-graphql/mixins/helpers/index.d.ts +4 -3
- package/infra/hasura-graphql/mixins/index.d.ts +7 -7
- package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +8 -8
- 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 +25 -31
- package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +24 -24
- package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +11 -11
- 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 +14 -14
- package/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +9 -9
- package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +27 -27
- package/infra/hasura-graphql/repositories/catalog/index.d.ts +3 -3
- package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +28 -28
- 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 +21 -21
- 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 +40 -36
- 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 +21 -8
- package/utils/index.d.ts +7 -7
- package/utils/is-uuid.d.ts +1 -1
- 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
- package/bundles/infrab4a-connect.umd.js +0 -4981
- package/bundles/infrab4a-connect.umd.js.map +0 -1
- package/domain/shop-settings/models/shop-settings.d.ts +0 -9
- package/domain/shop-settings/models/types/shop-banner.type.d.ts +0 -10
- package/domain/shop-settings/models/types/shop-brands.type.d.ts +0 -10
- package/domain/shop-settings/models/types/shop-carousel.type.d.ts +0 -5
- package/domain/shop-settings/models/types/shop-collection.type.d.ts +0 -8
- package/domain/shop-settings/models/types/shop-section.type.d.ts +0 -9
- package/domain/shop-settings/repositories/shop-settings.repository.d.ts +0 -4
- package/esm2015/domain/catalog/models/category.js +0 -10
- package/esm2015/domain/catalog/models/product.js +0 -17
- package/esm2015/domain/catalog/models/types/product-review.type.js +0 -2
- package/esm2015/domain/catalog/models/variant.js +0 -10
- package/esm2015/domain/catalog/repositories/category.repository.js +0 -2
- package/esm2015/domain/catalog/repositories/product.repository.js +0 -2
- package/esm2015/domain/generic/model/base.model.js +0 -23
- package/esm2015/domain/generic/model/types/base-model-builder.type.js +0 -2
- package/esm2015/domain/generic/model/types/identifier-model.type.js +0 -2
- package/esm2015/domain/generic/model/types/non-function-properties.type.js +0 -2
- package/esm2015/domain/generic/repository/create.repository.js +0 -2
- package/esm2015/domain/generic/repository/crud.repository.js +0 -2
- package/esm2015/domain/generic/repository/delete.repository.js +0 -2
- package/esm2015/domain/generic/repository/find.repository.js +0 -2
- package/esm2015/domain/generic/repository/get.repository.js +0 -2
- package/esm2015/domain/generic/repository/read.repository.js +0 -2
- package/esm2015/domain/generic/repository/types/repository-find-filters.type.js +0 -2
- package/esm2015/domain/generic/repository/types/repository-update-params.type.js +0 -2
- package/esm2015/domain/generic/repository/update.repository.js +0 -2
- package/esm2015/domain/location/models/address.js +0 -7
- package/esm2015/domain/shop-settings/models/home.js +0 -7
- package/esm2015/domain/shop-settings/models/shop-settings.js +0 -7
- package/esm2015/domain/shop-settings/models/types/home-data.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/index.js +0 -11
- package/esm2015/domain/shop-settings/models/types/shop-banner.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/shop-brands.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/shop-carousel.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/shop-collection.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/shop-section.type.js +0 -2
- package/esm2015/domain/shop-settings/repositories/shop-settings.repository.js +0 -2
- package/esm2015/domain/shopping/models/checkout.js +0 -38
- package/esm2015/domain/shopping/models/payment.js +0 -169
- package/esm2015/domain/shopping/models/types/payment-address.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-card.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-customer.type.js +0 -2
- package/esm2015/domain/users/models/subscription/edition.js +0 -7
- package/esm2015/domain/users/repositories/user.repository.js +0 -2
- package/esm2015/domain/users/services/authentication.service.js +0 -2
- package/esm2015/domain/users/use-cases/authentication.js +0 -40
- package/esm2015/domain/users/use-cases/recovery-password.js +0 -12
- package/esm2015/domain/users/use-cases/register.js +0 -34
- package/esm2015/domain/users/use-cases/signout.js +0 -12
- package/esm2015/infra/elasticsearch/adapters/axios.adapter.js +0 -57
- package/esm2015/infra/elasticsearch/adapters/elastic-search.adapter.js +0 -2
- package/esm2015/infra/elasticsearch/indexes/products-index.js +0 -93
- package/esm2015/infra/firebase/auth/authentication-firebase-auth.service.js +0 -52
- package/esm2015/infra/firebase/auth/register-firebase-auth.service.js +0 -26
- package/esm2015/infra/firebase/firestore/mixins/with-create-firestore.mixin.js +0 -31
- package/esm2015/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js +0 -10
- package/esm2015/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js +0 -18
- package/esm2015/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +0 -92
- package/esm2015/infra/firebase/firestore/mixins/with-firestore.mixin.js +0 -22
- package/esm2015/infra/firebase/firestore/mixins/with-get-firestore.mixin.js +0 -24
- package/esm2015/infra/firebase/firestore/mixins/with-sub-collection.mixin.js +0 -11
- package/esm2015/infra/firebase/firestore/mixins/with-update-firestore.mixin.js +0 -45
- package/esm2015/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js +0 -71
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +0 -52
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.js +0 -56
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/users/user-firestore.repository.js +0 -68
- package/esm2015/infra/firebase/firestore/types/firestore-sub.repository.type.js +0 -2
- package/esm2015/infra/firebase/firestore/types/firestore.helpers.type.js +0 -2
- package/esm2015/infra/firebase/firestore/types/firestore.repository.type.js +0 -2
- package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +0 -31
- package/esm2015/infra/hasura-graphql/mixins/helpers/filter-option.helper.js +0 -22
- package/esm2015/infra/hasura-graphql/mixins/helpers/graphql-field.helper.js +0 -72
- package/esm2015/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.js +0 -45
- package/esm2015/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.js +0 -10
- package/esm2015/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.js +0 -29
- package/esm2015/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js +0 -93
- package/esm2015/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.js +0 -35
- package/esm2015/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js +0 -94
- package/esm2015/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.js +0 -56
- package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +0 -230
- package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +0 -455
- package/esm2015/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.js +0 -116
- package/esm2015/infra/hasura-graphql/types/graphql.repository.type.js +0 -2
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +0 -2
- package/fesm2015/infrab4a-connect.js.map +0 -1
- package/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +0 -8
- package/infrab4a-connect.d.ts +0 -5
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { BaseModel, } from '../../../../domain';
|
|
2
|
+
import { isDate, isEmpty, isNil, isObject, isString, parseDateTime } from '../../../../utils';
|
|
3
|
+
import { AttributeOptionHelper } from './attribute-option.helper';
|
|
4
|
+
import { BindFilterQueryHelper } from './bind-filter-query.helper';
|
|
5
|
+
export class GraphQLFieldHelper {
|
|
6
|
+
}
|
|
7
|
+
GraphQLFieldHelper.CheckIsGraphQLParams = (params) => !isString(params) && Array.isArray(params) && params.length >= 0 && !!params[0].operation;
|
|
8
|
+
GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields = (fields) => {
|
|
9
|
+
return fields
|
|
10
|
+
?.map((field) => {
|
|
11
|
+
if (isString(field))
|
|
12
|
+
return field.toString();
|
|
13
|
+
const fieldName = Object.keys(field).shift();
|
|
14
|
+
const fieldValue = field[fieldName];
|
|
15
|
+
if (Array.isArray(fieldValue))
|
|
16
|
+
return { [fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue) };
|
|
17
|
+
if (!AttributeOptionHelper.CheckIsColumnOption(fieldValue))
|
|
18
|
+
return;
|
|
19
|
+
if (fieldValue.fields)
|
|
20
|
+
return !fieldValue.filters
|
|
21
|
+
? {
|
|
22
|
+
[fieldValue.columnName || fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
|
|
23
|
+
}
|
|
24
|
+
: {
|
|
25
|
+
operation: fieldValue.columnName || fieldName,
|
|
26
|
+
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
|
|
27
|
+
variables: {
|
|
28
|
+
[`${fieldValue.columnName}_where`]: {
|
|
29
|
+
name: 'where',
|
|
30
|
+
type: fieldValue.filters.filterType,
|
|
31
|
+
value: BindFilterQueryHelper.MakeGraphQLWhere(fieldValue.filters.filters, fieldValue.fields),
|
|
32
|
+
required: true,
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
return fieldValue.columnName;
|
|
37
|
+
})
|
|
38
|
+
.filter((field) => !!field);
|
|
39
|
+
};
|
|
40
|
+
GraphQLFieldHelper.ConvertFieldValueFrom = (data, fields) => Object.keys(data).reduce((result, columnName) => {
|
|
41
|
+
const { attributeName, fields: attributeFields, from, } = AttributeOptionHelper.FindColumnOptionFromList(columnName, fields);
|
|
42
|
+
if (!!attributeFields && Array.isArray(attributeFields)) {
|
|
43
|
+
if (Array.isArray(data[columnName]))
|
|
44
|
+
return {
|
|
45
|
+
...result,
|
|
46
|
+
[attributeName]: from
|
|
47
|
+
? from(data[columnName], data)
|
|
48
|
+
: data[columnName].map((value) => GraphQLFieldHelper.ConvertFieldValueFrom(value, attributeFields)),
|
|
49
|
+
};
|
|
50
|
+
if (isObject(data[columnName]))
|
|
51
|
+
return {
|
|
52
|
+
...result,
|
|
53
|
+
[attributeName]: !!from
|
|
54
|
+
? from(data[columnName])
|
|
55
|
+
: GraphQLFieldHelper.ConvertFieldValueFrom(data[columnName], attributeFields),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
if (!!from)
|
|
59
|
+
return { ...result, [attributeName]: from(data[columnName], data) };
|
|
60
|
+
return { ...result, [attributeName]: parseDateTime(data[columnName]) };
|
|
61
|
+
}, {});
|
|
62
|
+
GraphQLFieldHelper.ConvertFieldValueTo = (instance, fields, update = false) => {
|
|
63
|
+
const data = instance.toPlain?.() || instance;
|
|
64
|
+
return Object.keys(data).reduce((result, attributeName) => {
|
|
65
|
+
const { columnName, fields: attributeFields, foreignKeyColumn, to, bindPersistData, } = AttributeOptionHelper.FindByAttribute(attributeName, fields);
|
|
66
|
+
if (bindPersistData)
|
|
67
|
+
return { ...result, ...bindPersistData(data[attributeName], instance) };
|
|
68
|
+
if (isNil(columnName))
|
|
69
|
+
return result;
|
|
70
|
+
if (!!foreignKeyColumn &&
|
|
71
|
+
!isEmpty(foreignKeyColumn) &&
|
|
72
|
+
!Object.keys(foreignKeyColumn).filter((key) => !data[attributeName]?.[key]).length)
|
|
73
|
+
return Object.keys(foreignKeyColumn).reduce((object, current) => ({ ...object, [foreignKeyColumn[current]]: data[attributeName]?.[current] }), { ...result });
|
|
74
|
+
if (update && isObject(data[attributeName]) && !isNil(attributeFields) && !isDate(data[attributeName]))
|
|
75
|
+
return result;
|
|
76
|
+
if (!!columnName && Array.isArray(attributeFields) && isObject(data[attributeName])) {
|
|
77
|
+
const converted = !isNil(columnName) && to ? to(instance[attributeName], instance) : data[attributeName];
|
|
78
|
+
return {
|
|
79
|
+
...result,
|
|
80
|
+
...(converted !== undefined
|
|
81
|
+
? {
|
|
82
|
+
[columnName]: {
|
|
83
|
+
data: instance[attributeName] instanceof BaseModel
|
|
84
|
+
? GraphQLFieldHelper.ConvertFieldValueTo(data[attributeName], attributeFields)
|
|
85
|
+
: converted,
|
|
86
|
+
},
|
|
87
|
+
}
|
|
88
|
+
: {}),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
if (!!to)
|
|
92
|
+
return { ...result, [columnName]: to(instance[attributeName], instance) };
|
|
93
|
+
return { ...result, [columnName]: data[attributeName] };
|
|
94
|
+
}, {});
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC1maWVsZC5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9ncmFwaHFsLWZpZWxkLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUlWLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFHN0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFFbEUsTUFBTSxPQUFPLGtCQUFrQjs7QUFDdEIsdUNBQW9CLEdBQUcsQ0FDNUIsTUFBdUMsRUFDTCxFQUFFLENBQ3BDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUE7QUFFcEYsb0RBQWlDLEdBQUcsQ0FDekMsTUFBa0MsRUFDMUIsRUFBRTtJQUNWLE9BQU8sTUFBTTtRQUNYLEVBQUUsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDZCxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQTtRQUU1QyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQzVDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxT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Q0FDOUUsQ0FBQyxDQUFDLFNBQVM7eUJBQ2hCO3FCQUNGO29CQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDUixDQUFBO1NBQ0Y7UUFFRCxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFBO1FBRW5GLE9BQU8sRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFBO0lBQ3pELENBQUMsRUFBRSxFQUFjLENBQUMsQ0FBQTtBQUNwQixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlTW9kZWwsXG4gIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbiAgTm9uRnVuY3Rpb25Qcm9wZXJ0aWVzLFxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBpc0RhdGUsIGlzRW1wdHksIGlzTmlsLCBpc09iamVjdCwgaXNTdHJpbmcsIHBhcnNlRGF0ZVRpbWUgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEZpZWxkcywgR3JhcGhRTFBhcmFtcywgSGFzdXJhR3JhcGhRTEZpZWxkcyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIgfSBmcm9tICcuL2F0dHJpYnV0ZS1vcHRpb24uaGVscGVyJ1xuaW1wb3J0IHsgQmluZEZpbHRlclF1ZXJ5SGVscGVyIH0gZnJvbSAnLi9iaW5kLWZpbHRlci1xdWVyeS5oZWxwZXInXG5cbmV4cG9ydCBjbGFzcyBHcmFwaFFMRmllbGRIZWxwZXIge1xuICBzdGF0aWMgQ2hlY2tJc0dyYXBoUUxQYXJhbXMgPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+KFxuICAgIHBhcmFtczogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNb2RlbD5bXSxcbiAgKTogcGFyYW1zIGlzIEdyYXBoUUxQYXJhbXM8TW9kZWw+W10gPT5cbiAgICAhaXNTdHJpbmcocGFyYW1zKSAmJiBBcnJheS5pc0FycmF5KHBhcmFtcykgJiYgcGFyYW1zLmxlbmd0aCA+PSAwICYmICEhcGFyYW1zWzBdLm9wZXJhdGlvblxuXG4gIHN0YXRpYyBDb252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMgPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+KFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD4sXG4gICk6IEZpZWxkcyA9PiB7XG4gICAgcmV0dXJuIGZpZWxkc1xuICAgICAgPy5tYXAoKGZpZWxkKSA9PiB7XG4gICAgICAgIGlmIChpc1N0cmluZyhmaWVsZCkpIHJldHVybiBmaWVsZC50b1N0cmluZygpXG5cbiAgICAgICAgY29uc3QgZmllbGROYW1lID0gT2JqZWN0LmtleXMoZmllbGQpLnNoaWZ0KClcbiAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IGZpZWxkW2ZpZWxkTmFtZV1cblxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZFZhbHVlKSlcbiAgICAgICAgICByZXR1cm4geyBbZmllbGROYW1lXTogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZFZhbHVlKSB9XG4gICAgICAgIGlmICghQXR0cmlidXRlT3B0aW9uSGVscGVyLkNoZWNrSXNDb2x1bW5PcHRpb24oZmllbGRWYWx1ZSkpIHJldHVyblxuICAgICAgICBpZiAoZmllbGRWYWx1ZS5maWVsZHMpXG4gICAgICAgICAgcmV0dXJuICFmaWVsZFZhbHVlLmZpbHRlcnNcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIFtmaWVsZFZhbHVlLmNvbHVtbk5hbWUgfHwgZmllbGROYW1lXTogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhcbiAgICAgICAgICAgICAgICAgIGZpZWxkVmFsdWUuZmllbGRzLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogZmllbGRWYWx1ZS5jb2x1bW5OYW1lIHx8IGZpZWxkTmFtZSxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRWYWx1ZS5maWVsZHMpLFxuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgICAgICAgICAgW2Ake2ZpZWxkVmFsdWUuY29sdW1uTmFtZX1fd2hlcmVgXToge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnd2hlcmUnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBmaWVsZFZhbHVlLmZpbHRlcnMuZmlsdGVyVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5NYWtlR3JhcGhRTFdoZXJlKGZpZWxkVmFsdWUuZmlsdGVycy5maWx0ZXJzLCBmaWVsZFZhbHVlLmZpZWxkcyksXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkVmFsdWUuY29sdW1uTmFtZVxuICAgICAgfSlcbiAgICAgIC5maWx0ZXIoKGZpZWxkKSA9PiAhIWZpZWxkKVxuICB9XG5cbiAgc3RhdGljIENvbnZlcnRGaWVsZFZhbHVlRnJvbSA9IDxcbiAgICBNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgICBEYXRhVHlwZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlciB8IERhdGFUeXBlIHwgRGF0ZT4sXG4gID4oXG4gICAgZGF0YTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0YVR5cGUgfCBEYXRlLFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD4sXG4gICk6IFBhcnRpYWw8Tm9uRnVuY3Rpb25Qcm9wZXJ0aWVzPE1vZGVsPj4gPT5cbiAgICBPYmplY3Qua2V5cyhkYXRhKS5yZWR1Y2UoKHJlc3VsdCwgY29sdW1uTmFtZSkgPT4ge1xuICAgICAgY29uc3Qge1xuICAgICAgICBhdHRyaWJ1dGVOYW1lLFxuICAgICAgICBmaWVsZHM6IGF0dHJpYnV0ZUZpZWxkcyxcbiAgICAgICAgZnJvbSxcbiAgICAgIH0gPSBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZENvbHVtbk9wdGlvbkZyb21MaXN0KGNvbHVtbk5hbWUsIGZpZWxkcylcblxuICAgICAgaWYgKCEhYXR0cmlidXRlRmllbGRzICYmIEFycmF5LmlzQXJyYXkoYXR0cmlidXRlRmllbGRzKSkge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhW2NvbHVtbk5hbWVdKSlcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgW2F0dHJpYnV0ZU5hbWVdOiBmcm9tXG4gICAgICAgICAgICAgID8gZnJvbShkYXRhW2NvbHVtbk5hbWVdLCBkYXRhKVxuICAgICAgICAgICAgICA6IGRhdGFbY29sdW1uTmFtZV0ubWFwKCh2YWx1ZSkgPT4gR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRGaWVsZFZhbHVlRnJvbSh2YWx1ZSwgYXR0cmlidXRlRmllbGRzKSksXG4gICAgICAgICAgfVxuICAgICAgICBpZiAoaXNPYmplY3QoZGF0YVtjb2x1bW5OYW1lXSkpXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAgIFthdHRyaWJ1dGVOYW1lXTogISFmcm9tXG4gICAgICAgICAgICAgID8gZnJvbShkYXRhW2NvbHVtbk5hbWVdKVxuICAgICAgICAgICAgICA6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oZGF0YVtjb2x1bW5OYW1lXSwgYXR0cmlidXRlRmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghIWZyb20pIHJldHVybiB7IC4uLnJlc3VsdCwgW2F0dHJpYnV0ZU5hbWVdOiBmcm9tKGRhdGFbY29sdW1uTmFtZV0sIGRhdGEpIH1cblxuICAgICAgcmV0dXJuIHsgLi4ucmVzdWx0LCBbYXR0cmlidXRlTmFtZV06IHBhcnNlRGF0ZVRpbWUoZGF0YVtjb2x1bW5OYW1lXSkgfVxuICAgIH0sIHt9KVxuXG4gIHN0YXRpYyBDb252ZXJ0RmllbGRWYWx1ZVRvID0gPFxuICAgIE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICAgIERhdGFUeXBlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyIHwgRGF0YVR5cGUgfCBEYXRlPixcbiAgPihcbiAgICBpbnN0YW5jZTogTW9kZWwsXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgICB1cGRhdGUgPSBmYWxzZSxcbiAgKTogRGF0YVR5cGUgPT4ge1xuICAgIGNvbnN0IGRhdGE6IFBhcnRpYWw8TW9kZWxCYXNlU3RydWN0dXJlPiA9IGluc3RhbmNlLnRvUGxhaW4/LigpIHx8IGluc3RhbmNlXG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKChyZXN1bHQsIGF0dHJpYnV0ZU5hbWUpID0+IHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgY29sdW1uTmFtZSxcbiAgICAgICAgZmllbGRzOiBhdHRyaWJ1dGVGaWVsZHMsXG4gICAgICAgIGZvcmVpZ25LZXlDb2x1bW4sXG4gICAgICAgIHRvLFxuICAgICAgICBiaW5kUGVyc2lzdERhdGEsXG4gICAgICB9ID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TW9kZWw+LCBmaWVsZHMpXG5cbiAgICAgIGlmIChiaW5kUGVyc2lzdERhdGEpIHJldHVybiB7IC4uLnJlc3VsdCwgLi4uYmluZFBlcnNpc3REYXRhKGRhdGFbYXR0cmlidXRlTmFtZV0sIGluc3RhbmNlKSB9XG4gICAgICBpZiAoaXNOaWwoY29sdW1uTmFtZSkpIHJldHVybiByZXN1bHRcbiAgICAgIGlmIChcbiAgICAgICAgISFmb3JlaWduS2V5Q29sdW1uICYmXG4gICAgICAgICFpc0VtcHR5KGZvcmVpZ25LZXlDb2x1bW4pICYmXG4gICAgICAgICFPYmplY3Qua2V5cyhmb3JlaWduS2V5Q29sdW1uKS5maWx0ZXIoKGtleSkgPT4gIWRhdGFbYXR0cmlidXRlTmFtZV0/LltrZXldKS5sZW5ndGhcbiAgICAgIClcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGZvcmVpZ25LZXlDb2x1bW4pLnJlZHVjZShcbiAgICAgICAgICAob2JqZWN0LCBjdXJyZW50KSA9PiAoeyAuLi5vYmplY3QsIFtmb3JlaWduS2V5Q29sdW1uW2N1cnJlbnRdXTogZGF0YVthdHRyaWJ1dGVOYW1lXT8uW2N1cnJlbnRdIH0pLFxuICAgICAgICAgIHsgLi4ucmVzdWx0IH0sXG4gICAgICAgIClcblxuICAgICAgaWYgKHVwZGF0ZSAmJiBpc09iamVjdChkYXRhW2F0dHJpYnV0ZU5hbWVdKSAmJiAhaXNOaWwoYXR0cmlidXRlRmllbGRzKSAmJiAhaXNEYXRlKGRhdGFbYXR0cmlidXRlTmFtZV0pKVxuICAgICAgICByZXR1cm4gcmVzdWx0XG5cbiAgICAgIGlmICghIWNvbHVtbk5hbWUgJiYgQXJyYXkuaXNBcnJheShhdHRyaWJ1dGVGaWVsZHMpICYmIGlzT2JqZWN0KGRhdGFbYXR0cmlidXRlTmFtZV0pKSB7XG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZCA9ICFpc05pbChjb2x1bW5OYW1lKSAmJiB0byA/IHRvKGluc3RhbmNlW2F0dHJpYnV0ZU5hbWVdLCBpbnN0YW5jZSkgOiBkYXRhW2F0dHJpYnV0ZU5hbWVdXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgLi4uKGNvbnZlcnRlZCAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBbY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgICAgIGRhdGE6XG4gICAgICAgICAgICAgICAgICAgIGluc3RhbmNlW2F0dHJpYnV0ZU5hbWVdIGluc3RhbmNlb2YgQmFzZU1vZGVsXG4gICAgICAgICAgICAgICAgICAgICAgPyBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVUbyhkYXRhW2F0dHJpYnV0ZU5hbWVdLCBhdHRyaWJ1dGVGaWVsZHMpXG4gICAgICAgICAgICAgICAgICAgICAgOiBjb252ZXJ0ZWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCEhdG8pIHJldHVybiB7IC4uLnJlc3VsdCwgW2NvbHVtbk5hbWVdOiB0byhpbnN0YW5jZVthdHRyaWJ1dGVOYW1lXSwgaW5zdGFuY2UpIH1cblxuICAgICAgcmV0dXJuIHsgLi4ucmVzdWx0LCBbY29sdW1uTmFtZV06IGRhdGFbYXR0cmlidXRlTmFtZV0gfVxuICAgIH0sIHt9IGFzIERhdGFUeXBlKVxuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export * from './attribute-option.helper';
|
|
2
|
-
export * from './
|
|
3
|
-
export * from './filter-option.helper';
|
|
4
|
-
|
|
1
|
+
export * from './attribute-option.helper';
|
|
2
|
+
export * from './bind-filter-query.helper';
|
|
3
|
+
export * from './filter-option.helper';
|
|
4
|
+
export * from './graphql-field.helper';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLHdCQUF3QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdHRyaWJ1dGUtb3B0aW9uLmhlbHBlcidcbmV4cG9ydCAqIGZyb20gJy4vYmluZC1maWx0ZXItcXVlcnkuaGVscGVyJ1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItb3B0aW9uLmhlbHBlcidcbmV4cG9ydCAqIGZyb20gJy4vZ3JhcGhxbC1maWVsZC5oZWxwZXInXG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * from './with-create-hasura-graphql.mixin';
|
|
2
|
-
export * from './with-delete-hasura-graphql.mixin';
|
|
3
|
-
export * from './with-hasura-graphql.mixin';
|
|
4
|
-
export * from './with-update-hasura-graphql.mixin';
|
|
5
|
-
export * from './with-get-hasura-graphql.mixin';
|
|
6
|
-
export * from './with-find-hasura-graphql.mixin';
|
|
7
|
-
export * from './with-crud-hasura-graphql.mixin';
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './with-create-hasura-graphql.mixin';
|
|
2
|
+
export * from './with-delete-hasura-graphql.mixin';
|
|
3
|
+
export * from './with-hasura-graphql.mixin';
|
|
4
|
+
export * from './with-update-hasura-graphql.mixin';
|
|
5
|
+
export * from './with-get-hasura-graphql.mixin';
|
|
6
|
+
export * from './with-find-hasura-graphql.mixin';
|
|
7
|
+
export * from './with-crud-hasura-graphql.mixin';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQTtBQUNsRCxjQUFjLG9DQUFvQyxDQUFBO0FBQ2xELGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyxvQ0FBb0MsQ0FBQTtBQUNsRCxjQUFjLGlDQUFpQyxDQUFBO0FBQy9DLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxrQ0FBa0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vd2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4nXG5leHBvcnQgKiBmcm9tICcuL3dpdGgtZGVsZXRlLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuZXhwb3J0ICogZnJvbSAnLi93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuZXhwb3J0ICogZnJvbSAnLi93aXRoLXVwZGF0ZS1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmV4cG9ydCAqIGZyb20gJy4vd2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4nXG5leHBvcnQgKiBmcm9tICcuL3dpdGgtZmluZC1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmV4cG9ydCAqIGZyb20gJy4vd2l0aC1jcnVkLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuIl19
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AttributeOptionHelper } from './helpers';
|
|
2
|
+
export const withCreateHasuraGraphQL = (MixinBase) => {
|
|
3
|
+
return class CreateHasuraGraphQLMixin extends MixinBase {
|
|
4
|
+
constructor(...params) {
|
|
5
|
+
const options = params?.[0];
|
|
6
|
+
super(...params);
|
|
7
|
+
this.insertGraphQLOperation = options?.insertGraphQLOperation || `insert_${this.tableName}_one`;
|
|
8
|
+
this.insertGraphQLObjectType = options?.insertGraphQLObjectType || `${this.tableName}_insert_input`;
|
|
9
|
+
}
|
|
10
|
+
async create(data) {
|
|
11
|
+
const newData = await this.save(this.model.toInstance(data));
|
|
12
|
+
return this.model.toInstance(newData);
|
|
13
|
+
}
|
|
14
|
+
async save(data) {
|
|
15
|
+
const primaryKeyColumns = this.model.identifiersFields.map((field) => AttributeOptionHelper.FindByAttribute(field, this.fields).columnName);
|
|
16
|
+
const foreignKeyColumns = this.fields
|
|
17
|
+
.map((field) => {
|
|
18
|
+
const columnOptions = Object.values(field).shift();
|
|
19
|
+
return (AttributeOptionHelper.CheckIsColumnOption(columnOptions) &&
|
|
20
|
+
columnOptions.foreignKeyColumn && [
|
|
21
|
+
...Object.values(columnOptions.foreignKeyColumn),
|
|
22
|
+
{
|
|
23
|
+
[columnOptions.columnName]: Object.keys(columnOptions.foreignKeyColumn).map((foreignKeyField) => AttributeOptionHelper.FindByAttribute(foreignKeyField, columnOptions?.fields)?.columnName ||
|
|
24
|
+
foreignKeyField),
|
|
25
|
+
},
|
|
26
|
+
]);
|
|
27
|
+
})
|
|
28
|
+
.filter(Boolean)
|
|
29
|
+
.reduce((keys, current) => [...keys, ...current], []);
|
|
30
|
+
const result = await this.mutation(this.insertGraphQLOperation, [...primaryKeyColumns, ...foreignKeyColumns], {
|
|
31
|
+
object: { type: this.insertGraphQLObjectType, required: true, value: this.convertDataToHasura(data) },
|
|
32
|
+
});
|
|
33
|
+
return { ...data.toPlain(), ...this.convertDataFromHasura(result[this.insertGraphQLOperation]).toPlain() };
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBT2pELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBSXJDLFNBQTJELEVBSTNELEVBQUU7SUFDRixPQUFPLE1BQU0sd0JBQXlCLFNBQVEsU0FBUztRQUlyRCxZQUFZLEdBQUcsTUFBTTtZQUNuQixNQUFNLE9BQU8sR0FBNEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFcEQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxVQUFVLElBQUksQ0FBQyxTQUFTLE1BQU0sQ0FBQTtZQUMvRixJQUFJLENBQUMsdUJBQXVCLEdBQUcsT0FBTyxFQUFFLHVCQUF1QixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsZUFBZSxDQUFBO1FBQ3JHLENBQUM7UUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQW1DO1lBQzlDLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFXLENBQUMsQ0FBQyxDQUFBO1lBRW5FLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdkMsQ0FBQztRQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBVztZQUNwQixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUN4RCxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxDQUNsRCxDQUFBO1lBQy9CLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE1BQU07aUJBQ2xDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNiLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBRWxELE9BQU8sQ0FDTCxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLENBQUM7b0JBQ3hELGFBQWEsQ0FBQyxnQkFBZ0IsSUFBSTtvQkFDaEMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEQ7d0JBQ0UsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxHQUFHLENBQ3pFLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FDbEIscUJBQXFCLENBQUMsZUFBZSxDQUFDLGVBQXNCLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQyxFQUFFLFVBQVU7NEJBQ2hHLGVBQWUsQ0FDbEI7cUJBQ0Y7aUJBQ0YsQ0FDRixDQUFBO1lBQ0gsQ0FBQyxDQUFDO2lCQUNELE1BQU0sQ0FBQyxPQUFPLENBQUM7aUJBQ2YsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1lBRXZELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FDaEMsSUFBSSxDQUFDLHNCQUFzQixFQUMzQixDQUFDLEdBQUcsaUJBQWlCLEVBQUUsR0FBRyxpQkFBaUIsQ0FBK0IsRUFDMUU7Z0JBQ0UsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUU7YUFDdEcsQ0FDRixDQUFBO1lBRUQsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUE7UUFDNUcsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcmVhdGVSZXBvc2l0b3J5LCBDcmVhdGVSZXBvc2l0b3J5UGFyYW1zLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxSZXBvc2l0b3J5LCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ29uc3RydWN0b3JQYXJhbXMgPSB7XG4gIGluc2VydEdyYXBoUUxPcGVyYXRpb24/OiBzdHJpbmdcbiAgaW5zZXJ0R3JhcGhRTE9iamVjdFR5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhDcmVhdGVIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiAmIEluc3RhbmNlVHlwZTxUTWl4aW5CYXNlPiAmIENyZWF0ZVJlcG9zaXRvcnk8TUJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPENyZWF0ZUNvbnN0cnVjdG9yUGFyYW1zLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIENyZWF0ZUhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIENyZWF0ZVJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICBpbnNlcnRHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcbiAgICBpbnNlcnRHcmFwaFFMT2JqZWN0VHlwZTogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXMpIHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IENyZWF0ZUNvbnN0cnVjdG9yUGFyYW1zID0gcGFyYW1zPy5bMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLmluc2VydEdyYXBoUUxPcGVyYXRpb24gPSBvcHRpb25zPy5pbnNlcnRHcmFwaFFMT3BlcmF0aW9uIHx8IGBpbnNlcnRfJHt0aGlzLnRhYmxlTmFtZX1fb25lYFxuICAgICAgdGhpcy5pbnNlcnRHcmFwaFFMT2JqZWN0VHlwZSA9IG9wdGlvbnM/Lmluc2VydEdyYXBoUUxPYmplY3RUeXBlIHx8IGAke3RoaXMudGFibGVOYW1lfV9pbnNlcnRfaW5wdXRgXG4gICAgfVxuXG4gICAgYXN5bmMgY3JlYXRlKGRhdGE6IENyZWF0ZVJlcG9zaXRvcnlQYXJhbXM8TUJhc2U+KTogUHJvbWlzZTxNQmFzZT4ge1xuICAgICAgY29uc3QgbmV3RGF0YSA9IGF3YWl0IHRoaXMuc2F2ZSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UoZGF0YSBhcyBhbnkpKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKG5ld0RhdGEpXG4gICAgfVxuXG4gICAgYXN5bmMgc2F2ZShkYXRhOiBNQmFzZSk6IFByb21pc2U8UGFydGlhbDxNQmFzZT4+IHtcbiAgICAgIGNvbnN0IHByaW1hcnlLZXlDb2x1bW5zID0gdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5tYXAoXG4gICAgICAgIChmaWVsZCkgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmaWVsZCwgdGhpcy5maWVsZHMpLmNvbHVtbk5hbWUsXG4gICAgICApIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XG4gICAgICBjb25zdCBmb3JlaWduS2V5Q29sdW1ucyA9IHRoaXMuZmllbGRzXG4gICAgICAgIC5tYXAoKGZpZWxkKSA9PiB7XG4gICAgICAgICAgY29uc3QgY29sdW1uT3B0aW9ucyA9IE9iamVjdC52YWx1ZXMoZmllbGQpLnNoaWZ0KClcblxuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuQ2hlY2tJc0NvbHVtbk9wdGlvbihjb2x1bW5PcHRpb25zKSAmJlxuICAgICAgICAgICAgY29sdW1uT3B0aW9ucy5mb3JlaWduS2V5Q29sdW1uICYmIFtcbiAgICAgICAgICAgICAgLi4uT2JqZWN0LnZhbHVlcyhjb2x1bW5PcHRpb25zLmZvcmVpZ25LZXlDb2x1bW4pLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgW2NvbHVtbk9wdGlvbnMuY29sdW1uTmFtZV06IE9iamVjdC5rZXlzKGNvbHVtbk9wdGlvbnMuZm9yZWlnbktleUNvbHVtbikubWFwKFxuICAgICAgICAgICAgICAgICAgKGZvcmVpZ25LZXlGaWVsZCkgPT5cbiAgICAgICAgICAgICAgICAgICAgQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmb3JlaWduS2V5RmllbGQgYXMgYW55LCBjb2x1bW5PcHRpb25zPy5maWVsZHMpPy5jb2x1bW5OYW1lIHx8XG4gICAgICAgICAgICAgICAgICAgIGZvcmVpZ25LZXlGaWVsZCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXVxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAucmVkdWNlKChrZXlzLCBjdXJyZW50KSA9PiBbLi4ua2V5cywgLi4uY3VycmVudF0sIFtdKVxuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLm11dGF0aW9uPE1CYXNlPihcbiAgICAgICAgdGhpcy5pbnNlcnRHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICBbLi4ucHJpbWFyeUtleUNvbHVtbnMsIC4uLmZvcmVpZ25LZXlDb2x1bW5zXSBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICAgICAge1xuICAgICAgICAgIG9iamVjdDogeyB0eXBlOiB0aGlzLmluc2VydEdyYXBoUUxPYmplY3RUeXBlLCByZXF1aXJlZDogdHJ1ZSwgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYShkYXRhKSB9LFxuICAgICAgICB9LFxuICAgICAgKVxuXG4gICAgICByZXR1cm4geyAuLi5kYXRhLnRvUGxhaW4oKSwgLi4udGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocmVzdWx0W3RoaXMuaW5zZXJ0R3JhcGhRTE9wZXJhdGlvbl0pLnRvUGxhaW4oKSB9XG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { withCreateHasuraGraphQL } from './with-create-hasura-graphql.mixin';
|
|
2
|
+
import { withDeleteHasuraGraphQL } from './with-delete-hasura-graphql.mixin';
|
|
3
|
+
import { withGetHasuraGraphQL } from './with-get-hasura-graphql.mixin';
|
|
4
|
+
import { withUpdateHasuraGraphQL, } from './with-update-hasura-graphql.mixin';
|
|
5
|
+
import { withFindHasuraGraphQL } from './with-find-hasura-graphql.mixin';
|
|
6
|
+
export const withCrudHasuraGraphQL = (MixinBase) => {
|
|
7
|
+
return class CrudHasuraGraphQLMixin extends withUpdateHasuraGraphQL(withGetHasuraGraphQL(withFindHasuraGraphQL(withDeleteHasuraGraphQL(withCreateHasuraGraphQL(MixinBase))))) {
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtY3J1ZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQTJCLHVCQUF1QixFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFFckcsT0FBTyxFQUEyQix1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3JHLE9BQU8sRUFBd0Isb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUM1RixPQUFPLEVBR0wsdUJBQXVCLEdBQ3hCLE1BQU0sb0NBQW9DLENBQUE7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFFeEUsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FLbkMsU0FBMkQsRUFXM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSxzQkFDWCxTQUFRLHVCQUF1QixDQUM3QixvQkFBb0IsQ0FDbEIscUJBQXFCLENBQ25CLHVCQUF1QixDQUFDLHVCQUF1QixDQUFDLFNBQWdELENBQUMsQ0FBQyxDQUNuRyxDQUNGLENBQ0Y7S0FDeUMsQ0FBQTtBQUM5QyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIENydWRSZXBvc2l0b3J5IH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL3dpdGgtaGFzdXJhLWdyYXBocWwubWl4aW4nXG5pbXBvcnQgeyBEZWxldGVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aERlbGV0ZUhhc3VyYUdyYXBoUUwgfSBmcm9tICcuL3dpdGgtZGVsZXRlLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgR2V0Q29uc3RydWN0b3JQYXJhbXMsIHdpdGhHZXRIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi93aXRoLWdldC1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmltcG9ydCB7XG4gIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zLFxuICBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGUsXG4gIHdpdGhVcGRhdGVIYXN1cmFHcmFwaFFMLFxufSBmcm9tICcuL3dpdGgtdXBkYXRlLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgd2l0aEZpbmRIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi93aXRoLWZpbmQtaGFzdXJhLWdyYXBocWwubWl4aW4nXG5cbmV4cG9ydCBjb25zdCB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBSZXBvc2l0b3J5ID0gQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8VEJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PFRCYXNlPiAmIFJlcG9zaXRvcnkgJiBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8VEJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFxuICAgIENvbnN0cnVjdG9yUGFyYW1zPFRCYXNlPiAmXG4gICAgICBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcyAmXG4gICAgICBEZWxldGVDb25zdHJ1Y3RvclBhcmFtcyAmXG4gICAgICBHZXRDb25zdHJ1Y3RvclBhcmFtcyAmXG4gICAgICBVcGRhdGVDb25zdHJ1Y3RvclBhcmFtcyxcbiAgICBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT5cbiAgPlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBDcnVkSGFzdXJhR3JhcGhRTE1peGluXG4gICAgZXh0ZW5kcyB3aXRoVXBkYXRlSGFzdXJhR3JhcGhRTChcbiAgICAgIHdpdGhHZXRIYXN1cmFHcmFwaFFMKFxuICAgICAgICB3aXRoRmluZEhhc3VyYUdyYXBoUUwoXG4gICAgICAgICAgd2l0aERlbGV0ZUhhc3VyYUdyYXBoUUwod2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwoTWl4aW5CYXNlIGFzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxUQmFzZT4+KSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgIClcbiAgICBpbXBsZW1lbnRzIENydWRSZXBvc2l0b3J5PFRCYXNlPiB7fSBhcyBhbnlcbn1cbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { isNil } from '../../../utils';
|
|
2
|
+
import { AttributeOptionHelper } from './helpers';
|
|
3
|
+
export const withDeleteHasuraGraphQL = (MixinBase) => {
|
|
4
|
+
return class DeleteHasuraGraphQLMixin extends MixinBase {
|
|
5
|
+
constructor(...params) {
|
|
6
|
+
const options = params?.[0];
|
|
7
|
+
super(...params);
|
|
8
|
+
this.deleteGraphQLOperation = options?.deleteGraphQLOperation || `delete_${this.tableName}_by_pk`;
|
|
9
|
+
}
|
|
10
|
+
async delete(identifiers) {
|
|
11
|
+
const instance = this.model.toInstance(identifiers);
|
|
12
|
+
await this.mutation(this.deleteGraphQLOperation, this.model.identifiersFields.map((field) => AttributeOptionHelper.FindByAttribute(field, this.fields).columnName), this.model.identifiersFields.reduce((ids, identifier) => {
|
|
13
|
+
if (isNil(instance[identifier]))
|
|
14
|
+
return ids;
|
|
15
|
+
const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
|
|
16
|
+
const value = columnOption.to(identifiers[identifier.toString()], instance);
|
|
17
|
+
return {
|
|
18
|
+
...ids,
|
|
19
|
+
[columnOption.columnName]: {
|
|
20
|
+
type: this.getAttributeGraphQLTypeOf(columnOption.type || value),
|
|
21
|
+
value,
|
|
22
|
+
required: true,
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
}, {}));
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1kZWxldGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQTtBQUV6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFNakQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FJckMsU0FBMkQsRUFJM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSx3QkFBeUIsU0FBUSxTQUFTO1FBR3JELFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUE0QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVwRCxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQTtZQUVoQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsT0FBTyxFQUFFLHNCQUFzQixJQUFJLFVBQVUsSUFBSSxDQUFDLFNBQVMsUUFBUSxDQUFBO1FBQ25HLENBQUM7UUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQTBDO1lBQ3JELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQWtCLENBQUMsQ0FBQTtZQUUxRCxNQUFNLElBQUksQ0FBQyxRQUFRLENBQ2pCLElBQUksQ0FBQyxzQkFBc0IsRUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQzlCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFVLENBQ2xELEVBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRTNDLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQTtnQkFFM0UsT0FBTztvQkFDTCxHQUFHLEdBQUc7b0JBQ04sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUU7d0JBQ3pCLElBQUksRUFBRSxJQUFJLENBQUMseUJBQXlCLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUM7d0JBQ2hFLEtBQUs7d0JBQ0wsUUFBUSxFQUFFLElBQUk7cUJBQ2Y7aUJBQ0YsQ0FBQTtZQUNILENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDUCxDQUFBO1FBQ0gsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWxldGVSZXBvc2l0b3J5LCBEZWxldGVSZXBvc2l0b3J5UGFyYW1zLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBHcmFwaFFMUmVwb3NpdG9yeSwgSGFzdXJhR3JhcGhRTEZpZWxkcyB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHsgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmV4cG9ydCB0eXBlIERlbGV0ZUNvbnN0cnVjdG9yUGFyYW1zID0ge1xuICBkZWxldGVHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoRGVsZXRlSGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4gJiBEZWxldGVSZXBvc2l0b3J5PE1CYXNlPiAmIEluc3RhbmNlVHlwZTxUTWl4aW5CYXNlPixcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczxEZWxldGVDb25zdHJ1Y3RvclBhcmFtcywgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+PlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBEZWxldGVIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBEZWxldGVSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgZGVsZXRlR3JhcGhRTE9wZXJhdGlvbjogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBEZWxldGVDb25zdHJ1Y3RvclBhcmFtcyA9IHBhcmFtcz8uWzBdXG5cbiAgICAgIHN1cGVyKC4uLnBhcmFtcylcblxuICAgICAgdGhpcy5kZWxldGVHcmFwaFFMT3BlcmF0aW9uID0gb3B0aW9ucz8uZGVsZXRlR3JhcGhRTE9wZXJhdGlvbiB8fCBgZGVsZXRlXyR7dGhpcy50YWJsZU5hbWV9X2J5X3BrYFxuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZShpZGVudGlmaWVyczogRGVsZXRlUmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5tb2RlbC50b0luc3RhbmNlKGlkZW50aWZpZXJzIGFzIGFueSlcblxuICAgICAgYXdhaXQgdGhpcy5tdXRhdGlvbihcbiAgICAgICAgdGhpcy5kZWxldGVHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICB0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzLm1hcChcbiAgICAgICAgICAoZmllbGQpID0+IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoZmllbGQsIHRoaXMuZmllbGRzKS5jb2x1bW5OYW1lLFxuICAgICAgICApIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgICB0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzLnJlZHVjZSgoaWRzLCBpZGVudGlmaWVyKSA9PiB7XG4gICAgICAgICAgaWYgKGlzTmlsKGluc3RhbmNlW2lkZW50aWZpZXJdKSkgcmV0dXJuIGlkc1xuXG4gICAgICAgICAgY29uc3QgY29sdW1uT3B0aW9uID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShpZGVudGlmaWVyLCB0aGlzLmZpZWxkcylcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGNvbHVtbk9wdGlvbi50byhpZGVudGlmaWVyc1tpZGVudGlmaWVyLnRvU3RyaW5nKCldLCBpbnN0YW5jZSlcblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5pZHMsXG4gICAgICAgICAgICBbY29sdW1uT3B0aW9uLmNvbHVtbk5hbWVdOiB7XG4gICAgICAgICAgICAgIHR5cGU6IHRoaXMuZ2V0QXR0cmlidXRlR3JhcGhRTFR5cGVPZihjb2x1bW5PcHRpb24udHlwZSB8fCB2YWx1ZSksXG4gICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICB9LCB7fSksXG4gICAgICApXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { isNil } from '../../../utils';
|
|
2
|
+
import { BindFilterQueryHelper } from './helpers';
|
|
3
|
+
export const withFindHasuraGraphQL = (MixinBase) => {
|
|
4
|
+
return class FindHasuraGraphQLMixin extends MixinBase {
|
|
5
|
+
async find(options) {
|
|
6
|
+
const { filters, limits, orderBy } = options || {};
|
|
7
|
+
const variablesCount = {
|
|
8
|
+
...(isNil(orderBy) ? {} : { order_by: { type: `${this.tableName}_order_by!`, list: true, value: orderBy } }),
|
|
9
|
+
...(isNil(filters)
|
|
10
|
+
? {}
|
|
11
|
+
: {
|
|
12
|
+
where: {
|
|
13
|
+
value: BindFilterQueryHelper.MakeGraphQLWhere(filters, this.fields),
|
|
14
|
+
type: `${this.tableName}_bool_exp`,
|
|
15
|
+
required: true,
|
|
16
|
+
},
|
|
17
|
+
}),
|
|
18
|
+
};
|
|
19
|
+
const variables = {
|
|
20
|
+
...(isNil(limits) ? {} : limits),
|
|
21
|
+
...variablesCount,
|
|
22
|
+
};
|
|
23
|
+
const result = await this.query([
|
|
24
|
+
{
|
|
25
|
+
operation: this.tableName,
|
|
26
|
+
fields: options.fields
|
|
27
|
+
? options.fields
|
|
28
|
+
.map((fieldName) => this.fields.find((fieldOption) => fieldOption === fieldName) ??
|
|
29
|
+
this.fields.find((fieldOption) => Object.keys(fieldOption).shift() === fieldName))
|
|
30
|
+
.filter(Boolean)
|
|
31
|
+
: this.fields,
|
|
32
|
+
variables,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
operation: `${this.tableName}_aggregate`,
|
|
36
|
+
fields: [{ aggregate: ['count'] }],
|
|
37
|
+
variables: variablesCount,
|
|
38
|
+
},
|
|
39
|
+
]);
|
|
40
|
+
const data = result[this.tableName].map((row) => this.convertDataFromHasura(row));
|
|
41
|
+
const count = result[`${this.tableName}_aggregate`].aggregate.count;
|
|
42
|
+
return { count, data };
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtZmluZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxPQUFPLEVBQUUsS0FBSyxFQUFhLE1BQU0sZ0JBQWdCLENBQUE7QUFHakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRWpELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLENBSW5DLFNBQTJELEVBQzNELEVBQUU7SUFDRixPQUFPLE1BQU0sc0JBQXVCLFNBQVEsU0FBUztRQUNuRCxLQUFLLENBQUMsSUFBSSxDQUFDLE9BS1Y7WUFDQyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFBO1lBQ2xELE1BQU0sY0FBYyxHQUFHO2dCQUNyQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQzVHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO29CQUNoQixDQUFDLENBQUMsRUFBRTtvQkFDSixDQUFDLENBQUM7d0JBQ0UsS0FBSyxFQUFFOzRCQUNMLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQzs0QkFDbkUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsV0FBVzs0QkFDbEMsUUFBUSxFQUFFLElBQUk7eUJBQ2Y7cUJBQ0YsQ0FBQzthQUNQLENBQUE7WUFDRCxNQUFNLFNBQVMsR0FBRztnQkFDaEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7Z0JBQ2hDLEdBQUcsY0FBYzthQUNsQixDQUFBO1lBQ0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUM5QjtvQkFDRSxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTt3QkFDcEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNOzZCQUNYLEdBQUcsQ0FDRixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQUM7NEJBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLFNBQVMsQ0FBQyxDQUNwRjs2QkFDQSxNQUFNLENBQUMsT0FBTyxDQUFDO3dCQUNwQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU07b0JBQ2YsU0FBUztpQkFDVjtnQkFDRDtvQkFDRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxZQUFZO29CQUN4QyxNQUFNLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7b0JBQ2xDLFNBQVMsRUFBRSxjQUFjO2lCQUMxQjthQUNGLENBQUMsQ0FBQTtZQUNGLE1BQU0sSUFBSSxHQUFZLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtZQUMxRixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxZQUFZLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFBO1lBRW5FLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUE7UUFDeEIsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGaW5kUmVwb3NpdG9yeSxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnMsXG4gIFJlcG9zaXRvcnlGaW5kUmVzdWx0LFxuICBSZXBvc2l0b3J5TGltaXRPcHRpb25zLFxuICBSZXBvc2l0b3J5T3JkZXJCeSxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXNOaWwsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQmluZEZpbHRlclF1ZXJ5SGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aEZpbmRIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pID0+IHtcbiAgcmV0dXJuIGNsYXNzIEZpbmRIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBGaW5kUmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIGFzeW5jIGZpbmQob3B0aW9ucz86IHtcbiAgICAgIGZpbHRlcnM/OiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPE1CYXNlPlxuICAgICAgZmllbGRzPzogTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPE1CYXNlPltdXG4gICAgICBsaW1pdHM/OiBSZXBvc2l0b3J5TGltaXRPcHRpb25zPE1CYXNlPlxuICAgICAgb3JkZXJCeT86IFJlcG9zaXRvcnlPcmRlckJ5PE1CYXNlPlxuICAgIH0pOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PE1CYXNlPj4ge1xuICAgICAgY29uc3QgeyBmaWx0ZXJzLCBsaW1pdHMsIG9yZGVyQnkgfSA9IG9wdGlvbnMgfHwge31cbiAgICAgIGNvbnN0IHZhcmlhYmxlc0NvdW50ID0ge1xuICAgICAgICAuLi4oaXNOaWwob3JkZXJCeSkgPyB7fSA6IHsgb3JkZXJfYnk6IHsgdHlwZTogYCR7dGhpcy50YWJsZU5hbWV9X29yZGVyX2J5IWAsIGxpc3Q6IHRydWUsIHZhbHVlOiBvcmRlckJ5IH0gfSksXG4gICAgICAgIC4uLihpc05pbChmaWx0ZXJzKVxuICAgICAgICAgID8ge31cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgd2hlcmU6IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogQmluZEZpbHRlclF1ZXJ5SGVscGVyLk1ha2VHcmFwaFFMV2hlcmUoZmlsdGVycywgdGhpcy5maWVsZHMpLFxuICAgICAgICAgICAgICAgIHR5cGU6IGAke3RoaXMudGFibGVOYW1lfV9ib29sX2V4cGAsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgIH1cbiAgICAgIGNvbnN0IHZhcmlhYmxlcyA9IHtcbiAgICAgICAgLi4uKGlzTmlsKGxpbWl0cykgPyB7fSA6IGxpbWl0cyksXG4gICAgICAgIC4uLnZhcmlhYmxlc0NvdW50LFxuICAgICAgfVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5xdWVyeShbXG4gICAgICAgIHtcbiAgICAgICAgICBvcGVyYXRpb246IHRoaXMudGFibGVOYW1lLFxuICAgICAgICAgIGZpZWxkczogb3B0aW9ucy5maWVsZHNcbiAgICAgICAgICAgID8gb3B0aW9ucy5maWVsZHNcbiAgICAgICAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgICAgICAgKGZpZWxkTmFtZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZHMuZmluZCgoZmllbGRPcHRpb24pID0+IGZpZWxkT3B0aW9uID09PSBmaWVsZE5hbWUpID8/XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGRzLmZpbmQoKGZpZWxkT3B0aW9uKSA9PiBPYmplY3Qua2V5cyhmaWVsZE9wdGlvbikuc2hpZnQoKSA9PT0gZmllbGROYW1lKSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAgICAgOiB0aGlzLmZpZWxkcyxcbiAgICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvcGVyYXRpb246IGAke3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgLFxuICAgICAgICAgIGZpZWxkczogW3sgYWdncmVnYXRlOiBbJ2NvdW50J10gfV0sXG4gICAgICAgICAgdmFyaWFibGVzOiB2YXJpYWJsZXNDb3VudCxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgICBjb25zdCBkYXRhOiBNQmFzZVtdID0gcmVzdWx0W3RoaXMudGFibGVOYW1lXS5tYXAoKHJvdykgPT4gdGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocm93KSlcbiAgICAgIGNvbnN0IGNvdW50ID0gcmVzdWx0W2Ake3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgXS5hZ2dyZWdhdGUuY291bnRcblxuICAgICAgcmV0dXJuIHsgY291bnQsIGRhdGEgfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { NotFoundError } from '../../../errors';
|
|
2
|
+
import { isNil } from '../../../utils';
|
|
3
|
+
import { AttributeOptionHelper } from './helpers';
|
|
4
|
+
export const withGetHasuraGraphQL = (MixinBase) => {
|
|
5
|
+
return class GetHasuraGraphQLMixin extends MixinBase {
|
|
6
|
+
constructor(...params) {
|
|
7
|
+
const options = params?.[0];
|
|
8
|
+
super(...params);
|
|
9
|
+
this.getGraphQLOperation = options?.getGraphQLOperation || `${this.tableName}_by_pk`;
|
|
10
|
+
}
|
|
11
|
+
async get(identifiers) {
|
|
12
|
+
const instance = this.model.toInstance(identifiers);
|
|
13
|
+
const result = await this.query(this.getGraphQLOperation, this.fields, this.model.identifiersFields.reduce((ids, identifier) => {
|
|
14
|
+
if (isNil(instance[identifier]))
|
|
15
|
+
return ids;
|
|
16
|
+
const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
|
|
17
|
+
const value = columnOption?.to?.(identifiers[identifier.toString()], instance) || identifiers[identifier.toString()];
|
|
18
|
+
return {
|
|
19
|
+
...ids,
|
|
20
|
+
[columnOption.columnName]: {
|
|
21
|
+
type: this.getAttributeGraphQLTypeOf(columnOption.type || value),
|
|
22
|
+
value,
|
|
23
|
+
required: true,
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
}, {}));
|
|
27
|
+
const data = result[this.getGraphQLOperation];
|
|
28
|
+
if (isNil(data))
|
|
29
|
+
throw new NotFoundError(`${instance.constructor.name} not found`);
|
|
30
|
+
return this.convertDataFromHasura(result[this.getGraphQLOperation]);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQTtBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFNakQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FJbEMsU0FBMkQsRUFDM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSxxQkFBc0IsU0FBUSxTQUFTO1FBR2xELFlBQVksR0FBRyxNQUFNO1lBQ25CLE1BQU0sT0FBTyxHQUF5QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVqRCxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQTtZQUVoQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsUUFBUSxDQUFBO1FBQ3RGLENBQUM7UUFFRCxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQXVDO1lBQy9DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ25ELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FDN0IsSUFBSSxDQUFDLG1CQUFtQixFQUN4QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRTNDLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FDVCxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtnQkFFeEcsT0FBTztvQkFDTCxHQUFHLEdBQUc7b0JBQ04sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUU7d0JBQ3pCLElBQUksRUFBRSxJQUFJLENBQUMseUJBQXlCLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUM7d0JBQ2hFLEtBQUs7d0JBQ0wsUUFBUSxFQUFFLElBQUk7cUJBQ2Y7aUJBQ0YsQ0FBQTtZQUNILENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDUCxDQUFBO1lBQ0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1lBRTdDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQztnQkFBRSxNQUFNLElBQUksYUFBYSxDQUFDLEdBQUcsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFBO1lBRWxGLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFBO1FBQ3JFLENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0UmVwb3NpdG9yeSwgR2V0UmVwb3NpdG9yeVBhcmFtcywgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTm90Rm91bmRFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IGlzTmlsLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IHR5cGUgR2V0Q29uc3RydWN0b3JQYXJhbXMgPSB7XG4gIGdldEdyYXBoUUxPcGVyYXRpb24/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhHZXRIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pID0+IHtcbiAgcmV0dXJuIGNsYXNzIEdldEhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEdldFJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICBnZXRHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcblxuICAgIGNvbnN0cnVjdG9yKC4uLnBhcmFtcykge1xuICAgICAgY29uc3Qgb3B0aW9uczogR2V0Q29uc3RydWN0b3JQYXJhbXMgPSBwYXJhbXM/LlswXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMuZ2V0R3JhcGhRTE9wZXJhdGlvbiA9IG9wdGlvbnM/LmdldEdyYXBoUUxPcGVyYXRpb24gfHwgYCR7dGhpcy50YWJsZU5hbWV9X2J5X3BrYFxuICAgIH1cblxuICAgIGFzeW5jIGdldChpZGVudGlmaWVyczogR2V0UmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPE1CYXNlPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShpZGVudGlmaWVycylcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucXVlcnkoXG4gICAgICAgIHRoaXMuZ2V0R3JhcGhRTE9wZXJhdGlvbixcbiAgICAgICAgdGhpcy5maWVsZHMsXG4gICAgICAgIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMucmVkdWNlKChpZHMsIGlkZW50aWZpZXIpID0+IHtcbiAgICAgICAgICBpZiAoaXNOaWwoaW5zdGFuY2VbaWRlbnRpZmllcl0pKSByZXR1cm4gaWRzXG5cbiAgICAgICAgICBjb25zdCBjb2x1bW5PcHRpb24gPSBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKGlkZW50aWZpZXIsIHRoaXMuZmllbGRzKVxuICAgICAgICAgIGNvbnN0IHZhbHVlID1cbiAgICAgICAgICAgIGNvbHVtbk9wdGlvbj8udG8/LihpZGVudGlmaWVyc1tpZGVudGlmaWVyLnRvU3RyaW5nKCldLCBpbnN0YW5jZSkgfHwgaWRlbnRpZmllcnNbaWRlbnRpZmllci50b1N0cmluZygpXVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICAgIFtjb2x1bW5PcHRpb24uY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgdHlwZTogdGhpcy5nZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mKGNvbHVtbk9wdGlvbi50eXBlIHx8IHZhbHVlKSxcbiAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH0sIHt9KSxcbiAgICAgIClcbiAgICAgIGNvbnN0IGRhdGEgPSByZXN1bHRbdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uXVxuXG4gICAgICBpZiAoaXNOaWwoZGF0YSkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGAke2luc3RhbmNlLmNvbnN0cnVjdG9yLm5hbWV9IG5vdCBmb3VuZGApXG5cbiAgICAgIHJldHVybiB0aGlzLmNvbnZlcnREYXRhRnJvbUhhc3VyYShyZXN1bHRbdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uXSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { mutation, query } from 'gql-query-builder';
|
|
2
|
+
import fetch from 'node-fetch';
|
|
3
|
+
import { isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
|
|
4
|
+
import { GraphQLFieldHelper } from './helpers';
|
|
5
|
+
export const withHasuraGraphQL = (MixinBase) => {
|
|
6
|
+
return class HasuraGraphQLMixin extends MixinBase {
|
|
7
|
+
constructor(...params) {
|
|
8
|
+
const options = params[0];
|
|
9
|
+
super(...params);
|
|
10
|
+
this.tableName = options.tableName;
|
|
11
|
+
this.endpoint = options.endpoint;
|
|
12
|
+
this.authOptions = options.authOptions;
|
|
13
|
+
this.model = options.model;
|
|
14
|
+
this.fields = options.fields || this.model.identifiersFields;
|
|
15
|
+
}
|
|
16
|
+
get headers() {
|
|
17
|
+
return {
|
|
18
|
+
'Content-Type': 'application/json',
|
|
19
|
+
...(isNil(this.authOptions.authToken) ? {} : { Authorization: this.authOptions.authToken }),
|
|
20
|
+
...(isNil(this.authOptions.adminSecret) ? {} : { 'X-Hasura-Admin-Secret': this.authOptions.adminSecret }),
|
|
21
|
+
...(isNil(this.authOptions.authRole)
|
|
22
|
+
? {}
|
|
23
|
+
: { 'X-Hasura-Role': this.authOptions.authRole.role, 'X-Hasura-User-Id': this.authOptions.authRole.userId }),
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
async mutation(operation, fields, variables) {
|
|
27
|
+
const resultQuery = mutation({
|
|
28
|
+
operation,
|
|
29
|
+
variables,
|
|
30
|
+
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fields),
|
|
31
|
+
});
|
|
32
|
+
return this.fetch(resultQuery);
|
|
33
|
+
}
|
|
34
|
+
async query(operation, fields, variables) {
|
|
35
|
+
const resultQuery = GraphQLFieldHelper.CheckIsGraphQLParams(operation)
|
|
36
|
+
? query(operation.map((option) => ({
|
|
37
|
+
operation: option.operation,
|
|
38
|
+
variables: option.variables,
|
|
39
|
+
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(option.fields),
|
|
40
|
+
})))
|
|
41
|
+
: query({
|
|
42
|
+
operation,
|
|
43
|
+
variables,
|
|
44
|
+
fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fields),
|
|
45
|
+
});
|
|
46
|
+
return this.fetch(resultQuery);
|
|
47
|
+
}
|
|
48
|
+
async fetch(params) {
|
|
49
|
+
const headers = this.headers;
|
|
50
|
+
const response = await fetch(`${this.endpoint}`, {
|
|
51
|
+
method: 'POST',
|
|
52
|
+
body: JSON.stringify(params),
|
|
53
|
+
headers,
|
|
54
|
+
});
|
|
55
|
+
const result = await response.json();
|
|
56
|
+
if (!isNil(result.errors))
|
|
57
|
+
throw new Error(JSON.stringify(result.errors));
|
|
58
|
+
return result.data;
|
|
59
|
+
}
|
|
60
|
+
getAttributeGraphQLTypeOf(value) {
|
|
61
|
+
if (isUUID(value))
|
|
62
|
+
return 'uuid';
|
|
63
|
+
if (isString(value))
|
|
64
|
+
return 'String';
|
|
65
|
+
if (isBoolean(value))
|
|
66
|
+
return 'Boolean';
|
|
67
|
+
if (value instanceof Date)
|
|
68
|
+
return 'timestamptz';
|
|
69
|
+
if (isInteger(value))
|
|
70
|
+
return 'Int';
|
|
71
|
+
if (isNumber(value))
|
|
72
|
+
return 'numeric';
|
|
73
|
+
throw new Error('Type not implemented yet');
|
|
74
|
+
}
|
|
75
|
+
checkIfIsDateTimeAndParse(value) {
|
|
76
|
+
if (!/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/.test(value))
|
|
77
|
+
return value;
|
|
78
|
+
const date = parseISO(value);
|
|
79
|
+
if (isNaN(date.getTime()))
|
|
80
|
+
return value;
|
|
81
|
+
return date;
|
|
82
|
+
}
|
|
83
|
+
convertDataFromHasura(data) {
|
|
84
|
+
const plain = GraphQLFieldHelper.ConvertFieldValueFrom(data, this.fields);
|
|
85
|
+
return this.model.toInstance(plain);
|
|
86
|
+
}
|
|
87
|
+
convertDataToHasura(instance, update = false) {
|
|
88
|
+
return GraphQLFieldHelper.ConvertFieldValueTo(instance, this.fields, update);
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDbkQsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBRzlCLE9BQU8sRUFDTCxTQUFTLEVBQ1QsU0FBUyxFQUNULEtBQUssRUFDTCxLQUFLLEVBQ0wsUUFBUSxFQUNSLFFBQVEsRUFDUixNQUFNLEVBR04sUUFBUSxHQUNULE1BQU0sZ0JBQWdCLENBQUE7QUFVdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBVTlDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLFNBQVksRUFDcUcsRUFBRTtJQUNuSCxPQUFPLE1BQU0sa0JBQW1CLFNBQVEsU0FBUztRQWtCL0MsWUFBWSxHQUFHLE1BQU07WUFDbkIsTUFBTSxPQUFPLEdBQTZCLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVuRCxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQTtZQUVoQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUE7WUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFBO1lBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQTtZQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUE7WUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWdELENBQUE7UUFDOUYs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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG11dGF0aW9uLCBxdWVyeSB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyJ1xuaW1wb3J0IGZldGNoIGZyb20gJ25vZGUtZmV0Y2gnXG5cbmltcG9ydCB7IEJhc2VNb2RlbEJ1aWxkZXIsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7XG4gIGlzQm9vbGVhbixcbiAgaXNJbnRlZ2VyLFxuICBpc05hTixcbiAgaXNOaWwsXG4gIGlzTnVtYmVyLFxuICBpc1N0cmluZyxcbiAgaXNVVUlELFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLFxuICBNaXhpbkN0b3IsXG4gIHBhcnNlSVNPLFxufSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7XG4gIEdyYXBoUUxQYXJhbXMsXG4gIEdyYXBoUUxSZXBvc2l0b3J5LFxuICBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMsXG4gIEhhc3VyYUdyYXBoUUxGaWVsZHMsXG4gIEhhc3VyYUdyYXBoUUxIZWFkZXJzLFxuICBWYXJpYWJsZU9wdGlvbnMsXG59IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBHcmFwaFFMRmllbGRIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmV4cG9ydCB0eXBlIENvbnN0cnVjdG9yUGFyYW1zPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPiA9IHtcbiAgdGFibGVOYW1lOiBzdHJpbmdcbiAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8TW9kZWw+XG4gIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5cbiAgZW5kcG9pbnQ6IHN0cmluZ1xuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoSGFzdXJhR3JhcGhRTCA9IDxNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSwgVCBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3Rvcj4oXG4gIE1peGluQmFzZTogVCxcbik6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4sIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8Q29uc3RydWN0b3JQYXJhbXM8TUJhc2U+LCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VD4+PiA9PiB7XG4gIHJldHVybiBjbGFzcyBIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIHRhYmxlTmFtZTogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcbiAgICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNQmFzZT5cbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XG5cbiAgICBnZXQgaGVhZGVycygpOiBIYXN1cmFHcmFwaFFMSGVhZGVycyB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAuLi4oaXNOaWwodGhpcy5hdXRoT3B0aW9ucy5hdXRoVG9rZW4pID8ge30gOiB7IEF1dGhvcml6YXRpb246IHRoaXMuYXV0aE9wdGlvbnMuYXV0aFRva2VuIH0pLFxuICAgICAgICAuLi4oaXNOaWwodGhpcy5hdXRoT3B0aW9ucy5hZG1pblNlY3JldCkgPyB7fSA6IHsgJ1gtSGFzdXJhLUFkbWluLVNlY3JldCc6IHRoaXMuYXV0aE9wdGlvbnMuYWRtaW5TZWNyZXQgfSksXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zLmF1dGhSb2xlKVxuICAgICAgICAgID8ge31cbiAgICAgICAgICA6IHsgJ1gtSGFzdXJhLVJvbGUnOiB0aGlzLmF1dGhPcHRpb25zLmF1dGhSb2xlLnJvbGUsICdYLUhhc3VyYS1Vc2VyLUlkJzogdGhpcy5hdXRoT3B0aW9ucy5hdXRoUm9sZS51c2VySWQgfSksXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBDb25zdHJ1Y3RvclBhcmFtczxNQmFzZT4gPSBwYXJhbXNbMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLnRhYmxlTmFtZSA9IG9wdGlvbnMudGFibGVOYW1lXG4gICAgICB0aGlzLmVuZHBvaW50ID0gb3B0aW9ucy5lbmRwb2ludFxuICAgICAgdGhpcy5hdXRoT3B0aW9ucyA9IG9wdGlvbnMuYXV0aE9wdGlvbnNcbiAgICAgIHRoaXMubW9kZWwgPSBvcHRpb25zLm1vZGVsXG4gICAgICB0aGlzLmZpZWxkcyA9IG9wdGlvbnMuZmllbGRzIHx8ICh0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KVxuICAgIH1cblxuICAgIGFzeW5jIG11dGF0aW9uPFJldHVybkZpZWxkcyA9IGFueT4oXG4gICAgICBvcGVyYXRpb246IHN0cmluZyxcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCByZXN1bHRRdWVyeSA9IG11dGF0aW9uKHtcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMpLFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG4gICAgfVxuXG4gICAgYXN5bmMgcXVlcnk8UmV0dXJuRmllbGRzID0gYW55PihcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCByZXN1bHRRdWVyeSA9IEdyYXBoUUxGaWVsZEhlbHBlci5DaGVja0lzR3JhcGhRTFBhcmFtcyhvcGVyYXRpb24pXG4gICAgICAgID8gcXVlcnkoXG4gICAgICAgICAgICBvcGVyYXRpb24ubWFwKChvcHRpb24pID0+ICh7XG4gICAgICAgICAgICAgIG9wZXJhdGlvbjogb3B0aW9uLm9wZXJhdGlvbixcbiAgICAgICAgICAgICAgdmFyaWFibGVzOiBvcHRpb24udmFyaWFibGVzLFxuICAgICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMob3B0aW9uLmZpZWxkcyksXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgKVxuICAgICAgICA6IHF1ZXJ5KHtcbiAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgIHZhcmlhYmxlcyxcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMpLFxuICAgICAgICAgIH0pXG5cbiAgICAgIHJldHVybiB0aGlzLmZldGNoKHJlc3VsdFF1ZXJ5KVxuICAgIH1cblxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xuICAgICAgY29uc3QgaGVhZGVycyA9IHRoaXMuaGVhZGVyc1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChgJHt0aGlzLmVuZHBvaW50fWAsIHtcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHBhcmFtcyksXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9KVxuICAgICAgY29uc3QgcmVzdWx0OiBhbnkgPSBhd2FpdCByZXNwb25zZS5qc29uKClcblxuICAgICAgaWYgKCFpc05pbChyZXN1bHQuZXJyb3JzKSkgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHJlc3VsdC5lcnJvcnMpKVxuXG4gICAgICByZXR1cm4gcmVzdWx0LmRhdGFcbiAgICB9XG5cbiAgICBnZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mPEZpZWxkVHlwZT4odmFsdWU6IEZpZWxkVHlwZSk6IHN0cmluZyB7XG4gICAgICBpZiAoaXNVVUlEKHZhbHVlIGFzIGFueSkpIHJldHVybiAndXVpZCdcbiAgICAgIGlmIChpc1N0cmluZyh2YWx1ZSkpIHJldHVybiAnU3RyaW5nJ1xuICAgICAgaWYgKGlzQm9vbGVhbih2YWx1ZSkpIHJldHVybiAnQm9vbGVhbidcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHJldHVybiAndGltZXN0YW1wdHonXG4gICAgICBpZiAoaXNJbnRlZ2VyKHZhbHVlKSkgcmV0dXJuICdJbnQnXG4gICAgICBpZiAoaXNOdW1iZXIodmFsdWUpKSByZXR1cm4gJ251bWVyaWMnXG5cbiAgICAgIHRocm93IG5ldyBFcnJvcignVHlwZSBub3QgaW1wbGVtZW50ZWQgeWV0JylcbiAgICB9XG5cbiAgICBjaGVja0lmSXNEYXRlVGltZUFuZFBhcnNlKHZhbHVlOiBzdHJpbmcpOiBEYXRlIHwgc3RyaW5nIHtcbiAgICAgIGlmICghL15cXGR7NH0tKDBbMS05XXwxWzAtMl0pLSgwWzEtOV18WzEyXVswLTldfDNbMDFdKSQvLnRlc3QodmFsdWUpKSByZXR1cm4gdmFsdWVcblxuICAgICAgY29uc3QgZGF0ZSA9IHBhcnNlSVNPKHZhbHVlKVxuXG4gICAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSByZXR1cm4gdmFsdWVcblxuICAgICAgcmV0dXJuIGRhdGVcbiAgICB9XG5cbiAgICBjb252ZXJ0RGF0YUZyb21IYXN1cmEoZGF0YTogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPik6IE1CYXNlIHtcbiAgICAgIGNvbnN0IHBsYWluID0gR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRGaWVsZFZhbHVlRnJvbShkYXRhLCB0aGlzLmZpZWxkcylcblxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbilcbiAgICB9XG5cbiAgICBjb252ZXJ0RGF0YVRvSGFzdXJhKGluc3RhbmNlOiBNQmFzZSwgdXBkYXRlID0gZmFsc2UpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+IHtcbiAgICAgIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVUbyhpbnN0YW5jZSwgdGhpcy5maWVsZHMsIHVwZGF0ZSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { BaseModel, UpdateOptionActions, } from '../../../domain';
|
|
2
|
+
import { isNil } from '../../../utils';
|
|
3
|
+
import { AttributeOptionHelper } from './helpers';
|
|
4
|
+
export const withUpdateHasuraGraphQL = (MixinBase) => {
|
|
5
|
+
const getValueByAction = (options) => {
|
|
6
|
+
if (options instanceof BaseModel)
|
|
7
|
+
return options.toPlain();
|
|
8
|
+
if (isNil(options?.action))
|
|
9
|
+
return options;
|
|
10
|
+
if ([UpdateOptionActions.REMOVE_FIELD.toString(), UpdateOptionActions.NULL.toString()].includes(options.action))
|
|
11
|
+
return null;
|
|
12
|
+
return options.value;
|
|
13
|
+
};
|
|
14
|
+
return class UpdateHasuraGraphQLMixin extends MixinBase {
|
|
15
|
+
constructor(...params) {
|
|
16
|
+
const options = params?.[0];
|
|
17
|
+
super(...params);
|
|
18
|
+
this.updateGraphQLOperation = options?.updateGraphQLOperation || `update_${this.tableName}_by_pk`;
|
|
19
|
+
this.updateGraphQLObjectType = options?.updateGraphQLObjectType || `${this.tableName}_set_input`;
|
|
20
|
+
this.updateGraphQLPKType = options?.updateGraphQLPKType || `${this.tableName}_pk_columns_input`;
|
|
21
|
+
}
|
|
22
|
+
async update(data) {
|
|
23
|
+
const plainData = this.paramsToPlain(data);
|
|
24
|
+
await this.mutation(this.updateGraphQLOperation, this.model.identifiersFields.map((field) => AttributeOptionHelper.FindByAttribute(field, this.fields).columnName), {
|
|
25
|
+
_set: {
|
|
26
|
+
type: this.updateGraphQLObjectType,
|
|
27
|
+
value: this.convertDataToHasura(this.model.toInstance(plainData), true),
|
|
28
|
+
required: true,
|
|
29
|
+
},
|
|
30
|
+
pk_columns: { type: this.updateGraphQLPKType, value: this.getUpdateModelKeys(plainData), required: true },
|
|
31
|
+
});
|
|
32
|
+
return this.model.toInstance(plainData);
|
|
33
|
+
}
|
|
34
|
+
paramsToPlain(params) {
|
|
35
|
+
const model = this.model;
|
|
36
|
+
if (model.isModel(params))
|
|
37
|
+
return params.toPlain();
|
|
38
|
+
return Object.keys(params).reduce((data, currentKey) => ({
|
|
39
|
+
...data,
|
|
40
|
+
...(params[currentKey] !== undefined && { [currentKey]: getValueByAction(params[currentKey]) }),
|
|
41
|
+
}), {});
|
|
42
|
+
}
|
|
43
|
+
getUpdateModelKeys(data) {
|
|
44
|
+
const instance = this.model.toInstance(data);
|
|
45
|
+
return this.model.identifiersFields.reduce((ids, identifier) => {
|
|
46
|
+
if (isNil(instance[identifier]))
|
|
47
|
+
return ids;
|
|
48
|
+
const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
|
|
49
|
+
const value = columnOption?.to?.(data[identifier.toString()], instance) || data[columnOption.attributeName];
|
|
50
|
+
return {
|
|
51
|
+
...ids,
|
|
52
|
+
[columnOption.columnName]: value,
|
|
53
|
+
};
|
|
54
|
+
}, {});
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFJVCxtQkFBbUIsR0FHcEIsTUFBTSxpQkFBaUIsQ0FBQTtBQUN4QixPQUFPLEVBQUUsS0FBSyxFQUFxQyxNQUFNLGdCQUFnQixDQUFBO0FBR3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQVlqRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUlyQyxTQUEyRCxFQUkzRCxFQUFFO0lBQ0YsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLE9BQTZCLEVBQVcsRUFBRTtRQUNsRSxJQUFJLE9BQU8sWUFBWSxTQUFTO1lBQUUsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDMUQsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFBO1FBQzFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDN0csT0FBTyxJQUFJLENBQUE7UUFFYixPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUE7SUFDdEIsQ0FBQyxDQUFBO0lBRUQsT0FBTyxNQUFNLHdCQUF5QixTQUFRLFNBQVM7UUFLckQsWUFBWSxHQUFHLE1BQU07WUFDbkIsTUFBTSxPQUFPLEdBQTRCLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBRXBELEtBQUssQ0FBQyxHQUFHLE1BQU0s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T0FBTztvQkFDTCxHQUFHLEdBQUc7b0JBQ04sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSztpQkFDakMsQ0FBQTtZQUNILENBQUMsRUFBRSxFQUErQyxDQUFDLENBQUE7UUFDckQsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlTW9kZWwsXG4gIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydGllcyxcbiAgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtcyxcbiAgVXBkYXRlT3B0aW9uQWN0aW9ucyxcbiAgVXBkYXRlT3B0aW9ucyxcbiAgVXBkYXRlUmVwb3NpdG9yeSxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnksIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0gVXBkYXRlUmVwb3NpdG9yeTxNQmFzZT4gJiB7XG4gIHBhcmFtc1RvUGxhaW4ocGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFBhcnRpYWw8TUJhc2U+XG59XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zID0ge1xuICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxQS1R5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhVcGRhdGVIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiAmIFVwZGF0ZUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5VHlwZTxNQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4sXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8VXBkYXRlQ29uc3RydWN0b3JQYXJhbXMsIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICBjb25zdCBnZXRWYWx1ZUJ5QWN0aW9uID0gKG9wdGlvbnM6IFVwZGF0ZU9wdGlvbnM8TUJhc2U+KTogdW5rbm93biA9PiB7XG4gICAgaWYgKG9wdGlvbnMgaW5zdGFuY2VvZiBCYXNlTW9kZWwpIHJldHVybiBvcHRpb25zLnRvUGxhaW4oKVxuICAgIGlmIChpc05pbChvcHRpb25zPy5hY3Rpb24pKSByZXR1cm4gb3B0aW9uc1xuICAgIGlmIChbVXBkYXRlT3B0aW9uQWN0aW9ucy5SRU1PVkVfRklFTEQudG9TdHJpbmcoKSwgVXBkYXRlT3B0aW9uQWN0aW9ucy5OVUxMLnRvU3RyaW5nKCldLmluY2x1ZGVzKG9wdGlvbnMuYWN0aW9uKSlcbiAgICAgIHJldHVybiBudWxsXG5cbiAgICByZXR1cm4gb3B0aW9ucy52YWx1ZVxuICB9XG5cbiAgcmV0dXJuIGNsYXNzIFVwZGF0ZUhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIFVwZGF0ZVJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVHcmFwaFFMT2JqZWN0VHlwZTogc3RyaW5nXG4gICAgdXBkYXRlR3JhcGhRTFBLVHlwZTogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXMpIHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zID0gcGFyYW1zPy5bMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24gPSBvcHRpb25zPy51cGRhdGVHcmFwaFFMT3BlcmF0aW9uIHx8IGB1cGRhdGVfJHt0aGlzLnRhYmxlTmFtZX1fYnlfcGtgXG4gICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlID0gb3B0aW9ucz8udXBkYXRlR3JhcGhRTE9iamVjdFR5cGUgfHwgYCR7dGhpcy50YWJsZU5hbWV9X3NldF9pbnB1dGBcbiAgICAgIHRoaXMudXBkYXRlR3JhcGhRTFBLVHlwZSA9IG9wdGlvbnM/LnVwZGF0ZUdyYXBoUUxQS1R5cGUgfHwgYCR7dGhpcy50YWJsZU5hbWV9X3BrX2NvbHVtbnNfaW5wdXRgXG4gICAgfVxuXG4gICAgYXN5bmMgdXBkYXRlKGRhdGE6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8TUJhc2U+KTogUHJvbWlzZTxNQmFzZT4ge1xuICAgICAgY29uc3QgcGxhaW5EYXRhID0gdGhpcy5wYXJhbXNUb1BsYWluKGRhdGEpXG5cbiAgICAgIGF3YWl0IHRoaXMubXV0YXRpb24oXG4gICAgICAgIHRoaXMudXBkYXRlR3JhcGhRTE9wZXJhdGlvbixcbiAgICAgICAgdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5tYXAoXG4gICAgICAgICAgKGZpZWxkKSA9PiBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKGZpZWxkLCB0aGlzLmZpZWxkcykuY29sdW1uTmFtZSxcbiAgICAgICAgKSBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICAgICAge1xuICAgICAgICAgIF9zZXQ6IHtcbiAgICAgICAgICAgIHR5cGU6IHRoaXMudXBkYXRlR3JhcGhRTE9iamVjdFR5cGUsXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy5jb252ZXJ0RGF0YVRvSGFzdXJhKHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbkRhdGEpLCB0cnVlKSxcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGtfY29sdW1uczogeyB0eXBlOiB0aGlzLnVwZGF0ZUdyYXBoUUxQS1R5cGUsIHZhbHVlOiB0aGlzLmdldFVwZGF0ZU1vZGVsS2V5cyhwbGFpbkRhdGEpLCByZXF1aXJlZDogdHJ1ZSB9LFxuICAgICAgICB9LFxuICAgICAgKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHBsYWluRGF0YSlcbiAgICB9XG5cbiAgICBwYXJhbXNUb1BsYWluKHBhcmFtczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT4pOiBQYXJ0aWFsPE1CYXNlPiB7XG4gICAgICBjb25zdCBtb2RlbCA9IHRoaXMubW9kZWxcblxuICAgICAgaWYgKG1vZGVsLmlzTW9kZWwocGFyYW1zKSkgcmV0dXJuIHBhcmFtcy50b1BsYWluKClcblxuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHBhcmFtcykucmVkdWNlKFxuICAgICAgICAoZGF0YSwgY3VycmVudEtleSkgPT4gKHtcbiAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgIC4uLihwYXJhbXNbY3VycmVudEtleV0gIT09IHVuZGVmaW5lZCAmJiB7IFtjdXJyZW50S2V5XTogZ2V0VmFsdWVCeUFjdGlvbihwYXJhbXNbY3VycmVudEtleV0pIH0pLFxuICAgICAgICB9KSxcbiAgICAgICAge30sXG4gICAgICApXG4gICAgfVxuXG4gICAgZ2V0VXBkYXRlTW9kZWxLZXlzKGRhdGE6IFBhcnRpYWw8TUJhc2U+KTogTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydGllczxNQmFzZT4ge1xuICAgICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLm1vZGVsLnRvSW5zdGFuY2UoZGF0YSlcblxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMucmVkdWNlKChpZHMsIGlkZW50aWZpZXIpID0+IHtcbiAgICAgICAgaWYgKGlzTmlsKGluc3RhbmNlW2lkZW50aWZpZXJdKSkgcmV0dXJuIGlkc1xuXG4gICAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoaWRlbnRpZmllciwgdGhpcy5maWVsZHMpXG4gICAgICAgIGNvbnN0IHZhbHVlID0gY29sdW1uT3B0aW9uPy50bz8uKGRhdGFbaWRlbnRpZmllci50b1N0cmluZygpXSwgaW5zdGFuY2UpIHx8IGRhdGFbY29sdW1uT3B0aW9uLmF0dHJpYnV0ZU5hbWVdXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5pZHMsXG4gICAgICAgICAgW2NvbHVtbk9wdGlvbi5jb2x1bW5OYW1lXTogdmFsdWUsXG4gICAgICAgIH1cbiAgICAgIH0sIHt9IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnRpZXM8TUJhc2U+KVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Category } from '../../../domain';
|
|
2
|
-
export class CategoryHasuraGraphQL extends Category {
|
|
3
|
-
}
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Category } from '../../../domain';
|
|
2
|
+
export class CategoryHasuraGraphQL extends Category {
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9tb2RlbHMvY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRTFDLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxRQUFRO0NBSWxEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2F0ZWdvcnkgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5cbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUhhc3VyYUdyYXBoUUwgZXh0ZW5kcyBDYXRlZ29yeSB7XG4gIGZpcmVzdG9yZUlkPzogc3RyaW5nXG4gIGJyYW5kQ29uZGl0aW9uPzogc3RyaW5nXG4gIHRhZ0NvbmRpdGlvbj86IHN0cmluZ1tdXG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from './category-hasura-graphql';
|
|
2
|
-
export * from './kit-product-hasura-graphql';
|
|
3
|
-
export * from './product-hasura-graphql';
|
|
4
|
-
export * from './variant-hasura-graphql';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './category-hasura-graphql';
|
|
2
|
+
export * from './kit-product-hasura-graphql';
|
|
3
|
+
export * from './product-hasura-graphql';
|
|
4
|
+
export * from './variant-hasura-graphql';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQTtBQUN6QyxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwnXG5leHBvcnQgKiBmcm9tICcuL2tpdC1wcm9kdWN0LWhhc3VyYS1ncmFwaHFsJ1xuZXhwb3J0ICogZnJvbSAnLi9wcm9kdWN0LWhhc3VyYS1ncmFwaHFsJ1xuZXhwb3J0ICogZnJvbSAnLi92YXJpYW50LWhhc3VyYS1ncmFwaHFsJ1xuIl19
|