@zonos/elements 1.3.218 → 1.3.220

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 (395) hide show
  1. package/dist/cjs/buildCartItemsByTempCart-309fcebf.js +28 -0
  2. package/dist/cjs/{cart-c54d05ce.js → cart-9a9ae4b9.js} +90 -47
  3. package/dist/cjs/cleanHtmlMarkdown-577d0a77.js +999 -0
  4. package/dist/cjs/index.cjs.js +19 -9
  5. package/dist/cjs/isCollectMobileTablet-7a9413e3.js +175 -0
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/cjs/localization-0169b27d.js +738 -0
  8. package/dist/cjs/{paypal-d36b5dd1.js → paypal-9ee374a0.js} +12 -8
  9. package/dist/cjs/placeTestOrder-0dfff170.js +93 -0
  10. package/dist/cjs/{localization-ab7e1902.js → translationStore-0c67178f.js} +1023 -734
  11. package/dist/cjs/zonos-address_11.cjs.entry.js +116 -74
  12. package/dist/cjs/zonos-badge.cjs.entry.js +3 -3
  13. package/dist/cjs/{zonos-banner.cjs.entry.js → zonos-banner_2.cjs.entry.js} +40 -0
  14. package/dist/cjs/zonos-button_3.cjs.entry.js +3 -3
  15. package/dist/cjs/{zonos-cart-items_14.cjs.entry.js → zonos-cart-items_12.cjs.entry.js} +70 -1292
  16. package/dist/cjs/zonos-checkout.cjs.entry.js +25 -48
  17. package/dist/cjs/zonos-collapse.cjs.entry.js +2 -2
  18. package/dist/cjs/zonos-collect-cart-items_3.cjs.entry.js +92 -0
  19. package/dist/cjs/zonos-collect-finish_6.cjs.entry.js +811 -0
  20. package/dist/cjs/zonos-collect.cjs.entry.js +468 -0
  21. package/dist/cjs/zonos-component.cjs.entry.js +1 -1
  22. package/dist/cjs/zonos-confirm-dialog_2.cjs.entry.js +168 -0
  23. package/dist/cjs/zonos-controller.cjs.entry.js +84 -28
  24. package/dist/cjs/zonos-country-flag.cjs.entry.js +2 -1
  25. package/dist/cjs/zonos-country-select_4.cjs.entry.js +11 -10
  26. package/dist/cjs/zonos-elements.cjs.js +1 -1
  27. package/dist/cjs/zonos-empty-state-payment_4.cjs.entry.js +23 -5
  28. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +34 -33
  29. package/dist/cjs/zonos-hello.cjs.entry.js +8 -7
  30. package/dist/cjs/zonos-input.cjs.entry.js +4 -4
  31. package/dist/cjs/zonos-language-select_2.cjs.entry.js +6 -5
  32. package/dist/cjs/zonos-link.cjs.entry.js +1 -1
  33. package/dist/cjs/zonos-logo.cjs.entry.js +2 -2
  34. package/dist/cjs/zonos-stripe-input.cjs.entry.js +8 -5
  35. package/dist/cjs/zonos-text.cjs.entry.js +1 -1
  36. package/dist/cjs/zonos-toggle.cjs.entry.js +2 -2
  37. package/dist/cjs/zonos-tooltip.cjs.entry.js +2 -2
  38. package/dist/cjs/zonos-v-stack.cjs.entry.js +2 -2
  39. package/dist/collection/collection-manifest.json +10 -0
  40. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +2 -2
  41. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +5 -1
  42. package/dist/collection/components/checkout/zonos-collect/assets/ChevronDownIcon.svg +1 -0
  43. package/dist/collection/components/checkout/zonos-collect/zonos-collect-cart-items/assets/empty-item.jpeg +0 -0
  44. package/dist/collection/components/checkout/zonos-collect/zonos-collect-cart-items/zonos-collect-cart-items.css +60 -0
  45. package/dist/collection/components/checkout/zonos-collect/zonos-collect-cart-items/zonos-collect-cart-items.js +39 -0
  46. package/dist/collection/components/checkout/zonos-collect/zonos-collect-finish/assets/RemoveIcon.svg +1 -0
  47. package/dist/collection/components/checkout/zonos-collect/zonos-collect-finish/assets/SuccessIcon.svg +1 -0
  48. package/dist/collection/components/checkout/zonos-collect/zonos-collect-finish/zonos-collect-finish.css +90 -0
  49. package/dist/collection/components/checkout/zonos-collect/zonos-collect-finish/zonos-collect-finish.js +405 -0
  50. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/assets/chevronDownIcon.svg +1 -0
  51. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/assets/globe.svg +3 -0
  52. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/assets/zonosIconDark.svg +10 -0
  53. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/assets/zonosIconLight.svg +10 -0
  54. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/assets/zonosWordmark.svg +7 -0
  55. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/zonos-collect-footer.css +152 -0
  56. package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/zonos-collect-footer.js +164 -0
  57. package/dist/collection/components/checkout/zonos-collect/zonos-collect-order-details/assets/ChevronDownIcon.svg +1 -0
  58. package/dist/collection/components/checkout/zonos-collect/zonos-collect-order-details/assets/ChevronUpIcon.svg +1 -0
  59. package/dist/collection/components/checkout/zonos-collect/zonos-collect-order-details/zonos-collect-order-details.css +109 -0
  60. package/dist/collection/components/checkout/zonos-collect/zonos-collect-order-details/zonos-collect-order-details.js +194 -0
  61. package/dist/collection/components/checkout/zonos-collect/zonos-collect-payment/assets/CheckmarkLineIcon.svg +1 -0
  62. package/dist/collection/components/checkout/zonos-collect/zonos-collect-payment/assets/RemoveLineIcon.svg +1 -0
  63. package/dist/collection/components/checkout/zonos-collect/zonos-collect-payment/zonos-collect-payment.css +98 -0
  64. package/dist/collection/components/checkout/zonos-collect/zonos-collect-payment/zonos-collect-payment.js +369 -0
  65. package/dist/collection/components/checkout/zonos-collect/zonos-collect-review/zonos-collect-review.css +71 -0
  66. package/dist/collection/components/checkout/zonos-collect/zonos-collect-review/zonos-collect-review.js +151 -0
  67. package/dist/collection/components/checkout/zonos-collect/zonos-collect-subtotal/zonos-collect-subtotal.css +78 -0
  68. package/dist/collection/components/checkout/zonos-collect/zonos-collect-subtotal/zonos-collect-subtotal.js +115 -0
  69. package/dist/collection/components/checkout/zonos-collect/zonos-collect.css +349 -0
  70. package/dist/collection/components/checkout/zonos-collect/zonos-collect.js +547 -0
  71. package/dist/collection/components/common/zonos-badge/zonos-badge.js +3 -3
  72. package/dist/collection/components/common/zonos-button/zonos-button.js +3 -3
  73. package/dist/collection/components/common/zonos-card/zonos-card.js +4 -4
  74. package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +3 -3
  75. package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +3 -3
  76. package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +2 -2
  77. package/dist/collection/components/common/zonos-confirm-dialog/zonos-confirm-dialog.js +3 -3
  78. package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +3 -3
  79. package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +2 -2
  80. package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +3 -3
  81. package/dist/collection/components/common/zonos-h-stack/zonos-h-stack.css +38 -0
  82. package/dist/collection/components/common/zonos-h-stack/zonos-h-stack.js +63 -0
  83. package/dist/collection/components/common/zonos-input/zonos-input.js +4 -4
  84. package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +2 -2
  85. package/dist/collection/components/common/zonos-link/zonos-link.js +1 -1
  86. package/dist/collection/components/common/zonos-loading-overlay/zonos-loading-overlay.js +1 -1
  87. package/dist/collection/components/common/zonos-logo/zonos-logo.js +2 -2
  88. package/dist/collection/components/common/zonos-rest-state/zonos-rest-state.js +3 -3
  89. package/dist/collection/components/common/zonos-select-dialog-header/zonos-select-dialog-header.js +2 -2
  90. package/dist/collection/components/common/zonos-skeleton/assets/RemoveLineIcon.svg +3 -0
  91. package/dist/collection/components/common/zonos-skeleton/zonos-skeleton.css +40 -0
  92. package/dist/collection/components/common/zonos-skeleton/zonos-skeleton.js +102 -0
  93. package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.js +8 -5
  94. package/dist/collection/components/common/zonos-stripe-phone-input/zonos-stripe-phone-input.js +5 -5
  95. package/dist/collection/components/common/zonos-stripe-select/zonos-stripe-select.js +5 -5
  96. package/dist/collection/components/common/zonos-text/zonos-text.css +1 -0
  97. package/dist/collection/components/common/zonos-toggle/zonos-toggle.js +2 -2
  98. package/dist/collection/components/common/zonos-tooltip/zonos-tooltip.js +2 -2
  99. package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +2 -2
  100. package/dist/collection/components/common/zonos-virtual-scroll/zonos-virtual-scroll.js +2 -2
  101. package/dist/collection/components/component-template/zonos-component/zonos-component.js +1 -1
  102. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +2 -2
  103. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +4 -4
  104. package/dist/collection/components/main/zonos-controller.js +91 -25
  105. package/dist/collection/components/paypal/zonos-paypal-payment.js +13 -2
  106. package/dist/collection/components/store/checkout/cart.js +36 -15
  107. package/dist/collection/components/store/checkout/collect.js +160 -0
  108. package/dist/collection/components/store/checkout/paypal.js +4 -2
  109. package/dist/collection/components/store/checkout/stripe.js +31 -12
  110. package/dist/collection/components/store/translationStore/strings.arabic.js +51 -0
  111. package/dist/collection/components/store/translationStore/strings.base.js +51 -0
  112. package/dist/collection/components/store/translationStore/strings.chinese.js +51 -0
  113. package/dist/collection/components/store/translationStore/strings.danish.js +51 -0
  114. package/dist/collection/components/store/translationStore/strings.dutch.js +51 -0
  115. package/dist/collection/components/store/translationStore/strings.french.js +51 -0
  116. package/dist/collection/components/store/translationStore/strings.german.js +51 -0
  117. package/dist/collection/components/store/translationStore/strings.hebrew.js +51 -0
  118. package/dist/collection/components/store/translationStore/strings.indonesian.js +51 -0
  119. package/dist/collection/components/store/translationStore/strings.italian.js +51 -0
  120. package/dist/collection/components/store/translationStore/strings.japanese.js +51 -0
  121. package/dist/collection/components/store/translationStore/strings.korean.js +51 -0
  122. package/dist/collection/components/store/translationStore/strings.norwegian.js +51 -0
  123. package/dist/collection/components/store/translationStore/strings.polish.js +51 -0
  124. package/dist/collection/components/store/translationStore/strings.portuguese.js +51 -0
  125. package/dist/collection/components/store/translationStore/strings.russian.js +51 -0
  126. package/dist/collection/components/store/translationStore/strings.spanish.js +51 -0
  127. package/dist/collection/components/store/translationStore/strings.swedish.js +51 -0
  128. package/dist/collection/components/store/translationStore/strings.turkish.js +51 -0
  129. package/dist/collection/components/store/translationStore/strings.vietnamese.js +51 -0
  130. package/dist/collection/components/store/translationStore.js +2 -1
  131. package/dist/collection/components/stripe/zonos-address/zonos-address.js +35 -18
  132. package/dist/collection/components/stripe/zonos-custom-address/zonos-address-suggestions/zonos-address-suggestions.js +2 -2
  133. package/dist/collection/components/stripe/zonos-custom-address/zonos-custom-address.js +2 -2
  134. package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +29 -4
  135. package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +9 -1
  136. package/dist/collection/components/utils/checkout/initCollect.js +15 -0
  137. package/dist/collection/components/utils/checkout/isCollectMobileTablet.js +10 -0
  138. package/dist/collection/components/utils/checkout/renderCheckoutCurrency.js +10 -1
  139. package/dist/collection/components/utils/renderFallback.js +7 -0
  140. package/dist/collection/scripts/_getZonosQaUrl.js +5 -1
  141. package/dist/collection/scripts/_zonosBase.js +7 -1
  142. package/dist/collection/types/checkout/api/PartyInfo.js +1 -0
  143. package/dist/collection/types/generated/graphql.internal.types.js +113 -0
  144. package/dist/collection/types/index.js +1 -0
  145. package/dist/esm/buildCartItemsByTempCart-c4488f73.js +26 -0
  146. package/dist/esm/{cart-bb0ee971.js → cart-b2dd578c.js} +68 -27
  147. package/dist/esm/cleanHtmlMarkdown-b5b18743.js +997 -0
  148. package/dist/esm/index.js +19 -9
  149. package/dist/esm/isCollectMobileTablet-7f9a5e2b.js +168 -0
  150. package/dist/esm/loader.js +1 -1
  151. package/dist/esm/localization-d7125e4e.js +719 -0
  152. package/dist/esm/{paypal-bd4520eb.js → paypal-555bbf1e.js} +7 -4
  153. package/dist/esm/placeTestOrder-2d67c1a9.js +90 -0
  154. package/dist/esm/{localization-d8326254.js → translationStore-13502f49.js} +1023 -718
  155. package/dist/esm/zonos-address_11.entry.js +85 -43
  156. package/dist/esm/zonos-badge.entry.js +3 -3
  157. package/dist/esm/{zonos-banner.entry.js → zonos-banner_2.entry.js} +40 -1
  158. package/dist/esm/zonos-button_3.entry.js +3 -3
  159. package/dist/esm/{zonos-cart-items_14.entry.js → zonos-cart-items_12.entry.js} +20 -1240
  160. package/dist/esm/zonos-checkout.entry.js +6 -29
  161. package/dist/esm/zonos-collapse.entry.js +2 -2
  162. package/dist/esm/zonos-collect-cart-items_3.entry.js +86 -0
  163. package/dist/esm/zonos-collect-finish_6.entry.js +802 -0
  164. package/dist/esm/zonos-collect.entry.js +464 -0
  165. package/dist/esm/zonos-component.entry.js +1 -1
  166. package/dist/esm/zonos-confirm-dialog_2.entry.js +163 -0
  167. package/dist/esm/zonos-controller.entry.js +84 -28
  168. package/dist/esm/zonos-country-flag.entry.js +2 -1
  169. package/dist/esm/zonos-country-select_4.entry.js +11 -10
  170. package/dist/esm/zonos-elements.js +1 -1
  171. package/dist/esm/zonos-empty-state-payment_4.entry.js +23 -5
  172. package/dist/esm/zonos-hello-dialog.entry.js +6 -5
  173. package/dist/esm/zonos-hello.entry.js +2 -1
  174. package/dist/esm/zonos-input.entry.js +4 -4
  175. package/dist/esm/zonos-language-select_2.entry.js +6 -5
  176. package/dist/esm/zonos-link.entry.js +1 -1
  177. package/dist/esm/zonos-logo.entry.js +2 -2
  178. package/dist/esm/zonos-stripe-input.entry.js +9 -6
  179. package/dist/esm/zonos-text.entry.js +1 -1
  180. package/dist/esm/zonos-toggle.entry.js +2 -2
  181. package/dist/esm/zonos-tooltip.entry.js +2 -2
  182. package/dist/esm/zonos-v-stack.entry.js +2 -2
  183. package/dist/esm-es5/buildCartItemsByTempCart-c4488f73.js +1 -0
  184. package/dist/esm-es5/cart-b2dd578c.js +1 -0
  185. package/dist/esm-es5/cleanHtmlMarkdown-b5b18743.js +1 -0
  186. package/dist/esm-es5/index.js +1 -1
  187. package/dist/esm-es5/isCollectMobileTablet-7f9a5e2b.js +1 -0
  188. package/dist/esm-es5/loader.js +1 -1
  189. package/dist/esm-es5/localization-d7125e4e.js +1 -0
  190. package/dist/esm-es5/paypal-555bbf1e.js +17 -0
  191. package/dist/esm-es5/placeTestOrder-2d67c1a9.js +1 -0
  192. package/dist/esm-es5/translationStore-13502f49.js +1 -0
  193. package/dist/esm-es5/zonos-address_11.entry.js +1 -1
  194. package/dist/esm-es5/zonos-badge.entry.js +1 -1
  195. package/dist/esm-es5/zonos-banner_2.entry.js +1 -0
  196. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  197. package/dist/esm-es5/zonos-cart-items_12.entry.js +1 -0
  198. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  199. package/dist/esm-es5/zonos-collapse.entry.js +1 -1
  200. package/dist/esm-es5/zonos-collect-cart-items_3.entry.js +1 -0
  201. package/dist/esm-es5/zonos-collect-finish_6.entry.js +1 -0
  202. package/dist/esm-es5/zonos-collect.entry.js +1 -0
  203. package/dist/esm-es5/zonos-component.entry.js +1 -1
  204. package/dist/esm-es5/zonos-confirm-dialog_2.entry.js +1 -0
  205. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  206. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  207. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  208. package/dist/esm-es5/zonos-elements.js +1 -1
  209. package/dist/esm-es5/zonos-empty-state-payment_4.entry.js +1 -1
  210. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  211. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  212. package/dist/esm-es5/zonos-input.entry.js +1 -1
  213. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  214. package/dist/esm-es5/zonos-link.entry.js +1 -1
  215. package/dist/esm-es5/zonos-logo.entry.js +1 -1
  216. package/dist/esm-es5/zonos-stripe-input.entry.js +1 -1
  217. package/dist/esm-es5/zonos-text.entry.js +1 -1
  218. package/dist/esm-es5/zonos-toggle.entry.js +1 -1
  219. package/dist/esm-es5/zonos-tooltip.entry.js +1 -1
  220. package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
  221. package/dist/scripts/index.d.ts +470 -2
  222. package/dist/scripts/index.js +1 -1
  223. package/dist/scripts/loadZonos.js +1 -1
  224. package/dist/scripts/zonos.js +1 -1
  225. package/dist/types/components/checkout/zonos-collect/zonos-collect-cart-items/zonos-collect-cart-items.d.ts +4 -0
  226. package/dist/types/components/checkout/zonos-collect/zonos-collect-finish/zonos-collect-finish.d.ts +50 -0
  227. package/dist/types/components/checkout/zonos-collect/zonos-collect-footer/zonos-collect-footer.d.ts +25 -0
  228. package/dist/types/components/checkout/zonos-collect/zonos-collect-order-details/zonos-collect-order-details.d.ts +29 -0
  229. package/dist/types/components/checkout/zonos-collect/zonos-collect-payment/zonos-collect-payment.d.ts +62 -0
  230. package/dist/types/components/checkout/zonos-collect/zonos-collect-review/zonos-collect-review.d.ts +22 -0
  231. package/dist/types/components/checkout/zonos-collect/zonos-collect-subtotal/zonos-collect-subtotal.d.ts +10 -0
  232. package/dist/types/components/checkout/zonos-collect/zonos-collect.d.ts +86 -0
  233. package/dist/types/components/common/zonos-h-stack/zonos-h-stack.d.ts +9 -0
  234. package/dist/types/components/common/zonos-skeleton/zonos-skeleton.d.ts +17 -0
  235. package/dist/types/components/main/zonos-controller.d.ts +5 -0
  236. package/dist/types/components/paypal/zonos-paypal-payment.d.ts +3 -0
  237. package/dist/types/components/store/checkout/cart.d.ts +23 -3
  238. package/dist/types/components/store/checkout/collect.d.ts +21 -0
  239. package/dist/types/components/store/checkout/paypal.d.ts +4 -3
  240. package/dist/types/components/store/checkout/stripe.d.ts +6 -2
  241. package/dist/types/components/store/translationStore/strings.arabic.d.ts +51 -0
  242. package/dist/types/components/store/translationStore/strings.base.d.ts +51 -0
  243. package/dist/types/components/store/translationStore/strings.chinese.d.ts +51 -0
  244. package/dist/types/components/store/translationStore/strings.danish.d.ts +51 -0
  245. package/dist/types/components/store/translationStore/strings.dutch.d.ts +51 -0
  246. package/dist/types/components/store/translationStore/strings.french.d.ts +51 -0
  247. package/dist/types/components/store/translationStore/strings.german.d.ts +51 -0
  248. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +51 -0
  249. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +51 -0
  250. package/dist/types/components/store/translationStore/strings.italian.d.ts +51 -0
  251. package/dist/types/components/store/translationStore/strings.japanese.d.ts +51 -0
  252. package/dist/types/components/store/translationStore/strings.korean.d.ts +51 -0
  253. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +51 -0
  254. package/dist/types/components/store/translationStore/strings.polish.d.ts +51 -0
  255. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +51 -0
  256. package/dist/types/components/store/translationStore/strings.russian.d.ts +51 -0
  257. package/dist/types/components/store/translationStore/strings.spanish.d.ts +51 -0
  258. package/dist/types/components/store/translationStore/strings.swedish.d.ts +51 -0
  259. package/dist/types/components/store/translationStore/strings.turkish.d.ts +51 -0
  260. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +51 -0
  261. package/dist/types/components/store/translationStore.d.ts +2 -1
  262. package/dist/types/components/stripe/zonos-address/zonos-address.d.ts +1 -2
  263. package/dist/types/components/stripe/zonos-link-authentication/zonos-link-authentication.d.ts +3 -1
  264. package/dist/types/components/utils/api/getLocaleMessages.d.ts +1 -1
  265. package/dist/types/components/utils/checkout/initCollect.d.ts +1 -0
  266. package/dist/types/components/utils/checkout/isCollectMobileTablet.d.ts +4 -0
  267. package/dist/types/components/utils/renderFallback.d.ts +6 -0
  268. package/dist/types/components.d.ts +401 -2
  269. package/dist/types/scripts/_zonosBase.d.ts +5 -0
  270. package/dist/types/scripts/cart/_setupCartDataWithSettings.d.ts +5 -0
  271. package/dist/types/types/checkout/api/CheckoutSession.d.ts +9 -1
  272. package/dist/types/types/checkout/api/CreateParty.d.ts +24 -0
  273. package/dist/types/types/checkout/api/NormalizedTempCart.d.ts +6 -1
  274. package/dist/types/types/checkout/api/PartyInfo.d.ts +24 -0
  275. package/dist/types/types/generated/graphql.frontend.types.d.ts +1 -1
  276. package/dist/types/types/generated/graphql.frontend.types.ts +1 -1
  277. package/dist/types/types/generated/graphql.internal.types.d.ts +616 -5
  278. package/dist/types/types/generated/graphql.internal.types.ts +626 -6
  279. package/dist/types/types/index.d.ts +1 -0
  280. package/dist/zonos-elements/index.esm.js +1 -1
  281. package/dist/zonos-elements/{p-7b5de646.entry.js → p-02667a58.entry.js} +1 -1
  282. package/dist/zonos-elements/p-031d646e.system.js +1 -0
  283. package/dist/zonos-elements/p-0e07e1d6.entry.js +1 -0
  284. package/dist/zonos-elements/p-0ef2a242.js +1 -0
  285. package/dist/zonos-elements/p-126087a2.system.entry.js +1 -0
  286. package/dist/zonos-elements/{p-c7d5d45d.entry.js → p-14f9bc8c.entry.js} +1 -1
  287. package/dist/zonos-elements/p-27d9abab.js +1 -0
  288. package/dist/zonos-elements/p-2813d72e.system.js +1 -0
  289. package/dist/zonos-elements/p-295d9c07.system.entry.js +1 -0
  290. package/dist/zonos-elements/p-29c80a34.js +1 -0
  291. package/dist/zonos-elements/p-2a6c964d.js +1 -0
  292. package/dist/zonos-elements/p-2b3c7c77.system.entry.js +1 -0
  293. package/dist/zonos-elements/p-2b8897d1.system.entry.js +1 -0
  294. package/dist/zonos-elements/{p-544c173a.system.entry.js → p-30432622.system.entry.js} +1 -1
  295. package/dist/zonos-elements/p-3462e9e4.system.entry.js +1 -0
  296. package/dist/zonos-elements/p-372c2fc5.entry.js +1 -0
  297. package/dist/zonos-elements/p-3c1b1be1.system.entry.js +1 -0
  298. package/dist/zonos-elements/p-40a4266f.js +1 -0
  299. package/dist/zonos-elements/{p-47ffacd8.system.entry.js → p-421dfb66.system.entry.js} +1 -1
  300. package/dist/zonos-elements/{p-288761b1.system.entry.js → p-4f8563ad.system.entry.js} +1 -1
  301. package/dist/zonos-elements/p-52d35358.system.entry.js +1 -0
  302. package/dist/zonos-elements/p-567f7de7.entry.js +1 -0
  303. package/dist/zonos-elements/p-5d9410da.entry.js +1 -0
  304. package/dist/zonos-elements/p-637b22ee.system.entry.js +1 -0
  305. package/dist/zonos-elements/p-63a42823.entry.js +1 -0
  306. package/dist/zonos-elements/p-69451a50.system.js +1 -0
  307. package/dist/zonos-elements/p-6b3a0874.entry.js +1 -0
  308. package/dist/zonos-elements/p-73c1e91f.js +1 -0
  309. package/dist/zonos-elements/p-759ef3ca.entry.js +1 -0
  310. package/dist/zonos-elements/p-79d8c3f3.system.entry.js +1 -0
  311. package/dist/zonos-elements/{p-3f31901f.entry.js → p-7c4e7651.entry.js} +1 -1
  312. package/dist/zonos-elements/{p-1c45cd15.entry.js → p-7d2d2c94.entry.js} +1 -1
  313. package/dist/zonos-elements/{p-1ac8bfbb.system.entry.js → p-7e5bd9af.system.entry.js} +1 -1
  314. package/dist/zonos-elements/p-7ecbb2cb.entry.js +1 -0
  315. package/dist/zonos-elements/p-81b357f7.system.js +1 -1
  316. package/dist/zonos-elements/p-82e88a33.system.js +1 -0
  317. package/dist/zonos-elements/p-849b47aa.entry.js +1 -0
  318. package/dist/zonos-elements/p-8dd47520.system.entry.js +1 -0
  319. package/dist/zonos-elements/p-932600b7.js +1 -0
  320. package/dist/zonos-elements/p-960e0ab1.system.entry.js +1 -0
  321. package/dist/zonos-elements/p-9c5b8239.system.js +1 -0
  322. package/dist/zonos-elements/{p-d55aec11.system.entry.js → p-9fdd3264.system.entry.js} +1 -1
  323. package/dist/zonos-elements/p-a08a005d.entry.js +1 -0
  324. package/dist/zonos-elements/p-a10de7fb.entry.js +1 -0
  325. package/dist/zonos-elements/p-a49b5e7f.system.entry.js +1 -0
  326. package/dist/zonos-elements/{p-62813488.entry.js → p-a5b0a636.entry.js} +1 -1
  327. package/dist/zonos-elements/p-a61a9b65.system.entry.js +1 -0
  328. package/dist/zonos-elements/{p-d6fa2dc2.entry.js → p-a77ed1b9.entry.js} +1 -1
  329. package/dist/zonos-elements/{p-eeb01de6.system.entry.js → p-a800965d.system.entry.js} +1 -1
  330. package/dist/zonos-elements/p-b2ae8eb7.system.js +1 -0
  331. package/dist/zonos-elements/p-b3d5bcf9.entry.js +1 -0
  332. package/dist/zonos-elements/{p-da4c01da.system.entry.js → p-b669050d.system.entry.js} +1 -1
  333. package/dist/zonos-elements/p-b9e9b82f.system.entry.js +1 -0
  334. package/dist/zonos-elements/{p-714c28b1.system.entry.js → p-ba18c5f5.system.entry.js} +1 -1
  335. package/dist/zonos-elements/p-bbf48b31.entry.js +1 -0
  336. package/dist/zonos-elements/{p-77666360.entry.js → p-c4b3c878.entry.js} +1 -1
  337. package/dist/zonos-elements/p-c7b57886.js +17 -0
  338. package/dist/zonos-elements/p-c803753e.entry.js +1 -0
  339. package/dist/zonos-elements/{p-e640e8b8.entry.js → p-cbb01de9.entry.js} +1 -1
  340. package/dist/zonos-elements/p-ce15d62d.system.js +1 -0
  341. package/dist/zonos-elements/p-d291e964.system.entry.js +1 -0
  342. package/dist/zonos-elements/p-d3485a03.system.js +1 -0
  343. package/dist/zonos-elements/{p-59eaebe3.system.entry.js → p-de626806.system.entry.js} +1 -1
  344. package/dist/zonos-elements/p-e5388438.system.entry.js +1 -0
  345. package/dist/zonos-elements/p-e77b6e42.entry.js +1 -0
  346. package/dist/zonos-elements/p-ea8aff21.system.js +17 -0
  347. package/dist/zonos-elements/{p-7ab62a26.system.entry.js → p-eb6a35ce.system.entry.js} +1 -1
  348. package/dist/zonos-elements/{p-92cc26b7.system.entry.js → p-ee6f8c02.system.entry.js} +1 -1
  349. package/dist/zonos-elements/{p-a98b1e8d.entry.js → p-efa6203f.entry.js} +1 -1
  350. package/dist/zonos-elements/{p-edc77ea1.entry.js → p-f4fa8720.entry.js} +1 -1
  351. package/dist/zonos-elements/{p-ebaaaee9.entry.js → p-fa90adb8.entry.js} +1 -1
  352. package/dist/zonos-elements/p-fe7e2dc4.entry.js +1 -0
  353. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  354. package/package.json +1 -1
  355. package/dist/cjs/zonos-card.cjs.entry.js +0 -49
  356. package/dist/esm/zonos-card.entry.js +0 -45
  357. package/dist/esm-es5/cart-bb0ee971.js +0 -1
  358. package/dist/esm-es5/localization-d8326254.js +0 -1
  359. package/dist/esm-es5/paypal-bd4520eb.js +0 -17
  360. package/dist/esm-es5/zonos-banner.entry.js +0 -1
  361. package/dist/esm-es5/zonos-card.entry.js +0 -1
  362. package/dist/esm-es5/zonos-cart-items_14.entry.js +0 -1
  363. package/dist/zonos-elements/p-043f57e8.system.entry.js +0 -1
  364. package/dist/zonos-elements/p-0631d2b9.js +0 -1
  365. package/dist/zonos-elements/p-0a6ac265.system.js +0 -1
  366. package/dist/zonos-elements/p-0f041dc5.system.entry.js +0 -1
  367. package/dist/zonos-elements/p-1432a217.system.entry.js +0 -1
  368. package/dist/zonos-elements/p-1b51b738.system.entry.js +0 -1
  369. package/dist/zonos-elements/p-3a1513ae.system.entry.js +0 -1
  370. package/dist/zonos-elements/p-3b8d11dd.entry.js +0 -1
  371. package/dist/zonos-elements/p-4333afcb.entry.js +0 -1
  372. package/dist/zonos-elements/p-4d0d89da.system.entry.js +0 -1
  373. package/dist/zonos-elements/p-5dd9cb44.system.entry.js +0 -1
  374. package/dist/zonos-elements/p-605a21ac.entry.js +0 -1
  375. package/dist/zonos-elements/p-674981ad.system.js +0 -1
  376. package/dist/zonos-elements/p-6d090b53.entry.js +0 -1
  377. package/dist/zonos-elements/p-73c8c551.system.entry.js +0 -1
  378. package/dist/zonos-elements/p-795d223d.entry.js +0 -1
  379. package/dist/zonos-elements/p-8218ff62.system.entry.js +0 -1
  380. package/dist/zonos-elements/p-82f80c8a.entry.js +0 -1
  381. package/dist/zonos-elements/p-88f7256d.js +0 -1
  382. package/dist/zonos-elements/p-8b083884.entry.js +0 -1
  383. package/dist/zonos-elements/p-a449940d.entry.js +0 -1
  384. package/dist/zonos-elements/p-a5a4ad2f.entry.js +0 -1
  385. package/dist/zonos-elements/p-a5d45585.system.entry.js +0 -1
  386. package/dist/zonos-elements/p-a751e819.system.entry.js +0 -1
  387. package/dist/zonos-elements/p-ad556be6.entry.js +0 -1
  388. package/dist/zonos-elements/p-b4792af0.entry.js +0 -1
  389. package/dist/zonos-elements/p-b9ff6458.entry.js +0 -1
  390. package/dist/zonos-elements/p-d3dbae8c.system.js +0 -1
  391. package/dist/zonos-elements/p-ebb9b902.system.js +0 -17
  392. package/dist/zonos-elements/p-ef1ce617.system.entry.js +0 -1
  393. package/dist/zonos-elements/p-ef75da6f.js +0 -17
  394. package/dist/zonos-elements/p-f3dbe934.entry.js +0 -1
  395. package/dist/zonos-elements/p-f741407e.system.entry.js +0 -1
