@sentecacommerce-theme/lib 0.12.72 → 0.12.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/dist/cjs/api/myOrdersApi/index.js +4 -2
  2. package/dist/cjs/api/myOrdersApi/index.js.map +1 -1
  3. package/dist/cjs/checkout/api/keys.js +7 -1
  4. package/dist/cjs/checkout/api/keys.js.map +1 -1
  5. package/dist/cjs/checkout/api/queries/index.js +8 -0
  6. package/dist/cjs/checkout/api/queries/index.js.map +1 -1
  7. package/dist/cjs/checkout/api/queries/useUniCreditCalculateForCartQuery.js +40 -0
  8. package/dist/cjs/checkout/api/queries/useUniCreditCalculateForCartQuery.js.map +1 -0
  9. package/dist/cjs/checkout/contexts/UniCreditResponseContext.js +29 -0
  10. package/dist/cjs/checkout/contexts/UniCreditResponseContext.js.map +1 -0
  11. package/dist/cjs/checkout/contexts/index.js +8 -0
  12. package/dist/cjs/checkout/contexts/index.js.map +1 -1
  13. package/dist/cjs/checkout/hooks/index.js +8 -0
  14. package/dist/cjs/checkout/hooks/index.js.map +1 -1
  15. package/dist/cjs/checkout/hooks/useBnpCalculateForCart.js +1 -0
  16. package/dist/cjs/checkout/hooks/useBnpCalculateForCart.js.map +1 -1
  17. package/dist/cjs/checkout/hooks/useUniCreditCalculateForCart.js +82 -0
  18. package/dist/cjs/checkout/hooks/useUniCreditCalculateForCart.js.map +1 -0
  19. package/dist/cjs/checkout/ssr/captureUniCreditOrder.js +36 -0
  20. package/dist/cjs/checkout/ssr/captureUniCreditOrder.js.map +1 -0
  21. package/dist/cjs/checkout/ssr/index.js +8 -0
  22. package/dist/cjs/checkout/ssr/index.js.map +1 -1
  23. package/dist/cjs/contexts/CheckoutForm/Components/UniCreditRedirect/index.js +71 -0
  24. package/dist/cjs/contexts/CheckoutForm/Components/UniCreditRedirect/index.js.map +1 -0
  25. package/dist/cjs/contexts/CheckoutForm/Components/index.js +8 -0
  26. package/dist/cjs/contexts/CheckoutForm/Components/index.js.map +1 -1
  27. package/dist/cjs/contexts/CheckoutForm/hooks/usePayment/index.js.map +1 -1
  28. package/dist/cjs/contexts/CheckoutForm/index.js +61 -16
  29. package/dist/cjs/contexts/CheckoutForm/index.js.map +1 -1
  30. package/dist/cjs/hooks/order-hooks/useOrder/index.js +1 -5
  31. package/dist/cjs/hooks/order-hooks/useOrder/index.js.map +1 -1
  32. package/dist/cjs/hooks/order-hooks/useOrderPaymentMethods/index.js.map +1 -1
  33. package/dist/cjs/hooks/order-hooks/useUpdateOrderPaymentMethod/index.js.map +1 -1
  34. package/dist/cjs/hooks/subscriptions-hooks/useAllSubscriptions/index.js +1 -1
  35. package/dist/cjs/hooks/subscriptions-hooks/useAllSubscriptions/index.js.map +1 -1
  36. package/dist/cjs/hooks/useCheckoutSubmit/index.js +37 -16
  37. package/dist/cjs/hooks/useCheckoutSubmit/index.js.map +1 -1
  38. package/dist/cjs/listing/api/queries/useLabelsQuery.js +2 -1
  39. package/dist/cjs/listing/api/queries/useLabelsQuery.js.map +1 -1
  40. package/dist/cjs/listing/hooks/useListingFilters.js +3 -1
  41. package/dist/cjs/listing/hooks/useListingFilters.js.map +1 -1
  42. package/dist/cjs/product/api/keys.js +7 -1
  43. package/dist/cjs/product/api/keys.js.map +1 -1
  44. package/dist/cjs/product/api/queries/index.js +8 -0
  45. package/dist/cjs/product/api/queries/index.js.map +1 -1
  46. package/dist/cjs/product/api/queries/useUniCreditOffersQuery.js +45 -0
  47. package/dist/cjs/product/api/queries/useUniCreditOffersQuery.js.map +1 -0
  48. package/dist/cjs/product/hooks/index.js +8 -0
  49. package/dist/cjs/product/hooks/index.js.map +1 -1
  50. package/dist/cjs/product/hooks/useUniCreditOffers.js +72 -0
  51. package/dist/cjs/product/hooks/useUniCreditOffers.js.map +1 -0
  52. package/dist/cjs/ui/hooks/index.js +12 -0
  53. package/dist/cjs/ui/hooks/index.js.map +1 -0
  54. package/dist/cjs/ui/hooks/useToasts.js +96 -0
  55. package/dist/cjs/ui/hooks/useToasts.js.map +1 -0
  56. package/dist/cjs/ui/index.js +8 -0
  57. package/dist/cjs/ui/index.js.map +1 -1
  58. package/dist/cjs/ui/toastUtils/ErrorIcon.js +26 -0
  59. package/dist/cjs/ui/toastUtils/ErrorIcon.js.map +1 -0
  60. package/dist/cjs/ui/toastUtils/InfoIcon.js +26 -0
  61. package/dist/cjs/ui/toastUtils/InfoIcon.js.map +1 -0
  62. package/dist/cjs/ui/toastUtils/SuccessIcon.js +26 -0
  63. package/dist/cjs/ui/toastUtils/SuccessIcon.js.map +1 -0
  64. package/dist/cjs/ui/toastUtils/WarningIcon.js +26 -0
  65. package/dist/cjs/ui/toastUtils/WarningIcon.js.map +1 -0
  66. package/dist/cjs/ui/toastUtils/index.js +44 -0
  67. package/dist/cjs/ui/toastUtils/index.js.map +1 -0
  68. package/dist/cjs/ui/toastUtils/utils.js +107 -0
  69. package/dist/cjs/ui/toastUtils/utils.js.map +1 -0
  70. package/dist/esm/api/myOrdersApi/index.js +2 -1
  71. package/dist/esm/api/myOrdersApi/index.js.map +1 -1
  72. package/dist/esm/checkout/api/keys.js +3 -0
  73. package/dist/esm/checkout/api/keys.js.map +1 -1
  74. package/dist/esm/checkout/api/queries/index.js +1 -0
  75. package/dist/esm/checkout/api/queries/index.js.map +1 -1
  76. package/dist/esm/checkout/api/queries/useUniCreditCalculateForCartQuery.js +10 -0
  77. package/dist/esm/checkout/api/queries/useUniCreditCalculateForCartQuery.js.map +1 -0
  78. package/dist/esm/checkout/contexts/UniCreditResponseContext.js +17 -0
  79. package/dist/esm/checkout/contexts/UniCreditResponseContext.js.map +1 -0
  80. package/dist/esm/checkout/contexts/index.js +1 -0
  81. package/dist/esm/checkout/contexts/index.js.map +1 -1
  82. package/dist/esm/checkout/hooks/index.js +1 -0
  83. package/dist/esm/checkout/hooks/index.js.map +1 -1
  84. package/dist/esm/checkout/hooks/useBnpCalculateForCart.js +1 -0
  85. package/dist/esm/checkout/hooks/useBnpCalculateForCart.js.map +1 -1
  86. package/dist/esm/checkout/hooks/useUniCreditCalculateForCart.js +66 -0
  87. package/dist/esm/checkout/hooks/useUniCreditCalculateForCart.js.map +1 -0
  88. package/dist/esm/checkout/ssr/captureUniCreditOrder.js +12 -0
  89. package/dist/esm/checkout/ssr/captureUniCreditOrder.js.map +1 -0
  90. package/dist/esm/checkout/ssr/index.js +1 -0
  91. package/dist/esm/checkout/ssr/index.js.map +1 -1
  92. package/dist/esm/contexts/CheckoutForm/Components/UniCreditRedirect/index.js +63 -0
  93. package/dist/esm/contexts/CheckoutForm/Components/UniCreditRedirect/index.js.map +1 -0
  94. package/dist/esm/contexts/CheckoutForm/Components/index.js +1 -0
  95. package/dist/esm/contexts/CheckoutForm/Components/index.js.map +1 -1
  96. package/dist/esm/contexts/CheckoutForm/hooks/usePayment/index.js.map +1 -1
  97. package/dist/esm/contexts/CheckoutForm/index.js +28 -2
  98. package/dist/esm/contexts/CheckoutForm/index.js.map +1 -1
  99. package/dist/esm/hooks/order-hooks/useOrder/index.js +1 -5
  100. package/dist/esm/hooks/order-hooks/useOrder/index.js.map +1 -1
  101. package/dist/esm/hooks/order-hooks/useOrderPaymentMethods/index.js.map +1 -1
  102. package/dist/esm/hooks/order-hooks/useUpdateOrderPaymentMethod/index.js.map +1 -1
  103. package/dist/esm/hooks/subscriptions-hooks/useAllSubscriptions/index.js +1 -1
  104. package/dist/esm/hooks/subscriptions-hooks/useAllSubscriptions/index.js.map +1 -1
  105. package/dist/esm/hooks/useCheckoutSubmit/index.js +10 -3
  106. package/dist/esm/hooks/useCheckoutSubmit/index.js.map +1 -1
  107. package/dist/esm/listing/api/queries/useLabelsQuery.js +2 -1
  108. package/dist/esm/listing/api/queries/useLabelsQuery.js.map +1 -1
  109. package/dist/esm/listing/hooks/useListingFilters.js +3 -1
  110. package/dist/esm/listing/hooks/useListingFilters.js.map +1 -1
  111. package/dist/esm/product/api/keys.js +3 -0
  112. package/dist/esm/product/api/keys.js.map +1 -1
  113. package/dist/esm/product/api/queries/index.js +1 -0
  114. package/dist/esm/product/api/queries/index.js.map +1 -1
  115. package/dist/esm/product/api/queries/useUniCreditOffersQuery.js +16 -0
  116. package/dist/esm/product/api/queries/useUniCreditOffersQuery.js.map +1 -0
  117. package/dist/esm/product/hooks/index.js +1 -0
  118. package/dist/esm/product/hooks/index.js.map +1 -1
  119. package/dist/esm/product/hooks/useUniCreditOffers.js +57 -0
  120. package/dist/esm/product/hooks/useUniCreditOffers.js.map +1 -0
  121. package/dist/esm/ui/hooks/index.js +2 -0
  122. package/dist/esm/ui/hooks/index.js.map +1 -0
  123. package/dist/esm/ui/hooks/useToasts.js +74 -0
  124. package/dist/esm/ui/hooks/useToasts.js.map +1 -0
  125. package/dist/esm/ui/index.js +1 -0
  126. package/dist/esm/ui/index.js.map +1 -1
  127. package/dist/esm/ui/toastUtils/ErrorIcon.js +16 -0
  128. package/dist/esm/ui/toastUtils/ErrorIcon.js.map +1 -0
  129. package/dist/esm/ui/toastUtils/InfoIcon.js +16 -0
  130. package/dist/esm/ui/toastUtils/InfoIcon.js.map +1 -0
  131. package/dist/esm/ui/toastUtils/SuccessIcon.js +16 -0
  132. package/dist/esm/ui/toastUtils/SuccessIcon.js.map +1 -0
  133. package/dist/esm/ui/toastUtils/WarningIcon.js +16 -0
  134. package/dist/esm/ui/toastUtils/WarningIcon.js.map +1 -0
  135. package/dist/esm/ui/toastUtils/index.js +6 -0
  136. package/dist/esm/ui/toastUtils/index.js.map +1 -0
  137. package/dist/esm/ui/toastUtils/utils.js +82 -0
  138. package/dist/esm/ui/toastUtils/utils.js.map +1 -0
  139. package/dist/types/checkout/api/keys.d.ts +1 -0
  140. package/dist/types/checkout/api/queries/index.d.ts +1 -0
  141. package/dist/types/checkout/api/queries/useBnpCalculateForCartQuery.d.ts +1 -1
  142. package/dist/types/checkout/api/queries/useUniCreditCalculateForCartQuery.d.ts +3 -0
  143. package/dist/types/checkout/contexts/UniCreditResponseContext.d.ts +6 -0
  144. package/dist/types/checkout/contexts/index.d.ts +1 -0
  145. package/dist/types/checkout/hooks/index.d.ts +1 -0
  146. package/dist/types/checkout/hooks/useBnpCalculateForCart.d.ts +5 -3
  147. package/dist/types/checkout/hooks/useUniCreditCalculateForCart.d.ts +53 -0
  148. package/dist/types/checkout/ssr/captureUniCreditOrder.d.ts +2 -0
  149. package/dist/types/checkout/ssr/index.d.ts +1 -0
  150. package/dist/types/contexts/CheckoutForm/Components/UniCreditRedirect/index.d.ts +5 -0
  151. package/dist/types/contexts/CheckoutForm/Components/index.d.ts +1 -0
  152. package/dist/types/contexts/CheckoutForm/hooks/usePayment/index.d.ts +2 -2
  153. package/dist/types/contexts/CheckoutForm/index.d.ts +1 -0
  154. package/dist/types/hooks/order-hooks/useOrderPaymentMethods/index.d.ts +4 -4
  155. package/dist/types/hooks/useCheckoutSubmit/index.d.ts +3 -2
  156. package/dist/types/product/api/keys.d.ts +1 -0
  157. package/dist/types/product/api/queries/index.d.ts +1 -0
  158. package/dist/types/product/api/queries/useBnpOffersQuery.d.ts +1 -1
  159. package/dist/types/product/api/queries/useUniCreditOffersQuery.d.ts +4 -0
  160. package/dist/types/product/hooks/index.d.ts +1 -0
  161. package/dist/types/product/hooks/useBnpOffers.d.ts +2 -2
  162. package/dist/types/product/hooks/useUniCreditOffers.d.ts +36 -0
  163. package/dist/types/ui/hooks/index.d.ts +1 -0
  164. package/dist/types/ui/hooks/useToasts.d.ts +20 -0
  165. package/dist/types/ui/index.d.ts +1 -0
  166. package/dist/types/ui/toastUtils/ErrorIcon.d.ts +1 -0
  167. package/dist/types/ui/toastUtils/InfoIcon.d.ts +1 -0
  168. package/dist/types/ui/toastUtils/SuccessIcon.d.ts +1 -0
  169. package/dist/types/ui/toastUtils/WarningIcon.d.ts +1 -0
  170. package/dist/types/ui/toastUtils/index.d.ts +5 -0
  171. package/dist/types/ui/toastUtils/utils.d.ts +11 -0
  172. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/listing/hooks/useListingFilters.tsx"],"names":["ListingFiltersStateContext","React","createContext","undefined","ListingFiltersProvider","children","aggregates","pageType","type","attributeSortType","AggregateRequestEnum","Filters","aggData","data","isLoading","isFetching","config","router","slug","useMemo","result","sort","a","b","order","map","currentAggregate","aggregationType","toString","term","aggregationDefinition","split","filter","filterDefinition","current","find","agg","name","generatedFilters","generateFilters","rawFilters","selectedCount","reduce","count","res","selected","attributeResult","label","component","items","raw","clearAll","push","pathname","query","filterByType","clearAllFilters","selectedFilters","useListingFilters","context","useContext","Error","results","currentTerm","filterKey","mapKey","isFilterSelected","filtersOperatorsMap","meta","onClick","createAggregateQuery","aggType","aggKey","aggOperator","Boolean","areFiltersArray","Array","isArray","sel","includes","ranges","stats","terms","r","keysMap","key","from","to","manageFilter","pair","remove","stripped","generateQueryString","activeFilters","extractFilter","str","aggPair","operator","val","filterType","filterVal","filterOperator","Object","keys","forEach","el","applied","remaining","x","length","join","idx","ListingTypesEnum","Search","q","search","cat","typeToSuffix","filters","filterName"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { useRouter } from 'next/router'\nimport { NextRouter } from 'next/router'\nimport { useListingConfig } from './useListingConfig'\nimport {\n useAggregateQuery,\n AggregateRequestEnum,\n AggregateType,\n AggregationResultType,\n} from '../api'\n\nimport { Aggregate, ListingTypesEnum } from '../types'\nimport { useListingSlug } from './useListingSlug'\n\nimport { stripQueryProps } from '../../utils/generateQueryFromRouter'\nimport { typeToSuffix } from '../../utils/typeToSuffix'\nimport { generateQueryStringFromQuery } from '../../utils/generateQueryStringFromQuery'\nimport {\n RangeAggregation,\n StatAggregation,\n TermAggregation,\n} from '@sentecacommerce/sdk'\nimport { getSelectedFilters } from '../../utils'\nimport { useConfigState } from '../../index'\nimport { FiltersQuery } from '../index'\n\nexport type {\n RangeAggregation,\n StatAggregation,\n TermAggregation,\n} from '@sentecacommerce/sdk'\n\ntype AggPair = {\n aggType: string\n aggKey: string\n aggOperator: string\n}\n\nexport type ListingAggregationResultType = {\n selected: boolean\n data: AggregationResultType\n meta: any\n aggregationType?: string\n onClick: () => void\n}\n\nexport type ListingAggregateType = {\n name: string\n component: string\n type: string\n selectedCount: number\n items: ListingAggregationResultType[]\n clearAll: () => void\n raw: StatAggregation | RangeAggregation | TermAggregation\n}\n\nexport type UseListingFiltersResult = {\n data?: ListingAggregateType[]\n clearAllFilters: () => void\n selectedFilters: ListingAggregationResultType[]\n isLoading: boolean\n isFetching: boolean\n}\n\nconst ListingFiltersStateContext = React.createContext<\n UseListingFiltersResult | undefined\n>(undefined)\n\nexport function ListingFiltersProvider({\n children,\n}: {\n children: React.ReactNode\n}) {\n const { aggregates, type: pageType, attributeSortType } = useListingConfig()\n\n const { data: aggData, isLoading, isFetching } = useAggregateQuery(\n aggregates as Aggregate[],\n AggregateRequestEnum.Filters,\n attributeSortType\n )\n\n const config = useConfigState()\n const router = useRouter()\n const slug = useListingSlug()\n\n const data = React.useMemo(() => {\n if (!isLoading && aggData) {\n const result = aggregates\n ?.sort((a, b) => a.order - b.order)\n .map((currentAggregate) => {\n const type = currentAggregate.aggregationType.toString()\n const term = currentAggregate.aggregationDefinition.split(':')[0]\n const filter = currentAggregate.filterDefinition\n const current: AggregateType = aggData[type].find(\n (agg: AggregateType) => agg.name === term\n )\n\n const generatedFilters = generateFilters({\n rawFilters: current,\n filter,\n router,\n type,\n slug,\n pageType,\n })\n\n const selectedCount = generatedFilters?.reduce((count, res) => {\n if (res.selected) count++\n return count\n }, 0)\n\n const attributeResult = ({\n name: currentAggregate.label,\n component: currentAggregate.component,\n items: generatedFilters,\n selectedCount,\n raw: current,\n clearAll: () =>\n router.push({\n pathname: router.pathname,\n query: {\n ...router.query,\n filter: filterByType(router.query.filter, filter),\n },\n }),\n type: type,\n } as unknown) as ListingAggregateType\n\n return attributeResult\n })\n\n return result\n }\n return undefined\n }, [aggData, router])\n\n const clearAllFilters = () => {\n const query = { ...router.query }\n delete query.filter\n\n router.push({\n pathname: router.pathname,\n query,\n })\n }\n\n const selectedFilters = React.useMemo(() => {\n return getSelectedFilters(router, slug, data as any, config) as any\n }, [router, data])\n\n return (\n <ListingFiltersStateContext.Provider\n value={{ data, clearAllFilters, selectedFilters, isLoading, isFetching }}\n >\n {children}\n </ListingFiltersStateContext.Provider>\n )\n}\n\nexport function useListingFilters() {\n const context = React.useContext(ListingFiltersStateContext)\n if (context === undefined) {\n throw new Error(\n 'useListingFilters must be used within a ListingFiltersProvider'\n )\n }\n return context\n}\n\nfunction generateFilters({\n rawFilters,\n type,\n filter,\n slug,\n router,\n pageType,\n}: {\n rawFilters: AggregateType\n type: string\n filter: string\n slug: string\n router: NextRouter\n pageType: ListingTypesEnum\n}) {\n return rawFilters.results\n ?.filter((res) => res.count > 0)\n ?.map((currentTerm) => {\n const filterKey = mapKey(currentTerm, type)\n\n const selected = isFilterSelected(\n router,\n filter,\n filterKey,\n filtersOperatorsMap[type]\n )\n\n return {\n data: currentTerm,\n selected,\n meta: currentTerm.meta,\n onClick: () => {\n router.push(\n createAggregateQuery(\n pageType,\n slug,\n {\n aggType: filter,\n aggKey: filterKey,\n aggOperator: filtersOperatorsMap[type],\n },\n Boolean(selected),\n router\n )\n )\n },\n }\n })\n}\n\nconst isFilterSelected = (\n router: NextRouter,\n filter: string,\n filterKey: any,\n type: string\n) => {\n const areFiltersArray = Array.isArray(router.query?.filter)\n\n return areFiltersArray\n ? !!(router.query.filter as string[])\n ?.find((sel: string) => sel.includes(`${filter};${type}`))\n ?.includes(filterKey)\n : router.query.filter?.includes(`${filter};${type}`) &&\n router.query.filter?.includes(filterKey)\n}\n\nexport const filtersOperatorsMap = {\n ranges: 'range',\n stats: 'range',\n terms: 'in',\n}\n\nfunction mapKey(r: any, type: any) {\n const keysMap = {\n terms: `\"${r.key}\"`,\n ranges: `${r.from},${r.to}`,\n }\n if (!keysMap[type]) return r.key\n\n return keysMap[type]\n}\n\nfunction manageFilter(pair: AggPair, query: any, remove: boolean) {\n const stripped = stripQueryProps(query, ['page']) // reset pagination on filter\n\n const result = generateQueryString(stripped, pair, remove)\n return result\n}\n\nconst generateQueryString = (\n query: FiltersQuery,\n pair: AggPair,\n remove?: boolean\n) => {\n const activeFilters = {}\n\n const extractFilter = ({\n str = '',\n aggPair,\n }: {\n str: string\n aggPair?: AggPair\n }) => {\n const [type, operator, val] = str.split(';')\n\n const filterType = aggPair?.aggType ?? type\n const filterVal = aggPair?.aggKey ?? val\n const filterOperator = aggPair?.aggOperator ?? operator\n\n if (activeFilters[filterType]) {\n activeFilters[filterType] += `,${filterVal}`\n } else {\n activeFilters[\n filterType\n ] = `filter=${filterType};${filterOperator};${filterVal}`\n }\n }\n\n Object.keys(query).forEach((el) => {\n if (Array.isArray(query[el])) {\n query[el].forEach((filter: string) => {\n extractFilter({ str: filter })\n })\n } else {\n if (el === 'sort') {\n activeFilters[el] = `sort=${query[el]}`\n } else {\n extractFilter({ str: query[el] })\n }\n }\n })\n\n if (remove) {\n const applied = activeFilters[pair.aggType].split(';')[2].split(',')\n\n const remaining = applied.filter((x: string) => !pair.aggKey.includes(x))\n\n if (remaining.length === 0) {\n activeFilters[pair.aggType] = ``\n } else {\n activeFilters[pair.aggType] = `filter=${pair.aggType};${\n pair.aggOperator\n };${remaining.join(',')}`\n }\n } else {\n extractFilter({ str: '', aggPair: pair })\n }\n\n if (Object.keys(activeFilters).length === 0) return ``\n\n return Object.keys(activeFilters).reduce((res, val, idx) => {\n res += `${idx > 0 ? '&' : ''}${activeFilters[val]}`\n return res\n }, ``)\n}\n\nfunction createAggregateQuery(\n type: ListingTypesEnum,\n slug: string,\n aggPair: AggPair,\n remove: boolean,\n router: NextRouter\n) {\n if (type === ListingTypesEnum.Search) {\n return router.query.q\n ? `/search?q=${router.query.q}&${manageFilter(\n aggPair,\n router.query,\n remove\n )}`\n : `/${slug}/c?search=${router.query.search}&${manageFilter(\n aggPair,\n router.query,\n remove\n )}`\n }\n\n if (router.query.cat) {\n return `/${router.query.slug}/${router.query.cat}/${\n typeToSuffix[type]\n }?${manageFilter(aggPair, router.query, remove)}`\n }\n\n return `/${slug}/${typeToSuffix[type]}?${manageFilter(\n aggPair,\n router.query,\n remove\n )}`\n}\n\nfunction filterByType(\n filters: string | string[] | undefined,\n filterName: string\n) {\n if (!filters) return\n\n if (typeof filters === 'string') {\n if (filters.includes(filterName)) return\n\n return filters\n }\n\n return filters.filter((filter) => !filter.includes(filterName))\n}\n"],"file":"useListingFilters.js"}
