@spw-ds/spw-stencil-library 1.2.7 → 1.2.8
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/cjs/spw-field-label.spw-group.spw-icon.spw-link.spw-separator.spw-theme-provider.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-field-label_6.cjs.entry.js +1 -1
- package/dist/cjs/spw-field-label_6.cjs.entry.js.map +1 -1
- package/dist/collection/components/spw-icon/spw-icon.css +1 -1
- package/dist/components/{p-iQsDa7FA.js → p-B1-p021T.js} +3 -3
- package/dist/components/{p-iQsDa7FA.js.map → p-B1-p021T.js.map} +1 -1
- package/dist/components/{p-jHpxbAsa.js → p-BOKkemIY.js} +3 -3
- package/dist/components/{p-jHpxbAsa.js.map → p-BOKkemIY.js.map} +1 -1
- package/dist/components/{p-Dg1wxTqL.js → p-C0WZ0I4N.js} +5 -5
- package/dist/components/{p-Dg1wxTqL.js.map → p-C0WZ0I4N.js.map} +1 -1
- package/dist/components/{p-DN5puq3N.js → p-Cftdq5ca.js} +3 -3
- package/dist/components/{p-DN5puq3N.js.map → p-Cftdq5ca.js.map} +1 -1
- package/dist/components/{p-DKCYb8Pa.js → p-Cq-aN0EV.js} +3 -3
- package/dist/components/{p-DKCYb8Pa.js.map → p-Cq-aN0EV.js.map} +1 -1
- package/dist/components/{p-B62I-VV0.js → p-DYW_Cep_.js} +3 -3
- package/dist/components/{p-B62I-VV0.js.map → p-DYW_Cep_.js.map} +1 -1
- package/dist/components/{p-B59-Q28_.js → p-DYnakc67.js} +3 -3
- package/dist/components/{p-B59-Q28_.js.map → p-DYnakc67.js.map} +1 -1
- package/dist/components/{p-BlSOja6j.js → p-K5dWYsvH.js} +4 -4
- package/dist/components/{p-BlSOja6j.js.map → p-K5dWYsvH.js.map} +1 -1
- package/dist/components/spw-accordion-title.js +1 -1
- package/dist/components/spw-breadcrumb-item.js +2 -2
- package/dist/components/spw-button.js +1 -1
- package/dist/components/spw-card-image.js +1 -1
- package/dist/components/spw-checkbox.js +1 -1
- package/dist/components/spw-cookies.js +4 -4
- package/dist/components/spw-custom-select.js +3 -3
- package/dist/components/spw-date-picker.js +2 -2
- package/dist/components/spw-dropdown-item.js +1 -1
- package/dist/components/spw-field-message.js +1 -1
- package/dist/components/spw-file-upload.js +2 -2
- package/dist/components/spw-header-lang.js +2 -2
- package/dist/components/spw-header-navigation-item.js +1 -1
- package/dist/components/spw-header-navigation.js +1 -1
- package/dist/components/spw-header-persona.js +1 -1
- package/dist/components/spw-header.js +2 -2
- package/dist/components/spw-hero.js +1 -1
- package/dist/components/spw-icon.js +1 -1
- package/dist/components/spw-iodda.js +4 -4
- package/dist/components/spw-link.js +1 -1
- package/dist/components/spw-list-item.js +1 -1
- package/dist/components/spw-list-title.js +1 -1
- package/dist/components/spw-message.js +2 -2
- package/dist/components/spw-modal.js +1 -1
- package/dist/components/spw-pagination.js +1 -1
- package/dist/components/spw-search-field.js +3 -3
- package/dist/components/spw-select.js +2 -2
- package/dist/components/spw-sidebar-navigation-item.js +1 -1
- package/dist/components/spw-sidebar.js +1 -1
- package/dist/components/spw-slider.js +1 -1
- package/dist/components/spw-table-header.js +1 -1
- package/dist/components/spw-tabs-navigation-item.js +1 -1
- package/dist/components/spw-tabs-navigation.js +1 -1
- package/dist/components/spw-tag.js +1 -1
- package/dist/components/spw-text-field.js +1 -1
- package/dist/components/spw-textarea.js +2 -2
- package/dist/components/spw-tile.js +1 -1
- package/dist/components/spw-wizard-item.js +1 -1
- package/dist/components_json.json +1 -1
- package/dist/esm/spw-field-label.spw-group.spw-icon.spw-link.spw-separator.spw-theme-provider.entry.js.map +1 -1
- package/dist/esm/spw-field-label_6.entry.js +1 -1
- package/dist/esm/spw-field-label_6.entry.js.map +1 -1
- package/dist/spw-stencil-library/{p-a3d3ce93.entry.js → p-d43c834e.entry.js} +2 -2
- package/dist/spw-stencil-library/p-d43c834e.entry.js.map +1 -0
- package/dist/spw-stencil-library/spw-field-label.spw-group.spw-icon.spw-link.spw-separator.spw-theme-provider.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
- package/dist/stats.json +26 -26
- package/hydrate/index.js +1 -1
- package/hydrate/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/spw-stencil-library/p-a3d3ce93.entry.js.map +0 -1
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["spwFieldLabelCss","SpwFieldLabel","constructor","hostRef","this","label","required","handleClick","rootNode","el","getRootNode","targetElement","getElementById","name","focus","render","h","Host","key","class","htmlFor","onClick","spwGroupCss","SpwGroup","type","orientation","alignment","disabled","isReversed","isFullWidth","handleSlotChange","elements","_a","slotEl","assignedElements","Array","from","host","querySelectorAll","forEach","element","setAttribute","removeAttribute","componentDidLoad","groupClasses","ref","spwIconCss","SpwIcon","variant","iconClassName","icon","spwLinkCss","SpwLink","target","iconPosition","surface","ev","preventDefault","spwClick","emit","elementClass","href","rel","accAriaLabel","ariaAttributes","iconClass","iconElement","Object","assign","undefined","spwSeparatorCss","SpwSeparator","direction","thickness","width","height","style","rougeCss","bleuCss","bleuClairCss","vertCss","vertLegerCss","turquoiseCss","orangeCss","indigoCss","mauveCss","grisCss","themes","rouge","rougeTheme","bleu","bleuTheme","bleuClair","bleuClairTheme","vert","vertTheme","vertLeger","vertLegerTheme","orange","orangeTheme","turquoise","turquoiseTheme","indigo","indigoTheme","mauve","mauveTheme","gris","grisTheme","SpwThemeProvider","theme","componentWillLoad","applyTheme","componentWillUpdate","styleId","styleElement","document","createElement","id","head","appendChild","css","innerHTML","documentElement"],"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","src/components/spw-group/spw-group.scss?tag=spw-group","src/components/spw-group/spw-group.tsx","src/components/spw-icon/spw-icon.scss?tag=spw-icon&encapsulation=shadow","src/components/spw-icon/spw-icon.tsx","src/components/spw-link/spw-link.scss?tag=spw-link&encapsulation=shadow","src/components/spw-link/spw-link.tsx","src/components/spw-separator/spw-separator.scss?tag=spw-separator&encapsulation=shadow","src/components/spw-separator/spw-separator.tsx","src/themes/rouge.css","src/themes/bleu.css","src/themes/bleu-clair.css","src/themes/vert.css","src/themes/vert-leger.css","src/themes/turquoise.css","src/themes/orange.css","src/themes/indigo.css","src/themes/mauve.css","src/themes/gris.css","src/themes/themes.ts","src/components/spw-theme-provider/spw-theme-provider.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",":host {\n display: block;\n width: 100%;\n}\n\n.spw-group {\n spw-button:not[is-fullwidth-mobile='false'] {\n display: block;\n width: 100%;\n @include breakpoint(md) {\n display: initial;\n width: auto;\n }\n }\n\n &__container {\n display: flex;\n width: fit-content;\n\n .spw-group--is-full-width & {\n width: 100% !important;\n }\n\n @include breakpoint(md) {\n align-items: center;\n }\n .spw-group--buttons & {\n gap: 12px;\n width: 100%;\n @include breakpoint(md) {\n width: fit-content;\n }\n }\n .spw-group--checkboxes &,\n .spw-group--radios & {\n gap: 16px;\n }\n .spw-group--checkboxes.spw-group--horizontal &,\n .spw-group--radios.spw-group--horizontal & {\n gap: 16px;\n @include breakpoint(md) {\n gap: 24px;\n }\n }\n .spw-group--buttons.spw-group--align-right.spw-group--horizontal & {\n flex-direction: column;\n @include breakpoint(md) {\n flex-direction: row-reverse;\n }\n }\n .spw-group--buttons.spw-group--align-left.spw-group--horizontal.spw-group--reversed & {\n flex-direction: column-reverse;\n @include breakpoint(md) {\n flex-direction: row;\n }\n }\n }\n\n &--align-left {\n .spw-group__container {\n margin-right: auto;\n }\n }\n\n &--align-center {\n .spw-group__container {\n margin-left: auto;\n margin-right: auto;\n }\n }\n\n &--align-right {\n .spw-group__container {\n margin-left: auto;\n }\n }\n\n &--vertical {\n .spw-group__container {\n flex-direction: column;\n align-items: flex-start;\n\n .spw-group--align-center & {\n align-items: center;\n }\n\n .spw-group--align-right & {\n align-items: flex-end;\n }\n }\n }\n\n &--horizontal {\n .spw-group__container {\n flex-direction: column;\n @include breakpoint(md) {\n flex-direction: row;\n }\n }\n }\n\n &--disabled {\n opacity: 0.5;\n pointer-events: none;\n }\n}\n","import { Component, Host, h, Prop, Element } from '@stencil/core';\n\n@Component({\n tag: 'spw-group',\n styleUrl: 'spw-group.scss',\n shadow: false,\n})\nexport class SpwGroup {\n @Element() host: HTMLSpwGroupElement;\n\n /** Type d'éléments contenus dans le groupe (buttons, checkboxes, radios) */\n @Prop() type: 'buttons' | 'checkboxes' | 'radios' = 'buttons';\n /** Orientation du groupe (horizontal ou vertical) */\n @Prop() orientation: 'horizontal' | 'vertical' = 'horizontal';\n /** Alignement horizontal du groupe */\n @Prop() alignment: 'left' | 'center' | 'right' = 'left';\n /** Détermine si le groupe est désactivé */\n @Prop() disabled: boolean = false;\n /** Texte à afficher au-dessus de l'élément de formulaire */\n @Prop() label: string = '';\n /** Si `true`, le label comporte une astérisque */\n @Prop() required?: boolean;\n /** Si `true`, l'ordre des boutons est inversé en mobile (uniquement valable en cas d'alignement left) */\n @Prop() isReversed?: boolean = false;\n /** Attribut `name` de l'élément input */\n @Prop() name: string;\n /** Si vrai, le groupe prend toute la largeur */\n @Prop() isFullWidth?: boolean = false;\n\n private slotEl: HTMLSlotElement;\n\n componentDidLoad() {\n this.handleSlotChange();\n }\n\n private handleSlotChange = () => {\n const elements = this.slotEl?.assignedElements ? this.slotEl.assignedElements() : Array.from(this.host.querySelectorAll('*'));\n\n elements.forEach(element => {\n if (this.disabled) {\n element.setAttribute('disabled', '');\n } else {\n element.removeAttribute('disabled');\n }\n });\n };\n\n private get groupClasses(): { [key: string]: boolean } {\n return {\n 'spw-group': true,\n 'spw-group--horizontal': this.orientation === 'horizontal',\n 'spw-group--vertical': this.orientation === 'vertical',\n 'spw-group--reversed': this.isReversed,\n 'spw-group--disabled': this.disabled,\n 'spw-group--is-full-width': this.isFullWidth,\n [`spw-group--${this.type}`]: true,\n [`spw-group--align-${this.alignment}`]: true,\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.groupClasses}>\n {this.label && <spw-field-label class=\"spw-tw-mb-3\" label={this.label} name={this.name} required={this.required}></spw-field-label>}\n <div class=\"spw-group__container\">\n <slot ref={el => (this.slotEl = el as HTMLSlotElement)}></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n","@import url('./assets/fontawesome/css/all.min.css');\n\n:host {\n line-height: 1;\n}\n\n.spw-icon.fa-solid,\n.spw-icon.fa-solid:before {\n font-family: var(--spw-ds-font-icons-solid);\n}\n\n.spw-icon.fa-brands,\n.spw-icon.fa-brands:before {\n font-family: var(--spw-ds-font-icons-brands);\n}\n\n.spw-icon.fa-regular,\n.spw-icon.fa-regular:before {\n font-weight: 400;\n font-family: var(--spw-ds-font-icons-solid);\n}\n\n.spw-icon {\n font-size: inherit;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-icon',\n styleUrl: 'spw-icon.scss',\n shadow: true,\n assetsDirs: ['assets'],\n})\nexport class SpwIcon {\n /** Permet de spécifier une référence d'icône Font Awesome */\n @Prop() icon: string;\n /** Permet de spécifier une variante de Font Awesome */\n @Prop() variant: 'fa-solid' | 'fa-brands' | 'fa-regular' | 'fa-light' = 'fa-solid';\n\n render() {\n const iconClassName = `spw-icon ${this.variant} ${this.icon}`;\n return <i class={iconClassName}></i>;\n }\n}\n",":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-font-weight: 700;\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: var(--spw-link-font-weight);\n &--surface-dark {\n color: var(--spw-ds-white);\n }\n\n &__inner {\n display: inline;\n overflow-wrap: break-word;\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: 2px;\n outline: 3px solid black;\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",":host {\n display: block;\n}\n\n.spw-separator {\n display: block;\n border-width: 1px;\n\n &--horizontal {\n border-bottom-style: solid;\n width: auto;\n height: 0;\n }\n\n &--vertical {\n border-right-style: solid;\n width: 0;\n height: auto;\n }\n\n &--dark {\n border-color: var(--spw-colors-support-grey-grey-300);\n }\n\n &--light {\n border-color: var(--spw-ds-white);\n }\n\n &--thickness-1 {\n border-width: 1px;\n }\n\n &--thickness-2 {\n border-width: 2px;\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-separator',\n styleUrl: 'spw-separator.scss',\n shadow: true,\n})\nexport class SpwSeparator {\n /** Permet de choisir la surface du séparateur (clair ou sombre) */\n @Prop() surface: 'dark' | 'light' = 'dark';\n\n /** Permet de définir la direction du séparateur */\n @Prop() direction: 'vertical' | 'horizontal' = 'horizontal';\n\n /** Définit l'épaisseur du séparateur */\n @Prop() thickness: 1 | 2 = 1;\n\n /** Largeur du séparateur (par défaut 100% si non spécifié) */\n @Prop() width: string = '100%';\n\n /** Hauteur du séparateur (par défaut 100% si non spécifié) */\n @Prop() height: string = '100%';\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-separator': true,\n [`spw-separator--${this.surface}`]: true,\n [`spw-separator--${this.direction}`]: true,\n [`spw-separator--thickness-${this.thickness}`]: true,\n };\n }\n\n private get style(): { [key: string]: string } {\n return {\n width: this.direction === 'horizontal' ? `${this.width}px` : `${this.thickness}px`,\n height: this.direction === 'vertical' ? `${this.height}px` : `${this.thickness}px`,\n };\n }\n\n render() {\n return <div class={this.elementClass} style={this.style}></div>;\n }\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-red-red-500);\n --spw-ds-variant: var(--spw-color-themes-red-red-700);\n --spw-ds-active: var(--spw-color-themes-red-red-800);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-red-red-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-red-red-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-red-red-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-red-red-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-blue-blue-500);\n --spw-ds-variant: var(--spw-color-themes-blue-blue-700);\n --spw-ds-active: var(--spw-color-themes-blue-blue-800);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-blue-blue-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-blue-blue-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-blue-blue-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-blue-blue-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-light-blue-light-blue-600);\n --spw-ds-variant: var(--spw-color-themes-light-blue-light-blue-800);\n --spw-ds-active: var(--spw-color-themes-light-blue-light-blue-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-light-blue-light-blue-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-light-blue-light-blue-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-light-blue-light-blue-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-light-blue-light-blue-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-green-green-700);\n --spw-ds-variant: var(--spw-color-themes-green-green-800);\n --spw-ds-active: var(--spw-color-themes-green-green-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-green-green-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-green-green-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-green-green-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-green-green-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-light-green-light-green-700);\n --spw-ds-variant: var(--spw-color-themes-light-green-light-green-800);\n --spw-ds-active: var(--spw-color-themes-light-green-light-green-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-light-green-light-green-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-light-green-light-green-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-light-green-light-green-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-light-green-light-green-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-teal-teal-700);\n --spw-ds-variant: var(--spw-color-themes-teal-teal-800);\n --spw-ds-active: var(--spw-color-themes-teal-teal-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-teal-teal-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-teal-teal-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-teal-teal-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-teal-teal-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-orange-orange-700);\n --spw-ds-variant: var(--spw-color-themes-orange-orange-800);\n --spw-ds-active: var(--spw-color-themes-orange-orange-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-orange-orange-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-orange-orange-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-orange-orange-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-orange-orange-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-indigo-indigo-700);\n --spw-ds-variant: var(--spw-color-themes-indigo-indigo-800);\n --spw-ds-active: var(--spw-color-themes-indigo-indigo-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-indigo-indigo-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-indigo-indigo-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-indigo-indigo-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-indigo-indigo-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-purple-purple-500);\n --spw-ds-variant: var(--spw-color-themes-purple-purple-800);\n --spw-ds-active: var(--spw-color-themes-purple-purple-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-purple-purple-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-purple-purple-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-purple-purple-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-purple-purple-800);\n}\n","@import '_base.css';\n\n:root {\n --spw-ds-primary: var(--spw-color-themes-grey-grey-500);\n --spw-ds-variant: var(--spw-color-themes-grey-grey-800);\n --spw-ds-active: var(--spw-color-themes-grey-grey-900);\n --spw-ds-cta-outlined-bg-hover: var(--spw-color-themes-grey-grey-50);\n --spw-ds-cta-outlined-stroke-hover: var(--spw-color-themes-grey-grey-700);\n --spw-ds-cta-outlined-bg-active: var(--spw-color-themes-grey-grey-100);\n --spw-ds-cta-outlined-stroke-active: var(--spw-color-themes-grey-grey-800);\n}\n","import rougeTheme from './rouge.css';\nimport bleuTheme from './bleu.css';\nimport bleuClairTheme from './bleu-clair.css';\nimport vertTheme from './vert.css';\nimport vertLegerTheme from './vert-leger.css';\nimport turquoiseTheme from './turquoise.css';\nimport orangeTheme from './orange.css';\nimport indigoTheme from './indigo.css';\nimport mauveTheme from './mauve.css';\nimport grisTheme from './gris.css';\n\nexport const themes = {\n rouge: rougeTheme,\n bleu: bleuTheme,\n bleuClair: bleuClairTheme,\n vert: vertTheme,\n vertLeger: vertLegerTheme,\n orange: orangeTheme,\n turquoise: turquoiseTheme,\n indigo: indigoTheme,\n mauve: mauveTheme,\n gris: grisTheme,\n};\n\nexport type SpwTheme = keyof typeof themes;\n","import { Component, Prop, h, Element } from '@stencil/core';\nimport { themes, SpwTheme } from '@themes/themes';\n\n@Component({\n tag: 'spw-theme-provider',\n shadow: false,\n})\nexport class SpwThemeProvider {\n /** Définit le thème employé, conditionne les tokens associés au thème */\n @Prop() theme: SpwTheme = 'rouge';\n\n @Element() el: HTMLSpwThemeProviderElement;\n\n componentWillLoad() {\n this.applyTheme(this.theme);\n }\n\n componentWillUpdate() {\n this.applyTheme(this.theme);\n }\n\n private applyTheme(theme: SpwTheme) {\n const styleId = 'theme-styles';\n let styleElement = document.getElementById(styleId) as HTMLStyleElement;\n\n if (!styleElement) {\n styleElement = document.createElement('style');\n styleElement.id = styleId;\n document.head.appendChild(styleElement);\n }\n\n const css = themes[theme];\n styleElement.innerHTML = css;\n\n document.documentElement.setAttribute('data-theme', theme);\n }\n\n render() {\n return (\n <main class={`spw-theme-${this.theme}`}>\n <slot />\n </main>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|