@affinda/wc 0.5.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/affinda/af-hero.entry.esm.js.map +1 -1
- package/dist/affinda/af-input.entry.esm.js.map +1 -1
- package/dist/affinda/af-paperclip-decoration.entry.esm.js.map +1 -1
- package/dist/affinda/af-textarea.entry.esm.js.map +1 -1
- package/dist/affinda/affinda.esm.js +1 -1
- package/dist/affinda/index.esm.js +1 -1
- package/dist/affinda/{p-bb80195f.entry.js → p-01b848e9.entry.js} +2 -2
- package/dist/affinda/{p-d9b0f217.entry.js → p-025851ca.entry.js} +2 -2
- package/dist/affinda/{p-1819ae80.entry.js → p-0cbb1cb2.entry.js} +2 -2
- package/dist/affinda/p-11d41c9a.entry.js +2 -0
- package/dist/affinda/p-160997b3.entry.js +2 -0
- package/dist/affinda/{p-15a1d019.entry.js.map → p-160997b3.entry.js.map} +1 -1
- package/dist/affinda/p-1c19e94c.entry.js +2 -0
- package/dist/affinda/{p-64159112.entry.js → p-1c922fff.entry.js} +2 -2
- package/dist/affinda/{p-b31e438d.entry.js → p-223b2e70.entry.js} +2 -2
- package/dist/affinda/{p-a4b36eb7.entry.js → p-2315cb6b.entry.js} +2 -2
- package/dist/affinda/{p-41580a3c.entry.js → p-296a6ece.entry.js} +2 -2
- package/dist/affinda/{p-e057ebf1.entry.js → p-2e67fb0d.entry.js} +2 -2
- package/dist/affinda/{p-5834ffe7.entry.js → p-319b51c7.entry.js} +2 -2
- package/dist/affinda/{p-50e12df0.entry.js → p-39a40e6a.entry.js} +2 -2
- package/dist/affinda/{p-c23d7aa5.entry.js → p-3df90209.entry.js} +2 -2
- package/dist/affinda/p-3ed2eb32.entry.js +2 -0
- package/dist/affinda/{p-fd772af4.entry.js.map → p-3ed2eb32.entry.js.map} +1 -1
- package/dist/affinda/{p-616e0116.entry.js → p-3fb33478.entry.js} +2 -2
- package/dist/affinda/p-5fdb4aad.entry.js +2 -0
- package/dist/affinda/{p-838bbc80.entry.js.map → p-5fdb4aad.entry.js.map} +1 -1
- package/dist/affinda/{p-be219843.entry.js → p-604399ed.entry.js} +2 -2
- package/dist/affinda/p-6525d4fe.entry.js +2 -0
- package/dist/affinda/p-6525d4fe.entry.js.map +1 -0
- package/dist/affinda/{p-c15d00b5.entry.js → p-653bca57.entry.js} +2 -2
- package/dist/affinda/{p-6ff65e42.entry.js → p-6c4137dc.entry.js} +2 -2
- package/dist/affinda/{p-95da58f3.entry.js → p-764601e6.entry.js} +2 -2
- package/dist/affinda/{p-8b0d08de.entry.js → p-765883e7.entry.js} +2 -2
- package/dist/affinda/{p-cea1c1ff.entry.js → p-7b60b684.entry.js} +2 -2
- package/dist/affinda/{p-df10dee2.entry.js → p-805148d0.entry.js} +2 -2
- package/dist/affinda/{p-d573d115.entry.js → p-8eb57e35.entry.js} +2 -2
- package/dist/affinda/{p-656630fc.entry.js → p-90e9e29c.entry.js} +2 -2
- package/dist/affinda/{p-eca85313.entry.js → p-9c470a88.entry.js} +2 -2
- package/dist/affinda/{p-1a71d0f9.entry.js → p-9c8d18a3.entry.js} +2 -2
- package/dist/affinda/{p-cc2539de.entry.js → p-9d85f685.entry.js} +2 -2
- package/dist/affinda/{p-3fd3d4cd.entry.js → p-aa0cb70d.entry.js} +2 -2
- package/dist/affinda/{p-1f2f7fff.entry.js → p-aabe4d24.entry.js} +2 -2
- package/dist/affinda/{p-88f38401.entry.js → p-ae27e9da.entry.js} +2 -2
- package/dist/affinda/{p-919e2144.entry.js → p-bc3d2bb4.entry.js} +2 -2
- package/dist/affinda/p-c87e5b29.entry.js +2 -0
- package/dist/affinda/p-cd8cfa7f.entry.js +2 -0
- package/dist/affinda/p-cd8cfa7f.entry.js.map +1 -0
- package/dist/affinda/p-da247ea4.entry.js +2 -0
- package/dist/affinda/{p-ea5aea86.entry.js.map → p-da247ea4.entry.js.map} +1 -1
- package/dist/affinda/{p-7b08b7ba.entry.js → p-dd30a9b8.entry.js} +2 -2
- package/dist/affinda/{p-8f36e911.entry.js → p-e2667603.entry.js} +2 -2
- package/dist/affinda/{p-02c6f6d1.entry.js → p-e678100f.entry.js} +2 -2
- package/dist/affinda/{p-374f9557.entry.js → p-e8a91b15.entry.js} +2 -2
- package/dist/affinda/{p-7eff3490.entry.js → p-e9527b93.entry.js} +2 -2
- package/dist/affinda/{p-67b08108.entry.js → p-eb611fb5.entry.js} +2 -2
- package/dist/affinda/{p-f1705df1.entry.js → p-edb426e6.entry.js} +2 -2
- package/dist/affinda/{p-54dc41a9.entry.js → p-f47d0d2d.entry.js} +2 -2
- package/dist/affinda/{p-56e96bd3.entry.js → p-f49b41f9.entry.js} +2 -2
- package/dist/affinda/{p-75d76909.entry.js → p-f5744d56.entry.js} +2 -2
- package/dist/affinda/{p-75d76909.entry.js.map → p-f5744d56.entry.js.map} +1 -1
- package/dist/affinda/{p-976e0c29.entry.js → p-f6e1750e.entry.js} +2 -2
- package/dist/affinda/{p-3084cb0f.entry.js → p-fad2d40b.entry.js} +2 -2
- package/dist/affinda/{p-a79077d5.entry.js → p-fc19f53c.entry.js} +2 -2
- package/dist/affinda/p-fd39a1c2.entry.js +2 -0
- package/dist/affinda/{p-a3ed4092.entry.js → p-fee9359c.entry.js} +2 -2
- package/dist/cjs/af-accordion-item.cjs.entry.js +1 -1
- package/dist/cjs/af-accordion.cjs.entry.js +1 -1
- package/dist/cjs/af-card.cjs.entry.js +1 -1
- package/dist/cjs/af-center.cjs.entry.js +1 -1
- package/dist/cjs/af-client-carousel.cjs.entry.js +1 -1
- package/dist/cjs/af-contact-item.cjs.entry.js +1 -1
- package/dist/cjs/af-divider.cjs.entry.js +1 -1
- package/dist/cjs/af-feature-accordion.cjs.entry.js +2 -2
- package/dist/cjs/af-feature-grid.cjs.entry.js +1 -1
- package/dist/cjs/af-footer-column.cjs.entry.js +1 -1
- package/dist/cjs/af-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/af-footer.cjs.entry.js +1 -1
- package/dist/cjs/af-grid.cjs.entry.js +2 -2
- package/dist/cjs/af-hero.cjs.entry.js +3 -3
- package/dist/cjs/af-hero.entry.cjs.js.map +1 -1
- package/dist/cjs/af-icon-box.cjs.entry.js +1 -1
- package/dist/cjs/af-icon-text.cjs.entry.js +1 -1
- package/dist/cjs/af-illustrated-card.cjs.entry.js +1 -1
- package/dist/cjs/af-image.cjs.entry.js +1 -1
- package/dist/cjs/af-in-page-banner.cjs.entry.js +1 -1
- package/dist/cjs/af-inline.cjs.entry.js +1 -1
- package/dist/cjs/af-input.cjs.entry.js +23 -5
- package/dist/cjs/af-input.entry.cjs.js.map +1 -1
- package/dist/cjs/af-logo-well.cjs.entry.js +1 -1
- package/dist/cjs/af-nav-accordion-item.cjs.entry.js +2 -2
- package/dist/cjs/af-nav-accordion.cjs.entry.js +1 -1
- package/dist/cjs/af-nav-menu-nest.cjs.entry.js +1 -1
- package/dist/cjs/af-nav-menu.cjs.entry.js +1 -1
- package/dist/cjs/af-number-badge.cjs.entry.js +1 -1
- package/dist/cjs/af-numbered-stepper-item.cjs.entry.js +1 -1
- package/dist/cjs/af-numbered-stepper.cjs.entry.js +1 -1
- package/dist/cjs/af-paperclip-decoration.cjs.entry.js +9 -5
- package/dist/cjs/af-paperclip-decoration.entry.cjs.js.map +1 -1
- package/dist/cjs/af-progress-line.cjs.entry.js +2 -2
- package/dist/cjs/af-section.cjs.entry.js +2 -2
- package/dist/cjs/af-show.cjs.entry.js +1 -1
- package/dist/cjs/af-social-link.cjs.entry.js +1 -1
- package/dist/cjs/af-spacer.cjs.entry.js +1 -1
- package/dist/cjs/af-split-section.cjs.entry.js +2 -2
- package/dist/cjs/af-stack.cjs.entry.js +1 -1
- package/dist/cjs/af-stat.cjs.entry.js +1 -1
- package/dist/cjs/af-stats-row.cjs.entry.js +1 -1
- package/dist/cjs/af-stepper-step.cjs.entry.js +1 -1
- package/dist/cjs/af-stepper.cjs.entry.js +1 -1
- package/dist/cjs/af-tab-bar.cjs.entry.js +1 -1
- package/dist/cjs/af-tab.cjs.entry.js +1 -1
- package/dist/cjs/af-tag.cjs.entry.js +2 -2
- package/dist/cjs/af-testimonial-carousel.cjs.entry.js +1 -1
- package/dist/cjs/af-testimonial-stat.cjs.entry.js +1 -1
- package/dist/cjs/af-testimonial.cjs.entry.js +2 -2
- package/dist/cjs/af-text-image-nest.cjs.entry.js +1 -1
- package/dist/cjs/af-textarea.cjs.entry.js +14 -1
- package/dist/cjs/af-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/af-theme-override.cjs.entry.js +1 -1
- package/dist/cjs/af-video-container.cjs.entry.js +1 -1
- package/dist/cjs/af-visually-hidden.cjs.entry.js +1 -1
- package/dist/cjs/affinda.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/af-accordion/af-accordion.js +1 -1
- package/dist/collection/components/af-accordion-item/af-accordion-item.js +1 -1
- package/dist/collection/components/af-card/af-card.js +1 -1
- package/dist/collection/components/af-center/af-center.js +1 -1
- package/dist/collection/components/af-client-carousel/af-client-carousel.js +1 -1
- package/dist/collection/components/af-contact-item/af-contact-item.js +1 -1
- package/dist/collection/components/af-divider/af-divider.js +1 -1
- package/dist/collection/components/af-feature-accordion/af-feature-accordion.js +2 -2
- package/dist/collection/components/af-feature-grid/af-feature-grid.js +1 -1
- package/dist/collection/components/af-footer/af-footer.js +1 -1
- package/dist/collection/components/af-footer-column/af-footer-column.js +1 -1
- package/dist/collection/components/af-footer-link/af-footer-link.js +1 -1
- package/dist/collection/components/af-grid/af-grid.js +2 -2
- package/dist/collection/components/af-hero/af-hero.css +10 -5
- package/dist/collection/components/af-hero/af-hero.js +2 -2
- package/dist/collection/components/af-icon-box/af-icon-box.js +1 -1
- package/dist/collection/components/af-icon-text/af-icon-text.js +1 -1
- package/dist/collection/components/af-illustrated-card/af-illustrated-card.js +1 -1
- package/dist/collection/components/af-image/af-image.js +1 -1
- package/dist/collection/components/af-in-page-banner/af-in-page-banner.js +1 -1
- package/dist/collection/components/af-inline/af-inline.js +1 -1
- package/dist/collection/components/af-input/af-input.css +42 -0
- package/dist/collection/components/af-input/af-input.js +88 -10
- package/dist/collection/components/af-input/af-input.js.map +1 -1
- package/dist/collection/components/af-logo-well/af-logo-well.js +1 -1
- package/dist/collection/components/af-nav-accordion/af-nav-accordion.js +1 -1
- package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.js +2 -2
- package/dist/collection/components/af-nav-menu/af-nav-menu.js +1 -1
- package/dist/collection/components/af-nav-menu-nest/af-nav-menu-nest.js +1 -1
- package/dist/collection/components/af-number-badge/af-number-badge.js +1 -1
- package/dist/collection/components/af-numbered-stepper/af-numbered-stepper.js +1 -1
- package/dist/collection/components/af-numbered-stepper-item/af-numbered-stepper-item.js +1 -1
- package/dist/collection/components/af-paperclip-decoration/af-paperclip-decoration.js +13 -9
- package/dist/collection/components/af-paperclip-decoration/af-paperclip-decoration.js.map +1 -1
- package/dist/collection/components/af-progress-line/af-progress-line.js +2 -2
- package/dist/collection/components/af-section/af-section.js +2 -2
- package/dist/collection/components/af-show/af-show.js +1 -1
- package/dist/collection/components/af-social-link/af-social-link.js +1 -1
- package/dist/collection/components/af-spacer/af-spacer.js +1 -1
- package/dist/collection/components/af-split-section/af-split-section.js +2 -2
- package/dist/collection/components/af-stack/af-stack.js +1 -1
- package/dist/collection/components/af-stat/af-stat.js +1 -1
- package/dist/collection/components/af-stats-row/af-stats-row.js +1 -1
- package/dist/collection/components/af-stepper/af-stepper.js +1 -1
- package/dist/collection/components/af-stepper-step/af-stepper-step.js +1 -1
- package/dist/collection/components/af-tab/af-tab.js +1 -1
- package/dist/collection/components/af-tab-bar/af-tab-bar.js +1 -1
- package/dist/collection/components/af-tag/af-tag.js +2 -2
- package/dist/collection/components/af-testimonial/af-testimonial.js +2 -2
- package/dist/collection/components/af-testimonial-carousel/af-testimonial-carousel.js +1 -1
- package/dist/collection/components/af-testimonial-stat/af-testimonial-stat.js +1 -1
- package/dist/collection/components/af-text-image-nest/af-text-image-nest.js +1 -1
- package/dist/collection/components/af-textarea/af-textarea.js +20 -1
- package/dist/collection/components/af-textarea/af-textarea.js.map +1 -1
- package/dist/collection/components/af-theme-override/af-theme-override.js +1 -1
- package/dist/collection/components/af-video-container/af-video-container.js +1 -1
- package/dist/collection/components/af-visually-hidden/af-visually-hidden.js +1 -1
- package/dist/components/af-accordion-item.js +1 -1
- package/dist/components/af-accordion.js +1 -1
- package/dist/components/af-card.js +1 -1
- package/dist/components/af-center.js +1 -1
- package/dist/components/af-client-carousel.js +1 -1
- package/dist/components/af-contact-item.js +1 -1
- package/dist/components/af-divider.js +1 -1
- package/dist/components/af-feature-accordion.js +2 -2
- package/dist/components/af-feature-card.js +1 -1
- package/dist/components/af-feature-grid.js +2 -2
- package/dist/components/af-footer-column.js +1 -1
- package/dist/components/af-footer-link.js +1 -1
- package/dist/components/af-footer.js +1 -1
- package/dist/components/af-grid.js +2 -2
- package/dist/components/af-hero.js +1 -1
- package/dist/components/af-icon-box.js +1 -1
- package/dist/components/af-icon-text.js +2 -2
- package/dist/components/af-illustrated-card.js +1 -1
- package/dist/components/af-image.js +1 -1
- package/dist/components/af-in-page-banner.js +1 -1
- package/dist/components/af-inline.js +1 -1
- package/dist/components/af-input.js +1 -1
- package/dist/components/af-logo-well.js +1 -1
- package/dist/components/af-nav-accordion-item.js +2 -2
- package/dist/components/af-nav-accordion.js +1 -1
- package/dist/components/af-nav-menu-nest.js +1 -1
- package/dist/components/af-nav-menu.js +1 -1
- package/dist/components/af-number-badge.js +1 -1
- package/dist/components/af-numbered-stepper-item.js +2 -2
- package/dist/components/af-numbered-stepper.js +1 -1
- package/dist/components/af-paperclip-decoration.js +9 -5
- package/dist/components/af-paperclip-decoration.js.map +1 -1
- package/dist/components/af-progress-line.js +1 -1
- package/dist/components/af-section.js +1 -1
- package/dist/components/af-show.js +1 -1
- package/dist/components/af-social-link.js +1 -1
- package/dist/components/af-spacer.js +1 -1
- package/dist/components/af-split-section.js +2 -2
- package/dist/components/af-stack.js +1 -1
- package/dist/components/af-stat.js +1 -1
- package/dist/components/af-stats-row.js +1 -1
- package/dist/components/af-stepper-step.js +1 -1
- package/dist/components/af-stepper.js +1 -1
- package/dist/components/af-tab-bar.js +1 -1
- package/dist/components/af-tab.js +1 -1
- package/dist/components/af-tag.js +1 -1
- package/dist/components/af-testimonial-carousel.js +2 -2
- package/dist/components/af-testimonial-stat.js +1 -1
- package/dist/components/af-testimonial.js +2 -2
- package/dist/components/af-text-image-nest.js +1 -1
- package/dist/components/af-text-image.js +1 -1
- package/dist/components/af-textarea.js +1 -1
- package/dist/components/af-theme-override.js +1 -1
- package/dist/components/af-video-container.js +1 -1
- package/dist/components/af-visually-hidden.js +1 -1
- package/dist/components/index.js +8 -8
- package/dist/components/{p-CmU4eYJE.js → p-B4bimVSM.js} +4 -4
- package/dist/components/{p-CmU4eYJE.js.map → p-B4bimVSM.js.map} +1 -1
- package/dist/components/{p-DUWgh2he.js → p-BgQvXXuB.js} +3 -3
- package/dist/components/{p-DUWgh2he.js.map → p-BgQvXXuB.js.map} +1 -1
- package/dist/components/{p-Dd_y3e80.js → p-BiSEOBg5.js} +3 -3
- package/dist/components/{p-Dd_y3e80.js.map → p-BiSEOBg5.js.map} +1 -1
- package/dist/components/{p-D1kXpb5A.js → p-BwowgpiS.js} +4 -4
- package/dist/components/{p-D1kXpb5A.js.map → p-BwowgpiS.js.map} +1 -1
- package/dist/components/{p-CxQXmlHR.js → p-CNPKZ3ct.js} +3 -3
- package/dist/components/{p-CxQXmlHR.js.map → p-CNPKZ3ct.js.map} +1 -1
- package/dist/components/{p-DinivoZj.js → p-CSejCgwa.js} +3 -3
- package/dist/components/{p-DinivoZj.js.map → p-CSejCgwa.js.map} +1 -1
- package/dist/components/{p-DNdQkidf.js → p-CTVS7dJ6.js} +3 -3
- package/dist/components/{p-DNdQkidf.js.map → p-CTVS7dJ6.js.map} +1 -1
- package/dist/components/{p-Bebi4EvS.js → p-CixFE5Cu.js} +16 -3
- package/dist/components/p-CixFE5Cu.js.map +1 -0
- package/dist/components/{p-DBtE-heu.js → p-DPgWkfHr.js} +4 -4
- package/dist/components/{p-DBtE-heu.js.map → p-DPgWkfHr.js.map} +1 -1
- package/dist/components/{p-DOZPKyww.js → p-Dacy0GsN.js} +28 -7
- package/dist/components/p-Dacy0GsN.js.map +1 -0
- package/dist/components/{p-CY3F_EFI.js → p-DxYqml-M.js} +3 -3
- package/dist/components/{p-CY3F_EFI.js.map → p-DxYqml-M.js.map} +1 -1
- package/dist/components/{p-WJ7nfpxz.js → p-SGoxmRPn.js} +6 -6
- package/dist/components/p-SGoxmRPn.js.map +1 -0
- package/dist/components/{p-CmOT3tAE.js → p-fLdNRQwR.js} +3 -3
- package/dist/components/{p-CmOT3tAE.js.map → p-fLdNRQwR.js.map} +1 -1
- package/dist/components/{p-CPPy4ZvS.js → p-sIePTJnR.js} +4 -4
- package/dist/components/{p-CPPy4ZvS.js.map → p-sIePTJnR.js.map} +1 -1
- package/dist/esm/af-accordion-item.entry.js +1 -1
- package/dist/esm/af-accordion.entry.js +1 -1
- package/dist/esm/af-card.entry.js +1 -1
- package/dist/esm/af-center.entry.js +1 -1
- package/dist/esm/af-client-carousel.entry.js +1 -1
- package/dist/esm/af-contact-item.entry.js +1 -1
- package/dist/esm/af-divider.entry.js +1 -1
- package/dist/esm/af-feature-accordion.entry.js +2 -2
- package/dist/esm/af-feature-grid.entry.js +1 -1
- package/dist/esm/af-footer-column.entry.js +1 -1
- package/dist/esm/af-footer-link.entry.js +1 -1
- package/dist/esm/af-footer.entry.js +1 -1
- package/dist/esm/af-grid.entry.js +2 -2
- package/dist/esm/af-hero.entry.js +3 -3
- package/dist/esm/af-hero.entry.js.map +1 -1
- package/dist/esm/af-icon-box.entry.js +1 -1
- package/dist/esm/af-icon-text.entry.js +1 -1
- package/dist/esm/af-illustrated-card.entry.js +1 -1
- package/dist/esm/af-image.entry.js +1 -1
- package/dist/esm/af-in-page-banner.entry.js +1 -1
- package/dist/esm/af-inline.entry.js +1 -1
- package/dist/esm/af-input.entry.js +23 -5
- package/dist/esm/af-input.entry.js.map +1 -1
- package/dist/esm/af-logo-well.entry.js +1 -1
- package/dist/esm/af-nav-accordion-item.entry.js +2 -2
- package/dist/esm/af-nav-accordion.entry.js +1 -1
- package/dist/esm/af-nav-menu-nest.entry.js +1 -1
- package/dist/esm/af-nav-menu.entry.js +1 -1
- package/dist/esm/af-number-badge.entry.js +1 -1
- package/dist/esm/af-numbered-stepper-item.entry.js +1 -1
- package/dist/esm/af-numbered-stepper.entry.js +1 -1
- package/dist/esm/af-paperclip-decoration.entry.js +9 -5
- package/dist/esm/af-paperclip-decoration.entry.js.map +1 -1
- package/dist/esm/af-progress-line.entry.js +2 -2
- package/dist/esm/af-section.entry.js +2 -2
- package/dist/esm/af-show.entry.js +1 -1
- package/dist/esm/af-social-link.entry.js +1 -1
- package/dist/esm/af-spacer.entry.js +1 -1
- package/dist/esm/af-split-section.entry.js +2 -2
- package/dist/esm/af-stack.entry.js +1 -1
- package/dist/esm/af-stat.entry.js +1 -1
- package/dist/esm/af-stats-row.entry.js +1 -1
- package/dist/esm/af-stepper-step.entry.js +1 -1
- package/dist/esm/af-stepper.entry.js +1 -1
- package/dist/esm/af-tab-bar.entry.js +1 -1
- package/dist/esm/af-tab.entry.js +1 -1
- package/dist/esm/af-tag.entry.js +2 -2
- package/dist/esm/af-testimonial-carousel.entry.js +1 -1
- package/dist/esm/af-testimonial-stat.entry.js +1 -1
- package/dist/esm/af-testimonial.entry.js +2 -2
- package/dist/esm/af-text-image-nest.entry.js +1 -1
- package/dist/esm/af-textarea.entry.js +14 -1
- package/dist/esm/af-textarea.entry.js.map +1 -1
- package/dist/esm/af-theme-override.entry.js +1 -1
- package/dist/esm/af-video-container.entry.js +1 -1
- package/dist/esm/af-visually-hidden.entry.js +1 -1
- package/dist/esm/affinda.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/hydrate/index.js +115 -71
- package/dist/hydrate/index.mjs +115 -71
- package/dist/types/components/af-input/af-input.d.ts +21 -6
- package/dist/types/components/af-paperclip-decoration/af-paperclip-decoration.d.ts +6 -2
- package/dist/types/components/af-textarea/af-textarea.d.ts +9 -0
- package/dist/types/components.d.ts +71 -21
- package/package.json +2 -2
- package/dist/affinda/p-15a1d019.entry.js +0 -2
- package/dist/affinda/p-838bbc80.entry.js +0 -2
- package/dist/affinda/p-a196f362.entry.js +0 -2
- package/dist/affinda/p-a6be61c2.entry.js +0 -2
- package/dist/affinda/p-b77fa201.entry.js +0 -2
- package/dist/affinda/p-b77fa201.entry.js.map +0 -1
- package/dist/affinda/p-c2a6c874.entry.js +0 -2
- package/dist/affinda/p-c925d301.entry.js +0 -2
- package/dist/affinda/p-c925d301.entry.js.map +0 -1
- package/dist/affinda/p-cd21a62a.entry.js +0 -2
- package/dist/affinda/p-ea5aea86.entry.js +0 -2
- package/dist/affinda/p-fd772af4.entry.js +0 -2
- package/dist/components/p-Bebi4EvS.js.map +0 -1
- package/dist/components/p-DOZPKyww.js.map +0 -1
- package/dist/components/p-WJ7nfpxz.js.map +0 -1
- /package/dist/affinda/{p-bb80195f.entry.js.map → p-01b848e9.entry.js.map} +0 -0
- /package/dist/affinda/{p-d9b0f217.entry.js.map → p-025851ca.entry.js.map} +0 -0
- /package/dist/affinda/{p-1819ae80.entry.js.map → p-0cbb1cb2.entry.js.map} +0 -0
- /package/dist/affinda/{p-a196f362.entry.js.map → p-11d41c9a.entry.js.map} +0 -0
- /package/dist/affinda/{p-a6be61c2.entry.js.map → p-1c19e94c.entry.js.map} +0 -0
- /package/dist/affinda/{p-64159112.entry.js.map → p-1c922fff.entry.js.map} +0 -0
- /package/dist/affinda/{p-b31e438d.entry.js.map → p-223b2e70.entry.js.map} +0 -0
- /package/dist/affinda/{p-a4b36eb7.entry.js.map → p-2315cb6b.entry.js.map} +0 -0
- /package/dist/affinda/{p-41580a3c.entry.js.map → p-296a6ece.entry.js.map} +0 -0
- /package/dist/affinda/{p-e057ebf1.entry.js.map → p-2e67fb0d.entry.js.map} +0 -0
- /package/dist/affinda/{p-5834ffe7.entry.js.map → p-319b51c7.entry.js.map} +0 -0
- /package/dist/affinda/{p-50e12df0.entry.js.map → p-39a40e6a.entry.js.map} +0 -0
- /package/dist/affinda/{p-c23d7aa5.entry.js.map → p-3df90209.entry.js.map} +0 -0
- /package/dist/affinda/{p-616e0116.entry.js.map → p-3fb33478.entry.js.map} +0 -0
- /package/dist/affinda/{p-be219843.entry.js.map → p-604399ed.entry.js.map} +0 -0
- /package/dist/affinda/{p-c15d00b5.entry.js.map → p-653bca57.entry.js.map} +0 -0
- /package/dist/affinda/{p-6ff65e42.entry.js.map → p-6c4137dc.entry.js.map} +0 -0
- /package/dist/affinda/{p-95da58f3.entry.js.map → p-764601e6.entry.js.map} +0 -0
- /package/dist/affinda/{p-8b0d08de.entry.js.map → p-765883e7.entry.js.map} +0 -0
- /package/dist/affinda/{p-cea1c1ff.entry.js.map → p-7b60b684.entry.js.map} +0 -0
- /package/dist/affinda/{p-df10dee2.entry.js.map → p-805148d0.entry.js.map} +0 -0
- /package/dist/affinda/{p-d573d115.entry.js.map → p-8eb57e35.entry.js.map} +0 -0
- /package/dist/affinda/{p-656630fc.entry.js.map → p-90e9e29c.entry.js.map} +0 -0
- /package/dist/affinda/{p-eca85313.entry.js.map → p-9c470a88.entry.js.map} +0 -0
- /package/dist/affinda/{p-1a71d0f9.entry.js.map → p-9c8d18a3.entry.js.map} +0 -0
- /package/dist/affinda/{p-cc2539de.entry.js.map → p-9d85f685.entry.js.map} +0 -0
- /package/dist/affinda/{p-3fd3d4cd.entry.js.map → p-aa0cb70d.entry.js.map} +0 -0
- /package/dist/affinda/{p-1f2f7fff.entry.js.map → p-aabe4d24.entry.js.map} +0 -0
- /package/dist/affinda/{p-88f38401.entry.js.map → p-ae27e9da.entry.js.map} +0 -0
- /package/dist/affinda/{p-919e2144.entry.js.map → p-bc3d2bb4.entry.js.map} +0 -0
- /package/dist/affinda/{p-cd21a62a.entry.js.map → p-c87e5b29.entry.js.map} +0 -0
- /package/dist/affinda/{p-7b08b7ba.entry.js.map → p-dd30a9b8.entry.js.map} +0 -0
- /package/dist/affinda/{p-8f36e911.entry.js.map → p-e2667603.entry.js.map} +0 -0
- /package/dist/affinda/{p-02c6f6d1.entry.js.map → p-e678100f.entry.js.map} +0 -0
- /package/dist/affinda/{p-374f9557.entry.js.map → p-e8a91b15.entry.js.map} +0 -0
- /package/dist/affinda/{p-7eff3490.entry.js.map → p-e9527b93.entry.js.map} +0 -0
- /package/dist/affinda/{p-67b08108.entry.js.map → p-eb611fb5.entry.js.map} +0 -0
- /package/dist/affinda/{p-f1705df1.entry.js.map → p-edb426e6.entry.js.map} +0 -0
- /package/dist/affinda/{p-54dc41a9.entry.js.map → p-f47d0d2d.entry.js.map} +0 -0
- /package/dist/affinda/{p-56e96bd3.entry.js.map → p-f49b41f9.entry.js.map} +0 -0
- /package/dist/affinda/{p-976e0c29.entry.js.map → p-f6e1750e.entry.js.map} +0 -0
- /package/dist/affinda/{p-3084cb0f.entry.js.map → p-fad2d40b.entry.js.map} +0 -0
- /package/dist/affinda/{p-a79077d5.entry.js.map → p-fc19f53c.entry.js.map} +0 -0
- /package/dist/affinda/{p-c2a6c874.entry.js.map → p-fd39a1c2.entry.js.map} +0 -0
- /package/dist/affinda/{p-a3ed4092.entry.js.map → p-fee9359c.entry.js.map} +0 -0
|
@@ -66,7 +66,7 @@ export class AfInPageBanner {
|
|
|
66
66
|
return (h("div", { class: "banner__wave-overlay", "aria-hidden": "true" }, h("svg", { viewBox: "0 0 521 323", fill: "none", xmlns: "http://www.w3.org/2000/svg", class: "banner__wave-svg" }, h("path", { d: "M473.775 46.273C443.539 15.92 403.701 -0.631616 361.351 0.0184478H154.183L112.67 67.225H361.893C362.189 67.225 362.533 67.225 362.829 67.225C387.155 67.225 410.004 76.7259 427.289 94.0776C445.017 111.879 454.816 135.682 454.816 161.134C454.816 213.389 412.959 255.843 361.548 255.843H108.041C84.9457 255.843 66.1345 236.742 66.1345 213.289C66.1345 189.837 84.9949 170.435 107.992 169.735H334.957L377.799 102.528H106.859C47.9636 104.029 0 153.683 0 213.289C0 272.895 48.456 323 108.041 323H361.548C449.449 323 521 250.343 521 161.084C521 117.53 504.257 76.7759 473.824 46.2229L473.775 46.273Z", fill: "currentColor" }))));
|
|
67
67
|
}
|
|
68
68
|
render() {
|
|
69
|
-
return (h(Host, { key: '
|
|
69
|
+
return (h(Host, { key: '022f98e0925a4cdc04db66889b266f1741932513' }, h("div", { key: '64f60ef33b18ba4e0e20d5248a3a8d396a72b4cd', class: `banner theme-${this.theme}` }, this.showWaveDecoration && this.renderWaveOverlay(), h("div", { key: '26ff6aefd41268a5bece7fb2c5161cfacd38d54e', class: "banner__illustration" }, this.illustrationUrl ? (h("img", { src: this.illustrationUrl, alt: "", class: "banner__illustration-img", loading: "lazy" })) : (h("slot", { name: "illustration" }))), h("div", { key: '025c1664b11d6531d2471ab652a0715e58ee5d46', class: "banner__content" }, h("div", { key: 'e58cc91158e663068ddaa01fd9776135055769fc', class: "banner__copy" }, h("h2", { key: '7f3afcf9b28cbc1b924f6dec0bf4882c64b1c306', class: "banner__heading" }, h("slot", { key: 'ac04c8f27d294f97f79ab11595ce4c1e12e3d9f3', name: "heading" }, this.heading)), h("div", { key: '7b5a689cf681591d8eac098f9e0a8d3b01348140', class: "banner__description" }, h("slot", { key: '724079691b59aab3f336a3524b85f5fe27ad754d', name: "description" }, this.description))), h("div", { key: 'e4d8eedee783e6b48ca780bf95337048384165fc', class: "banner__buttons" }, h("slot", { key: 'e1b5995706145354b41daa5a774086ddaa65accc', name: "buttons" }, this.primaryButtonText && (h("af-button", { key: 'c5e797d3c62876d4ba964272efe7d9d97b962a36', href: this.primaryButtonUrl, variant: "primary" }, this.primaryButtonText)), this.secondaryButtonText && (h("af-button", { key: 'e4a8ba0065181b3201f906fdc718595ad9bdd4fc', href: this.secondaryButtonUrl, variant: "secondary" }, this.secondaryButtonText))))))));
|
|
70
70
|
}
|
|
71
71
|
static get is() { return "af-in-page-banner"; }
|
|
72
72
|
static get encapsulation() { return "scoped"; }
|
|
@@ -49,7 +49,7 @@ export class AfInline {
|
|
|
49
49
|
justifyContent: justifyMap[this.justify],
|
|
50
50
|
flexWrap: this.wrap ? 'wrap' : 'nowrap',
|
|
51
51
|
};
|
|
52
|
-
return (h(Host, { key: '
|
|
52
|
+
return (h(Host, { key: '7069c721994bbd1acc8d57875522dbefdaf796d9', style: style }, h("slot", { key: 'e39c2d982cca56ab6545e3e8a43eea7696708f21' })));
|
|
53
53
|
}
|
|
54
54
|
static get is() { return "af-inline"; }
|
|
55
55
|
static get encapsulation() { return "shadow"; }
|
|
@@ -214,6 +214,48 @@
|
|
|
214
214
|
border-radius: 4px;
|
|
215
215
|
}
|
|
216
216
|
|
|
217
|
+
/* ---------- Multiline (textarea) mode ---------- */
|
|
218
|
+
|
|
219
|
+
/* Container has no inner padding in multiline mode — the textarea
|
|
220
|
+
element owns the padding so it fills the box and resizes cleanly. */
|
|
221
|
+
.input-container--multiline {
|
|
222
|
+
padding: 0;
|
|
223
|
+
min-height: 0;
|
|
224
|
+
overflow: hidden;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/* Native textarea */
|
|
228
|
+
.input--multiline {
|
|
229
|
+
flex: 1;
|
|
230
|
+
min-width: 0;
|
|
231
|
+
min-height: 108px;
|
|
232
|
+
padding: 12px 16px;
|
|
233
|
+
border: none;
|
|
234
|
+
background: transparent;
|
|
235
|
+
font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);
|
|
236
|
+
font-weight: var(--font-weight-regular, 400);
|
|
237
|
+
font-size: 16px;
|
|
238
|
+
line-height: 24px;
|
|
239
|
+
color: var(--af-input-text, var(--af-typography-body-dark, #14343b));
|
|
240
|
+
outline: none;
|
|
241
|
+
resize: vertical;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
.input--multiline::placeholder {
|
|
245
|
+
color: var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));
|
|
246
|
+
opacity: 1;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
.input--multiline:disabled {
|
|
250
|
+
cursor: not-allowed;
|
|
251
|
+
color: var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));
|
|
252
|
+
resize: none;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.input--multiline:disabled::placeholder {
|
|
256
|
+
color: var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));
|
|
257
|
+
}
|
|
258
|
+
|
|
217
259
|
/* Error row */
|
|
218
260
|
.error-row {
|
|
219
261
|
display: flex;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
/**
|
|
3
3
|
* Input field component with label, description, and error states.
|
|
4
|
-
* Supports
|
|
4
|
+
* Supports single-line and multi-line (textarea) modes via the `multiline` prop.
|
|
5
5
|
*
|
|
6
6
|
* @slot label-end - Content to display at the end of the label (e.g., info icon)
|
|
7
7
|
*/
|
|
@@ -12,7 +12,8 @@ export class AfInput {
|
|
|
12
12
|
*/
|
|
13
13
|
this.value = '';
|
|
14
14
|
/**
|
|
15
|
-
* The input type (text, email, password, number, tel, url, search)
|
|
15
|
+
* The input type (text, email, password, number, tel, url, search).
|
|
16
|
+
* Ignored when `multiline` is true.
|
|
16
17
|
*/
|
|
17
18
|
this.type = 'text';
|
|
18
19
|
/**
|
|
@@ -32,13 +33,27 @@ export class AfInput {
|
|
|
32
33
|
*/
|
|
33
34
|
this.showInfoIcon = false;
|
|
34
35
|
/**
|
|
35
|
-
* Whether to show a search icon in the input
|
|
36
|
+
* Whether to show a search icon in the input. Ignored when `multiline` is true.
|
|
36
37
|
*/
|
|
37
38
|
this.showSearchIcon = false;
|
|
38
39
|
/**
|
|
39
|
-
* Whether to show a clear button when input has value
|
|
40
|
+
* Whether to show a clear button when input has value. Ignored when `multiline` is true.
|
|
40
41
|
*/
|
|
41
42
|
this.clearable = false;
|
|
43
|
+
/**
|
|
44
|
+
* Render as a multi-line textarea instead of a single-line input.
|
|
45
|
+
* Activates `rows` and `resize` props; ignores `type`, `pattern`,
|
|
46
|
+
* `autocomplete`, `showSearchIcon`, `clearable`.
|
|
47
|
+
*/
|
|
48
|
+
this.multiline = false;
|
|
49
|
+
/**
|
|
50
|
+
* Number of visible rows when `multiline` is true. Ignored otherwise.
|
|
51
|
+
*/
|
|
52
|
+
this.rows = 4;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the textarea is resizable. Ignored when `multiline` is false.
|
|
55
|
+
*/
|
|
56
|
+
this.resize = 'vertical';
|
|
42
57
|
this.isFocused = false;
|
|
43
58
|
this.isHovered = false;
|
|
44
59
|
this.handleInput = (event) => {
|
|
@@ -75,8 +90,10 @@ export class AfInput {
|
|
|
75
90
|
render() {
|
|
76
91
|
const hasError = !!this.error;
|
|
77
92
|
const hasValue = !!(this.value && this.value.length > 0);
|
|
93
|
+
const multiline = this.multiline;
|
|
78
94
|
const wrapperClasses = {
|
|
79
95
|
'input-wrapper': true,
|
|
96
|
+
'input-wrapper--multiline': multiline,
|
|
80
97
|
'disabled': this.disabled,
|
|
81
98
|
'error': hasError,
|
|
82
99
|
'focused': this.isFocused,
|
|
@@ -85,12 +102,13 @@ export class AfInput {
|
|
|
85
102
|
};
|
|
86
103
|
const inputContainerClasses = {
|
|
87
104
|
'input-container': true,
|
|
105
|
+
'input-container--multiline': multiline,
|
|
88
106
|
'disabled': this.disabled,
|
|
89
107
|
'error': hasError,
|
|
90
108
|
'focused': this.isFocused,
|
|
91
109
|
'hovered': this.isHovered && !this.disabled && !this.isFocused
|
|
92
110
|
};
|
|
93
|
-
return (h(Host, { key: '
|
|
111
|
+
return (h(Host, { key: '55cf204d355367913c765891190048599a46653e' }, h("div", { key: '8f72840a7a6fa8615e535f171f5297fb5d0cdfe5', class: wrapperClasses }, this.label && (h("div", { key: '06711c6031da07fca88bd438db7fb80acc12df71', class: "label-row" }, h("label", { key: '1db607ff65a624aa2520bdfbc2063c0f6587b00c', class: "label", htmlFor: "input" }, this.label, this.required && h("span", { key: 'd2ffc85aafb99e5fc7723993354a23fd99f04ac6', class: "required" }, "*")), this.showInfoIcon && (h("button", { key: '1adcddb4121582d35eff611d8299ff4ed6d0cc24', type: "button", class: "info-icon", onClick: this.handleInfoClick, "aria-label": "More information" }, h("svg", { key: 'e1abef80244c616ba98f89d23f9a4b6b2e4d97e1', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'fedd67859d45345298c7e6e4a67e1e98ac4a9178', d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), h("path", { key: '076a1ff76cc8b5287dd29df42d6b629d34ae739e', d: "M12 16V12", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), h("path", { key: '640f19dd94e31f1090704ccc534b3917cc70a905', d: "M12 8H12.01", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))), h("slot", { key: 'e3b42a60ad6b2378ab6593e239208b847d20c8ad', name: "label-end" }))), this.description && (h("p", { key: '8bf359cd53f562bedbe29f54004d5a974398db7b', class: "description" }, this.description)), h("div", { key: 'eb5a21523188828d60713cc772a477fa2a22a3a3', class: inputContainerClasses, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, !multiline && this.showSearchIcon && (h("span", { key: 'ed8945ddd4601e3d2ef84f2644a7ab567156157a', class: "search-icon" }, h("svg", { key: '2684f4233757a74cb55abfb1e62481e5848a5fbc', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'f6855623658e5ea149421b37f039967e6622c955', d: "M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), h("path", { key: 'db81f64ac649e9f41bfdb47a287d3e671951f171', d: "M21 21L16.65 16.65", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))), multiline ? (h("textarea", { ref: (el) => this.inputEl = el ?? undefined, id: "input", class: "input input--multiline", name: this.name, value: this.value, placeholder: this.placeholder, disabled: this.disabled, required: this.required, readonly: this.readonly, rows: this.rows, maxlength: this.maxlength, minlength: this.minlength, style: { resize: this.resize }, "aria-invalid": hasError ? 'true' : undefined, "aria-describedby": hasError ? 'error-message' : this.description ? 'description' : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur })) : (h("input", { ref: (el) => this.inputEl = el ?? undefined, id: "input", class: "input", type: this.type, name: this.name, value: this.value, placeholder: this.placeholder, disabled: this.disabled, required: this.required, readonly: this.readonly, autocomplete: this.autocomplete, maxlength: this.maxlength, minlength: this.minlength, pattern: this.pattern, "aria-invalid": hasError ? 'true' : undefined, "aria-describedby": hasError ? 'error-message' : this.description ? 'description' : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur })), !multiline && this.clearable && hasValue && !this.disabled && !this.readonly && (h("button", { key: 'ed7c9c3753fd291aa1105c2f30e00a2b2868efed', type: "button", class: "clear-button", onClick: this.handleClear, "aria-label": "Clear input" }, h("svg", { key: '0615828eb7d27c6cf45fa7f91b25a14dd97fe972', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6a60d954427656fcc01940dd861c37bd214570d0', d: "M18 6L6 18", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), h("path", { key: '9471a7899c62b9fbce7ceafc4986b29c0000f26f', d: "M6 6L18 18", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))))), hasError && (h("div", { key: '1972022a3ca5a7f366a83cf35e2eecb4b812bd29', class: "error-row", id: "error-message" }, h("span", { key: '450e80c8d42914048eb114a222d9db8e9b94d3fa', class: "error-icon" }, h("svg", { key: '57eeb2884b16a9adf5fe0744814d00465da436e1', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '9e25cb82f47c915b4c4afa0283a143c9221b465c', d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), h("path", { key: 'faf252192e9a4706c5ed363ba240a0cb1ddf6770', d: "M12 16V12", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), h("path", { key: '4eda8b2840b7bf70919460ffe46e54d702ec3191', d: "M12 8H12.01", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))), h("span", { key: 'a22e99093a097f8c7be12c8aa4a1b65a87484eb3', class: "error-text" }, this.error))))));
|
|
94
112
|
}
|
|
95
113
|
static get is() { return "af-input"; }
|
|
96
114
|
static get encapsulation() { return "shadow"; }
|
|
@@ -195,7 +213,7 @@ export class AfInput {
|
|
|
195
213
|
"optional": false,
|
|
196
214
|
"docs": {
|
|
197
215
|
"tags": [],
|
|
198
|
-
"text": "The input type (text, email, password, number, tel, url, search)"
|
|
216
|
+
"text": "The input type (text, email, password, number, tel, url, search).\nIgnored when `multiline` is true."
|
|
199
217
|
},
|
|
200
218
|
"getter": false,
|
|
201
219
|
"setter": false,
|
|
@@ -333,7 +351,7 @@ export class AfInput {
|
|
|
333
351
|
"optional": false,
|
|
334
352
|
"docs": {
|
|
335
353
|
"tags": [],
|
|
336
|
-
"text": "Whether to show a search icon in the input"
|
|
354
|
+
"text": "Whether to show a search icon in the input. Ignored when `multiline` is true."
|
|
337
355
|
},
|
|
338
356
|
"getter": false,
|
|
339
357
|
"setter": false,
|
|
@@ -353,7 +371,7 @@ export class AfInput {
|
|
|
353
371
|
"optional": false,
|
|
354
372
|
"docs": {
|
|
355
373
|
"tags": [],
|
|
356
|
-
"text": "Whether to show a clear button when input has value"
|
|
374
|
+
"text": "Whether to show a clear button when input has value. Ignored when `multiline` is true."
|
|
357
375
|
},
|
|
358
376
|
"getter": false,
|
|
359
377
|
"setter": false,
|
|
@@ -430,12 +448,72 @@ export class AfInput {
|
|
|
430
448
|
"optional": true,
|
|
431
449
|
"docs": {
|
|
432
450
|
"tags": [],
|
|
433
|
-
"text": "Pattern for input validation (regex)"
|
|
451
|
+
"text": "Pattern for input validation (regex). Ignored when `multiline` is true."
|
|
434
452
|
},
|
|
435
453
|
"getter": false,
|
|
436
454
|
"setter": false,
|
|
437
455
|
"reflect": false,
|
|
438
456
|
"attribute": "pattern"
|
|
457
|
+
},
|
|
458
|
+
"multiline": {
|
|
459
|
+
"type": "boolean",
|
|
460
|
+
"mutable": false,
|
|
461
|
+
"complexType": {
|
|
462
|
+
"original": "boolean",
|
|
463
|
+
"resolved": "boolean",
|
|
464
|
+
"references": {}
|
|
465
|
+
},
|
|
466
|
+
"required": false,
|
|
467
|
+
"optional": false,
|
|
468
|
+
"docs": {
|
|
469
|
+
"tags": [],
|
|
470
|
+
"text": "Render as a multi-line textarea instead of a single-line input.\nActivates `rows` and `resize` props; ignores `type`, `pattern`,\n`autocomplete`, `showSearchIcon`, `clearable`."
|
|
471
|
+
},
|
|
472
|
+
"getter": false,
|
|
473
|
+
"setter": false,
|
|
474
|
+
"reflect": false,
|
|
475
|
+
"attribute": "multiline",
|
|
476
|
+
"defaultValue": "false"
|
|
477
|
+
},
|
|
478
|
+
"rows": {
|
|
479
|
+
"type": "number",
|
|
480
|
+
"mutable": false,
|
|
481
|
+
"complexType": {
|
|
482
|
+
"original": "number",
|
|
483
|
+
"resolved": "number",
|
|
484
|
+
"references": {}
|
|
485
|
+
},
|
|
486
|
+
"required": false,
|
|
487
|
+
"optional": false,
|
|
488
|
+
"docs": {
|
|
489
|
+
"tags": [],
|
|
490
|
+
"text": "Number of visible rows when `multiline` is true. Ignored otherwise."
|
|
491
|
+
},
|
|
492
|
+
"getter": false,
|
|
493
|
+
"setter": false,
|
|
494
|
+
"reflect": false,
|
|
495
|
+
"attribute": "rows",
|
|
496
|
+
"defaultValue": "4"
|
|
497
|
+
},
|
|
498
|
+
"resize": {
|
|
499
|
+
"type": "string",
|
|
500
|
+
"mutable": false,
|
|
501
|
+
"complexType": {
|
|
502
|
+
"original": "'none' | 'vertical' | 'horizontal' | 'both'",
|
|
503
|
+
"resolved": "\"both\" | \"horizontal\" | \"none\" | \"vertical\"",
|
|
504
|
+
"references": {}
|
|
505
|
+
},
|
|
506
|
+
"required": false,
|
|
507
|
+
"optional": false,
|
|
508
|
+
"docs": {
|
|
509
|
+
"tags": [],
|
|
510
|
+
"text": "Whether the textarea is resizable. Ignored when `multiline` is false."
|
|
511
|
+
},
|
|
512
|
+
"getter": false,
|
|
513
|
+
"setter": false,
|
|
514
|
+
"reflect": false,
|
|
515
|
+
"attribute": "resize",
|
|
516
|
+
"defaultValue": "'vertical'"
|
|
439
517
|
}
|
|
440
518
|
};
|
|
441
519
|
}
|
|
@@ -499,7 +577,7 @@ export class AfInput {
|
|
|
499
577
|
"composed": true,
|
|
500
578
|
"docs": {
|
|
501
579
|
"tags": [],
|
|
502
|
-
"text": "Emitted when the clear button is clicked"
|
|
580
|
+
"text": "Emitted when the clear button is clicked. Only fires in single-line mode."
|
|
503
581
|
},
|
|
504
582
|
"complexType": {
|
|
505
583
|
"original": "void",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"af-input.js","sourceRoot":"","sources":["../../../src/components/af-input/af-input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAgB,KAAK,EAAE,MAAM,eAAe,CAAC;AAErF;;;;;GAKG;AAMH,MAAM,OAAO,OAAO;IALpB;QAqBE;;WAEG;QACsB,UAAK,GAAW,EAAE,CAAC;QAE5C;;WAEG;QACK,SAAI,GAAwE,MAAM,CAAC;QAO3F;;WAEG;QACsB,aAAQ,GAAY,KAAK,CAAC;QAEnD;;WAEG;QACK,aAAQ,GAAY,KAAK,CAAC;QAElC;;WAEG;QACK,aAAQ,GAAY,KAAK,CAAC;QAOlC;;WAEG;QACK,iBAAY,GAAY,KAAK,CAAC;QAEtC;;WAEG;QACK,mBAAc,GAAY,KAAK,CAAC;QAExC;;WAEG;QACK,cAAS,GAAY,KAAK,CAAC;QA+ClB,cAAS,GAAY,KAAK,CAAC;QAC3B,cAAS,GAAY,KAAK,CAAC;QAIpC,gBAAW,GAAG,CAAC,KAAY,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,KAAK,CAAC,MAA0B,CAAC;YAChD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC;QAEM,gBAAW,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC,CAAC;QAEM,eAAU,GAAG,GAAG,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC;QAEM,qBAAgB,GAAG,GAAG,EAAE;YAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC,CAAC;QAEM,qBAAgB,GAAG,GAAG,EAAE;YAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,CAAC;QAEM,gBAAW,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACxB,CAAC,CAAC;QAEM,oBAAe,GAAG,CAAC,KAAiB,EAAE,EAAE;YAC9C,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC,CAAC;KAgIH;IA9HC,MAAM;QACJ,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEzD,MAAM,cAAc,GAAG;YACrB,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,IAAI,CAAC,QAAQ;YACzB,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS;YAC9D,WAAW,EAAE,QAAQ;SACtB,CAAC;QAEF,MAAM,qBAAqB,GAAG;YAC5B,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,IAAI,CAAC,QAAQ;YACzB,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS;SAC/D,CAAC;QAEF,OAAO,CACL,EAAC,IAAI;YACH,4DAAK,KAAK,EAAE,cAAc;gBAEvB,IAAI,CAAC,KAAK,IAAI,CACb,4DAAK,KAAK,EAAC,WAAW;oBACpB,8DAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO;wBACjC,IAAI,CAAC,KAAK;wBACV,IAAI,CAAC,QAAQ,IAAI,6DAAM,KAAK,EAAC,UAAU,QAAS,CAC3C;oBACP,IAAI,CAAC,YAAY,IAAI,CACpB,+DACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,WAAW,EACjB,OAAO,EAAE,IAAI,CAAC,eAAe,gBAClB,kBAAkB;wBAE7B,4DAAK,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B;4BACrE,6DAAM,CAAC,EAAC,mHAAmH,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE;4BACrN,6DAAM,CAAC,EAAC,WAAW,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE;4BAC7G,6DAAM,CAAC,EAAC,aAAa,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE,CAC3G,CACC,CACV;oBACD,6DAAM,IAAI,EAAC,WAAW,GAAQ,CAC1B,CACP;gBAGA,IAAI,CAAC,WAAW,IAAI,CACnB,0DAAG,KAAK,EAAC,aAAa,IAAE,IAAI,CAAC,WAAW,CAAK,CAC9C;gBAGD,4DACE,KAAK,EAAE,qBAAqB,EAC5B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,YAAY,EAAE,IAAI,CAAC,gBAAgB;oBAGlC,IAAI,CAAC,cAAc,IAAI,CACtB,6DAAM,KAAK,EAAC,aAAa;wBACvB,4DAAK,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B;4BACrE,6DAAM,CAAC,EAAC,mHAAmH,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE;4BACrN,6DAAM,CAAC,EAAC,oBAAoB,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE,CAClH,CACD,CACR;oBAGD,8DACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,SAAS,EAC3C,EAAE,EAAC,OAAO,EACV,KAAK,EAAC,OAAO,EACb,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,OAAO,EAAE,IAAI,CAAC,OAAO,kBACP,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,sBACzB,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAC3F,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,MAAM,EAAE,IAAI,CAAC,UAAU,GACvB;oBAGD,IAAI,CAAC,SAAS,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CACjE,+DACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,cAAc,EACpB,OAAO,EAAE,IAAI,CAAC,WAAW,gBACd,aAAa;wBAExB,4DAAK,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B;4BACrE,6DAAM,CAAC,EAAC,YAAY,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE;4BAC9G,6DAAM,CAAC,EAAC,YAAY,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE,CAC1G,CACC,CACV,CACG;gBAGL,QAAQ,IAAI,CACX,4DAAK,KAAK,EAAC,WAAW,EAAC,EAAE,EAAC,eAAe;oBACvC,6DAAM,KAAK,EAAC,YAAY;wBACtB,4DAAK,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B;4BACrE,6DAAM,CAAC,EAAC,mHAAmH,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE;4BACrN,6DAAM,CAAC,EAAC,WAAW,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE;4BAC7G,6DAAM,CAAC,EAAC,aAAa,EAAC,MAAM,EAAC,cAAc,kBAAc,KAAK,oBAAgB,OAAO,qBAAiB,OAAO,GAAE,CAC3G,CACD;oBACP,6DAAM,KAAK,EAAC,YAAY,IAAE,IAAI,CAAC,KAAK,CAAQ,CACxC,CACP,CACG,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Prop, Host, Event, EventEmitter, State } from '@stencil/core';\n\n/**\n * Input field component with label, description, and error states.\n * Supports various input types and validation states.\n * \n * @slot label-end - Content to display at the end of the label (e.g., info icon)\n */\n@Component({\n tag: 'af-input',\n styleUrl: 'af-input.css',\n shadow: true\n})\nexport class AfInput {\n /**\n * The label text for the input field\n */\n @Prop() label?: string;\n\n /**\n * Description text displayed below the label\n */\n @Prop() description?: string;\n\n /**\n * Placeholder text for the input\n */\n @Prop() placeholder?: string;\n\n /**\n * The current value of the input\n */\n @Prop({ mutable: true }) value: string = '';\n\n /**\n * The input type (text, email, password, number, tel, url, search)\n */\n @Prop() type: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search' = 'text';\n\n /**\n * The name of the input for form submission\n */\n @Prop() name?: string;\n\n /**\n * Whether the input is disabled\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Whether the input is required\n */\n @Prop() required: boolean = false;\n\n /**\n * Whether the input is read-only\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Error message to display (also sets error state)\n */\n @Prop() error?: string;\n\n /**\n * Whether to show the info icon next to the label\n */\n @Prop() showInfoIcon: boolean = false;\n\n /**\n * Whether to show a search icon in the input\n */\n @Prop() showSearchIcon: boolean = false;\n\n /**\n * Whether to show a clear button when input has value\n */\n @Prop() clearable: boolean = false;\n\n /**\n * Autocomplete attribute for the input\n */\n @Prop() autocomplete?: string;\n\n /**\n * Maximum length of input value\n */\n @Prop() maxlength?: number;\n\n /**\n * Minimum length of input value\n */\n @Prop() minlength?: number;\n\n /**\n * Pattern for input validation (regex)\n */\n @Prop() pattern?: string;\n\n /**\n * Emitted when the input value changes\n */\n @Event() afInput!: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when the input loses focus\n */\n @Event() afBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the input gains focus\n */\n @Event() afFocus!: EventEmitter<void>;\n\n /**\n * Emitted when the clear button is clicked\n */\n @Event() afClear!: EventEmitter<void>;\n\n /**\n * Emitted when the info icon is clicked\n */\n @Event() afInfoClick!: EventEmitter<void>;\n\n @State() private isFocused: boolean = false;\n @State() private isHovered: boolean = false;\n\n private inputEl?: HTMLInputElement;\n\n private handleInput = (event: Event) => {\n const target = event.target as HTMLInputElement;\n this.value = target.value;\n this.afInput.emit({ value: this.value });\n };\n\n private handleFocus = () => {\n this.isFocused = true;\n this.afFocus.emit();\n };\n\n private handleBlur = () => {\n this.isFocused = false;\n this.afBlur.emit();\n };\n\n private handleMouseEnter = () => {\n this.isHovered = true;\n };\n\n private handleMouseLeave = () => {\n this.isHovered = false;\n };\n\n private handleClear = () => {\n this.value = '';\n this.afClear.emit();\n this.afInput.emit({ value: '' });\n this.inputEl?.focus();\n };\n\n private handleInfoClick = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n this.afInfoClick.emit();\n };\n\n render() {\n const hasError = !!this.error;\n const hasValue = !!(this.value && this.value.length > 0);\n\n const wrapperClasses = {\n 'input-wrapper': true,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused,\n 'populated': hasValue\n };\n\n const inputContainerClasses = {\n 'input-container': true,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused\n };\n\n return (\n <Host>\n <div class={wrapperClasses}>\n {/* Label */}\n {this.label && (\n <div class=\"label-row\">\n <label class=\"label\" htmlFor=\"input\">\n {this.label}\n {this.required && <span class=\"required\">*</span>}\n </label>\n {this.showInfoIcon && (\n <button \n type=\"button\" \n class=\"info-icon\" \n onClick={this.handleInfoClick}\n aria-label=\"More information\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n <slot name=\"label-end\"></slot>\n </div>\n )}\n\n {/* Description */}\n {this.description && (\n <p class=\"description\">{this.description}</p>\n )}\n\n {/* Input container */}\n <div \n class={inputContainerClasses}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {/* Search icon */}\n {this.showSearchIcon && (\n <span class=\"search-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M21 21L16.65 16.65\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n )}\n\n {/* Native input */}\n <input\n ref={(el) => this.inputEl = el ?? undefined}\n id=\"input\"\n class=\"input\"\n type={this.type}\n name={this.name}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n required={this.required}\n readonly={this.readonly}\n autocomplete={this.autocomplete}\n maxlength={this.maxlength}\n minlength={this.minlength}\n pattern={this.pattern}\n aria-invalid={hasError ? 'true' : undefined}\n aria-describedby={hasError ? 'error-message' : this.description ? 'description' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n\n {/* Clear button */}\n {this.clearable && hasValue && !this.disabled && !this.readonly && (\n <button \n type=\"button\" \n class=\"clear-button\" \n onClick={this.handleClear}\n aria-label=\"Clear input\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6 6L18 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n </div>\n\n {/* Error message */}\n {hasError && (\n <div class=\"error-row\" id=\"error-message\">\n <span class=\"error-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n <span class=\"error-text\">{this.error}</span>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n\n"]}
|
|
1
|
+
{"version":3,"file":"af-input.js","sourceRoot":"","sources":["../../../src/components/af-input/af-input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Prop, Host, Event, EventEmitter, State } from '@stencil/core';\n\n/**\n * Input field component with label, description, and error states.\n * Supports single-line and multi-line (textarea) modes via the `multiline` prop.\n *\n * @slot label-end - Content to display at the end of the label (e.g., info icon)\n */\n@Component({\n tag: 'af-input',\n styleUrl: 'af-input.css',\n shadow: true\n})\nexport class AfInput {\n /**\n * The label text for the input field\n */\n @Prop() label?: string;\n\n /**\n * Description text displayed below the label\n */\n @Prop() description?: string;\n\n /**\n * Placeholder text for the input\n */\n @Prop() placeholder?: string;\n\n /**\n * The current value of the input\n */\n @Prop({ mutable: true }) value: string = '';\n\n /**\n * The input type (text, email, password, number, tel, url, search).\n * Ignored when `multiline` is true.\n */\n @Prop() type: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search' = 'text';\n\n /**\n * The name of the input for form submission\n */\n @Prop() name?: string;\n\n /**\n * Whether the input is disabled\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Whether the input is required\n */\n @Prop() required: boolean = false;\n\n /**\n * Whether the input is read-only\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Error message to display (also sets error state)\n */\n @Prop() error?: string;\n\n /**\n * Whether to show the info icon next to the label\n */\n @Prop() showInfoIcon: boolean = false;\n\n /**\n * Whether to show a search icon in the input. Ignored when `multiline` is true.\n */\n @Prop() showSearchIcon: boolean = false;\n\n /**\n * Whether to show a clear button when input has value. Ignored when `multiline` is true.\n */\n @Prop() clearable: boolean = false;\n\n /**\n * Autocomplete attribute for the input\n */\n @Prop() autocomplete?: string;\n\n /**\n * Maximum length of input value\n */\n @Prop() maxlength?: number;\n\n /**\n * Minimum length of input value\n */\n @Prop() minlength?: number;\n\n /**\n * Pattern for input validation (regex). Ignored when `multiline` is true.\n */\n @Prop() pattern?: string;\n\n /**\n * Render as a multi-line textarea instead of a single-line input.\n * Activates `rows` and `resize` props; ignores `type`, `pattern`,\n * `autocomplete`, `showSearchIcon`, `clearable`.\n */\n @Prop() multiline: boolean = false;\n\n /**\n * Number of visible rows when `multiline` is true. Ignored otherwise.\n */\n @Prop() rows: number = 4;\n\n /**\n * Whether the textarea is resizable. Ignored when `multiline` is false.\n */\n @Prop() resize: 'none' | 'vertical' | 'horizontal' | 'both' = 'vertical';\n\n /**\n * Emitted when the input value changes\n */\n @Event() afInput!: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when the input loses focus\n */\n @Event() afBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the input gains focus\n */\n @Event() afFocus!: EventEmitter<void>;\n\n /**\n * Emitted when the clear button is clicked. Only fires in single-line mode.\n */\n @Event() afClear!: EventEmitter<void>;\n\n /**\n * Emitted when the info icon is clicked\n */\n @Event() afInfoClick!: EventEmitter<void>;\n\n @State() private isFocused: boolean = false;\n @State() private isHovered: boolean = false;\n\n private inputEl?: HTMLInputElement | HTMLTextAreaElement;\n\n private handleInput = (event: Event) => {\n const target = event.target as HTMLInputElement | HTMLTextAreaElement;\n this.value = target.value;\n this.afInput.emit({ value: this.value });\n };\n\n private handleFocus = () => {\n this.isFocused = true;\n this.afFocus.emit();\n };\n\n private handleBlur = () => {\n this.isFocused = false;\n this.afBlur.emit();\n };\n\n private handleMouseEnter = () => {\n this.isHovered = true;\n };\n\n private handleMouseLeave = () => {\n this.isHovered = false;\n };\n\n private handleClear = () => {\n this.value = '';\n this.afClear.emit();\n this.afInput.emit({ value: '' });\n this.inputEl?.focus();\n };\n\n private handleInfoClick = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n this.afInfoClick.emit();\n };\n\n render() {\n const hasError = !!this.error;\n const hasValue = !!(this.value && this.value.length > 0);\n const multiline = this.multiline;\n\n const wrapperClasses = {\n 'input-wrapper': true,\n 'input-wrapper--multiline': multiline,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused,\n 'populated': hasValue\n };\n\n const inputContainerClasses = {\n 'input-container': true,\n 'input-container--multiline': multiline,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused\n };\n\n return (\n <Host>\n <div class={wrapperClasses}>\n {/* Label */}\n {this.label && (\n <div class=\"label-row\">\n <label class=\"label\" htmlFor=\"input\">\n {this.label}\n {this.required && <span class=\"required\">*</span>}\n </label>\n {this.showInfoIcon && (\n <button\n type=\"button\"\n class=\"info-icon\"\n onClick={this.handleInfoClick}\n aria-label=\"More information\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n <slot name=\"label-end\"></slot>\n </div>\n )}\n\n {/* Description */}\n {this.description && (\n <p class=\"description\">{this.description}</p>\n )}\n\n {/* Input container */}\n <div\n class={inputContainerClasses}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {/* Search icon (single-line only) */}\n {!multiline && this.showSearchIcon && (\n <span class=\"search-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M21 21L16.65 16.65\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n )}\n\n {/* Native input or textarea */}\n {multiline ? (\n <textarea\n ref={(el) => this.inputEl = el ?? undefined}\n id=\"input\"\n class=\"input input--multiline\"\n name={this.name}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n required={this.required}\n readonly={this.readonly}\n rows={this.rows}\n maxlength={this.maxlength}\n minlength={this.minlength}\n style={{ resize: this.resize }}\n aria-invalid={hasError ? 'true' : undefined}\n aria-describedby={hasError ? 'error-message' : this.description ? 'description' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n ) : (\n <input\n ref={(el) => this.inputEl = el ?? undefined}\n id=\"input\"\n class=\"input\"\n type={this.type}\n name={this.name}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n required={this.required}\n readonly={this.readonly}\n autocomplete={this.autocomplete}\n maxlength={this.maxlength}\n minlength={this.minlength}\n pattern={this.pattern}\n aria-invalid={hasError ? 'true' : undefined}\n aria-describedby={hasError ? 'error-message' : this.description ? 'description' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n )}\n\n {/* Clear button (single-line only) */}\n {!multiline && this.clearable && hasValue && !this.disabled && !this.readonly && (\n <button\n type=\"button\"\n class=\"clear-button\"\n onClick={this.handleClear}\n aria-label=\"Clear input\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6 6L18 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n </div>\n\n {/* Error message */}\n {hasError && (\n <div class=\"error-row\" id=\"error-message\">\n <span class=\"error-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n <span class=\"error-text\">{this.error}</span>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n\n"]}
|
|
@@ -4,7 +4,7 @@ import { h, Host } from "@stencil/core";
|
|
|
4
4
|
*/
|
|
5
5
|
export class AfLogoWell {
|
|
6
6
|
render() {
|
|
7
|
-
return (h(Host, { key: '
|
|
7
|
+
return (h(Host, { key: '89f971eecc9e4a0656c6a6865c2653e64bbdd7bb' }, h("div", { key: 'a4ac54bd1649f010caa095b2ea1f8e7ea8b24a02', class: "logo-well" }, h("slot", { key: '11cf1c916f2b056c6ee575351263d83778529146' }))));
|
|
8
8
|
}
|
|
9
9
|
static get is() { return "af-logo-well"; }
|
|
10
10
|
static get encapsulation() { return "shadow"; }
|
|
@@ -71,7 +71,7 @@ export class AfNavAccordion {
|
|
|
71
71
|
this.syncItems();
|
|
72
72
|
}
|
|
73
73
|
render() {
|
|
74
|
-
return (h(Host, { key: '
|
|
74
|
+
return (h(Host, { key: '111706b5210510f44864d0dd8f5d2fe1901839da', class: { [`breakpoint-${this.breakpoint}`]: true, [`mode-${this.mode}`]: true } }, h("div", { key: 'e21f1a8ae3edf2c8aa08385240a536c69cf0da6e', class: "nav-accordion" }, h("slot", { key: 'c452fa149aec51c88dbaef3e59de7e28c4f89de3' }))));
|
|
75
75
|
}
|
|
76
76
|
static get is() { return "af-nav-accordion"; }
|
|
77
77
|
static get encapsulation() { return "scoped"; }
|
|
@@ -84,11 +84,11 @@ export class AfNavAccordionItem {
|
|
|
84
84
|
// sub-content to expand. A plain href item with no children is a
|
|
85
85
|
// direct link and shouldn't show a disclosure affordance.
|
|
86
86
|
const hasDropdownContent = this.hasContent;
|
|
87
|
-
return (h(Host, { key: '
|
|
87
|
+
return (h(Host, { key: 'bcdd77ad3dea306e2c1b9b8481d3e00a8cd8cc72', class: {
|
|
88
88
|
'is-open': this.open,
|
|
89
89
|
'is-disabled': this.disabled,
|
|
90
90
|
[`breakpoint-${this.breakpoint}`]: true
|
|
91
|
-
} }, h("div", { key: '
|
|
91
|
+
} }, h("div", { key: 'b82a343372689e06aff2ec3eb2b9b2b0ba02c14d', class: "nav-accordion-item" }, this.href ? (h("a", { href: this.href, class: "trigger", "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `content-${this.itemId}` }, h("div", { class: "trigger-content" }, h("slot", { name: "trigger", onSlotchange: this.handleSlotChange }, h("span", { class: "label" }, this.label))), hasDropdownContent && (h("button", { class: "chevron-button", onClick: (e) => { e.preventDefault(); e.stopPropagation(); this.toggle(); }, "aria-label": this.open ? 'Collapse' : 'Expand', type: "button" }, h("div", { class: { 'chevron': true, 'is-open': this.open } }, h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor" }, h("path", { d: "M6 9l6 6 6-6", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))))))) : (h("button", { class: "trigger", onClick: this.handleTriggerClick, onKeyDown: this.handleKeyDown, "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `content-${this.itemId}`, disabled: this.disabled, type: "button" }, h("div", { class: "trigger-content" }, h("slot", { name: "trigger", onSlotchange: this.handleSlotChange }, h("span", { class: "label" }, this.label))), hasDropdownContent && (h("div", { class: { 'chevron': true, 'is-open': this.open } }, h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor" }, h("path", { d: "M6 9l6 6 6-6", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))))), h("div", { key: '880a15014002f905a4c1c1e20dc5516022b9aee1', id: `content-${this.itemId}`, class: "content-wrapper", style: contentStyle, "aria-hidden": !this.open ? 'true' : 'false' }, h("div", { key: 'e47b8972907ad32e3fee37f030f1d86c17ac30bc', class: "content", ref: (el) => (this.contentRef = el) }, h("slot", { key: '1def93a51457196a6a023ab32905b8eaa7590c05' }))))));
|
|
92
92
|
}
|
|
93
93
|
static get is() { return "af-nav-accordion-item"; }
|
|
94
94
|
static get encapsulation() { return "scoped"; }
|
|
@@ -30,7 +30,7 @@ export class AfNavMenu {
|
|
|
30
30
|
'has-border': this.showBorder,
|
|
31
31
|
'card-style': this.cardStyle
|
|
32
32
|
};
|
|
33
|
-
return (h(Host, { key: '
|
|
33
|
+
return (h(Host, { key: '3245ae98bb4b1ab013d36630802bb1cdece57675' }, h("div", { key: 'e84dcdc45b92f928ee7b8dd2328a2b7276a2e02a', class: classes }, this.heading && (h("div", { key: 'd42c91176b53b5d0375cb29d489b722dcd3c8e74', class: "menu-header" }, h("h3", { key: 'b2cf5d6cb682db6f68c9a45045fb060710097137', class: "menu-heading" }, this.heading))), h("div", { key: '89e7aef886d60d2ce3d8b82cd1b2c588d4894be8', class: "menu-items" }, h("slot", { key: '29d596f664fdfc83fc40c17686751f1b893bce26' })))));
|
|
34
34
|
}
|
|
35
35
|
static get is() { return "af-nav-menu"; }
|
|
36
36
|
static get encapsulation() { return "scoped"; }
|
|
@@ -48,7 +48,7 @@ export class AfNavMenuNest {
|
|
|
48
48
|
[`type-${this.type}`]: true,
|
|
49
49
|
[`breakpoint-${this.breakpoint}`]: true
|
|
50
50
|
};
|
|
51
|
-
return (h(Host, { key: '
|
|
51
|
+
return (h(Host, { key: 'b0eb2c4904916a16b2b6ec6d612337fed3c05e12' }, h("div", { key: 'dd1836b1c6ee6f75555989334a35e2a41d9bacab', class: classes }, h("div", { key: '4e3ae3951e9969d21a5e18a0489a33631bb1e8f2', class: "menu-columns" }, h("slot", { key: '64c660d4a5b35dda06b0ff0ca21c0e24014ceef2' })), h("div", { key: '7418a543431a9fd0fbbf95b1e3b5e862d5ac3917', class: "menu-sidebar" }, h("slot", { key: 'd36bb4016c86d9258a70ddbb46232264bdb156e4', name: "sidebar" })))));
|
|
52
52
|
}
|
|
53
53
|
static get is() { return "af-nav-menu-nest"; }
|
|
54
54
|
static get encapsulation() { return "scoped"; }
|
|
@@ -34,7 +34,7 @@ export class AfNumberBadge {
|
|
|
34
34
|
height: `${this.size}px`,
|
|
35
35
|
fontSize: `${fontSize}px`,
|
|
36
36
|
};
|
|
37
|
-
return (h(Host, { key: '
|
|
37
|
+
return (h(Host, { key: 'e38ee2826f507669b252c5aac8b02c9f0040d97e', role: "img", "aria-label": `Number ${this.number}${isInCircle ? ' badge' : ''}` }, h("span", { key: '49d9df033be715ce38e87b32a8fec3b2d9596675', class: {
|
|
38
38
|
'badge': true,
|
|
39
39
|
[`variant-${this.variant}`]: true,
|
|
40
40
|
}, style: badgeStyle }, this.number)));
|
|
@@ -49,7 +49,7 @@ export class AfNumberedStepper {
|
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
51
|
render() {
|
|
52
|
-
return (h(Host, { key: '
|
|
52
|
+
return (h(Host, { key: '468809af144520073ec0924b8b293a1a7a98c2a6', class: `numbered-stepper numbered-stepper--${this.orientation}`, role: "list" }, h("slot", { key: 'e7ab09871620ab5ccc1b384443824a91750a15c3' })));
|
|
53
53
|
}
|
|
54
54
|
static get is() { return "af-numbered-stepper"; }
|
|
55
55
|
static get encapsulation() { return "scoped"; }
|
|
@@ -24,7 +24,7 @@ export class AfNumberedStepperItem {
|
|
|
24
24
|
render() {
|
|
25
25
|
// The badge supports 1–10; clamp for safety so we never pass a bad prop.
|
|
26
26
|
const clamped = Math.max(1, Math.min(10, this.index | 0));
|
|
27
|
-
return (h(Host, { key: '
|
|
27
|
+
return (h(Host, { key: '62bc6f558da62d664e22c680af3d4a0cd959ee27', role: "listitem" }, h("div", { key: 'aac9fb7f30e3a0bbb70303102526bc9871910737', class: "numbered-stepper-item__marker-row", "aria-hidden": "true" }, h("af-number-badge", { key: 'fb4ba62a61cdc4bced7985f8013a7adcc309cf0e', class: "numbered-stepper-item__badge", number: clamped, variant: "inCircle", size: 40 }), h("span", { key: '3090034f17f0c62ab94a91bd45b5772856b6c632', class: "numbered-stepper-item__connector" })), h("af-typography-lockup", { key: 'fdcc257515a9265330d4443d6e665ad44630cc73', class: "numbered-stepper-item__lockup", "heading-size": "card", "text-alignment": "center" }, h("slot", { key: '6905c5a82d0dc82ed81ef3847f534bde32be9262', name: "heading" }), h("span", { key: '8be84e524019bf3f51b5d8447eaae5d6d2b881f0', slot: "description" }, h("slot", { key: '6c0b5d91a79706cb864fa532d6432699130bd728', name: "body" })))));
|
|
28
28
|
}
|
|
29
29
|
static get is() { return "af-numbered-stepper-item"; }
|
|
30
30
|
static get encapsulation() { return "scoped"; }
|
|
@@ -29,14 +29,18 @@ export class AfPaperclipDecoration {
|
|
|
29
29
|
constructor() {
|
|
30
30
|
/**
|
|
31
31
|
* SVG width — accepts any CSS length or unitless number (pixels).
|
|
32
|
-
*
|
|
32
|
+
* Default sized so the watermark stays inside the af-hero
|
|
33
|
+
* inkwell-centered column without bleeding into the `logos-below`
|
|
34
|
+
* client-logo carousel. Override per-page via the prop if a larger
|
|
35
|
+
* decorative scale is wanted somewhere with no logos slot.
|
|
33
36
|
*/
|
|
34
|
-
this.width = '
|
|
37
|
+
this.width = '520';
|
|
35
38
|
/**
|
|
36
39
|
* SVG height — accepts any CSS length or unitless number (pixels).
|
|
37
|
-
*
|
|
40
|
+
* Sized to match the trimmed `width` default; preserves the source
|
|
41
|
+
* SVG's 655 × 754 aspect ratio.
|
|
38
42
|
*/
|
|
39
|
-
this.height = '
|
|
43
|
+
this.height = '600';
|
|
40
44
|
/**
|
|
41
45
|
* Fill opacity of the paperclip shape. Defaults to `0.06` to match the
|
|
42
46
|
* marketing-site watermark treatment.
|
|
@@ -50,7 +54,7 @@ export class AfPaperclipDecoration {
|
|
|
50
54
|
this.fill = 'white';
|
|
51
55
|
}
|
|
52
56
|
render() {
|
|
53
|
-
return (h(Host, { key: '
|
|
57
|
+
return (h(Host, { key: '9db0e4d35474d6c783387ed5c522943ac89f5315' }, h("svg", { key: 'a79d736a5ab711844bc1f2233c493edf66039fb4', "aria-hidden": "true", width: this.width, height: this.height, viewBox: "0 0 655 754", fill: "none", xmlns: "http://www.w3.org/2000/svg", preserveAspectRatio: "none" }, h("path", { key: 'c6a0f21366a159e5af9f69e324797450e4b31b15', d: "M1102.14 108.279C1031.8 37.5181 939.128 -1.06817 840.61 0.447304H358.674L262.104 157.124H841.87C842.558 157.124 843.36 157.124 844.047 157.124C900.638 157.124 953.791 179.273 994 219.725C1035.24 261.225 1058.04 316.715 1058.04 376.052C1058.04 497.872 960.665 596.844 841.068 596.844H251.335C197.609 596.844 153.848 552.313 153.848 497.639C153.848 442.965 197.723 397.734 251.221 396.102H779.208L878.872 239.426H248.586C111.577 242.923 0 358.682 0 497.639C0 636.596 112.723 753.404 251.335 753.404H841.068C1045.55 753.404 1212 584.021 1212 375.935C1212 274.398 1173.05 179.39 1102.26 108.162L1102.14 108.279Z", fill: this.fill, "fill-opacity": this.opacity }))));
|
|
54
58
|
}
|
|
55
59
|
static get is() { return "af-paperclip-decoration"; }
|
|
56
60
|
static get encapsulation() { return "shadow"; }
|
|
@@ -78,13 +82,13 @@ export class AfPaperclipDecoration {
|
|
|
78
82
|
"optional": false,
|
|
79
83
|
"docs": {
|
|
80
84
|
"tags": [],
|
|
81
|
-
"text": "SVG width \u2014 accepts any CSS length or unitless number (pixels).\
|
|
85
|
+
"text": "SVG width \u2014 accepts any CSS length or unitless number (pixels).\nDefault sized so the watermark stays inside the af-hero\ninkwell-centered column without bleeding into the `logos-below`\nclient-logo carousel. Override per-page via the prop if a larger\ndecorative scale is wanted somewhere with no logos slot."
|
|
82
86
|
},
|
|
83
87
|
"getter": false,
|
|
84
88
|
"setter": false,
|
|
85
89
|
"reflect": false,
|
|
86
90
|
"attribute": "width",
|
|
87
|
-
"defaultValue": "'
|
|
91
|
+
"defaultValue": "'520'"
|
|
88
92
|
},
|
|
89
93
|
"height": {
|
|
90
94
|
"type": "string",
|
|
@@ -98,13 +102,13 @@ export class AfPaperclipDecoration {
|
|
|
98
102
|
"optional": false,
|
|
99
103
|
"docs": {
|
|
100
104
|
"tags": [],
|
|
101
|
-
"text": "SVG height \u2014 accepts any CSS length or unitless number (pixels).\
|
|
105
|
+
"text": "SVG height \u2014 accepts any CSS length or unitless number (pixels).\nSized to match the trimmed `width` default; preserves the source\nSVG's 655 \u00D7 754 aspect ratio."
|
|
102
106
|
},
|
|
103
107
|
"getter": false,
|
|
104
108
|
"setter": false,
|
|
105
109
|
"reflect": false,
|
|
106
110
|
"attribute": "height",
|
|
107
|
-
"defaultValue": "'
|
|
111
|
+
"defaultValue": "'600'"
|
|
108
112
|
},
|
|
109
113
|
"opacity": {
|
|
110
114
|
"type": "number",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"af-paperclip-decoration.js","sourceRoot":"","sources":["../../../src/components/af-paperclip-decoration/af-paperclip-decoration.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH,MAAM,OAAO,qBAAqB;IALlC;QAME
|
|
1
|
+
{"version":3,"file":"af-paperclip-decoration.js","sourceRoot":"","sources":["../../../src/components/af-paperclip-decoration/af-paperclip-decoration.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH,MAAM,OAAO,qBAAqB;IALlC;QAME;;;;;;WAMG;QACK,UAAK,GAAW,KAAK,CAAC;QAE9B;;;;WAIG;QACK,WAAM,GAAW,KAAK,CAAC;QAE/B;;;WAGG;QACK,YAAO,GAAW,IAAI,CAAC;QAE/B;;;;WAIG;QACK,SAAI,GAAW,OAAO,CAAC;KAuBhC;IArBC,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,2EACc,MAAM,EAClB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAC,aAAa,EACrB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,EAClC,mBAAmB,EAAC,MAAM;gBAE1B,6DACE,CAAC,EAAC,imBAAimB,EACnmB,IAAI,EAAE,IAAI,CAAC,IAAI,kBACD,IAAI,CAAC,OAAO,GAC1B,CACE,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Host, Prop } from '@stencil/core';\n\n/**\n * Decorative paperclip vector graphic. Renders the left-half paperclip\n * silhouette (viewBox `0 0 655 754`) that the marketing site bleeds off\n * the right edge of inkwell hero sections.\n *\n * Purely decorative — the inner `<svg>` is `aria-hidden=\"true\"`. Size it\n * via the `width` / `height` props (they accept any CSS length, e.g.\n * `\"655\"`, `\"100%\"`, `\"50vw\"`) and position the host element in CSS.\n *\n * `fill` is white by default (intended for inkwell backgrounds); override\n * for other themes, e.g. `fill=\"var(--colour-brand-inkwell)\"` on a\n * mist-green section. `opacity` defaults to `0.06` to match the\n * watermark treatment used on `/`, `/au`, and `/platform`.\n *\n * @example\n * ```html\n * <af-section theme=\"inkwell\" padding=\"loose\" style=\"position:relative;overflow:hidden\">\n * <af-paperclip-decoration\n * style=\"position:absolute;bottom:-80px;right:-80px\"\n * ></af-paperclip-decoration>\n * <af-container style=\"position:relative;z-index:1\">\n * <!-- hero content -->\n * </af-container>\n * </af-section>\n * ```\n */\n@Component({\n tag: 'af-paperclip-decoration',\n styleUrl: 'af-paperclip-decoration.css',\n shadow: true\n})\nexport class AfPaperclipDecoration {\n /**\n * SVG width — accepts any CSS length or unitless number (pixels).\n * Default sized so the watermark stays inside the af-hero\n * inkwell-centered column without bleeding into the `logos-below`\n * client-logo carousel. Override per-page via the prop if a larger\n * decorative scale is wanted somewhere with no logos slot.\n */\n @Prop() width: string = '520';\n\n /**\n * SVG height — accepts any CSS length or unitless number (pixels).\n * Sized to match the trimmed `width` default; preserves the source\n * SVG's 655 × 754 aspect ratio.\n */\n @Prop() height: string = '600';\n\n /**\n * Fill opacity of the paperclip shape. Defaults to `0.06` to match the\n * marketing-site watermark treatment.\n */\n @Prop() opacity: number = 0.06;\n\n /**\n * Fill colour. Defaults to `white` (designed for inkwell backgrounds);\n * override for other themes, e.g. `var(--colour-brand-inkwell)` on a\n * mist-green section.\n */\n @Prop() fill: string = 'white';\n\n render() {\n return (\n <Host>\n <svg\n aria-hidden=\"true\"\n width={this.width}\n height={this.height}\n viewBox=\"0 0 655 754\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n preserveAspectRatio=\"none\"\n >\n <path\n d=\"M1102.14 108.279C1031.8 37.5181 939.128 -1.06817 840.61 0.447304H358.674L262.104 157.124H841.87C842.558 157.124 843.36 157.124 844.047 157.124C900.638 157.124 953.791 179.273 994 219.725C1035.24 261.225 1058.04 316.715 1058.04 376.052C1058.04 497.872 960.665 596.844 841.068 596.844H251.335C197.609 596.844 153.848 552.313 153.848 497.639C153.848 442.965 197.723 397.734 251.221 396.102H779.208L878.872 239.426H248.586C111.577 242.923 0 358.682 0 497.639C0 636.596 112.723 753.404 251.335 753.404H841.068C1045.55 753.404 1212 584.021 1212 375.935C1212 274.398 1173.05 179.39 1102.26 108.162L1102.14 108.279Z\"\n fill={this.fill}\n fill-opacity={this.opacity}\n />\n </svg>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -21,10 +21,10 @@ export class AfProgressLine {
|
|
|
21
21
|
// Clamp progress between 0 and 1
|
|
22
22
|
const clampedProgress = Math.max(0, Math.min(1, this.progress));
|
|
23
23
|
const progressPercent = clampedProgress * 100;
|
|
24
|
-
return (h(Host, { key: '
|
|
24
|
+
return (h(Host, { key: 'f56ae490d0d9e374f540ccb88b0af53430796b42' }, h("div", { key: '20832426b290b5ee44d0507848f1cd4f06973202', class: {
|
|
25
25
|
'progress-line': true,
|
|
26
26
|
[`progress-line--${this.orientation}`]: true,
|
|
27
|
-
}, role: "progressbar", "aria-valuenow": Math.round(progressPercent), "aria-valuemin": 0, "aria-valuemax": 100 }, h("div", { key: '
|
|
27
|
+
}, role: "progressbar", "aria-valuenow": Math.round(progressPercent), "aria-valuemin": 0, "aria-valuemax": 100 }, h("div", { key: '19623163676a5fd71c7b5ba91b33f53d188647c9', class: "progress-line__background" }), h("div", { key: '0bd6ccd0748930edd43a384bf8ddad55f8c9d07b', class: "progress-line__active", style: { width: `${progressPercent}%` } }))));
|
|
28
28
|
}
|
|
29
29
|
static get is() { return "af-progress-line"; }
|
|
30
30
|
static get encapsulation() { return "scoped"; }
|
|
@@ -13,8 +13,8 @@ export class AfSection {
|
|
|
13
13
|
this.container = true;
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
|
-
const content = h("slot", { key: '
|
|
17
|
-
return (h(Host, { key: '
|
|
16
|
+
const content = h("slot", { key: 'fd7304dd713f0cbad475910d56fd9e2622068fad' });
|
|
17
|
+
return (h(Host, { key: 'f1758977b8ce080e03631629507f33759d1696d9' }, h("div", { key: 'af0fd30917df8a59cf7d441e9346ed643672aaec', class: `section padding-${this.padding} theme-${this.theme}` }, this.container ? (h("af-container", null, content)) : content)));
|
|
18
18
|
}
|
|
19
19
|
static get is() { return "af-section"; }
|
|
20
20
|
static get encapsulation() { return "scoped"; }
|