@ptcwebops/ptcw-design 6.4.13 → 6.4.14-beta

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 (520) hide show
  1. package/dist/cjs/blogs-search-section.cjs.entry.js +4 -1
  2. package/dist/cjs/buying-option-card.cjs.entry.js +1 -1
  3. package/dist/cjs/buying-option-cards-slider.cjs.entry.js +15 -8
  4. package/dist/cjs/{component-06dda623.js → component-6a178a16.js} +2643 -832
  5. package/dist/cjs/dynamic-box-bundle.cjs.entry.js +3 -1
  6. package/dist/cjs/featured-list.cjs.entry.js +1 -1
  7. package/dist/cjs/homepage-toggled-content.cjs.entry.js +3 -1
  8. package/dist/cjs/icon-asset.cjs.entry.js +65 -0
  9. package/dist/cjs/innovator-toggle-container.cjs.entry.js +1 -1
  10. package/dist/cjs/interfaces-574e6df7.js +15 -0
  11. package/dist/cjs/list-item.cjs.entry.js +52 -0
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/max-width-container.cjs.entry.js +54 -0
  14. package/dist/cjs/modal-form-example.cjs.entry.js +109 -0
  15. package/dist/cjs/ptc-announcement.cjs.entry.js +2 -1
  16. package/dist/cjs/ptc-background-video.cjs.entry.js +152 -0
  17. package/dist/cjs/ptc-bio-card.cjs.entry.js +1 -1
  18. package/dist/cjs/ptc-breadcrumb.cjs.entry.js +53 -0
  19. package/dist/cjs/ptc-button_5.cjs.entry.js +597 -0
  20. package/dist/cjs/ptc-card-bottom_2.cjs.entry.js +3 -17
  21. package/dist/cjs/ptc-card-content.cjs.entry.js +1 -7
  22. package/dist/cjs/ptc-card_2.cjs.entry.js +6 -5
  23. package/dist/cjs/ptc-case-studies-slider.cjs.entry.js +1 -1
  24. package/dist/cjs/ptc-close-icon_2.cjs.entry.js +24 -24
  25. package/dist/cjs/ptc-data-lookup.cjs.entry.js +1 -2
  26. package/dist/cjs/ptc-featured-list.cjs.entry.js +1 -1
  27. package/dist/cjs/ptc-filter-dropdown_4.cjs.entry.js +1 -1
  28. package/dist/cjs/ptc-filter-level-theater.cjs.entry.js +1 -1
  29. package/dist/cjs/{ptc-form-checkbox_2.cjs.entry.js → ptc-form-checkbox_4.cjs.entry.js} +724 -6
  30. package/dist/cjs/ptc-homepage-video-background.cjs.entry.js +1 -1
  31. package/dist/cjs/ptc-image-download-strip.cjs.entry.js +1 -1
  32. package/dist/cjs/ptc-img.cjs.entry.js +216 -0
  33. package/dist/cjs/ptc-jumbotron.cjs.entry.js +190 -0
  34. package/dist/cjs/ptc-modal-quiz.cjs.entry.js +4 -1
  35. package/dist/cjs/ptc-nav-card.cjs.entry.js +1 -1
  36. package/dist/cjs/ptc-podcast-card.cjs.entry.js +1 -1
  37. package/dist/cjs/ptc-preloader.cjs.entry.js +1 -1
  38. package/dist/cjs/ptc-previous-url.cjs.entry.js +11 -2
  39. package/dist/cjs/ptc-pricing-packaging-table.cjs.entry.js +37 -21
  40. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +1 -1
  41. package/dist/cjs/ptc-product-card.cjs.entry.js +1 -1
  42. package/dist/cjs/ptc-product-category.cjs.entry.js +1 -1
  43. package/dist/cjs/ptc-product-highlight-card.cjs.entry.js +1 -1
  44. package/dist/cjs/ptc-readmore-char.cjs.entry.js +1 -1
  45. package/dist/cjs/ptc-readmore-v3.cjs.entry.js +1 -1
  46. package/dist/cjs/ptc-subnav-v2.cjs.entry.js +433 -0
  47. package/dist/cjs/ptc-tooltip-v2.cjs.entry.js +1 -1
  48. package/dist/cjs/ptc-tooltip.cjs.entry.js +113 -0
  49. package/dist/cjs/ptc-value-led-speed-bump.cjs.entry.js +1 -1
  50. package/dist/cjs/ptc-value-prop-card.cjs.entry.js +1 -1
  51. package/dist/cjs/ptc-white-paper.cjs.entry.js +19 -9
  52. package/dist/cjs/ptcw-design.cjs.js +1 -1
  53. package/dist/collection/collection-manifest.json +1 -0
  54. package/dist/collection/components/buying-option-card/buying-option-card.css +2 -0
  55. package/dist/collection/components/buying-option-cards-slider/buying-option-cards-slider.css +9 -35
  56. package/dist/collection/components/buying-option-cards-slider/buying-option-cards-slider.js +14 -7
  57. package/dist/collection/components/dynamic-box-bundle/dynamic-box-bundle.js +3 -1
  58. package/dist/collection/components/icon-asset/media/designer-v6.0.7.svg +30 -2
  59. package/dist/collection/components/innovator-toggle-container/innovator-toggle-container.css +28 -2
  60. package/dist/collection/components/organism-bundles/blogs-search-section/blogs-search-section.js +4 -1
  61. package/dist/collection/components/organism-bundles/bundle-featured-list/featured-list.css +24 -0
  62. package/dist/collection/components/organism-bundles/form/modal-from-example/modal-form-example.css +26 -0
  63. package/dist/collection/components/organism-bundles/form/modal-from-example/modal-form-example.js +114 -0
  64. package/dist/collection/components/organism-bundles/homepage-toggled-content/homepage-toggled-content.js +3 -1
  65. package/dist/collection/components/ptc-announcement/ptc-announcement.js +2 -1
  66. package/dist/collection/components/ptc-bio-card/ptc-bio-card.css +24 -0
  67. package/dist/collection/components/ptc-button/ptc-button.css +0 -2
  68. package/dist/collection/components/ptc-card/ptc-card.css +15 -1
  69. package/dist/collection/components/ptc-card-content/ptc-card-content.css +3 -45
  70. package/dist/collection/components/ptc-card-content/ptc-card-content.js +2 -26
  71. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +3 -17
  72. package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.css +24 -0
  73. package/dist/collection/components/ptc-featured-list/ptc-featured-list.css +24 -0
  74. package/dist/collection/components/ptc-filter-dropdown/ptc-filter-dropdown.css +1 -0
  75. package/dist/collection/components/ptc-filter-level-theater/ptc-filter-level-theater.css +24 -0
  76. package/dist/collection/components/ptc-homepage-video-background/ptc-homepage-video-background.css +2 -1
  77. package/dist/collection/components/ptc-image-download-strip/ptc-image-download-strip.css +2 -1
  78. package/dist/collection/components/ptc-img/ptc-img.css +76 -0
  79. package/dist/collection/components/ptc-img/ptc-img.js +132 -7
  80. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.css +26 -3
  81. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +28 -4
  82. package/dist/collection/components/ptc-modal/ptc-modal.css +5 -0
  83. package/dist/collection/components/ptc-modal/ptc-modal.js +25 -25
  84. package/dist/collection/components/ptc-modal-quiz/ptc-modal-quiz.js +4 -1
  85. package/dist/collection/components/ptc-nav-card/ptc-nav-card.css +5 -2
  86. package/dist/collection/components/ptc-para/ptc-para.css +3 -0
  87. package/dist/collection/components/ptc-para/ptc-para.js +2 -2
  88. package/dist/collection/components/ptc-picture/ptc-picture.js +0 -40
  89. package/dist/collection/components/ptc-podcast-card/ptc-podcast-card.css +24 -0
  90. package/dist/collection/components/ptc-preloader/ptc-preloader.css +147 -111
  91. package/dist/collection/components/ptc-preloader/ptc-preloader.js +1 -1
  92. package/dist/collection/components/ptc-preloader-section/ptc-preloader-section.css +1 -2
  93. package/dist/collection/components/ptc-preloader-section/ptc-preloader-section.js +4 -3
  94. package/dist/collection/components/ptc-previous-url/ptc-previous-url.css +16 -0
  95. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +28 -1
  96. package/dist/collection/components/ptc-pricing-packaging-table/ptc-pricing-packaging-table.js +37 -21
  97. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +1 -1
  98. package/dist/collection/components/ptc-product-card/ptc-product-card.css +24 -0
  99. package/dist/collection/components/ptc-product-category/ptc-product-category.css +24 -0
  100. package/dist/collection/components/ptc-product-highlight-card/ptc-product-highlight-card.css +24 -0
  101. package/dist/collection/components/ptc-readmore-char/ptc-readmore-char.css +24 -0
  102. package/dist/collection/components/ptc-readmore-v3/ptc-readmore-v3.css +24 -0
  103. package/dist/collection/components/ptc-subnav-v2/ptc-subnav-v2.css +110 -115
  104. package/dist/collection/components/ptc-subnav-v2/ptc-subnav-v2.js +150 -249
  105. package/dist/collection/components/ptc-textfield/ptc-textfield.css +1 -1
  106. package/dist/collection/components/ptc-textfield/ptc-textfield.js +3 -5
  107. package/dist/collection/components/ptc-tooltip-v2/ptc-tooltip-v2.css +24 -0
  108. package/dist/collection/components/ptc-value-led-speed-bump/ptc-value-led-speed-bump.css +24 -0
  109. package/dist/collection/components/ptc-value-prop-card/ptc-value-prop-card.css +2 -1
  110. package/dist/collection/components/ptc-white-paper/ptc-white-paper.css +29 -4
  111. package/dist/collection/components/ptc-white-paper/ptc-white-paper.js +18 -8
  112. package/dist/collection/stories/organisms/eSupport/CaseTracker/preview.stories.js +45 -0
  113. package/dist/collection/stories/organisms/eSupport/SupportArticle/preview.stories.js +47 -0
  114. package/dist/collection/stories/organisms/eSupport/SupportPage/preview.stories.js +157 -0
  115. package/dist/collection/stories/organisms/ptc/Subanv New/preview.stories.js +338 -0
  116. package/dist/custom-elements/index.d.ts +6 -0
  117. package/dist/custom-elements/index.js +516 -411
  118. package/dist/esm/academic-form-test.entry.js +1 -1
  119. package/dist/esm/author-listing-example.entry.js +1 -1
  120. package/dist/esm/blog-detail-content_2.entry.js +1 -1
  121. package/dist/esm/blog-detail-layout.entry.js +1 -1
  122. package/dist/esm/blogs-search-section.entry.js +5 -2
  123. package/dist/esm/bundle-example.entry.js +1 -1
  124. package/dist/esm/bundle-jumbotron-example.entry.js +1 -1
  125. package/dist/esm/buying-option-card.entry.js +2 -2
  126. package/dist/esm/buying-option-cards-slider.entry.js +16 -9
  127. package/dist/esm/{component-274da230.js → component-80f298b4.js} +2592 -793
  128. package/dist/esm/dropdown-item.entry.js +1 -1
  129. package/dist/esm/dynamic-box-bundle.entry.js +4 -2
  130. package/dist/esm/embedded-form.entry.js +1 -1
  131. package/dist/esm/event-jumbotron-example.entry.js +1 -1
  132. package/dist/esm/event-podcast-slider-example.entry.js +1 -1
  133. package/dist/esm/featured-events-slider-example.entry.js +1 -1
  134. package/dist/esm/featured-list.entry.js +2 -2
  135. package/dist/esm/fl-tab-content_3.entry.js +1 -1
  136. package/dist/esm/footer-form.entry.js +1 -1
  137. package/dist/esm/homepage-clickable-tab.entry.js +1 -1
  138. package/dist/esm/homepage-jumbotron.entry.js +1 -1
  139. package/dist/esm/homepage-toggled-content.entry.js +4 -2
  140. package/dist/esm/icon-asset.entry.js +61 -0
  141. package/dist/esm/{index-0bf594c4.js → index-c83db688.js} +1 -1
  142. package/dist/esm/innovator-toggle-container.entry.js +2 -2
  143. package/dist/esm/interfaces-7c0243be.js +12 -0
  144. package/dist/esm/jumbotron-sub-menu.entry.js +1 -1
  145. package/dist/esm/jumbotron-sub-mune.entry.js +1 -1
  146. package/dist/esm/list-item.entry.js +48 -0
  147. package/dist/esm/loader.js +3 -3
  148. package/dist/esm/max-width-container.entry.js +50 -0
  149. package/dist/esm/modal-form-example.entry.js +105 -0
  150. package/dist/esm/most-popular-news.entry.js +1 -1
  151. package/dist/esm/my-component.entry.js +1 -1
  152. package/dist/esm/news-search-result.entry.js +1 -1
  153. package/dist/esm/ptc-accordion-item.entry.js +1 -1
  154. package/dist/esm/ptc-accordion.entry.js +1 -1
  155. package/dist/esm/ptc-announcement.entry.js +3 -2
  156. package/dist/esm/ptc-back-to-top.entry.js +1 -1
  157. package/dist/esm/ptc-background-video.entry.js +148 -0
  158. package/dist/esm/ptc-badge.entry.js +1 -1
  159. package/dist/esm/ptc-bio-card.entry.js +2 -2
  160. package/dist/esm/ptc-breadcrumb.entry.js +49 -0
  161. package/dist/esm/ptc-brightcov-video.entry.js +1 -1
  162. package/dist/esm/ptc-button_5.entry.js +589 -0
  163. package/dist/esm/ptc-card-bottom_2.entry.js +4 -18
  164. package/dist/esm/ptc-card-content.entry.js +2 -8
  165. package/dist/esm/ptc-card_2.entry.js +7 -6
  166. package/dist/esm/ptc-case-studies-slider.entry.js +2 -2
  167. package/dist/esm/ptc-checkbox-group.entry.js +1 -1
  168. package/dist/esm/ptc-checkbox.entry.js +1 -1
  169. package/dist/esm/ptc-close-icon_2.entry.js +25 -25
  170. package/dist/esm/ptc-collapse-list.entry.js +1 -1
  171. package/dist/esm/ptc-container.entry.js +1 -1
  172. package/dist/esm/ptc-countdown.entry.js +1 -1
  173. package/dist/esm/ptc-data-lookup.entry.js +2 -3
  174. package/dist/esm/ptc-date.entry.js +1 -1
  175. package/dist/esm/ptc-dropdown.entry.js +1 -1
  176. package/dist/esm/ptc-dynamic-card.entry.js +1 -1
  177. package/dist/esm/ptc-ellipsis-dropdown.entry.js +1 -1
  178. package/dist/esm/ptc-embedded-quiz.entry.js +1 -1
  179. package/dist/esm/ptc-enhanced-product-listing-card.entry.js +1 -1
  180. package/dist/esm/ptc-featured-list.entry.js +2 -2
  181. package/dist/esm/ptc-filter-dropdown_4.entry.js +2 -2
  182. package/dist/esm/ptc-filter-level-theater.entry.js +2 -2
  183. package/dist/esm/ptc-filter-tag_2.entry.js +1 -1
  184. package/dist/esm/ptc-footer.entry.js +1 -1
  185. package/dist/esm/{ptc-form-checkbox_2.entry.js → ptc-form-checkbox_4.entry.js} +724 -8
  186. package/dist/esm/ptc-form-radio-button.entry.js +1 -1
  187. package/dist/esm/ptc-form-radio-group.entry.js +1 -1
  188. package/dist/esm/ptc-form.entry.js +1 -1
  189. package/dist/esm/ptc-hero-footer-cta.entry.js +1 -1
  190. package/dist/esm/ptc-hero.entry.js +1 -1
  191. package/dist/esm/ptc-homepage-image-feature.entry.js +1 -1
  192. package/dist/esm/ptc-homepage-video-background.entry.js +2 -2
  193. package/dist/esm/ptc-icon-card-slider-example.entry.js +1 -1
  194. package/dist/esm/ptc-icon-card.entry.js +1 -1
  195. package/dist/esm/ptc-icon-component.entry.js +1 -1
  196. package/dist/esm/ptc-icon-list.entry.js +1 -1
  197. package/dist/esm/ptc-icon-minimize.entry.js +1 -1
  198. package/dist/esm/ptc-image-download-strip.entry.js +2 -2
  199. package/dist/esm/ptc-img.entry.js +212 -0
  200. package/dist/esm/ptc-info-tile.entry.js +1 -1
  201. package/dist/esm/ptc-inline-cta.entry.js +1 -1
  202. package/dist/esm/ptc-jumbotron.entry.js +186 -0
  203. package/dist/esm/ptc-link.entry.js +1 -1
  204. package/dist/esm/ptc-list.entry.js +1 -1
  205. package/dist/esm/ptc-media-card.entry.js +1 -1
  206. package/dist/esm/ptc-minimized-nav.entry.js +1 -1
  207. package/dist/esm/ptc-mobile-select.entry.js +1 -1
  208. package/dist/esm/ptc-modal-quiz.entry.js +5 -2
  209. package/dist/esm/ptc-nav-card.entry.js +2 -2
  210. package/dist/esm/ptc-nav-link.entry.js +1 -1
  211. package/dist/esm/ptc-nav-pills.entry.js +1 -1
  212. package/dist/esm/ptc-nav-skip-to-content.entry.js +1 -1
  213. package/dist/esm/ptc-nav-slider.entry.js +1 -1
  214. package/dist/esm/ptc-nav-submenu.entry.js +1 -1
  215. package/dist/esm/ptc-nav-tile.entry.js +1 -1
  216. package/dist/esm/ptc-news.entry.js +1 -1
  217. package/dist/esm/ptc-office-location-card.entry.js +1 -1
  218. package/dist/esm/ptc-office-locations.entry.js +1 -1
  219. package/dist/esm/ptc-overlay.entry.js +1 -1
  220. package/dist/esm/ptc-podcast-card.entry.js +2 -2
  221. package/dist/esm/ptc-preferance-center-form.entry.js +1 -1
  222. package/dist/esm/ptc-preloader.entry.js +2 -2
  223. package/dist/esm/ptc-previous-url.entry.js +12 -3
  224. package/dist/esm/ptc-pricing-add-on-card.entry.js +1 -1
  225. package/dist/esm/ptc-pricing-add-on-section.entry.js +1 -1
  226. package/dist/esm/ptc-pricing-block.entry.js +1 -1
  227. package/dist/esm/ptc-pricing-packaging-table.entry.js +38 -22
  228. package/dist/esm/ptc-pricing-tabs.entry.js +2 -2
  229. package/dist/esm/ptc-product-card.entry.js +2 -2
  230. package/dist/esm/ptc-product-category.entry.js +2 -2
  231. package/dist/esm/ptc-product-dropdown.entry.js +1 -1
  232. package/dist/esm/ptc-product-highlight-card.entry.js +2 -2
  233. package/dist/esm/ptc-product-list.entry.js +1 -1
  234. package/dist/esm/ptc-product-sidebar.entry.js +1 -1
  235. package/dist/esm/ptc-progress-bar.entry.js +1 -1
  236. package/dist/esm/ptc-quantity-counter.entry.js +1 -1
  237. package/dist/esm/ptc-quote.entry.js +1 -1
  238. package/dist/esm/ptc-readmore-char.entry.js +2 -2
  239. package/dist/esm/ptc-readmore-new.entry.js +1 -1
  240. package/dist/esm/ptc-readmore-v3.entry.js +2 -2
  241. package/dist/esm/ptc-readmore.entry.js +1 -1
  242. package/dist/esm/ptc-related-card-rail.entry.js +1 -1
  243. package/dist/esm/ptc-responsive-wrapper.entry.js +1 -1
  244. package/dist/esm/ptc-scroll-button.entry.js +1 -1
  245. package/dist/esm/ptc-search-field.entry.js +1 -1
  246. package/dist/esm/ptc-seo-title.entry.js +1 -1
  247. package/dist/esm/ptc-shopping-cart.entry.js +1 -1
  248. package/dist/esm/ptc-showcase-card.entry.js +1 -1
  249. package/dist/esm/ptc-skeleton.entry.js +1 -1
  250. package/dist/esm/ptc-slit-card.entry.js +1 -1
  251. package/dist/esm/ptc-social-icons-footer.entry.js +1 -1
  252. package/dist/esm/ptc-social-icons.entry.js +1 -1
  253. package/dist/esm/ptc-span.entry.js +1 -1
  254. package/dist/esm/ptc-square-card.entry.js +1 -1
  255. package/dist/esm/ptc-sticky-icons.entry.js +1 -1
  256. package/dist/esm/ptc-sticky-section.entry.js +1 -1
  257. package/dist/esm/ptc-sticky-title.entry.js +1 -1
  258. package/dist/esm/ptc-subnav-card.entry.js +1 -1
  259. package/dist/esm/ptc-subnav-v2.entry.js +429 -0
  260. package/dist/esm/ptc-subnav.entry.js +1 -1
  261. package/dist/esm/ptc-svg-btn.entry.js +1 -1
  262. package/dist/esm/ptc-tab-list.entry.js +1 -1
  263. package/dist/esm/ptc-tab.entry.js +1 -1
  264. package/dist/esm/ptc-tabs.entry.js +1 -1
  265. package/dist/esm/ptc-text-copy-with-background.entry.js +1 -1
  266. package/dist/esm/ptc-theater-video-modal.entry.js +1 -1
  267. package/dist/esm/ptc-tooltip-v2.entry.js +2 -2
  268. package/dist/esm/ptc-tooltip-v3.entry.js +1 -1
  269. package/dist/esm/ptc-tooltip.entry.js +109 -0
  270. package/dist/esm/ptc-two-column-media.entry.js +1 -1
  271. package/dist/esm/ptc-value-led-card.entry.js +1 -1
  272. package/dist/esm/ptc-value-led-content-highlight.entry.js +1 -1
  273. package/dist/esm/ptc-value-led-content.entry.js +1 -1
  274. package/dist/esm/ptc-value-led-intro.entry.js +1 -1
  275. package/dist/esm/ptc-value-led-layout.entry.js +1 -1
  276. package/dist/esm/ptc-value-led-speed-bump.entry.js +2 -2
  277. package/dist/esm/ptc-value-prop-card.entry.js +2 -2
  278. package/dist/esm/ptc-video-embed.entry.js +1 -1
  279. package/dist/esm/ptc-white-paper.entry.js +20 -10
  280. package/dist/esm/ptcw-design.js +3 -3
  281. package/dist/esm/sequential-bundle-example.entry.js +1 -1
  282. package/dist/esm/sequential-bundle.entry.js +1 -1
  283. package/dist/esm/storefront-enhanced-product-list-alt-example.entry.js +1 -1
  284. package/dist/esm/storefront-enhanced-product-list-example.entry.js +1 -1
  285. package/dist/esm/tab-content.entry.js +1 -1
  286. package/dist/esm/tab-header.entry.js +1 -1
  287. package/dist/ptcw-design/media/designer-v6.0.7.svg +30 -2
  288. package/dist/ptcw-design/{p-8b6d2c59.entry.js → p-02622aa7.entry.js} +1 -1
  289. package/dist/ptcw-design/{p-a0d6fc14.entry.js → p-0451b768.entry.js} +1 -1
  290. package/dist/ptcw-design/p-04891836.entry.js +1 -0
  291. package/dist/ptcw-design/{p-74a845fd.entry.js → p-04aae3f5.entry.js} +1 -1
  292. package/dist/ptcw-design/{p-c9a73ad1.entry.js → p-04f0b1ba.entry.js} +1 -1
  293. package/dist/ptcw-design/p-086ab73a.entry.js +1 -0
  294. package/dist/ptcw-design/p-0a86d91a.entry.js +1 -0
  295. package/dist/ptcw-design/{p-e8b51e7d.entry.js → p-0a9ee6c2.entry.js} +1 -1
  296. package/dist/ptcw-design/{p-c80265d9.entry.js → p-0c914932.entry.js} +1 -1
  297. package/dist/ptcw-design/{p-f004e5de.entry.js → p-0ddf2a09.entry.js} +1 -1
  298. package/dist/ptcw-design/{p-a31f22a1.entry.js → p-0df868d2.entry.js} +1 -1
  299. package/dist/ptcw-design/{p-36d6e662.entry.js → p-13e338a5.entry.js} +1 -1
  300. package/dist/ptcw-design/p-1519b36f.entry.js +1 -0
  301. package/dist/ptcw-design/{p-8cdcfb51.entry.js → p-15e36f30.entry.js} +1 -1
  302. package/dist/ptcw-design/p-17b8281a.entry.js +1 -0
  303. package/dist/ptcw-design/{p-f418ef26.entry.js → p-18d699f0.entry.js} +1 -1
  304. package/dist/ptcw-design/{p-7815e38b.entry.js → p-1bffeaed.entry.js} +1 -1
  305. package/dist/ptcw-design/{p-908ad455.entry.js → p-1c26f390.entry.js} +1 -1
  306. package/dist/ptcw-design/{p-83632220.entry.js → p-1e32a493.entry.js} +1 -1
  307. package/dist/ptcw-design/{p-d428ba40.entry.js → p-1f0daed2.entry.js} +1 -1
  308. package/dist/ptcw-design/{p-2fd01953.entry.js → p-21fa5abe.entry.js} +1 -1
  309. package/dist/ptcw-design/{p-c9762c88.entry.js → p-23cb5b5b.entry.js} +1 -1
  310. package/dist/ptcw-design/{p-a22d7ae8.entry.js → p-257a68df.entry.js} +1 -1
  311. package/dist/ptcw-design/p-260ecfef.entry.js +1 -0
  312. package/dist/ptcw-design/p-2670ac97.entry.js +1 -0
  313. package/dist/ptcw-design/{p-14c77b5e.entry.js → p-27e47c25.entry.js} +1 -1
  314. package/dist/ptcw-design/{p-f20e4230.entry.js → p-2a22123e.entry.js} +1 -1
  315. package/dist/ptcw-design/{p-f4ae5a99.entry.js → p-2b08a37d.entry.js} +1 -1
  316. package/dist/ptcw-design/{p-315b7885.entry.js → p-2c287230.entry.js} +1 -1
  317. package/dist/ptcw-design/{p-54891548.entry.js → p-2c2f895a.entry.js} +1 -1
  318. package/dist/ptcw-design/p-2c8faf9a.entry.js +1 -0
  319. package/dist/ptcw-design/p-2d00fefd.entry.js +1 -0
  320. package/dist/ptcw-design/p-32bec5ef.entry.js +1 -0
  321. package/dist/ptcw-design/p-349f43d5.entry.js +1 -0
  322. package/dist/ptcw-design/p-3572eccc.entry.js +1 -0
  323. package/dist/ptcw-design/p-36a3eb03.entry.js +68 -0
  324. package/dist/ptcw-design/p-37f92bb4.entry.js +1 -0
  325. package/dist/ptcw-design/{p-a2710bbf.entry.js → p-3872fce7.entry.js} +1 -1
  326. package/dist/ptcw-design/p-390c0dee.entry.js +1 -0
  327. package/dist/ptcw-design/p-3ddb6c50.entry.js +1 -0
  328. package/dist/ptcw-design/p-456c5cbb.entry.js +1 -0
  329. package/dist/ptcw-design/p-46b47ed7.entry.js +1 -0
  330. package/dist/ptcw-design/{p-068b64a1.entry.js → p-46c518c8.entry.js} +1 -1
  331. package/dist/ptcw-design/{p-1e9f25fc.entry.js → p-46f67bec.entry.js} +1 -1
  332. package/dist/ptcw-design/{p-a1dc7ae5.entry.js → p-4f3dea53.entry.js} +1 -1
  333. package/dist/ptcw-design/{p-ed5a467e.entry.js → p-4f4f97a6.entry.js} +1 -1
  334. package/dist/ptcw-design/{p-2f82de8f.entry.js → p-50569afd.entry.js} +1 -1
  335. package/dist/ptcw-design/{p-91e5c8d4.entry.js → p-506dac1f.entry.js} +1 -1
  336. package/dist/ptcw-design/p-53a96796.entry.js +1 -0
  337. package/dist/ptcw-design/{p-bca81995.entry.js → p-560b05a5.entry.js} +1 -1
  338. package/dist/ptcw-design/p-567535fb.entry.js +1 -0
  339. package/dist/ptcw-design/{p-c8de7309.entry.js → p-575861b3.entry.js} +1 -1
  340. package/dist/ptcw-design/{p-ec395ae9.entry.js → p-5877f093.entry.js} +1 -1
  341. package/dist/ptcw-design/{p-07b46e6e.entry.js → p-58909b95.entry.js} +1 -1
  342. package/dist/ptcw-design/{p-cab0274c.entry.js → p-5946d7c9.entry.js} +1 -1
  343. package/dist/ptcw-design/{p-807ad5c4.entry.js → p-5980d65d.entry.js} +1 -1
  344. package/dist/ptcw-design/p-5cf5b9f8.entry.js +1 -0
  345. package/dist/ptcw-design/{p-7c6d6a5e.entry.js → p-5dd538c4.entry.js} +1 -1
  346. package/dist/ptcw-design/p-5e4c1edf.entry.js +1 -0
  347. package/dist/ptcw-design/p-5ec17b43.entry.js +1 -0
  348. package/dist/ptcw-design/p-60d001c8.entry.js +1 -0
  349. package/dist/ptcw-design/{p-5fb671ee.entry.js → p-61d28206.entry.js} +1 -1
  350. package/dist/ptcw-design/{p-fa045097.entry.js → p-62e3cd51.entry.js} +1 -1
  351. package/dist/ptcw-design/{p-3e13f29c.entry.js → p-66ecd7b9.entry.js} +1 -1
  352. package/dist/ptcw-design/p-672a349f.js +336 -0
  353. package/dist/ptcw-design/{p-575c7fc0.entry.js → p-6aa9ed95.entry.js} +1 -1
  354. package/dist/ptcw-design/{p-eabf87be.entry.js → p-6ac4cfab.entry.js} +1 -1
  355. package/dist/ptcw-design/p-6b9d075f.entry.js +1 -0
  356. package/dist/ptcw-design/{p-7a9288d1.entry.js → p-7235425a.entry.js} +1 -1
  357. package/dist/ptcw-design/p-74097f89.entry.js +1 -0
  358. package/dist/ptcw-design/{p-522cb451.entry.js → p-757954b2.entry.js} +1 -1
  359. package/dist/ptcw-design/{p-3e13b735.entry.js → p-76d98c5a.entry.js} +1 -1
  360. package/dist/ptcw-design/{p-2fdd81d4.entry.js → p-7714bbaf.entry.js} +1 -1
  361. package/dist/ptcw-design/p-7834cfee.entry.js +1 -0
  362. package/dist/ptcw-design/p-799afee5.entry.js +1 -0
  363. package/dist/ptcw-design/{p-ecfc8211.entry.js → p-7a1db471.entry.js} +1 -1
  364. package/dist/ptcw-design/{p-183ba1ca.entry.js → p-7d29a418.entry.js} +1 -1
  365. package/dist/ptcw-design/p-7fe4d383.entry.js +1 -0
  366. package/dist/ptcw-design/{p-a974f98f.entry.js → p-8191928d.entry.js} +1 -1
  367. package/dist/ptcw-design/p-82f766d2.entry.js +1 -0
  368. package/dist/ptcw-design/{p-ff369ed7.entry.js → p-84c15835.entry.js} +1 -1
  369. package/dist/ptcw-design/{p-3c52fabe.entry.js → p-8533988f.entry.js} +1 -1
  370. package/dist/ptcw-design/{p-1ab6201b.entry.js → p-85f32bf5.entry.js} +1 -1
  371. package/dist/ptcw-design/{p-bf2f9183.entry.js → p-89ba3dfd.entry.js} +1 -1
  372. package/dist/ptcw-design/{p-d0013567.entry.js → p-8b480abd.entry.js} +1 -1
  373. package/dist/ptcw-design/p-8fb48953.entry.js +1 -0
  374. package/dist/ptcw-design/p-9063956c.entry.js +1 -0
  375. package/dist/ptcw-design/p-90f1a7af.entry.js +1 -0
  376. package/dist/ptcw-design/{p-cf0f6559.entry.js → p-927373d4.entry.js} +1 -1
  377. package/dist/ptcw-design/{p-2fa5814b.entry.js → p-92ad78c5.entry.js} +1 -1
  378. package/dist/ptcw-design/{p-e1bd2c43.entry.js → p-92e76318.entry.js} +1 -1
  379. package/dist/ptcw-design/{p-80c56c81.entry.js → p-931650bb.entry.js} +1 -1
  380. package/dist/ptcw-design/{p-2ba77e9d.entry.js → p-9354b7fd.entry.js} +1 -1
  381. package/dist/ptcw-design/p-96f346c4.entry.js +1 -0
  382. package/dist/ptcw-design/p-97eb1025.entry.js +1 -0
  383. package/dist/ptcw-design/{p-ce125ef2.entry.js → p-98610430.entry.js} +1 -1
  384. package/dist/ptcw-design/p-99daf693.entry.js +1 -0
  385. package/dist/ptcw-design/{p-8eb36507.entry.js → p-9a335b5b.entry.js} +1 -1
  386. package/dist/ptcw-design/{p-0abb6e77.entry.js → p-9ac99185.entry.js} +1 -1
  387. package/dist/ptcw-design/{p-290012e3.entry.js → p-9b26ea67.entry.js} +1 -1
  388. package/dist/ptcw-design/{p-681d26ef.entry.js → p-9ca635fa.entry.js} +1 -1
  389. package/dist/ptcw-design/{p-6d628113.entry.js → p-9de963f8.entry.js} +1 -1
  390. package/dist/ptcw-design/{p-6251a6d6.entry.js → p-9e4e21a4.entry.js} +1 -1
  391. package/dist/ptcw-design/{p-0ed4609e.entry.js → p-9ef2b1e7.entry.js} +1 -1
  392. package/dist/ptcw-design/{p-3596ce5a.entry.js → p-9fb21bdf.entry.js} +1 -1
  393. package/dist/ptcw-design/{p-afb5bdb9.entry.js → p-a04bedc2.entry.js} +1 -1
  394. package/dist/ptcw-design/{p-dadbab48.entry.js → p-a0bf3dd2.entry.js} +1 -1
  395. package/dist/ptcw-design/{p-e2e33ddb.entry.js → p-a37c5209.entry.js} +1 -1
  396. package/dist/ptcw-design/{p-b6cc4c2a.entry.js → p-a41c7e39.entry.js} +1 -1
  397. package/dist/ptcw-design/{p-dabb1b70.entry.js → p-a54c6da5.entry.js} +1 -1
  398. package/dist/ptcw-design/{p-be00fb74.entry.js → p-a7cb3851.entry.js} +1 -1
  399. package/dist/ptcw-design/{p-ed53cb3a.entry.js → p-a8304a3e.entry.js} +1 -1
  400. package/dist/ptcw-design/{p-de663192.entry.js → p-a8504f11.entry.js} +1 -1
  401. package/dist/ptcw-design/{p-e50a5a46.entry.js → p-a993c0a6.entry.js} +1 -1
  402. package/dist/ptcw-design/{p-c5417010.entry.js → p-aac082cf.entry.js} +1 -1
  403. package/dist/ptcw-design/{p-6f1cc5e5.entry.js → p-ab4906a7.entry.js} +1 -1
  404. package/dist/ptcw-design/{p-944c5be8.js → p-ac75c7ad.js} +1 -1
  405. package/dist/ptcw-design/{p-e249cd90.entry.js → p-ac7b2779.entry.js} +1 -1
  406. package/dist/ptcw-design/{p-b293a0b1.entry.js → p-aea09a70.entry.js} +1 -1
  407. package/dist/ptcw-design/p-b06bc0a1.entry.js +1 -0
  408. package/dist/ptcw-design/{p-b82dd7f9.entry.js → p-b19cda95.entry.js} +1 -1
  409. package/dist/ptcw-design/{p-79762cf6.entry.js → p-b436f56d.entry.js} +1 -1
  410. package/dist/ptcw-design/p-b684ca9d.entry.js +1 -0
  411. package/dist/ptcw-design/p-b8ee8699.entry.js +1 -0
  412. package/dist/ptcw-design/{p-ca039722.entry.js → p-baeee2b4.entry.js} +1 -1
  413. package/dist/ptcw-design/p-bb9a879f.entry.js +1 -0
  414. package/dist/ptcw-design/{p-e1373325.entry.js → p-bd3d71f1.entry.js} +1 -1
  415. package/dist/ptcw-design/{p-73293d32.entry.js → p-bf84ecc0.entry.js} +1 -1
  416. package/dist/ptcw-design/{p-9a28ded2.entry.js → p-bfacfe67.entry.js} +1 -1
  417. package/dist/ptcw-design/{p-fb0c3eeb.entry.js → p-c061b32d.entry.js} +1 -1
  418. package/dist/ptcw-design/p-c09a8288.entry.js +1 -0
  419. package/dist/ptcw-design/{p-b9966f20.entry.js → p-c160bda4.entry.js} +1 -1
  420. package/dist/ptcw-design/{p-5344a1f4.entry.js → p-c4674bc8.entry.js} +1 -1
  421. package/dist/ptcw-design/{p-dd38bf84.entry.js → p-c5f42895.entry.js} +1 -1
  422. package/dist/ptcw-design/{p-61a5012d.entry.js → p-c631608f.entry.js} +1 -1
  423. package/dist/ptcw-design/{p-e87a4ff8.entry.js → p-c68d31c6.entry.js} +1 -1
  424. package/dist/ptcw-design/{p-43756439.entry.js → p-c6a0dd99.entry.js} +1 -1
  425. package/dist/ptcw-design/p-c89030e4.entry.js +1 -0
  426. package/dist/ptcw-design/p-cb0e3ec2.entry.js +1 -0
  427. package/dist/ptcw-design/{p-384548ef.entry.js → p-cc652ebe.entry.js} +1 -1
  428. package/dist/ptcw-design/{p-d8c1a14a.entry.js → p-cc7d5eb7.entry.js} +1 -1
  429. package/dist/ptcw-design/{p-89da867f.entry.js → p-d391c01b.entry.js} +1 -1
  430. package/dist/ptcw-design/{p-75d8b6ec.entry.js → p-d74ccb19.entry.js} +1 -1
  431. package/dist/ptcw-design/{p-81736d6a.entry.js → p-d77531c8.entry.js} +1 -1
  432. package/dist/ptcw-design/{p-f5665cfe.entry.js → p-d8b2466d.entry.js} +1 -1
  433. package/dist/ptcw-design/{p-e880b556.entry.js → p-db0fc94d.entry.js} +1 -1
  434. package/dist/ptcw-design/p-de960790.entry.js +1 -0
  435. package/dist/ptcw-design/p-df66407c.entry.js +1 -0
  436. package/dist/ptcw-design/p-e01173ca.entry.js +1 -0
  437. package/dist/ptcw-design/p-e0e87d61.entry.js +1 -0
  438. package/dist/ptcw-design/{p-0bb3ea9a.entry.js → p-e235bf27.entry.js} +1 -1
  439. package/dist/ptcw-design/{p-53d2547b.entry.js → p-e3867512.entry.js} +1 -1
  440. package/dist/ptcw-design/{p-d1f57070.entry.js → p-e3bf092e.entry.js} +1 -1
  441. package/dist/ptcw-design/p-e7220c36.entry.js +1 -0
  442. package/dist/ptcw-design/{p-b1053240.entry.js → p-e73a1a0b.entry.js} +1 -1
  443. package/dist/ptcw-design/{p-1b3394a7.entry.js → p-e7c00e48.entry.js} +1 -1
  444. package/dist/ptcw-design/p-ee1183b2.js +1 -0
  445. package/dist/ptcw-design/{p-fe56e336.entry.js → p-ee91170c.entry.js} +1 -1
  446. package/dist/ptcw-design/{p-03e33d4a.entry.js → p-f010c07f.entry.js} +1 -1
  447. package/dist/ptcw-design/{p-e2da8109.entry.js → p-f2675bb0.entry.js} +1 -1
  448. package/dist/ptcw-design/{p-f2006b03.entry.js → p-f5c97ab2.entry.js} +1 -1
  449. package/dist/ptcw-design/{p-d6271974.entry.js → p-f5d8a3b1.entry.js} +1 -1
  450. package/dist/ptcw-design/p-f6b70f68.entry.js +1 -0
  451. package/dist/ptcw-design/{p-973c69d8.entry.js → p-fbd9c8fc.entry.js} +1 -1
  452. package/dist/ptcw-design/p-fd7e5935.entry.js +1 -0
  453. package/dist/ptcw-design/{p-e6ebc832.entry.js → p-fdee2cdc.entry.js} +1 -1
  454. package/dist/ptcw-design/p-ff66587b.entry.js +1 -0
  455. package/dist/ptcw-design/ptcw-design.css +4 -3
  456. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  457. package/dist/types/components/organism-bundles/form/modal-from-example/modal-form-example.d.ts +25 -0
  458. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +1 -2
  459. package/dist/types/components/ptc-img/ptc-img.d.ts +29 -1
  460. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +4 -0
  461. package/dist/types/components/ptc-modal/ptc-modal.d.ts +1 -1
  462. package/dist/types/components/ptc-para/ptc-para.d.ts +1 -1
  463. package/dist/types/components/ptc-picture/ptc-picture.d.ts +0 -2
  464. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +2 -0
  465. package/dist/types/components/ptc-pricing-packaging-table/ptc-pricing-packaging-table.d.ts +0 -1
  466. package/dist/types/components/ptc-subnav-v2/ptc-subnav-v2.d.ts +6 -32
  467. package/dist/types/components.d.ts +53 -11
  468. package/package.json +1 -1
  469. package/readme.md +5 -1
  470. package/dist/cjs/component-5b5b6a98.js +0 -1819
  471. package/dist/cjs/icon-asset_14.cjs.entry.js +0 -1911
  472. package/dist/cjs/ptc-multi-select_2.cjs.entry.js +0 -730
  473. package/dist/collection/stories/organisms/ptc/Subnav New/preview.stories.js +0 -360
  474. package/dist/esm/component-341e4eaa.js +0 -1802
  475. package/dist/esm/icon-asset_14.entry.js +0 -1894
  476. package/dist/esm/ptc-multi-select_2.entry.js +0 -725
  477. package/dist/ptcw-design/p-023bfe37.entry.js +0 -1
  478. package/dist/ptcw-design/p-0824f503.entry.js +0 -1
  479. package/dist/ptcw-design/p-0ec2a26d.entry.js +0 -1
  480. package/dist/ptcw-design/p-11e86045.entry.js +0 -1
  481. package/dist/ptcw-design/p-140c134e.entry.js +0 -1
  482. package/dist/ptcw-design/p-167380fc.entry.js +0 -1
  483. package/dist/ptcw-design/p-212cdacd.entry.js +0 -1
  484. package/dist/ptcw-design/p-2bc4bf65.entry.js +0 -1
  485. package/dist/ptcw-design/p-32bbcb5a.entry.js +0 -1
  486. package/dist/ptcw-design/p-33ead201.entry.js +0 -1
  487. package/dist/ptcw-design/p-39255f59.entry.js +0 -1
  488. package/dist/ptcw-design/p-3b481342.entry.js +0 -1
  489. package/dist/ptcw-design/p-3c941935.entry.js +0 -1
  490. package/dist/ptcw-design/p-46e31e30.entry.js +0 -1
  491. package/dist/ptcw-design/p-47aa1583.entry.js +0 -1
  492. package/dist/ptcw-design/p-5bbfd7b3.entry.js +0 -1
  493. package/dist/ptcw-design/p-60688db7.entry.js +0 -1
  494. package/dist/ptcw-design/p-60b45ae0.entry.js +0 -1
  495. package/dist/ptcw-design/p-63fc38cb.entry.js +0 -1
  496. package/dist/ptcw-design/p-6f0dc158.entry.js +0 -1
  497. package/dist/ptcw-design/p-752159e2.entry.js +0 -1
  498. package/dist/ptcw-design/p-7524411a.entry.js +0 -1
  499. package/dist/ptcw-design/p-79a6e764.entry.js +0 -1
  500. package/dist/ptcw-design/p-7b89a8e1.entry.js +0 -1
  501. package/dist/ptcw-design/p-809f3878.entry.js +0 -1
  502. package/dist/ptcw-design/p-83c3d6c9.entry.js +0 -1
  503. package/dist/ptcw-design/p-87a9a028.entry.js +0 -1
  504. package/dist/ptcw-design/p-87e4c337.entry.js +0 -1
  505. package/dist/ptcw-design/p-92ef47ef.entry.js +0 -1
  506. package/dist/ptcw-design/p-933ddad2.entry.js +0 -1
  507. package/dist/ptcw-design/p-9461c4eb.entry.js +0 -1
  508. package/dist/ptcw-design/p-973b06d1.entry.js +0 -1
  509. package/dist/ptcw-design/p-9d8a9a72.entry.js +0 -1
  510. package/dist/ptcw-design/p-ad4f4f33.entry.js +0 -1
  511. package/dist/ptcw-design/p-bdb2e42c.entry.js +0 -1
  512. package/dist/ptcw-design/p-be533f0d.js +0 -134
  513. package/dist/ptcw-design/p-bf15988f.entry.js +0 -68
  514. package/dist/ptcw-design/p-c1302aea.entry.js +0 -1
  515. package/dist/ptcw-design/p-c1513c3f.js +0 -203
  516. package/dist/ptcw-design/p-c7a2088b.entry.js +0 -1
  517. package/dist/ptcw-design/p-e51bb274.entry.js +0 -1
  518. package/dist/ptcw-design/p-ed16b8c9.entry.js +0 -1
  519. package/dist/ptcw-design/p-edaf241d.entry.js +0 -1
  520. package/dist/ptcw-design/p-fef688c2.entry.js +0 -1