1
+ {"version":3,"sources":["../../../../src/listing/hooks/useListingFilters.tsx"],"names":["ListingFiltersStateContext","React","createContext","undefined","ListingFiltersProvider","children","aggregates","pageType","type","attributeSortType","AggregateRequestEnum","Filters","aggData","data","isLoading","isFetching","config","router","slug","useMemo","result","sort","a","b","order","map","currentAggregate","aggregationType","toString","term","aggregationDefinition","split","filter","filterDefinition","current","find","agg","name","generatedFilters","generateFilters","rawFilters","listing","slugAliases","selectedCount","reduce","count","res","selected","attributeResult","label","component","items","raw","clearAll","push","pathname","query","filterByType","clearAllFilters","selectedFilters","useListingFilters","context","useContext","Error","results","currentTerm","filterKey","mapKey","isFilterSelected","filtersOperatorsMap","meta","onClick","createAggregateQuery","aggType","aggKey","aggOperator","Boolean","areFiltersArray","Array","isArray","sel","includes","ranges","stats","terms","r","keysMap","key","from","to","manageFilter","pair","remove","stripped","generateQueryString","activeFilters","extractFilter","str","aggPair","operator","val","filterType","filterVal","filterOperator","Object","keys","forEach","el","applied","remaining","x","length","join","idx","ListingTypesEnum","Search","q","search","cat","typeToSuffix","filters","filterName"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { useRouter } from 'next/router'\nimport { NextRouter } from 'next/router'\nimport { useListingConfig } from './useListingConfig'\nimport {\n useAggregateQuery,\n AggregateRequestEnum,\n AggregateType,\n AggregationResultType,\n} from '../api'\n\nimport { Aggregate, ListingTypesEnum } from '../types'\nimport { useListingSlug } from './useListingSlug'\n\nimport { stripQueryProps } from '../../utils/generateQueryFromRouter'\nimport { typeToSuffix } from '../../utils/typeToSuffix'\nimport { generateQueryStringFromQuery } from '../../utils/generateQueryStringFromQuery'\nimport {\n RangeAggregation,\n StatAggregation,\n TermAggregation,\n} from '@sentecacommerce/sdk'\nimport { getSelectedFilters } from '../../utils'\nimport { useConfigState } from '../../index'\nimport { FiltersQuery } from '../index'\n\nexport type {\n RangeAggregation,\n StatAggregation,\n TermAggregation,\n} from '@sentecacommerce/sdk'\n\ntype AggPair = {\n aggType: string\n aggKey: string\n aggOperator: string\n}\n\nexport type ListingAggregationResultType = {\n selected: boolean\n data: AggregationResultType\n meta: any\n aggregationType?: string\n onClick: () => void\n}\n\nexport type ListingAggregateType = {\n name: string\n component: string\n type: string\n selectedCount: number\n items: ListingAggregationResultType[]\n clearAll: () => void\n raw: StatAggregation | RangeAggregation | TermAggregation\n}\n\nexport type UseListingFiltersResult = {\n data?: ListingAggregateType[]\n clearAllFilters: () => void\n selectedFilters: ListingAggregationResultType[]\n isLoading: boolean\n isFetching: boolean\n}\n\nconst ListingFiltersStateContext = React.createContext<\n UseListingFiltersResult | undefined\n>(undefined)\n\nexport function ListingFiltersProvider({\n children,\n}: {\n children: React.ReactNode\n}) {\n const { aggregates, type: pageType, attributeSortType } = useListingConfig()\n\n const { data: aggData, isLoading, isFetching } = useAggregateQuery(\n aggregates as Aggregate[],\n AggregateRequestEnum.Filters,\n attributeSortType\n )\n\n const config = useConfigState()\n const router = useRouter()\n const slug = useListingSlug()\n\n const data = React.useMemo(() => {\n if (!isLoading && aggData) {\n const result = aggregates\n ?.sort((a, b) => a.order - b.order)\n .map((currentAggregate) => {\n const type = currentAggregate.aggregationType.toString()\n const term = currentAggregate.aggregationDefinition.split(':')[0]\n const filter = currentAggregate.filterDefinition\n const current: AggregateType = aggData[type].find(\n (agg: AggregateType) => agg.name === term\n )\n\n const generatedFilters = generateFilters({\n rawFilters: current,\n filter,\n router,\n type,\n slug: (config as any).listing.slugAliases?.[slug] ?? slug,\n pageType,\n })\n\n const selectedCount = generatedFilters?.reduce((count, res) => {\n if (res.selected) count++\n return count\n }, 0)\n\n const attributeResult = ({\n name: currentAggregate.label,\n component: currentAggregate.component,\n items: generatedFilters,\n selectedCount,\n raw: current,\n clearAll: () =>\n router.push({\n pathname: router.pathname,\n query: {\n ...router.query,\n filter: filterByType(router.query.filter, filter),\n },\n }),\n type: type,\n } as unknown) as ListingAggregateType\n\n return attributeResult\n })\n\n return result\n }\n return undefined\n }, [aggData, router])\n\n const clearAllFilters = () => {\n const query = { ...router.query }\n delete query.filter\n\n router.push({\n pathname: router.pathname,\n query,\n })\n }\n\n const selectedFilters = React.useMemo(() => {\n return getSelectedFilters(router, slug, data as any, config) as any\n }, [router, data])\n\n return (\n <ListingFiltersStateContext.Provider\n value={{ data, clearAllFilters, selectedFilters, isLoading, isFetching }}\n >\n {children}\n </ListingFiltersStateContext.Provider>\n )\n}\n\nexport function useListingFilters() {\n const context = React.useContext(ListingFiltersStateContext)\n if (context === undefined) {\n throw new Error(\n 'useListingFilters must be used within a ListingFiltersProvider'\n )\n }\n return context\n}\n\nfunction generateFilters({\n rawFilters,\n type,\n filter,\n slug,\n router,\n pageType,\n}: {\n rawFilters: AggregateType\n type: string\n filter: string\n slug: string\n router: NextRouter\n pageType: ListingTypesEnum\n}) {\n return rawFilters.results\n ?.filter((res) => res.count > 0)\n ?.map((currentTerm) => {\n const filterKey = mapKey(currentTerm, type)\n\n const selected = isFilterSelected(\n router,\n filter,\n filterKey,\n filtersOperatorsMap[type]\n )\n\n return {\n data: currentTerm,\n selected,\n meta: currentTerm.meta,\n onClick: () => {\n router.push(\n createAggregateQuery(\n pageType,\n slug,\n {\n aggType: filter,\n aggKey: filterKey,\n aggOperator: filtersOperatorsMap[type],\n },\n Boolean(selected),\n router\n )\n )\n },\n }\n })\n}\n\nconst isFilterSelected = (\n router: NextRouter,\n filter: string,\n filterKey: any,\n type: string\n) => {\n const areFiltersArray = Array.isArray(router.query?.filter)\n\n return areFiltersArray\n ? !!(router.query.filter as string[])\n ?.find((sel: string) => sel.includes(`${filter};${type}`))\n ?.includes(filterKey)\n : router.query.filter?.includes(`${filter};${type}`) &&\n router.query.filter?.includes(filterKey)\n}\n\nexport const filtersOperatorsMap = {\n ranges: 'range',\n stats: 'range',\n terms: 'in',\n}\n\nfunction mapKey(r: any, type: any) {\n const keysMap = {\n terms: `\"${r.key}\"`,\n ranges: `${r.from},${r.to}`,\n }\n if (!keysMap[type]) return r.key\n\n return keysMap[type]\n}\n\nfunction manageFilter(pair: AggPair, query: any, remove: boolean) {\n const stripped = stripQueryProps(query, ['page']) // reset pagination on filter\n\n const result = generateQueryString(stripped, pair, remove)\n return result\n}\n\nconst generateQueryString = (\n query: FiltersQuery,\n pair: AggPair,\n remove?: boolean\n) => {\n const activeFilters = {}\n\n const extractFilter = ({\n str = '',\n aggPair,\n }: {\n str: string\n aggPair?: AggPair\n }) => {\n const [type, operator, val] = str.split(';')\n\n const filterType = aggPair?.aggType ?? type\n const filterVal = aggPair?.aggKey ?? val\n const filterOperator = aggPair?.aggOperator ?? operator\n\n if (activeFilters[filterType]) {\n activeFilters[filterType] += `,${filterVal}`\n } else {\n activeFilters[\n filterType\n ] = `filter=${filterType};${filterOperator};${filterVal}`\n }\n }\n\n Object.keys(query).forEach((el) => {\n if (Array.isArray(query[el])) {\n query[el].forEach((filter: string) => {\n extractFilter({ str: filter })\n })\n } else {\n if (el === 'sort') {\n activeFilters[el] = `sort=${query[el]}`\n } else {\n extractFilter({ str: query[el] })\n }\n }\n })\n\n if (remove) {\n const applied = activeFilters[pair.aggType].split(';')[2].split(',')\n\n const remaining = applied.filter((x: string) => !pair.aggKey.includes(x))\n\n if (remaining.length === 0) {\n activeFilters[pair.aggType] = ``\n } else {\n activeFilters[pair.aggType] = `filter=${pair.aggType};${\n pair.aggOperator\n };${remaining.join(',')}`\n }\n } else {\n extractFilter({ str: '', aggPair: pair })\n }\n\n if (Object.keys(activeFilters).length === 0) return ``\n\n return Object.keys(activeFilters).reduce((res, val, idx) => {\n res += `${idx > 0 ? '&' : ''}${activeFilters[val]}`\n return res\n }, ``)\n}\n\nfunction createAggregateQuery(\n type: ListingTypesEnum,\n slug: string,\n aggPair: AggPair,\n remove: boolean,\n router: NextRouter\n) {\n if (type === ListingTypesEnum.Search) {\n return router.query.q\n ? `/search?q=${router.query.q}&${manageFilter(\n aggPair,\n router.query,\n remove\n )}`\n : `/${slug}/c?search=${router.query.search}&${manageFilter(\n aggPair,\n router.query,\n remove\n )}`\n }\n\n if (router.query.cat) {\n return `/${router.query.slug}/${router.query.cat}/${\n typeToSuffix[type]\n }?${manageFilter(aggPair, router.query, remove)}`\n }\n\n return `/${slug}/${typeToSuffix[type]}?${manageFilter(\n aggPair,\n router.query,\n remove\n )}`\n}\n\nfunction filterByType(\n filters: string | string[] | undefined,\n filterName: string\n) {\n if (!filters) return\n\n if (typeof filters === 'string') {\n if (filters.includes(filterName)) return\n\n return filters\n }\n\n return filters.filter((filter) => !filter.includes(filterName))\n}\n"],"file":"useListingFilters.js"}
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.getBnpProductOffersKey = void 0;
4
+ exports.getUniCreditProductOffersKey = exports.getBnpProductOffersKey = void 0;
5
5
 
6
6
  var getBnpProductOffersKey = function getBnpProductOffersKey(sku) {
7
7
  return ['product-bnp-offers', sku];
8
8
  };
9
9
 
10
10
  exports.getBnpProductOffersKey = getBnpProductOffersKey;
11
+
12
+ var getUniCreditProductOffersKey = function getUniCreditProductOffersKey(sku) {
13
+ return ['product-unicredit-offers', sku];
14
+ };
15
+
16
+ exports.getUniCreditProductOffersKey = getUniCreditProductOffersKey;
11
17
  //# sourceMappingURL=keys.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/product/api/keys.ts"],"names":["getBnpProductOffersKey","sku"],"mappings":";;;;;AAAO,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,GAAD,EAAiB;AACrD,SAAO,CAAC,oBAAD,EAAuBA,GAAvB,CAAP;AACD,CAFM","sourcesContent":["export const getBnpProductOffersKey = (sku: string) => {\n return ['product-bnp-offers', sku]\n}\n"],"file":"keys.js"}
1
+ {"version":3,"sources":["../../../../src/product/api/keys.ts"],"names":["getBnpProductOffersKey","sku","getUniCreditProductOffersKey"],"mappings":";;;;;AAAO,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,GAAD,EAAiB;AACrD,SAAO,CAAC,oBAAD,EAAuBA,GAAvB,CAAP;AACD,CAFM;;;;AAIA,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACD,GAAD,EAAiB;AAC3D,SAAO,CAAC,0BAAD,EAA6BA,GAA7B,CAAP;AACD,CAFM","sourcesContent":["export const getBnpProductOffersKey = (sku: string) => {\n return ['product-bnp-offers', sku]\n}\n\nexport const getUniCreditProductOffersKey = (sku: string) => {\n return ['product-unicredit-offers', sku]\n}\n"],"file":"keys.js"}
@@ -9,4 +9,12 @@ Object.keys(_useBnpOffersQuery).forEach(function (key) {
9
9
  if (key in exports && exports[key] === _useBnpOffersQuery[key]) return;
10
10
  exports[key] = _useBnpOffersQuery[key];
11
11
  });
12
+
13
+ var _useUniCreditOffersQuery = require("./useUniCreditOffersQuery");
14
+
15
+ Object.keys(_useUniCreditOffersQuery).forEach(function (key) {
16
+ if (key === "default" || key === "__esModule") return;
17
+ if (key in exports && exports[key] === _useUniCreditOffersQuery[key]) return;
18
+ exports[key] = _useUniCreditOffersQuery[key];
19
+ });
12
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/product/api/queries/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useBnpOffersQuery'\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../../src/product/api/queries/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useBnpOffersQuery'\nexport * from './useUniCreditOffersQuery'\n"],"file":"index.js"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.useUniCreditOffersQuery = void 0;
7
+
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+
12
+ var _reactQuery = require("react-query");
13
+
14
+ var _sdk = require("@sentecacommerce/sdk");
15
+
16
+ var _keys = require("../keys");
17
+
18
+ var useUniCreditOffersQuery = function useUniCreditOffersQuery(_ref) {
19
+ var sku = _ref.sku,
20
+ _ref$downPaymentCentA = _ref.downPaymentCentAmount,
21
+ downPaymentCentAmount = _ref$downPaymentCentA === void 0 ? 0 : _ref$downPaymentCentA;
22
+ return (0, _reactQuery.useQuery)((0, _keys.getUniCreditProductOffersKey)(sku), /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
23
+ return _regenerator["default"].wrap(function _callee$(_context) {
24
+ while (1) {
25
+ switch (_context.prev = _context.next) {
26
+ case 0:
27
+ _context.next = 2;
28
+ return (0, _sdk.MyPaymentsUnicreditCalculateForSKU)(sku, {
29
+ downPaymentCentAmount: downPaymentCentAmount
30
+ });
31
+
32
+ case 2:
33
+ return _context.abrupt("return", _context.sent);
34
+
35
+ case 3:
36
+ case "end":
37
+ return _context.stop();
38
+ }
39
+ }
40
+ }, _callee);
41
+ })));
42
+ };
43
+
44
+ exports.useUniCreditOffersQuery = useUniCreditOffersQuery;
45
+ //# sourceMappingURL=useUniCreditOffersQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/product/api/queries/useUniCreditOffersQuery.ts"],"names":["useUniCreditOffersQuery","sku","downPaymentCentAmount"],"mappings":";;;;;;;;;;;AACA;;AACA;;AACA;;AAEO,IAAMA,uBAAuB,GAAG,SAA1BA,uBAA0B,OAMjC;AAAA,MALJC,GAKI,QALJA,GAKI;AAAA,mCAJJC,qBAII;AAAA,MAJJA,qBAII,sCAJoB,CAIpB;AACJ,SAAO,0BACL,wCAA6BD,GAA7B,CADK,6FAEL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACQ,6CAAmCA,GAAnC,EAAwC;AAC5CC,cAAAA,qBAAqB,EAArBA;AAD4C,aAAxC,CADR;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAFK,GAAP;AAOD,CAdM","sourcesContent":["import React from 'react'\nimport { useQuery } from 'react-query'\nimport { MyPaymentsUnicreditCalculateForSKU } from '@sentecacommerce/sdk'\nimport { getUniCreditProductOffersKey } from '../keys'\n\nexport const useUniCreditOffersQuery = ({\n sku,\n downPaymentCentAmount = 0,\n}: {\n sku: string\n downPaymentCentAmount?: number\n}) => {\n return useQuery(\n getUniCreditProductOffersKey(sku),\n async () =>\n await MyPaymentsUnicreditCalculateForSKU(sku, {\n downPaymentCentAmount,\n })\n )\n}\n"],"file":"useUniCreditOffersQuery.js"}
@@ -9,4 +9,12 @@ Object.keys(_useBnpOffers).forEach(function (key) {
9
9
  if (key in exports && exports[key] === _useBnpOffers[key]) return;
10
10
  exports[key] = _useBnpOffers[key];
11
11
  });
