@ptcwebops/ptcw-design 0.8.3 → 0.8.4

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 (287) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/dropdown-item.cjs.entry.js +10 -10
  3. package/dist/cjs/icon-asset.cjs.entry.js +42 -42
  4. package/dist/cjs/list-item.cjs.entry.js +19 -19
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/lottie-player.cjs.entry.js +354 -354
  7. package/dist/cjs/my-component.cjs.entry.js +15 -15
  8. package/dist/cjs/ptc-accordion-item.cjs.entry.js +83 -83
  9. package/dist/cjs/ptc-accordion.cjs.entry.js +35 -35
  10. package/dist/cjs/ptc-announcement.cjs.entry.js +51 -51
  11. package/dist/cjs/ptc-breadcrumb.cjs.entry.js +12 -12
  12. package/dist/cjs/ptc-button.cjs.entry.js +34 -34
  13. package/dist/cjs/ptc-card-bottom.cjs.entry.js +36 -36
  14. package/dist/cjs/ptc-card-content.cjs.entry.js +40 -40
  15. package/dist/cjs/ptc-card-wrapper.cjs.entry.js +35 -35
  16. package/dist/cjs/ptc-card_6.cjs.entry.js +455 -454
  17. package/dist/cjs/ptc-checkbox.cjs.entry.js +33 -33
  18. package/dist/cjs/ptc-collapse-list.cjs.entry.js +346 -346
  19. package/dist/cjs/ptc-container.cjs.entry.js +32 -32
  20. package/dist/cjs/ptc-dropdown.cjs.entry.js +64 -64
  21. package/dist/cjs/ptc-dynamic-card.cjs.entry.js +47 -47
  22. package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +38 -38
  23. package/dist/cjs/ptc-filter-tag.cjs.entry.js +57 -57
  24. package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +11 -11
  25. package/dist/cjs/ptc-hero.cjs.entry.js +18 -18
  26. package/dist/cjs/ptc-icon-list.cjs.entry.js +21 -21
  27. package/dist/cjs/ptc-icon-minimize.cjs.entry.js +36 -36
  28. package/dist/cjs/ptc-link.cjs.entry.js +29 -29
  29. package/dist/cjs/ptc-list.cjs.entry.js +50 -50
  30. package/dist/cjs/ptc-lottie.cjs.entry.js +10 -10
  31. package/dist/cjs/ptc-media-card.cjs.entry.js +32 -0
  32. package/dist/cjs/ptc-minimized-footer.cjs.entry.js +8 -8
  33. package/dist/cjs/ptc-minimized-header.cjs.entry.js +11 -11
  34. package/dist/cjs/ptc-mobile-select.cjs.entry.js +53 -53
  35. package/dist/cjs/ptc-modal.cjs.entry.js +143 -143
  36. package/dist/cjs/ptc-overlay.cjs.entry.js +21 -21
  37. package/dist/cjs/ptc-pagenation.cjs.entry.js +105 -105
  38. package/dist/cjs/ptc-previous-url.cjs.entry.js +10 -10
  39. package/dist/cjs/ptc-pricing-block.cjs.entry.js +16 -16
  40. package/dist/cjs/ptc-quote.cjs.entry.js +23 -23
  41. package/dist/cjs/ptc-readmore_2.cjs.entry.js +59 -59
  42. package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +54 -54
  43. package/dist/cjs/ptc-shopping-cart.cjs.entry.js +50 -50
  44. package/dist/cjs/ptc-social-share.cjs.entry.js +59 -59
  45. package/dist/cjs/ptc-span.cjs.entry.js +19 -19
  46. package/dist/cjs/ptc-sticky-icons.cjs.entry.js +32 -32
  47. package/dist/cjs/ptc-svg-btn.cjs.entry.js +73 -73
  48. package/dist/cjs/ptc-tab-list.cjs.entry.js +124 -124
  49. package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +20 -20
  50. package/dist/cjs/ptc-title.cjs.entry.js +66 -66
  51. package/dist/cjs/ptc-two-column-media.cjs.entry.js +15 -15
  52. package/dist/cjs/ptcw-design.cjs.js +1 -1
  53. package/dist/cjs/tab-content.cjs.entry.js +27 -27
  54. package/dist/cjs/tab-header.cjs.entry.js +45 -45
  55. package/dist/cjs/{utils-2ac2a528.js → utils-5245e89c.js} +79 -79
  56. package/dist/collection/collection-manifest.json +1 -0
  57. package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
  58. package/dist/collection/components/icon-asset/icon-asset.css +4 -4
  59. package/dist/collection/components/icon-asset/icon-asset.js +199 -199
  60. package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
  61. package/dist/collection/components/icon-asset/media/designer.svg +379 -379
  62. package/dist/collection/components/icon-asset/media/regular.svg +463 -463
  63. package/dist/collection/components/icon-asset/media/solid.svg +3013 -3013
  64. package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
  65. package/dist/collection/components/list-item/list-item.js +107 -107
  66. package/dist/collection/components/my-component/my-component.css +3 -3
  67. package/dist/collection/components/my-component/my-component.js +82 -82
  68. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +287 -287
  69. package/dist/collection/components/ptc-accordion/ptc-accordion.js +78 -78
  70. package/dist/collection/components/ptc-announcement/ptc-announcement.js +239 -239
  71. package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +22 -22
  72. package/dist/collection/components/ptc-button/ptc-button.js +264 -264
  73. package/dist/collection/components/ptc-card/ptc-card.js +344 -344
  74. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.css +21 -3
  75. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
  76. package/dist/collection/components/ptc-card-content/ptc-card-content.css +1 -0
  77. package/dist/collection/components/ptc-card-content/ptc-card-content.js +137 -137
  78. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +151 -151
  79. package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +118 -118
  80. package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +586 -586
  81. package/dist/collection/components/ptc-container/ptc-container.js +120 -120
  82. package/dist/collection/components/ptc-date/ptc-date.js +190 -190
  83. package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
  84. package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
  85. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +183 -183
  86. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +122 -122
  87. package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
  88. package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
  89. package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
  90. package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
  91. package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +87 -87
  92. package/dist/collection/components/ptc-img/ptc-img.js +296 -296
  93. package/dist/collection/components/ptc-link/ptc-link.css +4 -0
  94. package/dist/collection/components/ptc-link/ptc-link.js +203 -203
  95. package/dist/collection/components/ptc-list/ptc-list.js +100 -100
  96. package/dist/collection/components/ptc-lottie/ptc-lottie.css +5 -5
  97. package/dist/collection/components/ptc-lottie/ptc-lottie.js +62 -62
  98. package/dist/collection/components/ptc-media-card/ptc-media-card.css +57 -0
  99. package/dist/collection/components/ptc-media-card/ptc-media-card.js +213 -0
  100. package/dist/collection/components/ptc-minimized-footer/ptc-minimized-footer.js +18 -18
  101. package/dist/collection/components/ptc-minimized-header/ptc-minimized-header.js +81 -81
  102. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +190 -190
  103. package/dist/collection/components/ptc-modal/ptc-modal.js +347 -347
  104. package/dist/collection/components/ptc-overlay/ptc-overlay.css +20 -0
  105. package/dist/collection/components/ptc-overlay/ptc-overlay.js +105 -105
  106. package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +322 -322
  107. package/dist/collection/components/ptc-para/ptc-para.js +232 -232
  108. package/dist/collection/components/ptc-picture/ptc-picture.js +452 -452
  109. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +60 -60
  110. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +49 -49
  111. package/dist/collection/components/ptc-quote/ptc-quote.js +144 -144
  112. package/dist/collection/components/ptc-readmore/ptc-readmore.js +129 -129
  113. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
  114. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
  115. package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
  116. package/dist/collection/components/ptc-social-share/ptc-social-share.js +239 -239
  117. package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -322
  118. package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -96
  119. package/dist/collection/components/ptc-span/ptc-span.css +7 -0
  120. package/dist/collection/components/ptc-span/ptc-span.js +87 -87
  121. package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
  122. package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +72 -72
  123. package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +155 -155
  124. package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +123 -123
  125. package/dist/collection/components/ptc-title/ptc-title.css +11 -0
  126. package/dist/collection/components/ptc-title/ptc-title.js +291 -291
  127. package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +153 -153
  128. package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
  129. package/dist/collection/components/tab-content/tab-content.js +84 -84
  130. package/dist/collection/components/tab-header/tab-header.js +136 -136
  131. package/dist/collection/index.js +1 -1
  132. package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
  133. package/dist/collection/media/svg-imgs/close.svg +10 -10
  134. package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
  135. package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
  136. package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
  137. package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
  138. package/dist/collection/media/svg-imgs/union.svg +3 -3
  139. package/dist/collection/utils/component.js +3 -3
  140. package/dist/collection/utils/interfaces.js +11 -11
  141. package/dist/collection/utils/utils.js +81 -81
  142. package/dist/custom-elements/index.d.ts +6 -0
  143. package/dist/custom-elements/index.js +3257 -3227
  144. package/dist/esm/dropdown-item.entry.js +10 -10
  145. package/dist/esm/icon-asset.entry.js +42 -42
  146. package/dist/esm/list-item.entry.js +19 -19
  147. package/dist/esm/loader.js +1 -1
  148. package/dist/esm/lottie-player.entry.js +354 -354
  149. package/dist/esm/my-component.entry.js +15 -15
  150. package/dist/esm/polyfills/core-js.js +0 -0
  151. package/dist/esm/polyfills/dom.js +0 -0
  152. package/dist/esm/polyfills/es5-html-element.js +0 -0
  153. package/dist/esm/polyfills/index.js +0 -0
  154. package/dist/esm/polyfills/system.js +0 -0
  155. package/dist/esm/ptc-accordion-item.entry.js +83 -83
  156. package/dist/esm/ptc-accordion.entry.js +35 -35
  157. package/dist/esm/ptc-announcement.entry.js +51 -51
  158. package/dist/esm/ptc-breadcrumb.entry.js +12 -12
  159. package/dist/esm/ptc-button.entry.js +34 -34
  160. package/dist/esm/ptc-card-bottom.entry.js +36 -36
  161. package/dist/esm/ptc-card-content.entry.js +40 -40
  162. package/dist/esm/ptc-card-wrapper.entry.js +35 -35
  163. package/dist/esm/ptc-card_6.entry.js +455 -454
  164. package/dist/esm/ptc-checkbox.entry.js +33 -33
  165. package/dist/esm/ptc-collapse-list.entry.js +346 -346
  166. package/dist/esm/ptc-container.entry.js +32 -32
  167. package/dist/esm/ptc-dropdown.entry.js +64 -64
  168. package/dist/esm/ptc-dynamic-card.entry.js +47 -47
  169. package/dist/esm/ptc-ellipsis-dropdown.entry.js +38 -38
  170. package/dist/esm/ptc-filter-tag.entry.js +57 -57
  171. package/dist/esm/ptc-hero-footer-cta.entry.js +11 -11
  172. package/dist/esm/ptc-hero.entry.js +18 -18
  173. package/dist/esm/ptc-icon-list.entry.js +21 -21
  174. package/dist/esm/ptc-icon-minimize.entry.js +36 -36
  175. package/dist/esm/ptc-link.entry.js +29 -29
  176. package/dist/esm/ptc-list.entry.js +50 -50
  177. package/dist/esm/ptc-lottie.entry.js +10 -10
  178. package/dist/esm/ptc-media-card.entry.js +28 -0
  179. package/dist/esm/ptc-minimized-footer.entry.js +8 -8
  180. package/dist/esm/ptc-minimized-header.entry.js +11 -11
  181. package/dist/esm/ptc-mobile-select.entry.js +53 -53
  182. package/dist/esm/ptc-modal.entry.js +143 -143
  183. package/dist/esm/ptc-overlay.entry.js +21 -21
  184. package/dist/esm/ptc-pagenation.entry.js +105 -105
  185. package/dist/esm/ptc-previous-url.entry.js +10 -10
  186. package/dist/esm/ptc-pricing-block.entry.js +16 -16
  187. package/dist/esm/ptc-quote.entry.js +23 -23
  188. package/dist/esm/ptc-readmore_2.entry.js +59 -59
  189. package/dist/esm/ptc-responsive-wrapper.entry.js +54 -54
  190. package/dist/esm/ptc-shopping-cart.entry.js +50 -50
  191. package/dist/esm/ptc-social-share.entry.js +59 -59
  192. package/dist/esm/ptc-span.entry.js +19 -19
  193. package/dist/esm/ptc-sticky-icons.entry.js +32 -32
  194. package/dist/esm/ptc-svg-btn.entry.js +73 -73
  195. package/dist/esm/ptc-tab-list.entry.js +124 -124
  196. package/dist/esm/ptc-text-copy-with-background.entry.js +20 -20
  197. package/dist/esm/ptc-title.entry.js +66 -66
  198. package/dist/esm/ptc-two-column-media.entry.js +15 -15
  199. package/dist/esm/ptcw-design.js +1 -1
  200. package/dist/esm/tab-content.entry.js +27 -27
  201. package/dist/esm/tab-header.entry.js +45 -45
  202. package/dist/esm/{utils-2dbb41dc.js → utils-646cc62f.js} +79 -79
  203. package/dist/ptcw-design/media/brands.svg +1381 -1381
  204. package/dist/ptcw-design/media/designer.svg +379 -379
  205. package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
  206. package/dist/ptcw-design/media/regular.svg +463 -463
  207. package/dist/ptcw-design/media/solid.svg +3013 -3013
  208. package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
  209. package/dist/ptcw-design/{p-a14a99ce.entry.js → p-0a825561.entry.js} +1 -1
  210. package/dist/ptcw-design/p-29f3c478.entry.js +1 -0
  211. package/dist/ptcw-design/{p-5d585b54.entry.js → p-2bd6743a.entry.js} +1 -1
  212. package/dist/ptcw-design/{p-5005c698.entry.js → p-482a8bc9.entry.js} +1 -1
  213. package/dist/ptcw-design/{p-5f782173.entry.js → p-4c1164d8.entry.js} +1 -1
  214. package/dist/ptcw-design/p-556dcafb.entry.js +1 -0
  215. package/dist/ptcw-design/p-82fc0608.entry.js +1 -0
  216. package/dist/ptcw-design/{p-1c589f8f.entry.js → p-ac9c4ba2.entry.js} +1 -1
  217. package/dist/ptcw-design/{p-b5366d41.entry.js → p-cf500bc9.entry.js} +1 -1
  218. package/dist/ptcw-design/{p-e38a57ce.entry.js → p-f9694131.entry.js} +1 -1
  219. package/dist/ptcw-design/ptcw-design.css +1 -1
  220. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  221. package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
  222. package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
  223. package/dist/types/components/list-item/list-item.d.ts +8 -8
  224. package/dist/types/components/my-component/my-component.d.ts +16 -16
  225. package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +59 -59
  226. package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +13 -13
  227. package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +51 -51
  228. package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +4 -4
  229. package/dist/types/components/ptc-button/ptc-button.d.ts +56 -56
  230. package/dist/types/components/ptc-card/ptc-card.d.ts +67 -67
  231. package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
  232. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +16 -16
  233. package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +18 -18
  234. package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +11 -11
  235. package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +56 -56
  236. package/dist/types/components/ptc-container/ptc-container.d.ts +12 -12
  237. package/dist/types/components/ptc-date/ptc-date.d.ts +41 -41
  238. package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
  239. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +24 -24
  240. package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +12 -12
  241. package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
  242. package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
  243. package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
  244. package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
  245. package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +9 -9
  246. package/dist/types/components/ptc-img/ptc-img.d.ts +51 -51
  247. package/dist/types/components/ptc-link/ptc-link.d.ts +40 -40
  248. package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
  249. package/dist/types/components/ptc-lottie/ptc-lottie.d.ts +12 -12
  250. package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +45 -0
  251. package/dist/types/components/ptc-minimized-footer/ptc-minimized-footer.d.ts +3 -3
  252. package/dist/types/components/ptc-minimized-header/ptc-minimized-header.d.ts +6 -6
  253. package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
  254. package/dist/types/components/ptc-modal/ptc-modal.d.ts +59 -59
  255. package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +20 -20
  256. package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +27 -27
  257. package/dist/types/components/ptc-para/ptc-para.d.ts +43 -43
  258. package/dist/types/components/ptc-picture/ptc-picture.d.ts +93 -93
  259. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +5 -5
  260. package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +5 -5
  261. package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
  262. package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +27 -27
  263. package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
  264. package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
  265. package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +33 -33
  266. package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
  267. package/dist/types/components/ptc-span/ptc-span.d.ts +16 -16
  268. package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
  269. package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +12 -12
  270. package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +15 -15
  271. package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +25 -25
  272. package/dist/types/components/ptc-title/ptc-title.d.ts +50 -50
  273. package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +34 -34
  274. package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
  275. package/dist/types/components/tab-content/tab-content.d.ts +12 -12
  276. package/dist/types/components/tab-header/tab-header.d.ts +14 -14
  277. package/dist/types/components.d.ts +181 -88
  278. package/dist/types/global.d.ts +1072 -1072
  279. package/dist/types/index.d.ts +1 -1
  280. package/dist/types/utils/component.d.ts +1 -1
  281. package/dist/types/utils/interfaces.d.ts +31 -31
  282. package/dist/types/utils/utils.d.ts +4 -4
  283. package/package.json +61 -61
  284. package/readme.md +10 -10
  285. package/dist/ptcw-design/p-88fc4011.entry.js +0 -1
  286. package/dist/ptcw-design/p-9b34acfa.entry.js +0 -1
  287. /package/dist/ptcw-design/{p-5e98555a.js → p-e121ff2a.js} +0 -0
