@ptcwebops/ptcw-design 1.2.7 → 1.2.9

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 (379) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/bundle-example.cjs.entry.js +30 -30
  3. package/dist/cjs/bundle-jumbotron-example.cjs.entry.js +35 -32
  4. package/dist/cjs/dropdown-item.cjs.entry.js +10 -10
  5. package/dist/cjs/icon-asset.cjs.entry.js +42 -42
  6. package/dist/cjs/{interfaces-0ecd8027.js → interfaces-574e6df7.js} +9 -9
  7. package/dist/cjs/list-item.cjs.entry.js +23 -23
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/lottie-player.cjs.entry.js +354 -354
  10. package/dist/cjs/max-width-container_6.cjs.entry.js +487 -485
  11. package/dist/cjs/my-component.cjs.entry.js +15 -15
  12. package/dist/cjs/ptc-accordion-item.cjs.entry.js +83 -83
  13. package/dist/cjs/ptc-accordion.cjs.entry.js +35 -35
  14. package/dist/cjs/ptc-announcement.cjs.entry.js +51 -51
  15. package/dist/cjs/ptc-bio-card.cjs.entry.js +24 -24
  16. package/dist/cjs/ptc-breadcrumb_2.cjs.entry.js +127 -126
  17. package/dist/cjs/ptc-button_8.cjs.entry.js +481 -481
  18. package/dist/cjs/ptc-card-bottom_3.cjs.entry.js +122 -122
  19. package/dist/cjs/ptc-card.cjs.entry.js +66 -65
  20. package/dist/cjs/ptc-checkbox.cjs.entry.js +50 -50
  21. package/dist/cjs/ptc-collapse-list.cjs.entry.js +346 -346
  22. package/dist/cjs/ptc-container.cjs.entry.js +33 -32
  23. package/dist/cjs/ptc-date.cjs.entry.js +50 -50
  24. package/dist/cjs/ptc-dropdown.cjs.entry.js +64 -64
  25. package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +38 -38
  26. package/dist/cjs/ptc-filter-tag.cjs.entry.js +57 -57
  27. package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +11 -11
  28. package/dist/cjs/ptc-hero.cjs.entry.js +18 -18
  29. package/dist/cjs/ptc-icon-list.cjs.entry.js +21 -21
  30. package/dist/cjs/ptc-icon-minimize.cjs.entry.js +43 -43
  31. package/dist/cjs/ptc-link.cjs.entry.js +30 -30
  32. package/dist/cjs/ptc-list.cjs.entry.js +49 -49
  33. package/dist/cjs/ptc-lottie.cjs.entry.js +10 -10
  34. package/dist/cjs/ptc-media-card.cjs.entry.js +24 -24
  35. package/dist/cjs/ptc-minimized-footer.cjs.entry.js +8 -8
  36. package/dist/cjs/ptc-minimized-header.cjs.entry.js +11 -11
  37. package/dist/cjs/ptc-mobile-select.cjs.entry.js +53 -53
  38. package/dist/cjs/ptc-nav-card.cjs.entry.js +40 -40
  39. package/dist/cjs/ptc-nav-link.cjs.entry.js +47 -0
  40. package/dist/cjs/ptc-nav-slider.cjs.entry.js +94 -0
  41. package/dist/cjs/ptc-nav-submenu.cjs.entry.js +29 -0
  42. package/dist/cjs/ptc-pagenation.cjs.entry.js +213 -213
  43. package/dist/cjs/ptc-previous-url.cjs.entry.js +11 -11
  44. package/dist/cjs/ptc-pricing-block.cjs.entry.js +21 -21
  45. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +125 -125
  46. package/dist/cjs/ptc-quote.cjs.entry.js +23 -23
  47. package/dist/cjs/ptc-readmore.cjs.entry.js +73 -73
  48. package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +54 -54
  49. package/dist/cjs/ptc-search-field.cjs.entry.js +66 -66
  50. package/dist/cjs/ptc-shopping-cart.cjs.entry.js +50 -50
  51. package/dist/cjs/ptc-social-share.cjs.entry.js +59 -59
  52. package/dist/cjs/ptc-span.cjs.entry.js +18 -18
  53. package/dist/cjs/ptc-sticky-icons.cjs.entry.js +32 -32
  54. package/dist/cjs/ptc-sticky-section.cjs.entry.js +38 -0
  55. package/dist/cjs/ptc-subnav-card.cjs.entry.js +26 -0
  56. package/dist/cjs/ptc-subnav.cjs.entry.js +32 -0
  57. package/dist/cjs/ptc-tab-list.cjs.entry.js +125 -125
  58. package/dist/cjs/ptc-tab.cjs.entry.js +20 -20
  59. package/dist/cjs/ptc-tabs.cjs.entry.js +47 -47
  60. package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +27 -27
  61. package/dist/cjs/ptc-tooltip.cjs.entry.js +83 -80
  62. package/dist/cjs/ptc-two-column-media.cjs.entry.js +15 -15
  63. package/dist/cjs/ptcw-design.cjs.js +1 -1
  64. package/dist/cjs/sequential-bundle.cjs.entry.js +88 -88
  65. package/dist/cjs/tab-content.cjs.entry.js +27 -27
  66. package/dist/cjs/tab-header.cjs.entry.js +64 -64
  67. package/dist/cjs/{utils-416c94fe.js → utils-9eb22041.js} +90 -90
  68. package/dist/collection/collection-manifest.json +6 -0
  69. package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
  70. package/dist/collection/components/icon-asset/icon-asset.css +4 -4
  71. package/dist/collection/components/icon-asset/icon-asset.js +199 -199
  72. package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
  73. package/dist/collection/components/icon-asset/media/designer.svg +397 -387
  74. package/dist/collection/components/icon-asset/media/regular.svg +463 -463
  75. package/dist/collection/components/icon-asset/media/solid.svg +3013 -3013
  76. package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
  77. package/dist/collection/components/list-item/list-item.css +19 -0
  78. package/dist/collection/components/list-item/list-item.js +144 -144
  79. package/dist/collection/components/max-width-container/max-width-container.css +11 -11
  80. package/dist/collection/components/max-width-container/max-width-container.js +105 -105
  81. package/dist/collection/components/my-component/my-component.css +3 -3
  82. package/dist/collection/components/my-component/my-component.js +82 -82
  83. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.css +25 -25
  84. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.js +58 -58
  85. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.css +3 -3
  86. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.js +87 -66
  87. package/dist/collection/components/organism-bundles/sequential-bundle/sequential-bundle.js +116 -116
  88. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.css +89 -89
  89. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.js +152 -152
  90. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +287 -287
  91. package/dist/collection/components/ptc-accordion/ptc-accordion.js +78 -78
  92. package/dist/collection/components/ptc-announcement/ptc-announcement.css +0 -5
  93. package/dist/collection/components/ptc-announcement/ptc-announcement.js +237 -237
  94. package/dist/collection/components/ptc-background-video/ptc-background-video.js +122 -102
  95. package/dist/collection/components/ptc-bio-card/ptc-bio-card.js +130 -130
  96. package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +105 -105
  97. package/dist/collection/components/ptc-button/ptc-button.js +283 -283
  98. package/dist/collection/components/ptc-card/ptc-card.js +362 -344
  99. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
  100. package/dist/collection/components/ptc-card-content/ptc-card-content.js +212 -212
  101. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +214 -214
  102. package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +152 -152
  103. package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +586 -586
  104. package/dist/collection/components/ptc-container/ptc-container.js +138 -120
  105. package/dist/collection/components/ptc-date/ptc-date.js +224 -224
  106. package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
  107. package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
  108. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +174 -174
  109. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +122 -122
  110. package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
  111. package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
  112. package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
  113. package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
  114. package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +119 -119
  115. package/dist/collection/components/ptc-img/ptc-img.js +293 -293
  116. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.css +21 -0
  117. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +297 -278
  118. package/dist/collection/components/ptc-link/ptc-link.js +222 -222
  119. package/dist/collection/components/ptc-list/ptc-list.js +99 -99
  120. package/dist/collection/components/ptc-lottie/ptc-lottie.css +5 -5
  121. package/dist/collection/components/ptc-lottie/ptc-lottie.js +62 -62
  122. package/dist/collection/components/ptc-media-card/ptc-media-card.js +216 -216
  123. package/dist/collection/components/ptc-minimized-footer/ptc-minimized-footer.js +18 -18
  124. package/dist/collection/components/ptc-minimized-header/ptc-minimized-header.js +81 -81
  125. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +190 -190
  126. package/dist/collection/components/ptc-modal/ptc-modal.css +1 -1
  127. package/dist/collection/components/ptc-modal/ptc-modal.js +389 -389
  128. package/dist/collection/components/ptc-nav-card/ptc-nav-card.js +228 -228
  129. package/dist/collection/components/ptc-overlay/ptc-overlay.js +131 -131
  130. package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +468 -468
  131. package/dist/collection/components/ptc-para/ptc-para.js +242 -242
  132. package/dist/collection/components/ptc-picture/ptc-picture.js +453 -453
  133. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +78 -78
  134. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.css +16 -4
  135. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +70 -70
  136. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.css +23 -1
  137. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +272 -272
  138. package/dist/collection/components/ptc-quote/ptc-quote.js +144 -144
  139. package/dist/collection/components/ptc-readmore/ptc-readmore.js +298 -298
  140. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
  141. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
  142. package/dist/collection/components/ptc-search-field/ptc-search-field.css +1 -1
  143. package/dist/collection/components/ptc-search-field/ptc-search-field.js +239 -239
  144. package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
  145. package/dist/collection/components/ptc-skeleton/ptc-skeleton.js +139 -139
  146. package/dist/collection/components/ptc-social-share/ptc-social-share.js +239 -239
  147. package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -332
  148. package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -97
  149. package/dist/collection/components/ptc-span/ptc-span.js +87 -87
  150. package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
  151. package/dist/collection/components/ptc-sticky-section/ptc-sticky-section.css +10 -0
  152. package/dist/collection/components/ptc-sticky-section/ptc-sticky-section.js +46 -0
  153. package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +109 -109
  154. package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +177 -177
  155. package/dist/collection/components/ptc-tabs/ptc-tab.js +121 -121
  156. package/dist/collection/components/ptc-tabs/ptc-tabs.js +104 -104
  157. package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +166 -166
  158. package/dist/collection/components/ptc-title/ptc-title.js +310 -310
  159. package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +270 -267
  160. package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
  161. package/dist/collection/components/subnav/ptc-nav-link/ptc-nav-link.css +79 -0
  162. package/dist/collection/components/subnav/ptc-nav-link/ptc-nav-link.js +114 -0
  163. package/dist/collection/components/subnav/ptc-nav-slider/ptc-nav-slider.css +72 -0
  164. package/dist/collection/components/subnav/ptc-nav-slider/ptc-nav-slider.js +126 -0
  165. package/dist/collection/components/subnav/ptc-nav-submenu/ptc-nav-submenu.css +159 -0
  166. package/dist/collection/components/subnav/ptc-nav-submenu/ptc-nav-submenu.js +85 -0
  167. package/dist/collection/components/subnav/ptc-subnav/ptc-subnav.css +59 -0
  168. package/dist/collection/components/subnav/ptc-subnav/ptc-subnav.js +47 -0
  169. package/dist/collection/components/subnav/ptc-subnav-card/ptc-subnav-card.css +25 -0
  170. package/dist/collection/components/subnav/ptc-subnav-card/ptc-subnav-card.js +133 -0
  171. package/dist/collection/components/tab-content/tab-content.js +84 -84
  172. package/dist/collection/components/tab-header/tab-header.js +182 -182
  173. package/dist/collection/index.js +1 -1
  174. package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
  175. package/dist/collection/media/svg-imgs/close.svg +10 -10
  176. package/dist/collection/media/svg-imgs/play-button-dark.svg +20 -20
  177. package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
  178. package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
  179. package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
  180. package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
  181. package/dist/collection/media/svg-imgs/union.svg +3 -3
  182. package/dist/collection/utils/component.js +3 -3
  183. package/dist/collection/utils/interfaces.js +11 -11
  184. package/dist/collection/utils/utils.js +92 -92
  185. package/dist/custom-elements/index.d.ts +36 -0
  186. package/dist/custom-elements/index.js +4676 -4418
  187. package/dist/esm/bundle-example.entry.js +30 -30
  188. package/dist/esm/bundle-jumbotron-example.entry.js +35 -32
  189. package/dist/esm/dropdown-item.entry.js +10 -10
  190. package/dist/esm/icon-asset.entry.js +42 -42
  191. package/dist/esm/{interfaces-c1c73092.js → interfaces-7c0243be.js} +9 -9
  192. package/dist/esm/list-item.entry.js +23 -23
  193. package/dist/esm/loader.js +1 -1
  194. package/dist/esm/lottie-player.entry.js +354 -354
  195. package/dist/esm/max-width-container_6.entry.js +487 -485
  196. package/dist/esm/my-component.entry.js +15 -15
  197. package/dist/esm/polyfills/core-js.js +0 -0
  198. package/dist/esm/polyfills/dom.js +0 -0
  199. package/dist/esm/polyfills/es5-html-element.js +0 -0
  200. package/dist/esm/polyfills/index.js +0 -0
  201. package/dist/esm/polyfills/system.js +0 -0
  202. package/dist/esm/ptc-accordion-item.entry.js +83 -83
  203. package/dist/esm/ptc-accordion.entry.js +35 -35
  204. package/dist/esm/ptc-announcement.entry.js +51 -51
  205. package/dist/esm/ptc-bio-card.entry.js +24 -24
  206. package/dist/esm/ptc-breadcrumb_2.entry.js +127 -126
  207. package/dist/esm/ptc-button_8.entry.js +481 -481
  208. package/dist/esm/ptc-card-bottom_3.entry.js +122 -122
  209. package/dist/esm/ptc-card.entry.js +66 -65
  210. package/dist/esm/ptc-checkbox.entry.js +50 -50
  211. package/dist/esm/ptc-collapse-list.entry.js +346 -346
  212. package/dist/esm/ptc-container.entry.js +33 -32
  213. package/dist/esm/ptc-date.entry.js +50 -50
  214. package/dist/esm/ptc-dropdown.entry.js +64 -64
  215. package/dist/esm/ptc-ellipsis-dropdown.entry.js +38 -38
  216. package/dist/esm/ptc-filter-tag.entry.js +57 -57
  217. package/dist/esm/ptc-hero-footer-cta.entry.js +11 -11
  218. package/dist/esm/ptc-hero.entry.js +18 -18
  219. package/dist/esm/ptc-icon-list.entry.js +21 -21
  220. package/dist/esm/ptc-icon-minimize.entry.js +43 -43
  221. package/dist/esm/ptc-link.entry.js +30 -30
  222. package/dist/esm/ptc-list.entry.js +49 -49
  223. package/dist/esm/ptc-lottie.entry.js +10 -10
  224. package/dist/esm/ptc-media-card.entry.js +24 -24
  225. package/dist/esm/ptc-minimized-footer.entry.js +8 -8
  226. package/dist/esm/ptc-minimized-header.entry.js +11 -11
  227. package/dist/esm/ptc-mobile-select.entry.js +53 -53
  228. package/dist/esm/ptc-nav-card.entry.js +40 -40
  229. package/dist/esm/ptc-nav-link.entry.js +43 -0
  230. package/dist/esm/ptc-nav-slider.entry.js +90 -0
  231. package/dist/esm/ptc-nav-submenu.entry.js +25 -0
  232. package/dist/esm/ptc-pagenation.entry.js +213 -213
  233. package/dist/esm/ptc-previous-url.entry.js +11 -11
  234. package/dist/esm/ptc-pricing-block.entry.js +21 -21
  235. package/dist/esm/ptc-pricing-tabs.entry.js +125 -125
  236. package/dist/esm/ptc-quote.entry.js +23 -23
  237. package/dist/esm/ptc-readmore.entry.js +73 -73
  238. package/dist/esm/ptc-responsive-wrapper.entry.js +54 -54
  239. package/dist/esm/ptc-search-field.entry.js +66 -66
  240. package/dist/esm/ptc-shopping-cart.entry.js +50 -50
  241. package/dist/esm/ptc-social-share.entry.js +59 -59
  242. package/dist/esm/ptc-span.entry.js +18 -18
  243. package/dist/esm/ptc-sticky-icons.entry.js +32 -32
  244. package/dist/esm/ptc-sticky-section.entry.js +34 -0
  245. package/dist/esm/ptc-subnav-card.entry.js +22 -0
  246. package/dist/esm/ptc-subnav.entry.js +28 -0
  247. package/dist/esm/ptc-tab-list.entry.js +125 -125
  248. package/dist/esm/ptc-tab.entry.js +20 -20
  249. package/dist/esm/ptc-tabs.entry.js +47 -47
  250. package/dist/esm/ptc-text-copy-with-background.entry.js +27 -27
  251. package/dist/esm/ptc-tooltip.entry.js +83 -80
  252. package/dist/esm/ptc-two-column-media.entry.js +15 -15
  253. package/dist/esm/ptcw-design.js +1 -1
  254. package/dist/esm/sequential-bundle.entry.js +88 -88
  255. package/dist/esm/tab-content.entry.js +27 -27
  256. package/dist/esm/tab-header.entry.js +64 -64
  257. package/dist/esm/{utils-f937097d.js → utils-38decc43.js} +90 -90
  258. package/dist/ptcw-design/media/brands.svg +1381 -1381
  259. package/dist/ptcw-design/media/designer.svg +397 -387
  260. package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
  261. package/dist/ptcw-design/media/regular.svg +463 -463
  262. package/dist/ptcw-design/media/solid.svg +3013 -3013
  263. package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
  264. package/dist/ptcw-design/{p-a76bf4d6.entry.js → p-1a346da4.entry.js} +1 -1
  265. package/dist/ptcw-design/p-1d8c24dd.entry.js +1 -0
  266. package/dist/ptcw-design/{p-0c1e7f62.entry.js → p-3f2b9cad.entry.js} +1 -1
  267. package/dist/ptcw-design/p-4947eb0a.entry.js +1 -0
  268. package/dist/ptcw-design/p-4a1d0d07.entry.js +1 -0
  269. package/dist/ptcw-design/p-51ee36a7.entry.js +1 -0
  270. package/dist/ptcw-design/p-54f905b1.entry.js +1 -0
  271. package/dist/ptcw-design/{p-619dac51.entry.js → p-6696c7e0.entry.js} +1 -1
  272. package/dist/ptcw-design/{p-7f7594ee.entry.js → p-7c80b666.entry.js} +1 -1
  273. package/dist/ptcw-design/p-8c37ee88.entry.js +1 -0
  274. package/dist/ptcw-design/p-94c33d5d.entry.js +1 -0
  275. package/dist/ptcw-design/p-9d7ccb04.entry.js +1 -0
  276. package/dist/ptcw-design/p-c1d75020.entry.js +1 -0
  277. package/dist/ptcw-design/p-c255aad7.entry.js +1 -0
  278. package/dist/ptcw-design/p-d7e11aad.entry.js +1 -0
  279. package/dist/ptcw-design/{p-de336318.entry.js → p-d91ff88e.entry.js} +1 -1
  280. package/dist/ptcw-design/p-e19dbf90.entry.js +1 -0
  281. package/dist/ptcw-design/{p-c0b1c34c.entry.js → p-e3af3cc7.entry.js} +1 -1
  282. package/dist/ptcw-design/{p-ab9d5bb9.entry.js → p-e60eb5aa.entry.js} +1 -1
  283. package/dist/ptcw-design/{p-0eeebc10.entry.js → p-f498d4ab.entry.js} +1 -1
  284. package/dist/ptcw-design/p-fbf6f66c.entry.js +1 -0
  285. package/dist/ptcw-design/ptcw-design.css +1 -1
  286. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  287. package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
  288. package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
  289. package/dist/types/components/list-item/list-item.d.ts +16 -16
  290. package/dist/types/components/max-width-container/max-width-container.d.ts +11 -11
  291. package/dist/types/components/my-component/my-component.d.ts +16 -16
  292. package/dist/types/components/organism-bundles/bundle-example/bundle-example.d.ts +10 -10
  293. package/dist/types/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.d.ts +5 -4
  294. package/dist/types/components/organism-bundles/sequential-bundle/sequential-bundle.d.ts +12 -12
  295. package/dist/types/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.d.ts +16 -16
  296. package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +59 -59
  297. package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +13 -13
  298. package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +51 -51
  299. package/dist/types/components/ptc-background-video/ptc-background-video.d.ts +30 -26
  300. package/dist/types/components/ptc-bio-card/ptc-bio-card.d.ts +27 -27
  301. package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +20 -20
  302. package/dist/types/components/ptc-button/ptc-button.d.ts +60 -60
  303. package/dist/types/components/ptc-card/ptc-card.d.ts +71 -67
  304. package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
  305. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +19 -19
  306. package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +24 -24
  307. package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +14 -14
  308. package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +56 -56
  309. package/dist/types/components/ptc-container/ptc-container.d.ts +13 -12
  310. package/dist/types/components/ptc-date/ptc-date.d.ts +46 -46
  311. package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
  312. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +23 -23
  313. package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +12 -12
  314. package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
  315. package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
  316. package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
  317. package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
  318. package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +12 -12
  319. package/dist/types/components/ptc-img/ptc-img.d.ts +51 -51
  320. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +22 -21
  321. package/dist/types/components/ptc-link/ptc-link.d.ts +44 -44
  322. package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
  323. package/dist/types/components/ptc-lottie/ptc-lottie.d.ts +12 -12
  324. package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +45 -45
  325. package/dist/types/components/ptc-minimized-footer/ptc-minimized-footer.d.ts +3 -3
  326. package/dist/types/components/ptc-minimized-header/ptc-minimized-header.d.ts +6 -6
  327. package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
  328. package/dist/types/components/ptc-modal/ptc-modal.d.ts +67 -67
  329. package/dist/types/components/ptc-nav-card/ptc-nav-card.d.ts +46 -46
  330. package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +21 -21
  331. package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +35 -35
  332. package/dist/types/components/ptc-para/ptc-para.d.ts +47 -47
  333. package/dist/types/components/ptc-picture/ptc-picture.d.ts +93 -93
  334. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +9 -9
  335. package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +7 -7
  336. package/dist/types/components/ptc-pricing-tabs/ptc-pricing-tabs.d.ts +52 -52
  337. package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
  338. package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +57 -57
  339. package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
  340. package/dist/types/components/ptc-search-field/ptc-search-field.d.ts +22 -22
  341. package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
  342. package/dist/types/components/ptc-skeleton/ptc-skeleton.d.ts +10 -10
  343. package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +33 -33
  344. package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
  345. package/dist/types/components/ptc-span/ptc-span.d.ts +16 -16
  346. package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
  347. package/dist/types/components/ptc-sticky-section/ptc-sticky-section.d.ts +9 -0
  348. package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +20 -20
  349. package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +19 -19
  350. package/dist/types/components/ptc-tabs/ptc-tab.d.ts +9 -9
  351. package/dist/types/components/ptc-tabs/ptc-tabs.d.ts +10 -10
  352. package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +33 -33
  353. package/dist/types/components/ptc-title/ptc-title.d.ts +54 -54
  354. package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +47 -47
  355. package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
  356. package/dist/types/components/subnav/ptc-nav-link/ptc-nav-link.d.ts +21 -0
  357. package/dist/types/components/subnav/ptc-nav-slider/ptc-nav-slider.d.ts +11 -0
  358. package/dist/types/components/subnav/ptc-nav-submenu/ptc-nav-submenu.d.ts +18 -0
  359. package/dist/types/components/subnav/ptc-subnav/ptc-subnav.d.ts +7 -0
  360. package/dist/types/components/subnav/ptc-subnav-card/ptc-subnav-card.d.ts +27 -0
  361. package/dist/types/components/tab-content/tab-content.d.ts +12 -12
  362. package/dist/types/components/tab-header/tab-header.d.ts +22 -22
  363. package/dist/types/components.d.ts +330 -132
  364. package/dist/types/global.d.ts +1072 -1072
  365. package/dist/types/index.d.ts +1 -1
  366. package/dist/types/utils/component.d.ts +1 -1
  367. package/dist/types/utils/interfaces.d.ts +31 -31
  368. package/dist/types/utils/utils.d.ts +5 -5
  369. package/package.json +60 -60
  370. package/readme.md +18 -18
  371. package/dist/ptcw-design/p-11d73140.entry.js +0 -1
  372. package/dist/ptcw-design/p-1673d5a4.entry.js +0 -1
  373. package/dist/ptcw-design/p-2feb5db1.entry.js +0 -1
  374. package/dist/ptcw-design/p-603576bb.entry.js +0 -1
  375. package/dist/ptcw-design/p-6756c89e.entry.js +0 -1
  376. package/dist/ptcw-design/p-bcbf087c.entry.js +0 -1
  377. package/dist/ptcw-design/p-da23d3d7.entry.js +0 -1
  378. /package/dist/ptcw-design/{p-ea875d9e.js → p-36665caa.js} +0 -0
  379. /package/dist/ptcw-design/{p-50e52c88.js → p-ee1183b2.js} +0 -0