12
+
13
+ var _useUniCreditOffers = require("./useUniCreditOffers");
14
+
15
+ Object.keys(_useUniCreditOffers).forEach(function (key) {
16
+ if (key === "default" || key === "__esModule") return;
17
+ if (key in exports && exports[key] === _useUniCreditOffers[key]) return;
18
+ exports[key] = _useUniCreditOffers[key];
19
+ });
12
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/product/hooks/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useBnpOffers'\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/product/hooks/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useBnpOffers'\nexport * from './useUniCreditOffers'\n"],"file":"index.js"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.useUniCreditOffers = void 0;
7
+
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _react = require("react");
11
+
12
+ var _queries = require("../api/queries");
13
+
14
+ var _index = require("../../index");
15
+
16
+ var useUniCreditOffers = function useUniCreditOffers(props) {
17
+ var _useConfigState, _useConfigState$price, _response$data2, _response$data2$;
18
+
19
+ var configLocale = (_useConfigState = (0, _index.useConfigState)()) == null ? void 0 : (_useConfigState$price = _useConfigState.price) == null ? void 0 : _useConfigState$price.locale;
20
+ var response = (0, _queries.useUniCreditOffersQuery)(props);
21
+ return (0, _react.useMemo)(function () {
22
+ var _response$data, _response$data$, _response$data$$offer;
23
+
24
+ return (0, _extends2["default"])({}, response, {
25
+ data: response == null ? void 0 : (_response$data = response.data) == null ? void 0 : (_response$data$ = _response$data[0]) == null ? void 0 : (_response$data$$offer = _response$data$.offers) == null ? void 0 : _response$data$$offer.map(function (offer) {
26
+ var _totalRepaymentAmount = (0, _index.decodePrice)(offer.totalRepaymentAmount);
27
+
28
+ var _correctDownPaymentAmount = (0, _index.decodePrice)(offer.correctDownPaymentAmount);
29
+
30
+ var _installmentAmount = (0, _index.decodePrice)(offer.installmentAmount);
31
+
32
+ var _processingFeeAmount = (0, _index.decodePrice)(offer.processingFeeAmount);
33
+
34
+ var totalRepaymentAmount = (0, _index.formatAsCurrency)({
35
+ price: _totalRepaymentAmount,
36
+ precision: offer.totalRepaymentAmount.fractionDigits,
37
+ currency: offer.totalRepaymentAmount.currencyCode,
38
+ locale: configLocale || 'en'
39
+ });
40
+ var correctDownPaymentAmount = (0, _index.formatAsCurrency)({
41
+ price: _correctDownPaymentAmount,
42
+ precision: offer.correctDownPaymentAmount.fractionDigits,
43
+ currency: offer.correctDownPaymentAmount.currencyCode,
44
+ locale: configLocale || 'en'
45
+ });
46
+ var installmentAmount = (0, _index.formatAsCurrency)({
47
+ price: _installmentAmount,
48
+ precision: offer.installmentAmount.fractionDigits,
49
+ currency: offer.installmentAmount.currencyCode,
50
+ locale: configLocale || 'en'
51
+ });
52
+ var processingFeeAmount = (0, _index.formatAsCurrency)({
53
+ price: _processingFeeAmount,
54
+ precision: offer.processingFeeAmount.fractionDigits,
55
+ currency: offer.processingFeeAmount.currencyCode,
56
+ locale: configLocale || 'en'
57
+ });
58
+ return (0, _extends2["default"])({}, offer, {
59
+ totalRepaymentAmount: totalRepaymentAmount,
60
+ correctDownPaymentAmount: correctDownPaymentAmount,
61
+ installmentAmount: installmentAmount,
62
+ processingFeeAmount: processingFeeAmount
63
+ });
64
+ }).sort(function (offer, offer2) {
65
+ return Number(offer.maturity) - Number(offer2.maturity);
66
+ })
67
+ });
68
+ }, [response == null ? void 0 : (_response$data2 = response.data) == null ? void 0 : (_response$data2$ = _response$data2[0]) == null ? void 0 : _response$data2$.offers]);
69
+ };
70
+
71
+ exports.useUniCreditOffers = useUniCreditOffers;
72
+ //# sourceMappingURL=useUniCreditOffers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/product/hooks/useUniCreditOffers.ts"],"names":["useUniCreditOffers","props","configLocale","price","locale","response","data","offers","map","offer","_totalRepaymentAmount","totalRepaymentAmount","_correctDownPaymentAmount","correctDownPaymentAmount","_installmentAmount","installmentAmount","_processingFeeAmount","processingFeeAmount","precision","fractionDigits","currency","currencyCode","sort","offer2","Number","maturity"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAG5B;AAAA;;AACJ,MAAMC,YAAoB,sBAAG,4BAAH,8CAAG,gBAAkBC,KAArB,qBAAG,sBAAyBC,MAAtD;AACA,MAAMC,QAAQ,GAAG,sCAAwBJ,KAAxB,CAAjB;AAEA,SAAO,oBACL;AAAA;;AAAA,yCACKI,QADL;AAEEC,MAAAA,IAAI,EAAED,QAAF,sCAAEA,QAAQ,CAAEC,IAAZ,wCAAE,eAAiB,CAAjB,CAAF,8CAAE,gBAAqBC,MAAvB,qBAAE,sBACFC,GADE,CACE,UAACC,KAAD,EAAW;AACf,YAAMC,qBAAqB,GAAG,wBAAYD,KAAK,CAACE,oBAAlB,CAA9B;;AACA,YAAMC,yBAAyB,GAAG,wBAChCH,KAAK,CAACI,wBAD0B,CAAlC;;AAGA,YAAMC,kBAAkB,GAAG,wBAAYL,KAAK,CAACM,iBAAlB,CAA3B;;AACA,YAAMC,oBAAoB,GAAG,wBAAYP,KAAK,CAACQ,mBAAlB,CAA7B;;AAEA,YAAMN,oBAAoB,GAAG,6BAAiB;AAC5CR,UAAAA,KAAK,EAAEO,qBADqC;AAE5CQ,UAAAA,SAAS,EAAET,KAAK,CAACE,oBAAN,CAA2BQ,cAFM;AAG5CC,UAAAA,QAAQ,EAAEX,KAAK,CAACE,oBAAN,CAA2BU,YAHO;AAI5CjB,UAAAA,MAAM,EAAEF,YAAY,IAAI;AAJoB,SAAjB,CAA7B;AAOA,YAAMW,wBAAwB,GAAG,6BAAiB;AAChDV,UAAAA,KAAK,EAAES,yBADyC;AAEhDM,UAAAA,SAAS,EAAET,KAAK,CAACI,wBAAN,CAA+BM,cAFM;AAGhDC,UAAAA,QAAQ,EAAEX,KAAK,CAACI,wBAAN,CAA+BQ,YAHO;AAIhDjB,UAAAA,MAAM,EAAEF,YAAY,IAAI;AAJwB,SAAjB,CAAjC;AAOA,YAAMa,iBAAiB,GAAG,6BAAiB;AACzCZ,UAAAA,KAAK,EAAEW,kBADkC;AAEzCI,UAAAA,SAAS,EAAET,KAAK,CAACM,iBAAN,CAAwBI,cAFM;AAGzCC,UAAAA,QAAQ,EAAEX,KAAK,CAACM,iBAAN,CAAwBM,YAHO;AAIzCjB,UAAAA,MAAM,EAAEF,YAAY,IAAI;AAJiB,SAAjB,CAA1B;AAOA,YAAMe,mBAAmB,GAAG,6BAAiB;AAC3Cd,UAAAA,KAAK,EAAEa,oBADoC;AAE3CE,UAAAA,SAAS,EAAET,KAAK,CAACQ,mBAAN,CAA0BE,cAFM;AAG3CC,UAAAA,QAAQ,EAAEX,KAAK,CAACQ,mBAAN,CAA0BI,YAHO;AAI3CjB,UAAAA,MAAM,EAAEF,YAAY,IAAI;AAJmB,SAAjB,CAA5B;AAOA,6CACKO,KADL;AAEEE,UAAAA,oBAAoB,EAApBA,oBAFF;AAGEE,UAAAA,wBAAwB,EAAxBA,wBAHF;AAIEE,UAAAA,iBAAiB,EAAjBA,iBAJF;AAKEE,UAAAA,mBAAmB,EAAnBA;AALF;AAOD,OA5CG,EA6CHK,IA7CG,CA8CF,UAACb,KAAD,EAAQc,MAAR;AAAA,eAAmBC,MAAM,CAACf,KAAK,CAACgB,QAAP,CAAN,GAAyBD,MAAM,CAACD,MAAM,CAACE,QAAR,CAAlD;AAAA,OA9CE;AAFR;AAAA,GADK,EAoDL,CAACpB,QAAD,uCAACA,QAAQ,CAAEC,IAAX,yCAAC,gBAAiB,CAAjB,CAAD,qBAAC,iBAAqBC,MAAtB,CApDK,CAAP;AAsDD,CA7DM","sourcesContent":["import React, { useMemo } from 'react'\nimport { useUniCreditOffersQuery } from '../api/queries'\nimport { decodePrice, formatAsCurrency, useConfigState } from '../../index'\n\nexport const useUniCreditOffers = (props: {\n sku: string\n downPaymentCentAmount?: number\n}) => {\n const configLocale: string = useConfigState()?.price?.locale\n const response = useUniCreditOffersQuery(props)\n\n return useMemo(\n () => ({\n ...response,\n data: response?.data?.[0]?.offers\n ?.map((offer) => {\n const _totalRepaymentAmount = decodePrice(offer.totalRepaymentAmount)\n const _correctDownPaymentAmount = decodePrice(\n offer.correctDownPaymentAmount\n )\n const _installmentAmount = decodePrice(offer.installmentAmount)\n const _processingFeeAmount = decodePrice(offer.processingFeeAmount)\n\n const totalRepaymentAmount = formatAsCurrency({\n price: _totalRepaymentAmount,\n precision: offer.totalRepaymentAmount.fractionDigits,\n currency: offer.totalRepaymentAmount.currencyCode,\n locale: configLocale || 'en',\n })\n\n const correctDownPaymentAmount = formatAsCurrency({\n price: _correctDownPaymentAmount,\n precision: offer.correctDownPaymentAmount.fractionDigits,\n currency: offer.correctDownPaymentAmount.currencyCode,\n locale: configLocale || 'en',\n })\n\n const installmentAmount = formatAsCurrency({\n price: _installmentAmount,\n precision: offer.installmentAmount.fractionDigits,\n currency: offer.installmentAmount.currencyCode,\n locale: configLocale || 'en',\n })\n\n const processingFeeAmount = formatAsCurrency({\n price: _processingFeeAmount,\n precision: offer.processingFeeAmount.fractionDigits,\n currency: offer.processingFeeAmount.currencyCode,\n locale: configLocale || 'en',\n })\n\n return {\n ...offer,\n totalRepaymentAmount,\n correctDownPaymentAmount,\n installmentAmount,\n processingFeeAmount,\n }\n })\n .sort(\n (offer, offer2) => Number(offer.maturity) - Number(offer2.maturity)\n ),\n }),\n [response?.data?.[0]?.offers]\n )\n}\n"],"file":"useUniCreditOffers.js"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _useToasts = require("./useToasts");
6
+
7
+ Object.keys(_useToasts).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _useToasts[key]) return;
10
+ exports[key] = _useToasts[key];
11
+ });
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/ui/hooks/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useToasts'\n"],"file":"index.js"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.useToasts = useToasts;
7
+ exports.ToastProvider = void 0;
8
+
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+
11
+ var _react = _interopRequireDefault(require("react"));
12
+
13
+ var _router = require("next/router");
14
+
15
+ var _uuid = require("uuid");
16
+
17
+ var _toastUtils = require("../toastUtils");
18
+
19
+ var ToastContext = /*#__PURE__*/_react["default"].createContext(undefined);
20
+
21
+ var ToastProvider = function ToastProvider(_ref) {
22
+ var children = _ref.children,
23
+ _ref$duration = _ref.duration,
24
+ duration = _ref$duration === void 0 ? 5000 : _ref$duration,
25
+ style = _ref.style;
26
+
27
+ var _React$useState = _react["default"].useState([]),
28
+ toasts = _React$useState[0],
29
+ setToasts = _React$useState[1];
30
+
31
+ var addToast = function addToast(content, options) {
32
+ setToasts([{
33
+ content: content,
34
+ options: options,
35
+ id: (0, _uuid.v4)()
36
+ }].concat(toasts));
37
+ };
38
+
39
+ var deleteToasts = _react["default"].useCallback(function () {
40
+ setToasts([]);
41
+ }, []);
42
+
43
+ var values = {
44
+ addToast: addToast
45
+ };
46
+ var router = (0, _router.useRouter)();
47
+
48
+ _react["default"].useEffect(function () {
49
+ deleteToasts();
50
+ }, [deleteToasts, router.asPath]);
51
+
52
+ return /*#__PURE__*/_react["default"].createElement(ToastContext.Provider, {
53
+ value: values
54
+ }, children, /*#__PURE__*/_react["default"].createElement("style", {
55
+ dangerouslySetInnerHTML: {
56
+ __html: "\n .Toasts--container {\n position: fixed;\n right: 0;\n transform: translateX(100%);\n top: 0;\n width: 25rem;\n display: flex;\n align-items: stretch;\n flex-direction: column;\n z-index: 99999;\n gap: 0.5rem;\n font-size: 0.8rem;\n padding: 1rem;\n }\n .Toast--left {\n width: 2rem;\n border-radius: 0.3rem 0 0 0.3rem;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n @keyframes showToast {\n 0% { opacity: 0; transform: translateX(0%);}\n 10% {opacity: 1; transform: translateX(-105%)}\n 90% {opacity: 1; transform: translateX(-105%)}\n 100% {opacity: 0; transform: translateX(0%);}\n }\n "
57
+ }
58
+ }), /*#__PURE__*/_react["default"].createElement("div", {
59
+ className: "Toasts--container"
60
+ }, toasts.map(function (toast) {
61
+ var _toast$options, _toast$options2, _toast$options3, _toast$options4, _toast$options5;
62
+
63
+ return /*#__PURE__*/_react["default"].createElement("div", {
64
+ key: toast.id,
65
+ className: "Toast",
66
+ style: (0, _extends2["default"])({}, (0, _toastUtils.defaultStyle)(duration))
67
+ }, /*#__PURE__*/_react["default"].createElement("div", {
68
+ className: "Toast--left",
69
+ style: {
70
+ color: (0, _toastUtils.getBackground)((_toast$options = toast.options) == null ? void 0 : _toast$options.appearance),
71
+ background: (0, _toastUtils.getMainColor)((_toast$options2 = toast.options) == null ? void 0 : _toast$options2.appearance)
72
+ }
73
+ }, (0, _toastUtils.getIcon)((_toast$options3 = toast.options) == null ? void 0 : _toast$options3.appearance)), /*#__PURE__*/_react["default"].createElement("div", {
74
+ className: "Toast--content",
75
+ style: (0, _extends2["default"])({
76
+ padding: '8px 12px',
77
+ width: '100%',
78
+ background: (0, _toastUtils.getBackground)((_toast$options4 = toast.options) == null ? void 0 : _toast$options4.appearance),
79
+ color: (0, _toastUtils.getTextColor)((_toast$options5 = toast.options) == null ? void 0 : _toast$options5.appearance)
80
+ }, style)
81
+ }, toast.content));
82
+ })));
83
+ };
84
+
85
+ exports.ToastProvider = ToastProvider;
86
+
87
+ function useToasts() {
88
+ var context = _react["default"].useContext(ToastContext);
89
+
90
+ if (context === undefined) {
91
+ throw new Error('useToasts must be used within ToastProvider');
92
+ }
93
+
94
+ return context;
95
+ }
96
+ //# sourceMappingURL=useToasts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/ui/hooks/useToasts.tsx"],"names":["ToastContext","React","createContext","undefined","ToastProvider","children","duration","style","useState","toasts","setToasts","addToast","content","options","id","deleteToasts","useCallback","values","router","useEffect","asPath","__html","map","toast","color","appearance","background","padding","width","useToasts","context","useContext","Error"],"mappings":";;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAuBA,IAAMA,YAAY,gBAAGC,kBAAMC,aAAN,CAA6CC,SAA7C,CAArB;;AAEO,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAQvB;AAAA,MAPJC,QAOI,QAPJA,QAOI;AAAA,2BANJC,QAMI;AAAA,MANJA,QAMI,8BANO,IAMP;AAAA,MALJC,KAKI,QALJA,KAKI;;AAAA,wBACwBN,kBAAMO,QAAN,CAAwB,EAAxB,CADxB;AAAA,MACGC,MADH;AAAA,MACWC,SADX;;AAGJ,MAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,OAAD,EAAkBC,OAAlB,EAA6C;AAC5DH,IAAAA,SAAS,EAAE;AAAEE,MAAAA,OAAO,EAAPA,OAAF;AAAWC,MAAAA,OAAO,EAAPA,OAAX;AAAoBC,MAAAA,EAAE,EAAE;AAAxB,KAAF,SAAuCL,MAAvC,EAAT;AACD,GAFD;;AAIA,MAAMM,YAAY,GAAGd,kBAAMe,WAAN,CAAkB,YAAM;AAC3CN,IAAAA,SAAS,CAAC,EAAD,CAAT;AACD,GAFoB,EAElB,EAFkB,CAArB;;AAIA,MAAMO,MAAM,GAAG;AACbN,IAAAA,QAAQ,EAARA;AADa,GAAf;AAIA,MAAMO,MAAM,GAAG,wBAAf;;AAEAjB,oBAAMkB,SAAN,CAAgB,YAAM;AACpBJ,IAAAA,YAAY;AACb,GAFD,EAEG,CAACA,YAAD,EAAeG,MAAM,CAACE,MAAtB,CAFH;;AAIA,sBACE,gCAAC,YAAD,CAAc,QAAd;AAAuB,IAAA,KAAK,EAAEH;AAA9B,KACGZ,QADH,eAEE;AACE,IAAA,uBAAuB,EAAE;AACvBgB,MAAAA,MAAM;AADiB;AAD3B,IAFF,eAoCE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGZ,MAAM,CAACa,GAAP,CAAW,UAACC,KAAD,EAAW;AAAA;;AACrB,wBACE;AACE,MAAA,GAAG,EAAEA,KAAK,CAACT,EADb;AAEE,MAAA,SAAS,EAAC,OAFZ;AAGE,MAAA,KAAK,gCACA,8BAAaR,QAAb,CADA;AAHP,oBAOE;AACE,MAAA,SAAS,EAAC,aADZ;AAEE,MAAA,KAAK,EAAE;AACLkB,QAAAA,KAAK,EAAE,iDAAcD,KAAK,CAACV,OAApB,qBAAc,eAAeY,UAA7B,CADF;AAELC,QAAAA,UAAU,EAAE,iDAAaH,KAAK,CAACV,OAAnB,qBAAa,gBAAeY,UAA5B;AAFP;AAFT,OAOG,4CAAQF,KAAK,CAACV,OAAd,qBAAQ,gBAAeY,UAAvB,CAPH,CAPF,eAgBE;AACE,MAAA,SAAS,EAAC,gBADZ;AAEE,MAAA,KAAK;AACHE,QAAAA,OAAO,EAAE,UADN;AAEHC,QAAAA,KAAK,EAAE,MAFJ;AAGHF,QAAAA,UAAU,EAAE,kDAAcH,KAAK,CAACV,OAApB,qBAAc,gBAAeY,UAA7B,CAHT;AAIHD,QAAAA,KAAK,EAAE,iDAAaD,KAAK,CAACV,OAAnB,qBAAa,gBAAeY,UAA5B;AAJJ,SAKAlB,KALA;AAFP,OAUGgB,KAAK,CAACX,OAVT,CAhBF,CADF;AA+BD,GAhCA,CADH,CApCF,CADF;AA0ED,CAvGM;;;;AAyGA,SAASiB,SAAT,GAAqB;AAC1B,MAAMC,OAAO,GAAG7B,kBAAM8B,UAAN,CAAiB/B,YAAjB,CAAhB;;AAEA,MAAI8B,OAAO,KAAK3B,SAAhB,EAA2B;AACzB,UAAM,IAAI6B,KAAJ,CAAU,6CAAV,CAAN;AACD;;AAED,SAAOF,OAAP;AACD","sourcesContent":["import React from 'react'\nimport { useRouter } from 'next/router'\nimport { v4 as uuid } from 'uuid'\nimport {\n getMainColor,\n getIcon,\n getBackground,\n defaultStyle,\n getTextColor,\n} from '../toastUtils'\n\nexport interface ToastOptions {\n appearance?: 'error' | 'info' | 'success' | 'warning'\n autoDismiss?: boolean\n}\n\nexport interface Toast {\n content: string\n options?: ToastOptions\n id: string\n}\n\ntype ToastValues = {\n addToast: (content: string, options?: ToastOptions) => void\n}\n\nconst ToastContext = React.createContext<ToastValues | undefined>(undefined)\n\nexport const ToastProvider = ({\n children,\n duration = 5000,\n style,\n}: {\n children: React.ReactNode\n duration?: number\n style?: object\n}) => {\n const [toasts, setToasts] = React.useState<Toast[]>([])\n\n const addToast = (content: string, options?: ToastOptions) => {\n setToasts([{ content, options, id: uuid() }, ...toasts])\n }\n\n const deleteToasts = React.useCallback(() => {\n setToasts([])\n }, [])\n\n const values = {\n addToast,\n }\n\n const router = useRouter()\n\n React.useEffect(() => {\n deleteToasts()\n }, [deleteToasts, router.asPath])\n\n return (\n <ToastContext.Provider value={values}>\n {children}\n <style\n dangerouslySetInnerHTML={{\n __html: `\n .Toasts--container {\n position: fixed;\n right: 0;\n transform: translateX(100%);\n top: 0;\n width: 25rem;\n display: flex;\n align-items: stretch;\n flex-direction: column;\n z-index: 99999;\n gap: 0.5rem;\n font-size: 0.8rem;\n padding: 1rem;\n }\n .Toast--left {\n width: 2rem;\n border-radius: 0.3rem 0 0 0.3rem;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n @keyframes showToast {\n 0% { opacity: 0; transform: translateX(0%);}\n 10% {opacity: 1; transform: translateX(-105%)}\n 90% {opacity: 1; transform: translateX(-105%)}\n 100% {opacity: 0; transform: translateX(0%);}\n }\n `,\n }}\n />\n <div className=\"Toasts--container\">\n {toasts.map((toast) => {\n return (\n <div\n key={toast.id}\n className=\"Toast\"\n style={{\n ...defaultStyle(duration),\n }}\n >\n <div\n className=\"Toast--left\"\n style={{\n color: getBackground(toast.options?.appearance),\n background: getMainColor(toast.options?.appearance),\n }}\n >\n {getIcon(toast.options?.appearance)}\n </div>\n <div\n className=\"Toast--content\"\n style={{\n padding: '8px 12px',\n width: '100%',\n background: getBackground(toast.options?.appearance),\n color: getTextColor(toast.options?.appearance),\n ...style,\n }}\n >\n {toast.content}\n </div>\n </div>\n )\n })}\n </div>\n </ToastContext.Provider>\n )\n}\n\nexport function useToasts() {\n const context = React.useContext(ToastContext)\n\n if (context === undefined) {\n throw new Error('useToasts must be used within ToastProvider')\n }\n\n return context\n}\n"],"file":"useToasts.js"}
@@ -9,4 +9,12 @@ Object.keys(_components).forEach(function (key) {
9
9
  if (key in exports && exports[key] === _components[key]) return;
10
10
  exports[key] = _components[key];
11
11
  });
