@spw-ds/spw-stencil-library 0.0.1 → 0.0.2

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 (57) hide show
  1. package/dist/cjs/spw-accordion_58.cjs.entry.js +2 -2
  2. package/dist/collection/components/spw-field-label/spw-field-label.css +1 -1
  3. package/dist/collection/components/spw-icon/spw-icon.css +1 -1
  4. package/dist/components/{p-0e197bb5.js → p-07ac48ed.js} +5 -5
  5. package/dist/components/{p-0e197bb5.js.map → p-07ac48ed.js.map} +1 -1
  6. package/dist/components/{p-e37034cf.js → p-14e4a98e.js} +2 -2
  7. package/dist/components/{p-e37034cf.js.map → p-14e4a98e.js.map} +1 -1
  8. package/dist/components/{p-987e354f.js → p-8c8860d5.js} +2 -2
  9. package/dist/components/{p-987e354f.js.map → p-8c8860d5.js.map} +1 -1
  10. package/dist/components/{p-e70f2b83.js → p-bbb44573.js} +2 -2
  11. package/dist/components/{p-e70f2b83.js.map → p-bbb44573.js.map} +1 -1
  12. package/dist/components/{p-1808c8c6.js → p-bd601090.js} +2 -2
  13. package/dist/components/{p-1808c8c6.js.map → p-bd601090.js.map} +1 -1
  14. package/dist/components/{p-cb99b731.js → p-c31b87b0.js} +4 -4
  15. package/dist/components/{p-cb99b731.js.map → p-c31b87b0.js.map} +1 -1
  16. package/dist/components/{p-b3b66a09.js → p-c5168e9d.js} +2 -2
  17. package/dist/components/{p-b3b66a09.js.map → p-c5168e9d.js.map} +1 -1
  18. package/dist/components/{p-a9181b0a.js → p-d18f9af5.js} +2 -2
  19. package/dist/components/{p-a9181b0a.js.map → p-d18f9af5.js.map} +1 -1
  20. package/dist/components/{p-72ca702e.js → p-ed9b2f43.js} +2 -2
  21. package/dist/components/{p-72ca702e.js.map → p-ed9b2f43.js.map} +1 -1
  22. package/dist/components/spw-accordion-title.js +1 -1
  23. package/dist/components/spw-breadcrumb-item.js +2 -2
  24. package/dist/components/spw-button.js +1 -1
  25. package/dist/components/spw-card-image.js +1 -1
  26. package/dist/components/spw-checkbox.js +1 -1
  27. package/dist/components/spw-cookies.js +4 -4
  28. package/dist/components/spw-custom-select.js +4 -4
  29. package/dist/components/spw-field-label.js +1 -1
  30. package/dist/components/spw-field-message.js +1 -1
  31. package/dist/components/spw-file-upload.js +2 -2
  32. package/dist/components/spw-group.js +1 -1
  33. package/dist/components/spw-header-lang.js +2 -2
  34. package/dist/components/spw-header-navigation-item.js +1 -1
  35. package/dist/components/spw-header-navigation.js +1 -1
  36. package/dist/components/spw-header-persona.js +1 -1
  37. package/dist/components/spw-header.js +2 -2
  38. package/dist/components/spw-icon.js +1 -1
  39. package/dist/components/spw-iodda.js +5 -5
  40. package/dist/components/spw-link.js +1 -1
  41. package/dist/components/spw-message.js +2 -2
  42. package/dist/components/spw-modal.js +1 -1
  43. package/dist/components/spw-pagination.js +1 -1
  44. package/dist/components/spw-search-field.js +4 -4
  45. package/dist/components/spw-select.js +3 -3
  46. package/dist/components/spw-text-field.js +1 -1
  47. package/dist/components/spw-textarea.js +3 -3
  48. package/dist/components_json.json +1 -1
  49. package/dist/components_vscode.json +1747 -0
  50. package/dist/esm/spw-accordion_58.entry.js +2 -2
  51. package/dist/spw-stencil-library/{p-d3d3de91.entry.js → p-b7608de1.entry.js} +2 -2
  52. package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
  53. package/dist/stats.json +25 -25
  54. package/hydrate/index.js +2 -2
  55. package/hydrate/index.mjs +2 -2
  56. package/package.json +1 -1
  57. /package/dist/spw-stencil-library/{p-d3d3de91.entry.js.map → p-b7608de1.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"p-987e354f.js","mappings":"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","names":[],"sources":["src/components/spw-checkbox/spw-checkbox.scss?tag=spw-checkbox&encapsulation=shadow","src/components/spw-checkbox/spw-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n vertical-align: top;\n}\n\n.spw-checkbox {\n display: inline-flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0;\n gap: var(--spw-spacings-spacing-sm);\n\n &__wrapper {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n width: 20px;\n height: 20px;\n background-color: var(--spw-ds-white);\n border: 2px solid var(--spw-color-themes-grey-grey-900);\n border-radius: var(--spw-spacings-border-radius-2-xs);\n font-size: var(--spw-typography-body-body-3-font-size);\n flex: none;\n order: 0;\n flex-grow: 0;\n\n spw-icon {\n font-size: 14px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n\n &--error {\n border-color: var(--spw-colors-dark-states-error-error-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):focus-visible,\n &:not(.spw-checkbox__wrapper--disabled):active,\n &:not(.spw-checkbox__wrapper--disabled):focus-within {\n outline: 2px solid var(--spw-ds-focus);\n outline-offset: 2px;\n }\n\n &:not(.spw-checkbox__wrapper--disabled):active {\n box-shadow: 0 0 4px var(--spw-color-themes-grey-grey-300);\n }\n\n &--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n\n &--checked {\n border-color: var(--spw-ds-primary);\n color: var(--spw-ds-primary);\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n }\n\n &__label {\n color: var(--spw-color-themes-grey-grey-900);\n word-wrap: break-word;\n order: 1;\n padding-top: 1px;\n user-select: none;\n\n &:hover ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:active ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n box-shadow: 0 0 4px var(--spw-color-themes-grey-grey-300);\n outline: 2px solid var(--spw-ds-focus);\n outline-offset: 2px;\n }\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &__wrapper,\n &__label {\n &:hover {\n cursor: pointer;\n }\n &--disabled:hover {\n cursor: not-allowed;\n }\n }\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'spw-checkbox',\n styleUrl: 'spw-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class SpwCheckbox {\n private inputElement: HTMLInputElement;\n\n @Element() el: HTMLSpwCheckboxElement;\n\n /** Détermine si la case à cocher est désactivée, rendant l'élément inutilisable */\n @Prop() disabled: boolean = false;\n /** Propriété mutable qui reflète si la case à cocher est cochée ou non */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n /** Indique s'il y a une erreur associée à la case à cocher, pour un affichage visuel */\n @Prop() error: boolean = false;\n /** Icône à afficher lorsque la case à cocher est cochée */\n @Prop() icon: string = 'fa-check';\n /** Nom de l'élément utilisé dans les formulaires */\n @Prop() name: string;\n\n @State() internalChecked: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n /** Événement déclenché lors d'un changement d'état de la case à cocher (cochée ou décochée) */\n @Event({ bubbles: true, composed: true }) spwChange: EventEmitter<boolean>;\n\n private handleCheckbox() {\n if (!this.disabled) {\n this.internalChecked = !this.internalChecked;\n this.checked = this.internalChecked;\n this.updateFormValue();\n this.spwChange.emit(this.internalChecked);\n }\n }\n\n /** Méthode publique pour changer l'état de la case à cocher. */\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n this.checked = newVal;\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged(newChecked: boolean) {\n this.internalChecked = newChecked;\n this.inputElement.checked = newChecked;\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (this.internalChecked) {\n this.internals.setFormValue('on');\n } else {\n this.internals.setFormValue(null);\n }\n }\n\n private handleKeydown(event) {\n if (event.key === ' ' || event.key === 'Enter') {\n // Space or Enter keys\n this.handleCheckbox();\n event.preventDefault();\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.updateFormValue();\n }\n\n componentDidLoad() {\n this.el.closest('form')?.addEventListener('formdata', (e: FormDataEvent) => {\n if (this.internalChecked) {\n e.formData.set(this.name, 'on');\n }\n });\n }\n\n formResetCallback() {\n this.internalChecked = false;\n this.checked = false;\n this.updateFormValue();\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-checkbox__wrapper': true,\n 'spw-checkbox__wrapper--disabled': this.disabled,\n 'spw-checkbox__wrapper--checked': this.internalChecked,\n 'spw-checkbox__wrapper--error': this.error,\n };\n }\n\n render() {\n const slot = this.el.innerHTML;\n const hasSlot = Boolean(slot);\n\n return (\n <div class=\"spw-checkbox\">\n <input\n type=\"checkbox\"\n ref={el => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)}\n name={this.name}\n disabled={this.disabled}\n style={{ display: 'none' }}\n />\n {hasSlot && (\n <label htmlFor={this.name} class={`spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </label>\n )}\n <div\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-labelledby=\"label\"\n class={this.elementClass}\n >\n {this.internalChecked && <spw-icon icon={this.icon}></spw-icon>}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-8c8860d5.js","mappings":"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","names":[],"sources":["src/components/spw-checkbox/spw-checkbox.scss?tag=spw-checkbox&encapsulation=shadow","src/components/spw-checkbox/spw-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n vertical-align: top;\n}\n\n.spw-checkbox {\n display: inline-flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0;\n gap: var(--spw-spacings-spacing-sm);\n\n &__wrapper {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n width: 20px;\n height: 20px;\n background-color: var(--spw-ds-white);\n border: 2px solid var(--spw-color-themes-grey-grey-900);\n border-radius: var(--spw-spacings-border-radius-2-xs);\n font-size: var(--spw-typography-body-body-3-font-size);\n flex: none;\n order: 0;\n flex-grow: 0;\n\n spw-icon {\n font-size: 14px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n\n &--error {\n border-color: var(--spw-colors-dark-states-error-error-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):focus-visible,\n &:not(.spw-checkbox__wrapper--disabled):active,\n &:not(.spw-checkbox__wrapper--disabled):focus-within {\n outline: 2px solid var(--spw-ds-focus);\n outline-offset: 2px;\n }\n\n &:not(.spw-checkbox__wrapper--disabled):active {\n box-shadow: 0 0 4px var(--spw-color-themes-grey-grey-300);\n }\n\n &--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n\n &--checked {\n border-color: var(--spw-ds-primary);\n color: var(--spw-ds-primary);\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n }\n\n &__label {\n color: var(--spw-color-themes-grey-grey-900);\n word-wrap: break-word;\n order: 1;\n padding-top: 1px;\n user-select: none;\n\n &:hover ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:active ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n box-shadow: 0 0 4px var(--spw-color-themes-grey-grey-300);\n outline: 2px solid var(--spw-ds-focus);\n outline-offset: 2px;\n }\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &__wrapper,\n &__label {\n &:hover {\n cursor: pointer;\n }\n &--disabled:hover {\n cursor: not-allowed;\n }\n }\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'spw-checkbox',\n styleUrl: 'spw-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class SpwCheckbox {\n private inputElement: HTMLInputElement;\n\n @Element() el: HTMLSpwCheckboxElement;\n\n /** Détermine si la case à cocher est désactivée, rendant l'élément inutilisable */\n @Prop() disabled: boolean = false;\n /** Propriété mutable qui reflète si la case à cocher est cochée ou non */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n /** Indique s'il y a une erreur associée à la case à cocher, pour un affichage visuel */\n @Prop() error: boolean = false;\n /** Icône à afficher lorsque la case à cocher est cochée */\n @Prop() icon: string = 'fa-check';\n /** Nom de l'élément utilisé dans les formulaires */\n @Prop() name: string;\n\n @State() internalChecked: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n /** Événement déclenché lors d'un changement d'état de la case à cocher (cochée ou décochée) */\n @Event({ bubbles: true, composed: true }) spwChange: EventEmitter<boolean>;\n\n private handleCheckbox() {\n if (!this.disabled) {\n this.internalChecked = !this.internalChecked;\n this.checked = this.internalChecked;\n this.updateFormValue();\n this.spwChange.emit(this.internalChecked);\n }\n }\n\n /** Méthode publique pour changer l'état de la case à cocher. */\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n this.checked = newVal;\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged(newChecked: boolean) {\n this.internalChecked = newChecked;\n this.inputElement.checked = newChecked;\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (this.internalChecked) {\n this.internals.setFormValue('on');\n } else {\n this.internals.setFormValue(null);\n }\n }\n\n private handleKeydown(event) {\n if (event.key === ' ' || event.key === 'Enter') {\n // Space or Enter keys\n this.handleCheckbox();\n event.preventDefault();\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.updateFormValue();\n }\n\n componentDidLoad() {\n this.el.closest('form')?.addEventListener('formdata', (e: FormDataEvent) => {\n if (this.internalChecked) {\n e.formData.set(this.name, 'on');\n }\n });\n }\n\n formResetCallback() {\n this.internalChecked = false;\n this.checked = false;\n this.updateFormValue();\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-checkbox__wrapper': true,\n 'spw-checkbox__wrapper--disabled': this.disabled,\n 'spw-checkbox__wrapper--checked': this.internalChecked,\n 'spw-checkbox__wrapper--error': this.error,\n };\n }\n\n render() {\n const slot = this.el.innerHTML;\n const hasSlot = Boolean(slot);\n\n return (\n <div class=\"spw-checkbox\">\n <input\n type=\"checkbox\"\n ref={el => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)}\n name={this.name}\n disabled={this.disabled}\n style={{ display: 'none' }}\n />\n {hasSlot && (\n <label htmlFor={this.name} class={`spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </label>\n )}\n <div\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-labelledby=\"label\"\n class={this.elementClass}\n >\n {this.internalChecked && <spw-icon icon={this.icon}></spw-icon>}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-3706b88e.js';
2
- import { d as defineCustomElement$1 } from './p-72ca702e.js';
2
+ import { d as defineCustomElement$1 } from './p-ed9b2f43.js';
3
3
 
4
4
  const spwFieldMessageCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1220px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-field-message{display:block;display:flex;gap:4px;margin-top:8px}.spw-field-message--error{color:var(--spw-color-states-error-error-300)}.spw-field-message--hint{color:var(--spw-colors-support-grey-grey-600)}.spw-field-message--success{color:var(--spw-color-states-success-success-500)}.spw-field-message__icon{position:relative;top:1px}.spw-field-message__text{flex:1;font-size:14px;line-height:1.5}.-spw-tw-mt-1{margin-top:-.25rem}.spw-tw-mb-2{margin-bottom:.5rem}.spw-tw-mr-2{margin-right:.5rem}.spw-tw-mb-10{margin-bottom:2.5rem}.spw-tw-mb-6{margin-bottom:1.5rem}.spw-tw-ml-2{margin-left:.5rem}.spw-tw-mr-4{margin-right:1rem}.spw-tw-mt-12{margin-top:3rem}.spw-tw-italic{font-style:italic}";
5
5
  const SpwFieldMessageStyle0 = spwFieldMessageCss;
@@ -59,4 +59,4 @@ function defineCustomElement() {
59
59
 
60
60
  export { SpwFieldMessage as S, defineCustomElement as d };
61
61
 
62
- //# sourceMappingURL=p-e70f2b83.js.map
62
+ //# sourceMappingURL=p-bbb44573.js.map
@@ -1 +1 @@
1
- {"file":"p-e70f2b83.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,4rGAA4rG,CAAC;AACxtG,8BAAe,kBAAkB;;MCMpB,eAAe;;;;;wBAEG,IAAI;;;IAIjC,IAAY,WAAW;QACrB,QAAQ,IAAI,CAAC,OAAO;YAClB,KAAK,OAAO;gBACV,OAAO,YAAY,CAAC;YACtB,KAAK,MAAM;gBACT,OAAO,uBAAuB,CAAC;YACjC,KAAK,SAAS;gBACZ,OAAO,iBAAiB,CAAC;YAC3B;gBACE,OAAO,EAAE,CAAC;SACb;KACF;IAED,IAAY,YAAY;QACtB,OAAO;YACL,mBAAmB,EAAE,IAAI;YACzB,CAAC,sBAAsB,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI;SAC7C,CAAC;KACH;IAED,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,4DAAK,KAAK,EAAE,IAAI,CAAC,YAAY,IAC1B,IAAI,CAAC,QAAQ,KACZ,4DAAK,KAAK,EAAC,yBAAyB,IAClC,iEAAU,IAAI,EAAE,IAAI,CAAC,WAAW,GAAa,CACzC,CACP,EACD,6DAAM,KAAK,EAAC,yBAAyB,IACnC,8DAAa,CACR,CACH,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-field-message/spw-field-message.scss?tag=spw-field-message&encapsulation=shadow","src/components/spw-field-message/spw-field-message.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-field-message {\n display: block;\n margin-top: 8px;\n display: flex;\n gap: 4px;\n\n &--error {\n color: var(--spw-color-states-error-error-300);\n }\n\n &--hint {\n color: var(--spw-colors-support-grey-grey-600);\n }\n\n &--success {\n color: var(--spw-color-states-success-success-500);\n }\n\n &__icon {\n position: relative;\n top: 1px;\n }\n\n &__text {\n flex: 1;\n font-size: 14px;\n line-height: 1.5;\n }\n}\n","import { Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-field-message',\n styleUrl: 'spw-field-message.scss',\n shadow: true,\n})\nexport class SpwFieldMessage {\n /** Permet d'afficher ou pas une icône dans le message */\n @Prop() showIcon?: boolean = true;\n /** Choix du variant du message */\n @Prop() variant?: 'error' | 'hint' | 'success';\n\n private get variantIcon(): string {\n switch (this.variant) {\n case 'error':\n return 'fa-warning';\n case 'hint':\n return 'fa-exclamation-circle';\n case 'success':\n return 'fa-check-circle';\n default:\n return '';\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-field-message': true,\n [`spw-field-message--${this.variant}`]: true,\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.elementClass}>\n {this.showIcon && (\n <div class=\"spw-field-message__icon\">\n <spw-icon icon={this.variantIcon}></spw-icon>\n </div>\n )}\n <span class=\"spw-field-message__text\">\n <slot></slot>\n </span>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-bbb44573.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,4rGAA4rG,CAAC;AACxtG,8BAAe,kBAAkB;;MCMpB,eAAe;;;;;wBAEG,IAAI;;;IAIjC,IAAY,WAAW;QACrB,QAAQ,IAAI,CAAC,OAAO;YAClB,KAAK,OAAO;gBACV,OAAO,YAAY,CAAC;YACtB,KAAK,MAAM;gBACT,OAAO,uBAAuB,CAAC;YACjC,KAAK,SAAS;gBACZ,OAAO,iBAAiB,CAAC;YAC3B;gBACE,OAAO,EAAE,CAAC;SACb;KACF;IAED,IAAY,YAAY;QACtB,OAAO;YACL,mBAAmB,EAAE,IAAI;YACzB,CAAC,sBAAsB,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI;SAC7C,CAAC;KACH;IAED,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,4DAAK,KAAK,EAAE,IAAI,CAAC,YAAY,IAC1B,IAAI,CAAC,QAAQ,KACZ,4DAAK,KAAK,EAAC,yBAAyB,IAClC,iEAAU,IAAI,EAAE,IAAI,CAAC,WAAW,GAAa,CACzC,CACP,EACD,6DAAM,KAAK,EAAC,yBAAyB,IACnC,8DAAa,CACR,CACH,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-field-message/spw-field-message.scss?tag=spw-field-message&encapsulation=shadow","src/components/spw-field-message/spw-field-message.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-field-message {\n display: block;\n margin-top: 8px;\n display: flex;\n gap: 4px;\n\n &--error {\n color: var(--spw-color-states-error-error-300);\n }\n\n &--hint {\n color: var(--spw-colors-support-grey-grey-600);\n }\n\n &--success {\n color: var(--spw-color-states-success-success-500);\n }\n\n &__icon {\n position: relative;\n top: 1px;\n }\n\n &__text {\n flex: 1;\n font-size: 14px;\n line-height: 1.5;\n }\n}\n","import { Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-field-message',\n styleUrl: 'spw-field-message.scss',\n shadow: true,\n})\nexport class SpwFieldMessage {\n /** Permet d'afficher ou pas une icône dans le message */\n @Prop() showIcon?: boolean = true;\n /** Choix du variant du message */\n @Prop() variant?: 'error' | 'hint' | 'success';\n\n private get variantIcon(): string {\n switch (this.variant) {\n case 'error':\n return 'fa-warning';\n case 'hint':\n return 'fa-exclamation-circle';\n case 'success':\n return 'fa-check-circle';\n default:\n return '';\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-field-message': true,\n [`spw-field-message--${this.variant}`]: true,\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.elementClass}>\n {this.showIcon && (\n <div class=\"spw-field-message__icon\">\n <spw-icon icon={this.variantIcon}></spw-icon>\n </div>\n )}\n <span class=\"spw-field-message__text\">\n <slot></slot>\n </span>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, d as createEvent, h } from './p-3706b88e.js';
2
- import { d as defineCustomElement$1 } from './p-72ca702e.js';
2
+ import { d as defineCustomElement$1 } from './p-ed9b2f43.js';
3
3
 
4
4
  const spwLinkCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-link-color:var(--spw-ds-primary);--spw-link-hover-color:var(--spw-ds-variant);--spw-link-active-color:var(--spw-ds-active);--spw-link-padding:6px;box-sizing:border-box;display:inline;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1220px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-link{border-radius:4px;color:var(--spw-link-color);cursor:pointer;display:inline;font-weight:700;text-decoration:none}.spw-link--surface-dark{color:var(--spw-ds-white)}.spw-link__inner{border-bottom:1px solid var(--spw-link-color);display:inline}.spw-link--surface-dark .spw-link__inner{border-bottom:1px solid var(--spw-ds-white)}.spw-link:focus-visible{outline:2px solid var(--spw-ds-focus);outline-offset:1px}.spw-link:hover{color:var(--spw-link-hover-color)}.spw-link:hover .spw-link__inner{border-bottom:2px solid var(--spw-link-hover-color)}.spw-link:active{color:var(--spw-link-active-color)}.spw-link:active .spw-link__inner{border-bottom:2px solid var(--spw-link-active-color)}.spw-link[aria-disabled=true]{color:var(--spw-color-themes-grey-grey-600);cursor:not-allowed;pointer-events:none}.spw-link--surface-dark:hover{color:var(--spw-ds-white)}.spw-link--surface-dark:hover .spw-link__inner{border-bottom:2px solid var(--spw-ds-white)}.spw-link--surface-dark:active{color:var(--spw-ds-white)}.spw-link--surface-dark:active .spw-link__inner{border-bottom:2px solid var(--spw-ds-white)}.spw-link--surface-dark[aria-disabled=true]{color:var(--spw-ds-white);opacity:.5}.spw-link--has-icon-right spw-icon{margin-left:var(--spw-link-padding);margin-right:4px}.spw-link--has-icon-left spw-icon{margin-left:4px;margin-right:var(--spw-link-padding)}";
5
5
  const SpwLinkStyle0 = spwLinkCss;
@@ -78,4 +78,4 @@ function defineCustomElement() {
78
78
 
79
79
  export { SpwLink as S, defineCustomElement as d };
80
80
 
81
- //# sourceMappingURL=p-1808c8c6.js.map
81
+ //# sourceMappingURL=p-bd601090.js.map
@@ -1 +1 @@
1
- {"file":"p-1808c8c6.js","mappings":";;;AAAA,MAAM,UAAU,GAAG,y+HAAy+H,CAAC;AAC7/H,sBAAe,UAAU;;MCMZ,OAAO;;;;;;QAuBV,YAAO,GAAG,CAAC,EAAc;YAC/B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,EAAE,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO;aACR;YACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACxB,CAAC;;sBAvBwB,OAAO;;;4BAMS,OAAO;wBAEpB,KAAK;;uBAIG,OAAO;;IAa5C,IAAY,YAAY;QACtB,OAAO;YACL,UAAU,EAAE,IAAI;YAChB,0BAA0B,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO;YACtE,yBAAyB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,MAAM;YACpE,CAAC,qBAAqB,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI;YAC3C,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;SAClC,CAAC;KACH;IAED,MAAM;QACJ,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC/E,MAAM,cAAc,GAAG;YACrB,YAAY,EAAE,YAAY;YAC1B,eAAe,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;SAC1C,CAAC;QAEF,MAAM,SAAS,GAAG,aAAa,YAAY,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAI,GAAG,gBAAU,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,GAAa,GAAG,IAAI,CAAC;QAEtF,QACE,wEAAG,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAM,cAAc,GAChI,YAAY,KAAK,MAAM,IAAI,WAAW,EACvC,4DAAK,KAAK,EAAC,iBAAiB,IAC1B,8DAAa,CACT,EACL,YAAY,KAAK,OAAO,IAAI,WAAW,CACtC,EACJ;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-link/spw-link.scss?tag=spw-link&encapsulation=shadow","src/components/spw-link/spw-link.tsx"],"sourcesContent":[":host {\n display: inline;\n --spw-link-color: var(--spw-ds-primary);\n --spw-link-hover-color: var(--spw-ds-variant);\n --spw-link-active-color: var(--spw-ds-active);\n --spw-link-padding: 6px;\n}\n\n.spw-link {\n display: inline;\n text-decoration: none;\n cursor: pointer;\n color: var(--spw-link-color);\n border-radius: 4px;\n font-weight: 700;\n &--surface-dark {\n color: var(--spw-ds-white);\n }\n\n &__inner {\n display: inline;\n border-bottom: 1px solid var(--spw-link-color);\n .spw-link--surface-dark & {\n border-bottom: 1px solid var(--spw-ds-white);\n }\n }\n\n &:focus-visible {\n outline-offset: 1px;\n outline: 2px solid var(--spw-ds-focus);\n }\n\n &:hover {\n color: var(--spw-link-hover-color);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-link-hover-color);\n }\n }\n\n &:active {\n color: var(--spw-link-active-color);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-link-active-color);\n }\n }\n\n &[aria-disabled='true'] {\n pointer-events: none;\n color: var(--spw-color-themes-grey-grey-600);\n cursor: not-allowed;\n }\n\n &--surface-dark {\n &:hover {\n color: var(--spw-ds-white);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-ds-white);\n }\n }\n\n &:active {\n color: var(--spw-ds-white);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-ds-white);\n }\n }\n\n &[aria-disabled='true'] {\n color: var(--spw-ds-white);\n opacity: 0.5;\n }\n }\n\n &--has-icon-right spw-icon {\n margin-left: var(--spw-link-padding);\n margin-right: 4px;\n }\n\n &--has-icon-left spw-icon {\n margin-left: 4px;\n margin-right: var(--spw-link-padding);\n }\n}\n","import { Component, Element, Prop, h, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'spw-link',\n styleUrl: 'spw-link.scss',\n shadow: true,\n})\nexport class SpwLink {\n @Element() el: HTMLSpwLinkElement;\n\n /** Spécifie le lien href */\n @Prop() href: string;\n /** Attribut target (détermine où ouvrir le lien) */\n @Prop() target?: string = '_self';\n /** Remplit l'attribut rel */\n @Prop() rel?: string;\n /** Si rempli, permet d'utiliser une référence d'icône font-awesome */\n @Prop() icon?: string;\n /** Position de l'icône à l'intérieur du lien (gauche ou droite) */\n @Prop() iconPosition?: 'left' | 'right' = 'right';\n /** Si désactivé, le lien n'est pas cliquable */\n @Prop() disabled?: boolean = false;\n /** Remplit l'attribut aria-label, utilisé à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n /** Permet de choisir la surface d'arrière-plan du lien */\n @Prop() surface?: 'light' | 'dark' = 'light';\n\n /** Événement déclenché lors du clic sur le lien */\n @Event() spwClick: EventEmitter<MouseEvent>;\n\n private onClick = (ev: MouseEvent) => {\n if (this.disabled) {\n ev.preventDefault();\n return;\n }\n this.spwClick.emit(ev);\n };\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-link': true,\n 'spw-link--has-icon-right': this.icon && this.iconPosition === 'right',\n 'spw-link--has-icon-left': this.icon && this.iconPosition === 'left',\n [`spw-link--surface-${this.surface}`]: true,\n 'spw-link--has-icon': !!this.icon,\n };\n }\n\n render() {\n const { href, rel, target, icon, iconPosition, accAriaLabel, disabled } = this;\n const ariaAttributes = {\n 'aria-label': accAriaLabel,\n 'aria-disabled': disabled ? 'true' : null,\n };\n\n const iconClass = `spw-icon--${iconPosition}`;\n const iconElement = icon ? <spw-icon class={iconClass} icon={icon}></spw-icon> : null;\n\n return (\n <a href={disabled ? undefined : href} rel={rel} target={target} class={this.elementClass} onClick={this.onClick} {...ariaAttributes}>\n {iconPosition === 'left' && iconElement}\n <div class=\"spw-link__inner\">\n <slot></slot>\n </div>\n {iconPosition === 'right' && iconElement}\n </a>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-bd601090.js","mappings":";;;AAAA,MAAM,UAAU,GAAG,y+HAAy+H,CAAC;AAC7/H,sBAAe,UAAU;;MCMZ,OAAO;;;;;;QAuBV,YAAO,GAAG,CAAC,EAAc;YAC/B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,EAAE,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO;aACR;YACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACxB,CAAC;;sBAvBwB,OAAO;;;4BAMS,OAAO;wBAEpB,KAAK;;uBAIG,OAAO;;IAa5C,IAAY,YAAY;QACtB,OAAO;YACL,UAAU,EAAE,IAAI;YAChB,0BAA0B,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO;YACtE,yBAAyB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,MAAM;YACpE,CAAC,qBAAqB,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI;YAC3C,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;SAClC,CAAC;KACH;IAED,MAAM;QACJ,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC/E,MAAM,cAAc,GAAG;YACrB,YAAY,EAAE,YAAY;YAC1B,eAAe,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;SAC1C,CAAC;QAEF,MAAM,SAAS,GAAG,aAAa,YAAY,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAI,GAAG,gBAAU,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,GAAa,GAAG,IAAI,CAAC;QAEtF,QACE,wEAAG,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAM,cAAc,GAChI,YAAY,KAAK,MAAM,IAAI,WAAW,EACvC,4DAAK,KAAK,EAAC,iBAAiB,IAC1B,8DAAa,CACT,EACL,YAAY,KAAK,OAAO,IAAI,WAAW,CACtC,EACJ;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-link/spw-link.scss?tag=spw-link&encapsulation=shadow","src/components/spw-link/spw-link.tsx"],"sourcesContent":[":host {\n display: inline;\n --spw-link-color: var(--spw-ds-primary);\n --spw-link-hover-color: var(--spw-ds-variant);\n --spw-link-active-color: var(--spw-ds-active);\n --spw-link-padding: 6px;\n}\n\n.spw-link {\n display: inline;\n text-decoration: none;\n cursor: pointer;\n color: var(--spw-link-color);\n border-radius: 4px;\n font-weight: 700;\n &--surface-dark {\n color: var(--spw-ds-white);\n }\n\n &__inner {\n display: inline;\n border-bottom: 1px solid var(--spw-link-color);\n .spw-link--surface-dark & {\n border-bottom: 1px solid var(--spw-ds-white);\n }\n }\n\n &:focus-visible {\n outline-offset: 1px;\n outline: 2px solid var(--spw-ds-focus);\n }\n\n &:hover {\n color: var(--spw-link-hover-color);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-link-hover-color);\n }\n }\n\n &:active {\n color: var(--spw-link-active-color);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-link-active-color);\n }\n }\n\n &[aria-disabled='true'] {\n pointer-events: none;\n color: var(--spw-color-themes-grey-grey-600);\n cursor: not-allowed;\n }\n\n &--surface-dark {\n &:hover {\n color: var(--spw-ds-white);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-ds-white);\n }\n }\n\n &:active {\n color: var(--spw-ds-white);\n .spw-link__inner {\n border-bottom: 2px solid var(--spw-ds-white);\n }\n }\n\n &[aria-disabled='true'] {\n color: var(--spw-ds-white);\n opacity: 0.5;\n }\n }\n\n &--has-icon-right spw-icon {\n margin-left: var(--spw-link-padding);\n margin-right: 4px;\n }\n\n &--has-icon-left spw-icon {\n margin-left: 4px;\n margin-right: var(--spw-link-padding);\n }\n}\n","import { Component, Element, Prop, h, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'spw-link',\n styleUrl: 'spw-link.scss',\n shadow: true,\n})\nexport class SpwLink {\n @Element() el: HTMLSpwLinkElement;\n\n /** Spécifie le lien href */\n @Prop() href: string;\n /** Attribut target (détermine où ouvrir le lien) */\n @Prop() target?: string = '_self';\n /** Remplit l'attribut rel */\n @Prop() rel?: string;\n /** Si rempli, permet d'utiliser une référence d'icône font-awesome */\n @Prop() icon?: string;\n /** Position de l'icône à l'intérieur du lien (gauche ou droite) */\n @Prop() iconPosition?: 'left' | 'right' = 'right';\n /** Si désactivé, le lien n'est pas cliquable */\n @Prop() disabled?: boolean = false;\n /** Remplit l'attribut aria-label, utilisé à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n /** Permet de choisir la surface d'arrière-plan du lien */\n @Prop() surface?: 'light' | 'dark' = 'light';\n\n /** Événement déclenché lors du clic sur le lien */\n @Event() spwClick: EventEmitter<MouseEvent>;\n\n private onClick = (ev: MouseEvent) => {\n if (this.disabled) {\n ev.preventDefault();\n return;\n }\n this.spwClick.emit(ev);\n };\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-link': true,\n 'spw-link--has-icon-right': this.icon && this.iconPosition === 'right',\n 'spw-link--has-icon-left': this.icon && this.iconPosition === 'left',\n [`spw-link--surface-${this.surface}`]: true,\n 'spw-link--has-icon': !!this.icon,\n };\n }\n\n render() {\n const { href, rel, target, icon, iconPosition, accAriaLabel, disabled } = this;\n const ariaAttributes = {\n 'aria-label': accAriaLabel,\n 'aria-disabled': disabled ? 'true' : null,\n };\n\n const iconClass = `spw-icon--${iconPosition}`;\n const iconElement = icon ? <spw-icon class={iconClass} icon={icon}></spw-icon> : null;\n\n return (\n <a href={disabled ? undefined : href} rel={rel} target={target} class={this.elementClass} onClick={this.onClick} {...ariaAttributes}>\n {iconPosition === 'left' && iconElement}\n <div class=\"spw-link__inner\">\n <slot></slot>\n </div>\n {iconPosition === 'right' && iconElement}\n </a>\n );\n }\n}\n"],"version":3}
@@ -1,7 +1,7 @@
1
1
  import { p as proxyCustomElement, H, d as createEvent, h } from './p-3706b88e.js';
2
- import { d as defineCustomElement$3 } from './p-b3b66a09.js';
3
- import { d as defineCustomElement$2 } from './p-e70f2b83.js';
4
- import { d as defineCustomElement$1 } from './p-72ca702e.js';
2
+ import { d as defineCustomElement$3 } from './p-c5168e9d.js';
3
+ import { d as defineCustomElement$2 } from './p-bbb44573.js';
4
+ import { d as defineCustomElement$1 } from './p-ed9b2f43.js';
5
5
 
6
6
  const spwTextFieldCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-input-height:40px;--spw-input-padding:0 12px;--spw-input-text-align:left;--spw-input-font-size:16px;--spw-input-border:var(--spw-color-themes-grey-grey-800);box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1220px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-text-field{position:relative}.spw-text-field__input-container{display:flex;flex:1;position:relative}.spw-text-field__input{border:1px solid var(--spw-input-border);border-radius:4px;flex:1;font-size:var(--spw-input-font-size);height:var(--spw-input-height);line-height:var(--spw-input-height);padding:var(--spw-input-padding);text-align:var(--spw-input-text-align);text-overflow:ellipsis;width:100%}.spw-text-field__input:hover{outline:4px solid var(--spw-color-themes-grey-grey-300)}.spw-text-field__input:focus,.spw-text-field__input:focus-visible{outline:3px solid var(--spw-ds-focus);outline-offset:2px}.spw-text-field__input[type=number]{-moz-appearance:textfield;-webkit-appearance:none;appearance:none;margin:0}.spw-text-field__input[type=number]::-webkit-inner-spin-button,.spw-text-field__input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.spw-text-field__input[type=number][type=number]{-moz-appearance:textfield}:host-context(spw-header) .spw-text-field__input{border:1px solid var(--spw-color-themes-grey-grey-300)}.spw-text-field--disabled .spw-text-field__input{background:var(--spw-color-themes-grey-grey-100);border-color:var(--spw-color-themes-grey-grey-400);color:var(--spw-color-themes-grey-grey-500);cursor:not-allowed}.spw-text-field--disabled .spw-text-field__input::-moz-placeholder{color:var(--spw-color-themes-grey-grey-500)}.spw-text-field--disabled .spw-text-field__input::placeholder{color:var(--spw-color-themes-grey-grey-500)}.spw-text-field--disabled .spw-text-field__input:focus,.spw-text-field--disabled .spw-text-field__input:focus-visible,.spw-text-field--disabled .spw-text-field__input:hover{outline:none}.spw-text-field--is-error .spw-text-field__input{border-color:var(--spw-colors-states-error-error-300)}.spw-text-field--large .spw-text-field__input{height:60px;line-height:60px;padding:0 24px}.spw-text-field--is-clear:not(.spw-text-field--is-search) .spw-text-field__input,.spw-text-field--is-search:not(.spw-text-field--is-clear) .spw-text-field__input{padding-right:40px}.spw-text-field--is-clear .spw-text-field__input{padding-right:70px}.spw-text-field__container{align-items:center;display:flex}.spw-text-field__indicator{padding-left:.75rem}.spw-text-field__icons{align-items:center;display:flex;gap:8px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.spw-text-field--large .spw-text-field__icons{right:24px}.spw-text-field--disabled .spw-text-field__icons{pointer-events:none}.spw-text-field__clear{align-items:center;border:2px solid var(--spw-color-themes-grey-grey-900);border-radius:50%;cursor:pointer;display:inline-flex;font-size:12px;height:20px;justify-content:center;padding:2px;transition:all .2s ease-in;width:20px}.spw-text-field__clear:hover{background:var(--spw-color-themes-grey-grey-300)}.spw-text-field--disabled .spw-text-field__clear{border-color:var(--spw-color-themes-grey-grey-500)}.spw-text-field__icon{color:var(--spw-color-themes-grey-grey-900)}.spw-text-field--disabled .spw-text-field__icon{color:var(--spw-color-themes-grey-grey-500)}.spw-text-field__icon--search{font-size:18px;pointer-events:none}.spw-text-field--large .spw-text-field__icon--search{font-size:24px}.spw-text-field__icon--clear{font-size:12px}.spw-tw-mb-10{margin-bottom:2.5rem}.spw-tw-mb-6{margin-bottom:1.5rem}.spw-tw-ml-2{margin-left:.5rem}.spw-tw-mr-4{margin-right:1rem}.spw-tw-mt-12{margin-top:3rem}.-spw-tw-mt-1{margin-top:-.25rem}.spw-tw-mb-2{margin-bottom:.5rem}.spw-tw-italic{font-style:italic}";
7
7
  const SpwTextFieldStyle0 = spwTextFieldCss;
@@ -150,4 +150,4 @@ function defineCustomElement() {
150
150
 
151
151
  export { SpwTextField as S, defineCustomElement as d };
152
152
 
153
- //# sourceMappingURL=p-cb99b731.js.map
153
+ //# sourceMappingURL=p-c31b87b0.js.map
@@ -1 +1 @@
1
- {"file":"p-cb99b731.js","mappings":"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","names":[],"sources":["src/components/spw-text-field/spw-text-field.scss?tag=spw-text-field&encapsulation=shadow","src/components/spw-text-field/spw-text-field.tsx"],"sourcesContent":[":host {\n display: block;\n --spw-input-height: 40px;\n --spw-input-padding: 0 12px;\n --spw-input-text-align: left;\n --spw-input-font-size: 16px;\n --spw-input-border: var(--spw-color-themes-grey-grey-800);\n}\n\n.spw-text-field {\n position: relative;\n &__input-container {\n flex: 1;\n position: relative;\n display: flex;\n }\n &__input {\n flex: 1;\n width: 100%;\n height: var(--spw-input-height);\n padding: var(--spw-input-padding);\n text-overflow: ellipsis;\n line-height: var(--spw-input-height);\n border-radius: 4px;\n font-size: var(--spw-input-font-size);\n text-align: var(--spw-input-text-align);\n border: 1px solid var(--spw-input-border);\n &:hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n &:focus,\n &:focus-visible {\n outline: 3px solid var(--spw-ds-focus);\n outline-offset: 2px;\n }\n &[type='number'] {\n -moz-appearance: textfield;\n -webkit-appearance: none;\n appearance: none;\n margin: 0;\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n &[type='number'] {\n -moz-appearance: textfield;\n }\n }\n :host-context(spw-header) & {\n border: 1px solid var(--spw-color-themes-grey-grey-300);\n }\n .spw-text-field--disabled & {\n border-color: var(--spw-color-themes-grey-grey-400);\n background: var(--spw-color-themes-grey-grey-100);\n color: var(--spw-color-themes-grey-grey-500);\n cursor: not-allowed;\n &::placeholder {\n color: var(--spw-color-themes-grey-grey-500);\n }\n &:hover,\n &:focus,\n &:focus-visible {\n outline: none;\n }\n }\n .spw-text-field--is-error & {\n border-color: var(--spw-colors-states-error-error-300);\n }\n .spw-text-field--large & {\n height: 60px;\n padding: 0 24px;\n line-height: 60px;\n }\n .spw-text-field--is-search:not(.spw-text-field--is-clear) & {\n padding-right: 40px;\n }\n .spw-text-field--is-clear:not(.spw-text-field--is-search) & {\n padding-right: 40px;\n }\n .spw-text-field--is-clear & {\n padding-right: 70px;\n }\n }\n &__container {\n display: flex;\n align-items: center;\n }\n &__indicator {\n @apply spw-tw-pl-3;\n }\n &__icons {\n display: flex;\n align-items: center;\n position: absolute;\n top: 50%;\n right: 12px;\n gap: 8px;\n transform: translateY(-50%);\n .spw-text-field--large & {\n right: 24px;\n }\n .spw-text-field--disabled & {\n pointer-events: none;\n }\n }\n &__clear {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n cursor: pointer;\n padding: 2px;\n border: 2px var(--spw-color-themes-grey-grey-900) solid;\n border-radius: 50%;\n font-size: 12px;\n transition: all 0.2s ease-in;\n &:hover {\n background: var(--spw-color-themes-grey-grey-300);\n }\n .spw-text-field--disabled & {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n }\n &__icon {\n color: var(--spw-color-themes-grey-grey-900);\n .spw-text-field--disabled & {\n color: var(--spw-color-themes-grey-grey-500);\n }\n &--search {\n pointer-events: none;\n font-size: 18px;\n .spw-text-field--large & {\n font-size: 24px;\n }\n }\n &--clear {\n font-size: 12px;\n }\n }\n}\n","import { AttachInternals, Event, EventEmitter, Component, Prop, State, Watch, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-text-field',\n styleUrl: 'spw-text-field.scss',\n formAssociated: true,\n shadow: true,\n})\nexport class SpwTextField {\n /** Événement émis lorsque la valeur de l'input change */\n @Event() valueChanged: EventEmitter<string>;\n\n @State() internalValue: string = '';\n\n /** Valeur actuelle du champ de saisie, mutable et reflétée dans le DOM */\n @Prop({ mutable: true, reflect: true }) value?: string;\n /** Type d'input à rendre, par exemple, \"text\", \"password\", etc. */\n @Prop() type?: string = 'text';\n /** Texte à afficher au-dessus du champ de saisie */\n @Prop() label: string = '';\n /** Texte du placeholder pour le champ de saisie */\n @Prop() placeholder: string;\n /** Si `true`, le champ de saisie est désactivé et ne peut pas être utilisé */\n @Prop() disabled?: boolean;\n /** Attribut `name` de l'élément input */\n @Prop() name: string;\n /** Longueur minimale pour la valeur de l'input */\n @Prop() minLength?: number;\n /** Longueur maximale pour la valeur de l'input */\n @Prop() maxLength?: number;\n /** Indique si l'input est un champ de recherche */\n @Prop() isSearch?: boolean = false;\n /** Indique si le champ peut être effacé avec un bouton */\n @Prop() isClear?: boolean = false;\n /** Indique si l'input est requis */\n @Prop() required?: boolean = false;\n /** Spécifie la taille du champ de saisie : 'large' ou 'medium' */\n @Prop() size?: 'large' | 'medium' = 'medium';\n /** Indicateur à afficher à droite du champ de saisie */\n @Prop() indicator?: string;\n /** Texte d'assistance à afficher sous le champ de saisie */\n @Prop() assistiveText?: string;\n /** Message d'erreur à afficher sous le champ */\n @Prop() error?: string = '';\n /** Message d'indication (hint) à afficher sous le champ */\n @Prop() hint?: string = '';\n /** Message de succès à afficher sous le champ */\n @Prop() success?: string = '';\n /** Affiche une icône d'erreur si vrai */\n @Prop() showErrorIcon?: boolean = true;\n /** Affiche une icône d'indication si vrai */\n @Prop() showHintIcon?: boolean = true;\n /** Affiche une icône de succès si vrai */\n @Prop() showSuccessIcon?: boolean = true;\n\n @State() isClearIconVisible: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n @Watch('value')\n valueChangedHandler(newValue: string) {\n this.internalValue = newValue;\n this.internals.setFormValue(this.internalValue);\n this.valueChanged.emit(this.internalValue);\n }\n\n componentWillLoad() {\n if (this.value) {\n this.internalValue = this.value;\n }\n }\n\n private handleChange(event) {\n this.internalValue = event.target.value;\n this.value = this.internalValue;\n this.isClearIconVisible = this.isClear && !!this.internalValue;\n this.internals.setFormValue(this.internalValue);\n this.valueChanged.emit(this.internalValue);\n }\n\n private handleClear() {\n this.internalValue = '';\n this.value = '';\n this.internals.setFormValue(this.internalValue);\n this.valueChanged.emit(this.internalValue);\n this.isClearIconVisible = false;\n }\n\n private renderErrorMessage() {\n if (this.error) {\n return (\n <spw-field-message variant=\"error\" showIcon={this.showErrorIcon}>\n {this.error}\n </spw-field-message>\n );\n }\n }\n\n private renderHintMessage() {\n if (this.hint) {\n return (\n <spw-field-message variant=\"hint\" showIcon={this.showHintIcon}>\n {this.hint}\n </spw-field-message>\n );\n }\n }\n\n private renderSuccessMessage() {\n if (this.success) {\n return (\n <spw-field-message variant=\"success\" showIcon={this.showSuccessIcon}>\n {this.success}\n </spw-field-message>\n );\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-text-field': true,\n [`spw-text-field--${this.size}`]: true,\n 'spw-text-field--is-search': this.isSearch,\n 'spw-text-field--is-error': !!this.error,\n 'spw-text-field--is-clear': this.isClearIconVisible,\n 'spw-text-field--disabled': this.disabled,\n };\n }\n\n render() {\n return (\n <div class={this.elementClass}>\n {this.label && <spw-field-label label={this.label} name={this.name} required={this.required}></spw-field-label>}\n {this.assistiveText && (\n <spw-field-message class=\"spw-tw-mb-2 -spw-tw-mt-1\" variant=\"hint\" showIcon={false}>\n {this.assistiveText}\n </spw-field-message>\n )}\n <div class=\"spw-text-field__container\">\n <div class=\"spw-text-field__input-container\">\n <input\n class=\"spw-text-field__input\"\n type={this.type}\n value={this.internalValue}\n placeholder={this.placeholder}\n disabled={this.disabled}\n name={this.name}\n id={this.name}\n minLength={this.minLength}\n maxLength={this.maxLength}\n required={this.required}\n onInput={event => this.handleChange(event)}\n />\n {(this.isSearch || this.isClearIconVisible) && (\n <div class=\"spw-text-field__icons\">\n {this.isClearIconVisible && (\n <span class=\"spw-text-field__clear\" onClick={() => this.handleClear()}>\n <spw-icon class=\"spw-text-field__icon spw-text-field__icon--clear\" icon=\"fa-xmark\"></spw-icon>\n </span>\n )}\n {this.isSearch && <spw-icon class=\"spw-text-field__icon spw-text-field__icon--search\" icon=\"fa-magnifying-glass\"></spw-icon>}\n </div>\n )}\n </div>\n {this.indicator && <div class=\"spw-text-field__indicator\">{this.indicator}</div>}\n </div>\n {this.renderErrorMessage()}\n {this.renderHintMessage()}\n {this.renderSuccessMessage()}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-c31b87b0.js","mappings":"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","names":[],"sources":["src/components/spw-text-field/spw-text-field.scss?tag=spw-text-field&encapsulation=shadow","src/components/spw-text-field/spw-text-field.tsx"],"sourcesContent":[":host {\n display: block;\n --spw-input-height: 40px;\n --spw-input-padding: 0 12px;\n --spw-input-text-align: left;\n --spw-input-font-size: 16px;\n --spw-input-border: var(--spw-color-themes-grey-grey-800);\n}\n\n.spw-text-field {\n position: relative;\n &__input-container {\n flex: 1;\n position: relative;\n display: flex;\n }\n &__input {\n flex: 1;\n width: 100%;\n height: var(--spw-input-height);\n padding: var(--spw-input-padding);\n text-overflow: ellipsis;\n line-height: var(--spw-input-height);\n border-radius: 4px;\n font-size: var(--spw-input-font-size);\n text-align: var(--spw-input-text-align);\n border: 1px solid var(--spw-input-border);\n &:hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n &:focus,\n &:focus-visible {\n outline: 3px solid var(--spw-ds-focus);\n outline-offset: 2px;\n }\n &[type='number'] {\n -moz-appearance: textfield;\n -webkit-appearance: none;\n appearance: none;\n margin: 0;\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n &[type='number'] {\n -moz-appearance: textfield;\n }\n }\n :host-context(spw-header) & {\n border: 1px solid var(--spw-color-themes-grey-grey-300);\n }\n .spw-text-field--disabled & {\n border-color: var(--spw-color-themes-grey-grey-400);\n background: var(--spw-color-themes-grey-grey-100);\n color: var(--spw-color-themes-grey-grey-500);\n cursor: not-allowed;\n &::placeholder {\n color: var(--spw-color-themes-grey-grey-500);\n }\n &:hover,\n &:focus,\n &:focus-visible {\n outline: none;\n }\n }\n .spw-text-field--is-error & {\n border-color: var(--spw-colors-states-error-error-300);\n }\n .spw-text-field--large & {\n height: 60px;\n padding: 0 24px;\n line-height: 60px;\n }\n .spw-text-field--is-search:not(.spw-text-field--is-clear) & {\n padding-right: 40px;\n }\n .spw-text-field--is-clear:not(.spw-text-field--is-search) & {\n padding-right: 40px;\n }\n .spw-text-field--is-clear & {\n padding-right: 70px;\n }\n }\n &__container {\n display: flex;\n align-items: center;\n }\n &__indicator {\n @apply spw-tw-pl-3;\n }\n &__icons {\n display: flex;\n align-items: center;\n position: absolute;\n top: 50%;\n right: 12px;\n gap: 8px;\n transform: translateY(-50%);\n .spw-text-field--large & {\n right: 24px;\n }\n .spw-text-field--disabled & {\n pointer-events: none;\n }\n }\n &__clear {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n cursor: pointer;\n padding: 2px;\n border: 2px var(--spw-color-themes-grey-grey-900) solid;\n border-radius: 50%;\n font-size: 12px;\n transition: all 0.2s ease-in;\n &:hover {\n background: var(--spw-color-themes-grey-grey-300);\n }\n .spw-text-field--disabled & {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n }\n &__icon {\n color: var(--spw-color-themes-grey-grey-900);\n .spw-text-field--disabled & {\n color: var(--spw-color-themes-grey-grey-500);\n }\n &--search {\n pointer-events: none;\n font-size: 18px;\n .spw-text-field--large & {\n font-size: 24px;\n }\n }\n &--clear {\n font-size: 12px;\n }\n }\n}\n","import { AttachInternals, Event, EventEmitter, Component, Prop, State, Watch, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-text-field',\n styleUrl: 'spw-text-field.scss',\n formAssociated: true,\n shadow: true,\n})\nexport class SpwTextField {\n /** Événement émis lorsque la valeur de l'input change */\n @Event() valueChanged: EventEmitter<string>;\n\n @State() internalValue: string = '';\n\n /** Valeur actuelle du champ de saisie, mutable et reflétée dans le DOM */\n @Prop({ mutable: true, reflect: true }) value?: string;\n /** Type d'input à rendre, par exemple, \"text\", \"password\", etc. */\n @Prop() type?: string = 'text';\n /** Texte à afficher au-dessus du champ de saisie */\n @Prop() label: string = '';\n /** Texte du placeholder pour le champ de saisie */\n @Prop() placeholder: string;\n /** Si `true`, le champ de saisie est désactivé et ne peut pas être utilisé */\n @Prop() disabled?: boolean;\n /** Attribut `name` de l'élément input */\n @Prop() name: string;\n /** Longueur minimale pour la valeur de l'input */\n @Prop() minLength?: number;\n /** Longueur maximale pour la valeur de l'input */\n @Prop() maxLength?: number;\n /** Indique si l'input est un champ de recherche */\n @Prop() isSearch?: boolean = false;\n /** Indique si le champ peut être effacé avec un bouton */\n @Prop() isClear?: boolean = false;\n /** Indique si l'input est requis */\n @Prop() required?: boolean = false;\n /** Spécifie la taille du champ de saisie : 'large' ou 'medium' */\n @Prop() size?: 'large' | 'medium' = 'medium';\n /** Indicateur à afficher à droite du champ de saisie */\n @Prop() indicator?: string;\n /** Texte d'assistance à afficher sous le champ de saisie */\n @Prop() assistiveText?: string;\n /** Message d'erreur à afficher sous le champ */\n @Prop() error?: string = '';\n /** Message d'indication (hint) à afficher sous le champ */\n @Prop() hint?: string = '';\n /** Message de succès à afficher sous le champ */\n @Prop() success?: string = '';\n /** Affiche une icône d'erreur si vrai */\n @Prop() showErrorIcon?: boolean = true;\n /** Affiche une icône d'indication si vrai */\n @Prop() showHintIcon?: boolean = true;\n /** Affiche une icône de succès si vrai */\n @Prop() showSuccessIcon?: boolean = true;\n\n @State() isClearIconVisible: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n @Watch('value')\n valueChangedHandler(newValue: string) {\n this.internalValue = newValue;\n this.internals.setFormValue(this.internalValue);\n this.valueChanged.emit(this.internalValue);\n }\n\n componentWillLoad() {\n if (this.value) {\n this.internalValue = this.value;\n }\n }\n\n private handleChange(event) {\n this.internalValue = event.target.value;\n this.value = this.internalValue;\n this.isClearIconVisible = this.isClear && !!this.internalValue;\n this.internals.setFormValue(this.internalValue);\n this.valueChanged.emit(this.internalValue);\n }\n\n private handleClear() {\n this.internalValue = '';\n this.value = '';\n this.internals.setFormValue(this.internalValue);\n this.valueChanged.emit(this.internalValue);\n this.isClearIconVisible = false;\n }\n\n private renderErrorMessage() {\n if (this.error) {\n return (\n <spw-field-message variant=\"error\" showIcon={this.showErrorIcon}>\n {this.error}\n </spw-field-message>\n );\n }\n }\n\n private renderHintMessage() {\n if (this.hint) {\n return (\n <spw-field-message variant=\"hint\" showIcon={this.showHintIcon}>\n {this.hint}\n </spw-field-message>\n );\n }\n }\n\n private renderSuccessMessage() {\n if (this.success) {\n return (\n <spw-field-message variant=\"success\" showIcon={this.showSuccessIcon}>\n {this.success}\n </spw-field-message>\n );\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-text-field': true,\n [`spw-text-field--${this.size}`]: true,\n 'spw-text-field--is-search': this.isSearch,\n 'spw-text-field--is-error': !!this.error,\n 'spw-text-field--is-clear': this.isClearIconVisible,\n 'spw-text-field--disabled': this.disabled,\n };\n }\n\n render() {\n return (\n <div class={this.elementClass}>\n {this.label && <spw-field-label label={this.label} name={this.name} required={this.required}></spw-field-label>}\n {this.assistiveText && (\n <spw-field-message class=\"spw-tw-mb-2 -spw-tw-mt-1\" variant=\"hint\" showIcon={false}>\n {this.assistiveText}\n </spw-field-message>\n )}\n <div class=\"spw-text-field__container\">\n <div class=\"spw-text-field__input-container\">\n <input\n class=\"spw-text-field__input\"\n type={this.type}\n value={this.internalValue}\n placeholder={this.placeholder}\n disabled={this.disabled}\n name={this.name}\n id={this.name}\n minLength={this.minLength}\n maxLength={this.maxLength}\n required={this.required}\n onInput={event => this.handleChange(event)}\n />\n {(this.isSearch || this.isClearIconVisible) && (\n <div class=\"spw-text-field__icons\">\n {this.isClearIconVisible && (\n <span class=\"spw-text-field__clear\" onClick={() => this.handleClear()}>\n <spw-icon class=\"spw-text-field__icon spw-text-field__icon--clear\" icon=\"fa-xmark\"></spw-icon>\n </span>\n )}\n {this.isSearch && <spw-icon class=\"spw-text-field__icon spw-text-field__icon--search\" icon=\"fa-magnifying-glass\"></spw-icon>}\n </div>\n )}\n </div>\n {this.indicator && <div class=\"spw-text-field__indicator\">{this.indicator}</div>}\n </div>\n {this.renderErrorMessage()}\n {this.renderHintMessage()}\n {this.renderSuccessMessage()}\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-3706b88e.js';
2
2
 
3
- const spwFieldLabelCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1220px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-field-label{color:var(--spw-color-themes-grey-grey-800);display:block;font-weight:600;margin-bottom:.5rem}.spw-field-label__required{color:var(--spw-ds-primary)}.-spw-tw-mt-1{margin-top:-.25rem}.spw-tw-mb-2{margin-bottom:.5rem}.spw-tw-mr-2{margin-right:.5rem}.spw-tw-mb-3{margin-bottom:.75rem}.spw-tw-mb-10{margin-bottom:2.5rem}.spw-tw-mb-6{margin-bottom:1.5rem}.spw-tw-ml-2{margin-left:.5rem}.spw-tw-mr-4{margin-right:1rem}.spw-tw-mt-12{margin-top:3rem}.spw-tw-italic{font-style:italic}";
3
+ const spwFieldLabelCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1220px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-field-label{color:var(--spw-color-themes-grey-grey-800);display:block;font-weight:600;margin-bottom:.5rem}.spw-field-label__required{color:var(--spw-ds-primary)}.-spw-tw-mt-1{margin-top:-.25rem}.spw-tw-mb-2{margin-bottom:.5rem}.spw-tw-mr-2{margin-right:.5rem}.spw-tw-mb-10{margin-bottom:2.5rem}.spw-tw-mb-6{margin-bottom:1.5rem}.spw-tw-ml-2{margin-left:.5rem}.spw-tw-mr-4{margin-right:1rem}.spw-tw-mt-12{margin-top:3rem}.spw-tw-mb-3{margin-bottom:.75rem}.spw-tw-italic{font-style:italic}";
4
4
  const SpwFieldLabelStyle0 = spwFieldLabelCss;
5
5
 
6
6
  const SpwFieldLabel = /*@__PURE__*/ proxyCustomElement(class SpwFieldLabel extends H {
@@ -45,4 +45,4 @@ function defineCustomElement() {
45
45
 
46
46
  export { SpwFieldLabel as S, defineCustomElement as d };
47
47
 
48
- //# sourceMappingURL=p-b3b66a09.js.map
48
+ //# sourceMappingURL=p-c5168e9d.js.map
@@ -1 +1 @@
1
- {"file":"p-b3b66a09.js","mappings":";;AAAA,MAAM,gBAAgB,GAAG,g/FAAg/F,CAAC;AAC1gG,4BAAe,gBAAgB;;MCMlB,aAAa;;;;;QAUhB,gBAAW,GAAG;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,EAA2B,CAAC;YAChE,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEzD,IAAI,aAAa,EAAE;gBAChB,aAA6B,CAAC,KAAK,EAAE,CAAC;aACxC;SACF,CAAC;;qBAbuB,EAAE;wBAEE,KAAK;;IAalC,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,8DAAO,KAAK,EAAC,iBAAiB,EAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,IACzE,IAAI,CAAC,KAAK,OAAG,IAAI,CAAC,QAAQ,IAAI,6DAAM,KAAK,EAAC,2BAA2B,QAAS,CACzE,CACH,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-field-label/spw-field-label.scss?tag=spw-field-label&encapsulation=shadow","src/components/spw-field-label/spw-field-label.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-field-label {\n color: var(--spw-color-themes-grey-grey-800);\n display: block;\n font-weight: 600;\n @apply spw-tw-mb-2;\n &__required {\n color: var(--spw-ds-primary);\n }\n}\n","import { Component, Host, h, Prop, Element } from '@stencil/core';\n\n@Component({\n tag: 'spw-field-label',\n styleUrl: 'spw-field-label.scss',\n shadow: true,\n})\nexport class SpwFieldLabel {\n /** L'attribut id de l'élément input */\n @Prop() name: string;\n /** Texte à afficher au-dessus du champ de saisie */\n @Prop() label?: string = '';\n /** Indique si le champ est requis */\n @Prop() required?: boolean = false;\n\n @Element() el: HTMLSpwFieldLabelElement;\n\n private handleClick = () => {\n const rootNode = this.el.getRootNode() as ShadowRoot | Document;\n const targetElement = rootNode.getElementById(this.name);\n\n if (targetElement) {\n (targetElement as HTMLElement).focus();\n }\n };\n\n render() {\n return (\n <Host>\n <label class=\"spw-field-label\" htmlFor={this.name} onClick={this.handleClick}>\n {this.label} {this.required && <span class=\"spw-field-label__required\">*</span>}\n </label>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-c5168e9d.js","mappings":";;AAAA,MAAM,gBAAgB,GAAG,g/FAAg/F,CAAC;AAC1gG,4BAAe,gBAAgB;;MCMlB,aAAa;;;;;QAUhB,gBAAW,GAAG;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,EAA2B,CAAC;YAChE,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEzD,IAAI,aAAa,EAAE;gBAChB,aAA6B,CAAC,KAAK,EAAE,CAAC;aACxC;SACF,CAAC;;qBAbuB,EAAE;wBAEE,KAAK;;IAalC,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,8DAAO,KAAK,EAAC,iBAAiB,EAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,IACzE,IAAI,CAAC,KAAK,OAAG,IAAI,CAAC,QAAQ,IAAI,6DAAM,KAAK,EAAC,2BAA2B,QAAS,CACzE,CACH,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-field-label/spw-field-label.scss?tag=spw-field-label&encapsulation=shadow","src/components/spw-field-label/spw-field-label.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-field-label {\n color: var(--spw-color-themes-grey-grey-800);\n display: block;\n font-weight: 600;\n @apply spw-tw-mb-2;\n &__required {\n color: var(--spw-ds-primary);\n }\n}\n","import { Component, Host, h, Prop, Element } from '@stencil/core';\n\n@Component({\n tag: 'spw-field-label',\n styleUrl: 'spw-field-label.scss',\n shadow: true,\n})\nexport class SpwFieldLabel {\n /** L'attribut id de l'élément input */\n @Prop() name: string;\n /** Texte à afficher au-dessus du champ de saisie */\n @Prop() label?: string = '';\n /** Indique si le champ est requis */\n @Prop() required?: boolean = false;\n\n @Element() el: HTMLSpwFieldLabelElement;\n\n private handleClick = () => {\n const rootNode = this.el.getRootNode() as ShadowRoot | Document;\n const targetElement = rootNode.getElementById(this.name);\n\n if (targetElement) {\n (targetElement as HTMLElement).focus();\n }\n };\n\n render() {\n return (\n <Host>\n <label class=\"spw-field-label\" htmlFor={this.name} onClick={this.handleClick}>\n {this.label} {this.required && <span class=\"spw-field-label__required\">*</span>}\n </label>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-3706b88e.js';
2
- import { d as defineCustomElement$1 } from './p-72ca702e.js';
2
+ import { d as defineCustomElement$1 } from './p-ed9b2f43.js';
3
3
 
4
4
  const spwAccordionTitleCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1220px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-accordion-title{color:var(--spw-color-themes-grey-grey-900);font-weight:700;padding:var(--spw-spacings-spacing-lg);transition:all .3s}.spw-accordion-title:hover{color:var(--spw-ds-primary)}:host(.--collapsed) .spw-accordion-title:hover{background:var(--spw-color-themes-grey-grey-100)}:host-context(.spw-accordion-item:hover)>.spw-accordion-title{color:var(--spw-ds-primary)}.spw-accordion-title__content{padding-right:var(--spw-spacings-spacing-3-xl);position:relative}.spw-accordion-title__content h2,.spw-accordion-title__content h3,.spw-accordion-title__content h4,.spw-accordion-title__content h5,.spw-accordion-title__content h6{font-size:16px}.spw-accordion-title__trigger{position:absolute;right:0;top:50%;transform:translateY(-50%) rotate(180deg);transition:all .3s}:host(.--collapsed) .spw-accordion-title__trigger{transform:translateY(-50%) rotate(0deg)}.spw-tw-mr-3{margin-right:.75rem}.spw-tw-flex{display:flex}";
5
5
  const SpwAccordionTitleStyle0 = spwAccordionTitleCss;
@@ -43,4 +43,4 @@ function defineCustomElement() {
43
43
 
44
44
  export { SpwAccordionTitle as S, defineCustomElement as d };
45
45
 
46
- //# sourceMappingURL=p-a9181b0a.js.map
46
+ //# sourceMappingURL=p-d18f9af5.js.map
@@ -1 +1 @@
1
- {"file":"p-a9181b0a.js","mappings":";;;AAAA,MAAM,oBAAoB,GAAG,q6GAAq6G,CAAC;AACn8G,gCAAe,oBAAoB;;MCMtB,iBAAiB;;;;;mBAEqB,IAAI;;;IAIrD,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,GAAG,gBAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,GAAG,IAAI,CAAC;QAC9E,QACE,EAAC,IAAI,uDACH,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,4DAAK,KAAK,EAAC,8BAA8B,IACvC,EAAC,OAAO,qDAAC,KAAK,EAAC,aAAa,IACzB,WAAW,IAAI,4DAAK,KAAK,EAAC,aAAa,IAAE,WAAW,CAAO,EAC5D,8DACE,8DAAa,CACT,CACE,EACV,6DAAM,KAAK,EAAC,8BAA8B,IACxC,iEAAU,IAAI,EAAC,iBAAiB,GAAY,CACvC,CACH,CACF,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-accordion/spw-accordion-title/spw-accordion-title.scss?tag=spw-accordion-title&encapsulation=shadow","src/components/spw-accordion/spw-accordion-title/spw-accordion-title.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-accordion-title {\n padding: var(--spw-spacings-spacing-lg);\n font-weight: 700;\n transition: all 0.3s;\n color: var(--spw-color-themes-grey-grey-900);\n\n &:hover {\n color: var(--spw-ds-primary);\n :host(.--collapsed) & {\n background: var(--spw-color-themes-grey-grey-100);\n }\n }\n}\n\n:host-context(.spw-accordion-item:hover) > .spw-accordion-title {\n color: var(--spw-ds-primary);\n}\n\n.spw-accordion-title__content {\n position: relative;\n padding-right: var(--spw-spacings-spacing-3-xl);\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: 16px;\n }\n}\n\n.spw-accordion-title__trigger {\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%) rotate(180deg);\n transition: all 0.3s;\n\n :host(.--collapsed) & {\n transform: translateY(-50%) rotate(0deg);\n }\n}\n","import { Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-accordion-title',\n styleUrl: 'spw-accordion-title.scss',\n shadow: true,\n})\nexport class SpwAccordionTitle {\n /** Tag html du titre de l'accordéon (de h1 à h6) */\n @Prop() tag?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' = 'h3';\n /** Si spécifié, place une icône à gauche du titre */\n @Prop() icon?: string;\n\n render() {\n const TagType = this.tag;\n const iconElement = this.icon ? <spw-icon icon={this.icon}></spw-icon> : null;\n return (\n <Host>\n <div class=\"spw-accordion-title\">\n <div class=\"spw-accordion-title__content\">\n <TagType class=\"spw-tw-flex\">\n {iconElement && <div class=\"spw-tw-mr-3\">{iconElement}</div>}\n <div>\n <slot></slot>\n </div>\n </TagType>\n <span class=\"spw-accordion-title__trigger\">\n <spw-icon icon=\"fa-chevron-down\"></spw-icon>\n </span>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-d18f9af5.js","mappings":";;;AAAA,MAAM,oBAAoB,GAAG,q6GAAq6G,CAAC;AACn8G,gCAAe,oBAAoB;;MCMtB,iBAAiB;;;;;mBAEqB,IAAI;;;IAIrD,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,GAAG,gBAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,GAAG,IAAI,CAAC;QAC9E,QACE,EAAC,IAAI,uDACH,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,4DAAK,KAAK,EAAC,8BAA8B,IACvC,EAAC,OAAO,qDAAC,KAAK,EAAC,aAAa,IACzB,WAAW,IAAI,4DAAK,KAAK,EAAC,aAAa,IAAE,WAAW,CAAO,EAC5D,8DACE,8DAAa,CACT,CACE,EACV,6DAAM,KAAK,EAAC,8BAA8B,IACxC,iEAAU,IAAI,EAAC,iBAAiB,GAAY,CACvC,CACH,CACF,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/spw-accordion/spw-accordion-title/spw-accordion-title.scss?tag=spw-accordion-title&encapsulation=shadow","src/components/spw-accordion/spw-accordion-title/spw-accordion-title.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-accordion-title {\n padding: var(--spw-spacings-spacing-lg);\n font-weight: 700;\n transition: all 0.3s;\n color: var(--spw-color-themes-grey-grey-900);\n\n &:hover {\n color: var(--spw-ds-primary);\n :host(.--collapsed) & {\n background: var(--spw-color-themes-grey-grey-100);\n }\n }\n}\n\n:host-context(.spw-accordion-item:hover) > .spw-accordion-title {\n color: var(--spw-ds-primary);\n}\n\n.spw-accordion-title__content {\n position: relative;\n padding-right: var(--spw-spacings-spacing-3-xl);\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: 16px;\n }\n}\n\n.spw-accordion-title__trigger {\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%) rotate(180deg);\n transition: all 0.3s;\n\n :host(.--collapsed) & {\n transform: translateY(-50%) rotate(0deg);\n }\n}\n","import { Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-accordion-title',\n styleUrl: 'spw-accordion-title.scss',\n shadow: true,\n})\nexport class SpwAccordionTitle {\n /** Tag html du titre de l'accordéon (de h1 à h6) */\n @Prop() tag?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' = 'h3';\n /** Si spécifié, place une icône à gauche du titre */\n @Prop() icon?: string;\n\n render() {\n const TagType = this.tag;\n const iconElement = this.icon ? <spw-icon icon={this.icon}></spw-icon> : null;\n return (\n <Host>\n <div class=\"spw-accordion-title\">\n <div class=\"spw-accordion-title__content\">\n <TagType class=\"spw-tw-flex\">\n {iconElement && <div class=\"spw-tw-mr-3\">{iconElement}</div>}\n <div>\n <slot></slot>\n </div>\n </TagType>\n <span class=\"spw-accordion-title__trigger\">\n <spw-icon icon=\"fa-chevron-down\"></spw-icon>\n </span>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}