@@ -1,21 +1,20 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  export class PtcSubnavV2 {
3
3
  constructor() {
4
- this.cachedNavItems = null;
5
- this.isSticky = false;
6
- this.originalTop = 0;
7
- this.placeholderElement = null;
8
- this.measurementElement = null;
9
4
  this.handleClickOutside = (event) => {
10
- if (!this.el.contains(event.target)) {
5
+ const target = event.target;
6
+ if (!this.el.contains(target)) {
11
7
  this.showOverflowMenu = false;
12
8
  }
13
9
  };
14
10
  this.handleKeyDown = (event) => {
15
- var _a;
11
+ // Handle Escape key to close dropdowns
16
12
  if (event.key === "Escape" && this.showOverflowMenu) {
17
13
  this.showOverflowMenu = false;
18
- (_a = this.overflowButton) === null || _a === void 0 ? void 0 : _a.focus();
14
+ // Return focus to the button that opened the menu
15
+ if (this.overflowButton) {
16
+ this.overflowButton.focus();
17
+ }
19
18
  }
20
19
  };
21
20
  this.handleScroll = () => {
@@ -45,81 +44,23 @@ export class PtcSubnavV2 {
45
44
  // Only update if different from current active
46
45
  if (activeSection !== this.currentActive) {
47
46
  this.currentActive = activeSection;
48
- }
49
- this.scrollThrottleTimeout = null;
50
- }, 16); // ~60fps throttling
51
- };
52
- this.initializeStickyPosition = () => {
53
- // Store the original position of the subnav
54
- const rect = this.el.getBoundingClientRect();
55
- this.originalTop = rect.top + window.scrollY;
56
- };
57
- this.handleStickyScroll = () => {
58
- // Throttle sticky scroll events for better performance
59
- if (this.stickyScrollTimeout) {
60
- return;
61
- }
62
- this.stickyScrollTimeout = window.setTimeout(() => {
63
- var _a;
64
- const scrollY = window.scrollY;
65
- // Check if we should make the subnav sticky
66
- const shouldBeSticky = scrollY >= this.originalTop;
67
- if (shouldBeSticky && !this.isSticky) {
68
- // Store the original height before making it fixed
69
- const originalHeight = this.el.offsetHeight;
70
- // Create placeholder element to maintain space
71
- this.placeholderElement = document.createElement("div");
72
- this.placeholderElement.style.height = `${originalHeight}px`;
73
- this.placeholderElement.style.width = "100%";
74
- this.placeholderElement.style.pointerEvents = "none";
75
- // Insert placeholder before the subnav
76
- (_a = this.el.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(this.placeholderElement, this.el);
77
- // Add transition class for smooth animation
78
- this.el.classList.add("sticky-transition");
79
- // Apply fixed positioning with smooth transition
80
- this.el.style.position = "fixed";
81
- this.el.style.top = "0";
82
- this.el.style.left = "0";
83
- this.el.style.right = "0";
84
- this.el.style.width = "100%";
85
- this.el.style.zIndex = "105";
86
- this.el.style.transform = "translateY(0)";
87
- this.isSticky = true;
88
- }
89
- else if (!shouldBeSticky && this.isSticky) {
90
- // Remove transition class and reset transform
91
- this.el.classList.remove("sticky-transition");
92
- this.el.style.transform = "";
93
- // Remove fixed positioning and restore original position
94
- this.el.style.position = "";
95
- this.el.style.top = "";
96
- this.el.style.left = "";
97
- this.el.style.right = "";
98
- this.el.style.width = "";
99
- this.el.style.zIndex = "";
100
- this.isSticky = false;
101
- // Remove placeholder element
102
- if (this.placeholderElement) {
103
- this.placeholderElement.remove();
104
- this.placeholderElement = null;
47
+ // Update mobile selected item if in mobile mode
48
+ if (this.isMobile) {
49
+ const activeItem = navItems.find((item) => item.id === activeSection);
50
+ if (activeItem) {
51
+ this.selectedMobileItem = activeItem;
52
+ }
105
53
  }
106
54
  }
107
- this.stickyScrollTimeout = null;
55
+ this.scrollThrottleTimeout = null;
108
56
  }, 16); // ~60fps throttling
109
57
  };
110
58
  this.handleResize = () => {
111
- this.navContainer && setTimeout(() => this.calculateVisibleItems(), 10);
112
- // Recalculate original position on resize
113
- if (!this.isSticky) {
114
- this.initializeStickyPosition();
115
- }
116
- else if (this.placeholderElement) {
117
- // Update placeholder height if sticky and resized
118
- const currentHeight = this.el.offsetHeight;
119
- this.placeholderElement.style.height = `${currentHeight}px`;
120
- // Update originalTop based on placeholder position (layout may have changed)
121
- const placeholderRect = this.placeholderElement.getBoundingClientRect();
122
- this.originalTop = placeholderRect.top + window.scrollY;
59
+ if (this.navContainer) {
60
+ // Add a small delay to ensure DOM has been updated
61
+ setTimeout(() => {
62
+ this.calculateVisibleItems();
63
+ }, 10);
123
64
  }
124
65
  };
125
66
  this.setupIntersectionObserver = () => {
@@ -156,6 +97,13 @@ export class PtcSubnavV2 {
156
97
  const sectionId = mostVisibleSection.target.id;
157
98
  if (sectionId && sectionId !== this.currentActive) {
158
99
  this.currentActive = sectionId;
100
+ // Update mobile selected item if in mobile mode
101
+ if (this.isMobile) {
102
+ const activeItem = navItems.find((item) => item.id === sectionId);
103
+ if (activeItem) {
104
+ this.selectedMobileItem = activeItem;
105
+ }
106
+ }
159
107
  }
160
108
  }
161
109
  }, 100); // Increased debounce time for better performance
@@ -172,76 +120,80 @@ export class PtcSubnavV2 {
172
120
  }
173
121
  });
174
122
  };
175
- this.setupResizeObserver = () => {
176
- // Observe the parent element for layout changes
177
- this.resizeObserver = new ResizeObserver(() => {
178
- // Recalculate sticky position when parent layout changes
179
- if (!this.isSticky) {
180
- this.initializeStickyPosition();
181
- }
182
- else if (this.placeholderElement) {
183
- // If sticky, update originalTop based on placeholder position
184
- const placeholderRect = this.placeholderElement.getBoundingClientRect();
185
- this.originalTop = placeholderRect.top + window.scrollY;
186
- }
187
- });
188
- // Observe the element's parent or the element itself
189
- if (this.el.parentElement) {
190
- this.resizeObserver.observe(this.el.parentElement);
191
- }
192
- };
193
123
  this.extractNavItemsFromSlots = () => {
124
+ // Look for slot content with nav-items in the light DOM
194
125
  const slotElement = this.el.querySelector('[slot="nav-items"]');
195
- if (!slotElement)
196
- return null;
197
- const links = slotElement.querySelectorAll("a");
198
- const items = Array.from(links)
199
- .map((link) => {
200
- var _a, _b;
201
- return ({
202
- id: ((_a = link.getAttribute("href")) === null || _a === void 0 ? void 0 : _a.substring(1)) || "",
203
- label: ((_b = link.textContent) === null || _b === void 0 ? void 0 : _b.trim()) || "",
204
- title: link.getAttribute("title") || undefined,
205
- trackerId: link.getAttribute("tracker-id") || undefined,
206
- });
207
- })
208
- .filter((item) => Boolean(item.id && item.label));
209
- return items.length > 0 ? items : null;
126
+ if (slotElement) {
127
+ const links = slotElement.querySelectorAll("a");
128
+ const items = Array.from(links)
129
+ .map((link) => {
130
+ var _a, _b;
131
+ return ({
132
+ id: ((_a = link.getAttribute("href")) === null || _a === void 0 ? void 0 : _a.substring(1)) || "",
133
+ label: ((_b = link.textContent) === null || _b === void 0 ? void 0 : _b.trim()) || "",
134
+ title: link.getAttribute("title") || "",
135
+ trackerId: link.getAttribute("tracker-id") || "",
136
+ });
137
+ })
138
+ .filter((item) => item.id && item.label);
139
+ if (items.length > 0) {
140
+ return items;
141
+ }
142
+ }
143
+ return null;
210
144
  };
211
145
  this.getNavItems = () => {
212
- // Return cached items if available
213
- if (this.cachedNavItems) {
214
- return this.cachedNavItems;
215
- }
216
146
  // Extract navigation items from slots (SEO-friendly approach)
217
147
  const slotItems = this.extractNavItemsFromSlots();
218
148
  if (slotItems) {
219
- this.cachedNavItems = slotItems;
220
149
  return slotItems;
221
150
  }
222
151
  // If navItems prop is provided, parse and use it (fallback)
223
- const propItems = this.parsePropNavItems();
224
- if (propItems) {
225
- this.cachedNavItems = propItems;
226
- return propItems;
152
+ if (this.navItems && this.navItems.trim()) {
153
+ try {
154
+ const parsedItems = JSON.parse(this.navItems);
155
+ // Validate that it's an array with proper structure
156
+ if (Array.isArray(parsedItems) && parsedItems.length > 0) {
157
+ // Ensure each item has required properties
158
+ const validItems = parsedItems.filter((item) => item &&
159
+ typeof item.id === "string" &&
160
+ typeof item.label === "string");
161
+ if (validItems.length > 0) {
162
+ return validItems;
163
+ }
164
+ }
165
+ }
166
+ catch (error) {
167
+ console.warn("Invalid navItems JSON provided to ptc-subnav-v2:", error);
168
+ }
227
169
  }
228
170
  // Return empty array if no navigation items found
229
171
  console.warn("No navigation items found in slots or props for ptc-subnav-v2");
230
172
  return [];
231
173
  };
174
+ this.calculateMobileDropdownItems = () => {
175
+ const navItems = this.getNavItems();
176
+ // Handle case where no navigation items are found
177
+ if (navItems.length === 0) {
178
+ this.mobileDropdownItems = [];
179
+ return;
180
+ }
181
+ const currentItem = this.selectedMobileItem || {
182
+ id: this.currentActive,
183
+ };
184
+ // Filter out the currently selected item from all nav items
185
+ this.mobileDropdownItems = navItems.filter((item) => item.id !== currentItem.id);
186
+ };
232
187
  this.hasActiveOverflowItem = () => {
233
188
  return this.overflowItems.some((item) => item.id === this.currentActive);
234
189
  };
235
- this.hasSubnavMenuRightContent = () => {
236
- const slotElement = this.el.querySelector('[slot="subnav-menu-right"]');
237
- return Boolean(slotElement === null || slotElement === void 0 ? void 0 : slotElement.children.length);
238
- };
239
190
  this.calculateVisibleItems = () => {
240
191
  const navItems = this.getNavItems();
241
192
  // Handle case where no navigation items are found
242
193
  if (navItems.length === 0) {
243
194
  this.visibleItems = [];
244
195
  this.overflowItems = [];
196
+ this.selectedMobileItem = null;
245
197
  return;
246
198
  }
247
199
  // Check if we're in mobile mode (below 767px)
@@ -255,6 +207,7 @@ export class PtcSubnavV2 {
255
207
  // On mobile, show only the current active item
256
208
  const activeItem = navItems.find((item) => item.id === this.currentActive) ||
257
209
  navItems[0];
210
+ this.selectedMobileItem = activeItem;
258
211
  this.visibleItems = [activeItem];
259
212
  this.overflowItems = navItems.filter((item) => item.id !== activeItem.id);
260
213
  }
@@ -275,21 +228,19 @@ export class PtcSubnavV2 {
275
228
  }
276
229
  let visibleCount = 0;
277
230
  let totalWidth = 0;
278
- // Create or reuse measurement element
279
- if (!this.measurementElement) {
280
- this.measurementElement = document.createElement("div");
281
- this.measurementElement.style.position = "absolute";
282
- this.measurementElement.style.visibility = "hidden";
283
- this.measurementElement.style.whiteSpace = "nowrap";
284
- this.measurementElement.style.fontSize = "14px";
285
- this.measurementElement.style.fontWeight = "700";
286
- this.measurementElement.style.padding = "20px 0 20px 0";
287
- }
288
- document.body.appendChild(this.measurementElement);
231
+ // Create temporary elements to measure width
232
+ const tempContainer = document.createElement("div");
233
+ tempContainer.style.position = "absolute";
234
+ tempContainer.style.visibility = "hidden";
235
+ tempContainer.style.whiteSpace = "nowrap";
236
+ tempContainer.style.fontSize = "14px";
237
+ tempContainer.style.fontWeight = "700";
238
+ tempContainer.style.padding = "20px 0 17px 0";
239
+ document.body.appendChild(tempContainer);
289
240
  for (let i = 0; i < navItems.length; i++) {
290
241
  const item = navItems[i];
291
- this.measurementElement.textContent = item.label;
292
- const itemWidth = this.measurementElement.offsetWidth + 32; // 32px for gap
242
+ tempContainer.textContent = item.label;
243
+ const itemWidth = tempContainer.offsetWidth + 32; // 32px for gap
293
244
  if (totalWidth + itemWidth <= availableWidth) {
294
245
  totalWidth += itemWidth;
295
246
  visibleCount++;
@@ -298,7 +249,7 @@ export class PtcSubnavV2 {
298
249
  break;
299
250
  }
300
251
  }
301
- document.body.removeChild(this.measurementElement);
252
+ document.body.removeChild(tempContainer);
302
253
  this.visibleItems = navItems.slice(0, visibleCount);
303
254
  this.overflowItems = navItems.slice(visibleCount);
304
255
  }
@@ -307,27 +258,19 @@ export class PtcSubnavV2 {
307
258
  };
308
259
  this.toggleOverflowMenu = () => {
309
260
  this.showOverflowMenu = !this.showOverflowMenu;
310
- // After opening, measure and decide alignment to avoid viewport overflow
311
- if (!this.showOverflowMenu) {
312
- return;
313
- }
314
- requestAnimationFrame(() => {
315
- const container = this.overflowMenuContainer;
316
- const dropdown = this.overflowDropdownEl;
317
- if (!container || !dropdown)
318
- return;
319
- const containerRect = container.getBoundingClientRect();
320
- // Default positioning is right: -2px inside container
321
- const dropdownWidth = dropdown.offsetWidth || 0;
322
- const rightEdge = containerRect.right + 2;
323
- const leftEdge = rightEdge - dropdownWidth;
324
- // If left edge would be off the viewport, flip to left aligned
325
- this.overflowDropdownAlignLeft = leftEdge < 8; // keep a small gutter
326
- });
327
261
  };
328
262
  this.handleNavClick = (event, section) => {
329
263
  event.preventDefault();
330
264
  this.currentActive = section;
265
+ // Update mobile selected item if in mobile mode
266
+ if (this.isMobile) {
267
+ const navItems = this.getNavItems();
268
+ const activeItem = navItems.find((item) => item.id === section);
269
+ if (activeItem) {
270
+ this.selectedMobileItem = activeItem;
271
+ this.calculateMobileDropdownItems();
272
+ }
273
+ }
331
274
  // Set manual navigation flag to prevent intersection observer from overriding
332
275
  this.isManualNavigation = true;
333
276
  // Clear any existing manual navigation timeout
@@ -345,19 +288,12 @@ export class PtcSubnavV2 {
345
288
  composed: true,
346
289
  });
347
290
  this.el.dispatchEvent(customEvent);
348
- // Smooth scroll to section if it exists, accounting for sticky nav height
291
+ // Smooth scroll to section if it exists
349
292
  const targetElement = document.querySelector(`#${section}`);
350
293
  if (targetElement) {
351
- // Get the sticky nav height
352
- const navHeight = this.el.offsetHeight;
353
- // Calculate the target position with offset
354
- const targetPosition = targetElement.getBoundingClientRect().top +
355
- window.scrollY -
356
- navHeight;
357
- // Smooth scroll to the adjusted position
358
- window.scrollTo({
359
- top: targetPosition,
294
+ targetElement.scrollIntoView({
360
295
  behavior: "smooth",
296
+ block: "start",
361
297
  });
362
298
  }
363
299
  };
@@ -367,113 +303,75 @@ export class PtcSubnavV2 {
367
303
  this.visibleItems = [];
368
304
  this.overflowItems = [];
369
305
  this.showOverflowMenu = false;
370
- this.overflowDropdownAlignLeft = false;
306
+ this.containerWidth = 0;
371
307
  this.isMobile = false;
308
+ this.selectedMobileItem = null;
372
309
  this.isManualNavigation = false;
310
+ this.mobileDropdownItems = [];
373
311
  }
374
312
  componentWillLoad() {
375
313
  this.currentActive = this.activeSection;
314
+ // Initialize selected mobile item with the current active section
315
+ const navItems = this.getNavItems();
316
+ if (navItems.length > 0) {
317
+ this.selectedMobileItem =
318
+ navItems.find((item) => item.id === this.activeSection) ||
319
+ navItems[0];
320
+ }
321
+ else {
322
+ this.selectedMobileItem = null;
323
+ }
324
+ this.calculateMobileDropdownItems();
376
325
  }
377
326
  componentDidLoad() {
378
- this.bindEventHandlers();
379
- this.handleResize();
380
- this.addEventListeners();
381
- this.setupIntersectionObserver();
382
- this.setupResizeObserver();
383
- this.initializeStickyPosition();
384
- }
385
- bindEventHandlers() {
327
+ // Bind the functions once
386
328
  this.boundHandleResize = this.handleResize.bind(this);
387
329
  this.boundHandleClickOutside = this.handleClickOutside.bind(this);
388
330
  this.boundHandleScroll = this.handleScroll.bind(this);
389
331
  this.boundHandleKeyDown = this.handleKeyDown.bind(this);
390
- this.boundHandleStickyScroll = this.handleStickyScroll.bind(this);
391
- }
392
- addEventListeners() {
332
+ // Recalculate navigation items in case slots are used
333
+ this.calculateMobileDropdownItems();
334
+ this.handleResize();
393
335
  window.addEventListener("resize", this.boundHandleResize);
394
336
  document.addEventListener("click", this.boundHandleClickOutside);
395
337
  document.addEventListener("keydown", this.boundHandleKeyDown);
338
+ // Setup intersection observer for scroll-based active state
339
+ this.setupIntersectionObserver();
340
+ // Add scroll listener as fallback
396
341
  window.addEventListener("scroll", this.boundHandleScroll, {
397
342
  passive: true,
398
343
  });
399
- window.addEventListener("scroll", this.boundHandleStickyScroll, {
400
- passive: true,
401
- });
402
344
  }
403
345
  disconnectedCallback() {
404
- this.removeEventListeners();
405
- this.cleanupTimeouts();
406
- this.cleanupIntersectionObserver();
407
- this.cleanupResizeObserver();
408
- this.cleanupElements();
409
- }
410
- removeEventListeners() {
411
346
  window.removeEventListener("resize", this.boundHandleResize);
412
347
  document.removeEventListener("click", this.boundHandleClickOutside);
413
348
  document.removeEventListener("keydown", this.boundHandleKeyDown);
414
349
  window.removeEventListener("scroll", this.boundHandleScroll);
415
- window.removeEventListener("scroll", this.boundHandleStickyScroll);
416
- }
417
- cleanupTimeouts() {
418
- if (this.scrollTimeout)
419
- clearTimeout(this.scrollTimeout);
420
- if (this.scrollThrottleTimeout)
421
- clearTimeout(this.scrollThrottleTimeout);
422
- if (this.manualNavigationTimeout)
423
- clearTimeout(this.manualNavigationTimeout);
424
- if (this.stickyScrollTimeout)
425
- clearTimeout(this.stickyScrollTimeout);
426
- }
427
- cleanupIntersectionObserver() {
350
+ // Clean up intersection observer
428
351
  if (this.intersectionObserver) {
429
352
  this.intersectionObserver.disconnect();
430
353
  }
431
- }
432
- cleanupResizeObserver() {
433
- if (this.resizeObserver) {
434
- this.resizeObserver.disconnect();
435
- }
436
- }
437
- cleanupElements() {
438
- if (this.placeholderElement) {
439
- this.placeholderElement.remove();
440
- this.placeholderElement = null;
441
- }
442
- if (this.measurementElement) {
443
- this.measurementElement.remove();
444
- this.measurementElement = null;
354
+ // Clean up scroll timeout
355
+ if (this.scrollTimeout) {
356
+ clearTimeout(this.scrollTimeout);
445
357
  }
446
- }
447
- parsePropNavItems() {
448
- var _a;
449
- if (!((_a = this.navItems) === null || _a === void 0 ? void 0 : _a.trim()))
450
- return null;
451
- try {
452
- const parsedItems = JSON.parse(this.navItems);
453
- if (Array.isArray(parsedItems) && parsedItems.length > 0) {
454
- const validItems = parsedItems.filter((item) => Boolean(item &&
455
- typeof item.id === "string" &&
456
- typeof item.label === "string"));
457
- return validItems.length > 0 ? validItems : null;
458
- }
358
+ // Clean up scroll throttle timeout
359
+ if (this.scrollThrottleTimeout) {
360
+ clearTimeout(this.scrollThrottleTimeout);
459
361
  }
460
- catch (error) {
461
- console.warn("Invalid navItems JSON provided to ptc-subnav-v2:", error);
362
+ // Clean up manual navigation timeout
363
+ if (this.manualNavigationTimeout) {
364
+ clearTimeout(this.manualNavigationTimeout);
462
365
  }
463
- return null;
464
366
  }
465
367
  render() {
368
+ var _a, _b;
466
369
  const navItems = this.getNavItems();
467
- const hasRightContent = this.hasSubnavMenuRightContent();
468
- const selectedMobileItem = this.isMobile
469
- ? navItems.find((item) => item.id === this.currentActive) ||
470
- navItems[0]
471
- : null;
472
370
  // If no navigation items, don't render the navigation
473
371
  if (navItems.length === 0) {
474
- return (h(Host, null, h("div", { class: `subnav-container ${!hasRightContent ? "full-width" : ""}` }, hasRightContent && (h("div", { class: "subnav-menu-right" }, h("slot", { name: "subnav-menu-right" }))))));
372
+ return (h(Host, null, h("div", { class: "subnav-container" }, h("div", { class: "subnav-menu-right" }, h("slot", { name: "subnav-menu-right" })))));
475
373
  }
476
- return (h(Host, null, h("div", { class: `subnav-container ${!hasRightContent ? "full-width" : ""}` }, h("nav", { class: `subnav-menu-left ${!hasRightContent ? "full-width" : ""}`, role: "navigation", "aria-label": "Sub navigation", ref: (el) => (this.navContainer = el) }, this.isMobile ? (
374
+ return (h(Host, null, h("div", { class: "subnav-container" }, h("nav", { class: "subnav-menu-left", role: "navigation", "aria-label": "Sub navigation", ref: (el) => (this.navContainer = el) }, this.isMobile ? (
477
375
  // Mobile layout - dropdown with arrows
478
376
  h("div", { class: "mobile-dropdown-container" }, h("button", { class: "mobile-dropdown-button", onClick: this.toggleOverflowMenu, onKeyDown: (e) => {
479
377
  if (e.key === "Enter" ||
@@ -481,31 +379,32 @@ export class PtcSubnavV2 {
481
379
  e.preventDefault();
482
380
  this.toggleOverflowMenu();
483
381
  }
484
- }, "aria-expanded": this.showOverflowMenu, "aria-haspopup": "true", "aria-label": `${(selectedMobileItem === null || selectedMobileItem === void 0 ? void 0 : selectedMobileItem.label) || "Select Section"} - Choose navigation section`, "tracker-id": "mobile-dropdown-button", ref: (el) => (this.overflowButton = el) }, h("span", { class: "mobile-selected-item" }, (selectedMobileItem === null || selectedMobileItem === void 0 ? void 0 : selectedMobileItem.label) ||
485
- "Select Section"), h("span", { class: `mobile-arrow ${this.showOverflowMenu ? "rotated" : ""}`, "aria-hidden": "true" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", "aria-hidden": "true" }, h("path", { d: "M1 1.5L5.94975 6.44975L10.8995 1.5", stroke: "#00890B", "stroke-width": "2", "stroke-linecap": "round" })))), this.showOverflowMenu && (h("ul", { class: "mobile-dropdown", role: "menu", "aria-label": "Navigation sections" }, navItems.map((item) => (h("li", { key: item.id, class: "mf-listen", id: item.trackerId ||
486
- `mobile-nav-${item.id}` }, h("a", { href: `#${item.id}`, class: `mobile-dropdown-item ${this.currentActive ===
382
+ }, "aria-expanded": this.showOverflowMenu, "aria-haspopup": "true", "aria-label": `${((_a = this.selectedMobileItem) === null || _a === void 0 ? void 0 : _a.label) || "Select Section"} - Choose navigation section`, "tracker-id": "mobile-dropdown-button", ref: (el) => (this.overflowButton = el) }, h("span", { class: "mobile-selected-item" }, ((_b = this.selectedMobileItem) === null || _b === void 0 ? void 0 : _b.label) ||
383
+ "Select Section"), h("span", { class: `mobile-arrow ${this.showOverflowMenu ? "rotated" : ""}`, "aria-hidden": "true" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", "aria-hidden": "true" }, h("path", { d: "M1 1.5L5.94975 6.44975L10.8995 1.5", stroke: "#00890B", "stroke-width": "2", "stroke-linecap": "round" })))), this.showOverflowMenu && (h("ul", { class: "mobile-dropdown", role: "menu", "aria-label": "Navigation sections" }, this.mobileDropdownItems.map((item) => (h("li", { key: item.id }, h("a", { href: `#${item.id}`, class: `mobile-dropdown-item mf-listen ${this
384
+ .currentActive ===
487
385
  item.id
488
386
  ? "active"
489
- : ""}`, role: "menuitem", "aria-current": this.currentActive ===
387
+ : ""}`, role: "menuitem", "aria-current": this
388
+ .currentActive ===
490
389
  item.id
491
390
  ? "page"
492
- : undefined, title: item.title || "", onClick: (e) => {
391
+ : undefined, "tracker-id": item.trackerId ||
392
+ `mobile-nav-${item.id}`, title: item.title || "", onClick: (e) => {
493
393
  this.handleNavClick(e, item.id);
494
394
  this.showOverflowMenu = false;
495
395
  } }, item.label)))))))) : (
496
396
  // Desktop layout - original behavior
497
- h("ul", { class: "desktop-menu" }, this.visibleItems.map((item) => (h("li", { key: item.id, class: "mf-listen", id: item.trackerId || `nav-${item.id}` }, h("a", { href: `#${item.id}`, class: this.currentActive === item.id
397
+ h("ul", { class: "desktop-menu" }, this.visibleItems.map((item) => (h("li", { key: item.id, class: "mf-listen", "tracker-id": item.trackerId || `nav-${item.id}` }, h("a", { href: `#${item.id}`, class: this.currentActive === item.id
498
398
  ? "active"
499
399
  : "", title: item.title || "", onClick: (e) => this.handleNavClick(e, item.id), "aria-current": this.currentActive === item.id
500
400
  ? "page"
501
- : undefined }, item.label)))), this.overflowItems.length > 0 && (h("li", { class: "overflow-menu-container mf-listen", id: "overflow-menu", ref: (el) => (this.overflowMenuContainer = el) }, h("button", { class: `overflow-button ${this.hasActiveOverflowItem() ? "selected-active" : ""}`, onClick: this.toggleOverflowMenu, onKeyDown: (e) => {
401
+ : undefined }, item.label)))), this.overflowItems.length > 0 && (h("li", { class: "overflow-menu-container mf-listen", "tracker-id": "overflow-menu" }, h("button", { class: `overflow-button ${this.hasActiveOverflowItem() ? "selected-active" : ""}`, onClick: this.toggleOverflowMenu, onKeyDown: (e) => {
502
402
  if (e.key === "Enter" ||
503
403
  e.key === " ") {
504
404
  e.preventDefault();
505
405
  this.toggleOverflowMenu();
506
406
  }
507
- }, "aria-expanded": this.showOverflowMenu, "aria-haspopup": "true", "aria-label": "Show more navigation items", "tracker-id": "overflow-button", ref: (el) => (this.overflowButton = el) }, h("span", { class: "overflow-dots", "aria-hidden": "true" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": "true" }, h("circle", { cx: "1.25", cy: "5", r: "1.25", fill: "#617480" }), h("circle", { cx: "5", cy: "5", r: "1.25", fill: "#617480" }), h("circle", { cx: "8.75", cy: "5", r: "1.25", fill: "#617480" })))), this.showOverflowMenu && (h("div", { class: `overflow-dropdown ${this.overflowDropdownAlignLeft ? "align-left" : "align-right"}`, role: "menu", "aria-label": "Additional navigation sections", ref: (el) => (this.overflowDropdownEl =
508
- el) }, this.overflowItems.map((item) => (h("a", { key: item.id, href: `#${item.id}`, class: `mf-listen ${this
407
+ }, "aria-expanded": this.showOverflowMenu, "aria-haspopup": "true", "aria-label": "Show more navigation items", "tracker-id": "overflow-button", ref: (el) => (this.overflowButton = el) }, h("span", { class: "overflow-dots", "aria-hidden": "true" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": "true" }, h("circle", { cx: "1.25", cy: "5", r: "1.25", fill: "#617480" }), h("circle", { cx: "5", cy: "5", r: "1.25", fill: "#617480" }), h("circle", { cx: "8.75", cy: "5", r: "1.25", fill: "#617480" })))), this.showOverflowMenu && (h("div", { class: "overflow-dropdown", role: "menu", "aria-label": "Additional navigation sections" }, this.overflowItems.map((item) => (h("a", { key: item.id, href: `#${item.id}`, class: `mf-listen ${this
509
408
  .currentActive ===
510
409
  item.id
511
410
  ? "active"
@@ -517,7 +416,7 @@ export class PtcSubnavV2 {
517
416
  .currentActive ===
518
417
  item.id
519
418
  ? "page"
520
- : undefined }, item.label)))))))))), hasRightContent && (h("div", { class: "subnav-menu-right" }, h("slot", { name: "subnav-menu-right" }))))));
419
+ : undefined }, item.label)))))))))), h("div", { class: "subnav-menu-right" }, h("slot", { name: "subnav-menu-right" })))));
521
420
  }
522
421
  static get is() { return "ptc-subnav-v2"; }
523
422
  static get encapsulation() { return "shadow"; }
@@ -577,9 +476,11 @@ export class PtcSubnavV2 {
577
476
  "visibleItems": {},
578
477
  "overflowItems": {},
579
478
  "showOverflowMenu": {},
580
- "overflowDropdownAlignLeft": {},
479
+ "containerWidth": {},
581
480
  "isMobile": {},
582
- "isManualNavigation": {}
481
+ "selectedMobileItem": {},
482
+ "isManualNavigation": {},
483
+ "mobileDropdownItems": {}
583
484
  };
584
485
  }
585
486
  static get elementRef() { return "el"; }
@@ -3743,7 +3743,7 @@ ptc-footer {
3743
3743
  .ptc-text-field .iti__flag {
3744
3744
  background-image: url("https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/18.2.1/img/flags.png");
3745
3745
  }
3746
- @media (min-resolution: 192dpi) {
3746
+ @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
3747
3747
  .ptc-text-field .iti__flag {
3748
3748
  background-image: url("https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/18.2.1/img/flags@2x.png");
3749
3749
  }
@@ -204,15 +204,13 @@ export class PtcTextfield {
204
204
  this.helpertext = await this.getValidationMessage("tel");
205
205
  }
206
206
  else if (!this.iti.isValidNumber()) {
207
- this.helpertext =
208
- await this.getValidationMessage("validtel");
207
+ this.helpertext = await this.getValidationMessage("validtel");
209
208
  }
210
209
  }
211
210
  }
212
211
  else if (this.fieldId === "confirm-email") {
213
212
  if (!this.matchStatus && !!this.customInput.value) {
214
- this.helpertext =
215
- await this.getValidationMessage("confirmemail");
213
+ this.helpertext = await this.getValidationMessage("confirmemail");
216
214
  }
217
215
  }
218
216
  }
@@ -568,7 +566,7 @@ export class PtcTextfield {
568
566
  "type": "unknown",
569
567
  "mutable": false,
570
568
  "complexType": {
571
- "original": "(\r\n\t\tinput: HTMLInputElement | HTMLTextAreaElement,\r\n\t) => string",
569
+ "original": "(\r\n\t\tinput: HTMLInputElement | HTMLTextAreaElement\r\n\t) => string",
572
570
  "resolved": "(input: HTMLInputElement | HTMLTextAreaElement) => string",
573
571
  "references": {
574
572
  "HTMLInputElement": {