12
+
13
+ var _hooks = require("./hooks");
14
+
15
+ Object.keys(_hooks).forEach(function (key) {
16
+ if (key === "default" || key === "__esModule") return;
17
+ if (key in exports && exports[key] === _hooks[key]) return;
18
+ exports[key] = _hooks[key];
19
+ });
12
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ui/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './components'"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/ui/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './components'\nexport * from './hooks'\n"],"file":"index.js"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.ErrorIcon = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var ErrorIcon = function ErrorIcon() {
11
+ return /*#__PURE__*/_react["default"].createElement("svg", {
12
+ "aria-hidden": "true",
13
+ height: "16",
14
+ width: "12",
15
+ viewBox: "0 0 12 16",
16
+ style: {
17
+ fill: 'currentcolor'
18
+ }
19
+ }, /*#__PURE__*/_react["default"].createElement("path", {
20
+ "fill-rule": "evenodd",
21
+ d: "M5.05.01c.81 2.17.41 3.38-.52 4.31C3.55 5.37 1.98 6.15.9 7.68c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.01 8.68 2.15 5.05.02L5.03 0l.02.01z"
22
+ }));
23
+ };
24
+
25
+ exports.ErrorIcon = ErrorIcon;
26
+ //# sourceMappingURL=ErrorIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/ui/toastUtils/ErrorIcon.tsx"],"names":["ErrorIcon","fill"],"mappings":";;;;;;;AAAA;;AACO,IAAMA,SAAS,GAAG,SAAZA,SAAY,GAAM;AAC7B,sBACE;AACE,mBAAY,MADd;AAEE,IAAA,MAAM,EAAC,IAFT;AAGE,IAAA,KAAK,EAAC,IAHR;AAIE,IAAA,OAAO,EAAC,WAJV;AAKE,IAAA,KAAK,EAAE;AACLC,MAAAA,IAAI,EAAE;AADD;AALT,kBASE;AACE,iBAAU,SADZ;AAEE,IAAA,CAAC,EAAC;AAFJ,IATF,CADF;AAgBD,CAjBM","sourcesContent":["import React from 'react'\nexport const ErrorIcon = () => {\n return (\n <svg\n aria-hidden=\"true\"\n height=\"16\"\n width=\"12\"\n viewBox=\"0 0 12 16\"\n style={{\n fill: 'currentcolor',\n }}\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M5.05.01c.81 2.17.41 3.38-.52 4.31C3.55 5.37 1.98 6.15.9 7.68c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.01 8.68 2.15 5.05.02L5.03 0l.02.01z\"\n ></path>\n </svg>\n )\n}\n"],"file":"ErrorIcon.js"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.InfoIcon = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var InfoIcon = function InfoIcon() {
11
+ return /*#__PURE__*/_react["default"].createElement("svg", {
12
+ "aria-hidden": "true",
13
+ height: "16",
14
+ width: "14",
15
+ viewBox: "0 0 14 16",
16
+ style: {
17
+ fill: 'currentcolor'
18
+ }
19
+ }, /*#__PURE__*/_react["default"].createElement("path", {
20
+ "fill-rule": "evenodd",
21
+ d: "M6.3 5.71a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 8.01c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V8v.01zM7 2.32C3.86 2.32 1.3 4.86 1.3 8c0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 1c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"
22
+ }));
23
+ };
24
+
25
+ exports.InfoIcon = InfoIcon;
26
+ //# sourceMappingURL=InfoIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/ui/toastUtils/InfoIcon.tsx"],"names":["InfoIcon","fill"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,GAAM;AAC5B,sBACE;AACE,mBAAY,MADd;AAEE,IAAA,MAAM,EAAC,IAFT;AAGE,IAAA,KAAK,EAAC,IAHR;AAIE,IAAA,OAAO,EAAC,WAJV;AAKE,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AALT,kBAOE;AACE,iBAAU,SADZ;AAEE,IAAA,CAAC,EAAC;AAFJ,IAPF,CADF;AAcD,CAfM","sourcesContent":["import React from 'react'\n\nexport const InfoIcon = () => {\n return (\n <svg\n aria-hidden=\"true\"\n height=\"16\"\n width=\"14\"\n viewBox=\"0 0 14 16\"\n style={{ fill: 'currentcolor' }}\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M6.3 5.71a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 8.01c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V8v.01zM7 2.32C3.86 2.32 1.3 4.86 1.3 8c0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 1c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z\"\n ></path>\n </svg>\n )\n}\n"],"file":"InfoIcon.js"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.SuccessIcon = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var SuccessIcon = function SuccessIcon() {
11
+ return /*#__PURE__*/_react["default"].createElement("svg", {
12
+ "aria-hidden": "true",
13
+ height: "16",
14
+ width: "12",
15
+ viewBox: "0 0 12 16",
16
+ style: {
17
+ fill: 'currentcolor'
18
+ }
19
+ }, /*#__PURE__*/_react["default"].createElement("path", {
20
+ "fill-rule": "evenodd",
21
+ d: "M12 5.5l-8 8-4-4L1.5 8 4 10.5 10.5 4 12 5.5z"
22
+ }));
23
+ };
24
+
25
+ exports.SuccessIcon = SuccessIcon;
26
+ //# sourceMappingURL=SuccessIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/ui/toastUtils/SuccessIcon.tsx"],"names":["SuccessIcon","fill"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,WAAW,GAAG,SAAdA,WAAc,GAAM;AAC/B,sBACE;AACE,mBAAY,MADd;AAEE,IAAA,MAAM,EAAC,IAFT;AAGE,IAAA,KAAK,EAAC,IAHR;AAIE,IAAA,OAAO,EAAC,WAJV;AAKE,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AALT,kBAOE;AACE,iBAAU,SADZ;AAEE,IAAA,CAAC,EAAC;AAFJ,IAPF,CADF;AAcD,CAfM","sourcesContent":["import React from 'react'\n\nexport const SuccessIcon = () => {\n return (\n <svg\n aria-hidden=\"true\"\n height=\"16\"\n width=\"12\"\n viewBox=\"0 0 12 16\"\n style={{ fill: 'currentcolor' }}\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M12 5.5l-8 8-4-4L1.5 8 4 10.5 10.5 4 12 5.5z\"\n ></path>\n </svg>\n )\n}\n"],"file":"SuccessIcon.js"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.WarningIcon = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var WarningIcon = function WarningIcon() {
11
+ return /*#__PURE__*/_react["default"].createElement("svg", {
12
+ "aria-hidden": "true",
13
+ height: "16",
14
+ width: "16",
15
+ viewBox: "0 0 16 16",
16
+ style: {
17
+ fill: 'currentcolor'
18
+ }
19
+ }, /*#__PURE__*/_react["default"].createElement("path", {
20
+ "fill-rule": "evenodd",
21
+ d: "M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"
22
+ }));
23
+ };
24
+
25
+ exports.WarningIcon = WarningIcon;
26
+ //# sourceMappingURL=WarningIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/ui/toastUtils/WarningIcon.tsx"],"names":["WarningIcon","fill"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,WAAW,GAAG,SAAdA,WAAc,GAAM;AAC/B,sBACE;AACE,mBAAY,MADd;AAEE,IAAA,MAAM,EAAC,IAFT;AAGE,IAAA,KAAK,EAAC,IAHR;AAIE,IAAA,OAAO,EAAC,WAJV;AAKE,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AALT,kBAOE;AACE,iBAAU,SADZ;AAEE,IAAA,CAAC,EAAC;AAFJ,IAPF,CADF;AAcD,CAfM","sourcesContent":["import React from 'react'\n\nexport const WarningIcon = () => {\n return (\n <svg\n aria-hidden=\"true\"\n height=\"16\"\n width=\"16\"\n viewBox=\"0 0 16 16\"\n style={{ fill: 'currentcolor' }}\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z\"\n ></path>\n </svg>\n )\n}\n"],"file":"WarningIcon.js"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _ErrorIcon = require("./ErrorIcon");
6
+
7
+ Object.keys(_ErrorIcon).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _ErrorIcon[key]) return;
10
+ exports[key] = _ErrorIcon[key];
11
+ });
12
+
13
+ var _SuccessIcon = require("./SuccessIcon");
14
+
15
+ Object.keys(_SuccessIcon).forEach(function (key) {
16
+ if (key === "default" || key === "__esModule") return;
17
+ if (key in exports && exports[key] === _SuccessIcon[key]) return;
18
+ exports[key] = _SuccessIcon[key];
19
+ });
20
+
21
+ var _utils = require("./utils");
22
+
23
+ Object.keys(_utils).forEach(function (key) {
24
+ if (key === "default" || key === "__esModule") return;
25
+ if (key in exports && exports[key] === _utils[key]) return;
26
+ exports[key] = _utils[key];
27
+ });
28
+
29
+ var _InfoIcon = require("./InfoIcon");
30
+
31
+ Object.keys(_InfoIcon).forEach(function (key) {
32
+ if (key === "default" || key === "__esModule") return;
33
+ if (key in exports && exports[key] === _InfoIcon[key]) return;
34
+ exports[key] = _InfoIcon[key];
35
+ });
36
+
37
+ var _WarningIcon = require("./WarningIcon");
38
+
39
+ Object.keys(_WarningIcon).forEach(function (key) {
40
+ if (key === "default" || key === "__esModule") return;
41
+ if (key in exports && exports[key] === _WarningIcon[key]) return;
42
+ exports[key] = _WarningIcon[key];
43
+ });
44
+ //# sourceMappingURL=index.js.map