@ptcwebops/ptcw-design 1.7.2 → 1.7.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 (514) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/bundle-example.cjs.entry.js +31 -31
  3. package/dist/cjs/bundle-jumbotron-example.cjs.entry.js +40 -40
  4. package/dist/cjs/{core-3eeb2cf1.js → core-5a811549.js} +29 -91
  5. package/dist/cjs/dropdown-item.cjs.entry.js +11 -11
  6. package/dist/cjs/dynamic-box-bundle.cjs.entry.js +26 -26
  7. package/dist/cjs/icon-asset_5.cjs.entry.js +188 -188
  8. package/dist/cjs/{index-266d5edd.js → index-88135a6b.js} +1 -72
  9. package/dist/cjs/innovator-toggle-container.cjs.entry.js +22 -22
  10. package/dist/cjs/{interfaces-0ecd8027.js → interfaces-574e6df7.js} +9 -9
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/lottie-player.cjs.entry.js +2826 -3073
  13. package/dist/cjs/max-width-container_3.cjs.entry.js +217 -217
  14. package/dist/cjs/my-component.cjs.entry.js +16 -16
  15. package/dist/cjs/ptc-accordion-item.cjs.entry.js +84 -84
  16. package/dist/cjs/ptc-accordion.cjs.entry.js +36 -36
  17. package/dist/cjs/ptc-announcement.cjs.entry.js +51 -51
  18. package/dist/cjs/ptc-back-to-top.cjs.entry.js +36 -36
  19. package/dist/cjs/ptc-bio-card.cjs.entry.js +25 -25
  20. package/dist/cjs/ptc-card-bottom_3.cjs.entry.js +123 -123
  21. package/dist/cjs/ptc-card-content.cjs.entry.js +58 -58
  22. package/dist/cjs/ptc-card.cjs.entry.js +67 -67
  23. package/dist/cjs/ptc-case-studies-slider.cjs.entry.js +87 -114
  24. package/dist/cjs/ptc-checkbox.cjs.entry.js +51 -51
  25. package/dist/cjs/ptc-collapse-list.cjs.entry.js +354 -354
  26. package/dist/cjs/ptc-container.cjs.entry.js +34 -34
  27. package/dist/cjs/ptc-date.cjs.entry.js +51 -51
  28. package/dist/cjs/ptc-dropdown.cjs.entry.js +65 -65
  29. package/dist/cjs/ptc-dynamic-card.cjs.entry.js +48 -48
  30. package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +48 -48
  31. package/dist/cjs/ptc-filter-tag.cjs.entry.js +58 -58
  32. package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +12 -12
  33. package/dist/cjs/ptc-hero.cjs.entry.js +19 -19
  34. package/dist/cjs/ptc-icon-list.cjs.entry.js +22 -22
  35. package/dist/cjs/ptc-icon-minimize.cjs.entry.js +44 -44
  36. package/dist/cjs/ptc-image-download-strip.cjs.entry.js +19 -19
  37. package/dist/cjs/ptc-jumbotron.cjs.entry.js +110 -110
  38. package/dist/cjs/ptc-link.cjs.entry.js +34 -34
  39. package/dist/cjs/ptc-list.cjs.entry.js +50 -50
  40. package/dist/cjs/ptc-lottie.cjs.entry.js +11 -11
  41. package/dist/cjs/ptc-media-card.cjs.entry.js +59 -59
  42. package/dist/cjs/ptc-minimized-footer.cjs.entry.js +9 -9
  43. package/dist/cjs/ptc-minimized-header.cjs.entry.js +12 -12
  44. package/dist/cjs/ptc-mobile-select.cjs.entry.js +139 -157
  45. package/dist/cjs/ptc-modal.cjs.entry.js +151 -151
  46. package/dist/cjs/ptc-nav-card.cjs.entry.js +37 -37
  47. package/dist/cjs/ptc-nav-link.cjs.entry.js +37 -37
  48. package/dist/cjs/ptc-nav-slider.cjs.entry.js +84 -84
  49. package/dist/cjs/ptc-nav-submenu.cjs.entry.js +19 -19
  50. package/dist/cjs/ptc-news.cjs.entry.js +18 -18
  51. package/dist/cjs/ptc-overlay.cjs.entry.js +24 -24
  52. package/dist/cjs/ptc-pagenation.cjs.entry.js +307 -307
  53. package/dist/cjs/ptc-para_2.cjs.entry.js +79 -79
  54. package/dist/cjs/ptc-picture.cjs.entry.js +144 -144
  55. package/dist/cjs/ptc-previous-url.cjs.entry.js +12 -12
  56. package/dist/cjs/ptc-pricing-block.cjs.entry.js +21 -21
  57. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +125 -125
  58. package/dist/cjs/ptc-product-card.cjs.entry.js +23 -23
  59. package/dist/cjs/ptc-product-category.cjs.entry.js +11 -11
  60. package/dist/cjs/ptc-product-dropdown.cjs.entry.js +70 -70
  61. package/dist/cjs/ptc-product-highlight-card.cjs.entry.js +13 -13
  62. package/dist/cjs/ptc-product-list.cjs.entry.js +141 -141
  63. package/dist/cjs/ptc-product-sidebar.cjs.entry.js +131 -130
  64. package/dist/cjs/ptc-progress-bar_2.cjs.entry.js +86 -86
  65. package/dist/cjs/ptc-quote.cjs.entry.js +24 -24
  66. package/dist/cjs/ptc-readmore.cjs.entry.js +74 -74
  67. package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +55 -55
  68. package/dist/cjs/ptc-search-field.cjs.entry.js +73 -73
  69. package/dist/cjs/ptc-shopping-cart.cjs.entry.js +51 -51
  70. package/dist/cjs/ptc-slit-card.cjs.entry.js +26 -26
  71. package/dist/cjs/ptc-span.cjs.entry.js +21 -21
  72. package/dist/cjs/ptc-sticky-icons.cjs.entry.js +33 -33
  73. package/dist/cjs/ptc-sticky-section.cjs.entry.js +28 -28
  74. package/dist/cjs/ptc-sticky-title.cjs.entry.js +25 -25
  75. package/dist/cjs/ptc-subnav-card.cjs.entry.js +16 -16
  76. package/dist/cjs/ptc-subnav.cjs.entry.js +22 -22
  77. package/dist/cjs/ptc-svg-btn.cjs.entry.js +96 -96
  78. package/dist/cjs/ptc-tab-list.cjs.entry.js +143 -143
  79. package/dist/cjs/ptc-tab.cjs.entry.js +21 -21
  80. package/dist/cjs/ptc-tabs.cjs.entry.js +48 -48
  81. package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +43 -43
  82. package/dist/cjs/ptc-tooltip.cjs.entry.js +96 -96
  83. package/dist/cjs/ptc-two-column-media.cjs.entry.js +16 -16
  84. package/dist/cjs/ptcw-design.cjs.js +2 -2
  85. package/dist/cjs/sequential-bundle-example.cjs.entry.js +110 -110
  86. package/dist/cjs/sequential-bundle.cjs.entry.js +90 -90
  87. package/dist/cjs/tab-content.cjs.entry.js +28 -28
  88. package/dist/cjs/tab-header.cjs.entry.js +65 -65
  89. package/dist/cjs/{utils-416c94fe.js → utils-9eb22041.js} +90 -90
  90. package/dist/collection/collection-manifest.json +1 -1
  91. package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
  92. package/dist/collection/components/dynamic-box-bundle/dynamic-box-bundle.js +114 -114
  93. package/dist/collection/components/icon-asset/icon-asset.css +4 -4
  94. package/dist/collection/components/icon-asset/icon-asset.js +199 -199
  95. package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
  96. package/dist/collection/components/icon-asset/media/designer.svg +464 -464
  97. package/dist/collection/components/icon-asset/media/regular.svg +463 -463
  98. package/dist/collection/components/icon-asset/media/solid.svg +3013 -3013
  99. package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
  100. package/dist/collection/components/innovator-toggle-container/innovator-toggle-container.js +89 -89
  101. package/dist/collection/components/list-item/list-item.js +144 -144
  102. package/dist/collection/components/max-width-container/max-width-container.css +11 -11
  103. package/dist/collection/components/max-width-container/max-width-container.js +123 -123
  104. package/dist/collection/components/my-component/my-component.css +3 -3
  105. package/dist/collection/components/my-component/my-component.js +82 -82
  106. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.css +25 -25
  107. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.js +58 -58
  108. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.css +3 -3
  109. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.js +91 -91
  110. package/dist/collection/components/organism-bundles/sequential-bundle/sequential-bundle.js +116 -116
  111. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.css +91 -91
  112. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.js +160 -160
  113. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +287 -287
  114. package/dist/collection/components/ptc-accordion/ptc-accordion.js +78 -78
  115. package/dist/collection/components/ptc-announcement/ptc-announcement.js +237 -237
  116. package/dist/collection/components/ptc-back-to-top/ptc-back-to-top.js +61 -61
  117. package/dist/collection/components/ptc-background-video/ptc-background-video.js +200 -200
  118. package/dist/collection/components/ptc-bio-card/ptc-bio-card.js +130 -130
  119. package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +105 -105
  120. package/dist/collection/components/ptc-button/ptc-button.js +302 -302
  121. package/dist/collection/components/ptc-card/ptc-card.js +362 -362
  122. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
  123. package/dist/collection/components/ptc-card-content/ptc-card-content.js +212 -212
  124. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +214 -214
  125. package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.css +2 -2
  126. package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.js +91 -91
  127. package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +152 -152
  128. package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +593 -593
  129. package/dist/collection/components/ptc-container/ptc-container.js +138 -138
  130. package/dist/collection/components/ptc-date/ptc-date.js +224 -224
  131. package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
  132. package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
  133. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +174 -174
  134. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.css +25 -4
  135. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +137 -137
  136. package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
  137. package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
  138. package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
  139. package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
  140. package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +119 -119
  141. package/dist/collection/components/ptc-image-download-strip/ptc-image-download-strip.js +51 -51
  142. package/dist/collection/components/ptc-img/ptc-img.js +311 -311
  143. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +334 -334
  144. package/dist/collection/components/ptc-link/ptc-link.js +207 -207
  145. package/dist/collection/components/ptc-list/ptc-list.js +99 -99
  146. package/dist/collection/components/ptc-lottie/ptc-lottie.css +5 -5
  147. package/dist/collection/components/ptc-lottie/ptc-lottie.js +62 -62
  148. package/dist/collection/components/ptc-media-card/ptc-media-card.js +240 -240
  149. package/dist/collection/components/ptc-minimized-footer/ptc-minimized-footer.js +18 -18
  150. package/dist/collection/components/ptc-minimized-header/ptc-minimized-header.js +81 -81
  151. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.css +2 -7
  152. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +190 -190
  153. package/dist/collection/components/ptc-modal/ptc-modal.js +407 -407
  154. package/dist/collection/components/ptc-nav-card/ptc-nav-card.js +224 -224
  155. package/dist/collection/components/ptc-news/ptc-news.js +169 -169
  156. package/dist/collection/components/ptc-overlay/ptc-overlay.js +131 -131
  157. package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +573 -573
  158. package/dist/collection/components/ptc-para/ptc-para.js +242 -242
  159. package/dist/collection/components/ptc-picture/ptc-picture.js +473 -473
  160. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +78 -78
  161. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +70 -70
  162. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +272 -272
  163. package/dist/collection/components/ptc-product-card/ptc-product-card.js +162 -162
  164. package/dist/collection/components/ptc-product-category/ptc-product-category.js +60 -60
  165. package/dist/collection/components/ptc-product-dropdown/ptc-product-dropdown.js +185 -185
  166. package/dist/collection/components/ptc-product-highlight-card/ptc-product-highlight-card.js +96 -96
  167. package/dist/collection/components/ptc-product-list/ptc-product-list.js +194 -194
  168. package/dist/collection/components/ptc-product-sidebar/ptc-product-sidebar.js +254 -253
  169. package/dist/collection/components/ptc-progress-bar/ptc-progress-bar.js +42 -42
  170. package/dist/collection/components/ptc-quote/ptc-quote.js +144 -144
  171. package/dist/collection/components/ptc-readmore/ptc-readmore.js +298 -298
  172. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
  173. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
  174. package/dist/collection/components/ptc-search-field/ptc-search-field.css +5 -0
  175. package/dist/collection/components/ptc-search-field/ptc-search-field.js +247 -247
  176. package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
  177. package/dist/collection/components/ptc-skeleton/ptc-skeleton.js +139 -139
  178. package/dist/collection/components/ptc-slit-card/ptc-slit-card.js +181 -181
  179. package/dist/collection/components/ptc-social-share/ptc-social-share.js +267 -267
  180. package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -332
  181. package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -97
  182. package/dist/collection/components/ptc-span/ptc-span.js +107 -107
  183. package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
  184. package/dist/collection/components/ptc-sticky-section/ptc-sticky-section.js +46 -46
  185. package/dist/collection/components/ptc-sticky-title/ptc-sticky-title.css +5 -1
  186. package/dist/collection/components/ptc-sticky-title/ptc-sticky-title.js +89 -89
  187. package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +109 -109
  188. package/dist/collection/components/ptc-tab-list/ptc-tab-list.css +3 -2
  189. package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +195 -195
  190. package/dist/collection/components/ptc-tabs/ptc-tab.js +121 -121
  191. package/dist/collection/components/ptc-tabs/ptc-tabs.js +104 -104
  192. package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +181 -181
  193. package/dist/collection/components/ptc-title/ptc-title.js +310 -310
  194. package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +342 -342
  195. package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
  196. package/dist/collection/components/subnav/ptc-nav-link/ptc-nav-link.js +114 -114
  197. package/dist/collection/components/subnav/ptc-nav-slider/ptc-nav-slider.js +126 -126
  198. package/dist/collection/components/subnav/ptc-nav-submenu/ptc-nav-submenu.js +85 -85
  199. package/dist/collection/components/subnav/ptc-subnav/ptc-subnav.js +47 -47
  200. package/dist/collection/components/subnav/ptc-subnav-card/ptc-subnav-card.js +133 -133
  201. package/dist/collection/components/tab-content/tab-content.js +84 -84
  202. package/dist/collection/components/tab-header/tab-header.js +182 -182
  203. package/dist/collection/index.js +1 -1
  204. package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
  205. package/dist/collection/media/svg-imgs/close.svg +10 -10
  206. package/dist/collection/media/svg-imgs/play-button-dark.svg +20 -20
  207. package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
  208. package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
  209. package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
  210. package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
  211. package/dist/collection/media/svg-imgs/union.svg +3 -3
  212. package/dist/collection/stories/Button.stories.js +43 -43
  213. package/dist/collection/stories/MaxWidthContainer.stories.js +32 -32
  214. package/dist/collection/stories/ReadMore.stories.js +100 -100
  215. package/dist/collection/stories/Title.stories.js +115 -115
  216. package/dist/collection/stories/Tooltip.stories.js +112 -112
  217. package/dist/collection/utils/component.js +3 -3
  218. package/dist/collection/utils/interfaces.js +11 -11
  219. package/dist/collection/utils/utils.js +92 -92
  220. package/dist/custom-elements/index.js +8170 -8523
  221. package/dist/esm/bundle-example.entry.js +31 -31
  222. package/dist/esm/bundle-jumbotron-example.entry.js +40 -40
  223. package/dist/esm/{core-4a7dabca.js → core-2af05469.js} +29 -91
  224. package/dist/esm/dropdown-item.entry.js +11 -11
  225. package/dist/esm/dynamic-box-bundle.entry.js +26 -26
  226. package/dist/esm/icon-asset_5.entry.js +188 -188
  227. package/dist/esm/{index-521c9253.js → index-8e63c32d.js} +1 -72
  228. package/dist/esm/innovator-toggle-container.entry.js +22 -22
  229. package/dist/esm/{interfaces-3cb94654.js → interfaces-4caedd26.js} +9 -9
  230. package/dist/esm/loader.js +3 -3
  231. package/dist/esm/lottie-player.entry.js +2826 -3073
  232. package/dist/esm/max-width-container_3.entry.js +217 -217
  233. package/dist/esm/my-component.entry.js +16 -16
  234. package/dist/esm/polyfills/core-js.js +0 -0
  235. package/dist/esm/polyfills/dom.js +0 -0
  236. package/dist/esm/polyfills/es5-html-element.js +0 -0
  237. package/dist/esm/polyfills/index.js +0 -0
  238. package/dist/esm/polyfills/system.js +0 -0
  239. package/dist/esm/ptc-accordion-item.entry.js +84 -84
  240. package/dist/esm/ptc-accordion.entry.js +36 -36
  241. package/dist/esm/ptc-announcement.entry.js +51 -51
  242. package/dist/esm/ptc-back-to-top.entry.js +36 -36
  243. package/dist/esm/ptc-bio-card.entry.js +25 -25
  244. package/dist/esm/ptc-card-bottom_3.entry.js +123 -123
  245. package/dist/esm/ptc-card-content.entry.js +58 -58
  246. package/dist/esm/ptc-card.entry.js +67 -67
  247. package/dist/esm/ptc-case-studies-slider.entry.js +87 -114
  248. package/dist/esm/ptc-checkbox.entry.js +51 -51
  249. package/dist/esm/ptc-collapse-list.entry.js +354 -354
  250. package/dist/esm/ptc-container.entry.js +34 -34
  251. package/dist/esm/ptc-date.entry.js +51 -51
  252. package/dist/esm/ptc-dropdown.entry.js +65 -65
  253. package/dist/esm/ptc-dynamic-card.entry.js +48 -48
  254. package/dist/esm/ptc-ellipsis-dropdown.entry.js +48 -48
  255. package/dist/esm/ptc-filter-tag.entry.js +58 -58
  256. package/dist/esm/ptc-hero-footer-cta.entry.js +12 -12
  257. package/dist/esm/ptc-hero.entry.js +19 -19
  258. package/dist/esm/ptc-icon-list.entry.js +22 -22
  259. package/dist/esm/ptc-icon-minimize.entry.js +44 -44
  260. package/dist/esm/ptc-image-download-strip.entry.js +19 -19
  261. package/dist/esm/ptc-jumbotron.entry.js +110 -110
  262. package/dist/esm/ptc-link.entry.js +34 -34
  263. package/dist/esm/ptc-list.entry.js +50 -50
  264. package/dist/esm/ptc-lottie.entry.js +11 -11
  265. package/dist/esm/ptc-media-card.entry.js +59 -59
  266. package/dist/esm/ptc-minimized-footer.entry.js +9 -9
  267. package/dist/esm/ptc-minimized-header.entry.js +12 -12
  268. package/dist/esm/ptc-mobile-select.entry.js +139 -157
  269. package/dist/esm/ptc-modal.entry.js +151 -151
  270. package/dist/esm/ptc-nav-card.entry.js +37 -37
  271. package/dist/esm/ptc-nav-link.entry.js +37 -37
  272. package/dist/esm/ptc-nav-slider.entry.js +84 -84
  273. package/dist/esm/ptc-nav-submenu.entry.js +19 -19
  274. package/dist/esm/ptc-news.entry.js +18 -18
  275. package/dist/esm/ptc-overlay.entry.js +24 -24
  276. package/dist/esm/ptc-pagenation.entry.js +307 -307
  277. package/dist/esm/ptc-para_2.entry.js +79 -79
  278. package/dist/esm/ptc-picture.entry.js +144 -144
  279. package/dist/esm/ptc-previous-url.entry.js +12 -12
  280. package/dist/esm/ptc-pricing-block.entry.js +21 -21
  281. package/dist/esm/ptc-pricing-tabs.entry.js +125 -125
  282. package/dist/esm/ptc-product-card.entry.js +23 -23
  283. package/dist/esm/ptc-product-category.entry.js +11 -11
  284. package/dist/esm/ptc-product-dropdown.entry.js +70 -70
  285. package/dist/esm/ptc-product-highlight-card.entry.js +13 -13
  286. package/dist/esm/ptc-product-list.entry.js +141 -141
  287. package/dist/esm/ptc-product-sidebar.entry.js +131 -130
  288. package/dist/esm/ptc-progress-bar_2.entry.js +86 -86
  289. package/dist/esm/ptc-quote.entry.js +24 -24
  290. package/dist/esm/ptc-readmore.entry.js +74 -74
  291. package/dist/esm/ptc-responsive-wrapper.entry.js +55 -55
  292. package/dist/esm/ptc-search-field.entry.js +73 -73
  293. package/dist/esm/ptc-shopping-cart.entry.js +51 -51
  294. package/dist/esm/ptc-slit-card.entry.js +26 -26
  295. package/dist/esm/ptc-span.entry.js +21 -21
  296. package/dist/esm/ptc-sticky-icons.entry.js +33 -33
  297. package/dist/esm/ptc-sticky-section.entry.js +28 -28
  298. package/dist/esm/ptc-sticky-title.entry.js +25 -25
  299. package/dist/esm/ptc-subnav-card.entry.js +16 -16
  300. package/dist/esm/ptc-subnav.entry.js +22 -22
  301. package/dist/esm/ptc-svg-btn.entry.js +96 -96
  302. package/dist/esm/ptc-tab-list.entry.js +143 -143
  303. package/dist/esm/ptc-tab.entry.js +21 -21
  304. package/dist/esm/ptc-tabs.entry.js +48 -48
  305. package/dist/esm/ptc-text-copy-with-background.entry.js +43 -43
  306. package/dist/esm/ptc-tooltip.entry.js +96 -96
  307. package/dist/esm/ptc-two-column-media.entry.js +16 -16
  308. package/dist/esm/ptcw-design.js +3 -3
  309. package/dist/esm/sequential-bundle-example.entry.js +110 -110
  310. package/dist/esm/sequential-bundle.entry.js +90 -90
  311. package/dist/esm/tab-content.entry.js +28 -28
  312. package/dist/esm/tab-header.entry.js +65 -65
  313. package/dist/esm/{utils-f937097d.js → utils-38decc43.js} +90 -90
  314. package/dist/ptcw-design/media/brands.svg +1381 -1381
  315. package/dist/ptcw-design/media/designer.svg +464 -464
  316. package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
  317. package/dist/ptcw-design/media/regular.svg +463 -463
  318. package/dist/ptcw-design/media/solid.svg +3013 -3013
  319. package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
  320. package/dist/ptcw-design/{p-63dd30ad.entry.js → p-00c9ae79.entry.js} +1 -1
  321. package/dist/ptcw-design/{p-09d3a524.entry.js → p-116679f9.entry.js} +1 -1
  322. package/dist/ptcw-design/{p-1f1dca1b.entry.js → p-1199de26.entry.js} +1 -1
  323. package/dist/ptcw-design/{p-2af2c990.entry.js → p-12780f09.entry.js} +1 -1
  324. package/dist/ptcw-design/{p-142cdd0c.entry.js → p-15af7aee.entry.js} +1 -1
  325. package/dist/ptcw-design/{p-2f56293b.entry.js → p-1cea4b9e.entry.js} +1 -1
  326. package/dist/ptcw-design/{p-f77048a0.entry.js → p-2181c8c7.entry.js} +1 -1
  327. package/dist/ptcw-design/{p-dbc3591d.entry.js → p-2318d652.entry.js} +1 -1
  328. package/dist/ptcw-design/{p-50ec5021.entry.js → p-250b3ea1.entry.js} +1 -1
  329. package/dist/ptcw-design/{p-6107436a.entry.js → p-26880c78.entry.js} +1 -1
  330. package/dist/ptcw-design/{p-c758ea47.entry.js → p-2bcb85cb.entry.js} +1 -1
  331. package/dist/ptcw-design/{p-e35c26f9.entry.js → p-341a4c39.entry.js} +1 -1
  332. package/dist/ptcw-design/{p-356a8a49.entry.js → p-366528df.entry.js} +1 -1
  333. package/dist/ptcw-design/{p-9e710bd9.entry.js → p-3bb54c51.entry.js} +1 -1
  334. package/dist/ptcw-design/{p-90f5ddf3.entry.js → p-3cf1f951.entry.js} +1 -1
  335. package/dist/ptcw-design/{p-3f5ad479.entry.js → p-462567d1.entry.js} +1 -1
  336. package/dist/ptcw-design/{p-9a2e1d68.entry.js → p-469482ba.entry.js} +1 -1
  337. package/dist/ptcw-design/{p-cff4b6f8.entry.js → p-46afd828.entry.js} +1 -1
  338. package/dist/ptcw-design/{p-88d78c75.entry.js → p-4702f4e4.entry.js} +1 -1
  339. package/dist/ptcw-design/{p-34aef911.entry.js → p-4977dc6d.entry.js} +1 -1
  340. package/dist/ptcw-design/{p-9f86b7c0.entry.js → p-4983e571.entry.js} +1 -1
  341. package/dist/ptcw-design/{p-037436f9.entry.js → p-49dc9b68.entry.js} +1 -1
  342. package/dist/ptcw-design/{p-a8e9a9ab.entry.js → p-4e551e25.entry.js} +1 -1
  343. package/dist/ptcw-design/{p-d9085ab8.entry.js → p-4f540f7c.entry.js} +1 -1
  344. package/dist/ptcw-design/{p-f3c1d0f7.entry.js → p-5507ef4b.entry.js} +1 -1
  345. package/dist/ptcw-design/{p-14d31733.entry.js → p-55d298f5.entry.js} +1 -1
  346. package/dist/ptcw-design/{p-785edd90.entry.js → p-564f58cf.entry.js} +1 -1
  347. package/dist/ptcw-design/{p-f4bfdb6c.entry.js → p-574680c3.entry.js} +1 -1
  348. package/dist/ptcw-design/p-575de112.js +1 -0
  349. package/dist/ptcw-design/{p-57dad570.entry.js → p-577a1370.entry.js} +1 -1
  350. package/dist/ptcw-design/{p-f7d9d8d6.entry.js → p-59058faa.entry.js} +1 -1
  351. package/dist/ptcw-design/{p-bee618f0.entry.js → p-5e08dc82.entry.js} +1 -1
  352. package/dist/ptcw-design/{p-6d0d90ac.entry.js → p-65513c45.entry.js} +1 -1
  353. package/dist/ptcw-design/p-6e9eccfc.entry.js +1 -0
  354. package/dist/ptcw-design/{p-fef6f882.entry.js → p-718d6ae8.entry.js} +1 -1
  355. package/dist/ptcw-design/{p-04d4bfc4.entry.js → p-73ea7065.entry.js} +1 -1
  356. package/dist/ptcw-design/{p-be39908c.entry.js → p-7753a23d.entry.js} +1 -1
  357. package/dist/ptcw-design/{p-70f3caa1.entry.js → p-8030db10.entry.js} +1 -1
  358. package/dist/ptcw-design/{p-b6c1d399.entry.js → p-877b4e4a.entry.js} +1 -1
  359. package/dist/ptcw-design/p-8a1c2577.entry.js +1 -0
  360. package/dist/ptcw-design/{p-c24ba553.entry.js → p-8c6b069b.entry.js} +1 -1
  361. package/dist/ptcw-design/{p-72bf60b0.entry.js → p-8d16a4dd.entry.js} +1 -1
  362. package/dist/ptcw-design/{p-fbd20db7.entry.js → p-9379f3b6.entry.js} +1 -1
  363. package/dist/ptcw-design/{p-2ac4876a.entry.js → p-938f3078.entry.js} +1 -1
  364. package/dist/ptcw-design/{p-8ec1379c.entry.js → p-99b10f83.entry.js} +1 -1
  365. package/dist/ptcw-design/{p-c085ea09.entry.js → p-99e80637.entry.js} +1 -1
  366. package/dist/ptcw-design/{p-62bacdde.entry.js → p-9a5ee2d5.entry.js} +1 -1
  367. package/dist/ptcw-design/p-9e0fd6cb.entry.js +1 -0
  368. package/dist/ptcw-design/{p-703fbae8.entry.js → p-9e230e0f.entry.js} +1 -1
  369. package/dist/ptcw-design/{p-d8be1ada.entry.js → p-a24ecd75.entry.js} +1 -1
  370. package/dist/ptcw-design/{p-4fc8a28d.entry.js → p-a7b20fe7.entry.js} +1 -1
  371. package/dist/ptcw-design/{p-92ca1c90.entry.js → p-a9eaabae.entry.js} +1 -1
  372. package/dist/ptcw-design/{p-9da7f322.entry.js → p-aa942e3b.entry.js} +1 -1
  373. package/dist/ptcw-design/{p-5355df5f.entry.js → p-af3a4142.entry.js} +1 -1
  374. package/dist/ptcw-design/{p-ea2f7967.entry.js → p-af3d5be7.entry.js} +1 -1
  375. package/dist/ptcw-design/p-b5d7c48e.entry.js +1 -0
  376. package/dist/ptcw-design/{p-aa9e455f.entry.js → p-b922e3a5.entry.js} +1 -1
  377. package/dist/ptcw-design/{p-0e630350.entry.js → p-ba213813.entry.js} +1 -1
  378. package/dist/ptcw-design/{p-5bdb4d6b.entry.js → p-ba3372d4.entry.js} +1 -1
  379. package/dist/ptcw-design/{p-0a400bd4.entry.js → p-baabdb8a.entry.js} +1 -1
  380. package/dist/ptcw-design/{p-653864dc.entry.js → p-bcc91b07.entry.js} +1 -1
  381. package/dist/ptcw-design/{p-4206b5f8.entry.js → p-c005febf.entry.js} +1 -1
  382. package/dist/ptcw-design/{p-a9e8d6ae.entry.js → p-c2c85e61.entry.js} +1 -1
  383. package/dist/ptcw-design/{p-2763af9e.entry.js → p-c3b7c168.entry.js} +1 -1
  384. package/dist/ptcw-design/{p-f152aa1a.entry.js → p-c5fadad0.entry.js} +1 -1
  385. package/dist/ptcw-design/p-c7bd4d99.entry.js +1 -0
  386. package/dist/ptcw-design/{p-cbcdde15.entry.js → p-cd6b8c27.entry.js} +1 -1
  387. package/dist/ptcw-design/{p-baf37894.entry.js → p-cdff68d4.entry.js} +1 -1
  388. package/dist/ptcw-design/{p-3cddd372.entry.js → p-d49d8875.entry.js} +1 -1
  389. package/dist/ptcw-design/{p-aebf5905.entry.js → p-d7232d12.entry.js} +1 -1
  390. package/dist/ptcw-design/{p-8896e8e8.entry.js → p-d7d6eff1.entry.js} +1 -1
  391. package/dist/ptcw-design/p-d8ade68d.entry.js +1 -0
  392. package/dist/ptcw-design/{p-bcc50ffa.entry.js → p-d9f4813a.entry.js} +1 -1
  393. package/dist/ptcw-design/{p-6eaeb9d0.entry.js → p-dd6501a8.entry.js} +1 -1
  394. package/dist/ptcw-design/{p-ca180fdd.entry.js → p-e5a6f9df.entry.js} +1 -1
  395. package/dist/ptcw-design/{p-c8cd200f.entry.js → p-e66e3791.entry.js} +1 -1
  396. package/dist/ptcw-design/{p-89bdbdb0.entry.js → p-e71c4b6b.entry.js} +1 -1
  397. package/dist/ptcw-design/{p-ca846daf.entry.js → p-eed3687b.entry.js} +1 -1
  398. package/dist/ptcw-design/{p-6f564063.entry.js → p-f24c57cf.entry.js} +1 -1
  399. package/dist/ptcw-design/{p-c54bc7d0.entry.js → p-f86b2262.entry.js} +1 -1
  400. package/dist/ptcw-design/{p-73b54b2b.entry.js → p-fa58bf5f.entry.js} +1 -1
  401. package/dist/ptcw-design/{p-8fcd6843.entry.js → p-fe0815f2.entry.js} +1 -1
  402. package/dist/ptcw-design/{p-8a5c6d19.entry.js → p-fe1ff7d2.entry.js} +1 -1
  403. package/dist/ptcw-design/ptcw-design.css +1 -1
  404. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  405. package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
  406. package/dist/types/components/dynamic-box-bundle/dynamic-box-bundle.d.ts +10 -10
  407. package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
  408. package/dist/types/components/innovator-toggle-container/innovator-toggle-container.d.ts +17 -17
  409. package/dist/types/components/list-item/list-item.d.ts +16 -16
  410. package/dist/types/components/max-width-container/max-width-container.d.ts +15 -15
  411. package/dist/types/components/my-component/my-component.d.ts +16 -16
  412. package/dist/types/components/organism-bundles/bundle-example/bundle-example.d.ts +10 -10
  413. package/dist/types/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.d.ts +5 -5
  414. package/dist/types/components/organism-bundles/sequential-bundle/sequential-bundle.d.ts +12 -12
  415. package/dist/types/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.d.ts +16 -16
  416. package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +59 -59
  417. package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +13 -13
  418. package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +51 -51
  419. package/dist/types/components/ptc-back-to-top/ptc-back-to-top.d.ts +9 -9
  420. package/dist/types/components/ptc-background-video/ptc-background-video.d.ts +45 -45
  421. package/dist/types/components/ptc-bio-card/ptc-bio-card.d.ts +27 -27
  422. package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +20 -20
  423. package/dist/types/components/ptc-button/ptc-button.d.ts +64 -64
  424. package/dist/types/components/ptc-card/ptc-card.d.ts +71 -71
  425. package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
  426. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +19 -19
  427. package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +24 -24
  428. package/dist/types/components/ptc-case-studies-slider/ptc-case-studies-slider.d.ts +14 -14
  429. package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +14 -14
  430. package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +56 -56
  431. package/dist/types/components/ptc-container/ptc-container.d.ts +13 -13
  432. package/dist/types/components/ptc-date/ptc-date.d.ts +46 -46
  433. package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
  434. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +23 -23
  435. package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +15 -15
  436. package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
  437. package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
  438. package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
  439. package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
  440. package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +12 -12
  441. package/dist/types/components/ptc-image-download-strip/ptc-image-download-strip.d.ts +9 -9
  442. package/dist/types/components/ptc-img/ptc-img.d.ts +55 -55
  443. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +25 -25
  444. package/dist/types/components/ptc-link/ptc-link.d.ts +40 -40
  445. package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
  446. package/dist/types/components/ptc-lottie/ptc-lottie.d.ts +12 -12
  447. package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +52 -52
  448. package/dist/types/components/ptc-minimized-footer/ptc-minimized-footer.d.ts +3 -3
  449. package/dist/types/components/ptc-minimized-header/ptc-minimized-header.d.ts +6 -6
  450. package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
  451. package/dist/types/components/ptc-modal/ptc-modal.d.ts +71 -71
  452. package/dist/types/components/ptc-nav-card/ptc-nav-card.d.ts +46 -46
  453. package/dist/types/components/ptc-news/ptc-news.d.ts +35 -35
  454. package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +21 -21
  455. package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +40 -40
  456. package/dist/types/components/ptc-para/ptc-para.d.ts +47 -47
  457. package/dist/types/components/ptc-picture/ptc-picture.d.ts +97 -97
  458. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +9 -9
  459. package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +7 -7
  460. package/dist/types/components/ptc-pricing-tabs/ptc-pricing-tabs.d.ts +52 -52
  461. package/dist/types/components/ptc-product-card/ptc-product-card.d.ts +37 -37
  462. package/dist/types/components/ptc-product-category/ptc-product-category.d.ts +5 -5
  463. package/dist/types/components/ptc-product-dropdown/ptc-product-dropdown.d.ts +18 -18
  464. package/dist/types/components/ptc-product-highlight-card/ptc-product-highlight-card.d.ts +23 -23
  465. package/dist/types/components/ptc-product-list/ptc-product-list.d.ts +18 -18
  466. package/dist/types/components/ptc-product-sidebar/ptc-product-sidebar.d.ts +31 -31
  467. package/dist/types/components/ptc-progress-bar/ptc-progress-bar.d.ts +5 -5
  468. package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
  469. package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +57 -57
  470. package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
  471. package/dist/types/components/ptc-search-field/ptc-search-field.d.ts +23 -23
  472. package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
  473. package/dist/types/components/ptc-skeleton/ptc-skeleton.d.ts +10 -10
  474. package/dist/types/components/ptc-slit-card/ptc-slit-card.d.ts +36 -36
  475. package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +37 -37
  476. package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
  477. package/dist/types/components/ptc-span/ptc-span.d.ts +20 -20
  478. package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
  479. package/dist/types/components/ptc-sticky-section/ptc-sticky-section.d.ts +9 -9
  480. package/dist/types/components/ptc-sticky-title/ptc-sticky-title.d.ts +8 -8
  481. package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +20 -20
  482. package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +21 -21
  483. package/dist/types/components/ptc-tabs/ptc-tab.d.ts +9 -9
  484. package/dist/types/components/ptc-tabs/ptc-tabs.d.ts +10 -10
  485. package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +34 -34
  486. package/dist/types/components/ptc-title/ptc-title.d.ts +54 -54
  487. package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +59 -59
  488. package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
  489. package/dist/types/components/subnav/ptc-nav-link/ptc-nav-link.d.ts +21 -21
  490. package/dist/types/components/subnav/ptc-nav-slider/ptc-nav-slider.d.ts +11 -11
  491. package/dist/types/components/subnav/ptc-nav-submenu/ptc-nav-submenu.d.ts +18 -18
  492. package/dist/types/components/subnav/ptc-subnav/ptc-subnav.d.ts +7 -7
  493. package/dist/types/components/subnav/ptc-subnav-card/ptc-subnav-card.d.ts +27 -27
  494. package/dist/types/components/tab-content/tab-content.d.ts +12 -12
  495. package/dist/types/components/tab-header/tab-header.d.ts +22 -22
  496. package/dist/types/components.d.ts +130 -130
  497. package/dist/types/global.d.ts +1072 -1072
  498. package/dist/types/index.d.ts +1 -1
  499. package/dist/types/stencil-public-runtime.d.ts +0 -11
  500. package/dist/types/utils/component.d.ts +1 -1
  501. package/dist/types/utils/interfaces.d.ts +31 -31
  502. package/dist/types/utils/utils.d.ts +5 -5
  503. package/package.json +80 -80
  504. package/readme.md +18 -18
  505. package/dist/ptcw-design/p-07d7fdae.entry.js +0 -1
  506. package/dist/ptcw-design/p-0bd8d982.entry.js +0 -1
  507. package/dist/ptcw-design/p-3bc8b8cd.entry.js +0 -1
  508. package/dist/ptcw-design/p-5aa039eb.entry.js +0 -1
  509. package/dist/ptcw-design/p-6b8f2a2a.entry.js +0 -1
  510. package/dist/ptcw-design/p-6ec5167f.entry.js +0 -1
  511. package/dist/ptcw-design/p-6fab6819.js +0 -1
  512. /package/dist/ptcw-design/{p-ea875d9e.js → p-36665caa.js} +0 -0
  513. /package/dist/ptcw-design/{p-92141eb1.js → p-63c06667.js} +0 -0
  514. /package/dist/ptcw-design/{p-240733ce.js → p-711bcdad.js} +0 -0