@@ -3,355 +3,355 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-88135a6b.js');
6
- const utils = require('./utils-416c94fe.js');
6
+ const utils = require('./utils-9eb22041.js');
7
7
 
8
8
  const ptcCollapseListCss = ":host{display:block;height:100%}.container{border-right:1px solid rgba(112, 112, 112, 0.25);position:relative;height:100%}.container>ul{overflow:visible}a{transition:color ease-out 250ms}ul{transition:max-height ease-out 250ms, padding ease-out 250ms;overflow:hidden;list-style:none;padding:0;margin:0}li{cursor:pointer}.level-1>ul{max-height:0}.level-1>ul>li{margin:12px 0}.level-1>ul>li:first-child{margin-top:20px}.level-1>ul>li:last-child{margin-bottom:10px}.level-2>ul,.level-3>ul,.level-4>ul,.level-5>ul{max-height:0}.level-2>ul>li,.level-3>ul>li,.level-4>ul>li,.level-5>ul>li{margin:8px 0}.level-2>ul{padding-left:2.25rem}.level-3>ul{padding-left:3rem}.level-4>ul{padding-left:3.75rem}.level-5>ul{padding-left:4.5rem}.level-1{position:relative}.level-1>a{position:relative;padding:16px 20px 17.5px 0;display:block;font-size:18px;letter-spacing:0.45px;font-weight:800;color:var(--color-gray-08);text-decoration:none;border-bottom:1px solid rgba(112, 112, 112, 0.25)}.level-1>a:hover,.level-1>a:active,.level-1>a:focus{text-decoration:none}.level-1>a>icon-asset{transition:transform var(--ptc-ease-out) var(--ptc-transition-medium), padding var(--ptc-ease-out) var(--ptc-transition-medium);position:absolute;right:20px;padding-top:2px}.level-1>a:after{content:\"\";display:block;position:absolute;bottom:-2px;left:0;height:3px;width:40px;background-color:var(--color-green-07);transition:background-color var(--ptc-ease-out) var(--ptc-transition-medium)}.level-1.expanded a>icon-asset{transform:rotate(-180deg);padding-top:0}.level-1.expanded a>ul{padding-top:14px}.level-1.expanded a:after{background-color:var(--color-gray-11)}.level-1>ul{padding-top:0}.level-1:first-child>a{padding-top:20px}.level-2,.level-3,.level-4,.level-5{position:relative}.level-2>a,.level-3>a,.level-4>a,.level-5>a{font-size:15px;font-weight:500;letter-spacing:0.4px;color:var(--color-gray-10);text-decoration:none;display:inline-block;margin-left:20px}.level-2>a:hover,.level-2>a:active,.level-3>a:hover,.level-3>a:active,.level-4>a:hover,.level-4>a:active,.level-5>a:hover,.level-5>a:active{font-weight:800;color:var(--color-green-07);text-decoration:none}.level-2 .expander-icon,.level-3 .expander-icon,.level-4 .expander-icon,.level-5 .expander-icon{position:absolute;left:-18px;top:2px}.level-3:before,.level-4:before,.level-5:before{position:absolute;content:\"\";width:2rem;height:1px;display:block;left:0;top:9px;background-color:var(--color-gray-02)}.level-3:before{width:2rem;left:-2.25rem}.level-4:before{width:2.75rem;left:-3rem}.level-5:before{width:3.5rem;left:-3.75rem}.search-box{display:flex;width:100%}.search-box input[type=text]{font-family:var(--ptc-font-latin);padding:8px 45px 8px 18px;font-size:1rem;font-weight:400;color:var(--color-gray-12);box-shadow:var(--ptc-shadow-x-small);border:solid 1px var(--color-gray-06);transition:border var(--ptc-transition-medium) var(--ptc-ease-out), box-shadow var(--ptc-transition-medium) var(--ptc-ease-out);background-color:var(--color-white);width:100%;margin-right:2rem}.search-box input[type=text]::-ms-clear{display:none}.search-box input[type=text]:focus{outline:none;box-shadow:var(--ptc-shadow-small);border:solid 1px var(--color-gray-12)}.search-box input[type=text]::placeholder{color:var(--color-gray-07)}";