@@ -13104,360 +13104,360 @@ var PlayMode;
13104
13104
 
13105
13105
  const lottiePlayerCss = ":host{--lottie-player-toolbar-height:35px;--lottie-player-toolbar-background-color:transparent;--lottie-player-toolbar-icon-color:#999;--lottie-player-toolbar-icon-hover-color:#222;--lottie-player-toolbar-icon-active-color:#555;--lottie-player-seeker-track-color:#CCC;--lottie-player-seeker-thumb-color:rgba(0, 107, 120, 0.8);display:block;width:100%;height:100%}.main{box-sizing:border-box;display:inline-grid;grid-auto-columns:auto;grid-template-rows:auto;position:relative;height:inherit;width:inherit}.main.controls{grid-template-rows:1fr var(--lottie-player-toolbar-height)}.animation{overflow:hidden;height:calc(1fr - var(--lottie-player-toolbar-height))}.toolbar{display:grid;grid-template-columns:32px 32px 1fr 32px 32px;align-items:center;justify-items:center;background-color:var(--lottie-player-toolbar-background-color)}.toolbar button{cursor:pointer;fill:var(--lottie-player-toolbar-icon-color);display:flex;background:none;border:0;padding:0;outline:none;height:100%}.toolbar button:hover{fill:var(--lottie-player-toolbar-icon-hover-color)}.toolbar button.active{fill:var(--lottie-player-toolbar-icon-active-color)}.toolbar button.disabled svg{display:none}.toolbar a{filter:grayscale(100%);display:flex;transition:filter .5s, opacity 0.5s;opacity:0.4;height:100%;align-items:center}.toolbar a:hover{filter:none;display:flex;opacity:1}.seeker{-webkit-appearance:none;width:95%;outline:none}.seeker::-webkit-slider-runnable-track{width:100%;height:5px;cursor:pointer;background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-webkit-slider-thumb{height:15px;width:15px;border-radius:50%;background:var(--lottie-player-seeker-thumb-color);cursor:pointer;-webkit-appearance:none;margin-top:-5px}.seeker:focus::-webkit-slider-runnable-track{background:#999}.seeker::-moz-range-track{width:100%;height:5px;cursor:pointer;background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-moz-range-thumb{height:15px;width:15px;border-radius:50%;background:var(--lottie-player-seeker-thumb-color);cursor:pointer}.seeker::-ms-track{width:100%;height:5px;cursor:pointer;background:transparent;border-color:transparent;color:transparent}.seeker::-ms-fill-lower{background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-ms-fill-upper{background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-ms-thumb{border:0;height:15px;width:15px;border-radius:50%;background:var(--lottie-player-seeker-thumb-color);cursor:pointer}.seeker:focus::-ms-fill-lower{background:var(--lottie-player-seeker-track-color)}.seeker:focus::-ms-fill-upper{background:var(--lottie-player-seeker-track-color)}.error{display:flex;justify-content:center;height:100%;align-items:center}";