@@ -1,593 +1,593 @@
1
- import { Host, h } from '@stencil/core';
2
- import { debounce, generateUUID, MapDOM } from '../../utils/utils';
3
- class CollapseListItem {
4
- }
5
- export class PtcCollapseList {
6
- constructor() {
7
- this.data = undefined;
8
- this.searchText = undefined;
9
- this.header = undefined;
10
- this.selectedValue = undefined;
11
- this.selectedItems = undefined;
12
- this.hashMap = undefined;
13
- this.debouncedUpdatedEvent = undefined;
14
- this.refreshBuffer = undefined;
15
- this.listItems = undefined;
16
- this.placeholderText = undefined;
17
- this.debounceUpdateDelay = undefined;
18
- }
19
- componentWillLoad() {
20
- this.loadListItems();
21
- this.selectedItems = [];
22
- }
23
- componentDidLoad() {
24
- this.ready.emit({
25
- sender: this.el,
26
- tree: this.data,
27
- search: this.searchText
28
- });
29
- let event = () => {
30
- this.changed.emit({
31
- sender: this.el,
32
- selectedValue: this.selectedValue,
33
- selectedItems: this.selectedItems,
34
- search: this.searchText
35
- });
36
- };
37
- this.debouncedUpdatedEvent = debounce(event, this.debounceUpdateDelay, this);
38
- }
39
- componentDidUpdate() {
40
- this.viewUpdated.emit({
41
- sender: this.el,
42
- tree: this.data,
43
- search: this.searchText
44
- });
45
- }
46
- onItemSelectedHandler(event) {
47
- this.itemSelected.emit({
48
- event: event,
49
- sender: event ? event.target : this.el,
50
- selectedValue: this.selectedValue,
51
- selectedItems: this.selectedItems,
52
- tree: this.data
53
- });
54
- this.fireChangedEvent();
55
- }
56
- onInputUpdated(event) {
57
- let input = event.target;
58
- this.searchText = input.value;
59
- this.inputUpdated.emit({
60
- event: event,
61
- sender: input,
62
- selectedValue: this.selectedValue,
63
- selectedItems: this.selectedItems,
64
- tree: this.data,
65
- search: this.searchText
66
- });
67
- this.fireChangedEvent();
68
- }
69
- onItemExpandedHandler(event) {
70
- this.itemExpanded.emit({
71
- event: event,
72
- sender: event ? event.target : this.el,
73
- selectedValue: this.selectedValue,
74
- selectedItems: this.selectedItems,
75
- tree: this.data
76
- });
77
- }
78
- fireChangedEvent() {
79
- this.debouncedUpdatedEvent();
80
- }
81
- loadListItems() {
82
- this.hashMap = {};
83
- if (!this.data) {
84
- let dom = MapDOM(this.el);
85
- if (dom.collapseListItem) {
86
- this.data = new Array();
87
- let buildChildren = (arr, outArr) => {
88
- arr.map((z) => {
89
- var newItem = new CollapseListItem();
90
- newItem.isExternalLink = z.linkHref ? true : false;
91
- if (z.linkHref) {
92
- newItem.href = z.linkHref;
93
- newItem.target = z.linkTarget;
94
- newItem.title = z.linkTitle;
95
- }
96
- else {
97
- newItem.id = generateUUID();
98
- newItem.text = z.facetDisplay;
99
- newItem.name = z.facetName;
100
- newItem.value = z.facetValue;
101
- newItem.category = z.category;
102
- newItem.allowMultiSelect = z.allowMultiSelect != 'false';
103
- this.setUpCategory(newItem.category, newItem.allowMultiSelect);
104
- }
105
- if (z.collapseListItem) {
106
- newItem.children = new Array();
107
- if (!Array.isArray(z.collapseListItem)) {
108
- let tempArr = new Array();
109
- tempArr.push(z.collapseListItem);
110
- buildChildren(tempArr, newItem.children);
111
- }
112
- else {
113
- buildChildren(z.collapseListItem, newItem.children);
114
- }
115
- }
116
- this.hashMap[newItem.id] = newItem;
117
- outArr.push(newItem);
118
- });
119
- };
120
- this.setUpCategory('default', true);
121
- buildChildren(dom.collapseListItem, this.data);
122
- }
123
- }
124
- }
125
- setUpCategory(name, allowMultiSelect) {
126
- if (!this.selectedValue) {
127
- this.selectedValue = {};
128
- }
129
- if (name && !this.selectedValue[name]) {
130
- this.selectedValue[name] = {
131
- name: name,
132
- items: new Array(),
133
- allowMultiSelect: allowMultiSelect
134
- };
135
- }
136
- }
137
- collapseAllFirstLevelItems(exclude) {
138
- let items = this.el.shadowRoot.querySelectorAll('.level-1');
139
- items.forEach((z) => {
140
- if (z.classList.contains('expanded') && z != exclude) {
141
- z.classList.remove('expanded');
142
- }
143
- });
144
- }
145
- updateExpandedItems() {
146
- const redraw = (timestamp) => {
147
- if (!this.refreshBuffer) {
148
- this.refreshBuffer = timestamp;
149
- }
150
- const elapsed = timestamp - this.refreshBuffer;
151
- let items = this.el.shadowRoot.querySelectorAll('li');
152
- items.forEach((z) => {
153
- let ul = z.querySelector(':scope > ul');
154
- if (ul) {
155
- if (!z.classList.contains('expanded')) {
156
- ul.style.removeProperty('max-height');
157
- }
158
- else {
159
- ul.style.maxHeight = ul.scrollHeight + "px";
160
- }
161
- }
162
- });
163
- if (elapsed < 2500) {
164
- window.requestAnimationFrame(redraw);
165
- }
166
- else {
167
- this.refreshBuffer = undefined;
168
- }
169
- };
170
- if (!this.refreshBuffer) {
171
- window.requestAnimationFrame(redraw);
172
- }
173
- else {
174
- this.refreshBuffer = undefined;
175
- }
176
- }
177
- updateSelectedItemStatus(uuid) {
178
- var _a;
179
- let selectedItem = this.hashMap[uuid];
180
- if (selectedItem && selectedItem.value) {
181
- let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
182
- if (!this.selectedValue[categoryName]) {
183
- this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
184
- }
185
- let items = this.selectedValue[categoryName].items;
186
- if (items.indexOf(selectedItem.value) < 0) {
187
- if (this.selectedValue[categoryName].allowMultiSelect) {
188
- items.push(selectedItem.value);
189
- }
190
- else {
191
- this.selectedItems = this.selectedItems.filter((z) => { return z.value != items[0]; });
192
- items = [selectedItem.value];
193
- }
194
- this.selectedItems.push(selectedItem);
195
- }
196
- else {
197
- items = items.filter((z) => { return z != selectedItem.value; });
198
- this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
199
- }
200
- this.selectedValue[categoryName].items = items;
201
- }
202
- }
203
- unSelectItem(uuid) {
204
- var _a;
205
- let selectedItem = this.hashMap[uuid];
206
- if (selectedItem && selectedItem.value) {
207
- let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
208
- if (!this.selectedValue[categoryName]) {
209
- this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
210
- }
211
- let items = this.selectedValue[categoryName].items;
212
- if (items.indexOf(selectedItem.value) > -1) {
213
- items = items.filter((z) => { return z != selectedItem.value; });
214
- this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
215
- }
216
- this.selectedValue[categoryName].items = items;
217
- }
218
- }
219
- selectItem(uuid) {
220
- var _a;
221
- let selectedItem = this.hashMap[uuid];
222
- if (selectedItem && selectedItem.value) {
223
- let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
224
- if (!this.selectedValue[categoryName]) {
225
- this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
226
- }
227
- let items = this.selectedValue[categoryName].items;
228
- if (items.indexOf(selectedItem.value) < 0) {
229
- if (this.selectedValue[categoryName].allowMultiSelect) {
230
- items.push(selectedItem.value);
231
- }
232
- else {
233
- items = [selectedItem.value];
234
- }
235
- this.selectedItems.push(selectedItem);
236
- }
237
- this.selectedValue[categoryName].items = items;
238
- }
239
- }
240
- getItemByValue(value) {
241
- let result;
242
- if (this.hashMap) {
243
- for (const [_, v] of Object.entries(this.hashMap)) {
244
- let item = v;
245
- if (item.value == value) {
246
- result = item;
247
- break;
248
- }
249
- }
250
- }
251
- return result;
252
- }
253
- onItemLinkClick(event, uuid) {
254
- if (event) {
255
- event.preventDefault();
256
- }
257
- this.updateSelectedItemStatus(uuid);
258
- this.onItemSelectedHandler(event);
259
- }
260
- onExpandClick(event, collapseParents) {
261
- if (event) {
262
- event.preventDefault();
263
- let sender = event.currentTarget;
264
- let root = sender.closest('.level-1');
265
- let parent = sender.closest('li');
266
- if (collapseParents) {
267
- this.collapseAllFirstLevelItems(root);
268
- }
269
- if (parent) {
270
- parent.classList.toggle("expanded");
271
- }
272
- if (sender.classList.contains('expander-icon')) {
273
- let icon = parent.classList.contains('expanded') ? 'minus' : 'plus';
274
- sender.querySelector('icon-asset').setAttribute('name', icon);
275
- }
276
- this.updateExpandedItems();
277
- }
278
- this.onItemExpandedHandler(event);
279
- }
280
- render() {
281
- let renderLevel = (arr, level) => {
282
- let levelClass = `level-${level}`;
283
- return (h("ul", null, arr.map((z) => {
284
- let expandable = false;
285
- let selectable = false;
286
- let icon;
287
- if (level == 1) {
288
- if (z.children) {
289
- expandable = true;
290
- selectable = false;
291
- icon = (h("icon-asset", { type: "ptc", name: "chevron-down", color: "ptc-green", size: "medium" }));
292
- }
293
- else {
294
- expandable = false;
295
- selectable = true;
296
- icon = (h("icon-asset", { type: "ptc", name: "plus", color: "ptc-green", size: "medium" }));
297
- }
298
- }
299
- else if (level > 1) {
300
- selectable = true;
301
- if (z.children) {
302
- expandable = true;
303
- icon = (h("icon-asset", { type: "ptc", name: "plus", color: "gray", size: "xxx-small" }));
304
- }
305
- else {
306
- expandable = false;
307
- }
308
- }
309
- return (h("li", { class: levelClass }, getLink(z, icon, level, expandable, selectable), z.children ? renderLevel(z.children, level + 1) : ''));
310
- })));
311
- };
312
- let getLink = (item, icon, level, expandable, selectable) => {
313
- let clickEvent = (e) => {
314
- if (expandable) {
315
- this.onExpandClick(e, level == 1);
316
- }
317
- else {
318
- this.onItemLinkClick(e, item.id);
319
- }
320
- };
321
- if (item.isExternalLink) {
322
- return (h("a", { href: item.href, target: item.target, title: item.title }, icon, item.text));
323
- }
324
- else if ((!expandable && selectable) || (expandable && !selectable)) {
325
- return (h("a", { href: "#", title: item.text, onClick: clickEvent }, icon, item.text));
326
- }
327
- else {
328
- return [
329
- h("a", { class: "expander-icon", href: "#", onClick: (e) => { this.onExpandClick(e, false); } }, icon),
330
- h("a", { href: "#", title: item.text, onClick: (e) => { this.onItemLinkClick(e, item.id); } }, item.text)
331
- ];
332
- }
333
- };
334
- return (h(Host, null, h("div", { class: "container" }, h("ptc-title", { type: 'h2', "title-size": "medium", "title-weight": "w-6", "text-align": 'left', upperline: "no-upperline" }, this.header), h("div", { class: "search-box" }, h("input", { type: "text", placeholder: this.placeholderText, onKeyUp: (e) => { this.onInputUpdated(e); } })), renderLevel(this.data, 1))));
335
- }
336
- async removeSelectedItem(value) {
337
- let item = this.getItemByValue(value);
338
- this.unSelectItem(item.id);
339
- this.fireChangedEvent();
340
- }
341
- async addSelectedItem(value) {
342
- let item = this.getItemByValue(value);
343
- this.selectItem(item.id);
344
- }
345
- static get is() { return "ptc-collapse-list"; }
346
- static get encapsulation() { return "shadow"; }
347
- static get originalStyleUrls() {
348
- return {
349
- "$": ["ptc-collapse-list.scss"]
350
- };
351
- }
352
- static get styleUrls() {
353
- return {
354
- "$": ["ptc-collapse-list.css"]
355
- };
356
- }
357
- static get properties() {
358
- return {
359
- "header": {
360
- "type": "string",
361
- "mutable": false,
362
- "complexType": {
363
- "original": "string",
364
- "resolved": "string",
365
- "references": {}
366
- },
367
- "required": false,
368
- "optional": false,
369
- "docs": {
370
- "tags": [],
371
- "text": ""
372
- },
373
- "attribute": "header",
374
- "reflect": false
375
- },
376
- "listItems": {
377
- "type": "unknown",
378
- "mutable": true,
379
- "complexType": {
380
- "original": "Object",
381
- "resolved": "Object",
382
- "references": {
383
- "Object": {
384
- "location": "global"
385
- }
386
- }
387
- },
388
- "required": false,
389
- "optional": true,
390
- "docs": {
391
- "tags": [],
392
- "text": ""
393
- }
394
- },
395
- "placeholderText": {
396
- "type": "string",
397
- "mutable": true,
398
- "complexType": {
399
- "original": "string",
400
- "resolved": "string",
401
- "references": {}
402
- },
403
- "required": false,
404
- "optional": false,
405
- "docs": {
406
- "tags": [],
407
- "text": ""
408
- },
409
- "attribute": "placeholder-text",
410
- "reflect": false
411
- },
412
- "debounceUpdateDelay": {
413
- "type": "number",
414
- "mutable": true,
415
- "complexType": {
416
- "original": "500",
417
- "resolved": "500",
418
- "references": {}
419
- },
420
- "required": false,
421
- "optional": false,
422
- "docs": {
423
- "tags": [],
424
- "text": ""
425
- },
426
- "attribute": "debounce-update-delay",
427
- "reflect": false
428
- }
429
- };
430
- }
431
- static get states() {
432
- return {
433
- "data": {},
434
- "searchText": {},
435
- "selectedValue": {},
436
- "selectedItems": {},
437
- "hashMap": {},
438
- "debouncedUpdatedEvent": {},
439
- "refreshBuffer": {}
440
- };
441
- }
442
- static get events() {
443
- return [{
444
- "method": "itemSelected",
445
- "name": "itemSelected",
446
- "bubbles": true,
447
- "cancelable": true,
448
- "composed": true,
449
- "docs": {
450
- "tags": [],
451
- "text": ""
452
- },
453
- "complexType": {
454
- "original": "any",
455
- "resolved": "any",
456
- "references": {}
457
- }
458
- }, {
459
- "method": "itemExpanded",
460
- "name": "itemExpanded",
461
- "bubbles": true,
462
- "cancelable": true,
463
- "composed": true,
464
- "docs": {
465
- "tags": [],
466
- "text": ""
467
- },
468
- "complexType": {
469
- "original": "any",
470
- "resolved": "any",
471
- "references": {}
472
- }
473
- }, {
474
- "method": "textChanged",
475
- "name": "textChanged",
476
- "bubbles": true,
477
- "cancelable": true,
478
- "composed": true,
479
- "docs": {
480
- "tags": [],
481
- "text": ""
482
- },
483
- "complexType": {
484
- "original": "any",
485
- "resolved": "any",
486
- "references": {}
487
- }
488
- }, {
489
- "method": "inputUpdated",
490
- "name": "inputUpdated",
491
- "bubbles": true,
492
- "cancelable": true,
493
- "composed": true,
494
- "docs": {
495
- "tags": [],
496
- "text": ""
497
- },
498
- "complexType": {
499
- "original": "any",
500
- "resolved": "any",
501
- "references": {}
502
- }
503
- }, {
504
- "method": "ready",
505
- "name": "ready",
506
- "bubbles": true,
507
- "cancelable": true,
508
- "composed": true,
509
- "docs": {
510
- "tags": [],
511
- "text": ""
512
- },
513
- "complexType": {
514
- "original": "any",
515
- "resolved": "any",
516
- "references": {}
517
- }
518
- }, {
519
- "method": "viewUpdated",
520
- "name": "viewUpdated",
521
- "bubbles": true,
522
- "cancelable": true,
523
- "composed": true,
524
- "docs": {
525
- "tags": [],
526
- "text": ""
527
- },
528
- "complexType": {
529
- "original": "any",
530
- "resolved": "any",
531
- "references": {}
532
- }
533
- }, {
534
- "method": "changed",
535
- "name": "changed",
536
- "bubbles": true,
537
- "cancelable": true,
538
- "composed": true,
539
- "docs": {
540
- "tags": [],
541
- "text": ""
542
- },
543
- "complexType": {
544
- "original": "any",
545
- "resolved": "any",
546
- "references": {}
547
- }
548
- }];
549
- }
550
- static get methods() {
551
- return {
552
- "removeSelectedItem": {
553
- "complexType": {
554
- "signature": "(value: string) => Promise<void>",
555
- "parameters": [{
556
- "tags": [],
557
- "text": ""
558
- }],
559
- "references": {
560
- "Promise": {
561
- "location": "global"
562
- }
563
- },
564
- "return": "Promise<void>"
565
- },
566
- "docs": {
567
- "text": "",
568
- "tags": []
569
- }
570
- },
571
- "addSelectedItem": {
572
- "complexType": {
573
- "signature": "(value: string) => Promise<void>",
574
- "parameters": [{
575
- "tags": [],
576
- "text": ""
577
- }],
578
- "references": {
579
- "Promise": {
580
- "location": "global"
581
- }
582
- },
583
- "return": "Promise<void>"
584
- },
585
- "docs": {
586
- "text": "",
587
- "tags": []
588
- }
589
- }
590
- };
591
- }
592
- static get elementRef() { return "el"; }
593
- }
1
+ import { Host, h } from '@stencil/core';
2
+ import { debounce, generateUUID, MapDOM } from '../../utils/utils';
3
+ class CollapseListItem {
4
+ }
5
+ export class PtcCollapseList {
6
+ constructor() {
7
+ this.data = undefined;
8
+ this.searchText = undefined;
9
+ this.header = undefined;
10
+ this.selectedValue = undefined;
11
+ this.selectedItems = undefined;
12
+ this.hashMap = undefined;
13
+ this.debouncedUpdatedEvent = undefined;
14
+ this.refreshBuffer = undefined;
15
+ this.listItems = undefined;
16
+ this.placeholderText = undefined;
17
+ this.debounceUpdateDelay = undefined;
18
+ }
19
+ componentWillLoad() {
20
+ this.loadListItems();
21
+ this.selectedItems = [];
22
+ }
23
+ componentDidLoad() {
24
+ this.ready.emit({
25
+ sender: this.el,
26
+ tree: this.data,
27
+ search: this.searchText
28
+ });
29
+ let event = () => {
30
+ this.changed.emit({
31
+ sender: this.el,
32
+ selectedValue: this.selectedValue,
33
+ selectedItems: this.selectedItems,
34
+ search: this.searchText
35
+ });
36
+ };
37
+ this.debouncedUpdatedEvent = debounce(event, this.debounceUpdateDelay, this);
38
+ }
39
+ componentDidUpdate() {
40
+ this.viewUpdated.emit({
41
+ sender: this.el,
42
+ tree: this.data,
43
+ search: this.searchText
44
+ });
45
+ }
46
+ onItemSelectedHandler(event) {
47
+ this.itemSelected.emit({
48
+ event: event,
49
+ sender: event ? event.target : this.el,
50
+ selectedValue: this.selectedValue,
51
+ selectedItems: this.selectedItems,
52
+ tree: this.data
53
+ });
54
+ this.fireChangedEvent();
55
+ }
56
+ onInputUpdated(event) {
57
+ let input = event.target;
58
+ this.searchText = input.value;
59
+ this.inputUpdated.emit({
60
+ event: event,
61
+ sender: input,
62
+ selectedValue: this.selectedValue,
63
+ selectedItems: this.selectedItems,
64
+ tree: this.data,
65
+ search: this.searchText
66
+ });
67
+ this.fireChangedEvent();
68
+ }
69
+ onItemExpandedHandler(event) {
70
+ this.itemExpanded.emit({
71
+ event: event,
72
+ sender: event ? event.target : this.el,
73
+ selectedValue: this.selectedValue,
74
+ selectedItems: this.selectedItems,
75
+ tree: this.data
76
+ });
77
+ }
78
+ fireChangedEvent() {
79
+ this.debouncedUpdatedEvent();
80
+ }
81
+ loadListItems() {
82
+ this.hashMap = {};
83
+ if (!this.data) {
84
+ let dom = MapDOM(this.el);
85
+ if (dom.collapseListItem) {
86
+ this.data = new Array();
87
+ let buildChildren = (arr, outArr) => {
88
+ arr.map((z) => {
89
+ var newItem = new CollapseListItem();
90
+ newItem.isExternalLink = z.linkHref ? true : false;
91
+ if (z.linkHref) {
92
+ newItem.href = z.linkHref;
93
+ newItem.target = z.linkTarget;
94
+ newItem.title = z.linkTitle;
95
+ }
96
+ else {
97
+ newItem.id = generateUUID();
98
+ newItem.text = z.facetDisplay;
99
+ newItem.name = z.facetName;
100
+ newItem.value = z.facetValue;
101
+ newItem.category = z.category;
102
+ newItem.allowMultiSelect = z.allowMultiSelect != 'false';
103
+ this.setUpCategory(newItem.category, newItem.allowMultiSelect);
104
+ }
105
+ if (z.collapseListItem) {
106
+ newItem.children = new Array();
107
+ if (!Array.isArray(z.collapseListItem)) {
108
+ let tempArr = new Array();
109
+ tempArr.push(z.collapseListItem);
110
+ buildChildren(tempArr, newItem.children);
111
+ }
112
+ else {
113
+ buildChildren(z.collapseListItem, newItem.children);
114
+ }
115
+ }
116
+ this.hashMap[newItem.id] = newItem;
117
+ outArr.push(newItem);
118
+ });
119
+ };
120
+ this.setUpCategory('default', true);
121
+ buildChildren(dom.collapseListItem, this.data);
122
+ }
123
+ }
124
+ }
125
+ setUpCategory(name, allowMultiSelect) {
126
+ if (!this.selectedValue) {
127
+ this.selectedValue = {};
128
+ }
129
+ if (name && !this.selectedValue[name]) {
130
+ this.selectedValue[name] = {
131
+ name: name,
132
+ items: new Array(),
133
+ allowMultiSelect: allowMultiSelect
134
+ };
135
+ }
136
+ }
137
+ collapseAllFirstLevelItems(exclude) {
138
+ let items = this.el.shadowRoot.querySelectorAll('.level-1');
139
+ items.forEach((z) => {
140
+ if (z.classList.contains('expanded') && z != exclude) {
141
+ z.classList.remove('expanded');
142
+ }
143
+ });
144
+ }
145
+ updateExpandedItems() {
146
+ const redraw = (timestamp) => {
147
+ if (!this.refreshBuffer) {
148
+ this.refreshBuffer = timestamp;
149
+ }
150
+ const elapsed = timestamp - this.refreshBuffer;
151
+ let items = this.el.shadowRoot.querySelectorAll('li');
152
+ items.forEach((z) => {
153
+ let ul = z.querySelector(':scope > ul');
154
+ if (ul) {
155
+ if (!z.classList.contains('expanded')) {
156
+ ul.style.removeProperty('max-height');
157
+ }
158
+ else {
159
+ ul.style.maxHeight = ul.scrollHeight + "px";
160
+ }
161
+ }
162
+ });
163
+ if (elapsed < 2500) {
164
+ window.requestAnimationFrame(redraw);
165
+ }
166
+ else {
167
+ this.refreshBuffer = undefined;
168
+ }
169
+ };
170
+ if (!this.refreshBuffer) {
171
+ window.requestAnimationFrame(redraw);
172
+ }
173
+ else {
174
+ this.refreshBuffer = undefined;
175
+ }
176
+ }
177
+ updateSelectedItemStatus(uuid) {
178
+ var _a;
179
+ let selectedItem = this.hashMap[uuid];
180
+ if (selectedItem && selectedItem.value) {
181
+ let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
182
+ if (!this.selectedValue[categoryName]) {
183
+ this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
184
+ }
185
+ let items = this.selectedValue[categoryName].items;
186
+ if (items.indexOf(selectedItem.value) < 0) {
187
+ if (this.selectedValue[categoryName].allowMultiSelect) {
188
+ items.push(selectedItem.value);
189
+ }
190
+ else {
191
+ this.selectedItems = this.selectedItems.filter((z) => { return z.value != items[0]; });
192
+ items = [selectedItem.value];
193
+ }
194
+ this.selectedItems.push(selectedItem);
195
+ }
196
+ else {
197
+ items = items.filter((z) => { return z != selectedItem.value; });
198
+ this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
199
+ }
200
+ this.selectedValue[categoryName].items = items;
201
+ }
202
+ }
203
+ unSelectItem(uuid) {
204
+ var _a;
205
+ let selectedItem = this.hashMap[uuid];
206
+ if (selectedItem && selectedItem.value) {
207
+ let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
208
+ if (!this.selectedValue[categoryName]) {
209
+ this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
210
+ }
211
+ let items = this.selectedValue[categoryName].items;
212
+ if (items.indexOf(selectedItem.value) > -1) {
213
+ items = items.filter((z) => { return z != selectedItem.value; });
214
+ this.selectedItems = this.selectedItems.filter((z) => { return z.value != selectedItem.value; });
215
+ }
216
+ this.selectedValue[categoryName].items = items;
217
+ }
218
+ }
219
+ selectItem(uuid) {
220
+ var _a;
221
+ let selectedItem = this.hashMap[uuid];
222
+ if (selectedItem && selectedItem.value) {
223
+ let categoryName = (_a = selectedItem.category) !== null && _a !== void 0 ? _a : 'default';
224
+ if (!this.selectedValue[categoryName]) {
225
+ this.setUpCategory(categoryName, selectedItem.allowMultiSelect == true);
226
+ }
227
+ let items = this.selectedValue[categoryName].items;
228
+ if (items.indexOf(selectedItem.value) < 0) {
229
+ if (this.selectedValue[categoryName].allowMultiSelect) {
230
+ items.push(selectedItem.value);
231
+ }
232
+ else {
233
+ items = [selectedItem.value];
234
+ }
235
+ this.selectedItems.push(selectedItem);
236
+ }
237
+ this.selectedValue[categoryName].items = items;
238
+ }
239
+ }
240
+ getItemByValue(value) {
241
+ let result;
242
+ if (this.hashMap) {
243
+ for (const [_, v] of Object.entries(this.hashMap)) {
244
+ let item = v;
245
+ if (item.value == value) {
246
+ result = item;
247
+ break;
248
+ }
249
+ }
250
+ }
251
+ return result;
252
+ }
253
+ onItemLinkClick(event, uuid) {
254
+ if (event) {
255
+ event.preventDefault();
256
+ }
257
+ this.updateSelectedItemStatus(uuid);
258
+ this.onItemSelectedHandler(event);
259
+ }
260
+ onExpandClick(event, collapseParents) {
261
+ if (event) {
262
+ event.preventDefault();
263
+ let sender = event.currentTarget;
264
+ let root = sender.closest('.level-1');
265
+ let parent = sender.closest('li');
266
+ if (collapseParents) {
267
+ this.collapseAllFirstLevelItems(root);
268
+ }
269
+ if (parent) {
270
+ parent.classList.toggle("expanded");
271
+ }
272
+ if (sender.classList.contains('expander-icon')) {
273
+ let icon = parent.classList.contains('expanded') ? 'minus' : 'plus';
274
+ sender.querySelector('icon-asset').setAttribute('name', icon);
275
+ }
276
+ this.updateExpandedItems();
277
+ }
278
+ this.onItemExpandedHandler(event);
279
+ }
280
+ render() {
281
+ let renderLevel = (arr, level) => {
282
+ let levelClass = `level-${level}`;
283
+ return (h("ul", null, arr.map((z) => {
284
+ let expandable = false;
285
+ let selectable = false;
286
+ let icon;
287
+ if (level == 1) {
288
+ if (z.children) {
289
+ expandable = true;
290
+ selectable = false;
291
+ icon = (h("icon-asset", { type: "ptc", name: "chevron-down", color: "ptc-green", size: "medium" }));
292
+ }
293
+ else {
294
+ expandable = false;
295
+ selectable = true;
296
+ icon = (h("icon-asset", { type: "ptc", name: "plus", color: "ptc-green", size: "medium" }));
297
+ }
298
+ }
299
+ else if (level > 1) {
300
+ selectable = true;
301
+ if (z.children) {
302
+ expandable = true;
303
+ icon = (h("icon-asset", { type: "ptc", name: "plus", color: "gray", size: "xxx-small" }));
304
+ }
305
+ else {
306
+ expandable = false;
307
+ }
308
+ }
309
+ return (h("li", { class: levelClass }, getLink(z, icon, level, expandable, selectable), z.children ? renderLevel(z.children, level + 1) : ''));
310
+ })));
311
+ };
312
+ let getLink = (item, icon, level, expandable, selectable) => {
313
+ let clickEvent = (e) => {
314
+ if (expandable) {
315
+ this.onExpandClick(e, level == 1);
316
+ }
317
+ else {
318
+ this.onItemLinkClick(e, item.id);
319
+ }
320
+ };
321
+ if (item.isExternalLink) {
322
+ return (h("a", { href: item.href, target: item.target, title: item.title }, icon, item.text));
323
+ }
324
+ else if ((!expandable && selectable) || (expandable && !selectable)) {
325
+ return (h("a", { href: "#", title: item.text, onClick: clickEvent }, icon, item.text));
326
+ }
327
+ else {
328
+ return [
329
+ h("a", { class: "expander-icon", href: "#", onClick: (e) => { this.onExpandClick(e, false); } }, icon),
330
+ h("a", { href: "#", title: item.text, onClick: (e) => { this.onItemLinkClick(e, item.id); } }, item.text)
331
+ ];
332
+ }
333
+ };
334
+ return (h(Host, null, h("div", { class: "container" }, h("ptc-title", { type: 'h2', "title-size": "medium", "title-weight": "w-6", "text-align": 'left', upperline: "no-upperline" }, this.header), h("div", { class: "search-box" }, h("input", { type: "text", placeholder: this.placeholderText, onKeyUp: (e) => { this.onInputUpdated(e); } })), renderLevel(this.data, 1))));
335
+ }
336
+ async removeSelectedItem(value) {
337
+ let item = this.getItemByValue(value);
338
+ this.unSelectItem(item.id);
339
+ this.fireChangedEvent();
340
+ }
341
+ async addSelectedItem(value) {
342
+ let item = this.getItemByValue(value);
343
+ this.selectItem(item.id);
344
+ }
345
+ static get is() { return "ptc-collapse-list"; }
346
+ static get encapsulation() { return "shadow"; }
347
+ static get originalStyleUrls() {
348
+ return {
349
+ "$": ["ptc-collapse-list.scss"]
350
+ };
351
+ }
352
+ static get styleUrls() {
353
+ return {
354
+ "$": ["ptc-collapse-list.css"]
355
+ };
356
+ }
357
+ static get properties() {
358
+ return {
359
+ "header": {
360
+ "type": "string",
361
+ "mutable": false,
362
+ "complexType": {
363
+ "original": "string",
364
+ "resolved": "string",
365
+ "references": {}
366
+ },
367
+ "required": false,
368
+ "optional": false,
369
+ "docs": {
370
+ "tags": [],
371
+ "text": ""
372
+ },
373
+ "attribute": "header",
374
+ "reflect": false
375
+ },
376
+ "listItems": {
377
+ "type": "unknown",
378
+ "mutable": true,
379
+ "complexType": {
380
+ "original": "Object",
381
+ "resolved": "Object",
382
+ "references": {
383
+ "Object": {
384
+ "location": "global"
385
+ }
386
+ }
387
+ },
388
+ "required": false,
389
+ "optional": true,
390
+ "docs": {
391
+ "tags": [],
392
+ "text": ""
393
+ }
394
+ },
395
+ "placeholderText": {
396
+ "type": "string",
397
+ "mutable": true,
398
+ "complexType": {
399
+ "original": "string",
400
+ "resolved": "string",
401
+ "references": {}
402
+ },
403
+ "required": false,
404
+ "optional": false,
405
+ "docs": {
406
+ "tags": [],
407
+ "text": ""
408
+ },
409
+ "attribute": "placeholder-text",
410
+ "reflect": false
411
+ },
412
+ "debounceUpdateDelay": {
413
+ "type": "number",
414
+ "mutable": true,
415
+ "complexType": {
416
+ "original": "500",
417
+ "resolved": "500",
418
+ "references": {}
419
+ },
420
+ "required": false,
421
+ "optional": false,
422
+ "docs": {
423
+ "tags": [],
424
+ "text": ""
425
+ },
426
+ "attribute": "debounce-update-delay",
427
+ "reflect": false
428
+ }
429
+ };
430
+ }
431
+ static get states() {
432
+ return {
433
+ "data": {},
434
+ "searchText": {},
435
+ "selectedValue": {},
436
+ "selectedItems": {},
437
+ "hashMap": {},
438
+ "debouncedUpdatedEvent": {},
439
+ "refreshBuffer": {}
440
+ };
441
+ }
442
+ static get events() {
443
+ return [{
444
+ "method": "itemSelected",
445
+ "name": "itemSelected",
446
+ "bubbles": true,
447
+ "cancelable": true,
448
+ "composed": true,
449
+ "docs": {
450
+ "tags": [],
451
+ "text": ""
452
+ },
453
+ "complexType": {
454
+ "original": "any",
455
+ "resolved": "any",
456
+ "references": {}
457
+ }
458
+ }, {
459
+ "method": "itemExpanded",
460
+ "name": "itemExpanded",
461
+ "bubbles": true,
462
+ "cancelable": true,
463
+ "composed": true,
464
+ "docs": {
465
+ "tags": [],
466
+ "text": ""
467
+ },
468
+ "complexType": {
469
+ "original": "any",
470
+ "resolved": "any",
471
+ "references": {}
472
+ }
473
+ }, {
474
+ "method": "textChanged",
475
+ "name": "textChanged",
476
+ "bubbles": true,
477
+ "cancelable": true,
478
+ "composed": true,
479
+ "docs": {
480
+ "tags": [],
481
+ "text": ""
482
+ },
483
+ "complexType": {
484
+ "original": "any",
485
+ "resolved": "any",
486
+ "references": {}
487
+ }
488
+ }, {
489
+ "method": "inputUpdated",
490
+ "name": "inputUpdated",
491
+ "bubbles": true,
492
+ "cancelable": true,
493
+ "composed": true,
494
+ "docs": {
495
+ "tags": [],
496
+ "text": ""
497
+ },
498
+ "complexType": {
499
+ "original": "any",
500
+ "resolved": "any",
501
+ "references": {}
502
+ }
503
+ }, {
504
+ "method": "ready",
505
+ "name": "ready",
506
+ "bubbles": true,
507
+ "cancelable": true,
508
+ "composed": true,
509
+ "docs": {
510
+ "tags": [],
511
+ "text": ""
512
+ },
513
+ "complexType": {
514
+ "original": "any",
515
+ "resolved": "any",
516
+ "references": {}
517
+ }
518
+ }, {
519
+ "method": "viewUpdated",
520
+ "name": "viewUpdated",
521
+ "bubbles": true,
522
+ "cancelable": true,
523
+ "composed": true,
524
+ "docs": {
525
+ "tags": [],
526
+ "text": ""
527
+ },
528
+ "complexType": {
529
+ "original": "any",
530
+ "resolved": "any",
531
+ "references": {}
532
+ }
533
+ }, {
534
+ "method": "changed",
535
+ "name": "changed",
536
+ "bubbles": true,
537
+ "cancelable": true,
538
+ "composed": true,
539
+ "docs": {
540
+ "tags": [],
541
+ "text": ""
542
+ },
543
+ "complexType": {
544
+ "original": "any",
545
+ "resolved": "any",
546
+ "references": {}
547
+ }
548
+ }];
549
+ }
550
+ static get methods() {
551
+ return {
552
+ "removeSelectedItem": {
553
+ "complexType": {
554
+ "signature": "(value: string) => Promise<void>",
555
+ "parameters": [{
556
+ "tags": [],
557
+ "text": ""
558
+ }],
559
+ "references": {
560
+ "Promise": {
561
+ "location": "global"
562
+ }
563
+ },
564
+ "return": "Promise<void>"
565
+ },
566
+ "docs": {
567
+ "text": "",
568
+ "tags": []
569
+ }
570
+ },
571
+ "addSelectedItem": {
572
+ "complexType": {
573
+ "signature": "(value: string) => Promise<void>",
574
+ "parameters": [{
575
+ "tags": [],
576
+ "text": ""
577
+ }],
578
+ "references": {
579
+ "Promise": {
580
+ "location": "global"
581
+ }
582
+ },
583
+ "return": "Promise<void>"
584
+ },
585
+ "docs": {
586
+ "text": "",
587
+ "tags": []
588
+ }
589
+ }
590
+ };
591
+ }
592
+ static get elementRef() { return "el"; }
593
+ }