9
9
 
10
- class CollapseListItem {
11
- }
12
- const PtcCollapseList = class {
13
- constructor(hostRef) {
14
- index.registerInstance(this, hostRef);
15
- this.itemSelected = index.createEvent(this, "itemSelected", 7);
16
- this.itemExpanded = index.createEvent(this, "itemExpanded", 7);
17
- this.textChanged = index.createEvent(this, "textChanged", 7);
18
- this.inputUpdated = index.createEvent(this, "inputUpdated", 7);
19
- this.ready = index.createEvent(this, "ready", 7);
20
- this.viewUpdated = index.createEvent(this, "viewUpdated", 7);
21
- this.changed = index.createEvent(this, "changed", 7);
22
- this.data = undefined;
23
- this.searchText = undefined;
24
- this.header = undefined;
25
- this.selectedValue = undefined;
26
- this.selectedItems = undefined;
27
- this.hashMap = undefined;
28
- this.debouncedUpdatedEvent = undefined;
29
- this.refreshBuffer = undefined;
30
- this.listItems = undefined;
31
- this.placeholderText = undefined;
32
- this.debounceUpdateDelay = undefined;
33
- }
34
- componentWillLoad() {
35
- this.loadListItems();
36
- this.selectedItems = [];
37
- }
38
- componentDidLoad() {
39
- this.ready.emit({
40
- sender: this.el,
41
- tree: this.data,
42
- search: this.searchText
43
- });
44
- let event = () => {
45
- this.changed.emit({
46
- sender: this.el,
47
- selectedValue: this.selectedValue,
48
- selectedItems: this.selectedItems,
49
- search: this.searchText
50
- });
51
- };
52
- this.debouncedUpdatedEvent = utils.debounce(event, this.debounceUpdateDelay, this);
53
- }
54
- componentDidUpdate() {
55
- this.viewUpdated.emit({
56
- sender: this.el,
57
- tree: this.data,
58
- search: this.searchText
59
- });
60
- }
61
- onItemSelectedHandler(event) {
62
- this.itemSelected.emit({
63
- event: event,
64
- sender: event ? event.target : this.el,
65
- selectedValue: this.selectedValue,
66
- selectedItems: this.selectedItems,
67
- tree: this.data
68
- });
69
- this.fireChangedEvent();
70
- }
71
- onInputUpdated(event) {
72
- let input = event.target;
73
- this.searchText = input.value;
74
- this.inputUpdated.emit({
75
- event: event,
76
- sender: input,
77
- selectedValue: this.selectedValue,
78
- selectedItems: this.selectedItems,
79
- tree: this.data,
80
- search: this.searchText
81
- });
82
- this.fireChangedEvent();
83
- }
84
- onItemExpandedHandler(event) {
85
- this.itemExpanded.emit({
86
- event: event,
87
- sender: event ? event.target : this.el,
88
- selectedValue: this.selectedValue,
89
- selectedItems: this.selectedItems,
90
- tree: this.data
91
- });
92
- }
93
- fireChangedEvent() {
94
- this.debouncedUpdatedEvent();
95
- }
96
- loadListItems() {
97
- this.hashMap = {};
98
- if (!this.data) {
99
- let dom = utils.MapDOM(this.el);
100
- if (dom.collapseListItem) {
101
- this.data = new Array();
102
- let buildChildren = (arr, outArr) => {
103
- arr.map((z) => {
104
- var newItem = new CollapseListItem();
105
- newItem.isExternalLink = z.linkHref ? true : false;
106
- if (z.linkHref) {
107
- newItem.href = z.linkHref;
108
- newItem.target = z.linkTarget;
109
- newItem.title = z.linkTitle;
110
- }
111
- else {
112
- newItem.id = utils.generateUUID();
113
- newItem.text = z.facetDisplay;
114
- newItem.name = z.facetName;
115
- newItem.value = z.facetValue;
116
- newItem.category = z.category;
117
- newItem.allowMultiSelect = z.allowMultiSelect != 'false';
118
- this.setUpCategory(newItem.category, newItem.allowMultiSelect);
119
- }
120
- if (z.collapseListItem) {
121
- newItem.children = new Array();
122
- buildChildren(z.collapseListItem, newItem.children);
123
- }
124
- this.hashMap[newItem.id] = newItem;
125
- outArr.push(newItem);
126
- });
127
- };
128
- this.setUpCategory('default', true);
129
- buildChildren(dom.collapseListItem, this.data);
130
- }
131
- }
132
- }
133
- setUpCategory(name, allowMultiSelect) {
134
- if (!this.selectedValue) {
135
- this.selectedValue = {};
136
- }
137
- if (name && !this.selectedValue[name]) {
138
- this.selectedValue[name] = {
139
- name: name,
140
- items: new Array(),
141
- allowMultiSelect: allowMultiSelect
142
- };
143
- }
144
- }
145
- collapseAllFirstLevelItems(exclude) {
146
- let items = this.el.shadowRoot.querySelectorAll('.level-1');
147
- items.forEach((z) => {
148
- if (z.classList.contains('expanded') && z != exclude) {
149
- z.classList.remove('expanded');
150
- }
151
- });
152
- }
153
- updateExpandedItems() {
154
- const redraw = (timestamp) => {
155
- if (!this.refreshBuffer) {
156
- this.refreshBuffer = timestamp;
157
- }
158
- const elapsed = timestamp - this.refreshBuffer;
159
- let items = this.el.shadowRoot.querySelectorAll('li');
160
- items.forEach((z) => {
161
- let ul = z.querySelector(':scope > ul');
162
- if (ul) {
163
- if (!z.classList.contains('expanded')) {
164
- ul.style.removeProperty('max-height');
165
- }
166
- else {
167
- ul.style.maxHeight = ul.scrollHeight + "px";
168
- }
169
- }
170
- });
171
- if (elapsed < 2500) {
172
- window.requestAnimationFrame(redraw);
173
- }
174
- else {
175
- this.refreshBuffer = undefined;
176
- }
177
- };
178
- if (!this.refreshBuffer) {
179
- window.requestAnimationFrame(redraw);
180
- }
181
- else {
182
- this.refreshBuffer = undefined;
183
- }
184
- }
185
- updateSelectedItemStatus(uuid) {
186
- var _a;
187
- let selectedItem = this.hashMap[uuid];
188
- if (selectedItem && selectedItem.value) {
189
- let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
190
- if (!this.selectedValue[categoryName]) {
191
- this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
192
- }
193
- let items = this.selectedValue[categoryName].items;
194
- if (items.indexOf(selectedItem.value) < 0) {
195
- if (this.selectedValue[categoryName].allowMultiSelect) {
196
- items.push(selectedItem.value);
197
- }
198
- else {
199
- this.selectedItems = this.selectedItems.filter((z) => { return z.value != items[0]; });
200
- items = [selectedItem.value];
201
- }
202
- this.selectedItems.push(selectedItem);
203
- }
204
- else {
205
- items = items.filter((z) => { return z != selectedItem.value; });
206
- this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
207
- }
208
- this.selectedValue[categoryName].items = items;
209
- }
210
- }
211
- unSelectItem(uuid) {
212
- var _a;
213
- let selectedItem = this.hashMap[uuid];
214
- if (selectedItem && selectedItem.value) {
215
- let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
216
- if (!this.selectedValue[categoryName]) {
217
- this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
218
- }
219
- let items = this.selectedValue[categoryName].items;
220
- if (items.indexOf(selectedItem.value) > -1) {
221
- items = items.filter((z) => { return z != selectedItem.value; });
222
- this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
223
- }
224
- this.selectedValue[categoryName].items = items;
225
- }
226
- }
227
- selectItem(uuid) {
228
- var _a;
229
- let selectedItem = this.hashMap[uuid];
230
- if (selectedItem && selectedItem.value) {
231
- let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
232
- if (!this.selectedValue[categoryName]) {
233
- this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
234
- }
235
- let items = this.selectedValue[categoryName].items;
236
- if (items.indexOf(selectedItem.value) < 0) {
237
- if (this.selectedValue[categoryName].allowMultiSelect) {
238
- items.push(selectedItem.value);
239
- }
240
- else {
241
- items = [selectedItem.value];
242
- }
243
- this.selectedItems.push(selectedItem);
244
- }
245
- this.selectedValue[categoryName].items = items;
246
- }
247
- }
248
- getItemByValue(value) {
249
- let result;
250
- if (this.hashMap) {
251
- for (const [_, v] of Object.entries(this.hashMap)) {
252
- let item = v;
253
- if (item.value == value) {
254
- result = item;
255
- break;
256
- }
257
- }
258
- }
259
- return result;
260
- }
261
- onItemLinkClick(event, uuid) {
262
- if (event) {
263
- event.preventDefault();
264
- }
265
- this.updateSelectedItemStatus(uuid);
266
- this.onItemSelectedHandler(event);
267
- }
268
- onExpandClick(event, collapseParents) {
269
- if (event) {
270
- event.preventDefault();
271
- let sender = event.currentTarget;
272
- let root = sender.closest('.level-1');
273
- let parent = sender.closest('li');
274
- if (collapseParents) {
275
- this.collapseAllFirstLevelItems(root);
276
- }
277
- if (parent) {
278
- parent.classList.toggle("expanded");
279
- }
280
- if (sender.classList.contains('expander-icon')) {
281
- let icon = parent.classList.contains('expanded') ? 'minus' : 'plus';
282
- sender.querySelector('icon-asset').setAttribute('name', icon);
283
- }
284
- this.updateExpandedItems();
285
- }
286
- this.onItemExpandedHandler(event);
287
- }
288
- render() {
289
- let renderLevel = (arr, level) => {
290
- let levelClass = `level-${level}`;
291
- return (index.h("ul", null, arr.map((z) => {
292
- let expandable = false;
293
- let selectable = false;
294
- let icon;
295
- if (level == 1) {
296
- if (z.children) {
297
- expandable = true;
298
- selectable = false;
299
- icon = (index.h("icon-asset", { type: "ptc", name: "chevron-down", color: "ptc-green", size: "medium" }));
300
- }
301
- else {
302
- expandable = false;
303
- selectable = true;
304
- icon = (index.h("icon-asset", { type: "ptc", name: "plus", color: "ptc-green", size: "medium" }));
305
- }
306
- }
307
- else if (level > 1) {
308
- selectable = true;
309
- if (z.children) {
310
- expandable = true;
311
- icon = (index.h("icon-asset", { type: "ptc", name: "plus", color: "gray", size: "xxx-small" }));
312
- }
313
- else {
314
- expandable = false;
315
- }
316
- }
317
- return (index.h("li", { class: levelClass }, getLink(z, icon, level, expandable, selectable), z.children ? renderLevel(z.children, level + 1) : ''));
318
- })));
319
- };
320
- let getLink = (item, icon, level, expandable, selectable) => {
321
- let clickEvent = (e) => {
322
- if (expandable) {
323
- this.onExpandClick(e, level == 1);
324
- }
325
- else {
326
- this.onItemLinkClick(e, item.id);
327
- }
328
- };
329
- if (item.isExternalLink) {
330
- return (index.h("a", { href: item.href, target: item.target, title: item.title }, icon, item.text));
331
- }
332
- else if ((!expandable && selectable) || (expandable && !selectable)) {
333
- return (index.h("a", { href: "#", title: item.text, onClick: clickEvent }, icon, item.text));
334
- }
335
- else {
336
- return [
337
- index.h("a", { class: "expander-icon", href: "#", onClick: (e) => { this.onExpandClick(e, false); } }, icon),
338
- index.h("a", { href: "#", title: item.text, onClick: (e) => { this.onItemLinkClick(e, item.id); } }, item.text)
339
- ];
340
- }
341
- };
342
- return (index.h(index.Host, null, index.h("div", { class: "container" }, index.h("ptc-title", { type: 'h2', "title-size": "medium", "title-weight": "w-6", "text-align": 'left', upperline: "no-upperline" }, this.header), index.h("div", { class: "search-box" }, index.h("input", { type: "text", placeholder: this.placeholderText, onKeyUp: (e) => { this.onInputUpdated(e); } })), renderLevel(this.data, 1))));
343
- }
344
- async removeSelectedItem(value) {
345
- let item = this.getItemByValue(value);
346
- this.unSelectItem(item.id);
347
- this.fireChangedEvent();
348
- }
349
- async addSelectedItem(value) {
350
- let item = this.getItemByValue(value);
351
- this.selectItem(item.id);
352
- }
353
- get el() { return index.getElement(this); }
354
- };
10
+ class CollapseListItem {
11
+ }
12
+ const PtcCollapseList = class {
13
+ constructor(hostRef) {
14
+ index.registerInstance(this, hostRef);
15
+ this.itemSelected = index.createEvent(this, "itemSelected", 7);
16
+ this.itemExpanded = index.createEvent(this, "itemExpanded", 7);
17
+ this.textChanged = index.createEvent(this, "textChanged", 7);
18
+ this.inputUpdated = index.createEvent(this, "inputUpdated", 7);
19
+ this.ready = index.createEvent(this, "ready", 7);
20
+ this.viewUpdated = index.createEvent(this, "viewUpdated", 7);
21
+ this.changed = index.createEvent(this, "changed", 7);
22
+ this.data = undefined;
23
+ this.searchText = undefined;
24
+ this.header = undefined;
25
+ this.selectedValue = undefined;
26
+ this.selectedItems = undefined;
27
+ this.hashMap = undefined;
28
+ this.debouncedUpdatedEvent = undefined;
29
+ this.refreshBuffer = undefined;
30
+ this.listItems = undefined;
31
+ this.placeholderText = undefined;
32
+ this.debounceUpdateDelay = undefined;
33
+ }
34
+ componentWillLoad() {
35
+ this.loadListItems();
36
+ this.selectedItems = [];
37
+ }
38
+ componentDidLoad() {
39
+ this.ready.emit({
40
+ sender: this.el,
41
+ tree: this.data,
42
+ search: this.searchText
43
+ });
44
+ let event = () => {
45
+ this.changed.emit({
46
+ sender: this.el,
47
+ selectedValue: this.selectedValue,
48
+ selectedItems: this.selectedItems,
49
+ search: this.searchText
50
+ });
51
+ };
52
+ this.debouncedUpdatedEvent = utils.debounce(event, this.debounceUpdateDelay, this);
53
+ }
54
+ componentDidUpdate() {
55
+ this.viewUpdated.emit({
56
+ sender: this.el,
57
+ tree: this.data,
58
+ search: this.searchText
59
+ });
60
+ }
61
+ onItemSelectedHandler(event) {
62
+ this.itemSelected.emit({
63
+ event: event,
64
+ sender: event ? event.target : this.el,
65
+ selectedValue: this.selectedValue,
66
+ selectedItems: this.selectedItems,
67
+ tree: this.data
68
+ });
69
+ this.fireChangedEvent();
70
+ }
71
+ onInputUpdated(event) {
72
+ let input = event.target;
73
+ this.searchText = input.value;
74
+ this.inputUpdated.emit({
75
+ event: event,
76
+ sender: input,
77
+ selectedValue: this.selectedValue,
78
+ selectedItems: this.selectedItems,
79
+ tree: this.data,
80
+ search: this.searchText
81
+ });
82
+ this.fireChangedEvent();
83
+ }
84
+ onItemExpandedHandler(event) {
85
+ this.itemExpanded.emit({
86
+ event: event,
87
+ sender: event ? event.target : this.el,
88
+ selectedValue: this.selectedValue,
89
+ selectedItems: this.selectedItems,
90
+ tree: this.data
91
+ });
92
+ }
93
+ fireChangedEvent() {
94
+ this.debouncedUpdatedEvent();
95
+ }
96
+ loadListItems() {
97
+ this.hashMap = {};
98
+ if (!this.data) {
99
+ let dom = utils.MapDOM(this.el);
100
+ if (dom.collapseListItem) {
101
+ this.data = new Array();
102
+ let buildChildren = (arr, outArr) => {
103
+ arr.map((z) => {
104
+ var newItem = new CollapseListItem();
105
+ newItem.isExternalLink = z.linkHref ? true : false;
106
+ if (z.linkHref) {
107
+ newItem.href = z.linkHref;
108
+ newItem.target = z.linkTarget;
109
+ newItem.title = z.linkTitle;
110
+ }
111
+ else {
112
+ newItem.id = utils.generateUUID();
113
+ newItem.text = z.facetDisplay;
114
+ newItem.name = z.facetName;
115
+ newItem.value = z.facetValue;
116
+ newItem.category = z.category;
117
+ newItem.allowMultiSelect = z.allowMultiSelect != 'false';
118
+ this.setUpCategory(newItem.category, newItem.allowMultiSelect);
119
+ }
120
+ if (z.collapseListItem) {
121
+ newItem.children = new Array();
122
+ buildChildren(z.collapseListItem, newItem.children);
123
+ }
124
+ this.hashMap[newItem.id] = newItem;
125
+ outArr.push(newItem);
126
+ });
127
+ };
128
+ this.setUpCategory('default', true);
129
+ buildChildren(dom.collapseListItem, this.data);
130
+ }
131
+ }
132
+ }
133
+ setUpCategory(name, allowMultiSelect) {
134
+ if (!this.selectedValue) {
135
+ this.selectedValue = {};
136
+ }
137
+ if (name && !this.selectedValue[name]) {
138
+ this.selectedValue[name] = {
139
+ name: name,
140
+ items: new Array(),
141
+ allowMultiSelect: allowMultiSelect
142
+ };
143
+ }
144
+ }
145
+ collapseAllFirstLevelItems(exclude) {
146
+ let items = this.el.shadowRoot.querySelectorAll('.level-1');
147
+ items.forEach((z) => {
148
+ if (z.classList.contains('expanded') && z != exclude) {
149
+ z.classList.remove('expanded');
150
+ }
151
+ });
152
+ }
153
+ updateExpandedItems() {
154
+ const redraw = (timestamp) => {
155
+ if (!this.refreshBuffer) {
156
+ this.refreshBuffer = timestamp;
157
+ }
158
+ const elapsed = timestamp - this.refreshBuffer;
159
+ let items = this.el.shadowRoot.querySelectorAll('li');
160
+ items.forEach((z) => {
161
+ let ul = z.querySelector(':scope > ul');
162
+ if (ul) {
163
+ if (!z.classList.contains('expanded')) {
164
+ ul.style.removeProperty('max-height');
165
+ }
166
+ else {
167
+ ul.style.maxHeight = ul.scrollHeight + "px";
168
+ }
169
+ }
170
+ });
171
+ if (elapsed < 2500) {
172
+ window.requestAnimationFrame(redraw);
173
+ }
174
+ else {
175
+ this.refreshBuffer = undefined;
176
+ }
177
+ };
178
+ if (!this.refreshBuffer) {
179
+ window.requestAnimationFrame(redraw);
180
+ }
181
+ else {
182
+ this.refreshBuffer = undefined;
183
+ }
184
+ }
185
+ updateSelectedItemStatus(uuid) {
186
+ var _a;
187
+ let selectedItem = this.hashMap[uuid];
188
+ if (selectedItem && selectedItem.value) {
189
+ let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
190
+ if (!this.selectedValue[categoryName]) {
191
+ this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
192
+ }
193
+ let items = this.selectedValue[categoryName].items;
194
+ if (items.indexOf(selectedItem.value) < 0) {
195
+ if (this.selectedValue[categoryName].allowMultiSelect) {
196
+ items.push(selectedItem.value);
197
+ }
198
+ else {
199
+ this.selectedItems = this.selectedItems.filter((z) => { return z.value != items[0]; });
200
+ items = [selectedItem.value];
201
+ }
202
+ this.selectedItems.push(selectedItem);
203
+ }
204
+ else {
205
+ items = items.filter((z) => { return z != selectedItem.value; });
206
+ this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
207
+ }
208
+ this.selectedValue[categoryName].items = items;
209
+ }
210
+ }
211
+ unSelectItem(uuid) {
212
+ var _a;
213
+ let selectedItem = this.hashMap[uuid];
214
+ if (selectedItem && selectedItem.value) {
215
+ let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
216
+ if (!this.selectedValue[categoryName]) {
217
+ this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
218
+ }
219
+ let items = this.selectedValue[categoryName].items;
220
+ if (items.indexOf(selectedItem.value) > -1) {
221
+ items = items.filter((z) => { return z != selectedItem.value; });
222
+ this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
223
+ }
224
+ this.selectedValue[categoryName].items = items;
225
+ }
226
+ }
227
+ selectItem(uuid) {
228
+ var _a;
229
+ let selectedItem = this.hashMap[uuid];
230
+ if (selectedItem && selectedItem.value) {
231
+ let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
232
+ if (!this.selectedValue[categoryName]) {
233
+ this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
234
+ }
235
+ let items = this.selectedValue[categoryName].items;
236
+ if (items.indexOf(selectedItem.value) < 0) {
237
+ if (this.selectedValue[categoryName].allowMultiSelect) {
238
+ items.push(selectedItem.value);
239
+ }
240
+ else {
241
+ items = [selectedItem.value];
242
+ }
243
+ this.selectedItems.push(selectedItem);
244
+ }
245
+ this.selectedValue[categoryName].items = items;
246
+ }
247
+ }
248
+ getItemByValue(value) {
249
+ let result;
250
+ if (this.hashMap) {
251
+ for (const [_, v] of Object.entries(this.hashMap)) {
252
+ let item = v;
253
+ if (item.value == value) {
254
+ result = item;
255
+ break;
256
+ }
257
+ }
258
+ }
259
+ return result;
260
+ }
261
+ onItemLinkClick(event, uuid) {
262
+ if (event) {
263
+ event.preventDefault();
264
+ }
265
+ this.updateSelectedItemStatus(uuid);
266
+ this.onItemSelectedHandler(event);
267
+ }
268
+ onExpandClick(event, collapseParents) {
269
+ if (event) {
270
+ event.preventDefault();
271
+ let sender = event.currentTarget;
272
+ let root = sender.closest('.level-1');
273
+ let parent = sender.closest('li');
274
+ if (collapseParents) {
275
+ this.collapseAllFirstLevelItems(root);
276
+ }
277
+ if (parent) {
278
+ parent.classList.toggle("expanded");
279
+ }
280
+ if (sender.classList.contains('expander-icon')) {
281
+ let icon = parent.classList.contains('expanded') ? 'minus' : 'plus';
282
+ sender.querySelector('icon-asset').setAttribute('name', icon);
283
+ }
284
+ this.updateExpandedItems();
285
+ }
286
+ this.onItemExpandedHandler(event);
287
+ }
288
+ render() {
289
+ let renderLevel = (arr, level) => {
290
+ let levelClass = `level-${level}`;
291
+ return (index.h("ul", null, arr.map((z) => {
292
+ let expandable = false;
293
+ let selectable = false;
294
+ let icon;
295
+ if (level == 1) {
296
+ if (z.children) {
297
+ expandable = true;
298
+ selectable = false;
299
+ icon = (index.h("icon-asset", { type: "ptc", name: "chevron-down", color: "ptc-green", size: "medium" }));
300
+ }
301
+ else {
302
+ expandable = false;
303
+ selectable = true;
304
+ icon = (index.h("icon-asset", { type: "ptc", name: "plus", color: "ptc-green", size: "medium" }));
305
+ }
306
+ }
307
+ else if (level > 1) {
308
+ selectable = true;
309
+ if (z.children) {
310
+ expandable = true;
311
+ icon = (index.h("icon-asset", { type: "ptc", name: "plus", color: "gray", size: "xxx-small" }));
312
+ }
313
+ else {
314
+ expandable = false;
315
+ }
316
+ }
317
+ return (index.h("li", { class: levelClass }, getLink(z, icon, level, expandable, selectable), z.children ? renderLevel(z.children, level + 1) : ''));
318
+ })));
319
+ };
320
+ let getLink = (item, icon, level, expandable, selectable) => {
321
+ let clickEvent = (e) => {
322
+ if (expandable) {
323
+ this.onExpandClick(e, level == 1);
324
+ }
325
+ else {
326
+ this.onItemLinkClick(e, item.id);
327
+ }
328
+ };
329
+ if (item.isExternalLink) {
330
+ return (index.h("a", { href: item.href, target: item.target, title: item.title }, icon, item.text));
331
+ }
332
+ else if ((!expandable && selectable) || (expandable && !selectable)) {
333
+ return (index.h("a", { href: "#", title: item.text, onClick: clickEvent }, icon, item.text));
334
+ }
335
+ else {
336
+ return [
337
+ index.h("a", { class: "expander-icon", href: "#", onClick: (e) => { this.onExpandClick(e, false); } }, icon),
338
+ index.h("a", { href: "#", title: item.text, onClick: (e) => { this.onItemLinkClick(e, item.id); } }, item.text)
339
+ ];
340
+ }
341
+ };
342
+ return (index.h(index.Host, null, index.h("div", { class: "container" }, index.h("ptc-title", { type: 'h2', "title-size": "medium", "title-weight": "w-6", "text-align": 'left', upperline: "no-upperline" }, this.header), index.h("div", { class: "search-box" }, index.h("input", { type: "text", placeholder: this.placeholderText, onKeyUp: (e) => { this.onInputUpdated(e); } })), renderLevel(this.data, 1))));
343
+ }
344
+ async removeSelectedItem(value) {
345
+ let item = this.getItemByValue(value);
346
+ this.unSelectItem(item.id);
347
+ this.fireChangedEvent();
348
+ }
349
+ async addSelectedItem(value) {
350
+ let item = this.getItemByValue(value);
351
+ this.selectItem(item.id);
352
+ }
353
+ get el() { return index.getElement(this); }
354
+ };
355
355
  PtcCollapseList.style = ptcCollapseListCss;
356
356
 
357
357
  exports.ptc_collapse_list = PtcCollapseList;