@internetarchive/elements 1.1.2 → 1.1.3-l10n-demo.1

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 (523) hide show
  1. package/README.md +34 -1
  2. package/dist/src/elements/ia-button/ia-button.d.ts.map +1 -1
  3. package/dist/src/elements/ia-button/ia-button.js +2 -2
  4. package/dist/src/elements/ia-button/ia-button.js.map +1 -1
  5. package/dist/src/elements/ia-combo-box/ia-combo-box.d.ts.map +1 -1
  6. package/dist/src/elements/ia-combo-box/ia-combo-box.js +3 -2
  7. package/dist/src/elements/ia-combo-box/ia-combo-box.js.map +1 -1
  8. package/dist/src/elements/ia-donation-form/analytics.d.ts +12 -0
  9. package/dist/src/elements/ia-donation-form/analytics.d.ts.map +1 -0
  10. package/dist/src/elements/ia-donation-form/analytics.js +2 -0
  11. package/dist/src/elements/ia-donation-form/analytics.js.map +1 -0
  12. package/dist/src/elements/ia-donation-form/braintree/braintree-manager-interface.d.ts +79 -0
  13. package/dist/src/elements/ia-donation-form/braintree/braintree-manager-interface.d.ts.map +1 -0
  14. package/dist/src/elements/ia-donation-form/braintree/braintree-manager-interface.js +2 -0
  15. package/dist/src/elements/ia-donation-form/braintree/braintree-manager-interface.js.map +1 -0
  16. package/dist/src/elements/ia-donation-form/braintree/braintree-manager.d.ts +73 -0
  17. package/dist/src/elements/ia-donation-form/braintree/braintree-manager.d.ts.map +1 -0
  18. package/dist/src/elements/ia-donation-form/braintree/braintree-manager.js +126 -0
  19. package/dist/src/elements/ia-donation-form/braintree/braintree-manager.js.map +1 -0
  20. package/dist/src/elements/ia-donation-form/braintree/hosting-environment.d.ts +10 -0
  21. package/dist/src/elements/ia-donation-form/braintree/hosting-environment.d.ts.map +1 -0
  22. package/dist/src/elements/ia-donation-form/braintree/hosting-environment.js +9 -0
  23. package/dist/src/elements/ia-donation-form/braintree/hosting-environment.js.map +1 -0
  24. package/dist/src/elements/ia-donation-form/braintree/payment-clients.d.ts +47 -0
  25. package/dist/src/elements/ia-donation-form/braintree/payment-clients.d.ts.map +1 -0
  26. package/dist/src/elements/ia-donation-form/braintree/payment-clients.js +104 -0
  27. package/dist/src/elements/ia-donation-form/braintree/payment-clients.js.map +1 -0
  28. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-interface.d.ts +11 -0
  29. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-interface.d.ts.map +1 -0
  30. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-interface.js +2 -0
  31. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-interface.js.map +1 -0
  32. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource-interface.d.ts +20 -0
  33. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource-interface.d.ts.map +1 -0
  34. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource-interface.js +2 -0
  35. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource-interface.js.map +1 -0
  36. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource.d.ts +21 -0
  37. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource.d.ts.map +1 -0
  38. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource.js +83 -0
  39. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-datasource.js.map +1 -0
  40. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-manager.d.ts +11 -0
  41. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-manager.d.ts.map +1 -0
  42. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-manager.js +13 -0
  43. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay-session-manager.js.map +1 -0
  44. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay.d.ts +27 -0
  45. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay.d.ts.map +1 -0
  46. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay.js +67 -0
  47. package/dist/src/elements/ia-donation-form/braintree/payment-providers/apple-pay/apple-pay.js.map +1 -0
  48. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card-interface.d.ts +18 -0
  49. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card-interface.d.ts.map +1 -0
  50. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card-interface.js +2 -0
  51. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card-interface.js.map +1 -0
  52. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card.d.ts +41 -0
  53. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card.d.ts.map +1 -0
  54. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card.js +95 -0
  55. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/credit-card.js.map +1 -0
  56. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-configuration.d.ts +14 -0
  57. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-configuration.d.ts.map +1 -0
  58. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-configuration.js +9 -0
  59. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-configuration.js.map +1 -0
  60. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-container.d.ts +40 -0
  61. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-container.d.ts.map +1 -0
  62. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-container.js +58 -0
  63. package/dist/src/elements/ia-donation-form/braintree/payment-providers/credit-card/hosted-field-container.js.map +1 -0
  64. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay-interface.d.ts +8 -0
  65. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay-interface.d.ts.map +1 -0
  66. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay-interface.js +2 -0
  67. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay-interface.js.map +1 -0
  68. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay.d.ts +19 -0
  69. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay.d.ts.map +1 -0
  70. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay.js +45 -0
  71. package/dist/src/elements/ia-donation-form/braintree/payment-providers/google-pay/google-pay.js.map +1 -0
  72. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-button-datasource.d.ts +57 -0
  73. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-button-datasource.d.ts.map +1 -0
  74. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-button-datasource.js +44 -0
  75. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-button-datasource.js.map +1 -0
  76. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-interface.d.ts +14 -0
  77. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-interface.d.ts.map +1 -0
  78. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-interface.js +2 -0
  79. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal-interface.js.map +1 -0
  80. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal.d.ts +27 -0
  81. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal.d.ts.map +1 -0
  82. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal.js +44 -0
  83. package/dist/src/elements/ia-donation-form/braintree/payment-providers/paypal/paypal.js.map +1 -0
  84. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-interface.d.ts +8 -0
  85. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-interface.d.ts.map +1 -0
  86. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-interface.js +2 -0
  87. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-interface.js.map +1 -0
  88. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-restoration-state-handler.d.ts +40 -0
  89. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-restoration-state-handler.d.ts.map +1 -0
  90. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-restoration-state-handler.js +65 -0
  91. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo-restoration-state-handler.js.map +1 -0
  92. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo.d.ts +25 -0
  93. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo.d.ts.map +1 -0
  94. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo.js +42 -0
  95. package/dist/src/elements/ia-donation-form/braintree/payment-providers/venmo/venmo.js.map +1 -0
  96. package/dist/src/elements/ia-donation-form/braintree/payment-providers-interface.d.ts +18 -0
  97. package/dist/src/elements/ia-donation-form/braintree/payment-providers-interface.d.ts.map +1 -0
  98. package/dist/src/elements/ia-donation-form/braintree/payment-providers-interface.js +2 -0
  99. package/dist/src/elements/ia-donation-form/braintree/payment-providers-interface.js.map +1 -0
  100. package/dist/src/elements/ia-donation-form/braintree/payment-providers.d.ts +42 -0
  101. package/dist/src/elements/ia-donation-form/braintree/payment-providers.d.ts.map +1 -0
  102. package/dist/src/elements/ia-donation-form/braintree/payment-providers.js +99 -0
  103. package/dist/src/elements/ia-donation-form/braintree/payment-providers.js.map +1 -0
  104. package/dist/src/elements/ia-donation-form/currency-validator.d.ts +16 -0
  105. package/dist/src/elements/ia-donation-form/currency-validator.d.ts.map +1 -0
  106. package/dist/src/elements/ia-donation-form/currency-validator.js +37 -0
  107. package/dist/src/elements/ia-donation-form/currency-validator.js.map +1 -0
  108. package/dist/src/elements/ia-donation-form/donation-form-error.d.ts +5 -0
  109. package/dist/src/elements/ia-donation-form/donation-form-error.d.ts.map +1 -0
  110. package/dist/src/elements/ia-donation-form/donation-form-error.js +8 -0
  111. package/dist/src/elements/ia-donation-form/donation-form-error.js.map +1 -0
  112. package/dist/src/elements/ia-donation-form/flow-handlers/donation-flow-modal-manager.d.ts +118 -0
  113. package/dist/src/elements/ia-donation-form/flow-handlers/donation-flow-modal-manager.d.ts.map +1 -0
  114. package/dist/src/elements/ia-donation-form/flow-handlers/donation-flow-modal-manager.js +194 -0
  115. package/dist/src/elements/ia-donation-form/flow-handlers/donation-flow-modal-manager.js.map +1 -0
  116. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/apple-pay-flow-handler.d.ts +24 -0
  117. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/apple-pay-flow-handler.d.ts.map +1 -0
  118. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/apple-pay-flow-handler.js +70 -0
  119. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/apple-pay-flow-handler.js.map +1 -0
  120. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/credit-card-flow-handler.d.ts +44 -0
  121. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/credit-card-flow-handler.d.ts.map +1 -0
  122. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/credit-card-flow-handler.js +110 -0
  123. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/credit-card-flow-handler.js.map +1 -0
  124. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/google-pay-flow-handler.d.ts +24 -0
  125. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/google-pay-flow-handler.d.ts.map +1 -0
  126. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/google-pay-flow-handler.js +74 -0
  127. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/google-pay-flow-handler.js.map +1 -0
  128. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/paypal-flow-handler.d.ts +47 -0
  129. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/paypal-flow-handler.d.ts.map +1 -0
  130. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/paypal-flow-handler.js +204 -0
  131. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/paypal-flow-handler.js.map +1 -0
  132. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/venmo-flow-handler.d.ts +30 -0
  133. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/venmo-flow-handler.d.ts.map +1 -0
  134. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/venmo-flow-handler.js +77 -0
  135. package/dist/src/elements/ia-donation-form/flow-handlers/handlers/venmo-flow-handler.js.map +1 -0
  136. package/dist/src/elements/ia-donation-form/flow-handlers/payment-flow-handlers.d.ts +80 -0
  137. package/dist/src/elements/ia-donation-form/flow-handlers/payment-flow-handlers.d.ts.map +1 -0
  138. package/dist/src/elements/ia-donation-form/flow-handlers/payment-flow-handlers.js +72 -0
  139. package/dist/src/elements/ia-donation-form/flow-handlers/payment-flow-handlers.js.map +1 -0
  140. package/dist/src/elements/ia-donation-form/form-elements/contact-form/autocomplete-field-options.d.ts +2 -0
  141. package/dist/src/elements/ia-donation-form/form-elements/contact-form/autocomplete-field-options.d.ts.map +1 -0
  142. package/dist/src/elements/ia-donation-form/form-elements/contact-form/autocomplete-field-options.js +2 -0
  143. package/dist/src/elements/ia-donation-form/form-elements/contact-form/autocomplete-field-options.js.map +1 -0
  144. package/dist/src/elements/ia-donation-form/form-elements/contact-form/countries.d.ts +3 -0
  145. package/dist/src/elements/ia-donation-form/form-elements/contact-form/countries.d.ts.map +1 -0
  146. package/dist/src/elements/ia-donation-form/form-elements/contact-form/countries.js +254 -0
  147. package/dist/src/elements/ia-donation-form/form-elements/contact-form/countries.js.map +1 -0
  148. package/dist/src/elements/ia-donation-form/form-elements/contact-form/ia-donation-contact-form.d.ts +70 -0
  149. package/dist/src/elements/ia-donation-form/form-elements/contact-form/ia-donation-contact-form.d.ts.map +1 -0
  150. package/dist/src/elements/ia-donation-form/form-elements/contact-form/ia-donation-contact-form.js +497 -0
  151. package/dist/src/elements/ia-donation-form/form-elements/contact-form/ia-donation-contact-form.js.map +1 -0
  152. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-badged-input.d.ts +26 -0
  153. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-badged-input.d.ts.map +1 -0
  154. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-badged-input.js +163 -0
  155. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-badged-input.js.map +1 -0
  156. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-edit-donation.d.ts +118 -0
  157. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-edit-donation.d.ts.map +1 -0
  158. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-edit-donation.js +772 -0
  159. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-edit-donation.js.map +1 -0
  160. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-header.d.ts +31 -0
  161. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-header.d.ts.map +1 -0
  162. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-header.js +93 -0
  163. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-header.js.map +1 -0
  164. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-payment-selector.d.ts +33 -0
  165. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-payment-selector.d.ts.map +1 -0
  166. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-payment-selector.js +378 -0
  167. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-payment-selector.js.map +1 -0
  168. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-section.d.ts +21 -0
  169. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-section.d.ts.map +1 -0
  170. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-section.js +182 -0
  171. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-section.js.map +1 -0
  172. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-summary.d.ts +11 -0
  173. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-summary.d.ts.map +1 -0
  174. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-summary.js +60 -0
  175. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-summary.js.map +1 -0
  176. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-total-amount.d.ts +10 -0
  177. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-total-amount.d.ts.map +1 -0
  178. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-total-amount.js +76 -0
  179. package/dist/src/elements/ia-donation-form/form-elements/ia-donation-total-amount.js.map +1 -0
  180. package/dist/src/elements/ia-donation-form/ia-donation-form-controller.d.ts +114 -0
  181. package/dist/src/elements/ia-donation-form/ia-donation-form-controller.d.ts.map +1 -0
  182. package/dist/src/elements/ia-donation-form/ia-donation-form-controller.js +586 -0
  183. package/dist/src/elements/ia-donation-form/ia-donation-form-controller.js.map +1 -0
  184. package/dist/src/elements/ia-donation-form/ia-donation-form.d.ts +94 -0
  185. package/dist/src/elements/ia-donation-form/ia-donation-form.d.ts.map +1 -0
  186. package/dist/src/elements/ia-donation-form/ia-donation-form.js +516 -0
  187. package/dist/src/elements/ia-donation-form/ia-donation-form.js.map +1 -0
  188. package/dist/src/elements/ia-donation-form/icons/apple-pay.svg +22 -0
  189. package/dist/src/elements/ia-donation-form/icons/calendar.svg +15 -0
  190. package/dist/src/elements/ia-donation-form/icons/credit-card.svg +15 -0
  191. package/dist/src/elements/ia-donation-form/icons/email.svg +3 -0
  192. package/dist/src/elements/ia-donation-form/icons/google-pay.svg +38 -0
  193. package/dist/src/elements/ia-donation-form/icons/locale-pin.svg +7 -0
  194. package/dist/src/elements/ia-donation-form/icons/lock.svg +6 -0
  195. package/dist/src/elements/ia-donation-form/icons/paypal.svg +39 -0
  196. package/dist/src/elements/ia-donation-form/icons/user.svg +6 -0
  197. package/dist/src/elements/ia-donation-form/icons/venmo.svg +9 -0
  198. package/dist/src/elements/ia-donation-form/icons.d.ts +12 -0
  199. package/dist/src/elements/ia-donation-form/icons.d.ts.map +1 -0
  200. package/dist/src/elements/ia-donation-form/icons.js +33 -0
  201. package/dist/src/elements/ia-donation-form/icons.js.map +1 -0
  202. package/dist/src/elements/ia-donation-form/modals/ia-donation-confirm-modal.d.ts +27 -0
  203. package/dist/src/elements/ia-donation-form/modals/ia-donation-confirm-modal.d.ts.map +1 -0
  204. package/dist/src/elements/ia-donation-form/modals/ia-donation-confirm-modal.js +196 -0
  205. package/dist/src/elements/ia-donation-form/modals/ia-donation-confirm-modal.js.map +1 -0
  206. package/dist/src/elements/ia-donation-form/modals/ia-donation-error-modal-content.d.ts +7 -0
  207. package/dist/src/elements/ia-donation-form/modals/ia-donation-error-modal-content.d.ts.map +1 -0
  208. package/dist/src/elements/ia-donation-form/modals/ia-donation-error-modal-content.js +64 -0
  209. package/dist/src/elements/ia-donation-form/modals/ia-donation-error-modal-content.js.map +1 -0
  210. package/dist/src/elements/ia-donation-form/modals/ia-donation-upsell-modal-content.d.ts +28 -0
  211. package/dist/src/elements/ia-donation-form/modals/ia-donation-upsell-modal-content.d.ts.map +1 -0
  212. package/dist/src/elements/ia-donation-form/modals/ia-donation-upsell-modal-content.js +314 -0
  213. package/dist/src/elements/ia-donation-form/modals/ia-donation-upsell-modal-content.js.map +1 -0
  214. package/dist/src/elements/ia-donation-form/models/donation-payment-info.d.ts +34 -0
  215. package/dist/src/elements/ia-donation-form/models/donation-payment-info.d.ts.map +1 -0
  216. package/dist/src/elements/ia-donation-form/models/donation-payment-info.js +54 -0
  217. package/dist/src/elements/ia-donation-form/models/donation-payment-info.js.map +1 -0
  218. package/dist/src/elements/ia-donation-form/models/donation-request.d.ts +62 -0
  219. package/dist/src/elements/ia-donation-form/models/donation-request.d.ts.map +1 -0
  220. package/dist/src/elements/ia-donation-form/models/donation-request.js +35 -0
  221. package/dist/src/elements/ia-donation-form/models/donation-request.js.map +1 -0
  222. package/dist/src/elements/ia-donation-form/models/donation-response.d.ts +67 -0
  223. package/dist/src/elements/ia-donation-form/models/donation-response.d.ts.map +1 -0
  224. package/dist/src/elements/ia-donation-form/models/donation-response.js +57 -0
  225. package/dist/src/elements/ia-donation-form/models/donation-response.js.map +1 -0
  226. package/dist/src/elements/ia-donation-form/models/donation-type.d.ts +8 -0
  227. package/dist/src/elements/ia-donation-form/models/donation-type.d.ts.map +1 -0
  228. package/dist/src/elements/ia-donation-form/models/donation-type.js +7 -0
  229. package/dist/src/elements/ia-donation-form/models/donation-type.js.map +1 -0
  230. package/dist/src/elements/ia-donation-form/models/donor-contact-info.d.ts +38 -0
  231. package/dist/src/elements/ia-donation-form/models/donor-contact-info.d.ts.map +1 -0
  232. package/dist/src/elements/ia-donation-form/models/donor-contact-info.js +27 -0
  233. package/dist/src/elements/ia-donation-form/models/donor-contact-info.js.map +1 -0
  234. package/dist/src/elements/ia-donation-form/models/payment-provider.d.ts +10 -0
  235. package/dist/src/elements/ia-donation-form/models/payment-provider.d.ts.map +1 -0
  236. package/dist/src/elements/ia-donation-form/models/payment-provider.js +9 -0
  237. package/dist/src/elements/ia-donation-form/models/payment-provider.js.map +1 -0
  238. package/dist/src/elements/ia-donation-form/recaptcha-manager.d.ts +36 -0
  239. package/dist/src/elements/ia-donation-form/recaptcha-manager.d.ts.map +1 -0
  240. package/dist/src/elements/ia-donation-form/recaptcha-manager.js +76 -0
  241. package/dist/src/elements/ia-donation-form/recaptcha-manager.js.map +1 -0
  242. package/dist/src/elements/ia-dropdown/assets/caret-down.svg +4 -0
  243. package/dist/src/elements/ia-dropdown/assets/caret-up.svg +4 -0
  244. package/dist/src/elements/ia-dropdown/ia-dropdown.d.ts +185 -0
  245. package/dist/src/elements/ia-dropdown/ia-dropdown.d.ts.map +1 -0
  246. package/dist/src/elements/ia-dropdown/ia-dropdown.js +762 -0
  247. package/dist/src/elements/ia-dropdown/ia-dropdown.js.map +1 -0
  248. package/dist/src/elements/ia-dropdown/ia-icon-label.d.ts +10 -0
  249. package/dist/src/elements/ia-dropdown/ia-icon-label.d.ts.map +1 -0
  250. package/dist/src/elements/ia-dropdown/ia-icon-label.js +103 -0
  251. package/dist/src/elements/ia-dropdown/ia-icon-label.js.map +1 -0
  252. package/dist/src/elements/ia-dropdown-search-bar/ia-dropdown-search-bar.d.ts +3 -3
  253. package/dist/src/elements/ia-dropdown-search-bar/ia-dropdown-search-bar.d.ts.map +1 -1
  254. package/dist/src/elements/ia-dropdown-search-bar/ia-dropdown-search-bar.js +5 -6
  255. package/dist/src/elements/ia-dropdown-search-bar/ia-dropdown-search-bar.js.map +1 -1
  256. package/dist/src/elements/ia-expandable-search-bar/ia-expandable-search-bar.d.ts +4 -4
  257. package/dist/src/elements/ia-expandable-search-bar/ia-expandable-search-bar.d.ts.map +1 -1
  258. package/dist/src/elements/ia-expandable-search-bar/ia-expandable-search-bar.js +5 -8
  259. package/dist/src/elements/ia-expandable-search-bar/ia-expandable-search-bar.js.map +1 -1
  260. package/dist/src/elements/ia-image-viewer/ia-image-viewer.d.ts.map +1 -1
  261. package/dist/src/elements/ia-image-viewer/ia-image-viewer.js +3 -2
  262. package/dist/src/elements/ia-image-viewer/ia-image-viewer.js.map +1 -1
  263. package/dist/src/elements/ia-image-viewer/ia-imgview-controls.d.ts.map +1 -1
  264. package/dist/src/elements/ia-image-viewer/ia-imgview-controls.js +3 -2
  265. package/dist/src/elements/ia-image-viewer/ia-imgview-controls.js.map +1 -1
  266. package/dist/src/elements/ia-image-viewer/ia-imgview-slide.d.ts.map +1 -1
  267. package/dist/src/elements/ia-image-viewer/ia-imgview-slide.js +3 -2
  268. package/dist/src/elements/ia-image-viewer/ia-imgview-slide.js.map +1 -1
  269. package/dist/src/elements/ia-otp-form/ia-otp-form.d.ts.map +1 -1
  270. package/dist/src/elements/ia-otp-form/ia-otp-form.js +3 -2
  271. package/dist/src/elements/ia-otp-form/ia-otp-form.js.map +1 -1
  272. package/dist/src/elements/ia-playback-controls/ia-playback-controls.d.ts.map +1 -1
  273. package/dist/src/elements/ia-playback-controls/ia-playback-controls.js +3 -2
  274. package/dist/src/elements/ia-playback-controls/ia-playback-controls.js.map +1 -1
  275. package/dist/src/elements/ia-radio-player/ia-radio-player.d.ts.map +1 -1
  276. package/dist/src/elements/ia-radio-player/ia-radio-player.js +3 -2
  277. package/dist/src/elements/ia-radio-player/ia-radio-player.js.map +1 -1
  278. package/dist/src/elements/ia-radio-player/ia-search-results-switcher.d.ts.map +1 -1
  279. package/dist/src/elements/ia-radio-player/ia-search-results-switcher.js +3 -2
  280. package/dist/src/elements/ia-radio-player/ia-search-results-switcher.js.map +1 -1
  281. package/dist/src/elements/ia-reviews/assets/delete-icon.svg +8 -0
  282. package/dist/src/elements/ia-reviews/assets/star-basic.svg +6 -0
  283. package/dist/src/elements/ia-reviews/assets/star-selected.svg +8 -0
  284. package/dist/src/elements/ia-reviews/assets/star-unselected.svg +8 -0
  285. package/dist/src/elements/ia-reviews/ia-review-form.d.ts +103 -0
  286. package/dist/src/elements/ia-reviews/ia-review-form.d.ts.map +1 -0
  287. package/dist/src/elements/ia-reviews/ia-review-form.js +685 -0
  288. package/dist/src/elements/ia-reviews/ia-review-form.js.map +1 -0
  289. package/dist/src/elements/ia-reviews/ia-review.d.ts +51 -0
  290. package/dist/src/elements/ia-reviews/ia-review.d.ts.map +1 -0
  291. package/dist/src/elements/ia-reviews/ia-review.js +344 -0
  292. package/dist/src/elements/ia-reviews/ia-review.js.map +1 -0
  293. package/dist/src/elements/ia-reviews/ia-reviews.d.ts +68 -0
  294. package/dist/src/elements/ia-reviews/ia-reviews.d.ts.map +1 -0
  295. package/dist/src/elements/ia-reviews/ia-reviews.js +354 -0
  296. package/dist/src/elements/ia-reviews/ia-reviews.js.map +1 -0
  297. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.d.ts +23 -0
  298. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.d.ts.map +1 -0
  299. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.js +37 -0
  300. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.js.map +1 -0
  301. package/dist/src/elements/ia-reviews/mocks/mock-review-service.d.ts +12 -0
  302. package/dist/src/elements/ia-reviews/mocks/mock-review-service.d.ts.map +1 -0
  303. package/dist/src/elements/ia-reviews/mocks/mock-review-service.js +19 -0
  304. package/dist/src/elements/ia-reviews/mocks/mock-review-service.js.map +1 -0
  305. package/dist/src/elements/ia-reviews/models.d.ts +38 -0
  306. package/dist/src/elements/ia-reviews/models.d.ts.map +1 -0
  307. package/dist/src/elements/ia-reviews/models.js +2 -0
  308. package/dist/src/elements/ia-reviews/models.js.map +1 -0
  309. package/dist/src/elements/ia-reviews/review-service.d.ts +53 -0
  310. package/dist/src/elements/ia-reviews/review-service.d.ts.map +1 -0
  311. package/dist/src/elements/ia-reviews/review-service.js +97 -0
  312. package/dist/src/elements/ia-reviews/review-service.js.map +1 -0
  313. package/dist/src/elements/ia-reviews/utils/collapse-space.d.ts +13 -0
  314. package/dist/src/elements/ia-reviews/utils/collapse-space.d.ts.map +1 -0
  315. package/dist/src/elements/ia-reviews/utils/collapse-space.js +19 -0
  316. package/dist/src/elements/ia-reviews/utils/collapse-space.js.map +1 -0
  317. package/dist/src/elements/ia-reviews/utils/friendly-truncate.d.ts +14 -0
  318. package/dist/src/elements/ia-reviews/utils/friendly-truncate.d.ts.map +1 -0
  319. package/dist/src/elements/ia-reviews/utils/friendly-truncate.js +65 -0
  320. package/dist/src/elements/ia-reviews/utils/friendly-truncate.js.map +1 -0
  321. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.d.ts +9 -0
  322. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.d.ts.map +1 -0
  323. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.js +40 -0
  324. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.js.map +1 -0
  325. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.d.ts +9 -0
  326. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.d.ts.map +1 -0
  327. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.js +29 -0
  328. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.js.map +1 -0
  329. package/dist/src/elements/ia-reviews/utils/truncate-screenname.d.ts +13 -0
  330. package/dist/src/elements/ia-reviews/utils/truncate-screenname.d.ts.map +1 -0
  331. package/dist/src/elements/ia-reviews/utils/truncate-screenname.js +19 -0
  332. package/dist/src/elements/ia-reviews/utils/truncate-screenname.js.map +1 -0
  333. package/dist/src/elements/ia-scrubber-bar/ia-scrubber-bar.d.ts +2 -2
  334. package/dist/src/elements/ia-scrubber-bar/ia-scrubber-bar.d.ts.map +1 -1
  335. package/dist/src/elements/ia-scrubber-bar/ia-scrubber-bar.js +4 -5
  336. package/dist/src/elements/ia-scrubber-bar/ia-scrubber-bar.js.map +1 -1
  337. package/dist/src/elements/ia-status-indicator/ia-status-indicator.d.ts +3 -3
  338. package/dist/src/elements/ia-status-indicator/ia-status-indicator.d.ts.map +1 -1
  339. package/dist/src/elements/ia-status-indicator/ia-status-indicator.js +7 -12
  340. package/dist/src/elements/ia-status-indicator/ia-status-indicator.js.map +1 -1
  341. package/dist/src/elements/ia-topnav/assets/img/icon-audio.d.ts +3 -0
  342. package/dist/src/elements/ia-topnav/assets/img/icon-audio.d.ts.map +1 -0
  343. package/dist/src/elements/ia-topnav/assets/img/icon-audio.js +28 -0
  344. package/dist/src/elements/ia-topnav/assets/img/icon-audio.js.map +1 -0
  345. package/dist/src/elements/ia-topnav/assets/img/icon-close.d.ts +3 -0
  346. package/dist/src/elements/ia-topnav/assets/img/icon-close.d.ts.map +1 -0
  347. package/dist/src/elements/ia-topnav/assets/img/icon-close.js +20 -0
  348. package/dist/src/elements/ia-topnav/assets/img/icon-close.js.map +1 -0
  349. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.d.ts +3 -0
  350. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.d.ts.map +1 -0
  351. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.js +19 -0
  352. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.js.map +1 -0
  353. package/dist/src/elements/ia-topnav/assets/img/icon-donate.d.ts +3 -0
  354. package/dist/src/elements/ia-topnav/assets/img/icon-donate.d.ts.map +1 -0
  355. package/dist/src/elements/ia-topnav/assets/img/icon-donate.js +18 -0
  356. package/dist/src/elements/ia-topnav/assets/img/icon-donate.js.map +1 -0
  357. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.d.ts +3 -0
  358. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.d.ts.map +1 -0
  359. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.js +19 -0
  360. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.js.map +1 -0
  361. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.d.ts +3 -0
  362. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.d.ts.map +1 -0
  363. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.js +30 -0
  364. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.js.map +1 -0
  365. package/dist/src/elements/ia-topnav/assets/img/icon-images.d.ts +3 -0
  366. package/dist/src/elements/ia-topnav/assets/img/icon-images.d.ts.map +1 -0
  367. package/dist/src/elements/ia-topnav/assets/img/icon-images.js +19 -0
  368. package/dist/src/elements/ia-topnav/assets/img/icon-images.js.map +1 -0
  369. package/dist/src/elements/ia-topnav/assets/img/icon-search.d.ts +3 -0
  370. package/dist/src/elements/ia-topnav/assets/img/icon-search.d.ts.map +1 -0
  371. package/dist/src/elements/ia-topnav/assets/img/icon-search.js +19 -0
  372. package/dist/src/elements/ia-topnav/assets/img/icon-search.js.map +1 -0
  373. package/dist/src/elements/ia-topnav/assets/img/icon-software.d.ts +3 -0
  374. package/dist/src/elements/ia-topnav/assets/img/icon-software.d.ts.map +1 -0
  375. package/dist/src/elements/ia-topnav/assets/img/icon-software.js +18 -0
  376. package/dist/src/elements/ia-topnav/assets/img/icon-software.js.map +1 -0
  377. package/dist/src/elements/ia-topnav/assets/img/icon-texts.d.ts +3 -0
  378. package/dist/src/elements/ia-topnav/assets/img/icon-texts.d.ts.map +1 -0
  379. package/dist/src/elements/ia-topnav/assets/img/icon-texts.js +18 -0
  380. package/dist/src/elements/ia-topnav/assets/img/icon-texts.js.map +1 -0
  381. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.d.ts +3 -0
  382. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.d.ts.map +1 -0
  383. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.js +18 -0
  384. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.js.map +1 -0
  385. package/dist/src/elements/ia-topnav/assets/img/icon-upload.d.ts +3 -0
  386. package/dist/src/elements/ia-topnav/assets/img/icon-upload.d.ts.map +1 -0
  387. package/dist/src/elements/ia-topnav/assets/img/icon-upload.js +21 -0
  388. package/dist/src/elements/ia-topnav/assets/img/icon-upload.js.map +1 -0
  389. package/dist/src/elements/ia-topnav/assets/img/icon-user.d.ts +3 -0
  390. package/dist/src/elements/ia-topnav/assets/img/icon-user.d.ts.map +1 -0
  391. package/dist/src/elements/ia-topnav/assets/img/icon-user.js +19 -0
  392. package/dist/src/elements/ia-topnav/assets/img/icon-user.js.map +1 -0
  393. package/dist/src/elements/ia-topnav/assets/img/icon-video.d.ts +3 -0
  394. package/dist/src/elements/ia-topnav/assets/img/icon-video.d.ts.map +1 -0
  395. package/dist/src/elements/ia-topnav/assets/img/icon-video.js +19 -0
  396. package/dist/src/elements/ia-topnav/assets/img/icon-video.js.map +1 -0
  397. package/dist/src/elements/ia-topnav/assets/img/icon-web.d.ts +3 -0
  398. package/dist/src/elements/ia-topnav/assets/img/icon-web.d.ts.map +1 -0
  399. package/dist/src/elements/ia-topnav/assets/img/icon-web.js +19 -0
  400. package/dist/src/elements/ia-topnav/assets/img/icon-web.js.map +1 -0
  401. package/dist/src/elements/ia-topnav/assets/img/icon.d.ts +6 -0
  402. package/dist/src/elements/ia-topnav/assets/img/icon.d.ts.map +1 -0
  403. package/dist/src/elements/ia-topnav/assets/img/icon.js +17 -0
  404. package/dist/src/elements/ia-topnav/assets/img/icon.js.map +1 -0
  405. package/dist/src/elements/ia-topnav/assets/img/icons.d.ts +19 -0
  406. package/dist/src/elements/ia-topnav/assets/img/icons.d.ts.map +1 -0
  407. package/dist/src/elements/ia-topnav/assets/img/icons.js +33 -0
  408. package/dist/src/elements/ia-topnav/assets/img/icons.js.map +1 -0
  409. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.d.ts +3 -0
  410. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.d.ts.map +1 -0
  411. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.js +21 -0
  412. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.js.map +1 -0
  413. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.d.ts +3 -0
  414. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.d.ts.map +1 -0
  415. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.js +13 -0
  416. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.js.map +1 -0
  417. package/dist/src/elements/ia-topnav/data/menus.d.ts +17 -0
  418. package/dist/src/elements/ia-topnav/data/menus.d.ts.map +1 -0
  419. package/dist/src/elements/ia-topnav/data/menus.js +754 -0
  420. package/dist/src/elements/ia-topnav/data/menus.js.map +1 -0
  421. package/dist/src/elements/ia-topnav/dropdown-menu.d.ts +21 -0
  422. package/dist/src/elements/ia-topnav/dropdown-menu.d.ts.map +1 -0
  423. package/dist/src/elements/ia-topnav/dropdown-menu.js +315 -0
  424. package/dist/src/elements/ia-topnav/dropdown-menu.js.map +1 -0
  425. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.d.ts +11 -0
  426. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.d.ts.map +1 -0
  427. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.js +89 -0
  428. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.js.map +1 -0
  429. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.d.ts +6 -0
  430. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.d.ts.map +1 -0
  431. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.js +47 -0
  432. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.js.map +1 -0
  433. package/dist/src/elements/ia-topnav/ia-topnav-login-button.d.ts +20 -0
  434. package/dist/src/elements/ia-topnav/ia-topnav-login-button.d.ts.map +1 -0
  435. package/dist/src/elements/ia-topnav/ia-topnav-login-button.js +183 -0
  436. package/dist/src/elements/ia-topnav/ia-topnav-login-button.js.map +1 -0
  437. package/dist/src/elements/ia-topnav/ia-topnav-media-button.d.ts +31 -0
  438. package/dist/src/elements/ia-topnav/ia-topnav-media-button.d.ts.map +1 -0
  439. package/dist/src/elements/ia-topnav/ia-topnav-media-button.js +287 -0
  440. package/dist/src/elements/ia-topnav/ia-topnav-media-button.js.map +1 -0
  441. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.d.ts +21 -0
  442. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.d.ts.map +1 -0
  443. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.js +222 -0
  444. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.js.map +1 -0
  445. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.d.ts +16 -0
  446. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.d.ts.map +1 -0
  447. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.js +221 -0
  448. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.js.map +1 -0
  449. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.d.ts +20 -0
  450. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.d.ts.map +1 -0
  451. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.js +285 -0
  452. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.js.map +1 -0
  453. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.d.ts +12 -0
  454. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.d.ts.map +1 -0
  455. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.js +65 -0
  456. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.js.map +1 -0
  457. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.d.ts +53 -0
  458. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.d.ts.map +1 -0
  459. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.js +653 -0
  460. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.js.map +1 -0
  461. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.d.ts +12 -0
  462. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.d.ts.map +1 -0
  463. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.js +128 -0
  464. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.js.map +1 -0
  465. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.d.ts +4 -0
  466. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.d.ts.map +1 -0
  467. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.js +10 -0
  468. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.js.map +1 -0
  469. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.d.ts +7 -0
  470. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.d.ts.map +1 -0
  471. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.js +39 -0
  472. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.js.map +1 -0
  473. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.d.ts +10 -0
  474. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.d.ts.map +1 -0
  475. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.js +64 -0
  476. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.js.map +1 -0
  477. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.d.ts +20 -0
  478. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.d.ts.map +1 -0
  479. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.js +131 -0
  480. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.js.map +1 -0
  481. package/dist/src/elements/ia-topnav/ia-topnav.d.ts +88 -0
  482. package/dist/src/elements/ia-topnav/ia-topnav.d.ts.map +1 -0
  483. package/dist/src/elements/ia-topnav/ia-topnav.js +443 -0
  484. package/dist/src/elements/ia-topnav/ia-topnav.js.map +1 -0
  485. package/dist/src/elements/ia-topnav/lib/helpers.d.ts +13 -0
  486. package/dist/src/elements/ia-topnav/lib/helpers.d.ts.map +1 -0
  487. package/dist/src/elements/ia-topnav/lib/helpers.js +24 -0
  488. package/dist/src/elements/ia-topnav/lib/helpers.js.map +1 -0
  489. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.d.ts +46 -0
  490. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.d.ts.map +1 -0
  491. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.js +136 -0
  492. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.js.map +1 -0
  493. package/dist/src/elements/ia-topnav/models.d.ts +65 -0
  494. package/dist/src/elements/ia-topnav/models.d.ts.map +1 -0
  495. package/dist/src/elements/ia-topnav/models.js +10 -0
  496. package/dist/src/elements/ia-topnav/models.js.map +1 -0
  497. package/dist/src/elements/ia-topnav/subnav-list-styles.d.ts +2 -0
  498. package/dist/src/elements/ia-topnav/subnav-list-styles.d.ts.map +1 -0
  499. package/dist/src/elements/ia-topnav/subnav-list-styles.js +49 -0
  500. package/dist/src/elements/ia-topnav/subnav-list-styles.js.map +1 -0
  501. package/dist/src/elements/ia-topnav/tracked-element.d.ts +6 -0
  502. package/dist/src/elements/ia-topnav/tracked-element.d.ts.map +1 -0
  503. package/dist/src/elements/ia-topnav/tracked-element.js +29 -0
  504. package/dist/src/elements/ia-topnav/tracked-element.js.map +1 -0
  505. package/dist/src/elements/ia-transcript-view/ia-transcript-entry.d.ts.map +1 -1
  506. package/dist/src/elements/ia-transcript-view/ia-transcript-entry.js +4 -0
  507. package/dist/src/elements/ia-transcript-view/ia-transcript-entry.js.map +1 -1
  508. package/dist/src/elements/ia-transcript-view/ia-transcript-view.d.ts.map +1 -1
  509. package/dist/src/elements/ia-transcript-view/ia-transcript-view.js +3 -2
  510. package/dist/src/elements/ia-transcript-view/ia-transcript-view.js.map +1 -1
  511. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.d.ts +24 -0
  512. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.d.ts.map +1 -0
  513. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.js +240 -0
  514. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.js.map +1 -0
  515. package/dist/src/elements/index.d.ts +63 -0
  516. package/dist/src/elements/index.d.ts.map +1 -1
  517. package/dist/src/elements/index.js +63 -0
  518. package/dist/src/elements/index.js.map +1 -1
  519. package/dist/src/locales/es.d.ts +254 -0
  520. package/dist/src/locales/es.d.ts.map +1 -0
  521. package/dist/src/locales/es.js +304 -0
  522. package/dist/src/locales/es.js.map +1 -0
  523. package/package.json +43 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-donation-edit-donation.js","sourceRoot":"","sources":["../../../../../src/elements/ia-donation-form/form-elements/ia-donation-edit-donation.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,GAAG,EACH,IAAI,EACJ,UAAU,EACV,OAAO,GAIR,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,uBAAuB,CAAC;AAE/B,6DAA6D;AAC7D,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CAClB,CAAC;AAKX,2CAA2C;AAC3C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,YAAY,EAAE,cAAc;IAC5B,MAAM,EAAE,QAAQ;CACR,CAAC;AAKX,kFAAkF;AAClF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,mBAAmB,EAAE,uBAAuB;IAC5C,qBAAqB,EAAE,yBAAyB;IAChD,eAAe,EAAE,mBAAmB;IACpC,cAAc,EAAE,kBAAkB;CAC1B,CAAC;AAKX,sDAAsD;AACtD,MAAM,CAAC,MAAM,kCAAkC,GAAG;IAChD,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;CACJ,CAAC;AAKX,yEAAyE;AACzE,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,UAAU,EAAE,aAAa;IACzB,SAAS,EAAE,YAAY;CACf,CAAC;AAKX;;;;;;;;GAQG;AAGI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,UAAU;IAA/C;;QAEL,iBAAY,GAAwB,2BAA2B,CAAC;QAGhE,mBAAc,GACZ,0BAA0B,CAAC,WAAW,CAAC;QAQd,kBAAa,GAAa,sBAAsB,CAAC;QAG5E,0BAAqB,GACnB,iCAAiC,CAAC,SAAS,CAAC;QAG9C,2BAAsB,GACpB,kCAAkC,CAAC,MAAM,CAAC;QAED,qBAAgB,GAE9C,SAAS,CAAC;QAEoB,0BAAqB,GAEnD,SAAS,CAAC;QAEvB,6FAA6F;QAClD,2BAAsB,GAEpD,SAAS,CAAC;QAIN,yBAAoB,GAAG,KAAK,CAAC;QAMtC,sBAAiB,GAAsB,IAAI,iBAAiB,EAAE,CAAC;IA+tBzE,CAAC;IA7tBC,MAAM;QACJ,MAAM,WAAW,GACf,IAAI,CAAC,sBAAsB,KAAK,SAAS;YACvC,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC;YAC/B,CAAC,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,sBAAsB;YAC7B,kCAAkC,CAAC,MAAM;YACvC,CAAC,CAAC,IAAI,CAAC,wBAAwB;YAC/B,CAAC,CAAC,OAAO;;;wBAGO,IAAI,CAAC,4BAA4B;mBACtC,WAAW;oBACV,IAAI,CAAC,qBAAqB;;UAEpC,IAAI,CAAC,sBAAsB,KAAK,MAAM;YACtC,CAAC,CAAC,IAAI,CAAA,iDAAiD;YACvD,CAAC,CAAC,OAAO;;YAEP,IAAI,CAAC,qBAAqB;YAC1B,IAAI,CAAC,gBAAgB,KAAK,SAAS;YACnC,CAAC,CAAC,IAAI,CAAA,6BAA6B,IAAI,CAAC,oBAAoB,OAAO;YACnE,CAAC,CAAC,OAAO;;;8BAGS,IAAI,CAAC,KAAK;;UAE9B,IAAI,CAAC,qBAAqB,KAAK,SAAS;YACxC,CAAC,CAAC,IAAI,CAAA;gBACA,IAAI,CAAC,yBAAyB;gBAC9B,IAAI,CAAC,sBAAsB;gBAC7B,kCAAkC,CAAC,QAAQ;gBACzC,CAAC,CAAC,IAAI,CAAC,yBAAyB;gBAChC,CAAC,CAAC,OAAO;mBACN;YACT,CAAC,CAAC,OAAO;;KAEd,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,iBAAiC;QACvC,IAAI,iBAAiB,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC;YAC9D,CAAC;QACH,CAAC;QACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACpC,CAAC;QACD,IACE,iBAAiB,CAAC,GAAG,CAAC,uBAAuB,CAAC;YAC9C,IAAI,CAAC,qBAAqB,KAAK,SAAS,EACxC,CAAC;YACD,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAmB,CAAC;gBAC1C,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY;gBAC5C,MAAM,EAAE,IAAI,CAAC,qBAAqB;gBAClC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS;aACvC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAY,wBAAwB;QAClC,OAAO,IAAI,CAAA;;;mBAGI,GAAG,CAAC,oBAAoB,CAAC;oBACxB,IAAI,CAAC,qBAAqB;;;YAGlC,IAAI,CAAC,iBAAiB;;;KAG7B,CAAC;IACJ,CAAC;IAED,IAAY,yBAAyB;QACnC,OAAO,IAAI,CAAA;;;;;mBAKI,IAAI,CAAC,sBAAsB;qBACzB,IAAI,CAAC,YAAY,CAAC,YAAY,KAAK,YAAY,CAAC,OAAO;;;yCAGnC,GAAG,CAAC,mBAAmB,CAAC;;KAE5D,CAAC;IACJ,CAAC;IAED,IAAY,yBAAyB;QACnC,OAAO,IAAI,CAAA;;;;;mBAKI,IAAI,CAAC,gBAAgB;qBACnB,IAAI,CAAC,YAAY,CAAC,SAAS;;;kCAGd,IAAI,CAAC,aAAa;;KAE/C,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,IAAY,4BAA4B;QACtC,OAAO,IAAI,CAAC,sBAAsB;YAChC,kCAAkC,CAAC,MAAM;YACzC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,IAAY,qBAAqB;QAC/B,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5B,KAAK,0BAA0B,CAAC,WAAW;gBACzC,OAAO,wBAAwB,CAAC,SAAS,CAAC;YAC5C,KAAK,0BAA0B,CAAC,WAAW;gBACzC,OAAO,wBAAwB,CAAC,SAAS,CAAC;QAC9C,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,8BAA8B;QACpC,MAAM,WAAW,GACf,IAAI,CAAC,gBAAgB,KAAK,MAAM;YAChC,IAAI,CAAC,qBAAqB,KAAK,MAAM;YACrC,IAAI,CAAC,sBAAsB,KAAK,kCAAkC,CAAC,IAAI,CAAC;QAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QAC9C,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,WAAW,GAAG,CAAC,CAAC;gBAChB,gBAAgB,GAAG,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,CAAC;gBACJ,WAAW,GAAG,CAAC,CAAC;gBAChB,gBAAgB,GAAG,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,CAAC;gBACJ,WAAW,GAAG,CAAC,CAAC;gBAChB,gBAAgB,GAAG,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,CAAC;gBACJ,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,GAAG,CAAC,CAAC;oBAChB,gBAAgB,GAAG,CAAC,CAAC;oBACrB,MAAM;gBACR,CAAC;gBACD,WAAW,GAAG,CAAC,CAAC;gBAChB,gBAAgB,GAAG,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,CAAC;gBACJ,WAAW,GAAG,CAAC,CAAC;gBAChB,gBAAgB,GAAG,CAAC,CAAC;gBACrB,MAAM;QACV,CAAC;QAED,IACE,IAAI,CAAC,qBAAqB;YAC1B,iCAAiC,CAAC,UAAU,EAC5C,CAAC;YACD,WAAW,GAAG,WAAW,GAAG,CAAC,CAAC;YAC9B,gBAAgB,GAAG,CAAC,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,wCAAwC,EACxC,GAAG,WAAW,EAAE,CACjB,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,2CAA2C,EAC3C,GAAG,gBAAgB,EAAE,CACtB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,0BAA0B;QAChC,wEAAwE;QACxE,sEAAsE;QACtE,8BAA8B;QAC9B,wEAAwE;QACxE,kBAAkB;QAClB,MAAM,oBAAoB,GACxB,CAAC,CAAC,IAAI,CAAC,iBAAiB;YACxB,IAAI,CAAC,UAAU,EAAE,aAAa,KAAK,IAAI,CAAC,iBAAiB,CAAC;QAC5D,IACE,CAAC,IAAI,CAAC,cAAc;YACpB,CAAC,CAAC,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,EACpD,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAChD,6BAA6B,0BAA0B,CAAC,MAAM,aAAa,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CACxG,CAAC;YACF,IAAI,WAAW;gBAAE,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;YAC5C,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,IAAI,CAAC,iBAAiB,CAAC,KAAK,GAAG,EAAE,CAAC;YACpC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YACjC,oEAAoE;YACpE,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACpD,IAAI,CAAC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC,wBAAwB,CAAC;gBAC7D,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CACnD,IAAI,CAAC,YAAY,CAAC,MAAM,CACzB,CAAC;gBACF,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAY,aAAa;QACvB,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;YACtD,MAAM,EAAE,GAAG;SACZ,CAAC,CAAC,MAAM,EAAE,CAAC;QAEZ,OAAO,GAAG,CAAC,GAAG,CAAA,uBAAuB,eAAe,iBAAiB,CAAC,CAAC;IACzE,CAAC;IAED;;;OAGG;IACK,qBAAqB,CAAC,OAAe;QAC3C,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,QAAQ,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IAChE,CAAC;IAED,IAAY,iBAAiB;QAC3B,OAAO,IAAI,CAAA;;UAEL,IAAI,CAAC,cAAc,CAAC;YACpB,KAAK,EAAE,0BAA0B,CAAC,YAAY;YAC9C,KAAK,EAAE,YAAY,CAAC,OAAO;YAC3B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC;YAC5B,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,KAAK,YAAY,CAAC,OAAO;SACjE,CAAC;;;;UAIA,IAAI,CAAC,cAAc,CAAC;YACpB,KAAK,EAAE,0BAA0B,CAAC,YAAY;YAC9C,KAAK,EAAE,YAAY,CAAC,OAAO;YAC3B,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC;YAC3B,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,KAAK,YAAY,CAAC,OAAO;SACjE,CAAC;;KAEL,CAAC;IACJ,CAAC;IAED,IAAY,qBAAqB;QAC/B,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAClC,MAAM,OAAO,GACX,CAAC,IAAI,CAAC,oBAAoB,IAAI,MAAM,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAEpE,OAAO,IAAI,CAAA;;cAEL,IAAI,CAAC,cAAc,CAAC;gBACpB,KAAK,EAAE,0BAA0B,CAAC,MAAM;gBACxC,KAAK,EAAE,GAAG,MAAM,EAAE;gBAClB,WAAW,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;gBAC/C,OAAO;aACR,CAAC;;SAEL,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,OAKtB;QACC,MAAM,OAAO,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,SAAS,CAAC;QAC3D,OAAO,IAAI,CAAA;;;;iBAIE,OAAO,CAAC,KAAK;kBACZ,OAAO,CAAC,KAAK;eAChB,OAAO;;qBAED,OAAO,CAAC,OAAO;oBAChB,IAAI,CAAC,aAAa;mBACnB,CAAC,CAAQ,EAAQ,EAAE;YAC1B,iEAAiE;YACjE,gEAAgE;YAChE,8DAA8D;YAC9D,MAAM,iBAAiB,GACrB,OAAO,CAAC,KAAK,KAAK,0BAA0B,CAAC,MAAM,CAAC;YACtD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,WAAW,GACf,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;gBACzD,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;QACH,CAAC;;qBAEU,OAAO,IAAI,OAAO,CAAC,WAAW;;KAE9C,CAAC;IACJ,CAAC;IAED,IAAY,cAAc;QACxB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IAED,IAAY,wBAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,OAAO,EAAE,CAAC;QACpC,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IACrE,CAAC;IAED,IAAY,oBAAoB;QAC9B,OAAO,IAAI,CAAA;;;;iBAIE,0BAA0B,CAAC,MAAM;;;;oBAI9B,IAAI,CAAC,mBAAmB;;;;6CAIC,GAAG,CAAC,WAAW,CAAC;;;;;yBAKpC,GAAG,CAAC,0BAA0B,CAAC;oBACpC,IAAI,CAAC,wBAAwB;qBAC5B,IAAI,CAAC,mBAAmB;uBACtB,IAAI,CAAC,iBAAiB,CAAC,OAAO;qBAChC,IAAI,CAAC,mBAAmB;oBACzB,IAAI,CAAC,mBAAmB;;;;KAIvC,CAAC;IACJ,CAAC;IAEO,mBAAmB;QACzB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAEO,mBAAmB,CAAC,CAAQ;QAClC,MAAM,MAAM,GAAG,CAAC,CAAC,MAA0B,CAAC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACK,mBAAmB;QACzB,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAEO,gBAAgB,CAAC,CAAQ;QAC/B,MAAM,MAAM,GAAG,CAAC,CAAC,MAA0B,CAAC;QAC5C,IAAI,CAAC,kBAAkB,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;IAEO,mBAAmB,CAAC,CAAQ;QAClC,MAAM,MAAM,GAAG,CAAC,CAAC,MAA0B,CAAC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAEO,uBAAuB,CAAC,KAAa;QAC3C,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,yBAAyB,CAC5B,sBAAsB,CAAC,qBAAqB,CAC7C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,wBAAwB,CAAC,MAA8B;QAC7D,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,sBAAsB,CAAC,mBAAmB;gBAC7C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;gBACvB,MAAM;YACR,KAAK,sBAAsB,CAAC,eAAe;gBACzC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAA;;;;SAIpB,CAAC,CAAC;gBACH,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,sBAAsB,CAAC,cAAc;gBACxC,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA,GAAG,GAAG,CAAC,sCAAsC,CAAC,EAAE,CAAC;gBACpE,CAAC;gBACD,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,sBAAsB,CAAC,qBAAqB;gBAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA,GAAG,GAAG,CAAC,sCAAsC,CAAC,EAAE,CAAC;gBAClE,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM;QACV,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,MAAc;QAClC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;QAElD,sDAAsD;QACtD,IAAI,kBAAkB,KAAK,sBAAsB,CAAC,mBAAmB,EAAE,CAAC;YACtE,IAAI,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,MAAc;QAC1C,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAClB,OAAO,sBAAsB,CAAC,qBAAqB,CAAC;QACtD,CAAC;QAED,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACpB,OAAO,sBAAsB,CAAC,eAAe,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,OAAO,sBAAsB,CAAC,cAAc,CAAC;QAC/C,CAAC;QAED,OAAO,sBAAsB,CAAC,mBAAmB,CAAC;IACpD,CAAC;IAEO,aAAa,CAAC,CAAQ;QAC5B,MAAM,WAAW,GAAG,CAAC,CAAC,MAA0B,CAAC;QACjD,MAAM,KAAK,GAAG,WAAW,CAAC,IAAkC,CAAC;QAC7D,MAAM,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC;QAE9B,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,0BAA0B,CAAC,MAAM;gBACpC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,MAAM;YACR,KAAK,0BAA0B,CAAC,YAAY;gBAC1C,IAAI,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,KAAqB,EAAE,CAAC,CAAC;gBACjE,MAAM;YACR;gBACE,MAAM;QACV,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,CAAQ;QACrC,MAAM,SAAS,GAAI,CAAC,CAAC,MAA2B,CAAC,OAAO,CAAC;QACzD,MAAM,YAAY,GAAG,SAAS;YAC5B,CAAC,CAAC,YAAY,CAAC,OAAO;YACtB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC;QACzB,IAAI,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAC5C,CAAC;IAEO,yBAAyB,CAAC,KAA6B;QAC7D,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,mBAAmB,EAAE;YACjD,MAAM,EAAE,EAAE,KAAK,EAAE;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEO,mBAAmB,CAAC,MAAc;QACxC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,CAAC,iBAAiB,CAAC,KAAK,GAAG,EAAE,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEO,kBAAkB,CAAC,OAI1B;QACC,MAAM,eAAe,GAAG,IAAI,mBAAmB,CAAC;YAC9C,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY;YACpE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM;YAClD,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS;SAC5D,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC;QAEpC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,qBAAqB,EAAE;YACnD,MAAM,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE;SAC1C,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO;YACL,WAAW;YACX,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiNF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA1wBC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4DACqC;AAGhE;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8DAEc;AAMb;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qEAAgC;AAEhC;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;6DAAkD;AAG5E;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qEAEmB;AAG9C;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;sEAEE;AAED;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gEAEnB;AAEoB;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qEAEnB;AAGoB;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;sEAEnB;AAEN;IAAhB,KAAK,EAAE;qDAAgC;AAEvB;IAAhB,KAAK,EAAE;oEAAsC;AAEN;IAAvC,KAAK,CAAC,uBAAuB,CAAC;kEAA+C;AAEvC;IAAtC,KAAK,CAAC,sBAAsB,CAAC;iEAA8C;AA3CjE,sBAAsB;IAFlC,aAAa,CAAC,2BAA2B,CAAC;IAC1C,SAAS,EAAE;GACC,sBAAsB,CA4wBlC","sourcesContent":["import {\n css,\n html,\n LitElement,\n nothing,\n type CSSResultGroup,\n type PropertyValues,\n type TemplateResult,\n} from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { customElement } from '@src/util/custom-element';\nimport { localized, msg, str } from '@lit/localize';\nimport currency from 'currency.js';\n\nimport themeStyles from '@src/themes/theme-styles';\nimport { CurrencyValidator } from '../currency-validator';\nimport {\n DonationPaymentInfo,\n defaultDonationAmounts,\n defaultSelectedDonationInfo,\n} from '../models/donation-payment-info';\nimport { DonationType } from '../models/donation-type';\nimport { DonationSectionBadgeMode } from './ia-donation-section';\nimport './ia-donation-section';\n\n/** Whether the numbered step badges show on the sections. */\nexport const EditDonationStepNumberMode = {\n HideNumbers: 'hidenumbers',\n ShowNumbers: 'shownumbers',\n} as const;\n\nexport type EditDonationStepNumberMode =\n (typeof EditDonationStepNumberMode)[keyof typeof EditDonationStepNumberMode];\n\n/** The radio button groups in the form. */\nexport const EditDonationSelectionGroup = {\n DonationType: 'donationType',\n Amount: 'amount',\n} as const;\n\nexport type EditDonationSelectionGroup =\n (typeof EditDonationSelectionGroup)[keyof typeof EditDonationSelectionGroup];\n\n/** The outcome of validating an amount. Sent in the `editDonationError` event. */\nexport const EditDonationInfoStatus = {\n ValidDonationAmount: 'valid_donation_amount',\n InvalidDonationAmount: 'invalid_donation_amount',\n DonationTooHigh: 'donation_too_high',\n DonationTooLow: 'donation_too_low',\n} as const;\n\nexport type EditDonationInfoStatus =\n (typeof EditDonationInfoStatus)[keyof typeof EditDonationInfoStatus];\n\n/** How the one-time / monthly choice is presented. */\nexport const EditDonationFrequencySelectionMode = {\n Button: 'button',\n Checkbox: 'checkbox',\n Hide: 'hide',\n} as const;\n\nexport type EditDonationFrequencySelectionMode =\n (typeof EditDonationFrequencySelectionMode)[keyof typeof EditDonationFrequencySelectionMode];\n\n/** Whether the amount buttons wrap onto several lines or stay on one. */\nexport const EditDonationAmountSelectionLayout = {\n SingleLine: 'single-line',\n MultiLine: 'multi-line',\n} as const;\n\nexport type EditDonationAmountSelectionLayout =\n (typeof EditDonationAmountSelectionLayout)[keyof typeof EditDonationAmountSelectionLayout];\n\n/**\n * The part of the donation form where the donor picks a frequency, an amount\n * (preset or custom) and whether to cover the processing fee. Fires\n * `donationInfoChanged` with the new `DonationPaymentInfo` on every change\n * and `editDonationError` when a custom amount is out of range.\n *\n * The petabox donation banner uses this on its own, without the rest of the\n * form.\n */\n@customElement('ia-donation-edit-donation')\n@localized()\nexport class IADonationEditDonation extends LitElement {\n @property({ type: Object })\n donationInfo: DonationPaymentInfo = defaultSelectedDonationInfo;\n\n @property({ type: String })\n stepNumberMode: EditDonationStepNumberMode =\n EditDonationStepNumberMode.ShowNumbers;\n\n /**\n * A convenience for setting the selected amount from plain HTML. When\n * present it wins over `donationInfo`.\n */\n @property({ type: Number }) defaultSelectedAmount?: number;\n\n @property({ type: Array }) amountOptions: number[] = defaultDonationAmounts;\n\n @property({ type: String })\n amountSelectionLayout: EditDonationAmountSelectionLayout =\n EditDonationAmountSelectionLayout.MultiLine;\n\n @property({ type: String, reflect: true })\n frequencySelectionMode: EditDonationFrequencySelectionMode =\n EditDonationFrequencySelectionMode.Button;\n\n @property({ type: String, reflect: true }) customAmountMode:\n | 'display'\n | 'hide' = 'display';\n\n @property({ type: String, reflect: true }) coverFeesCheckboxMode:\n | 'display'\n | 'hide' = 'display';\n\n /** `slot` renders the `edit-donation-amount-title` slot in place of the default headline. */\n @property({ type: String, reflect: true }) amountTitleDisplayMode:\n | 'default'\n | 'slot' = 'default';\n\n @state() private error?: TemplateResult;\n\n @state() private customAmountSelected = false;\n\n @query('#custom-amount-button') private customAmountButton!: HTMLInputElement;\n\n @query('#custom-amount-input') private customAmountInput!: HTMLInputElement;\n\n private currencyValidator: CurrencyValidator = new CurrencyValidator();\n\n render(): TemplateResult {\n const amountTitle =\n this.amountTitleDisplayMode === 'default'\n ? msg('Choose an amount (USD)')\n : '';\n return html`\n ${this.frequencySelectionMode ===\n EditDonationFrequencySelectionMode.Button\n ? this.frequencyButtonsTemplate\n : nothing}\n\n <ia-donation-section\n sectionBadge=\"${this.amountSelectionSectionNumber}\"\n headline=${amountTitle}\n badgeMode=${this.formSectionNumberMode}\n >\n ${this.amountTitleDisplayMode === 'slot'\n ? html`<slot name=\"edit-donation-amount-title\"></slot>`\n : nothing}\n <ul class=\"amount-selector\">\n ${this.presetAmountsTemplate}\n ${this.customAmountMode === 'display'\n ? html`<li class=\"custom-amount\">${this.customAmountTemplate}</li>`\n : nothing}\n </ul>\n\n <div class=\"errors\">${this.error}</div>\n\n ${this.coverFeesCheckboxMode === 'display'\n ? html`<div class=\"checkbox-options\">\n ${this.coverFeesCheckboxTemplate}\n ${this.frequencySelectionMode ===\n EditDonationFrequencySelectionMode.Checkbox\n ? this.frequencyCheckboxTemplate\n : nothing}\n </div>`\n : nothing}\n </ia-donation-section>\n `;\n }\n\n updated(changedProperties: PropertyValues): void {\n if (changedProperties.has('customAmountSelected')) {\n if (this.customAmountButton) {\n this.customAmountButton.checked = this.customAmountSelected;\n }\n }\n if (changedProperties.has('amountOptions')) {\n this.customAmountSelected = false;\n this.updateSelectedDonationInfo();\n this.setupAmountColumnsLayoutConfig();\n }\n if (changedProperties.has('amountSelectionLayout')) {\n this.setupAmountColumnsLayoutConfig();\n }\n if (changedProperties.has('donationInfo')) {\n this.updateSelectedDonationInfo();\n }\n if (\n changedProperties.has('defaultSelectedAmount') &&\n this.defaultSelectedAmount !== undefined\n ) {\n this.customAmountSelected = false;\n this.donationInfo = new DonationPaymentInfo({\n donationType: this.donationInfo.donationType,\n amount: this.defaultSelectedAmount,\n coverFees: this.donationInfo.coverFees,\n });\n }\n }\n\n private get frequencyButtonsTemplate(): TemplateResult {\n return html`\n <ia-donation-section\n sectionBadge=\"1\"\n headline=${msg('Choose a frequency')}\n badgeMode=${this.formSectionNumberMode}\n >\n <ul class=\"frequency-selector\">\n ${this.frequencyTemplate}\n </ul>\n </ia-donation-section>\n `;\n }\n\n private get frequencyCheckboxTemplate(): TemplateResult {\n return html`\n <div class=\"checkbox-option-container\">\n <input\n type=\"checkbox\"\n id=\"make-this-monthly\"\n @input=${this.monthlyCheckboxChecked}\n .checked=${this.donationInfo.donationType === DonationType.Monthly}\n tabindex=\"0\"\n />\n <label for=\"make-this-monthly\">${msg('Make this monthly')}</label>\n </div>\n `;\n }\n\n private get coverFeesCheckboxTemplate(): TemplateResult {\n return html`\n <div class=\"checkbox-option-container\">\n <input\n type=\"checkbox\"\n id=\"cover-fees\"\n @input=${this.coverFeesChecked}\n .checked=${this.donationInfo.coverFees}\n tabindex=\"0\"\n />\n <label for=\"cover-fees\">${this.coverFeesText}</label>\n </div>\n `;\n }\n\n /** The amount step is 2 when the frequency buttons come first, otherwise 1. */\n private get amountSelectionSectionNumber(): number {\n return this.frequencySelectionMode ===\n EditDonationFrequencySelectionMode.Button\n ? 2\n : 1;\n }\n\n private get formSectionNumberMode(): DonationSectionBadgeMode {\n switch (this.stepNumberMode) {\n case EditDonationStepNumberMode.ShowNumbers:\n return DonationSectionBadgeMode.ShowBadge;\n case EditDonationStepNumberMode.HideNumbers:\n return DonationSectionBadgeMode.HideBadge;\n }\n }\n\n /**\n * Picks the amount grid's column count, and how many columns the custom\n * amount field spans, from how many preset amounts there are.\n */\n private setupAmountColumnsLayoutConfig(): void {\n const minimalView =\n this.customAmountMode === 'hide' &&\n this.coverFeesCheckboxMode === 'hide' &&\n this.frequencySelectionMode === EditDonationFrequencySelectionMode.Hide;\n const amountCount = this.amountOptions.length;\n let columnCount = 5;\n let customAmountSpan = 3;\n switch (amountCount) {\n case 7:\n columnCount = 5;\n customAmountSpan = 3;\n break;\n case 6:\n columnCount = 4;\n customAmountSpan = 2;\n break;\n case 5:\n columnCount = 4;\n customAmountSpan = 3;\n break;\n case 4:\n if (minimalView) {\n columnCount = 4;\n customAmountSpan = 0;\n break;\n }\n columnCount = 3;\n customAmountSpan = 2;\n break;\n case 3:\n columnCount = 2;\n customAmountSpan = 1;\n break;\n }\n\n if (\n this.amountSelectionLayout ===\n EditDonationAmountSelectionLayout.SingleLine\n ) {\n columnCount = amountCount + 3;\n customAmountSpan = 3;\n }\n\n this.style.setProperty(\n '--ia-donation-edit-amount-column-count',\n `${columnCount}`,\n );\n this.style.setProperty(\n '--ia-donation-edit-custom-amount-col-span',\n `${customAmountSpan}`,\n );\n }\n\n /**\n * Syncs the radios and the custom field with `donationInfo`. A preset\n * amount checks its radio and clears the custom field; anything else\n * selects the custom field and formats the amount into it.\n */\n private updateSelectedDonationInfo(): void {\n // Keep the custom amount selected while the donor is typing in it, even\n // if the value matches a preset, so the selection doesn't jump to the\n // preset radio mid-keystroke.\n // With the custom field hidden both sides would be null, so guard on it\n // existing first.\n const typingInCustomAmount =\n !!this.customAmountInput &&\n this.shadowRoot?.activeElement === this.customAmountInput;\n if (\n !this.isCustomAmount &&\n !(this.customAmountSelected && typingInCustomAmount)\n ) {\n const radioButton = this.shadowRoot?.querySelector<HTMLInputElement>(\n `input[type=\"radio\"][name=\"${EditDonationSelectionGroup.Amount}\"][value=\"${this.donationInfo.amount}\"]`,\n );\n if (radioButton) radioButton.checked = true;\n this.customAmountSelected = false;\n this.error = undefined;\n if (this.customAmountInput) {\n this.customAmountInput.value = '';\n }\n } else {\n this.customAmountSelected = true;\n // Leave the field alone while it has focus, the donor may be typing\n if (!typingInCustomAmount && this.customAmountInput) {\n this.customAmountInput.value = this.customAmountDisplayValue;\n const donationInfoStatus = this.getDonationInfoStatus(\n this.donationInfo.amount,\n );\n this.handleDonationInfoStatus(donationInfoStatus);\n }\n }\n }\n\n private get coverFeesText(): string {\n const feeAmountString = currency(this.donationInfo.fee, {\n symbol: '$',\n }).format();\n\n return msg(str`I'll generously add ${feeAmountString} to cover fees.`);\n }\n\n /**\n * Formats a dollar amount without cents when it's a whole number and with\n * them when it isn't: `$5` and `$5.50`.\n */\n private formatShortenedAmount(dollars: number): string {\n const precision = dollars % 1 === 0 ? 0 : 2;\n return currency(dollars, { symbol: '$', precision }).format();\n }\n\n private get frequencyTemplate(): TemplateResult {\n return html`\n <li>\n ${this.getRadioButton({\n group: EditDonationSelectionGroup.DonationType,\n value: DonationType.OneTime,\n displayText: msg('One time'),\n checked: this.donationInfo.donationType === DonationType.OneTime,\n })}\n </li>\n\n <li>\n ${this.getRadioButton({\n group: EditDonationSelectionGroup.DonationType,\n value: DonationType.Monthly,\n displayText: msg('Monthly'),\n checked: this.donationInfo.donationType === DonationType.Monthly,\n })}\n </li>\n `;\n }\n\n private get presetAmountsTemplate(): TemplateResult {\n return html`\n ${this.amountOptions.map((amount) => {\n const checked =\n !this.customAmountSelected && amount === this.donationInfo.amount;\n\n return html`\n <li>\n ${this.getRadioButton({\n group: EditDonationSelectionGroup.Amount,\n value: `${amount}`,\n displayText: this.formatShortenedAmount(amount),\n checked,\n })}\n </li>\n `;\n })}\n `;\n }\n\n private getRadioButton(options: {\n group: EditDonationSelectionGroup;\n value: string;\n displayText: string;\n checked: boolean;\n }): TemplateResult {\n const radioId = `${options.group}-${options.value}-option`;\n return html`\n <div class=\"selection-button\">\n <input\n type=\"radio\"\n name=${options.group}\n value=${options.value}\n id=${radioId}\n tabindex=\"0\"\n .checked=${options.checked}\n @change=${this.radioSelected}\n @click=${(e: Event): void => {\n // `change` doesn't fire when the checked radio is clicked again,\n // so re-selecting the current amount is caught here. It matters\n // after a custom amount, which unchecks the presets visually.\n const isAmountSelection =\n options.group === EditDonationSelectionGroup.Amount;\n if (isAmountSelection) {\n const isSameValue =\n parseFloat(options.value) === this.donationInfo.amount;\n if (isSameValue) {\n this.radioSelected(e);\n }\n }\n }}\n />\n <label for=${radioId}>${options.displayText}</label>\n </div>\n `;\n }\n\n private get isCustomAmount(): boolean {\n return !this.amountOptions.includes(this.donationInfo.amount);\n }\n\n private get customAmountDisplayValue(): string {\n if (!this.isCustomAmount) return '';\n return currency(this.donationInfo.amount, { symbol: '' }).format();\n }\n\n private get customAmountTemplate(): TemplateResult {\n return html`\n <div class=\"selection-button\">\n <input\n type=\"radio\"\n name=${EditDonationSelectionGroup.Amount}\n value=\"custom\"\n id=\"custom-amount-button\"\n tabindex=\"0\"\n @change=${this.customRadioSelected}\n />\n\n <label for=\"custom-amount-button\">\n <span class=\"custom-amount-text\">${msg('Custom: $')}</span\n ><input\n type=\"text\"\n id=\"custom-amount-input\"\n tabindex=\"-1\"\n aria-label=${msg('Custom amount in dollars')}\n value=${this.customAmountDisplayValue}\n @input=${this.customAmountChanged}\n @keydown=${this.currencyValidator.keydown}\n @focus=${this.customAmountFocused}\n @blur=${this.customAmountBlurred}\n />\n </label>\n </div>\n `;\n }\n\n private customRadioSelected(): void {\n this.customAmountInput.focus();\n }\n\n private customAmountFocused(e: Event): void {\n const target = e.target as HTMLInputElement;\n this.customAmountSelected = true;\n this.handleCustomAmountInput(target.value);\n }\n\n /**\n * Once focus leaves the custom field the mid-keystroke protection is over,\n * so the UI re-syncs with `donationInfo`: a typed amount equal to a preset\n * moves to that preset, anything else gets re-formatted in place.\n */\n private customAmountBlurred(): void {\n this.updateSelectedDonationInfo();\n }\n\n private coverFeesChecked(e: Event): void {\n const target = e.target as HTMLInputElement;\n this.updateDonationInfo({ coverFees: target.checked });\n }\n\n private customAmountChanged(e: Event): void {\n const target = e.target as HTMLInputElement;\n this.customAmountSelected = true;\n this.handleCustomAmountInput(target.value);\n }\n\n private handleCustomAmountInput(value: string): void {\n const amount = parseFloat(value);\n if (isNaN(amount)) {\n this.dispatchEditDonationError(\n EditDonationInfoStatus.InvalidDonationAmount,\n );\n } else {\n this.amountChanged(amount);\n }\n }\n\n private handleDonationInfoStatus(status: EditDonationInfoStatus): void {\n switch (status) {\n case EditDonationInfoStatus.ValidDonationAmount:\n this.error = undefined;\n break;\n case EditDonationInfoStatus.DonationTooHigh:\n this.error = msg(html`\n To make a donation of $10,000 or more, please contact our philanthropy\n department at\n <a href=\"mailto:donations@archive.org\">donations@archive.org</a>\n `);\n this.dispatchEditDonationError(status);\n break;\n case EditDonationInfoStatus.DonationTooLow:\n if (this.customAmountInput.value.length > 0) {\n this.error = html`${msg('Please select an amount (minimum $1)')}`;\n }\n this.dispatchEditDonationError(status);\n break;\n case EditDonationInfoStatus.InvalidDonationAmount:\n this.error = html`${msg('Please enter a valid donation amount')}`;\n this.dispatchEditDonationError(status);\n break;\n }\n }\n\n private amountChanged(amount: number): void {\n const donationInfoStatus = this.getDonationInfoStatus(amount);\n this.handleDonationInfoStatus(donationInfoStatus);\n\n // Only a valid amount makes it into the donation info\n if (donationInfoStatus === EditDonationInfoStatus.ValidDonationAmount) {\n this.updateDonationInfo({ amount });\n }\n }\n\n private getDonationInfoStatus(amount: number): EditDonationInfoStatus {\n if (isNaN(amount)) {\n return EditDonationInfoStatus.InvalidDonationAmount;\n }\n\n if (amount >= 10000) {\n return EditDonationInfoStatus.DonationTooHigh;\n }\n\n if (amount < 1) {\n return EditDonationInfoStatus.DonationTooLow;\n }\n\n return EditDonationInfoStatus.ValidDonationAmount;\n }\n\n private radioSelected(e: Event): void {\n const radioButton = e.target as HTMLInputElement;\n const group = radioButton.name as EditDonationSelectionGroup;\n const { value } = radioButton;\n\n switch (group) {\n case EditDonationSelectionGroup.Amount:\n this.presetAmountChanged(parseFloat(value));\n break;\n case EditDonationSelectionGroup.DonationType:\n this.updateDonationInfo({ donationType: value as DonationType });\n break;\n default:\n break;\n }\n }\n\n private monthlyCheckboxChecked(e: Event): void {\n const isChecked = (e.target as HTMLInputElement).checked;\n const donationType = isChecked\n ? DonationType.Monthly\n : DonationType.OneTime;\n this.updateDonationInfo({ donationType });\n }\n\n private dispatchEditDonationError(error: EditDonationInfoStatus): void {\n const event = new CustomEvent('editDonationError', {\n detail: { error },\n });\n this.dispatchEvent(event);\n }\n\n private presetAmountChanged(amount: number): void {\n this.error = undefined;\n this.customAmountSelected = false;\n if (this.customAmountInput) {\n this.customAmountInput.value = '';\n }\n this.updateDonationInfo({ amount });\n }\n\n private updateDonationInfo(options: {\n donationType?: DonationType;\n amount?: number;\n coverFees?: boolean;\n }): void {\n const newDonationInfo = new DonationPaymentInfo({\n donationType: options.donationType ?? this.donationInfo.donationType,\n amount: options.amount ?? this.donationInfo.amount,\n coverFees: options.coverFees ?? this.donationInfo.coverFees,\n });\n\n this.donationInfo = newDonationInfo;\n\n const event = new CustomEvent('donationInfoChanged', {\n detail: { donationInfo: newDonationInfo },\n });\n this.dispatchEvent(event);\n }\n\n static get styles(): CSSResultGroup {\n return [\n themeStyles,\n css`\n :host {\n /*\n * The donation form was built for a 10px root font size. Sizing off\n * this base keeps the element self-contained, so it looks the same\n * whatever the page's root size is. Override it to rescale\n * everything, sections included.\n */\n --donation-edit-base-font-size--: var(\n --ia-donation-edit-base-font-size,\n 10px\n );\n\n --donation-edit-button-border-color--: var(\n --ia-donation-edit-button-border-color,\n var(--mid-gray)\n );\n --donation-edit-button-grid-gap--: var(\n --ia-donation-edit-button-grid-gap,\n var(--donation-edit-base-font-size--)\n );\n --donation-edit-button-font-size--: var(\n --ia-donation-edit-button-font-size,\n calc(var(--donation-edit-base-font-size--) * 1.6)\n );\n --donation-edit-button-font-color--: var(\n --ia-donation-edit-button-font-color,\n #000\n );\n --donation-edit-button-selected-font-color--: var(\n --ia-donation-edit-button-selected-font-color,\n #000\n );\n --donation-edit-button-selected-color--: var(\n --ia-donation-edit-button-selected-color,\n #f9bf3b\n );\n --donation-edit-button-focused-outline-color--: var(\n --ia-donation-edit-button-focused-outline-color,\n #7fb3f9\n );\n --donation-edit-button-color--: var(\n --ia-donation-edit-button-color,\n var(--true-white)\n );\n --donation-edit-cover-fees-font-size--: var(\n --ia-donation-edit-cover-fees-font-size,\n calc(var(--donation-edit-base-font-size--) * 1.2)\n );\n --donation-edit-cover-fees-font-weight--: var(\n --ia-donation-edit-cover-fees-font-weight,\n bold\n );\n --donation-edit-custom-amount-width--: var(\n --ia-donation-edit-custom-amount-width,\n calc(var(--donation-edit-base-font-size--) * 4)\n );\n --donation-edit-input-font-color--: var(\n --ia-donation-edit-input-font-color,\n var(--mid-gray)\n );\n --donation-edit-input-border--: var(\n --ia-donation-edit-input-border,\n 1px solid #d9d9d9\n );\n /* These two are set on the host by the element itself, from the number of amounts */\n --donation-edit-amount-column-count--: var(\n --ia-donation-edit-amount-column-count,\n 5\n );\n --donation-edit-custom-amount-col-span--: var(\n --ia-donation-edit-custom-amount-col-span,\n 3\n );\n --donation-edit-error-color--: var(--color-danger);\n\n /* Passed through to the sections */\n --ia-donation-section-base-font-size: var(\n --donation-edit-base-font-size--\n );\n --ia-donation-section-background-color: var(\n --ia-donation-edit-background-color,\n transparent\n );\n --ia-donation-section-badge-background-color: var(\n --ia-donation-edit-badge-background-color,\n var(--mid-gray)\n );\n --ia-donation-section-badge-font-color: var(\n --ia-donation-edit-badge-font-color,\n var(--true-white)\n );\n }\n\n .errors {\n color: var(--donation-edit-error-color--);\n font-size: calc(var(--donation-edit-base-font-size--) * 1.4);\n margin-top: var(--padding-sm);\n }\n\n ul {\n list-style: none;\n margin: 0;\n padding: 0;\n display: grid;\n grid-gap: var(--donation-edit-button-grid-gap--);\n }\n\n li {\n margin: 0;\n padding: 0;\n display: inline-block;\n }\n\n .frequency-selector {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .amount-selector {\n grid-template-columns: repeat(\n var(--donation-edit-amount-column-count--),\n 1fr\n );\n }\n\n .custom-amount {\n grid-column: span var(--donation-edit-custom-amount-col-span--);\n }\n\n .selection-button {\n height: calc(var(--donation-edit-base-font-size--) * 3);\n }\n\n .selection-button label {\n padding: 0 calc(var(--donation-edit-base-font-size--) * 0.3);\n display: flex;\n cursor: pointer;\n text-align: center;\n font-size: var(--donation-edit-button-font-size--);\n font-weight: bold;\n border: 1px solid var(--donation-edit-button-border-color--);\n border-radius: 5px;\n height: 100%;\n justify-content: center;\n align-items: center;\n }\n\n label[for='custom-amount-button'] {\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .custom-amount-text {\n white-space: nowrap;\n margin-right: var(--padding-sm);\n }\n\n input[type='radio'] {\n opacity: 0;\n width: 0;\n height: 0;\n position: absolute;\n }\n\n input[type='radio'] + label {\n color: var(--donation-edit-button-font-color--);\n background-color: var(--donation-edit-button-color--);\n }\n\n input[type='radio']:checked + label {\n color: var(--donation-edit-button-selected-font-color--);\n background-color: var(--donation-edit-button-selected-color--);\n }\n\n input[type='radio']:focus + label {\n outline: 2px solid var(--donation-edit-button-focused-outline-color--);\n }\n\n .checkbox-options {\n margin-top: var(--donation-edit-base-font-size--);\n }\n\n .checkbox-option-container {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .checkbox-option-container input {\n width: calc(var(--donation-edit-base-font-size--) * 2);\n }\n\n .checkbox-option-container label {\n font-size: var(--donation-edit-cover-fees-font-size--);\n font-weight: var(--donation-edit-cover-fees-font-weight--);\n flex: 1;\n }\n\n #custom-amount-input {\n width: var(--donation-edit-custom-amount-width--);\n font-size: var(--donation-edit-button-font-size--);\n font-weight: bold;\n color: var(--donation-edit-input-font-color--);\n padding: calc(var(--donation-edit-base-font-size--) * 0.1);\n border: var(--donation-edit-input-border--);\n appearance: none;\n }\n `,\n ];\n }\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import { LitElement, type TemplateResult } from 'lit';
2
+ import { type DonationPaymentInfo } from '../models/donation-payment-info.js';
3
+ import { EditDonationAmountSelectionLayout, EditDonationFrequencySelectionMode } from './ia-donation-edit-donation.js';
4
+ import './ia-donation-edit-donation.js';
5
+ import './ia-donation-summary.js';
6
+ /** Whether the top of the form shows the editable amount picker or the collapsed summary. */
7
+ export declare const DonationHeaderMode: {
8
+ readonly Summary: "summary";
9
+ readonly Edit: "edit";
10
+ };
11
+ export type DonationHeaderMode = (typeof DonationHeaderMode)[keyof typeof DonationHeaderMode];
12
+ /**
13
+ * The top of the donation form: the frequency and amount picker, or a
14
+ * one-line summary of the choice with an edit button. Relays the picker's
15
+ * events upward.
16
+ */
17
+ export declare class IADonationHeader extends LitElement {
18
+ donationInfo?: DonationPaymentInfo;
19
+ mode: DonationHeaderMode;
20
+ amountOptions: number[];
21
+ amountSelectionLayout: EditDonationAmountSelectionLayout;
22
+ frequencySelectionMode: EditDonationFrequencySelectionMode;
23
+ render(): TemplateResult;
24
+ private get editDonationTemplate();
25
+ private get donationSummaryTemplate();
26
+ private donationInfoChanged;
27
+ private editDonationError;
28
+ private summaryEditClicked;
29
+ private showSummaryClicked;
30
+ }
31
+ //# sourceMappingURL=ia-donation-header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-donation-header.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ia-donation-form/form-elements/ia-donation-header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAI5D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,iCAAiC,EACjC,kCAAkC,EACnC,MAAM,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,uBAAuB,CAAC;AAE/B,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB;;;CAGrB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE/D;;;;GAIG;AACH,qBACa,gBAAiB,SAAQ,UAAU;IAClB,YAAY,CAAC,EAAE,mBAAmB,CAAC;IAEnC,IAAI,EAAE,kBAAkB,CAC1B;IAEC,aAAa,EAAE,MAAM,EAAE,CAA0B;IAG5E,qBAAqB,EAAE,iCAAiC,CACV;IAG9C,sBAAsB,EAAE,kCAAkC,CACd;IAE5C,MAAM,IAAI,cAAc;IASxB,OAAO,KAAK,oBAAoB,GAa/B;IAED,OAAO,KAAK,uBAAuB,GAQlC;IAED,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -0,0 +1,93 @@
1
+ import { __decorate } from "tslib";
2
+ import { html, LitElement } from 'lit';
3
+ import { property } from 'lit/decorators.js';
4
+ import { customElement } from '../../../util/custom-element.js';
5
+ import { defaultDonationAmounts, } from '../models/donation-payment-info.js';
6
+ import { EditDonationAmountSelectionLayout, EditDonationFrequencySelectionMode, } from './ia-donation-edit-donation.js';
7
+ import './ia-donation-edit-donation.js';
8
+ import './ia-donation-summary.js';
9
+ /** Whether the top of the form shows the editable amount picker or the collapsed summary. */
10
+ export const DonationHeaderMode = {
11
+ Summary: 'summary',
12
+ Edit: 'edit',
13
+ };
14
+ /**
15
+ * The top of the donation form: the frequency and amount picker, or a
16
+ * one-line summary of the choice with an edit button. Relays the picker's
17
+ * events upward.
18
+ */
19
+ let IADonationHeader = class IADonationHeader extends LitElement {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.mode = DonationHeaderMode.Edit;
23
+ this.amountOptions = defaultDonationAmounts;
24
+ this.amountSelectionLayout = EditDonationAmountSelectionLayout.MultiLine;
25
+ this.frequencySelectionMode = EditDonationFrequencySelectionMode.Button;
26
+ }
27
+ render() {
28
+ switch (this.mode) {
29
+ case DonationHeaderMode.Summary:
30
+ return this.donationSummaryTemplate;
31
+ case DonationHeaderMode.Edit:
32
+ return this.editDonationTemplate;
33
+ }
34
+ }
35
+ get editDonationTemplate() {
36
+ return html `
37
+ <ia-donation-edit-donation
38
+ .donationInfo=${this.donationInfo}
39
+ .amountOptions=${this.amountOptions}
40
+ .amountSelectionLayout=${this.amountSelectionLayout}
41
+ .frequencySelectionMode=${this.frequencySelectionMode}
42
+ @donationInfoChanged=${this.donationInfoChanged}
43
+ @showSummaryClicked=${this.showSummaryClicked}
44
+ @editDonationError=${this.editDonationError}
45
+ >
46
+ </ia-donation-edit-donation>
47
+ `;
48
+ }
49
+ get donationSummaryTemplate() {
50
+ return html `
51
+ <ia-donation-summary
52
+ .donationInfo=${this.donationInfo}
53
+ @editClicked=${this.summaryEditClicked}
54
+ >
55
+ </ia-donation-summary>
56
+ `;
57
+ }
58
+ donationInfoChanged(e) {
59
+ this.donationInfo = e.detail.donationInfo;
60
+ this.dispatchEvent(new CustomEvent('donationInfoChanged', {
61
+ detail: { donationInfo: this.donationInfo },
62
+ }));
63
+ }
64
+ editDonationError(e) {
65
+ this.dispatchEvent(new CustomEvent('editDonationError', { detail: e.detail }));
66
+ }
67
+ summaryEditClicked() {
68
+ this.mode = DonationHeaderMode.Edit;
69
+ }
70
+ showSummaryClicked() {
71
+ this.mode = DonationHeaderMode.Summary;
72
+ }
73
+ };
74
+ __decorate([
75
+ property({ type: Object })
76
+ ], IADonationHeader.prototype, "donationInfo", void 0);
77
+ __decorate([
78
+ property({ type: String })
79
+ ], IADonationHeader.prototype, "mode", void 0);
80
+ __decorate([
81
+ property({ type: Array })
82
+ ], IADonationHeader.prototype, "amountOptions", void 0);
83
+ __decorate([
84
+ property({ type: String })
85
+ ], IADonationHeader.prototype, "amountSelectionLayout", void 0);
86
+ __decorate([
87
+ property({ type: String })
88
+ ], IADonationHeader.prototype, "frequencySelectionMode", void 0);
89
+ IADonationHeader = __decorate([
90
+ customElement('ia-donation-header')
91
+ ], IADonationHeader);
92
+ export { IADonationHeader };
93
+ //# sourceMappingURL=ia-donation-header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-donation-header.js","sourceRoot":"","sources":["../../../../../src/elements/ia-donation-form/form-elements/ia-donation-header.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAuB,MAAM,KAAK,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EACL,sBAAsB,GAEvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,uBAAuB,CAAC;AAE/B,6FAA6F;AAC7F,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;CACJ,CAAC;AAKX;;;;GAIG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;IAAzC;;QAGuB,SAAI,GAC9B,kBAAkB,CAAC,IAAI,CAAC;QAEC,kBAAa,GAAa,sBAAsB,CAAC;QAG5E,0BAAqB,GACnB,iCAAiC,CAAC,SAAS,CAAC;QAG9C,2BAAsB,GACpB,kCAAkC,CAAC,MAAM,CAAC;IA0D9C,CAAC;IAxDC,MAAM;QACJ,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,kBAAkB,CAAC,OAAO;gBAC7B,OAAO,IAAI,CAAC,uBAAuB,CAAC;YACtC,KAAK,kBAAkB,CAAC,IAAI;gBAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC;QACrC,CAAC;IACH,CAAC;IAED,IAAY,oBAAoB;QAC9B,OAAO,IAAI,CAAA;;wBAES,IAAI,CAAC,YAAY;yBAChB,IAAI,CAAC,aAAa;iCACV,IAAI,CAAC,qBAAqB;kCACzB,IAAI,CAAC,sBAAsB;+BAC9B,IAAI,CAAC,mBAAmB;8BACzB,IAAI,CAAC,kBAAkB;6BACxB,IAAI,CAAC,iBAAiB;;;KAG9C,CAAC;IACJ,CAAC;IAED,IAAY,uBAAuB;QACjC,OAAO,IAAI,CAAA;;wBAES,IAAI,CAAC,YAAY;uBAClB,IAAI,CAAC,kBAAkB;;;KAGzC,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,CAAc;QACxC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,YAAmC,CAAC;QACjE,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,qBAAqB,EAAE;YACrC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;SAC5C,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,CAAc;QACtC,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAC3D,CAAC;IACJ,CAAC;IAEO,kBAAkB;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC;IACtC,CAAC;IAEO,kBAAkB;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC;IACzC,CAAC;CACF,CAAA;AAvE6B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDAAoC;AAEnC;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACD;AAEC;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;uDAAkD;AAG5E;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;+DAEmB;AAG9C;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gEAEiB;AAdjC,gBAAgB;IAD5B,aAAa,CAAC,oBAAoB,CAAC;GACvB,gBAAgB,CAwE5B","sourcesContent":["import { html, LitElement, type TemplateResult } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { customElement } from '@src/util/custom-element';\n\nimport {\n defaultDonationAmounts,\n type DonationPaymentInfo,\n} from '../models/donation-payment-info';\nimport {\n EditDonationAmountSelectionLayout,\n EditDonationFrequencySelectionMode,\n} from './ia-donation-edit-donation';\nimport './ia-donation-edit-donation';\nimport './ia-donation-summary';\n\n/** Whether the top of the form shows the editable amount picker or the collapsed summary. */\nexport const DonationHeaderMode = {\n Summary: 'summary',\n Edit: 'edit',\n} as const;\n\nexport type DonationHeaderMode =\n (typeof DonationHeaderMode)[keyof typeof DonationHeaderMode];\n\n/**\n * The top of the donation form: the frequency and amount picker, or a\n * one-line summary of the choice with an edit button. Relays the picker's\n * events upward.\n */\n@customElement('ia-donation-header')\nexport class IADonationHeader extends LitElement {\n @property({ type: Object }) donationInfo?: DonationPaymentInfo;\n\n @property({ type: String }) mode: DonationHeaderMode =\n DonationHeaderMode.Edit;\n\n @property({ type: Array }) amountOptions: number[] = defaultDonationAmounts;\n\n @property({ type: String })\n amountSelectionLayout: EditDonationAmountSelectionLayout =\n EditDonationAmountSelectionLayout.MultiLine;\n\n @property({ type: String })\n frequencySelectionMode: EditDonationFrequencySelectionMode =\n EditDonationFrequencySelectionMode.Button;\n\n render(): TemplateResult {\n switch (this.mode) {\n case DonationHeaderMode.Summary:\n return this.donationSummaryTemplate;\n case DonationHeaderMode.Edit:\n return this.editDonationTemplate;\n }\n }\n\n private get editDonationTemplate(): TemplateResult {\n return html`\n <ia-donation-edit-donation\n .donationInfo=${this.donationInfo}\n .amountOptions=${this.amountOptions}\n .amountSelectionLayout=${this.amountSelectionLayout}\n .frequencySelectionMode=${this.frequencySelectionMode}\n @donationInfoChanged=${this.donationInfoChanged}\n @showSummaryClicked=${this.showSummaryClicked}\n @editDonationError=${this.editDonationError}\n >\n </ia-donation-edit-donation>\n `;\n }\n\n private get donationSummaryTemplate(): TemplateResult {\n return html`\n <ia-donation-summary\n .donationInfo=${this.donationInfo}\n @editClicked=${this.summaryEditClicked}\n >\n </ia-donation-summary>\n `;\n }\n\n private donationInfoChanged(e: CustomEvent): void {\n this.donationInfo = e.detail.donationInfo as DonationPaymentInfo;\n this.dispatchEvent(\n new CustomEvent('donationInfoChanged', {\n detail: { donationInfo: this.donationInfo },\n }),\n );\n }\n\n private editDonationError(e: CustomEvent): void {\n this.dispatchEvent(\n new CustomEvent('editDonationError', { detail: e.detail }),\n );\n }\n\n private summaryEditClicked(): void {\n this.mode = DonationHeaderMode.Edit;\n }\n\n private showSummaryClicked(): void {\n this.mode = DonationHeaderMode.Summary;\n }\n}\n"]}
@@ -0,0 +1,33 @@
1
+ import { LitElement, type CSSResultGroup, type PropertyValues, type TemplateResult } from 'lit';
2
+ import type { PaymentProvidersInterface } from '../braintree/payment-providers-interface.js';
3
+ /**
4
+ * The row of payment method buttons. Each provider button asks its handler
5
+ * whether the browser supports it and hides itself if not. Once one is picked
6
+ * the others collapse behind a "Change payment method" button.
7
+ *
8
+ * The real PayPal button is slotted in from the light DOM (it can't live in
9
+ * a shadow root); the local PayPal button sits over it to catch clicks while
10
+ * the donation amount is invalid.
11
+ */
12
+ export declare class IADonationPaymentSelector extends LitElement {
13
+ donationInfoValid: boolean;
14
+ paymentProviders?: PaymentProvidersInterface;
15
+ private applePayMode;
16
+ private googlePayMode;
17
+ private venmoMode;
18
+ private payPalMode;
19
+ private paymentModeSelected?;
20
+ render(): TemplateResult;
21
+ firstUpdated(): void;
22
+ updated(changed: PropertyValues): void;
23
+ showPaypalButton(): void;
24
+ /** Asks each provider whether this browser can use it, and shows or hides its button. */
25
+ private setButtonVisibility;
26
+ private googlePaySelected;
27
+ private applePaySelected;
28
+ private venmoSelected;
29
+ private creditCardSelected;
30
+ private localPaypalButtonClicked;
31
+ static get styles(): CSSResultGroup;
32
+ }
33
+ //# sourceMappingURL=ia-donation-payment-selector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-donation-payment-selector.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ia-donation-form/form-elements/ia-donation-payment-selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAMb,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAe1F;;;;;;;;GAQG;AACH,qBAEa,yBAA0B,SAAQ,UAAU;IAC1B,iBAAiB,UAAQ;IAE1B,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;IAEhE,OAAO,CAAC,YAAY,CAAgD;IAEpE,OAAO,CAAC,aAAa,CAAgD;IAErE,OAAO,CAAC,SAAS,CAAgD;IAEjE,OAAO,CAAC,UAAU,CAAgD;IAElE,OAAO,CAAC,mBAAmB,CAAC,CAAc;IAEnD,MAAM,IAAI,cAAc;IA6GxB,YAAY,IAAI,IAAI;IAIpB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAMtC,gBAAgB,IAAI,IAAI;IAIxB,yFAAyF;YAC3E,mBAAmB;IA4CjC,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,wBAAwB;IAIhC,MAAM,KAAK,MAAM,IAAI,cAAc,CA+IlC;CACF"}
@@ -0,0 +1,378 @@
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement, nothing, } from 'lit';
3
+ import { property, state } from 'lit/decorators.js';
4
+ import { customElement } from '../../../util/custom-element.js';
5
+ import { localized, msg } from '@lit/localize';
6
+ import themeStyles from '../../../themes/theme-styles.js';
7
+ import { applePayLogo, googlePayLogo, paypalLogo, venmoLogo } from '../icons.js';
8
+ /** A provider button starts hidden-but-reserved, then shows or disappears once its availability is known. */
9
+ const PaymentButtonMode = {
10
+ Loading: 'loading',
11
+ Available: 'available',
12
+ Unavailable: 'unavailable',
13
+ };
14
+ /**
15
+ * The row of payment method buttons. Each provider button asks its handler
16
+ * whether the browser supports it and hides itself if not. Once one is picked
17
+ * the others collapse behind a "Change payment method" button.
18
+ *
19
+ * The real PayPal button is slotted in from the light DOM (it can't live in
20
+ * a shadow root); the local PayPal button sits over it to catch clicks while
21
+ * the donation amount is invalid.
22
+ */
23
+ let IADonationPaymentSelector = class IADonationPaymentSelector extends LitElement {
24
+ constructor() {
25
+ super(...arguments);
26
+ this.donationInfoValid = true;
27
+ this.applePayMode = PaymentButtonMode.Loading;
28
+ this.googlePayMode = PaymentButtonMode.Loading;
29
+ this.venmoMode = PaymentButtonMode.Loading;
30
+ this.payPalMode = PaymentButtonMode.Loading;
31
+ }
32
+ render() {
33
+ const paymentSelectedCss = this.paymentModeSelected
34
+ ? 'payment-selected'
35
+ : '';
36
+ return html `
37
+ <div
38
+ class="payment-container ${this.donationInfoValid
39
+ ? 'donation-info-valid'
40
+ : 'donation-info-invalid'} ${paymentSelectedCss}"
41
+ >
42
+ <div class="payment-provider-container">
43
+ <button
44
+ class="applepay provider-button ${this.applePayMode} ${this
45
+ .paymentModeSelected === 'apple'
46
+ ? 'selected'
47
+ : ''}"
48
+ aria-label=${msg('Pay with Apple Pay')}
49
+ @click=${(e) => {
50
+ this.paymentModeSelected = 'apple';
51
+ this.applePaySelected(e);
52
+ }}
53
+ >
54
+ <div class="payment-image">${applePayLogo}</div>
55
+ </button>
56
+
57
+ <button
58
+ class="googlepay provider-button ${this.googlePayMode} ${this
59
+ .paymentModeSelected === 'google'
60
+ ? 'selected'
61
+ : ''}"
62
+ aria-label=${msg('Pay with Google Pay')}
63
+ @click=${() => {
64
+ this.paymentModeSelected = 'google';
65
+ this.googlePaySelected();
66
+ }}
67
+ >
68
+ <div class="payment-image">${googlePayLogo}</div>
69
+ </button>
70
+
71
+ <button
72
+ class="venmo provider-button ${this.venmoMode} ${this
73
+ .paymentModeSelected === 'venmo'
74
+ ? 'selected'
75
+ : ''}"
76
+ aria-label=${msg('Pay with Venmo')}
77
+ @click=${() => {
78
+ this.paymentModeSelected = 'venmo';
79
+ this.venmoSelected();
80
+ }}
81
+ >
82
+ <div class="payment-image">${venmoLogo}</div>
83
+ </button>
84
+
85
+ <div
86
+ class="paypal-container provider-button ${this.payPalMode} ${this
87
+ .paymentModeSelected === 'paypal'
88
+ ? 'selected'
89
+ : ''}"
90
+ >
91
+ <div class="payment-image">
92
+ <button
93
+ class="paypal-local-button"
94
+ aria-label=${msg('Pay with PayPal')}
95
+ @click=${() => {
96
+ this.paymentModeSelected = 'paypal';
97
+ this.localPaypalButtonClicked();
98
+ }}
99
+ >
100
+ ${paypalLogo}
101
+ </button>
102
+ <slot name="paypal-button"></slot>
103
+ </div>
104
+ </div>
105
+ </div>
106
+
107
+ <div class="credit-card-container">
108
+ <button
109
+ @click=${() => {
110
+ this.paymentModeSelected = 'cc';
111
+ this.creditCardSelected();
112
+ }}
113
+ class="button-style credit-card-button ${this
114
+ .paymentModeSelected === 'cc'
115
+ ? 'selected'
116
+ : ''}"
117
+ >
118
+ <div class="cc-title">${msg('Credit Card')}</div>
119
+ <div class="cc-background"></div>
120
+ </button>
121
+ </div>
122
+ </div>
123
+
124
+ ${this.paymentModeSelected
125
+ ? html `
126
+ <button
127
+ id="change-payment-method"
128
+ @click=${() => {
129
+ this.paymentModeSelected = undefined;
130
+ this.dispatchEvent(new Event('resetPaymentMethod'));
131
+ this.setButtonVisibility();
132
+ }}
133
+ >
134
+ ${msg('Change payment method')}
135
+ </button>
136
+ `
137
+ : nothing}
138
+ `;
139
+ }
140
+ firstUpdated() {
141
+ this.dispatchEvent(new Event('firstUpdated'));
142
+ }
143
+ updated(changed) {
144
+ if (changed.has('paymentProviders')) {
145
+ this.setButtonVisibility();
146
+ }
147
+ }
148
+ showPaypalButton() {
149
+ this.payPalMode = PaymentButtonMode.Available;
150
+ }
151
+ /** Asks each provider whether this browser can use it, and shows or hides its button. */
152
+ async setButtonVisibility() {
153
+ const providers = this.paymentProviders;
154
+ if (!providers)
155
+ return;
156
+ const mode = (supported) => supported ? PaymentButtonMode.Available : PaymentButtonMode.Unavailable;
157
+ providers.venmoHandler
158
+ .get()
159
+ .then(async (handler) => {
160
+ if (!handler)
161
+ return false;
162
+ return handler.isBrowserSupported();
163
+ })
164
+ .then((supported) => {
165
+ this.venmoMode = mode(supported);
166
+ })
167
+ .catch((reason) => {
168
+ console.error('venmo unavailable', reason);
169
+ this.venmoMode = PaymentButtonMode.Unavailable;
170
+ });
171
+ providers.applePayHandler
172
+ .get()
173
+ .then((handler) => handler.isAvailable())
174
+ .then((supported) => {
175
+ this.applePayMode = mode(supported);
176
+ })
177
+ .catch((reason) => {
178
+ console.error('apple pay unavailable', reason);
179
+ this.applePayMode = PaymentButtonMode.Unavailable;
180
+ });
181
+ providers.googlePayHandler
182
+ .get()
183
+ .then((handler) => handler.isBrowserSupported())
184
+ .then((supported) => {
185
+ this.googlePayMode = mode(supported);
186
+ })
187
+ .catch((reason) => {
188
+ console.error('google pay unavailable', reason);
189
+ this.googlePayMode = PaymentButtonMode.Unavailable;
190
+ });
191
+ }
192
+ googlePaySelected() {
193
+ this.dispatchEvent(new Event('googlePaySelected'));
194
+ }
195
+ applePaySelected(e) {
196
+ this.dispatchEvent(new CustomEvent('applePaySelected', { detail: { originalEvent: e } }));
197
+ }
198
+ venmoSelected() {
199
+ this.dispatchEvent(new Event('venmoSelected'));
200
+ }
201
+ creditCardSelected() {
202
+ this.dispatchEvent(new Event('creditCardSelected'));
203
+ }
204
+ localPaypalButtonClicked() {
205
+ this.dispatchEvent(new Event('paypalBlockerSelected'));
206
+ }
207
+ static get styles() {
208
+ return [
209
+ themeStyles,
210
+ css `
211
+ :host {
212
+ --donation-selector-base-font-size--: var(
213
+ --ia-donation-form-base-font-size,
214
+ 10px
215
+ );
216
+ --donation-selector-button-width--: var(
217
+ --ia-donation-payment-button-width,
218
+ calc(var(--donation-selector-base-font-size--) * 5)
219
+ );
220
+ --donation-selector-button-height--: var(
221
+ --ia-donation-payment-button-height,
222
+ calc(var(--donation-selector-base-font-size--) * 3.2)
223
+ );
224
+ --donation-selector-cc-font-size--: var(
225
+ --ia-donation-credit-card-font-size,
226
+ calc(var(--donation-selector-base-font-size--) * 1.8)
227
+ );
228
+ --donation-selector-cc-font-color--: var(
229
+ --ia-donation-credit-card-button-font-color,
230
+ var(--mid-gray)
231
+ );
232
+ --donation-selector-cc-color--: var(
233
+ --ia-donation-credit-card-button-color,
234
+ var(--true-white)
235
+ );
236
+ }
237
+
238
+ button {
239
+ color: inherit;
240
+ font-family: inherit;
241
+ }
242
+
243
+ .payment-container {
244
+ width: 100%;
245
+ }
246
+
247
+ .payment-provider-container {
248
+ display: grid;
249
+ grid-template-columns: 1fr 1fr 1fr 1fr;
250
+ grid-gap: var(--donation-selector-base-font-size--);
251
+ margin-bottom: var(--donation-selector-base-font-size--);
252
+ max-width: calc(var(--donation-selector-base-font-size--) * 23);
253
+ }
254
+
255
+ .provider-button {
256
+ border: 0;
257
+ padding: 0;
258
+ background: none;
259
+ cursor: pointer;
260
+ width: var(--donation-selector-button-width--);
261
+ height: var(--donation-selector-button-height--);
262
+ }
263
+
264
+ .provider-button.unavailable {
265
+ display: none;
266
+ }
267
+
268
+ .provider-button.loading {
269
+ border: 1px solid #ddd;
270
+ border-radius: 2px;
271
+ /* Accounts for the border that goes away once the provider loads, so the layout doesn't shift */
272
+ margin-bottom: -2px;
273
+ }
274
+
275
+ .provider-button.loading .payment-image {
276
+ display: none;
277
+ }
278
+
279
+ .payment-image,
280
+ .brand-logo {
281
+ width: 100%;
282
+ height: 100%;
283
+ }
284
+
285
+ .brand-logo {
286
+ display: block;
287
+ object-fit: contain;
288
+ }
289
+
290
+ .paypal-local-button {
291
+ position: absolute;
292
+ border: 0;
293
+ padding: 0;
294
+ background: none;
295
+ cursor: pointer;
296
+ width: var(--donation-selector-button-width--);
297
+ height: var(--donation-selector-button-height--);
298
+ }
299
+
300
+ .donation-info-valid .paypal-local-button {
301
+ z-index: 0;
302
+ }
303
+
304
+ .donation-info-invalid .paypal-local-button {
305
+ z-index: 250;
306
+ }
307
+
308
+ .credit-card-button {
309
+ color: var(--donation-selector-cc-font-color--);
310
+ background-color: var(--donation-selector-cc-color--);
311
+ border: 1px solid var(--mid-gray);
312
+ border-radius: 4px;
313
+ cursor: pointer;
314
+ margin: 0;
315
+ padding: calc(var(--donation-selector-base-font-size--) * 0.7)
316
+ var(--donation-selector-base-font-size--);
317
+ width: 100%;
318
+ }
319
+
320
+ .credit-card-button .cc-background {
321
+ height: calc(var(--donation-selector-base-font-size--) * 2.4);
322
+ width: 100%;
323
+ background-repeat: no-repeat;
324
+ background-image: url(https://archive.org/images/cc_logos.png);
325
+ background-position: 50% 50%;
326
+ background-size: contain;
327
+ }
328
+
329
+ .credit-card-button .cc-title {
330
+ font-size: var(--donation-selector-cc-font-size--);
331
+ font-weight: 700;
332
+ margin-bottom: var(--padding-sm);
333
+ }
334
+
335
+ button#change-payment-method {
336
+ margin-top: 10px;
337
+ background: var(--true-white);
338
+ border: 1px solid;
339
+ border-radius: 3px;
340
+ padding: 5px;
341
+ cursor: pointer;
342
+ }
343
+
344
+ .payment-selected .provider-button:not(.selected),
345
+ .payment-selected .credit-card-button:not(.selected) {
346
+ display: none;
347
+ }
348
+ `,
349
+ ];
350
+ }
351
+ };
352
+ __decorate([
353
+ property({ type: Boolean })
354
+ ], IADonationPaymentSelector.prototype, "donationInfoValid", void 0);
355
+ __decorate([
356
+ property({ type: Object })
357
+ ], IADonationPaymentSelector.prototype, "paymentProviders", void 0);
358
+ __decorate([
359
+ state()
360
+ ], IADonationPaymentSelector.prototype, "applePayMode", void 0);
361
+ __decorate([
362
+ state()
363
+ ], IADonationPaymentSelector.prototype, "googlePayMode", void 0);
364
+ __decorate([
365
+ state()
366
+ ], IADonationPaymentSelector.prototype, "venmoMode", void 0);
367
+ __decorate([
368
+ state()
369
+ ], IADonationPaymentSelector.prototype, "payPalMode", void 0);
370
+ __decorate([
371
+ state()
372
+ ], IADonationPaymentSelector.prototype, "paymentModeSelected", void 0);
373
+ IADonationPaymentSelector = __decorate([
374
+ customElement('ia-donation-payment-selector'),
375
+ localized()
376
+ ], IADonationPaymentSelector);
377
+ export { IADonationPaymentSelector };
378
+ //# sourceMappingURL=ia-donation-payment-selector.js.map