@@ -0,0 +1,997 @@
1
+ function extend (destination) {
2
+ for (var i = 1; i < arguments.length; i++) {
3
+ var source = arguments[i];
4
+ for (var key in source) {
5
+ if (source.hasOwnProperty(key)) destination[key] = source[key];
6
+ }
7
+ }
8
+ return destination
9
+ }
10
+
11
+ function repeat (character, count) {
12
+ return Array(count + 1).join(character)
13
+ }
14
+
15
+ function trimLeadingNewlines (string) {
16
+ return string.replace(/^\n*/, '')
17
+ }
18
+
19
+ function trimTrailingNewlines (string) {
20
+ // avoid match-at-end regexp bottleneck, see #370
21
+ var indexEnd = string.length;
22
+ while (indexEnd > 0 && string[indexEnd - 1] === '\n') indexEnd--;
23
+ return string.substring(0, indexEnd)
24
+ }
25
+
26
+ var blockElements = [
27
+ 'ADDRESS', 'ARTICLE', 'ASIDE', 'AUDIO', 'BLOCKQUOTE', 'BODY', 'CANVAS',
28
+ 'CENTER', 'DD', 'DIR', 'DIV', 'DL', 'DT', 'FIELDSET', 'FIGCAPTION', 'FIGURE',
29
+ 'FOOTER', 'FORM', 'FRAMESET', 'H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'HEADER',
30
+ 'HGROUP', 'HR', 'HTML', 'ISINDEX', 'LI', 'MAIN', 'MENU', 'NAV', 'NOFRAMES',
31
+ 'NOSCRIPT', 'OL', 'OUTPUT', 'P', 'PRE', 'SECTION', 'TABLE', 'TBODY', 'TD',
32
+ 'TFOOT', 'TH', 'THEAD', 'TR', 'UL'
33
+ ];
34
+
35
+ function isBlock (node) {
36
+ return is(node, blockElements)
37
+ }
38
+
39
+ var voidElements = [
40
+ 'AREA', 'BASE', 'BR', 'COL', 'COMMAND', 'EMBED', 'HR', 'IMG', 'INPUT',
41
+ 'KEYGEN', 'LINK', 'META', 'PARAM', 'SOURCE', 'TRACK', 'WBR'
42
+ ];
43
+
44
+ function isVoid (node) {
45
+ return is(node, voidElements)
46
+ }
47
+
48
+ function hasVoid (node) {
49
+ return has(node, voidElements)
50
+ }
51
+
52
+ var meaningfulWhenBlankElements = [
53
+ 'A', 'TABLE', 'THEAD', 'TBODY', 'TFOOT', 'TH', 'TD', 'IFRAME', 'SCRIPT',
54
+ 'AUDIO', 'VIDEO'
55
+ ];
56
+
57
+ function isMeaningfulWhenBlank (node) {
58
+ return is(node, meaningfulWhenBlankElements)
59
+ }
60
+
61
+ function hasMeaningfulWhenBlank (node) {
62
+ return has(node, meaningfulWhenBlankElements)
63
+ }
64
+
65
+ function is (node, tagNames) {
66
+ return tagNames.indexOf(node.nodeName) >= 0
67
+ }
68
+
69
+ function has (node, tagNames) {
70
+ return (
71
+ node.getElementsByTagName &&
72
+ tagNames.some(function (tagName) {
73
+ return node.getElementsByTagName(tagName).length
74
+ })
75
+ )
76
+ }
77
+
78
+ var rules = {};
79
+
80
+ rules.paragraph = {
81
+ filter: 'p',
82
+
83
+ replacement: function (content) {
84
+ return '\n\n' + content + '\n\n'
85
+ }
86
+ };
87
+
88
+ rules.lineBreak = {
89
+ filter: 'br',
90
+
91
+ replacement: function (content, node, options) {
92
+ return options.br + '\n'
93
+ }
94
+ };
95
+
96
+ rules.heading = {
97
+ filter: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'],
98
+
99
+ replacement: function (content, node, options) {
100
+ var hLevel = Number(node.nodeName.charAt(1));
101
+
102
+ if (options.headingStyle === 'setext' && hLevel < 3) {
103
+ var underline = repeat((hLevel === 1 ? '=' : '-'), content.length);
104
+ return (
105
+ '\n\n' + content + '\n' + underline + '\n\n'
106
+ )
107
+ } else {
108
+ return '\n\n' + repeat('#', hLevel) + ' ' + content + '\n\n'
109
+ }
110
+ }
111
+ };
112
+
113
+ rules.blockquote = {
114
+ filter: 'blockquote',
115
+
116
+ replacement: function (content) {
117
+ content = content.replace(/^\n+|\n+$/g, '');
118
+ content = content.replace(/^/gm, '> ');
119
+ return '\n\n' + content + '\n\n'
120
+ }
121
+ };
122
+
123
+ rules.list = {
124
+ filter: ['ul', 'ol'],
125
+
126
+ replacement: function (content, node) {
127
+ var parent = node.parentNode;
128
+ if (parent.nodeName === 'LI' && parent.lastElementChild === node) {
129
+ return '\n' + content
130
+ } else {
131
+ return '\n\n' + content + '\n\n'
132
+ }
133
+ }
134
+ };
135
+
136
+ rules.listItem = {
137
+ filter: 'li',
138
+
139
+ replacement: function (content, node, options) {
140
+ content = content
141
+ .replace(/^\n+/, '') // remove leading newlines
142
+ .replace(/\n+$/, '\n') // replace trailing newlines with just a single one
143
+ .replace(/\n/gm, '\n '); // indent
144
+ var prefix = options.bulletListMarker + ' ';
145
+ var parent = node.parentNode;
146
+ if (parent.nodeName === 'OL') {
147
+ var start = parent.getAttribute('start');
148
+ var index = Array.prototype.indexOf.call(parent.children, node);
149
+ prefix = (start ? Number(start) + index : index + 1) + '. ';
150
+ }
151
+ return (
152
+ prefix + content + (node.nextSibling && !/\n$/.test(content) ? '\n' : '')
153
+ )
154
+ }
155
+ };
156
+
157
+ rules.indentedCodeBlock = {
158
+ filter: function (node, options) {
159
+ return (
160
+ options.codeBlockStyle === 'indented' &&
161
+ node.nodeName === 'PRE' &&
162
+ node.firstChild &&
163
+ node.firstChild.nodeName === 'CODE'
164
+ )
165
+ },
166
+
167
+ replacement: function (content, node, options) {
168
+ return (
169
+ '\n\n ' +
170
+ node.firstChild.textContent.replace(/\n/g, '\n ') +
171
+ '\n\n'
172
+ )
173
+ }
174
+ };
175
+
176
+ rules.fencedCodeBlock = {
177
+ filter: function (node, options) {
178
+ return (
179
+ options.codeBlockStyle === 'fenced' &&
180
+ node.nodeName === 'PRE' &&
181
+ node.firstChild &&
182
+ node.firstChild.nodeName === 'CODE'
183
+ )
184
+ },
185
+
186
+ replacement: function (content, node, options) {
187
+ var className = node.firstChild.getAttribute('class') || '';
188
+ var language = (className.match(/language-(\S+)/) || [null, ''])[1];
189
+ var code = node.firstChild.textContent;
190
+
191
+ var fenceChar = options.fence.charAt(0);
192
+ var fenceSize = 3;
193
+ var fenceInCodeRegex = new RegExp('^' + fenceChar + '{3,}', 'gm');
194
+
195
+ var match;
196
+ while ((match = fenceInCodeRegex.exec(code))) {
197
+ if (match[0].length >= fenceSize) {
198
+ fenceSize = match[0].length + 1;
199
+ }
200
+ }
201
+
202
+ var fence = repeat(fenceChar, fenceSize);
203
+
204
+ return (
205
+ '\n\n' + fence + language + '\n' +
206
+ code.replace(/\n$/, '') +
207
+ '\n' + fence + '\n\n'
208
+ )
209
+ }
210
+ };
211
+
212
+ rules.horizontalRule = {
213
+ filter: 'hr',
214
+
215
+ replacement: function (content, node, options) {
216
+ return '\n\n' + options.hr + '\n\n'
217
+ }
218
+ };
219
+
220
+ rules.inlineLink = {
221
+ filter: function (node, options) {
222
+ return (
223
+ options.linkStyle === 'inlined' &&
224
+ node.nodeName === 'A' &&
225
+ node.getAttribute('href')
226
+ )
227
+ },
228
+
229
+ replacement: function (content, node) {
230
+ var href = node.getAttribute('href');
231
+ if (href) href = href.replace(/([()])/g, '\\$1');
232
+ var title = cleanAttribute(node.getAttribute('title'));
233
+ if (title) title = ' "' + title.replace(/"/g, '\\"') + '"';
234
+ return '[' + content + '](' + href + title + ')'
235
+ }
236
+ };
237
+
238
+ rules.referenceLink = {
239
+ filter: function (node, options) {
240
+ return (
241
+ options.linkStyle === 'referenced' &&
242
+ node.nodeName === 'A' &&
243
+ node.getAttribute('href')
244
+ )
245
+ },
246
+
247
+ replacement: function (content, node, options) {
248
+ var href = node.getAttribute('href');
249
+ var title = cleanAttribute(node.getAttribute('title'));
250
+ if (title) title = ' "' + title + '"';
251
+ var replacement;
252
+ var reference;
253
+
254
+ switch (options.linkReferenceStyle) {
255
+ case 'collapsed':
256
+ replacement = '[' + content + '][]';
257
+ reference = '[' + content + ']: ' + href + title;
258
+ break
259
+ case 'shortcut':
260
+ replacement = '[' + content + ']';
261
+ reference = '[' + content + ']: ' + href + title;
262
+ break
263
+ default:
264
+ var id = this.references.length + 1;
265
+ replacement = '[' + content + '][' + id + ']';
266
+ reference = '[' + id + ']: ' + href + title;
267
+ }
268
+
269
+ this.references.push(reference);
270
+ return replacement
271
+ },
272
+
273
+ references: [],
274
+
275
+ append: function (options) {
276
+ var references = '';
277
+ if (this.references.length) {
278
+ references = '\n\n' + this.references.join('\n') + '\n\n';
279
+ this.references = []; // Reset references
280
+ }
281
+ return references
282
+ }
283
+ };
284
+
285
+ rules.emphasis = {
286
+ filter: ['em', 'i'],
287
+
288
+ replacement: function (content, node, options) {
289
+ if (!content.trim()) return ''
290
+ return options.emDelimiter + content + options.emDelimiter
291
+ }
292
+ };
293
+
294
+ rules.strong = {
295
+ filter: ['strong', 'b'],
296
+
297
+ replacement: function (content, node, options) {
298
+ if (!content.trim()) return ''
299
+ return options.strongDelimiter + content + options.strongDelimiter
300
+ }
301
+ };
302
+
303
+ rules.code = {
304
+ filter: function (node) {
305
+ var hasSiblings = node.previousSibling || node.nextSibling;
306
+ var isCodeBlock = node.parentNode.nodeName === 'PRE' && !hasSiblings;
307
+
308
+ return node.nodeName === 'CODE' && !isCodeBlock
309
+ },
310
+
311
+ replacement: function (content) {
312
+ if (!content) return ''
313
+ content = content.replace(/\r?\n|\r/g, ' ');
314
+
315
+ var extraSpace = /^`|^ .*?[^ ].* $|`$/.test(content) ? ' ' : '';
316
+ var delimiter = '`';
317
+ var matches = content.match(/`+/gm) || [];
318
+ while (matches.indexOf(delimiter) !== -1) delimiter = delimiter + '`';
319
+
320
+ return delimiter + extraSpace + content + extraSpace + delimiter
321
+ }
322
+ };
323
+
324
+ rules.image = {
325
+ filter: 'img',
326
+
327
+ replacement: function (content, node) {
328
+ var alt = cleanAttribute(node.getAttribute('alt'));
329
+ var src = node.getAttribute('src') || '';
330
+ var title = cleanAttribute(node.getAttribute('title'));
331
+ var titlePart = title ? ' "' + title + '"' : '';
332
+ return src ? '![' + alt + ']' + '(' + src + titlePart + ')' : ''
333
+ }
334
+ };
335
+
336
+ function cleanAttribute (attribute) {
337
+ return attribute ? attribute.replace(/(\n+\s*)+/g, '\n') : ''
338
+ }
339
+
340
+ /**
341
+ * Manages a collection of rules used to convert HTML to Markdown
342
+ */
343
+
344
+ function Rules (options) {
345
+ this.options = options;
346
+ this._keep = [];
347
+ this._remove = [];
348
+
349
+ this.blankRule = {
350
+ replacement: options.blankReplacement
351
+ };
352
+
353
+ this.keepReplacement = options.keepReplacement;
354
+
355
+ this.defaultRule = {
356
+ replacement: options.defaultReplacement
357
+ };
358
+
359
+ this.array = [];
360
+ for (var key in options.rules) this.array.push(options.rules[key]);
361
+ }
362
+
363
+ Rules.prototype = {
364
+ add: function (key, rule) {
365
+ this.array.unshift(rule);
366
+ },
367
+
368
+ keep: function (filter) {
369
+ this._keep.unshift({
370
+ filter: filter,
371
+ replacement: this.keepReplacement
372
+ });
373
+ },
374
+
375
+ remove: function (filter) {
376
+ this._remove.unshift({
377
+ filter: filter,
378
+ replacement: function () {
379
+ return ''
380
+ }
381
+ });
382
+ },
383
+
384
+ forNode: function (node) {
385
+ if (node.isBlank) return this.blankRule
386
+ var rule;
387
+
388
+ if ((rule = findRule(this.array, node, this.options))) return rule
389
+ if ((rule = findRule(this._keep, node, this.options))) return rule
390
+ if ((rule = findRule(this._remove, node, this.options))) return rule
391
+
392
+ return this.defaultRule
393
+ },
394
+
395
+ forEach: function (fn) {
396
+ for (var i = 0; i < this.array.length; i++) fn(this.array[i], i);
397
+ }
398
+ };
399
+
400
+ function findRule (rules, node, options) {
401
+ for (var i = 0; i < rules.length; i++) {
402
+ var rule = rules[i];
403
+ if (filterValue(rule, node, options)) return rule
404
+ }
405
+ return void 0
406
+ }
407
+
408
+ function filterValue (rule, node, options) {
409
+ var filter = rule.filter;
410
+ if (typeof filter === 'string') {
411
+ if (filter === node.nodeName.toLowerCase()) return true
412
+ } else if (Array.isArray(filter)) {
413
+ if (filter.indexOf(node.nodeName.toLowerCase()) > -1) return true
414
+ } else if (typeof filter === 'function') {
415
+ if (filter.call(rule, node, options)) return true
416
+ } else {
417
+ throw new TypeError('`filter` needs to be a string, array, or function')
418
+ }
419
+ }
420
+
421
+ /**
422
+ * The collapseWhitespace function is adapted from collapse-whitespace
423
+ * by Luc Thevenard.
424
+ *
425
+ * The MIT License (MIT)
426
+ *
427
+ * Copyright (c) 2014 Luc Thevenard <lucthevenard@gmail.com>
428
+ *
429
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
430
+ * of this software and associated documentation files (the "Software"), to deal
431
+ * in the Software without restriction, including without limitation the rights
432
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
433
+ * copies of the Software, and to permit persons to whom the Software is
434
+ * furnished to do so, subject to the following conditions:
435
+ *
436
+ * The above copyright notice and this permission notice shall be included in
437
+ * all copies or substantial portions of the Software.
438
+ *
439
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
440
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
441
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
442
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
443
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
444
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
445
+ * THE SOFTWARE.
446
+ */
447
+
448
+ /**
449
+ * collapseWhitespace(options) removes extraneous whitespace from an the given element.
450
+ *
451
+ * @param {Object} options
452
+ */
453
+ function collapseWhitespace (options) {
454
+ var element = options.element;
455
+ var isBlock = options.isBlock;
456
+ var isVoid = options.isVoid;
457
+ var isPre = options.isPre || function (node) {
458
+ return node.nodeName === 'PRE'
459
+ };
460
+
461
+ if (!element.firstChild || isPre(element)) return
462
+
463
+ var prevText = null;
464
+ var keepLeadingWs = false;
465
+
466
+ var prev = null;
467
+ var node = next(prev, element, isPre);
468
+
469
+ while (node !== element) {
470
+ if (node.nodeType === 3 || node.nodeType === 4) { // Node.TEXT_NODE or Node.CDATA_SECTION_NODE
471
+ var text = node.data.replace(/[ \r\n\t]+/g, ' ');
472
+
473
+ if ((!prevText || / $/.test(prevText.data)) &&
474
+ !keepLeadingWs && text[0] === ' ') {
475
+ text = text.substr(1);
476
+ }
477
+
478
+ // `text` might be empty at this point.
479
+ if (!text) {
480
+ node = remove(node);
481
+ continue
482
+ }
483
+
484
+ node.data = text;
485
+
486
+ prevText = node;
487
+ } else if (node.nodeType === 1) { // Node.ELEMENT_NODE
488
+ if (isBlock(node) || node.nodeName === 'BR') {
489
+ if (prevText) {
490
+ prevText.data = prevText.data.replace(/ $/, '');
491
+ }
492
+
493
+ prevText = null;
494
+ keepLeadingWs = false;
495
+ } else if (isVoid(node) || isPre(node)) {
496
+ // Avoid trimming space around non-block, non-BR void elements and inline PRE.
497
+ prevText = null;
498
+ keepLeadingWs = true;
499
+ } else if (prevText) {
500
+ // Drop protection if set previously.
501
+ keepLeadingWs = false;
502
+ }
503
+ } else {
504
+ node = remove(node);
505
+ continue
506
+ }
507
+
508
+ var nextNode = next(prev, node, isPre);
509
+ prev = node;
510
+ node = nextNode;
511
+ }
512
+
513
+ if (prevText) {
514
+ prevText.data = prevText.data.replace(/ $/, '');
515
+ if (!prevText.data) {
516
+ remove(prevText);
517
+ }
518
+ }
519
+ }
520
+
521
+ /**
522
+ * remove(node) removes the given node from the DOM and returns the
523
+ * next node in the sequence.
524
+ *
525
+ * @param {Node} node
526
+ * @return {Node} node
527
+ */
528
+ function remove (node) {
529
+ var next = node.nextSibling || node.parentNode;
530
+
531
+ node.parentNode.removeChild(node);
532
+
533
+ return next
534
+ }
535
+
536
+ /**
537
+ * next(prev, current, isPre) returns the next node in the sequence, given the
538
+ * current and previous nodes.
539
+ *
540
+ * @param {Node} prev
541
+ * @param {Node} current
542
+ * @param {Function} isPre
543
+ * @return {Node}
544
+ */
545
+ function next (prev, current, isPre) {
546
+ if ((prev && prev.parentNode === current) || isPre(current)) {
547
+ return current.nextSibling || current.parentNode
548
+ }
549
+
550
+ return current.firstChild || current.nextSibling || current.parentNode
551
+ }
552
+
553
+ /*
554
+ * Set up window for Node.js
555
+ */
556
+
557
+ var root = (typeof window !== 'undefined' ? window : {});
558
+
559
+ /*
560
+ * Parsing HTML strings
561
+ */
562
+
563
+ function canParseHTMLNatively () {
564
+ var Parser = root.DOMParser;
565
+ var canParse = false;
566
+
567
+ // Adapted from https://gist.github.com/1129031
568
+ // Firefox/Opera/IE throw errors on unsupported types
569
+ try {
570
+ // WebKit returns null on unsupported types
571
+ if (new Parser().parseFromString('', 'text/html')) {
572
+ canParse = true;
573
+ }
574
+ } catch (e) {}
575
+
576
+ return canParse
577
+ }
578
+
579
+ function createHTMLParser () {
580
+ var Parser = function () {};
581
+
582
+ {
583
+ if (shouldUseActiveX()) {
584
+ Parser.prototype.parseFromString = function (string) {
585
+ var doc = new window.ActiveXObject('htmlfile');
586
+ doc.designMode = 'on'; // disable on-page scripts
587
+ doc.open();
588
+ doc.write(string);
589
+ doc.close();
590
+ return doc
591
+ };
592
+ } else {
593
+ Parser.prototype.parseFromString = function (string) {
594
+ var doc = document.implementation.createHTMLDocument('');
595
+ doc.open();
596
+ doc.write(string);
597
+ doc.close();
598
+ return doc
599
+ };
600
+ }
601
+ }
602
+ return Parser
603
+ }
604
+
605
+ function shouldUseActiveX () {
606
+ var useActiveX = false;
607
+ try {
608
+ document.implementation.createHTMLDocument('').open();
609
+ } catch (e) {
610
+ if (root.ActiveXObject) useActiveX = true;
611
+ }
612
+ return useActiveX
613
+ }
614
+
615
+ var HTMLParser = canParseHTMLNatively() ? root.DOMParser : createHTMLParser();
616
+
617
+ function RootNode (input, options) {
618
+ var root;
619
+ if (typeof input === 'string') {
620
+ var doc = htmlParser().parseFromString(
621
+ // DOM parsers arrange elements in the <head> and <body>.
622
+ // Wrapping in a custom element ensures elements are reliably arranged in
623
+ // a single element.
624
+ '<x-turndown id="turndown-root">' + input + '</x-turndown>',
625
+ 'text/html'
626
+ );
627
+ root = doc.getElementById('turndown-root');
628
+ } else {
629
+ root = input.cloneNode(true);
630
+ }
631
+ collapseWhitespace({
632
+ element: root,
633
+ isBlock: isBlock,
634
+ isVoid: isVoid,
635
+ isPre: options.preformattedCode ? isPreOrCode : null
636
+ });
637
+
638
+ return root
639
+ }
640
+
641
+ var _htmlParser;
642
+ function htmlParser () {
643
+ _htmlParser = _htmlParser || new HTMLParser();
644
+ return _htmlParser
645
+ }
646
+
647
+ function isPreOrCode (node) {
648
+ return node.nodeName === 'PRE' || node.nodeName === 'CODE'
649
+ }
650
+
651
+ function Node (node, options) {
652
+ node.isBlock = isBlock(node);
653
+ node.isCode = node.nodeName === 'CODE' || node.parentNode.isCode;
654
+ node.isBlank = isBlank(node);
655
+ node.flankingWhitespace = flankingWhitespace(node, options);
656
+ return node
657
+ }
658
+
659
+ function isBlank (node) {
660
+ return (
661
+ !isVoid(node) &&
662
+ !isMeaningfulWhenBlank(node) &&
663
+ /^\s*$/i.test(node.textContent) &&
664
+ !hasVoid(node) &&
665
+ !hasMeaningfulWhenBlank(node)
666
+ )
667
+ }
668
+
669
+ function flankingWhitespace (node, options) {
670
+ if (node.isBlock || (options.preformattedCode && node.isCode)) {
671
+ return { leading: '', trailing: '' }
672
+ }
673
+
674
+ var edges = edgeWhitespace(node.textContent);
675
+
676
+ // abandon leading ASCII WS if left-flanked by ASCII WS
677
+ if (edges.leadingAscii && isFlankedByWhitespace('left', node, options)) {
678
+ edges.leading = edges.leadingNonAscii;
679
+ }
680
+
681
+ // abandon trailing ASCII WS if right-flanked by ASCII WS
682
+ if (edges.trailingAscii && isFlankedByWhitespace('right', node, options)) {
683
+ edges.trailing = edges.trailingNonAscii;
684
+ }
685
+
686
+ return { leading: edges.leading, trailing: edges.trailing }
687
+ }
688
+
689
+ function edgeWhitespace (string) {
690
+ var m = string.match(/^(([ \t\r\n]*)(\s*))(?:(?=\S)[\s\S]*\S)?((\s*?)([ \t\r\n]*))$/);
691
+ return {
692
+ leading: m[1], // whole string for whitespace-only strings
693
+ leadingAscii: m[2],
694
+ leadingNonAscii: m[3],
695
+ trailing: m[4], // empty for whitespace-only strings
696
+ trailingNonAscii: m[5],
697
+ trailingAscii: m[6]
698
+ }
699
+ }
700
+
701
+ function isFlankedByWhitespace (side, node, options) {
702
+ var sibling;
703
+ var regExp;
704
+ var isFlanked;
705
+
706
+ if (side === 'left') {
707
+ sibling = node.previousSibling;
708
+ regExp = / $/;
709
+ } else {
710
+ sibling = node.nextSibling;
711
+ regExp = /^ /;
712
+ }
713
+
714
+ if (sibling) {
715
+ if (sibling.nodeType === 3) {
716
+ isFlanked = regExp.test(sibling.nodeValue);
717
+ } else if (options.preformattedCode && sibling.nodeName === 'CODE') {
718
+ isFlanked = false;
719
+ } else if (sibling.nodeType === 1 && !isBlock(sibling)) {
720
+ isFlanked = regExp.test(sibling.textContent);
721
+ }
722
+ }
723
+ return isFlanked
724
+ }
725
+
726
+ var reduce = Array.prototype.reduce;
727
+ var escapes = [
728
+ [/\\/g, '\\\\'],
729
+ [/\*/g, '\\*'],
730
+ [/^-/g, '\\-'],
731
+ [/^\+ /g, '\\+ '],
732
+ [/^(=+)/g, '\\$1'],
733
+ [/^(#{1,6}) /g, '\\$1 '],
734
+ [/`/g, '\\`'],
735
+ [/^~~~/g, '\\~~~'],
736
+ [/\[/g, '\\['],
737
+ [/\]/g, '\\]'],
738
+ [/^>/g, '\\>'],
739
+ [/_/g, '\\_'],
740
+ [/^(\d+)\. /g, '$1\\. ']
741
+ ];
742
+
743
+ function TurndownService (options) {
744
+ if (!(this instanceof TurndownService)) return new TurndownService(options)
745
+
746
+ var defaults = {
747
+ rules: rules,
748
+ headingStyle: 'setext',
749
+ hr: '* * *',
750
+ bulletListMarker: '*',
751
+ codeBlockStyle: 'indented',
752
+ fence: '```',
753
+ emDelimiter: '_',
754
+ strongDelimiter: '**',
755
+ linkStyle: 'inlined',
756
+ linkReferenceStyle: 'full',
757
+ br: ' ',
758
+ preformattedCode: false,
759
+ blankReplacement: function (content, node) {
760
+ return node.isBlock ? '\n\n' : ''
761
+ },
762
+ keepReplacement: function (content, node) {
763
+ return node.isBlock ? '\n\n' + node.outerHTML + '\n\n' : node.outerHTML
764
+ },
765
+ defaultReplacement: function (content, node) {
766
+ return node.isBlock ? '\n\n' + content + '\n\n' : content
767
+ }
768
+ };
769
+ this.options = extend({}, defaults, options);
770
+ this.rules = new Rules(this.options);
771
+ }
772
+
773
+ TurndownService.prototype = {
774
+ /**
775
+ * The entry point for converting a string or DOM node to Markdown
776
+ * @public
777
+ * @param {String|HTMLElement} input The string or DOM node to convert
778
+ * @returns A Markdown representation of the input
779
+ * @type String
780
+ */
781
+
782
+ turndown: function (input) {
783
+ if (!canConvert(input)) {
784
+ throw new TypeError(
785
+ input + ' is not a string, or an element/document/fragment node.'
786
+ )
787
+ }
788
+
789
+ if (input === '') return ''
790
+
791
+ var output = process.call(this, new RootNode(input, this.options));
792
+ return postProcess.call(this, output)
793
+ },
794
+
795
+ /**
796
+ * Add one or more plugins
797
+ * @public
798
+ * @param {Function|Array} plugin The plugin or array of plugins to add
799
+ * @returns The Turndown instance for chaining
800
+ * @type Object
801
+ */
802
+
803
+ use: function (plugin) {
804
+ if (Array.isArray(plugin)) {
805
+ for (var i = 0; i < plugin.length; i++) this.use(plugin[i]);
806
+ } else if (typeof plugin === 'function') {
807
+ plugin(this);
808
+ } else {
809
+ throw new TypeError('plugin must be a Function or an Array of Functions')
810
+ }
811
+ return this
812
+ },
813
+
814
+ /**
815
+ * Adds a rule
816
+ * @public
817
+ * @param {String} key The unique key of the rule
818
+ * @param {Object} rule The rule
819
+ * @returns The Turndown instance for chaining
820
+ * @type Object
821
+ */
822
+
823
+ addRule: function (key, rule) {
824
+ this.rules.add(key, rule);
825
+ return this
826
+ },
827
+
828
+ /**
829
+ * Keep a node (as HTML) that matches the filter
830
+ * @public
831
+ * @param {String|Array|Function} filter The unique key of the rule
832
+ * @returns The Turndown instance for chaining
833
+ * @type Object
834
+ */
835
+
836
+ keep: function (filter) {
837
+ this.rules.keep(filter);
838
+ return this
839
+ },
840
+
841
+ /**
842
+ * Remove a node that matches the filter
843
+ * @public
844
+ * @param {String|Array|Function} filter The unique key of the rule
845
+ * @returns The Turndown instance for chaining
846
+ * @type Object
847
+ */
848
+
849
+ remove: function (filter) {
850
+ this.rules.remove(filter);
851
+ return this
852
+ },
853
+
854
+ /**
855
+ * Escapes Markdown syntax
856
+ * @public
857
+ * @param {String} string The string to escape
858
+ * @returns A string with Markdown syntax escaped
859
+ * @type String
860
+ */
861
+
862
+ escape: function (string) {
863
+ return escapes.reduce(function (accumulator, escape) {
864
+ return accumulator.replace(escape[0], escape[1])
865
+ }, string)
866
+ }
867
+ };
868
+
869
+ /**
870
+ * Reduces a DOM node down to its Markdown string equivalent
871
+ * @private
872
+ * @param {HTMLElement} parentNode The node to convert
873
+ * @returns A Markdown representation of the node
874
+ * @type String
875
+ */
876
+
877
+ function process (parentNode) {
878
+ var self = this;
879
+ return reduce.call(parentNode.childNodes, function (output, node) {
880
+ node = new Node(node, self.options);
881
+
882
+ var replacement = '';
883
+ if (node.nodeType === 3) {
884
+ replacement = node.isCode ? node.nodeValue : self.escape(node.nodeValue);
885
+ } else if (node.nodeType === 1) {
886
+ replacement = replacementForNode.call(self, node);
887
+ }
888
+
889
+ return join(output, replacement)
890
+ }, '')
891
+ }
892
+
893
+ /**
894
+ * Appends strings as each rule requires and trims the output
895
+ * @private
896
+ * @param {String} output The conversion output
897
+ * @returns A trimmed version of the ouput
898
+ * @type String
899
+ */
900
+
901
+ function postProcess (output) {
902
+ var self = this;
903
+ this.rules.forEach(function (rule) {
904
+ if (typeof rule.append === 'function') {
905
+ output = join(output, rule.append(self.options));
906
+ }
907
+ });
908
+
909
+ return output.replace(/^[\t\r\n]+/, '').replace(/[\t\r\n\s]+$/, '')
910
+ }
911
+
912
+ /**
913
+ * Converts an element node to its Markdown equivalent
914
+ * @private
915
+ * @param {HTMLElement} node The node to convert
916
+ * @returns A Markdown representation of the node
917
+ * @type String
918
+ */
919
+
920
+ function replacementForNode (node) {
921
+ var rule = this.rules.forNode(node);
922
+ var content = process.call(this, node);
923
+ var whitespace = node.flankingWhitespace;
924
+ if (whitespace.leading || whitespace.trailing) content = content.trim();
925
+ return (
926
+ whitespace.leading +
927
+ rule.replacement(content, node, this.options) +
928
+ whitespace.trailing
929
+ )
930
+ }
931
+
932
+ /**
933
+ * Joins replacement to the current output with appropriate number of new lines
934
+ * @private
935
+ * @param {String} output The current conversion output
936
+ * @param {String} replacement The string to append to the output
937
+ * @returns Joined output
938
+ * @type String
939
+ */
940
+
941
+ function join (output, replacement) {
942
+ var s1 = trimTrailingNewlines(output);
943
+ var s2 = trimLeadingNewlines(replacement);
944
+ var nls = Math.max(output.length - s1.length, replacement.length - s2.length);
945
+ var separator = '\n\n'.substring(0, nls);
946
+
947
+ return s1 + separator + s2
948
+ }
949
+
950
+ /**
951
+ * Determines whether an input can be converted
952
+ * @private
953
+ * @param {String|HTMLElement} input Describe this parameter
954
+ * @returns Describe what it returns
955
+ * @type String|Object|Array|Boolean|Number
956
+ */
957
+
958
+ function canConvert (input) {
959
+ return (
960
+ input != null && (
961
+ typeof input === 'string' ||
962
+ (input.nodeType && (
963
+ input.nodeType === 1 || input.nodeType === 9 || input.nodeType === 11
964
+ ))
965
+ )
966
+ )
967
+ }
968
+
969
+ const turndownService = new TurndownService();
970
+ /**
971
+ * Converts an HTML string to Markdown format, strips unnecessary Markdown tags,
972
+ * and returns an array of cleaned Markdown text blocks..
973
+ *
974
+ * This utility function is useful for transforming HTML into Markdown and cleaning
975
+ * it by removing extra or unwanted Markdown elements, resulting in an array of
976
+ * plain Markdown text segments.
977
+ *
978
+ * @param {string} htmlString - The input HTML string to be converted and cleaned.
979
+ *
980
+ * @example
981
+ * const htmlInput = "<h1>Hello World</h1><p>This is a paragraph.</p>";
982
+ * const result = cleanHtmlMarkdown(htmlInput);
983
+ * console.info(result); // Outputs cleaned HTML after conversion and processing
984
+ */
985
+ const cleanHtmlMarkdown = (htmlString) => {
986
+ const mdString = turndownService.turndown(htmlString);
987
+ const sanitizedMdString =
988
+ // remove header tags
989
+ mdString.replace(/^\#+\s+/gm, '').trim();
990
+ if (!sanitizedMdString) {
991
+ return [];
992
+ }
993
+ const mdBlocks = sanitizedMdString.split(/[\n\r]+/gm);
994
+ return mdBlocks;
995
+ };
996
+
997
+ export { cleanHtmlMarkdown as c };