13106
13106
 
13107
- const LottiePlayer = class {
13108
- constructor(hostRef) {
13109
- index.registerInstance(this, hostRef);
13110
- this.error = index.createEvent(this, "error", 7);
13111
- this.frame = index.createEvent(this, "frame", 7);
13112
- this.complete = index.createEvent(this, "complete", 7);
13113
- this.looped = index.createEvent(this, "looped", 7);
13114
- this.ready = index.createEvent(this, "ready", 7);
13115
- this.loaded = index.createEvent(this, "loaded", 7);
13116
- this.playing = index.createEvent(this, "playing", 7);
13117
- this.paused = index.createEvent(this, "paused", 7);
13118
- this.stopped = index.createEvent(this, "stopped", 7);
13119
- this.freezed = index.createEvent(this, "freezed", 7);
13120
- /**
13121
- * Play mode.
13122
- */
13123
- this.mode = PlayMode.Normal;
13124
- /**
13125
- * Autoplay animation on load
13126
- */
13127
- this.autoplay = false;
13128
- /**
13129
- * Background color.
13130
- */
13131
- this.background = 'transparent';
13132
- /**
13133
- * Show controls.
13134
- */
13135
- this.controls = false;
13136
- /**
13137
- * Direction of animation
13138
- */
13139
- this.direction = 1;
13140
- /**
13141
- * Whether to play on mouse hover
13142
- */
13143
- this.hover = false;
13144
- /**
13145
- * Whether to loop animation
13146
- */
13147
- this.loop = false;
13148
- /**
13149
- * Renderer to use.
13150
- */
13151
- this.renderer = 'svg';
13152
- /**
13153
- * Animation speed.
13154
- */
13155
- this.speed = 1;
13156
- /**
13157
- * Player state.
13158
- */
13159
- this.currentState = PlayerState.Loading;
13160
- this.intermission = 1;
13161
- this._counter = 0;
13162
- }
13163
- componentDidLoad() {
13164
- // Add intersection observer for detecting component being out-of-view.
13165
- if ('IntersectionObserver' in window) {
13166
- this._io = new IntersectionObserver((entries) => {
13167
- if (entries[0].isIntersecting) {
13168
- if (this.currentState === PlayerState.Frozen) {
13169
- this.play();
13170
- }
13171
- }
13172
- else if (this.currentState === PlayerState.Playing) {
13173
- this.freeze();
13174
- }
13175
- });
13176
- this._io.observe(this.container);
13177
- }
13178
- // Add listener for Visibility API's change event.
13179
- if (typeof document.hidden !== 'undefined') {
13180
- document.addEventListener('visibilitychange', () => this.onVisibilityChange());
13181
- }
13182
- // Setup lottie player
13183
- if (this.src) {
13184
- this.load(this.src);
13185
- }
13186
- }
13187
- load(src) {
13188
- const options = {
13189
- container: this.container,
13190
- loop: false,
13191
- autoplay: false,
13192
- renderer: this.renderer,
13193
- rendererSettings: {
13194
- scaleMode: 'noScale',
13195
- clearCanvas: false,
13196
- progressiveLoad: true,
13197
- hideOnTransparent: true,
13198
- },
13199
- };
13200
- try {
13201
- const srcParsed = parseSrc(src);
13202
- const srcAttrib = typeof srcParsed === 'string' ? 'path' : 'animationData';
13203
- // Clear previous animation, if any
13204
- if (this._lottie) {
13205
- this._lottie.destroy();
13206
- }
13207
- // Initialize lottie player and load animation
13208
- this._lottie = lottie_svg.loadAnimation(Object.assign(Object.assign({}, options), { [srcAttrib]: srcParsed }));
13209
- }
13210
- catch (err) {
13211
- this.currentState = PlayerState.Error;
13212
- this.error.emit();
13213
- return;
13214
- }
13215
- if (this._lottie) {
13216
- // Calculate and save the current progress of the animation
13217
- this._lottie.addEventListener('enterFrame', () => {
13218
- this.seeker = (this._lottie.currentFrame / this._lottie.totalFrames) * 100;
13219
- this.frame.emit({
13220
- frame: this._lottie.currentFrame,
13221
- seeker: this.seeker
13222
- });
13223
- });
13224
- // Handle animation play complete
13225
- this._lottie.addEventListener('complete', () => {
13226
- if (this.currentState !== PlayerState.Playing) {
13227
- this.complete.emit();
13228
- return;
13229
- }
13230
- if (!this.loop || (this.count && this._counter >= this.count)) {
13231
- this.complete.emit();
13232
- return;
13233
- }
13234
- if (this.mode === PlayMode.Bounce) {
13235
- if (this.count) {
13236
- this._counter += 0.5;
13237
- }
13238
- setTimeout(() => {
13239
- this.looped.emit();
13240
- if (this.currentState === PlayerState.Playing) {
13241
- this._lottie.setDirection(this._lottie.playDirection * -1);
13242
- this._lottie.play();
13243
- }
13244
- }, this.intermission);
13245
- }
13246
- else {
13247
- if (this.count) {
13248
- this._counter += 1;
13249
- }
13250
- window.setTimeout(() => {
13251
- this.looped.emit();
13252
- if (this.currentState === PlayerState.Playing) {
13253
- this._lottie.stop();
13254
- this._lottie.play();
13255
- }
13256
- }, this.intermission);
13257
- }
13258
- });
13259
- // Handle lottie-web ready event
13260
- this._lottie.addEventListener('DOMLoaded', () => {
13261
- this.ready.emit();
13262
- });
13263
- // Handle animation data load complete
13264
- this._lottie.addEventListener('data_ready', () => {
13265
- this.loaded.emit();
13266
- });
13267
- // Set error state when animation load fail event triggers
13268
- this._lottie.addEventListener('data_failed', () => {
13269
- this.currentState = PlayerState.Error;
13270
- this.error.emit();
13271
- });
13272
- // Set handlers to auto play animation on hover if enabled
13273
- this.container.addEventListener('mouseenter', () => {
13274
- if (this.hover && this.currentState !== PlayerState.Playing) {
13275
- this.play();
13276
- }
13277
- });
13278
- this.container.addEventListener('mouseleave', () => {
13279
- if (this.hover && this.currentState === PlayerState.Playing) {
13280
- this.stop();
13281
- }
13282
- });
13283
- // Set initial playback speed and direction
13284
- this.setSpeed(this.speed);
13285
- this.setDirection(this.direction);
13286
- // Start playing if autoplay is enabled
13287
- if (this.autoplay) {
13288
- this.play();
13289
- }
13290
- }
13291
- }
13292
- /**
13293
- * Start playing animation.
13294
- */
13295
- async play() {
13296
- if (!this._lottie) {
13297
- return;
13298
- }
13299
- this._lottie.play();
13300
- this.currentState = PlayerState.Playing;
13301
- this.playing.emit();
13302
- }
13303
- /**
13304
- * Stop playing animation.
13305
- */
13306
- async pause() {
13307
- if (!this._lottie) {
13308
- return;
13309
- }
13310
- this._lottie.pause();
13311
- this.currentState = PlayerState.Paused;
13312
- this.paused.emit();
13313
- }
13314
- /**
13315
- * Stops animation play.
13316
- */
13317
- async stop() {
13318
- if (!this._lottie) {
13319
- return;
13320
- }
13321
- this._counter = 0;
13322
- this._lottie.stop();
13323
- this.currentState = PlayerState.Stopped;
13324
- this.stopped.emit();
13325
- }
13326
- /**
13327
- * Seek to a given frame.
13328
- */
13329
- async seek(value) {
13330
- if (!this._lottie) {
13331
- return;
13332
- }
13333
- // Extract frame number from either number or percentage value
13334
- const matches = value.toString().match(/^([0-9]+)(%?)$/);
13335
- if (!matches) {
13336
- return;
13337
- }
13338
- // Calculate and set the frame number
13339
- const frame = matches[2] === '%'
13340
- ? this._lottie.totalFrames * Number(matches[1]) / 100
13341
- : matches[1];
13342
- // Set seeker to new frame number
13343
- this.seeker = frame;
13344
- // Send lottie player to the new frame
13345
- if (this.currentState === PlayerState.Playing) {
13346
- this._lottie.goToAndPlay(frame, true);
13347
- }
13348
- else {
13349
- this._lottie.goToAndStop(frame, true);
13350
- this._lottie.pause();
13351
- }
13352
- }
13353
- /**
13354
- * Freeze animation play.
13355
- * This internal state pauses animation and is used to differentiate between
13356
- * user requested pauses and component instigated pauses.
13357
- */
13358
- freeze() {
13359
- if (!this._lottie) {
13360
- return;
13361
- }
13362
- this.currentState = PlayerState.Frozen;
13363
- this.freezed.emit();
13364
- }
13365
- async getLottie() {
13366
- return this._lottie;
13367
- }
13368
- /**
13369
- * Sets animation play speed
13370
- * @param value Playback speed.
13371
- */
13372
- async setSpeed(value = 1) {
13373
- if (!this._lottie) {
13374
- return;
13375
- }
13376
- this._lottie.setSpeed(value);
13377
- }
13378
- /**
13379
- * Animation play direction.
13380
- * @param value Direction values.
13381
- */
13382
- async setDirection(value) {
13383
- if (!this._lottie) {
13384
- return;
13385
- }
13386
- this._lottie.setDirection(value);
13387
- }
13388
- /**
13389
- * Sets the looping of the animation.
13390
- *
13391
- * @param value Whether to enable looping. Boolean true enables looping.
13392
- */
13393
- async setLooping(value) {
13394
- if (this._lottie) {
13395
- this.loop = value;
13396
- this._lottie.loop = value;
13397
- }
13398
- }
13399
- /**
13400
- * Toggle playing state.
13401
- */
13402
- async togglePlay() {
13403
- return this.currentState === PlayerState.Playing
13404
- ? this.pause()
13405
- : this.play();
13406
- }
13407
- /**
13408
- * Toggles animation looping.
13409
- */
13410
- async toggleLooping() {
13411
- this.setLooping(!this.loop);
13412
- }
13413
- renderButtonIcon(isPlaying) {
13414
- if (isPlaying) {
13415
- return (index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M14.016 5.016H18v13.969h-3.984V5.016zM6 18.984V5.015h3.984v13.969H6z" })));
13416
- }
13417
- return (index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M8.016 5.016L18.985 12 8.016 18.984V5.015z" })));
13418
- }
13419
- renderControls() {
13420
- const isPlaying = this.currentState === PlayerState.Playing;
13421
- const isPaused = this.currentState === PlayerState.Paused;
13422
- const isStopped = this.currentState === PlayerState.Stopped;
13423
- return (index.h("div", { class: 'toolbar' }, index.h("button", { class: {
13424
- active: isPlaying || isPaused
13425
- }, onClick: () => this.togglePlay() }, this.renderButtonIcon(isPlaying)), index.h("button", { class: {
13426
- active: isStopped
13427
- }, onClick: () => this.stop() }, index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M6 6h12v12H6V6z" }))), index.h("input", { class: "seeker", type: "range", min: "0", step: "1", max: "100", value: this.seeker, onInput: e => this.handleSeekChange(e), onMouseDown: () => { this._prevState = this.currentState; this.freeze(); }, onMouseUp: () => { this._prevState === PlayerState.Playing && this.play(); } }), index.h("button", { class: {
13428
- 'active': this.loop
13429
- }, onClick: () => this.toggleLooping() }, index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M17.016 17.016v-4.031h1.969v6h-12v3l-3.984-3.984 3.984-3.984v3h10.031zM6.984 6.984v4.031H5.015v-6h12v-3l3.984 3.984-3.984 3.984v-3H6.984z" }))), index.h("a", { href: "https://www.lottiefiles.com/", target: "_blank" }, index.h("svg", { width: "24", height: "24", viewBox: "0 0 320 320", "fill-rule": "nonzero" }, index.h("rect", { fill: "#adadad", x: ".5", y: ".5", width: "100%", height: "100%", rx: "26.73" }), index.h("path", { d: "M251.304 65.44a16.55 16.55 0 0 1 13.927 18.789c-1.333 9.04-9.73 15.292-18.762 13.954-15.992-2.37-39.95 22.534-66.77 73.74-34.24 65.37-66.113 96.517-99.667 94.032-9.102-.674-15.93-8.612-15.258-17.723s8.592-15.96 17.695-15.286c16.57 1.227 40.908-24.737 67.97-76.4 34.46-65.79 66.764-96.157 100.866-91.105z", fill: "#fff" })))));
13430
- }
13431
- render() {
13432
- return (index.h("div", { class: {
13433
- main: true,
13434
- controls: this.controls
13435
- } }, index.h("div", { class: "animation", style: {
13436
- background: this.background
13437
- }, ref: ref => this.container = ref }, this.currentState === PlayerState.Error ? index.h("div", { class: "error" }, "\u26A0\uFE0F") : undefined), this.controls ? this.renderControls() : undefined));
13438
- }
13439
- /**
13440
- * Handle visibility change events.
13441
- */
13442
- onVisibilityChange() {
13443
- if (document.hidden === true && this.currentState === PlayerState.Playing) {
13444
- this.freeze();
13445
- }
13446
- else if (this.currentState === PlayerState.Frozen) {
13447
- this.play();
13448
- }
13449
- }
13450
- /**
13451
- * Handles click and drag actions on the progress track.
13452
- */
13453
- handleSeekChange(e) {
13454
- if (!this._lottie || isNaN(e.target.value)) {
13455
- return;
13456
- }
13457
- const frame = ((e.target.value / 100) * this._lottie.totalFrames);
13458
- this.seek(frame);
13459
- }
13460
- };
13107
+ const LottiePlayer = class {
13108
+ constructor(hostRef) {
13109
+ index.registerInstance(this, hostRef);
13110
+ this.error = index.createEvent(this, "error", 7);
13111
+ this.frame = index.createEvent(this, "frame", 7);
13112
+ this.complete = index.createEvent(this, "complete", 7);
13113
+ this.looped = index.createEvent(this, "looped", 7);
13114
+ this.ready = index.createEvent(this, "ready", 7);
13115
+ this.loaded = index.createEvent(this, "loaded", 7);
13116
+ this.playing = index.createEvent(this, "playing", 7);
13117
+ this.paused = index.createEvent(this, "paused", 7);
13118
+ this.stopped = index.createEvent(this, "stopped", 7);
13119
+ this.freezed = index.createEvent(this, "freezed", 7);
13120
+ /**
13121
+ * Play mode.
13122
+ */
13123
+ this.mode = PlayMode.Normal;
13124
+ /**
13125
+ * Autoplay animation on load
13126
+ */
13127
+ this.autoplay = false;
13128
+ /**
13129
+ * Background color.
13130
+ */
13131
+ this.background = 'transparent';
13132
+ /**
13133
+ * Show controls.
13134
+ */
13135
+ this.controls = false;
13136
+ /**
13137
+ * Direction of animation
13138
+ */
13139
+ this.direction = 1;
13140
+ /**
13141
+ * Whether to play on mouse hover
13142
+ */
13143
+ this.hover = false;
13144
+ /**
13145
+ * Whether to loop animation
13146
+ */
13147
+ this.loop = false;
13148
+ /**
13149
+ * Renderer to use.
13150
+ */
13151
+ this.renderer = 'svg';
13152
+ /**
13153
+ * Animation speed.
13154
+ */
13155
+ this.speed = 1;
13156
+ /**
13157
+ * Player state.
13158
+ */
13159
+ this.currentState = PlayerState.Loading;
13160
+ this.intermission = 1;
13161
+ this._counter = 0;
13162
+ }
13163
+ componentDidLoad() {
13164
+ // Add intersection observer for detecting component being out-of-view.
13165
+ if ('IntersectionObserver' in window) {
13166
+ this._io = new IntersectionObserver((entries) => {
13167
+ if (entries[0].isIntersecting) {
13168
+ if (this.currentState === PlayerState.Frozen) {
13169
+ this.play();
13170
+ }
13171
+ }
13172
+ else if (this.currentState === PlayerState.Playing) {
13173
+ this.freeze();
13174
+ }
13175
+ });
13176
+ this._io.observe(this.container);
13177
+ }
13178
+ // Add listener for Visibility API's change event.
13179
+ if (typeof document.hidden !== 'undefined') {
13180
+ document.addEventListener('visibilitychange', () => this.onVisibilityChange());
13181
+ }
13182
+ // Setup lottie player
13183
+ if (this.src) {
13184
+ this.load(this.src);
13185
+ }
13186
+ }
13187
+ load(src) {
13188
+ const options = {
13189
+ container: this.container,
13190
+ loop: false,
13191
+ autoplay: false,
13192
+ renderer: this.renderer,
13193
+ rendererSettings: {
13194
+ scaleMode: 'noScale',
13195
+ clearCanvas: false,
13196
+ progressiveLoad: true,
13197
+ hideOnTransparent: true,
13198
+ },
13199
+ };
13200
+ try {
13201
+ const srcParsed = parseSrc(src);
13202
+ const srcAttrib = typeof srcParsed === 'string' ? 'path' : 'animationData';
13203
+ // Clear previous animation, if any
13204
+ if (this._lottie) {
13205
+ this._lottie.destroy();
13206
+ }
13207
+ // Initialize lottie player and load animation
13208
+ this._lottie = lottie_svg.loadAnimation(Object.assign(Object.assign({}, options), { [srcAttrib]: srcParsed }));
13209
+ }
13210
+ catch (err) {
13211
+ this.currentState = PlayerState.Error;
13212
+ this.error.emit();
13213
+ return;
13214
+ }
13215
+ if (this._lottie) {
13216
+ // Calculate and save the current progress of the animation
13217
+ this._lottie.addEventListener('enterFrame', () => {
13218
+ this.seeker = (this._lottie.currentFrame / this._lottie.totalFrames) * 100;
13219
+ this.frame.emit({
13220
+ frame: this._lottie.currentFrame,
13221
+ seeker: this.seeker
13222
+ });
13223
+ });
13224
+ // Handle animation play complete
13225
+ this._lottie.addEventListener('complete', () => {
13226
+ if (this.currentState !== PlayerState.Playing) {
13227
+ this.complete.emit();
13228
+ return;
13229
+ }
13230
+ if (!this.loop || (this.count && this._counter >= this.count)) {
13231
+ this.complete.emit();
13232
+ return;
13233
+ }
13234
+ if (this.mode === PlayMode.Bounce) {
13235
+ if (this.count) {
13236
+ this._counter += 0.5;
13237
+ }
13238
+ setTimeout(() => {
13239
+ this.looped.emit();
13240
+ if (this.currentState === PlayerState.Playing) {
13241
+ this._lottie.setDirection(this._lottie.playDirection * -1);
13242
+ this._lottie.play();
13243
+ }
13244
+ }, this.intermission);
13245
+ }
13246
+ else {
13247
+ if (this.count) {
13248
+ this._counter += 1;
13249
+ }
13250
+ window.setTimeout(() => {
13251
+ this.looped.emit();
13252
+ if (this.currentState === PlayerState.Playing) {
13253
+ this._lottie.stop();
13254
+ this._lottie.play();
13255
+ }
13256
+ }, this.intermission);
13257
+ }
13258
+ });
13259
+ // Handle lottie-web ready event
13260
+ this._lottie.addEventListener('DOMLoaded', () => {
13261
+ this.ready.emit();
13262
+ });
13263
+ // Handle animation data load complete
13264
+ this._lottie.addEventListener('data_ready', () => {
13265
+ this.loaded.emit();
13266
+ });
13267
+ // Set error state when animation load fail event triggers
13268
+ this._lottie.addEventListener('data_failed', () => {
13269
+ this.currentState = PlayerState.Error;
13270
+ this.error.emit();
13271
+ });
13272
+ // Set handlers to auto play animation on hover if enabled
13273
+ this.container.addEventListener('mouseenter', () => {
13274
+ if (this.hover && this.currentState !== PlayerState.Playing) {
13275
+ this.play();
13276
+ }
13277
+ });
13278
+ this.container.addEventListener('mouseleave', () => {
13279
+ if (this.hover && this.currentState === PlayerState.Playing) {
13280
+ this.stop();
13281
+ }
13282
+ });
13283
+ // Set initial playback speed and direction
13284
+ this.setSpeed(this.speed);
13285
+ this.setDirection(this.direction);
13286
+ // Start playing if autoplay is enabled
13287
+ if (this.autoplay) {
13288
+ this.play();
13289
+ }
13290
+ }
13291
+ }
13292
+ /**
13293
+ * Start playing animation.
13294
+ */
13295
+ async play() {
13296
+ if (!this._lottie) {
13297
+ return;
13298
+ }
13299
+ this._lottie.play();
13300
+ this.currentState = PlayerState.Playing;
13301
+ this.playing.emit();
13302
+ }
13303
+ /**
13304
+ * Stop playing animation.
13305
+ */
13306
+ async pause() {
13307
+ if (!this._lottie) {
13308
+ return;
13309
+ }
13310
+ this._lottie.pause();
13311
+ this.currentState = PlayerState.Paused;
13312
+ this.paused.emit();
13313
+ }
13314
+ /**
13315
+ * Stops animation play.
13316
+ */
13317
+ async stop() {
13318
+ if (!this._lottie) {
13319
+ return;
13320
+ }
13321
+ this._counter = 0;
13322
+ this._lottie.stop();
13323
+ this.currentState = PlayerState.Stopped;
13324
+ this.stopped.emit();
13325
+ }
13326
+ /**
13327
+ * Seek to a given frame.
13328
+ */
13329
+ async seek(value) {
13330
+ if (!this._lottie) {
13331
+ return;
13332
+ }
13333
+ // Extract frame number from either number or percentage value
13334
+ const matches = value.toString().match(/^([0-9]+)(%?)$/);
13335
+ if (!matches) {
13336
+ return;
13337
+ }
13338
+ // Calculate and set the frame number
13339
+ const frame = matches[2] === '%'
13340
+ ? this._lottie.totalFrames * Number(matches[1]) / 100
13341
+ : matches[1];
13342
+ // Set seeker to new frame number
13343
+ this.seeker = frame;
13344
+ // Send lottie player to the new frame
13345
+ if (this.currentState === PlayerState.Playing) {
13346
+ this._lottie.goToAndPlay(frame, true);
13347
+ }
13348
+ else {
13349
+ this._lottie.goToAndStop(frame, true);
13350
+ this._lottie.pause();
13351
+ }
13352
+ }
13353
+ /**
13354
+ * Freeze animation play.
13355
+ * This internal state pauses animation and is used to differentiate between
13356
+ * user requested pauses and component instigated pauses.
13357
+ */
13358
+ freeze() {
13359
+ if (!this._lottie) {
13360
+ return;
13361
+ }
13362
+ this.currentState = PlayerState.Frozen;
13363
+ this.freezed.emit();
13364
+ }
13365
+ async getLottie() {
13366
+ return this._lottie;
13367
+ }
13368
+ /**
13369
+ * Sets animation play speed
13370
+ * @param value Playback speed.
13371
+ */
13372
+ async setSpeed(value = 1) {
13373
+ if (!this._lottie) {
13374
+ return;
13375
+ }
13376
+ this._lottie.setSpeed(value);
13377
+ }
13378
+ /**
13379
+ * Animation play direction.
13380
+ * @param value Direction values.
13381
+ */
13382
+ async setDirection(value) {
13383
+ if (!this._lottie) {
13384
+ return;
13385
+ }
13386
+ this._lottie.setDirection(value);
13387
+ }
13388
+ /**
13389
+ * Sets the looping of the animation.
13390
+ *
13391
+ * @param value Whether to enable looping. Boolean true enables looping.
13392
+ */
13393
+ async setLooping(value) {
13394
+ if (this._lottie) {
13395
+ this.loop = value;
13396
+ this._lottie.loop = value;
13397
+ }
13398
+ }
13399
+ /**
13400
+ * Toggle playing state.
13401
+ */
13402
+ async togglePlay() {
13403
+ return this.currentState === PlayerState.Playing
13404
+ ? this.pause()
13405
+ : this.play();
13406
+ }
13407
+ /**
13408
+ * Toggles animation looping.
13409
+ */
13410
+ async toggleLooping() {
13411
+ this.setLooping(!this.loop);
13412
+ }
13413
+ renderButtonIcon(isPlaying) {
13414
+ if (isPlaying) {
13415
+ return (index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M14.016 5.016H18v13.969h-3.984V5.016zM6 18.984V5.015h3.984v13.969H6z" })));
13416
+ }
13417
+ return (index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M8.016 5.016L18.985 12 8.016 18.984V5.015z" })));
13418
+ }
13419
+ renderControls() {
13420
+ const isPlaying = this.currentState === PlayerState.Playing;
13421
+ const isPaused = this.currentState === PlayerState.Paused;
13422
+ const isStopped = this.currentState === PlayerState.Stopped;
13423
+ return (index.h("div", { class: 'toolbar' }, index.h("button", { class: {
13424
+ active: isPlaying || isPaused
13425
+ }, onClick: () => this.togglePlay() }, this.renderButtonIcon(isPlaying)), index.h("button", { class: {
13426
+ active: isStopped
13427
+ }, onClick: () => this.stop() }, index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M6 6h12v12H6V6z" }))), index.h("input", { class: "seeker", type: "range", min: "0", step: "1", max: "100", value: this.seeker, onInput: e => this.handleSeekChange(e), onMouseDown: () => { this._prevState = this.currentState; this.freeze(); }, onMouseUp: () => { this._prevState === PlayerState.Playing && this.play(); } }), index.h("button", { class: {
13428
+ 'active': this.loop
13429
+ }, onClick: () => this.toggleLooping() }, index.h("svg", { width: "24", height: "24" }, index.h("path", { d: "M17.016 17.016v-4.031h1.969v6h-12v3l-3.984-3.984 3.984-3.984v3h10.031zM6.984 6.984v4.031H5.015v-6h12v-3l3.984 3.984-3.984 3.984v-3H6.984z" }))), index.h("a", { href: "https://www.lottiefiles.com/", target: "_blank" }, index.h("svg", { width: "24", height: "24", viewBox: "0 0 320 320", "fill-rule": "nonzero" }, index.h("rect", { fill: "#adadad", x: ".5", y: ".5", width: "100%", height: "100%", rx: "26.73" }), index.h("path", { d: "M251.304 65.44a16.55 16.55 0 0 1 13.927 18.789c-1.333 9.04-9.73 15.292-18.762 13.954-15.992-2.37-39.95 22.534-66.77 73.74-34.24 65.37-66.113 96.517-99.667 94.032-9.102-.674-15.93-8.612-15.258-17.723s8.592-15.96 17.695-15.286c16.57 1.227 40.908-24.737 67.97-76.4 34.46-65.79 66.764-96.157 100.866-91.105z", fill: "#fff" })))));
13430
+ }
13431
+ render() {
13432
+ return (index.h("div", { class: {
13433
+ main: true,
13434
+ controls: this.controls
13435
+ } }, index.h("div", { class: "animation", style: {
13436
+ background: this.background
13437
+ }, ref: ref => this.container = ref }, this.currentState === PlayerState.Error ? index.h("div", { class: "error" }, "\u26A0\uFE0F") : undefined), this.controls ? this.renderControls() : undefined));
13438
+ }
13439
+ /**
13440
+ * Handle visibility change events.
13441
+ */
13442
+ onVisibilityChange() {
13443
+ if (document.hidden === true && this.currentState === PlayerState.Playing) {
13444
+ this.freeze();
13445
+ }
13446
+ else if (this.currentState === PlayerState.Frozen) {
13447
+ this.play();
13448
+ }
13449
+ }
13450
+ /**
13451
+ * Handles click and drag actions on the progress track.
13452
+ */
13453
+ handleSeekChange(e) {
13454
+ if (!this._lottie || isNaN(e.target.value)) {
13455
+ return;
13456
+ }
13457
+ const frame = ((e.target.value / 100) * this._lottie.totalFrames);
13458
+ this.seek(frame);
13459
+ }
13460
+ };
13461
13461
  LottiePlayer.style = lottiePlayerCss;
13462
13462
 
13463
13463
  exports.lottie_player = LottiePlayer;