@randstad-uca/design-system 1.0.60 → 1.0.62

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 (38) hide show
  1. package/dist/assets/img/image-upload-error.svg +15 -0
  2. package/dist/components/Accordion.d.ts +2 -3
  3. package/dist/components/CalendarOverlay.d.ts +3 -3
  4. package/dist/components/Carousel.d.ts +18 -0
  5. package/dist/components/CarouselCards.d.ts +4 -0
  6. package/dist/components/File.d.ts +7 -41
  7. package/dist/components/Form.d.ts +3 -2
  8. package/dist/components/Icon.d.ts +3 -2
  9. package/dist/components/Modal.d.ts +1 -1
  10. package/dist/components/Select.d.ts +3 -2
  11. package/dist/components/Upload.d.ts +15 -8
  12. package/dist/helpers/BaseUpload.d.ts +81 -0
  13. package/dist/index.d.ts +5 -3
  14. package/dist/index.js +1414 -1229
  15. package/dist/index.js.map +1 -1
  16. package/dist/package.json +1 -1
  17. package/dist/randstad-design-system.css +1 -1
  18. package/dist/stories/Accordion.stories.d.ts +1 -1
  19. package/dist/stories/Carousel.stories.d.ts +8 -0
  20. package/dist/styles/colors.css +48 -49
  21. package/dist/styles/error.d.ts +2 -1
  22. package/dist/styles/error.ts +4 -4
  23. package/dist/styles/fontStyles.d.ts +8 -7
  24. package/dist/styles/fontStyles.ts +8 -8
  25. package/dist/styles/globalStyles.ts +3 -3
  26. package/dist/styles/mix.d.ts +2 -1
  27. package/dist/styles/mix.ts +9 -9
  28. package/dist/styles/progress-bar-upload.d.ts +2 -1
  29. package/dist/styles/progress-bar-upload.ts +4 -4
  30. package/dist/styles/scrollbar.d.ts +1 -0
  31. package/dist/styles/scrollbar.ts +25 -0
  32. package/dist/styles/tooltip.d.ts +2 -1
  33. package/dist/styles/tooltip.ts +4 -4
  34. package/dist/utils/file-format.d.ts +3 -0
  35. package/package.json +1 -1
  36. package/dist/styles/notice.css +0 -0
  37. package/dist/styles/select.css +0 -12
  38. package/dist/styles/snackbar.css +0 -0
package/dist/index.js CHANGED
@@ -1,31 +1,31 @@
1
- import{LitElement as t,html as e,nothing as i,css as o,isServer as r}from"lit";import{classMap as n}from"lit/directives/class-map.js";function a(t,e,i,o){var r,n=arguments.length,a=n<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,o);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(n<3?r(a):n>3?r(e,i,a):r(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a}function s(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}"function"==typeof SuppressedError&&SuppressedError;
1
+ import{LitElement as e,html as t,nothing as i,css as o,isServer as r}from"lit";import{classMap as n}from"lit/directives/class-map.js";function a(e,t,i,o){var r,n=arguments.length,a=n<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(n<3?r(a):n>3?r(t,i,a):r(t,i))||a);return n>3&&a&&Object.defineProperty(t,i,a),a}function s(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}"function"==typeof SuppressedError&&SuppressedError;
2
2
  /**
3
3
  * @license
4
4
  * Copyright 2017 Google LLC
5
5
  * SPDX-License-Identifier: BSD-3-Clause
6
6
  */
7
- const d=t=>(e,i)=>{void 0!==i?i.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)},l=globalThis,c=l.ShadowRoot&&(void 0===l.ShadyCSS||l.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,p=Symbol(),h=new WeakMap;
7
+ const d=e=>(t,i)=>{void 0!==i?i.addInitializer((()=>{customElements.define(e,t)})):customElements.define(e,t)},l=globalThis,c=l.ShadowRoot&&(void 0===l.ShadyCSS||l.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,p=Symbol(),h=new WeakMap;
8
8
  /**
9
9
  * @license
10
10
  * Copyright 2019 Google LLC
11
11
  * SPDX-License-Identifier: BSD-3-Clause
12
- */let u=class{constructor(t,e,i){if(this._$cssResult$=!0,i!==p)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(c&&void 0===t){const i=void 0!==e&&1===e.length;i&&(t=h.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),i&&h.set(e,t))}return t}toString(){return this.cssText}};const b=(t,e)=>{if(c)t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const i of e){const e=document.createElement("style"),o=l.litNonce;void 0!==o&&e.setAttribute("nonce",o),e.textContent=i.cssText,t.appendChild(e)}},m=c?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new u("string"==typeof t?t:t+"",void 0,p))(e)})(t):t,{is:g,defineProperty:y,getOwnPropertyDescriptor:f,getOwnPropertyNames:v,getOwnPropertySymbols:x,getPrototypeOf:w}=Object,k=globalThis,$=k.trustedTypes,S=$?$.emptyScript:"",C=k.reactiveElementPolyfillSupport,E=(t,e)=>t,D={toAttribute(t,e){switch(e){case Boolean:t=t?S:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},O=(t,e)=>!g(t,e),M={attribute:!0,type:String,converter:D,reflect:!1,useDefault:!1,hasChanged:O};
12
+ */let u=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==p)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const t=this.t;if(c&&void 0===e){const i=void 0!==t&&1===t.length;i&&(e=h.get(t)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&h.set(t,e))}return e}toString(){return this.cssText}};const b=(e,t)=>{if(c)e.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(const i of t){const t=document.createElement("style"),o=l.litNonce;void 0!==o&&t.setAttribute("nonce",o),t.textContent=i.cssText,e.appendChild(t)}},g=c?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const i of e.cssRules)t+=i.cssText;return(e=>new u("string"==typeof e?e:e+"",void 0,p))(t)})(e):e,{is:m,defineProperty:y,getOwnPropertyDescriptor:v,getOwnPropertyNames:f,getOwnPropertySymbols:x,getPrototypeOf:w}=Object,k=globalThis,$=k.trustedTypes,S=$?$.emptyScript:"",C=k.reactiveElementPolyfillSupport,E=(e,t)=>e,D={toAttribute(e,t){switch(t){case Boolean:e=e?S:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let i=e;switch(t){case Boolean:i=null!==e;break;case Number:i=null===e?null:Number(e);break;case Object:case Array:try{i=JSON.parse(e)}catch(e){i=null}}return i}},M=(e,t)=>!m(e,t),O={attribute:!0,type:String,converter:D,reflect:!1,useDefault:!1,hasChanged:M};
13
13
  /**
14
14
  * @license
15
15
  * Copyright 2017 Google LLC
16
16
  * SPDX-License-Identifier: BSD-3-Clause
17
- */Symbol.metadata??=Symbol("metadata"),k.litPropertyMetadata??=new WeakMap;class F extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=M){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){const i=Symbol(),o=this.getPropertyDescriptor(t,i,e);void 0!==o&&y(this.prototype,t,o)}}static getPropertyDescriptor(t,e,i){const{get:o,set:r}=f(this.prototype,t)??{get(){return this[e]},set(t){this[e]=t}};return{get:o,set(e){const n=o?.call(this);r?.call(this,e),this.requestUpdate(t,n,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??M}static _$Ei(){if(this.hasOwnProperty(E("elementProperties")))return;const t=w(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(E("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(E("properties"))){const t=this.properties,e=[...v(t),...x(t)];for(const i of e)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const e=litPropertyMetadata.get(t);if(void 0!==e)for(const[t,i]of e)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,e]of this.elementProperties){const i=this._$Eu(t,e);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift(m(t))}else void 0!==t&&e.push(m(t));return e}static _$Eu(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const i of e.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return b(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$ET(t,e){const i=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,i);if(void 0!==o&&!0===i.reflect){const r=(void 0!==i.converter?.toAttribute?i.converter:D).toAttribute(e,i.type);this._$Em=t,null==r?this.removeAttribute(o):this.setAttribute(o,r),this._$Em=null}}_$AK(t,e){const i=this.constructor,o=i._$Eh.get(t);if(void 0!==o&&this._$Em!==o){const t=i.getPropertyOptions(o),r="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:D;this._$Em=o,this[o]=r.fromAttribute(e,t.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,i){if(void 0!==t){const o=this.constructor,r=this[t];if(i??=o.getPropertyOptions(t),!((i.hasChanged??O)(r,e)||i.useDefault&&i.reflect&&r===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,i))))return;this.C(t,e,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,e,{useDefault:i,reflect:o,wrapped:r},n){i&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),!0!==r||void 0!==n)||(this._$AL.has(t)||(this.hasUpdated||i||(e=void 0),this._$AL.set(t,e)),!0===o&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,e]of this._$Ep)this[t]=e;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[e,i]of t){const{wrapped:t}=i,o=this[e];!0!==t||this._$AL.has(e)||void 0===o||this.C(e,void 0,i,o)}}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(e)):this._$EM()}catch(e){throw t=!1,this._$EM(),e}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((t=>this._$ET(t,this[t]))),this._$EM()}updated(t){}firstUpdated(t){}}F.elementStyles=[],F.shadowRootOptions={mode:"open"},F[E("elementProperties")]=new Map,F[E("finalized")]=new Map,C?.({ReactiveElement:F}),(k.reactiveElementVersions??=[]).push("2.1.0");
17
+ */Symbol.metadata??=Symbol("metadata"),k.litPropertyMetadata??=new WeakMap;class F extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=O){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){const i=Symbol(),o=this.getPropertyDescriptor(e,i,t);void 0!==o&&y(this.prototype,e,o)}}static getPropertyDescriptor(e,t,i){const{get:o,set:r}=v(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get:o,set(t){const n=o?.call(this);r?.call(this,t),this.requestUpdate(e,n,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??O}static _$Ei(){if(this.hasOwnProperty(E("elementProperties")))return;const e=w(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(E("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(E("properties"))){const e=this.properties,t=[...f(e),...x(e)];for(const i of t)this.createProperty(i,e[i])}const e=this[Symbol.metadata];if(null!==e){const t=litPropertyMetadata.get(e);if(void 0!==t)for(const[e,i]of t)this.elementProperties.set(e,i)}this._$Eh=new Map;for(const[e,t]of this.elementProperties){const i=this._$Eu(e,t);void 0!==i&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const i=new Set(e.flat(1/0).reverse());for(const e of i)t.unshift(g(e))}else void 0!==e&&t.push(g(e));return t}static _$Eu(e,t){const i=t.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return b(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){const i=this.constructor.elementProperties.get(e),o=this.constructor._$Eu(e,i);if(void 0!==o&&!0===i.reflect){const r=(void 0!==i.converter?.toAttribute?i.converter:D).toAttribute(t,i.type);this._$Em=e,null==r?this.removeAttribute(o):this.setAttribute(o,r),this._$Em=null}}_$AK(e,t){const i=this.constructor,o=i._$Eh.get(e);if(void 0!==o&&this._$Em!==o){const e=i.getPropertyOptions(o),r="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:D;this._$Em=o,this[o]=r.fromAttribute(t,e.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(e,t,i){if(void 0!==e){const o=this.constructor,r=this[e];if(i??=o.getPropertyOptions(e),!((i.hasChanged??M)(r,t)||i.useDefault&&i.reflect&&r===this._$Ej?.get(e)&&!this.hasAttribute(o._$Eu(e,i))))return;this.C(e,t,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:o,wrapped:r},n){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,n??t??this[e]),!0!==r||void 0!==n)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),!0===o&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const e=this.scheduleUpdate();return null!=e&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[e,t]of this._$Ep)this[e]=t;this._$Ep=void 0}const e=this.constructor.elementProperties;if(e.size>0)for(const[t,i]of e){const{wrapped:e}=i,o=this[t];!0!==e||this._$AL.has(t)||void 0===o||this.C(t,void 0,i,o)}}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach((e=>e.hostUpdate?.())),this.update(t)):this._$EM()}catch(t){throw e=!1,this._$EM(),t}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach((e=>e.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach((e=>this._$ET(e,this[e]))),this._$EM()}updated(e){}firstUpdated(e){}}F.elementStyles=[],F.shadowRootOptions={mode:"open"},F[E("elementProperties")]=new Map,F[E("finalized")]=new Map,C?.({ReactiveElement:F}),(k.reactiveElementVersions??=[]).push("2.1.0");
18
18
  /**
19
19
  * @license
20
20
  * Copyright 2017 Google LLC
21
21
  * SPDX-License-Identifier: BSD-3-Clause
22
22
  */
23
- const P={attribute:!0,type:String,converter:D,reflect:!1,hasChanged:O},j=(t=P,e,i)=>{const{kind:o,metadata:r}=i;let n=globalThis.litPropertyMetadata.get(r);if(void 0===n&&globalThis.litPropertyMetadata.set(r,n=new Map),"setter"===o&&((t=Object.create(t)).wrapped=!0),n.set(i.name,t),"accessor"===o){const{name:o}=i;return{set(i){const r=e.get.call(this);e.set.call(this,i),this.requestUpdate(o,r,t)},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if("setter"===o){const{name:o}=i;return function(i){const r=this[o];e.call(this,i),this.requestUpdate(o,r,t)}}throw Error("Unsupported decorator location: "+o)};function A(t){return(e,i)=>"object"==typeof i?j(t,e,i):((t,e,i)=>{const o=e.hasOwnProperty(i);return e.constructor.createProperty(i,t),o?Object.getOwnPropertyDescriptor(e,i):void 0})(t,e,i)}
23
+ const T={attribute:!0,type:String,converter:D,reflect:!1,hasChanged:M},j=(e=T,t,i)=>{const{kind:o,metadata:r}=i;let n=globalThis.litPropertyMetadata.get(r);if(void 0===n&&globalThis.litPropertyMetadata.set(r,n=new Map),"setter"===o&&((e=Object.create(e)).wrapped=!0),n.set(i.name,e),"accessor"===o){const{name:o}=i;return{set(i){const r=t.get.call(this);t.set.call(this,i),this.requestUpdate(o,r,e)},init(t){return void 0!==t&&this.C(o,void 0,e,t),t}}}if("setter"===o){const{name:o}=i;return function(i){const r=this[o];t.call(this,i),this.requestUpdate(o,r,e)}}throw Error("Unsupported decorator location: "+o)};function P(e){return(t,i)=>"object"==typeof i?j(e,t,i):((e,t,i)=>{const o=t.hasOwnProperty(i);return t.constructor.createProperty(i,e),o?Object.getOwnPropertyDescriptor(t,i):void 0})(e,t,i)}
24
24
  /**
25
25
  * @license
26
26
  * Copyright 2017 Google LLC
27
27
  * SPDX-License-Identifier: BSD-3-Clause
28
- */function T(t){return A({...t,state:!0,attribute:!1})}
28
+ */function z(e){return P({...e,state:!0,attribute:!1})}
29
29
  /**
30
30
  * @license
31
31
  * Copyright 2017 Google LLC
@@ -36,50 +36,50 @@ const P={attribute:!0,type:String,converter:D,reflect:!1,hasChanged:O},j=(t=P,e,
36
36
  * Copyright 2017 Google LLC
37
37
  * SPDX-License-Identifier: BSD-3-Clause
38
38
  */
39
- function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Reflect.decorate&&"object"!=typeof e&&Object.defineProperty(t,e,i),i))(e,i,{get(){return(e=>e.renderRoot?.querySelector(t)??null)(this)}})}let L=class extends t{constructor(){super(...arguments),this.label="",this.placeholder="",this.labelColor="",this.value="",this.required=!1,this.optional=!1,this.disabled=!1,this.error=!1,this.errorMessage=null,this.helper=null,this.helperAlign="left"}renderLabelContainer(){return e`
40
- ${this.label?e`
39
+ function A(e,t){return(t,i,o)=>((e,t,i)=>(i.configurable=!0,i.enumerable=!0,Reflect.decorate&&"object"!=typeof t&&Object.defineProperty(e,t,i),i))(t,i,{get(){return(t=>t.renderRoot?.querySelector(e)??null)(this)}})}let L=class extends e{constructor(){super(...arguments),this.label="",this.placeholder="",this.labelColor="",this.value="",this.required=!1,this.optional=!1,this.disabled=!1,this.error=!1,this.errorMessage=null,this.helper=null,this.helperAlign="left"}renderLabelContainer(){return t`
40
+ ${this.label?t`
41
41
  <div class="label-container">
42
42
  ${this.renderLabel()}
43
43
 
44
44
  ${this.renderHelp()}
45
45
  </div>
46
46
  `:""}
47
- `}renderLabel(){return e`
47
+ `}renderLabel(){return t`
48
48
  <label class="form-label">
49
49
  ${this.label}
50
- ${this.required?e`
51
- <span class="required">*</span>`:this.optional?e` <span class="optional">opcional</span> `:i}
50
+ ${this.required?t`
51
+ <span class="required">*</span>`:this.optional?t` <span class="optional">opcional</span> `:i}
52
52
  </label>
53
- `}renderHelp(){return e`
54
- ${this.help?e`
53
+ `}renderHelp(){return t`
54
+ ${this.help?t`
55
55
  <div class="tooltip-wrapper">
56
56
  <randstad-icon name="info" size="20px"></randstad-icon>
57
57
 
58
58
  <div class="tooltip">${this.help}</div>
59
59
  </div>
60
- `:this.helpLink?e`
60
+ `:this.helpLink?t`
61
61
  <a class="tooltip-wrapper" href="${this.helpLink}">
62
62
  <randstad-icon name="ayuda" size="20px"></randstad-icon>
63
63
 
64
- ${this.helpLinkTooltipMessage?e`<div class="tooltip">${this.helpLinkTooltipMessage}</div>`:i}
64
+ ${this.helpLinkTooltipMessage?t`<div class="tooltip">${this.helpLinkTooltipMessage}</div>`:i}
65
65
  </a>
66
66
  `:i}
67
- `}renderError(){return e`
68
- ${this.error?e`
67
+ `}renderError(){return t`
68
+ ${this.error?t`
69
69
  <div class="error-message">
70
- ${this.errorMessage?this.errorMessage:e`<slot name="error-extended"></slot>`}
70
+ ${this.errorMessage?this.errorMessage:t`<slot name="error-extended"></slot>`}
71
71
  </div>
72
72
  `:i}
73
- `}renderHelper(){const t=`text-align: ${this.helperAlign??"left"};`;return e`
74
- ${this.helper?e`
73
+ `}renderHelper(){const e=`text-align: ${this.helperAlign??"left"};`;return t`
74
+ ${this.helper?t`
75
75
  <p
76
76
  class="helper-description"
77
- style=${t}
77
+ style=${e}
78
78
  >
79
79
  ${this.helper}
80
80
  </p>
81
81
  `:i}
82
- `}};a([A({type:String}),s("design:type",Object)],L.prototype,"label",void 0),a([A({type:String}),s("design:type",Object)],L.prototype,"placeholder",void 0),a([A({type:String}),s("design:type",Object)],L.prototype,"labelColor",void 0),a([A(),s("design:type",Object)],L.prototype,"value",void 0),a([A({type:Boolean}),s("design:type",Object)],L.prototype,"required",void 0),a([A({type:Boolean}),s("design:type",Object)],L.prototype,"optional",void 0),a([A({type:Boolean}),s("design:type",Object)],L.prototype,"disabled",void 0),a([A({type:Boolean,reflect:!0}),s("design:type",Object)],L.prototype,"error",void 0),a([A({type:String}),s("design:type",Object)],L.prototype,"errorMessage",void 0),a([A({type:String}),s("design:type",Object)],L.prototype,"helper",void 0),a([A({type:String}),s("design:type",String)],L.prototype,"helperAlign",void 0),a([A({type:String}),s("design:type",String)],L.prototype,"help",void 0),a([A({type:String}),s("design:type",String)],L.prototype,"helpLink",void 0),a([A({type:String}),s("design:type",String)],L.prototype,"helpLinkTooltipMessage",void 0),L=a([d("base-control")],L);const I=o`
82
+ `}};a([P({type:String}),s("design:type",Object)],L.prototype,"label",void 0),a([P({type:String}),s("design:type",Object)],L.prototype,"placeholder",void 0),a([P({type:String}),s("design:type",Object)],L.prototype,"labelColor",void 0),a([P(),s("design:type",Object)],L.prototype,"value",void 0),a([P({type:Boolean}),s("design:type",Object)],L.prototype,"required",void 0),a([P({type:Boolean}),s("design:type",Object)],L.prototype,"optional",void 0),a([P({type:Boolean}),s("design:type",Object)],L.prototype,"disabled",void 0),a([P({type:Boolean,reflect:!0}),s("design:type",Object)],L.prototype,"error",void 0),a([P({type:String}),s("design:type",Object)],L.prototype,"errorMessage",void 0),a([P({type:String}),s("design:type",Object)],L.prototype,"helper",void 0),a([P({type:String}),s("design:type",String)],L.prototype,"helperAlign",void 0),a([P({type:String}),s("design:type",String)],L.prototype,"help",void 0),a([P({type:String}),s("design:type",String)],L.prototype,"helpLink",void 0),a([P({type:String}),s("design:type",String)],L.prototype,"helpLinkTooltipMessage",void 0),L=a([d("base-control")],L);const I=o`
83
83
  font-family: 'Graphik', sans-serif;
84
84
  font-weight: 400;
85
85
  font-size: 12px;
@@ -97,13 +97,13 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
97
97
  font-size: 16px;
98
98
  line-height: 25px;
99
99
  letter-spacing: 0%;
100
- `,N=o`
100
+ `,R=o`
101
101
  font-family: 'Graphik', sans-serif;
102
102
  font-weight: 400;
103
103
  font-size: 18px;
104
104
  line-height: 30px;
105
105
  letter-spacing: 0%;
106
- `,R=o`
106
+ `,N=o`
107
107
  font-family: 'Graphik', sans-serif;
108
108
  font-weight: 400;
109
109
  font-size: 18px;
@@ -117,14 +117,14 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
117
117
  line-height: 30px;
118
118
  letter-spacing: -1%;
119
119
  vertical-align: middle;
120
- `,q=o`
120
+ `,U=o`
121
121
  font-family: 'Graphik', sans-serif;
122
122
  font-weight: 400;
123
123
  font-size: 26px;
124
124
  line-height: 30px;
125
125
  letter-spacing: -1%;
126
126
  vertical-align: middle;
127
- `;let W=class extends t{constructor(){super(...arguments),this.title="",this.isOpen=!1,this.isDesktop=window.innerWidth>940,this.handleResize=()=>{this.isDesktop=window.innerWidth>940}}static{this.styles=o`
127
+ `;let q=class extends e{constructor(){super(...arguments),this.title="",this.isOpen=!1,this.isDesktop=window.innerWidth>940,this.handleResize=()=>{this.isDesktop=window.innerWidth>940}}static{this.styles=o`
128
128
  :host {
129
129
  display: flex;
130
130
  flex-direction: column;
@@ -144,7 +144,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
144
144
 
145
145
  .title {
146
146
  ${B}
147
- color: var(--secondary-color);
147
+ color: var( --secondary-color );
148
148
  }
149
149
 
150
150
  .icon-wrapper {
@@ -154,29 +154,36 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
154
154
  display: flex;
155
155
  align-items: center;
156
156
  justify-content: center;
157
- transition: background-color 0.3s ease;
157
+ transition: background-color .5s ease-in-out;
158
158
  }
159
159
 
160
160
  .icon {
161
- transition: transform 0.3s;
161
+ transition: transform .5s ease-in-out;
162
162
  }
163
163
 
164
164
  .content {
165
165
  overflow: hidden;
166
+ height: 0;
166
167
  max-height: 0;
167
- transition: max-height 0.3s ease, padding-bottom 0.3s ease;
168
+ opacity: 0;
168
169
  }
169
170
 
170
171
  .content.open {
171
172
  max-height: 1000px;
172
173
  padding-bottom: 16px;
174
+ height: auto;
175
+ opacity: 1;
176
+ }
177
+
178
+ .content, .content.open {
179
+ transition: height .5s ease-in-out, opacity .5s ease-in-out, padding-bottom .3s ease-in-out;
173
180
  }
174
181
 
175
182
  :host::after {
176
183
  content: '';
177
184
  display: block;
178
185
  height: 1px;
179
- background-color: var(--secondary-color-20);
186
+ background-color: var( --secondary-color-20 );
180
187
  width: 100%;
181
188
  }
182
189
 
@@ -184,33 +191,40 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
184
191
  .header {
185
192
  align-items: flex-start;
186
193
  }
194
+
187
195
  .header:hover .icon-wrapper {
188
- background-color: var(--primary-color-5);
196
+ background-color: var( --primary-color-5 );
189
197
  }
190
198
  }
191
- `}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.handleResize)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.handleResize)}toggle(){this.isOpen=!this.isOpen}renderIcon(){return this.isOpen?e`<randstad-icon name="arrow_up" size="24px" style="--icon-color: var(--primary-color);"></randstad-icon>`:e`<randstad-icon name="arrow_down" size="24px" style="--icon-color: var(--primary-color);"></randstad-icon>`}render(){return e`
199
+ `}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.handleResize)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.handleResize)}toggle(){this.isOpen=!this.isOpen}render(){const e=t`
200
+ <randstad-icon
201
+ name="${this.isOpen?"arrow_up":"arrow_down"}"
202
+ size="24"
203
+ .color=${"var( --primary-color )"}
204
+ >
205
+ </randstad-icon>
206
+ `;return t`
192
207
  <div class="header" @click=${this.toggle}>
193
208
  <div class="title">${this.title}</div>
209
+
194
210
  <div class="icon">
195
- ${this.isDesktop?e`
196
- <div class="icon-wrapper">
197
- ${this.renderIcon()}
198
- </div>
199
- `:this.renderIcon()}
211
+ ${this.isDesktop?t`<div class="icon-wrapper">${e}</div>`:e}
200
212
  </div>
201
213
  </div>
214
+
202
215
  <div class="content ${this.isOpen?"open":""}">
203
216
  <slot></slot>
204
217
  </div>
205
- `}};a([A({type:String}),s("design:type",Object)],W.prototype,"title",void 0),a([T(),s("design:type",Object)],W.prototype,"isOpen",void 0),a([T(),s("design:type",Object)],W.prototype,"isDesktop",void 0),W=a([d("accordion-panel")],W);let Y=class extends t{static{this.styles=o`
218
+ `}};a([P({type:String}),s("design:type",Object)],q.prototype,"title",void 0),a([z(),s("design:type",Object)],q.prototype,"isOpen",void 0),a([z(),s("design:type",Object)],q.prototype,"isDesktop",void 0),q=a([d("accordion-panel")],q);let Y=class extends e{static{this.styles=o`
206
219
  :host {
207
220
  display: flex;
208
221
  flex-direction: column;
209
222
  gap: 16px;
210
223
  }
211
- `}render(){return e`<slot></slot>`}};Y=a([d("accordion-list")],Y);let U=class extends t{constructor(){super(...arguments),this.type="button",this.variant="button-primary",this.size="md",this.label="",this.loader=!1,this.iconPosition="left",this.iconName=null,this.disabled=!1,this.idevent=""}static{this.styles=o`
224
+ `}render(){return t`<slot></slot>`}};Y=a([d("accordion-list")],Y);let W=class extends e{constructor(){super(...arguments),this.type="button",this.variant="button-primary",this.size="md",this.label="",this.loader=!1,this.iconPosition="left",this.iconName=null,this.disabled=!1,this.idevent=""}static{this.styles=o`
212
225
  :host {
213
226
  display: inline-block;
227
+ --content-padding: 16px;
214
228
  }
215
229
 
216
230
  .button {
@@ -235,7 +249,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
235
249
  justify-content: center;
236
250
  gap: 4px;
237
251
  width: 100%;
238
- padding: 16px;
252
+ padding: var( --content-padding );
239
253
  height: 100%;
240
254
  }
241
255
 
@@ -247,7 +261,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
247
261
  }
248
262
 
249
263
  .button-lg {
250
- ${N}
264
+ ${R}
251
265
  min-height: 62px;
252
266
  }
253
267
 
@@ -504,17 +518,16 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
504
518
  color: #6F758D;
505
519
  cursor: default;
506
520
  }
507
-
508
- `}handleClick(t){if(!this.disabled)if("submit"===this.type){const t=this.closest("form");t&&t.requestSubmit()}else if("reset"===this.type){const t=this.closest("form");t&&t.reset()}else this.idevent&&this.dispatchEvent(new CustomEvent("randstad-button-click",{detail:this.idevent,composed:!0,bubbles:!0,cancelable:!1}))}render(){const t={button:!0,[this.variant]:!0,loader:this.loader,[`button-${this.size}`]:["button-primary","button-secondary","button-tertiary"].includes(this.variant)},i="button-tertiary"===this.variant?"var(--primary-color)":"white";return e`
521
+ `}handleClick(e){if(!this.disabled)if("submit"===this.type){const e=this.closest("form");e&&e.requestSubmit()}else if("reset"===this.type){const e=this.closest("form");e&&e.reset()}else this.idevent&&this.dispatchEvent(new CustomEvent("randstad-button-click",{detail:this.idevent,composed:!0,bubbles:!0,cancelable:!1}))}render(){const e={button:!0,[this.variant]:!0,loader:this.loader,[`button-${this.size}`]:["button-primary","button-secondary","button-tertiary"].includes(this.variant)},i="button-tertiary"===this.variant?"var(--primary-color)":"white";return t`
509
522
  <button
510
523
  part="button"
511
524
  type=${this.type}
512
- class=${n(t)}
525
+ class=${n(e)}
513
526
  ?disabled=${this.disabled||this.loader}
514
527
  ?aria-busy=${this.loader}
515
528
  @click=${this.handleClick}
516
529
  >
517
- ${this.loader?e`
530
+ ${this.loader?t`
518
531
  <div class="content-container">
519
532
  <div class="loader">
520
533
  <span class="dot" style="background-color: ${i};"></span>
@@ -522,22 +535,24 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
522
535
  <span class="dot" style="background-color: ${i};"></span>
523
536
  </div>
524
537
  </div>
525
- `:e`
538
+ `:t`
526
539
  <div class="content-container">
527
- ${this.iconSrc&&"button-round"===this.variant?e`<img src=${this.iconSrc} alt="icon" class="button-icon" part="button-icon"/>`:""}
540
+ ${this.iconSrc&&"button-round"===this.variant?t`<img src=${this.iconSrc} alt="icon" class="button-icon" part="button-icon"/>`:""}
528
541
 
529
- ${this.iconName&&"button-round"!==this.variant&&"left"===this.iconPosition?e`<randstad-icon name=${this.iconName} size="24px"></randstad-icon>`:""}
542
+ ${this.iconName&&"button-round"!==this.variant&&"left"===this.iconPosition?t`<randstad-icon name=${this.iconName} size="24px"></randstad-icon>`:""}
530
543
 
531
- ${this.label?e`<span class="label-text" part="label">${this.label}</span>`:e`<slot></slot>`}
544
+ ${this.label?t`<span class="label-text" part="label">${this.label}</span>`:t`<slot></slot>`}
532
545
 
533
- ${this.iconName&&"button-round"!==this.variant&&"right"===this.iconPosition?e`<randstad-icon name=${this.iconName} size="24px"></randstad-icon>`:""}
546
+ ${this.iconName&&"button-round"!==this.variant&&"right"===this.iconPosition?t`<randstad-icon name=${this.iconName} size="24px"></randstad-icon>`:""}
534
547
  </div>
535
548
  `}
536
549
  </button>
537
- `}};a([A({type:String}),s("design:type",String)],U.prototype,"type",void 0),a([A({type:String}),s("design:type",String)],U.prototype,"variant",void 0),a([A({type:String}),s("design:type",String)],U.prototype,"size",void 0),a([A({type:String}),s("design:type",Object)],U.prototype,"label",void 0),a([A({type:Boolean}),s("design:type",Object)],U.prototype,"loader",void 0),a([A({type:String,attribute:"icon-src"}),s("design:type",String)],U.prototype,"iconSrc",void 0),a([A({type:String}),s("design:type",String)],U.prototype,"iconPosition",void 0),a([A({type:String}),s("design:type",Object)],U.prototype,"iconName",void 0),a([A({type:Boolean,reflect:!0}),s("design:type",Boolean)],U.prototype,"disabled",void 0),a([A({type:String}),s("design:type",Object)],U.prototype,"idevent",void 0),U=a([d("randstad-button")],U);let H=class extends t{constructor(){super(...arguments),this.img="",this.name="",this.title="",this.description="",this.buttonLabel="Contactanos",this.cardId=""}static{this.styles=o`
550
+ `}};a([P({type:String}),s("design:type",String)],W.prototype,"type",void 0),a([P({type:String}),s("design:type",String)],W.prototype,"variant",void 0),a([P({type:String}),s("design:type",String)],W.prototype,"size",void 0),a([P({type:String}),s("design:type",Object)],W.prototype,"label",void 0),a([P({type:Boolean}),s("design:type",Object)],W.prototype,"loader",void 0),a([P({type:String,attribute:"icon-src"}),s("design:type",String)],W.prototype,"iconSrc",void 0),a([P({type:String}),s("design:type",String)],W.prototype,"iconPosition",void 0),a([P({type:String}),s("design:type",Object)],W.prototype,"iconName",void 0),a([P({type:Boolean,reflect:!0}),s("design:type",Boolean)],W.prototype,"disabled",void 0),a([P({type:String}),s("design:type",Object)],W.prototype,"idevent",void 0),W=a([d("randstad-button")],W);let H=class extends e{constructor(){super(...arguments),this.img="",this.name="",this.title="",this.description="",this.buttonLabel="",this.cardId=""}static{this.styles=o`
538
551
  :host {
539
552
  display: inline-block;
540
553
  font-family: "Graphik", sans-serif;
554
+ user-drag: none; /* Añade esta línea para deshabilitar el arrastre */
555
+ -webkit-user-drag: none; /* Para navegadores Webkit */
541
556
  }
542
557
 
543
558
  .image-container {
@@ -586,6 +601,11 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
586
601
  width: 100%;
587
602
  display: flex;
588
603
  flex-direction: column;
604
+ padding: 24px;
605
+ }
606
+
607
+ .image-container:hover .content-container {
608
+ gap: 24px;
589
609
  }
590
610
 
591
611
  .title-wrapper {
@@ -593,7 +613,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
593
613
  }
594
614
 
595
615
  .title {
596
- ${N}
616
+ ${R}
597
617
  margin: 0;
598
618
  }
599
619
 
@@ -603,6 +623,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
603
623
  opacity: 0;
604
624
  transform: translateY(40px);
605
625
  transition: max-height 0.4s ease, opacity 0.4s ease, transform 0.4s ease;
626
+ transition-duration: .5s;
606
627
  }
607
628
 
608
629
  .image-container:hover .details {
@@ -610,10 +631,12 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
610
631
  opacity: 1;
611
632
  transform: translateY(0);
612
633
  overflow: visible;
634
+ transition-duration: .8s;
613
635
  }
614
636
 
615
637
  .description {
616
638
  ${_}
639
+ margin: 0;
617
640
  }
618
641
 
619
642
  ::part(button) {
@@ -621,6 +644,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
621
644
  border: 1px solid white;
622
645
  background: transparent;
623
646
  text-align: left;
647
+ margin-top: 24px;
624
648
  }
625
649
 
626
650
  ::part(button):hover {
@@ -630,28 +654,39 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
630
654
  ::part(button):active {
631
655
  background-color: rgba(255, 255, 255, 0.2);
632
656
  }
633
- `}render(){return e`
634
- <div class="image-container" style="background-image: url(${this.img});">
657
+ `}handleButtonClick(e){e.stopPropagation(),this.onClick?this.onClick(e):this.dispatchEvent(new CustomEvent("card-button-click",{detail:e.detail,bubbles:!0,composed:!0}))}connectedCallback(){super.connectedCallback(),this.addEventListener("randstad-button-click",this.handleButtonClick)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("randstad-button-click",this.handleButtonClick)}render(){return t`
658
+ <div class="image-container" style="background-image: url( ${this.img} );">
635
659
  <div class="overlay-gradient"></div>
660
+
636
661
  <div class="overlay-hover"></div>
662
+
637
663
  <div class="content-container">
638
664
  <div class="title-wrapper">
639
665
  <h3 class="title">${this.name}</h3>
640
666
  </div>
667
+
641
668
  <div class="details">
642
669
  <p class="description">${this.description}</p>
643
- ${this.cardId?e`<randstad-button
644
- variant="button-tertiary"
645
- .label=${this.buttonLabel}
646
- idevent=${this.cardId}
647
- ></randstad-button>`:e`<randstad-button
648
- variant="button-tertiary"
649
- .label=${this.buttonLabel}
650
- ></randstad-button>`}
670
+
671
+ ${this.cardId?t`
672
+ <randstad-button
673
+ variant="button-tertiary"
674
+ .label=${this.buttonLabel}
675
+ idevent=${this.cardId}
676
+ @randstad-button-click=${this.handleButtonClick}
677
+ >
678
+ </randstad-button>`:t`
679
+ <randstad-button
680
+ variant="button-tertiary"
681
+ .label=${this.buttonLabel}
682
+ @randstad-button-click=${this.handleButtonClick}
683
+ >
684
+ </randstad-button>
685
+ `}
651
686
  </div>
652
687
  </div>
653
688
  </div>
654
- `}};a([A({type:String}),s("design:type",Object)],H.prototype,"img",void 0),a([A({type:String}),s("design:type",Object)],H.prototype,"name",void 0),a([A({type:String}),s("design:type",Object)],H.prototype,"title",void 0),a([A({type:String}),s("design:type",Object)],H.prototype,"description",void 0),a([A({type:String}),s("design:type",Object)],H.prototype,"buttonLabel",void 0),a([A({type:String}),s("design:type",Object)],H.prototype,"cardId",void 0),H=a([d("carousel-card")],H);let G=class extends t{constructor(){super(...arguments),this.checked=!1,this.error=!1,this.disabled=!1}static{this.styles=o`
689
+ `}};a([P({type:String}),s("design:type",Object)],H.prototype,"img",void 0),a([P({type:String}),s("design:type",Object)],H.prototype,"name",void 0),a([P({type:String}),s("design:type",Object)],H.prototype,"title",void 0),a([P({type:String}),s("design:type",Object)],H.prototype,"description",void 0),a([P({type:String}),s("design:type",Object)],H.prototype,"buttonLabel",void 0),a([P({type:String}),s("design:type",Object)],H.prototype,"cardId",void 0),a([P({type:Object}),s("design:type",Object)],H.prototype,"onClick",void 0),H=a([d("carousel-card")],H);let G=class extends e{constructor(){super(...arguments),this.checked=!1,this.error=!1,this.disabled=!1}static{this.styles=o`
655
690
  :host {
656
691
  display: block;
657
692
  max-width: 100%;
@@ -754,7 +789,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
754
789
  label.disabled {
755
790
  color: #9FA3B3;
756
791
  }
757
- `}toggleCheck(t){this.checked=t.target.checked,this.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("click",{bubbles:!0,composed:!0}))}render(){return e`
792
+ `}toggleCheck(e){this.checked=e.target.checked,this.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("click",{bubbles:!0,composed:!0}))}render(){return t`
758
793
  <label class="${this.error?"error":""} ${this.disabled?"disabled":""}">
759
794
  <input
760
795
  type="checkbox"
@@ -770,7 +805,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
770
805
  <slot></slot>
771
806
  </span>
772
807
  </label>
773
- `}};a([A({type:Boolean,reflect:!0}),s("design:type",Object)],G.prototype,"checked",void 0),a([A({type:Boolean}),s("design:type",Object)],G.prototype,"error",void 0),a([A({type:Boolean}),s("design:type",Object)],G.prototype,"disabled",void 0),G=a([d("randstad-checkbox")],G);const K=o`
808
+ `}};a([P({type:Boolean,reflect:!0}),s("design:type",Object)],G.prototype,"checked",void 0),a([P({type:Boolean}),s("design:type",Object)],G.prototype,"error",void 0),a([P({type:Boolean}),s("design:type",Object)],G.prototype,"disabled",void 0),G=a([d("randstad-checkbox")],G);const X=o`
774
809
  .label-container {
775
810
  display: flex;
776
811
  align-items: center;
@@ -789,7 +824,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
789
824
  top: 160%;
790
825
  right: 0;
791
826
 
792
- background-color: var(--tooltip-background, #0F1941);
827
+ background-color: var( --tooltip-background, #0F1941 );
793
828
  color: var(--tooltip-color, #fff);
794
829
 
795
830
  padding: 8px 12px;
@@ -816,18 +851,18 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
816
851
  height: 0;
817
852
  border-style: solid;
818
853
  border-width: 0 6px 6px 6px;
819
- border-color: transparent transparent var(--tooltip-background, #0F1941) transparent;
854
+ border-color: transparent transparent var( --tooltip-background, #0F1941 ) transparent;
820
855
  }
821
856
 
822
857
  .tooltip-wrapper:hover .tooltip {
823
858
  visibility: visible;
824
859
  opacity: 1;
825
860
  }
826
- `,X=o`
861
+ `,K=o`
827
862
  :host {
828
863
  display: block;
829
864
  font-family: "Graphik", sans-serif;
830
- color: var(--secondary-randstad-dark-blue, #0f1941);
865
+ color: var( --secondary-randstad-dark-blue, #0f1941 );
831
866
  width: 100%;
832
867
  }
833
868
 
@@ -837,7 +872,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
837
872
  align-items: baseline;
838
873
  flex-direction: row;
839
874
  gap: 4px;
840
- color: var(--label-color, var(--secondary-color-80));
875
+ color: var( --label-color, var( --secondary-color-80 ) );
841
876
  }
842
877
 
843
878
  .input-container {
@@ -847,31 +882,31 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
847
882
  }
848
883
 
849
884
  input::placeholder {
850
- ${N}
851
- color: var(--secondary-color-40);
885
+ ${R}
886
+ color: var( --secondary-color-40 );
852
887
  }
853
888
 
854
889
  .helper-description {
855
890
  ${B}
856
- color: var(--secondary-color-40);
891
+ color: var( --secondary-color-40 );
857
892
  margin: 0;
858
893
  }
859
894
 
860
895
  .required {
861
- color: var(--ui-negative);
896
+ color: var( --ui-negative );
862
897
  }
863
898
 
864
899
  .optional {
865
- color: var(--secondary-color-60);
900
+ color: var( --secondary-color-60 );
866
901
  ${I}
867
902
  }
868
903
 
869
904
  randstad-icon {
870
- color: var(--primary-color);
905
+ color: var( --primary-color );
871
906
  }
872
907
  `,Q=o`
873
908
  :host([error]) .input-wrapper, .form.error .form-input {
874
- border: 1px solid var(--ui-negative, red) !important;
909
+ border: 1px solid var( --ui-negative, red ) !important;
875
910
  }
876
911
 
877
912
  :host([error]) .input-wrapper:hover, .form.error:hover .form-input:hover {
@@ -879,7 +914,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
879
914
  }
880
915
 
881
916
  :host([error]) .input-wrapper.active, .form.error.active .form-input.active {
882
- border: 1px solid var(--ui-negative, red) !important;
917
+ border: 1px solid var( --ui-negative, red ) !important;
883
918
  box-shadow: none !important;
884
919
  }
885
920
 
@@ -888,149 +923,173 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
888
923
  color: var(--ui-negative, #E00F0F);
889
924
  margin-top: 4px;
890
925
  }
891
- `;let J=class extends L{constructor(){super(...arguments),this.keydown=void 0,this.size="md",this.icon=null,this.typing=!1,this.type="text",this.isPasswordVisible=!1,this.cleanButton=!1}static{this.styles=o`
892
- ${X}
893
- ${Q}
894
- ${K}
926
+ `,J=new CSSStyleSheet;J.replaceSync(o`
927
+ ::-webkit-scrollbar {
928
+ width: 8px;
929
+ height: 8px;
930
+ }
895
931
 
896
- .form {
897
- display: flex;
898
- flex-direction: column;
899
- gap: 8px;
900
- width: 100%;
901
- }
932
+ ::-webkit-scrollbar-track {
933
+ background: #E8E8E8;
934
+ }
902
935
 
903
- .form-input {
904
- ${N}
905
- padding: 16px;
906
- border: 1px solid var(--secondary-color-10);
907
- border-radius: 4px;
908
- outline: none;
909
- transition: border-color 0.3s ease, box-shadow 0.3s ease;
910
- width: 100%;
911
- color: var(--secondary-color);
912
- }
936
+ ::-webkit-scrollbar-thumb {
937
+ background-color: #7A7A7A;
938
+ border-radius: 100px;
939
+ }
913
940
 
914
- /* Hover normal (sin error ni foco) */
915
- .form:not(.error):not(:focus-within) .form-input:hover {
916
- box-shadow: 0px 0px 0px 4px var(--form-hover-shadow);
917
- }
941
+ ::-webkit-scrollbar-button {
942
+ display: none;
943
+ }
944
+ `.cssText);let Z=class extends L{constructor(){super(...arguments),this.keydown=void 0,this.size="md",this.icon=null,this.typing=!1,this.type="text",this.isPasswordVisible=!1,this.cleanButton=!1}static{this.styles=[J,o`
945
+ ${K}
946
+ ${Q}
947
+ ${X}
918
948
 
919
- /* Hover con error (sin foco) */
920
- .form.error:not(:focus-within) .form-input:hover {
921
- box-shadow: 0px 0px 0px 4px var(--ui-negative-pink-shadow);
922
- }
949
+ .form {
950
+ display: flex;
951
+ flex-direction: column;
952
+ gap: 8px;
953
+ width: 100%;
954
+ }
923
955
 
924
- .form-input:focus {
925
- border: 2px solid var(--primary-color)
926
- }
956
+ .form-input {
957
+ ${R}
958
+ padding: 16px;
959
+ border: 1px solid var(--secondary-color-10);
960
+ border-radius: 4px;
961
+ outline: none;
962
+ transition: border-color 0.3s ease, box-shadow 0.3s ease;
963
+ width: 100%;
964
+ color: var(--secondary-color);
965
+ }
927
966
 
928
- .form.disabled .form-input,
929
- .form.disabled .toggle-password randstad-icon,
930
- .form.disabled .clean-button randstad-icon {
931
- background-color: var( --secondary-color-10 );
932
- color: #9FA3B3;
933
- cursor: default;
934
- }
935
-
936
- .form.disabled .toggle-password,
937
- .form.disabled .clean-button {
938
- cursor: default;
939
- }
967
+ /* Hover normal (sin error ni foco) */
968
+ .form:not(.error):not(:focus-within) .form-input:hover {
969
+ box-shadow: 0px 0px 0px 4px var(--form-hover-shadow);
970
+ }
940
971
 
941
- .input-with-button {
942
- display: flex;
943
- align-items: center;
944
- width: 100%;
945
- position: relative;
946
- }
972
+ /* Hover con error (sin foco) */
973
+ .form.error:not(:focus-within) .form-input:hover {
974
+ box-shadow: 0px 0px 0px 4px var(--ui-negative-pink-shadow);
975
+ }
947
976
 
948
- .input-with-button input {
949
- width: 100%;
950
- }
977
+ .form-input:focus {
978
+ border: 2px solid var(--primary-color)
979
+ }
951
980
 
952
- .input-with-button input[type="password"]{
953
- padding-right: 40px;
954
- }
981
+ .form.disabled .form-input,
982
+ .form.disabled .toggle-password randstad-icon,
983
+ .form.disabled .clean-button randstad-icon {
984
+ background-color: var( --secondary-color-10 );
985
+ color: #9FA3B3;
986
+ cursor: default;
987
+ }
988
+
989
+ .form.disabled .toggle-password,
990
+ .form.disabled .clean-button {
991
+ cursor: default;
992
+ }
955
993
 
956
- .input-with-button button {
957
- position: absolute;
958
- right: 10px;
959
- top: 50%;
960
- transform: translateY(-50%);
961
- background: transparent;
962
- border: none;
963
- cursor: pointer;
964
- display: flex;
965
- align-items: center;
966
- justify-content: center;
967
- width: 40px;
968
- height: 40px;
969
- }
994
+ .input-with-button {
995
+ display: flex;
996
+ align-items: center;
997
+ width: 100%;
998
+ position: relative;
999
+ }
970
1000
 
971
- .toggle-password randstad-icon {
972
- width: 100%;
973
- height: 100%;
974
- max-width: 32px;
975
- max-height: 32px;
976
- }
1001
+ .input-with-button input {
1002
+ width: 100%;
1003
+ }
977
1004
 
978
- textarea {
979
- ${N}
980
- resize: none;
981
- }
1005
+ .input-with-button input[type="password"]{
1006
+ padding-right: 40px;
1007
+ }
982
1008
 
983
- textarea.form-input {
984
- min-height: 30px;
985
- width: 100%;
986
- }
1009
+ .input-with-button button {
1010
+ position: absolute;
1011
+ right: 10px;
1012
+ top: 50%;
1013
+ transform: translateY(-50%);
1014
+ background: transparent;
1015
+ border: none;
1016
+ cursor: pointer;
1017
+ display: flex;
1018
+ align-items: center;
1019
+ justify-content: center;
1020
+ width: 40px;
1021
+ height: 40px;
1022
+ }
987
1023
 
988
- .form.disabled textarea.form-input {
989
- background-color: var(--secondary-color-10);
990
- color: #9FA3B3;
991
- cursor: default;
992
- }
993
-
994
- .link-text {
995
- ${B}
996
- color: var(--primary-color);
997
- cursor: pointer;
998
- text-align: end;
999
- text-decoration: none;
1000
- vertical-align: middle;
1001
- display: inline;
1002
- padding: 0;
1003
- margin: 0;
1004
- line-height: normal;
1005
- }
1024
+ .toggle-password randstad-icon {
1025
+ width: 100%;
1026
+ height: 100%;
1027
+ max-width: 32px;
1028
+ max-height: 32px;
1029
+ }
1006
1030
 
1007
- .link-text:hover {
1008
- color: var(--secondary-color);
1009
- }
1031
+ textarea {
1032
+ ${R}
1033
+ resize: none;
1034
+ }
1010
1035
 
1011
- .clean-button {
1012
- position: absolute;
1013
- right: 10px;
1014
- top: 50%;
1015
- transform: translateY(-50%);
1016
- background: transparent;
1017
- border: none;
1018
- cursor: pointer;
1019
- display: flex;
1020
- align-items: center;
1021
- justify-content: center;
1022
- width: 40px;
1023
- height: 40px;
1024
- }
1036
+ textarea.form-input {
1037
+ min-height: 30px;
1038
+ width: 100%;
1039
+ }
1025
1040
 
1026
- .clean-button randstad-icon {
1027
- width: 24px;
1028
- height: 24px;
1029
- color: var( --primary-color );
1030
- }
1031
- `}togglePassword(t){this.isPasswordVisible=!this.isPasswordVisible;const e=t.currentTarget.parentElement?.querySelector("input");e&&(e.type=this.isPasswordVisible?"text":"password"),this.requestUpdate()}handleInput(t){this.handleInputCustom(t);const e=t.target.value;void 0!==this.maxLength&&"textarea"!==this.type?this.value=e.slice(0,this.maxLength):this.value=e,this.dispatchEvent(new CustomEvent("valueChanged",{detail:this.value})),this.dispatchEvent(new Event("input",{bubbles:!0})),this.requestUpdate()}handleClear(){this.value="",this.dispatchEvent(new CustomEvent("valueChanged",{detail:this.value})),this.dispatchEvent(new Event("input",{bubbles:!0})),this.requestUpdate()}handleLinkClick(t){t.preventDefault(),this.linkRoute&&this.dispatchEvent(new CustomEvent("linkClicked",{detail:this.linkRoute,bubbles:!0,composed:!0}))}handleInputCustom(t){"number"===this.keydown?this.onlyNumeric(t):"text"===this.keydown&&this.onlyText(t)}onlyNumeric(t){const e=t.target,i=e.value.replace(/[^0-9]/g,"");e.value=i}onlyText(t){const e=t.target,i=e.value.replace(/[^a-zA-Z\sáéíóúñÁÉÍÓÚÑ]/g,"");e.value=i}handleKeyDown(t){if("Enter"!==t.key)return;const e=new Event("submit",{bubbles:!0,composed:!0,cancelable:!0}),i=this.closest("form");i&&i.dispatchEvent(e)}render(){const t=this.cleanButton&&this.value&&"password"!==this.type&&"textarea"!==this.type,o="textarea"===this.type?`height: ${this.heightTextArea??"30px"}; max-height: ${this.maxHeightTextArea??"30px"}; overflow-y: auto;`:"",r=e`
1041
+ .form.disabled textarea.form-input {
1042
+ background-color: var(--secondary-color-10);
1043
+ color: #9FA3B3;
1044
+ cursor: default;
1045
+ }
1046
+
1047
+ .link-text {
1048
+ ${B}
1049
+ color: var(--primary-color);
1050
+ cursor: pointer;
1051
+ text-align: end;
1052
+ text-decoration: none;
1053
+ vertical-align: middle;
1054
+ display: inline;
1055
+ padding: 0;
1056
+ margin: 0;
1057
+ line-height: normal;
1058
+ }
1059
+
1060
+ .link-text:hover {
1061
+ color: var(--secondary-color);
1062
+ }
1063
+
1064
+ .clean-button {
1065
+ position: absolute;
1066
+ right: 10px;
1067
+ top: 50%;
1068
+ transform: translateY(-50%);
1069
+ background: transparent;
1070
+ border: none;
1071
+ cursor: pointer;
1072
+ display: flex;
1073
+ align-items: center;
1074
+ justify-content: center;
1075
+ width: 40px;
1076
+ height: 40px;
1077
+ }
1078
+
1079
+ .clean-button randstad-icon {
1080
+ width: 24px;
1081
+ height: 24px;
1082
+ color: var( --primary-color );
1083
+ }
1084
+ `]}togglePassword(e){this.isPasswordVisible=!this.isPasswordVisible;const t=e.currentTarget.parentElement?.querySelector("input");t&&(t.type=this.isPasswordVisible?"text":"password"),this.requestUpdate()}handleInput(e){this.handleInputCustom(e);const t=e.target.value;void 0!==this.maxLength&&"textarea"!==this.type?this.value=t.slice(0,this.maxLength):this.value=t,this.dispatchEvent(new CustomEvent("valueChanged",{detail:this.value})),this.dispatchEvent(new Event("input",{bubbles:!0})),this.requestUpdate()}handleClear(){this.value="",this.dispatchEvent(new CustomEvent("valueChanged",{detail:this.value})),this.dispatchEvent(new Event("input",{bubbles:!0})),this.requestUpdate()}handleLinkClick(e){e.preventDefault(),this.linkRoute&&this.dispatchEvent(new CustomEvent("linkClicked",{detail:this.linkRoute,bubbles:!0,composed:!0}))}handleInputCustom(e){"number"===this.keydown?this.onlyNumeric(e):"text"===this.keydown&&this.onlyText(e)}onlyNumeric(e){const t=e.target,i=t.value.replace(/[^0-9]/g,"");t.value=i}onlyText(e){const t=e.target,i=t.value.replace(/[^a-zA-Z\sáéíóúñÁÉÍÓÚÑ]/g,"");t.value=i}handleKeyDown(e){if("Enter"!==e.key)return;const t=new Event("submit",{bubbles:!0,composed:!0,cancelable:!0}),i=this.closest("form");i&&i.dispatchEvent(t)}render(){const e=this.cleanButton&&this.value&&"password"!==this.type&&"textarea"!==this.type,o="textarea"===this.type?`height: ${this.heightTextArea??"30px"}; max-height: ${this.maxHeightTextArea??"30px"}; overflow-y: auto;`:"",r=t`
1032
1085
  ${this.labelColor?`--label-color: ${this.labelColor};`:""}
1033
- `;return e`
1086
+ `,n=t`
1087
+ <randstad-icon
1088
+ name="${this.isPasswordVisible?"eye_crossed":"eye"}"
1089
+ size="24px"
1090
+ >
1091
+ </randstad-icon>
1092
+ `;return t`
1034
1093
  <div
1035
1094
  class="form ${this.error?"error":""} ${this.disabled?"disabled":""}"
1036
1095
  style="${r}"
@@ -1038,10 +1097,10 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1038
1097
  ${this.renderLabelContainer()}
1039
1098
 
1040
1099
  <div class="form-container">
1041
- ${"left"===this.icon?e`<span class="icon left"></span>`:i}
1100
+ ${"left"===this.icon?t`<span class="icon left"></span>`:i}
1042
1101
 
1043
1102
  <div class="input-with-button">
1044
- ${"textarea"===this.type?e`
1103
+ ${"textarea"===this.type?t`
1045
1104
  <textarea
1046
1105
  class="form-input"
1047
1106
  placeholder=${this.placeholder||""}
@@ -1053,7 +1112,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1053
1112
  style="${o}"
1054
1113
  >
1055
1114
  </textarea>
1056
- `:e`
1115
+ `:t`
1057
1116
  <input
1058
1117
  class="form-input"
1059
1118
  type=${"password"!==this.type||this.isPasswordVisible?"text":"password"}
@@ -1065,28 +1124,17 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1065
1124
  maxlength=${this.maxLength??i}
1066
1125
  />
1067
1126
 
1068
- ${"password"===this.type?e`
1127
+ ${"password"===this.type?t`
1069
1128
  <button
1070
1129
  type="button"
1071
1130
  class="toggle-password"
1072
1131
  @click=${this.togglePassword}
1073
1132
  ?disabled=${this.disabled}
1074
1133
  >
1075
- ${this.isPasswordVisible?e`
1076
- <randstad-icon
1077
- name="eye_crossed"
1078
- size="24px"
1079
- >
1080
- </randstad-icon>
1081
- `:e`
1082
- <randstad-icon
1083
- name="eye"
1084
- size="24px"
1085
- >
1086
- </randstad-icon>`}
1134
+ ${n}
1087
1135
  </button>`:i}
1088
1136
 
1089
- ${t?e`
1137
+ ${e?t`
1090
1138
  <button
1091
1139
  type="button"
1092
1140
  class="clean-button"
@@ -1102,13 +1150,13 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1102
1150
  `}
1103
1151
  </div>
1104
1152
 
1105
- ${"right"===this.icon?e`<span class="icon right"></span>`:i}
1153
+ ${"right"===this.icon?t`<span class="icon right"></span>`:i}
1106
1154
 
1107
1155
  ${this.renderError()}
1108
1156
  </div>
1109
1157
 
1110
1158
 
1111
- ${this.linkText&&this.linkRoute?e`
1159
+ ${this.linkText&&this.linkRoute?t`
1112
1160
  <div style="text-align: end;">
1113
1161
  <a class="link-text" @click=${this.handleLinkClick}>
1114
1162
  ${this.linkText}
@@ -1117,10 +1165,10 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1117
1165
 
1118
1166
  ${this.renderHelper()}
1119
1167
  </div>
1120
- `}};a([A({type:String}),s("design:type",Object)],J.prototype,"keydown",void 0),a([A({type:String}),s("design:type",String)],J.prototype,"size",void 0),a([A({type:String}),s("design:type",Object)],J.prototype,"icon",void 0),a([A({type:Boolean}),s("design:type",Boolean)],J.prototype,"typing",void 0),a([A({type:String}),s("design:type",String)],J.prototype,"type",void 0),a([A({type:String}),s("design:type",String)],J.prototype,"linkText",void 0),a([A({type:String}),s("design:type",String)],J.prototype,"linkRoute",void 0),a([A({type:Boolean,reflect:!0}),s("design:type",Object)],J.prototype,"isPasswordVisible",void 0),a([A({type:Boolean}),s("design:type",Boolean)],J.prototype,"cleanButton",void 0),a([A({type:Number}),s("design:type",Number)],J.prototype,"maxLength",void 0),a([A({type:String}),s("design:type",String)],J.prototype,"heightTextArea",void 0),a([A({type:String}),s("design:type",String)],J.prototype,"maxHeightTextArea",void 0),J=a([d("randstad-form")],J);let Z=class extends L{constructor(){super(...arguments),this.rows=""}static{this.styles=o`
1121
- ${X}
1122
- ${Q}
1168
+ `}};a([P({type:String}),s("design:type",Object)],Z.prototype,"keydown",void 0),a([P({type:String}),s("design:type",String)],Z.prototype,"size",void 0),a([P({type:String}),s("design:type",Object)],Z.prototype,"icon",void 0),a([P({type:Boolean}),s("design:type",Boolean)],Z.prototype,"typing",void 0),a([P({type:String}),s("design:type",String)],Z.prototype,"type",void 0),a([P({type:String}),s("design:type",String)],Z.prototype,"linkText",void 0),a([P({type:String}),s("design:type",String)],Z.prototype,"linkRoute",void 0),a([P({type:Boolean,reflect:!0}),s("design:type",Object)],Z.prototype,"isPasswordVisible",void 0),a([P({type:Boolean}),s("design:type",Boolean)],Z.prototype,"cleanButton",void 0),a([P({type:Number}),s("design:type",Number)],Z.prototype,"maxLength",void 0),a([P({type:String}),s("design:type",String)],Z.prototype,"heightTextArea",void 0),a([P({type:String}),s("design:type",String)],Z.prototype,"maxHeightTextArea",void 0),Z=a([d("randstad-form")],Z);let ee=class extends L{constructor(){super(...arguments),this.rows=""}static{this.styles=o`
1123
1169
  ${K}
1170
+ ${Q}
1171
+ ${X}
1124
1172
 
1125
1173
  :host {
1126
1174
  display: flex;
@@ -1138,12 +1186,12 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1138
1186
  .fields {
1139
1187
  gap: 8px;
1140
1188
  }
1141
- `}render(){const t=this.rows?`display: grid; grid-template-columns: ${this.rows};`:"display: flex; flex-direction: column;";return e`
1189
+ `}render(){const e=this.rows?`display: grid; grid-template-columns: ${this.rows};`:"display: flex; flex-direction: column;";return t`
1142
1190
  <div class="group-container">
1143
1191
  ${this.renderLabelContainer()}
1144
1192
 
1145
1193
  <div class="input-container">
1146
- <div class="fields" style="${t};">
1194
+ <div class="fields" style="${e};">
1147
1195
  <slot></slot>
1148
1196
  </div>
1149
1197
 
@@ -1152,21 +1200,33 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1152
1200
 
1153
1201
  ${this.renderHelper()}
1154
1202
  </div>
1155
- `}};a([A({type:String}),s("design:type",String)],Z.prototype,"rows",void 0),Z=a([d("randstad-form-group")],Z);class tt extends t{constructor(){super(...arguments),this.name="",this.size="24px"}static{this.styles=o`
1203
+ `}};a([P({type:String}),s("design:type",String)],ee.prototype,"rows",void 0),ee=a([d("randstad-form-group")],ee);class te extends e{constructor(){super(...arguments),this.name="",this.size="24px",this.color="",this.svgTemplate=null}static{this.styles=o`
1156
1204
  :host {
1157
1205
  display: inline-flex;
1158
- width: var(--icon-size, 24px);
1159
- height: var(--icon-size, 24px);
1206
+ width: var( --icon-size, 24px );
1207
+ height: var( --icon-size, 24px );
1160
1208
  align-items: center;
1161
1209
  justify-content: center;
1162
1210
  }
1163
1211
 
1164
1212
  svg {
1165
- width: var(--icon-size, 24px);
1166
- height: var(--icon-size, 24px);
1167
- fill: var(--icon-color, currentColor);
1213
+ width: var( --icon-size, 24px );
1214
+ height: var( --icon-size, 24px );
1215
+ fill: var( --icon-color, currentColor );
1216
+ }
1217
+
1218
+ .custom-icon {
1219
+ display: flex;
1220
+ justify-content: center;
1221
+ align-items: center;
1222
+ width: 100%;
1223
+ height: 100%;
1168
1224
  }
1169
- `}connectedCallback(){super.connectedCallback(),this.style.setProperty("--icon-size",this.size)}updated(t){t.has("size")&&this.style.setProperty("--icon-size",this.size)}async loadIcon(){try{const t=await fetch(`/assets/icons/${this.name}.svg`);if(!t.ok)throw new Error("Icon not found");const e=await t.text(),i=new DOMParser,o=i.parseFromString(e,"image/svg+xml").querySelector("svg");if(!o)throw new Error("No se encontró un elemento SVG válido");o.removeAttribute("fill"),o.setAttribute("width",this.size),o.setAttribute("height",this.size),o.querySelectorAll("[fill]").forEach((t=>t.removeAttribute("fill"))),o.setAttribute("fill","currentColor"),"innerHTML"in this.renderRoot&&(this.renderRoot.innerHTML=""),this.renderRoot.appendChild(o)}catch(t){console.error(`❌ Error cargando icono ${this.name}:`,t),"innerHTML"in this.renderRoot&&(this.renderRoot.innerHTML="<span>⚠️</span>")}}render(){return this.loadIcon(),null}}a([A({type:String}),s("design:type",Object)],tt.prototype,"name",void 0),a([A({type:String}),s("design:type",Object)],tt.prototype,"size",void 0),customElements.define("randstad-icon",tt);let et=class extends t{constructor(){super(...arguments),this.type="informative",this.icon="info",this.message="Este es un mensaje.",this.open=!1}static{this.styles=o`
1225
+ `}updated(e){super.updated(e),e.has("size")&&this.style.setProperty("--icon-size",this.size),e.has("color")&&this.style.setProperty("--icon-color",this.color),e.has("name")&&this.name&&this.loadIcon()}async loadIcon(){try{const e=await fetch(`/assets/icons/${this.name}.svg`);if(!e.ok)throw new Error("Icon not found");let i=await e.text();i=i.replace(/fill="[^"]*"/g,""),i=i.replace(/fill='[^']*'/g,"");const o=new DOMParser,r=o.parseFromString(i,"image/svg+xml").documentElement;this.svgTemplate=t` ${r} `}catch(e){console.error(`❌ Error cargando icono ${this.name}:`,e),this.innerHTML=" <span>⚠️</span> "}}render(){return this.svgTemplate?t`
1226
+ <div class="custom-icon" style="color: ${this.color};">
1227
+ ${this.svgTemplate}
1228
+ </div>
1229
+ `:t``}}a([P({type:String}),s("design:type",Object)],te.prototype,"name",void 0),a([P({type:String}),s("design:type",Object)],te.prototype,"size",void 0),a([P({type:String}),s("design:type",Object)],te.prototype,"color",void 0),a([z(),s("design:type",Object)],te.prototype,"svgTemplate",void 0),customElements.define("randstad-icon",te);let ie=class extends e{constructor(){super(...arguments),this.type="informative",this.icon="info",this.message="Este es un mensaje.",this.open=!1}static{this.styles=o`
1170
1230
  :host {
1171
1231
  display: block;
1172
1232
  font-family: 'Graphik', sans-serif;
@@ -1214,156 +1274,153 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1214
1274
  background: var(--ui-informative-10);
1215
1275
  --icon-color: var(--ui-informative);
1216
1276
  }
1217
- `}render(){return e`
1277
+ `}render(){return t`
1218
1278
  <div class="container ${this.open?"":"hidden"} ${this.type}">
1219
- <randstad-icon class="icon" name="${this.icon}" size="24px" style="color: var(--icon-color);"></randstad-icon>
1279
+ <randstad-icon
1280
+ name="${this.icon}"
1281
+ >
1282
+ </randstad-icon>
1283
+
1220
1284
  <span class="message">${this.message}</span>
1221
1285
  </div>
1222
- `}};a([A({type:String}),s("design:type",String)],et.prototype,"type",void 0),a([A({type:String}),s("design:type",String)],et.prototype,"icon",void 0),a([A({type:String}),s("design:type",String)],et.prototype,"message",void 0),a([A({type:Boolean}),s("design:type",Boolean)],et.prototype,"open",void 0),et=a([d("randstad-notice")],et);let it=class extends t{constructor(){super(...arguments),this.open=!1,this.title="Título del modal",this.showNotice=!1,this.noticeType="informative",this.noticeMessage="",this.noticeIcon="info",this.showPrimaryButton=!1,this.primaryButtonLabel="Aceptar",this.showSecondaryButton=!1,this.secondaryButtonLabel="Cancelar",this.isFooterCustom=!1,this.isPrimaryLoader=!1,this.isPrimaryDisabled=!1,this.modalWidth="500px",this.scrollable=!1,this.setScrollableMode=()=>{this.scrollable=window.innerWidth>940}}static{this.styles=o`
1223
- :host {
1224
- font-family: 'Graphik', sans-serif;
1225
- display: none;
1226
- }
1286
+ `}};a([P({type:String}),s("design:type",String)],ie.prototype,"type",void 0),a([P({type:String}),s("design:type",String)],ie.prototype,"icon",void 0),a([P({type:String}),s("design:type",String)],ie.prototype,"message",void 0),a([P({type:Boolean}),s("design:type",Boolean)],ie.prototype,"open",void 0),ie=a([d("randstad-notice")],ie);let oe=class extends e{constructor(){super(...arguments),this.open=!1,this.title="Título del modal",this.showNotice=!1,this.noticeType="informative",this.noticeMessage="",this.noticeIcon="info",this.showPrimaryButton=!1,this.primaryButtonLabel="Aceptar",this.showSecondaryButton=!1,this.secondaryButtonLabel="Cancelar",this.isFooterCustom=!1,this.isPrimaryLoader=!1,this.isPrimaryDisabled=!1,this.modalWidth="500px",this.scrollable=!1,this.setScrollableMode=()=>{this.scrollable=window.innerWidth>940}}static{this.styles=[J,o`
1287
+ :host {
1288
+ font-family: 'Graphik', sans-serif;
1289
+ display: none;
1290
+ }
1227
1291
 
1228
- :host([open]) {
1229
- display: block;
1230
- z-index: 9999;
1231
- }
1292
+ :host([open]) {
1293
+ display: block;
1294
+ z-index: 9999;
1295
+ }
1232
1296
 
1233
- .overlay {
1234
- position: fixed;
1235
- top: 0;
1236
- left: 0;
1237
- right: 0;
1238
- bottom: 0;
1239
- z-index: 9999;
1240
- display: flex;
1241
- background: rgba(15, 25, 65, 0.4);
1242
- justify-content: center;
1243
- align-items: center;
1244
- overflow-y: auto;
1245
- }
1297
+ .overlay {
1298
+ position: fixed;
1299
+ top: 0;
1300
+ left: 0;
1301
+ right: 0;
1302
+ bottom: 0;
1303
+ z-index: 9999;
1304
+ display: flex;
1305
+ background: rgba(15, 25, 65, 0.4);
1306
+ justify-content: center;
1307
+ align-items: center;
1308
+ overflow-y: auto;
1309
+ }
1246
1310
 
1247
- .modal {
1248
- width: 100%;
1249
- background: var(--brand-off-white);
1250
- max-width: var(--modal-width);
1251
- max-height: 80vh;
1252
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
1253
- display: flex;
1254
- flex-direction: column;
1255
- border-radius: 8px;
1256
- }
1311
+ .modal {
1312
+ width: 100%;
1313
+ height: 80dvh;
1314
+ max-height: 80dvh;
1315
+ background: var(--brand-off-white);
1316
+ max-width: var(--modal-width);
1317
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
1318
+ display: flex;
1319
+ flex-direction: column;
1320
+ border-radius: 8px;
1321
+ }
1257
1322
 
1258
- .modal-body {
1259
- overflow-y: auto;
1260
- flex: 1;
1261
- }
1262
-
1263
- .modal-footer {
1264
- justify-content: flex-end;
1265
- }
1323
+ .modal-body {
1324
+ overflow-y: auto;
1325
+ flex: 1;
1326
+ }
1266
1327
 
1267
- .modal-footer.one-button randstad-button {
1268
- width: 100%;
1269
- }
1328
+ .modal-footer {
1329
+ justify-content: flex-end;
1330
+ }
1270
1331
 
1271
- .modal-footer.two-buttons randstad-button {
1272
- width: 50%;
1273
- }
1332
+ .modal-footer.one-button randstad-button {
1333
+ width: 100%;
1334
+ }
1274
1335
 
1275
- /* Estilos para dispositivos pequeños (<= 940px) */
1276
- @media (max-width: 940px) {
1277
- .modal {
1278
- /* Se estira para ocupar casi toda la pantalla */
1279
- width: 96vw;
1280
- height: 96vh;
1281
- max-width: none;
1282
- max-height: none;
1283
- margin: 0;
1336
+ .modal-footer.two-buttons randstad-button {
1337
+ width: 50%;
1284
1338
  }
1285
1339
 
1286
- .modal-header,
1287
- .modal-body,
1288
- .modal-footer {
1289
- padding: 0;
1340
+ /* Estilos para dispositivos pequeños (<= 940px) */
1341
+ @media (max-width: 940px) {
1342
+ .modal {
1343
+ /* Se estira para ocupar casi toda la pantalla */
1344
+ width: 96dvw;
1345
+ height: 96dvh;
1346
+ max-width: none;
1347
+ max-height: none;
1348
+ margin: 0;
1349
+ }
1350
+
1351
+ .modal-header,
1352
+ .modal-body,
1353
+ .modal-footer {
1354
+ padding: 0;
1355
+ }
1290
1356
  }
1291
1357
 
1358
+ /* Estilos comunes a ambos tamaños de pantalla */
1292
1359
  .modal-header {
1293
- margin-bottom: 16px;
1360
+ display: flex;
1361
+ flex-direction: column;
1362
+ gap: 8px;
1363
+ justify-content: space-between;
1364
+ align-items: center;
1365
+ padding: 24px;
1366
+ border-bottom: 1px solid var(--secondary-color-20);
1294
1367
  }
1295
-
1296
- .modal-footer {
1297
- margin-top: 16px;
1368
+
1369
+ .modal-header-content {
1370
+ display: flex;
1371
+ gap: 32px;
1372
+ width: 100%;
1373
+ justify-content: space-between;
1374
+ align-items: center;
1298
1375
  }
1299
- }
1300
1376
 
1301
- /* Estilos comunes a ambos tamaños de pantalla */
1302
- .modal-header {
1303
- display: flex;
1304
- flex-direction: column;
1305
- gap: 8px;
1306
- justify-content: space-between;
1307
- align-items: center;
1308
- padding: 24px;
1309
- border-bottom: 1px solid var(--secondary-color-20);
1310
- }
1311
-
1312
- .modal-header-content {
1313
- display: flex;
1314
- gap: 32px;
1315
- width: 100%;
1316
- justify-content: space-between;
1317
- align-items: center;
1318
- }
1319
-
1320
- .titles-container {
1321
- display: flex;
1322
- flex-direction: column;
1323
- gap: 8px;
1324
- flex-grow: 1;
1325
- }
1377
+ .titles-container {
1378
+ display: flex;
1379
+ flex-direction: column;
1380
+ gap: 8px;
1381
+ flex-grow: 1;
1382
+ }
1326
1383
 
1327
- .modal-title {
1328
- ${q}
1329
- margin: 0;
1330
- color: var(--secondary-color);
1331
- }
1384
+ .modal-title {
1385
+ ${U}
1386
+ margin: 0;
1387
+ color: var(--secondary-color);
1388
+ }
1332
1389
 
1333
- .modal-subtitle {
1334
- ${B}
1335
- margin: 0;
1336
- color: var(--secondary-color-60);
1337
- }
1390
+ .modal-subtitle {
1391
+ ${B}
1392
+ margin: 0;
1393
+ color: var(--secondary-color-60);
1394
+ }
1338
1395
 
1339
- .modal-header randstad-notice {
1340
- width: 100%;
1341
- }
1396
+ .modal-header randstad-notice {
1397
+ width: 100%;
1398
+ }
1342
1399
 
1343
- .modal-close {
1344
- background: none;
1345
- border: none;
1346
- cursor: pointer;
1347
- display: flex;
1348
- align-items: center;
1349
- justify-content: center;
1350
- padding: 0;
1351
- }
1400
+ .modal-close {
1401
+ background: none;
1402
+ border: none;
1403
+ cursor: pointer;
1404
+ display: flex;
1405
+ align-items: center;
1406
+ justify-content: center;
1407
+ padding: 0;
1408
+ }
1352
1409
 
1353
- .modal-body {
1354
- display: flex;
1355
- flex-direction: column;
1356
- padding: 24px;
1357
- gap: 16px;
1358
- }
1410
+ .modal-body {
1411
+ display: flex;
1412
+ flex-direction: column;
1413
+ padding: 24px;
1414
+ gap: 16px;
1415
+ }
1359
1416
 
1360
- .modal-footer {
1361
- display: flex;
1362
- padding: 24px;
1363
- gap: 16px;
1364
- border-top: 1px solid var(--secondary-color-20);
1365
- }
1366
- `}closeModal(){this.dispatchEvent(new CustomEvent("modal-close"))}connectedCallback(){super.connectedCallback(),this.setScrollableMode(),window.addEventListener("resize",this.setScrollableMode)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.setScrollableMode)}getFooterClass(){return!this.isFooterCustom||this.showPrimaryButton||this.showSecondaryButton?this.showPrimaryButton&&this.showSecondaryButton?"two-buttons":"one-button":"footer-custom"}render(){return e`
1417
+ .modal-footer {
1418
+ display: flex;
1419
+ padding: 24px;
1420
+ gap: 16px;
1421
+ border-top: 1px solid var(--secondary-color-20);
1422
+ }
1423
+ `]}closeModal(){this.dispatchEvent(new CustomEvent("modal-close"))}connectedCallback(){super.connectedCallback(),this.setScrollableMode(),window.addEventListener("resize",this.setScrollableMode)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.setScrollableMode)}getFooterClass(){return!this.isFooterCustom||this.showPrimaryButton||this.showSecondaryButton?this.showPrimaryButton&&this.showSecondaryButton?"two-buttons":"one-button":"footer-custom"}render(){return t`
1367
1424
  <div class="overlay" role="dialog" aria-modal="true">
1368
1425
  <div class="modal" style="--modal-width: ${this.modalWidth};">
1369
1426
  <div class="modal-header">
@@ -1371,22 +1428,27 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1371
1428
  <div class="titles-container">
1372
1429
  <div class="modal-title">${this.title}</div>
1373
1430
 
1374
- ${this.subtitle?e`<div class="modal-subtitle">${this.subtitle}</div>`:i}
1431
+ ${this.subtitle?t`<div class="modal-subtitle">${this.subtitle}</div>`:i}
1375
1432
  </div>
1376
1433
 
1377
1434
  <button class="modal-close" @click=${this.closeModal} aria-label="Cerrar modal">
1378
- <randstad-icon name="close" size="24px" style="--icon-color: var(--primary-color);"></randstad-icon>
1435
+ <randstad-icon
1436
+ name="close"
1437
+ size="24"
1438
+ .color=${"var( --primary-color )"}
1439
+ >
1440
+ </randstad-icon>
1379
1441
  </button>
1380
1442
  </div>
1381
1443
 
1382
- ${this.showNotice?e`
1383
- <randstad-notice
1384
- .open=${!0}
1385
- .type=${this.noticeType}
1386
- .icon=${this.noticeIcon}
1387
- .message=${this.noticeMessage}
1388
- >
1389
- </randstad-notice>
1444
+ ${this.showNotice?t`
1445
+ <randstad-notice
1446
+ .open=${!0}
1447
+ .type=${this.noticeType}
1448
+ .icon=${this.noticeIcon}
1449
+ .message=${this.noticeMessage}
1450
+ >
1451
+ </randstad-notice>
1390
1452
  `:i}
1391
1453
  </div>
1392
1454
 
@@ -1395,9 +1457,9 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1395
1457
  </div>
1396
1458
 
1397
1459
  <div class="modal-footer ${this.getFooterClass()}">
1398
- ${!this.isFooterCustom||this.showPrimaryButton||this.showSecondaryButton?i:e` <slot name="footer-custom"></slot> `}
1460
+ ${!this.isFooterCustom||this.showPrimaryButton||this.showSecondaryButton?i:t` <slot name="footer-custom"></slot> `}
1399
1461
 
1400
- ${this.showSecondaryButton?e`
1462
+ ${this.showSecondaryButton?t`
1401
1463
  <randstad-button
1402
1464
  variant="button-secondary"
1403
1465
  size="md"
@@ -1406,7 +1468,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1406
1468
  >
1407
1469
  </randstad-button>
1408
1470
  `:i}
1409
- ${this.showPrimaryButton?e`
1471
+ ${this.showPrimaryButton?t`
1410
1472
  <randstad-button
1411
1473
  variant="button-primary"
1412
1474
  size="md"
@@ -1420,7 +1482,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1420
1482
  </div>
1421
1483
  </div>
1422
1484
  </div>
1423
- `}};a([A({type:Boolean,reflect:!0}),s("design:type",Object)],it.prototype,"open",void 0),a([A({type:String}),s("design:type",Object)],it.prototype,"title",void 0),a([A({type:String}),s("design:type",String)],it.prototype,"subtitle",void 0),a([A({type:Boolean}),s("design:type",Object)],it.prototype,"showNotice",void 0),a([A({type:String}),s("design:type",String)],it.prototype,"noticeType",void 0),a([A({type:String}),s("design:type",Object)],it.prototype,"noticeMessage",void 0),a([A({type:String}),s("design:type",Object)],it.prototype,"noticeIcon",void 0),a([A({type:Boolean}),s("design:type",Object)],it.prototype,"showPrimaryButton",void 0),a([A({type:String}),s("design:type",Object)],it.prototype,"primaryButtonLabel",void 0),a([A({type:Boolean}),s("design:type",Object)],it.prototype,"showSecondaryButton",void 0),a([A({type:String}),s("design:type",Object)],it.prototype,"secondaryButtonLabel",void 0),a([A({type:Boolean}),s("design:type",Object)],it.prototype,"isFooterCustom",void 0),a([A({type:Boolean}),s("design:type",Object)],it.prototype,"isPrimaryLoader",void 0),a([A({type:Boolean}),s("design:type",Object)],it.prototype,"isPrimaryDisabled",void 0),a([A({type:String}),s("design:type",Object)],it.prototype,"modalWidth",void 0),a([T(),s("design:type",Object)],it.prototype,"scrollable",void 0),it=a([d("custom-modal")],it);let ot=class extends t{constructor(){super(...arguments),this.open=!1,this.type="default",this.icon="warning",this.title="Título del Popup",this.description="Descripción del popup",this.width="400px",this.buttonText="Aceptar",this.confirmText="Sí",this.cancelText="No",this.stackedActions=[],this._onBackgroundClick=t=>{const e=t.composedPath(),i=this.renderRoot.querySelector(".popup");i&&!e.includes(i)&&(this.dispatchEvent(new CustomEvent("popup-close",{detail:null})),this.open=!1)}}static{this.styles=o`
1485
+ `}};a([P({type:Boolean,reflect:!0}),s("design:type",Object)],oe.prototype,"open",void 0),a([P({type:String}),s("design:type",Object)],oe.prototype,"title",void 0),a([P({type:String}),s("design:type",String)],oe.prototype,"subtitle",void 0),a([P({type:Boolean}),s("design:type",Object)],oe.prototype,"showNotice",void 0),a([P({type:String}),s("design:type",String)],oe.prototype,"noticeType",void 0),a([P({type:String}),s("design:type",Object)],oe.prototype,"noticeMessage",void 0),a([P({type:String}),s("design:type",Object)],oe.prototype,"noticeIcon",void 0),a([P({type:Boolean}),s("design:type",Object)],oe.prototype,"showPrimaryButton",void 0),a([P({type:String}),s("design:type",Object)],oe.prototype,"primaryButtonLabel",void 0),a([P({type:Boolean}),s("design:type",Object)],oe.prototype,"showSecondaryButton",void 0),a([P({type:String}),s("design:type",Object)],oe.prototype,"secondaryButtonLabel",void 0),a([P({type:Boolean}),s("design:type",Object)],oe.prototype,"isFooterCustom",void 0),a([P({type:Boolean}),s("design:type",Object)],oe.prototype,"isPrimaryLoader",void 0),a([P({type:Boolean}),s("design:type",Object)],oe.prototype,"isPrimaryDisabled",void 0),a([P({type:String}),s("design:type",Object)],oe.prototype,"modalWidth",void 0),a([z(),s("design:type",Object)],oe.prototype,"scrollable",void 0),oe=a([d("custom-modal")],oe);let re=class extends e{constructor(){super(...arguments),this.open=!1,this.type="default",this.icon="warning",this.title="Título del Popup",this.description="Descripción del popup",this.width="400px",this.buttonText="Aceptar",this.confirmText="Sí",this.cancelText="No",this.stackedActions=[],this._onBackgroundClick=e=>{const t=e.composedPath(),i=this.renderRoot.querySelector(".popup");i&&!t.includes(i)&&(this.dispatchEvent(new CustomEvent("popup-close",{detail:null})),this.open=!1)}}static{this.styles=o`
1424
1486
  :host {
1425
1487
  display: none;
1426
1488
  position: fixed;
@@ -1516,7 +1578,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1516
1578
  }
1517
1579
 
1518
1580
  .action-item {
1519
- ${R};
1581
+ ${N};
1520
1582
  display: flex;
1521
1583
  align-items: center;
1522
1584
  gap: 16px;
@@ -1541,19 +1603,19 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1541
1603
  justify-content: center;
1542
1604
  }
1543
1605
 
1544
- `}firstUpdated(){if(this.open){const t=this.renderRoot.querySelector("randstad-button");t&&t.focus()}this.addEventListener("click",this._onBackgroundClick)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("click",this._onBackgroundClick)}closePopup(t){this.dispatchEvent(new CustomEvent("popup-close",{detail:t})),this.open=!1}render(){return e`
1606
+ `}firstUpdated(){if(this.open){const e=this.renderRoot.querySelector("randstad-button");e&&e.focus()}this.addEventListener("click",this._onBackgroundClick)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("click",this._onBackgroundClick)}closePopup(e){this.dispatchEvent(new CustomEvent("popup-close",{detail:e})),this.open=!1}render(){return t`
1545
1607
  <div
1546
1608
  class="popup"
1547
1609
  role="dialog"
1548
1610
  aria-modal="true"
1549
- ${"default"!==this.type?e`aria-labelledby="popup-title"`:i}
1611
+ ${"default"!==this.type?t`aria-labelledby="popup-title"`:i}
1550
1612
  aria-describedby="popup-description"
1551
1613
  >
1552
- ${"stacked"!==this.type&&this.icon?e`<img src="/assets/icons/${this.icon}" alt="" width="56" height="56" />`:i}
1614
+ ${"stacked"!==this.type&&this.icon?t`<img src="/assets/icons/${this.icon}" alt="" width="56" height="56" />`:i}
1553
1615
 
1554
1616
  <div class="popup-content">
1555
- ${"default"===this.type?e`
1556
- ${this.title?e`<h2 id="popup-title" class="popup-title">${this.title}</h2>`:i}
1617
+ ${"default"===this.type?t`
1618
+ ${this.title?t`<h2 id="popup-title" class="popup-title">${this.title}</h2>`:i}
1557
1619
 
1558
1620
  <div class="titles-container">
1559
1621
  <p id="popup-description" class="popup-description">${this.description}</p>
@@ -1567,25 +1629,26 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1567
1629
  label=${this.buttonText}
1568
1630
  ></randstad-button>
1569
1631
  </div>
1570
- `:"stacked"===this.type?e`
1632
+ `:"stacked"===this.type?t`
1571
1633
  <div class="popup-actions">
1572
- ${this.stackedActions.map((t=>e`
1634
+ ${this.stackedActions.map((e=>t`
1573
1635
  <div
1574
1636
  class="action-item"
1575
- @click=${()=>this.closePopup(t.value)}
1637
+ @click=${()=>this.closePopup(e.value)}
1576
1638
  >
1577
1639
  <div class="icon-circle">
1578
1640
  <randstad-icon
1579
- name=${t.icon}
1641
+ name=${e.icon}
1580
1642
  size="24px"
1581
- style="--icon-color: var(--primary-color);"
1582
- ></randstad-icon>
1643
+ .color=${"var( --primary-color )"}
1644
+ >
1645
+ </randstad-icon>
1583
1646
  </div>
1584
- <span>${t.label}</span>
1647
+ <span>${e.label}</span>
1585
1648
  </div>
1586
1649
  `))}
1587
1650
  </div>
1588
- `:e`
1651
+ `:t`
1589
1652
  <div class="titles-container">
1590
1653
  <h2 id="popup-title" class="popup-title">${this.title}</h2>
1591
1654
  <p id="popup-description" class="popup-description">${this.description}</p>
@@ -1611,7 +1674,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1611
1674
  `}
1612
1675
  </div>
1613
1676
  </div>
1614
- `}};a([A({type:Boolean,reflect:!0}),s("design:type",Object)],ot.prototype,"open",void 0),a([A({type:String}),s("design:type",String)],ot.prototype,"type",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"icon",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"title",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"description",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"width",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"buttonText",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"confirmText",void 0),a([A({type:String}),s("design:type",Object)],ot.prototype,"cancelText",void 0),a([A({type:Array}),s("design:type",Array)],ot.prototype,"stackedActions",void 0),ot=a([d("custom-popup")],ot);let rt=class extends t{constructor(){super(...arguments),this.value=0,this.max=5}static{this.styles=o`
1677
+ `}};a([P({type:Boolean,reflect:!0}),s("design:type",Object)],re.prototype,"open",void 0),a([P({type:String}),s("design:type",String)],re.prototype,"type",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"icon",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"title",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"description",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"width",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"buttonText",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"confirmText",void 0),a([P({type:String}),s("design:type",Object)],re.prototype,"cancelText",void 0),a([P({type:Array}),s("design:type",Array)],re.prototype,"stackedActions",void 0),re=a([d("custom-popup")],re);let ne=class extends e{constructor(){super(...arguments),this.value=0,this.max=5}static{this.styles=o`
1615
1678
  :host {
1616
1679
  display: inline-block;
1617
1680
  width: 64px;
@@ -1640,7 +1703,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1640
1703
  stroke: var(--primary-light-blue);
1641
1704
  stroke-linecap: round;
1642
1705
  }
1643
- `}render(){const t=2*Math.PI*28,i=Math.max(this.max,1),o=t*(1-Math.min(this.value/i,1));return e`
1706
+ `}render(){const e=2*Math.PI*28,i=Math.max(this.max,1),o=e*(1-Math.min(this.value/i,1));return t`
1644
1707
  <svg
1645
1708
  viewBox="0 0 64 64"
1646
1709
  role="img"
@@ -1663,7 +1726,7 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1663
1726
  r="${28}"
1664
1727
  stroke-width="${6}"
1665
1728
  fill="none"
1666
- stroke-dasharray="${t}"
1729
+ stroke-dasharray="${e}"
1667
1730
  stroke-dashoffset="${o}"
1668
1731
  transform="rotate(-90 32 32)"
1669
1732
  />
@@ -1672,18 +1735,18 @@ function z(t,e){return(e,i,o)=>((t,e,i)=>(i.configurable=!0,i.enumerable=!0,Refl
1672
1735
  ${this.value} de ${this.max}
1673
1736
  </text>
1674
1737
  </svg>
1675
- `}};a([A({type:Number}),s("design:type",Object)],rt.prototype,"value",void 0),a([A({type:Number}),s("design:type",Object)],rt.prototype,"max",void 0),rt=a([d("progress-circle")],rt);
1738
+ `}};a([P({type:Number}),s("design:type",Object)],ne.prototype,"value",void 0),a([P({type:Number}),s("design:type",Object)],ne.prototype,"max",void 0),ne=a([d("progress-circle")],ne);
1676
1739
  /**
1677
1740
  * @license
1678
1741
  * Copyright 2023 Google LLC
1679
1742
  * SPDX-License-Identifier: Apache-2.0
1680
1743
  */
1681
- const nt=Symbol("attachableController");let at;r||(at=new MutationObserver((t=>{for(const e of t)e.target[nt]?.hostConnected()})));class st{get htmlFor(){return this.host.getAttribute("for")}set htmlFor(t){null===t?this.host.removeAttribute("for"):this.host.setAttribute("for",t)}get control(){return this.host.hasAttribute("for")?this.htmlFor&&this.host.isConnected?this.host.getRootNode().querySelector(`#${this.htmlFor}`):null:this.currentControl||this.host.parentElement}set control(t){t?this.attach(t):this.detach()}constructor(t,e){this.host=t,this.onControlChange=e,this.currentControl=null,t.addController(this),t[nt]=this,at?.observe(t,{attributeFilter:["for"]})}attach(t){t!==this.currentControl&&(this.setCurrentControl(t),this.host.removeAttribute("for"))}detach(){this.setCurrentControl(null),this.host.setAttribute("for","")}hostConnected(){this.setCurrentControl(this.control)}hostDisconnected(){this.setCurrentControl(null)}setCurrentControl(t){this.onControlChange(this.currentControl,t),this.currentControl=t}}
1744
+ const ae=Symbol("attachableController");let se;r||(se=new MutationObserver((e=>{for(const t of e)t.target[ae]?.hostConnected()})));class de{get htmlFor(){return this.host.getAttribute("for")}set htmlFor(e){null===e?this.host.removeAttribute("for"):this.host.setAttribute("for",e)}get control(){return this.host.hasAttribute("for")?this.htmlFor&&this.host.isConnected?this.host.getRootNode().querySelector(`#${this.htmlFor}`):null:this.currentControl||this.host.parentElement}set control(e){e?this.attach(e):this.detach()}constructor(e,t){this.host=e,this.onControlChange=t,this.currentControl=null,e.addController(this),e[ae]=this,se?.observe(e,{attributeFilter:["for"]})}attach(e){e!==this.currentControl&&(this.setCurrentControl(e),this.host.removeAttribute("for"))}detach(){this.setCurrentControl(null),this.host.setAttribute("for","")}hostConnected(){this.setCurrentControl(this.control)}hostDisconnected(){this.setCurrentControl(null)}setCurrentControl(e){this.onControlChange(this.currentControl,e),this.currentControl=e}}
1682
1745
  /**
1683
1746
  * @license
1684
1747
  * Copyright 2021 Google LLC
1685
1748
  * SPDX-License-Identifier: Apache-2.0
1686
- */const dt=["focusin","focusout","pointerdown"];class lt extends t{constructor(){super(...arguments),this.visible=!1,this.inward=!1,this.attachableController=new st(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(t){this.attachableController.htmlFor=t}get control(){return this.attachableController.control}set control(t){this.attachableController.control=t}attach(t){this.attachableController.attach(t)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}handleEvent(t){if(!t[ct]){switch(t.type){default:return;case"focusin":this.visible=this.control?.matches(":focus-visible")??!1;break;case"focusout":case"pointerdown":this.visible=!1}t[ct]=!0}}onControlChange(t,e){if(!r)for(const i of dt)t?.removeEventListener(i,this),e?.addEventListener(i,this)}update(t){t.has("visible")&&this.dispatchEvent(new Event("visibility-changed")),super.update(t)}}a([A({type:Boolean,reflect:!0})],lt.prototype,"visible",void 0),a([A({type:Boolean,reflect:!0})],lt.prototype,"inward",void 0);const ct=Symbol("handledByFocusRing"),pt=o`:host{animation-delay:0s,calc(var(--md-focus-ring-duration, 600ms)*.25);animation-duration:calc(var(--md-focus-ring-duration, 600ms)*.25),calc(var(--md-focus-ring-duration, 600ms)*.75);animation-timing-function:cubic-bezier(0.2, 0, 0, 1);box-sizing:border-box;color:var(--md-focus-ring-color, var(--md-sys-color-secondary, #625b71));display:none;pointer-events:none;position:absolute}:host([visible]){display:flex}:host(:not([inward])){animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));inset:calc(-1*var(--md-focus-ring-outward-offset, 2px));outline:var(--md-focus-ring-width, 3px) solid currentColor}:host([inward]){animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border:var(--md-focus-ring-width, 3px) solid currentColor;inset:var(--md-focus-ring-inward-offset, 0px)}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes outward-shrink{from{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-shrink{from{border-width:var(--md-focus-ring-active-width, 8px)}}@media(prefers-reduced-motion){:host{animation:none}}
1749
+ */const le=["focusin","focusout","pointerdown"];class ce extends e{constructor(){super(...arguments),this.visible=!1,this.inward=!1,this.attachableController=new de(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(e){this.attachableController.htmlFor=e}get control(){return this.attachableController.control}set control(e){this.attachableController.control=e}attach(e){this.attachableController.attach(e)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}handleEvent(e){if(!e[pe]){switch(e.type){default:return;case"focusin":this.visible=this.control?.matches(":focus-visible")??!1;break;case"focusout":case"pointerdown":this.visible=!1}e[pe]=!0}}onControlChange(e,t){if(!r)for(const i of le)e?.removeEventListener(i,this),t?.addEventListener(i,this)}update(e){e.has("visible")&&this.dispatchEvent(new Event("visibility-changed")),super.update(e)}}a([P({type:Boolean,reflect:!0})],ce.prototype,"visible",void 0),a([P({type:Boolean,reflect:!0})],ce.prototype,"inward",void 0);const pe=Symbol("handledByFocusRing"),he=o`:host{animation-delay:0s,calc(var(--md-focus-ring-duration, 600ms)*.25);animation-duration:calc(var(--md-focus-ring-duration, 600ms)*.25),calc(var(--md-focus-ring-duration, 600ms)*.75);animation-timing-function:cubic-bezier(0.2, 0, 0, 1);box-sizing:border-box;color:var(--md-focus-ring-color, var(--md-sys-color-secondary, #625b71));display:none;pointer-events:none;position:absolute}:host([visible]){display:flex}:host(:not([inward])){animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));inset:calc(-1*var(--md-focus-ring-outward-offset, 2px));outline:var(--md-focus-ring-width, 3px) solid currentColor}:host([inward]){animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border:var(--md-focus-ring-width, 3px) solid currentColor;inset:var(--md-focus-ring-inward-offset, 0px)}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes outward-shrink{from{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-shrink{from{border-width:var(--md-focus-ring-active-width, 8px)}}@media(prefers-reduced-motion){:host{animation:none}}
1687
1750
  `
1688
1751
  /**
1689
1752
  * @license
@@ -1694,81 +1757,81 @@ const nt=Symbol("attachableController");let at;r||(at=new MutationObserver((t=>{
1694
1757
  * @license
1695
1758
  * Copyright 2024 Google LLC
1696
1759
  * SPDX-License-Identifier: Apache-2.0
1697
- */let ht=class extends lt{};ht.styles=[pt],ht=a([d("md-focus-ring")],ht);
1760
+ */let ue=class extends ce{};ue.styles=[he],ue=a([d("md-focus-ring")],ue);
1698
1761
  /**
1699
1762
  * @license
1700
1763
  * Copyright 2021 Google LLC
1701
1764
  * SPDX-License-Identifier: Apache-2.0
1702
1765
  */
1703
- const ut="cubic-bezier(0.2, 0, 0, 1)";
1766
+ const be="cubic-bezier(0.2, 0, 0, 1)";
1704
1767
  /**
1705
1768
  * @license
1706
1769
  * Copyright 2022 Google LLC
1707
1770
  * SPDX-License-Identifier: Apache-2.0
1708
- */var bt;!function(t){t[t.INACTIVE=0]="INACTIVE",t[t.TOUCH_DELAY=1]="TOUCH_DELAY",t[t.HOLDING=2]="HOLDING",t[t.WAITING_FOR_CLICK=3]="WAITING_FOR_CLICK"}(bt||(bt={}));const mt=["click","contextmenu","pointercancel","pointerdown","pointerenter","pointerleave","pointerup"],gt=r?null:window.matchMedia("(forced-colors: active)");class yt extends t{constructor(){super(...arguments),this.disabled=!1,this.hovered=!1,this.pressed=!1,this.rippleSize="",this.rippleScale="",this.initialSize=0,this.state=bt.INACTIVE,this.checkBoundsAfterContextMenu=!1,this.attachableController=new st(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(t){this.attachableController.htmlFor=t}get control(){return this.attachableController.control}set control(t){this.attachableController.control=t}attach(t){this.attachableController.attach(t)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}render(){const t={hovered:this.hovered,pressed:this.pressed};return e`<div class="surface ${n(t)}"></div>`}update(t){t.has("disabled")&&this.disabled&&(this.hovered=!1,this.pressed=!1),super.update(t)}handlePointerenter(t){this.shouldReactToEvent(t)&&(this.hovered=!0)}handlePointerleave(t){this.shouldReactToEvent(t)&&(this.hovered=!1,this.state!==bt.INACTIVE&&this.endPressAnimation())}handlePointerup(t){if(this.shouldReactToEvent(t)){if(this.state!==bt.HOLDING)return this.state===bt.TOUCH_DELAY?(this.state=bt.WAITING_FOR_CLICK,void this.startPressAnimation(this.rippleStartEvent)):void 0;this.state=bt.WAITING_FOR_CLICK}}async handlePointerdown(t){if(this.shouldReactToEvent(t)){if(this.rippleStartEvent=t,!this.isTouch(t))return this.state=bt.WAITING_FOR_CLICK,void this.startPressAnimation(t);this.checkBoundsAfterContextMenu&&!this.inBounds(t)||(this.checkBoundsAfterContextMenu=!1,this.state=bt.TOUCH_DELAY,await new Promise((t=>{setTimeout(t,150)})),this.state===bt.TOUCH_DELAY&&(this.state=bt.HOLDING,this.startPressAnimation(t)))}}handleClick(){this.disabled||(this.state!==bt.WAITING_FOR_CLICK?this.state===bt.INACTIVE&&(this.startPressAnimation(),this.endPressAnimation()):this.endPressAnimation())}handlePointercancel(t){this.shouldReactToEvent(t)&&this.endPressAnimation()}handleContextmenu(){this.disabled||(this.checkBoundsAfterContextMenu=!0,this.endPressAnimation())}determineRippleSize(){const{height:t,width:e}=this.getBoundingClientRect(),i=Math.max(t,e),o=Math.max(.35*i,75),r=Math.floor(.2*i),n=Math.sqrt(e**2+t**2)+10;this.initialSize=r,this.rippleScale=""+(n+o)/r,this.rippleSize=`${r}px`}getNormalizedPointerEventCoords(t){const{scrollX:e,scrollY:i}=window,{left:o,top:r}=this.getBoundingClientRect(),n=e+o,a=i+r,{pageX:s,pageY:d}=t;return{x:s-n,y:d-a}}getTranslationCoordinates(t){const{height:e,width:i}=this.getBoundingClientRect(),o={x:(i-this.initialSize)/2,y:(e-this.initialSize)/2};let r;return r=t instanceof PointerEvent?this.getNormalizedPointerEventCoords(t):{x:i/2,y:e/2},r={x:r.x-this.initialSize/2,y:r.y-this.initialSize/2},{startPoint:r,endPoint:o}}startPressAnimation(t){if(!this.mdRoot)return;this.pressed=!0,this.growAnimation?.cancel(),this.determineRippleSize();const{startPoint:e,endPoint:i}=this.getTranslationCoordinates(t),o=`${e.x}px, ${e.y}px`,r=`${i.x}px, ${i.y}px`;this.growAnimation=this.mdRoot.animate({top:[0,0],left:[0,0],height:[this.rippleSize,this.rippleSize],width:[this.rippleSize,this.rippleSize],transform:[`translate(${o}) scale(1)`,`translate(${r}) scale(${this.rippleScale})`]},{pseudoElement:"::after",duration:450,easing:ut,fill:"forwards"})}async endPressAnimation(){this.rippleStartEvent=void 0,this.state=bt.INACTIVE;const t=this.growAnimation;let e=1/0;"number"==typeof t?.currentTime?e=t.currentTime:t?.currentTime&&(e=t.currentTime.to("ms").value),e>=225?this.pressed=!1:(await new Promise((t=>{setTimeout(t,225-e)})),this.growAnimation===t&&(this.pressed=!1))}shouldReactToEvent(t){if(this.disabled||!t.isPrimary)return!1;if(this.rippleStartEvent&&this.rippleStartEvent.pointerId!==t.pointerId)return!1;if("pointerenter"===t.type||"pointerleave"===t.type)return!this.isTouch(t);const e=1===t.buttons;return this.isTouch(t)||e}inBounds({x:t,y:e}){const{top:i,left:o,bottom:r,right:n}=this.getBoundingClientRect();return t>=o&&t<=n&&e>=i&&e<=r}isTouch({pointerType:t}){return"touch"===t}async handleEvent(t){if(!gt?.matches)switch(t.type){case"click":this.handleClick();break;case"contextmenu":this.handleContextmenu();break;case"pointercancel":this.handlePointercancel(t);break;case"pointerdown":await this.handlePointerdown(t);break;case"pointerenter":this.handlePointerenter(t);break;case"pointerleave":this.handlePointerleave(t);break;case"pointerup":this.handlePointerup(t)}}onControlChange(t,e){if(!r)for(const i of mt)t?.removeEventListener(i,this),e?.addEventListener(i,this)}}a([A({type:Boolean,reflect:!0})],yt.prototype,"disabled",void 0),a([T()],yt.prototype,"hovered",void 0),a([T()],yt.prototype,"pressed",void 0),a([z(".surface")],yt.prototype,"mdRoot",void 0);
1771
+ */var ge;!function(e){e[e.INACTIVE=0]="INACTIVE",e[e.TOUCH_DELAY=1]="TOUCH_DELAY",e[e.HOLDING=2]="HOLDING",e[e.WAITING_FOR_CLICK=3]="WAITING_FOR_CLICK"}(ge||(ge={}));const me=["click","contextmenu","pointercancel","pointerdown","pointerenter","pointerleave","pointerup"],ye=r?null:window.matchMedia("(forced-colors: active)");class ve extends e{constructor(){super(...arguments),this.disabled=!1,this.hovered=!1,this.pressed=!1,this.rippleSize="",this.rippleScale="",this.initialSize=0,this.state=ge.INACTIVE,this.checkBoundsAfterContextMenu=!1,this.attachableController=new de(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(e){this.attachableController.htmlFor=e}get control(){return this.attachableController.control}set control(e){this.attachableController.control=e}attach(e){this.attachableController.attach(e)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}render(){const e={hovered:this.hovered,pressed:this.pressed};return t`<div class="surface ${n(e)}"></div>`}update(e){e.has("disabled")&&this.disabled&&(this.hovered=!1,this.pressed=!1),super.update(e)}handlePointerenter(e){this.shouldReactToEvent(e)&&(this.hovered=!0)}handlePointerleave(e){this.shouldReactToEvent(e)&&(this.hovered=!1,this.state!==ge.INACTIVE&&this.endPressAnimation())}handlePointerup(e){if(this.shouldReactToEvent(e)){if(this.state!==ge.HOLDING)return this.state===ge.TOUCH_DELAY?(this.state=ge.WAITING_FOR_CLICK,void this.startPressAnimation(this.rippleStartEvent)):void 0;this.state=ge.WAITING_FOR_CLICK}}async handlePointerdown(e){if(this.shouldReactToEvent(e)){if(this.rippleStartEvent=e,!this.isTouch(e))return this.state=ge.WAITING_FOR_CLICK,void this.startPressAnimation(e);this.checkBoundsAfterContextMenu&&!this.inBounds(e)||(this.checkBoundsAfterContextMenu=!1,this.state=ge.TOUCH_DELAY,await new Promise((e=>{setTimeout(e,150)})),this.state===ge.TOUCH_DELAY&&(this.state=ge.HOLDING,this.startPressAnimation(e)))}}handleClick(){this.disabled||(this.state!==ge.WAITING_FOR_CLICK?this.state===ge.INACTIVE&&(this.startPressAnimation(),this.endPressAnimation()):this.endPressAnimation())}handlePointercancel(e){this.shouldReactToEvent(e)&&this.endPressAnimation()}handleContextmenu(){this.disabled||(this.checkBoundsAfterContextMenu=!0,this.endPressAnimation())}determineRippleSize(){const{height:e,width:t}=this.getBoundingClientRect(),i=Math.max(e,t),o=Math.max(.35*i,75),r=Math.floor(.2*i),n=Math.sqrt(t**2+e**2)+10;this.initialSize=r,this.rippleScale=""+(n+o)/r,this.rippleSize=`${r}px`}getNormalizedPointerEventCoords(e){const{scrollX:t,scrollY:i}=window,{left:o,top:r}=this.getBoundingClientRect(),n=t+o,a=i+r,{pageX:s,pageY:d}=e;return{x:s-n,y:d-a}}getTranslationCoordinates(e){const{height:t,width:i}=this.getBoundingClientRect(),o={x:(i-this.initialSize)/2,y:(t-this.initialSize)/2};let r;return r=e instanceof PointerEvent?this.getNormalizedPointerEventCoords(e):{x:i/2,y:t/2},r={x:r.x-this.initialSize/2,y:r.y-this.initialSize/2},{startPoint:r,endPoint:o}}startPressAnimation(e){if(!this.mdRoot)return;this.pressed=!0,this.growAnimation?.cancel(),this.determineRippleSize();const{startPoint:t,endPoint:i}=this.getTranslationCoordinates(e),o=`${t.x}px, ${t.y}px`,r=`${i.x}px, ${i.y}px`;this.growAnimation=this.mdRoot.animate({top:[0,0],left:[0,0],height:[this.rippleSize,this.rippleSize],width:[this.rippleSize,this.rippleSize],transform:[`translate(${o}) scale(1)`,`translate(${r}) scale(${this.rippleScale})`]},{pseudoElement:"::after",duration:450,easing:be,fill:"forwards"})}async endPressAnimation(){this.rippleStartEvent=void 0,this.state=ge.INACTIVE;const e=this.growAnimation;let t=1/0;"number"==typeof e?.currentTime?t=e.currentTime:e?.currentTime&&(t=e.currentTime.to("ms").value),t>=225?this.pressed=!1:(await new Promise((e=>{setTimeout(e,225-t)})),this.growAnimation===e&&(this.pressed=!1))}shouldReactToEvent(e){if(this.disabled||!e.isPrimary)return!1;if(this.rippleStartEvent&&this.rippleStartEvent.pointerId!==e.pointerId)return!1;if("pointerenter"===e.type||"pointerleave"===e.type)return!this.isTouch(e);const t=1===e.buttons;return this.isTouch(e)||t}inBounds({x:e,y:t}){const{top:i,left:o,bottom:r,right:n}=this.getBoundingClientRect();return e>=o&&e<=n&&t>=i&&t<=r}isTouch({pointerType:e}){return"touch"===e}async handleEvent(e){if(!ye?.matches)switch(e.type){case"click":this.handleClick();break;case"contextmenu":this.handleContextmenu();break;case"pointercancel":this.handlePointercancel(e);break;case"pointerdown":await this.handlePointerdown(e);break;case"pointerenter":this.handlePointerenter(e);break;case"pointerleave":this.handlePointerleave(e);break;case"pointerup":this.handlePointerup(e)}}onControlChange(e,t){if(!r)for(const i of me)e?.removeEventListener(i,this),t?.addEventListener(i,this)}}a([P({type:Boolean,reflect:!0})],ve.prototype,"disabled",void 0),a([z()],ve.prototype,"hovered",void 0),a([z()],ve.prototype,"pressed",void 0),a([A(".surface")],ve.prototype,"mdRoot",void 0);
1709
1772
  /**
1710
1773
  * @license
1711
1774
  * Copyright 2024 Google LLC
1712
1775
  * SPDX-License-Identifier: Apache-2.0
1713
1776
  */
1714
- const ft=o`:host{display:flex;margin:auto;pointer-events:none}:host([disabled]){display:none}@media(forced-colors: active){:host{display:none}}:host,.surface{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.surface{-webkit-tap-highlight-color:rgba(0,0,0,0)}.surface::before,.surface::after{content:"";opacity:0;position:absolute}.surface::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));inset:0;transition:opacity 15ms linear,background-color 15ms linear}.surface::after{background:radial-gradient(closest-side, var(--md-ripple-pressed-color, var(--md-sys-color-on-surface, #1d1b20)) max(100% - 70px, 65%), transparent 100%);transform-origin:center center;transition:opacity 375ms linear}.hovered::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-ripple-hover-opacity, 0.08)}.pressed::after{opacity:var(--md-ripple-pressed-opacity, 0.12);transition-duration:105ms}
1777
+ const fe=o`:host{display:flex;margin:auto;pointer-events:none}:host([disabled]){display:none}@media(forced-colors: active){:host{display:none}}:host,.surface{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.surface{-webkit-tap-highlight-color:rgba(0,0,0,0)}.surface::before,.surface::after{content:"";opacity:0;position:absolute}.surface::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));inset:0;transition:opacity 15ms linear,background-color 15ms linear}.surface::after{background:radial-gradient(closest-side, var(--md-ripple-pressed-color, var(--md-sys-color-on-surface, #1d1b20)) max(100% - 70px, 65%), transparent 100%);transform-origin:center center;transition:opacity 375ms linear}.hovered::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-ripple-hover-opacity, 0.08)}.pressed::after{opacity:var(--md-ripple-pressed-opacity, 0.12);transition-duration:105ms}
1715
1778
  `
1716
1779
  /**
1717
1780
  * @license
1718
1781
  * Copyright 2022 Google LLC
1719
1782
  * SPDX-License-Identifier: Apache-2.0
1720
- */;let vt=class extends yt{};
1783
+ */;let xe=class extends ve{};
1721
1784
  /**
1722
1785
  * @license
1723
1786
  * Copyright 2021 Google LLC
1724
1787
  * SPDX-License-Identifier: Apache-2.0
1725
1788
  */
1726
- function xt(t){return t.currentTarget===t.target&&(t.composedPath()[0]===t.target&&(!t.target.disabled&&!function(t){const e=wt;e&&(t.preventDefault(),t.stopImmediatePropagation());return async function(){wt=!0,await null,wt=!1}
1789
+ function we(e){return e.currentTarget===e.target&&(e.composedPath()[0]===e.target&&(!e.target.disabled&&!function(e){const t=ke;t&&(e.preventDefault(),e.stopImmediatePropagation());return async function(){ke=!0,await null,ke=!1}
1727
1790
  /**
1728
1791
  * @license
1729
1792
  * Copyright 2023 Google LLC
1730
1793
  * SPDX-License-Identifier: Apache-2.0
1731
- */(),e}(t)))}vt.styles=[ft],vt=a([d("md-ripple")],vt);let wt=!1;const kt=Symbol("internals"),$t=Symbol("privateInternals");
1794
+ */(),t}(e)))}xe.styles=[fe],xe=a([d("md-ripple")],xe);let ke=!1;const $e=Symbol("internals"),Se=Symbol("privateInternals");
1732
1795
  /**
1733
1796
  * @license
1734
1797
  * Copyright 2023 Google LLC
1735
1798
  * SPDX-License-Identifier: Apache-2.0
1736
1799
  */
1737
- const St=Symbol("createValidator"),Ct=Symbol("getValidityAnchor"),Et=Symbol("privateValidator"),Dt=Symbol("privateSyncValidity"),Ot=Symbol("privateCustomValidationMessage");
1800
+ const Ce=Symbol("createValidator"),Ee=Symbol("getValidityAnchor"),De=Symbol("privateValidator"),Me=Symbol("privateSyncValidity"),Oe=Symbol("privateCustomValidationMessage");
1738
1801
  /**
1739
1802
  * @license
1740
1803
  * Copyright 2023 Google LLC
1741
1804
  * SPDX-License-Identifier: Apache-2.0
1742
1805
  */
1743
- const Mt=Symbol("isFocusable"),Ft=Symbol("privateIsFocusable"),Pt=Symbol("externalTabIndex"),jt=Symbol("isUpdatingTabIndex"),At=Symbol("updateTabIndex");
1806
+ const Fe=Symbol("isFocusable"),Te=Symbol("privateIsFocusable"),je=Symbol("externalTabIndex"),Pe=Symbol("isUpdatingTabIndex"),ze=Symbol("updateTabIndex");
1744
1807
  /**
1745
1808
  * @license
1746
1809
  * Copyright 2023 Google LLC
1747
1810
  * SPDX-License-Identifier: Apache-2.0
1748
1811
  */
1749
- const Tt=Symbol("getFormValue"),zt=Symbol("getFormState");
1812
+ const Ae=Symbol("getFormValue"),Le=Symbol("getFormState");
1750
1813
  /**
1751
1814
  * @license
1752
1815
  * Copyright 2023 Google LLC
1753
1816
  * SPDX-License-Identifier: Apache-2.0
1754
1817
  */
1755
- class Lt{constructor(t){this.getCurrentState=t,this.currentValidity={validity:{},validationMessage:""}}getValidity(){const t=this.getCurrentState();if(!(!this.prevState||!this.equals(this.prevState,t)))return this.currentValidity;const{validity:e,validationMessage:i}=this.computeValidity(t);return this.prevState=this.copy(t),this.currentValidity={validationMessage:i,validity:{badInput:e.badInput,customError:e.customError,patternMismatch:e.patternMismatch,rangeOverflow:e.rangeOverflow,rangeUnderflow:e.rangeUnderflow,stepMismatch:e.stepMismatch,tooLong:e.tooLong,tooShort:e.tooShort,typeMismatch:e.typeMismatch,valueMissing:e.valueMissing}},this.currentValidity}}
1818
+ class Ie{constructor(e){this.getCurrentState=e,this.currentValidity={validity:{},validationMessage:""}}getValidity(){const e=this.getCurrentState();if(!(!this.prevState||!this.equals(this.prevState,e)))return this.currentValidity;const{validity:t,validationMessage:i}=this.computeValidity(e);return this.prevState=this.copy(e),this.currentValidity={validationMessage:i,validity:{badInput:t.badInput,customError:t.customError,patternMismatch:t.patternMismatch,rangeOverflow:t.rangeOverflow,rangeUnderflow:t.rangeUnderflow,stepMismatch:t.stepMismatch,tooLong:t.tooLong,tooShort:t.tooShort,typeMismatch:t.typeMismatch,valueMissing:t.valueMissing}},this.currentValidity}}
1756
1819
  /**
1757
1820
  * @license
1758
1821
  * Copyright 2023 Google LLC
1759
1822
  * SPDX-License-Identifier: Apache-2.0
1760
- */class It extends Lt{computeValidity(t){this.radioElement||(this.radioElement=document.createElement("input"),this.radioElement.type="radio",this.radioElement.name="group");let e=!1,i=!1;for(const{checked:o,required:r}of t)r&&(e=!0),o&&(i=!0);return this.radioElement.checked=i,this.radioElement.required=e,{validity:{valueMissing:e&&!i},validationMessage:this.radioElement.validationMessage}}equals(t,e){if(t.length!==e.length)return!1;for(let i=0;i<t.length;i++){const o=t[i],r=e[i];if(o.checked!==r.checked||o.required!==r.required)return!1}return!0}copy(t){return t.map((({checked:t,required:e})=>({checked:t,required:e})))}}
1823
+ */class _e extends Ie{computeValidity(e){this.radioElement||(this.radioElement=document.createElement("input"),this.radioElement.type="radio",this.radioElement.name="group");let t=!1,i=!1;for(const{checked:o,required:r}of e)r&&(t=!0),o&&(i=!0);return this.radioElement.checked=i,this.radioElement.required=t,{validity:{valueMissing:t&&!i},validationMessage:this.radioElement.validationMessage}}equals(e,t){if(e.length!==t.length)return!1;for(let i=0;i<e.length;i++){const o=e[i],r=t[i];if(o.checked!==r.checked||o.required!==r.required)return!1}return!0}copy(e){return e.map((({checked:e,required:t})=>({checked:e,required:t})))}}
1761
1824
  /**
1762
1825
  * @license
1763
1826
  * Copyright 2022 Google LLC
1764
1827
  * SPDX-License-Identifier: Apache-2.0
1765
- */class _t{get controls(){const t=this.host.getAttribute("name");return t&&this.root&&this.host.isConnected?Array.from(this.root.querySelectorAll(`[name="${t}"]`)):[this.host]}constructor(t){this.host=t,this.focused=!1,this.root=null,this.handleFocusIn=()=>{this.focused=!0,this.updateTabIndices()},this.handleFocusOut=()=>{this.focused=!1,this.updateTabIndices()},this.handleKeyDown=t=>{const e="ArrowDown"===t.key,i="ArrowUp"===t.key,o="ArrowLeft"===t.key,r="ArrowRight"===t.key;if(!(o||r||e||i))return;const n=this.controls;if(!n.length)return;t.preventDefault();const a="rtl"===getComputedStyle(this.host).direction?o||e:r||e,s=n.indexOf(this.host);let d=a?s+1:s-1;for(;d!==s;){d>=n.length?d=0:d<0&&(d=n.length-1);const t=n[d];if(!t.hasAttribute("disabled")){for(const e of n)e!==t&&(e.checked=!1,e.tabIndex=-1,e.blur());t.checked=!0,t.tabIndex=0,t.focus(),t.dispatchEvent(new Event("change",{bubbles:!0}));break}a?d++:d--}}}hostConnected(){this.root=this.host.getRootNode(),this.host.addEventListener("keydown",this.handleKeyDown),this.host.addEventListener("focusin",this.handleFocusIn),this.host.addEventListener("focusout",this.handleFocusOut),this.host.checked&&this.uncheckSiblings(),this.updateTabIndices()}hostDisconnected(){this.host.removeEventListener("keydown",this.handleKeyDown),this.host.removeEventListener("focusin",this.handleFocusIn),this.host.removeEventListener("focusout",this.handleFocusOut),this.updateTabIndices(),this.root=null}handleCheckedChange(){this.host.checked&&(this.uncheckSiblings(),this.updateTabIndices())}uncheckSiblings(){for(const t of this.controls)t!==this.host&&(t.checked=!1)}updateTabIndices(){const t=this.controls,e=t.find((t=>t.checked));if(e||this.focused){const i=e||this.host;i.tabIndex=0;for(const e of t)e!==i&&(e.tabIndex=-1)}else for(const e of t)e.tabIndex=0}}
1828
+ */class Be{get controls(){const e=this.host.getAttribute("name");return e&&this.root&&this.host.isConnected?Array.from(this.root.querySelectorAll(`[name="${e}"]`)):[this.host]}constructor(e){this.host=e,this.focused=!1,this.root=null,this.handleFocusIn=()=>{this.focused=!0,this.updateTabIndices()},this.handleFocusOut=()=>{this.focused=!1,this.updateTabIndices()},this.handleKeyDown=e=>{const t="ArrowDown"===e.key,i="ArrowUp"===e.key,o="ArrowLeft"===e.key,r="ArrowRight"===e.key;if(!(o||r||t||i))return;const n=this.controls;if(!n.length)return;e.preventDefault();const a="rtl"===getComputedStyle(this.host).direction?o||t:r||t,s=n.indexOf(this.host);let d=a?s+1:s-1;for(;d!==s;){d>=n.length?d=0:d<0&&(d=n.length-1);const e=n[d];if(!e.hasAttribute("disabled")){for(const t of n)t!==e&&(t.checked=!1,t.tabIndex=-1,t.blur());e.checked=!0,e.tabIndex=0,e.focus(),e.dispatchEvent(new Event("change",{bubbles:!0}));break}a?d++:d--}}}hostConnected(){this.root=this.host.getRootNode(),this.host.addEventListener("keydown",this.handleKeyDown),this.host.addEventListener("focusin",this.handleFocusIn),this.host.addEventListener("focusout",this.handleFocusOut),this.host.checked&&this.uncheckSiblings(),this.updateTabIndices()}hostDisconnected(){this.host.removeEventListener("keydown",this.handleKeyDown),this.host.removeEventListener("focusin",this.handleFocusIn),this.host.removeEventListener("focusout",this.handleFocusOut),this.updateTabIndices(),this.root=null}handleCheckedChange(){this.host.checked&&(this.uncheckSiblings(),this.updateTabIndices())}uncheckSiblings(){for(const e of this.controls)e!==this.host&&(e.checked=!1)}updateTabIndices(){const e=this.controls,t=e.find((e=>e.checked));if(t||this.focused){const i=t||this.host;i.tabIndex=0;for(const t of e)t!==i&&(t.tabIndex=-1)}else for(const t of e)t.tabIndex=0}}
1766
1829
  /**
1767
1830
  * @license
1768
1831
  * Copyright 2018 Google LLC
1769
1832
  * SPDX-License-Identifier: Apache-2.0
1770
- */var Bt;const Nt=Symbol("checked");let Rt=0;const Vt=function(t){var e;class i extends t{constructor(){super(...arguments),this[e]=""}get validity(){return this[Dt](),this[kt].validity}get validationMessage(){return this[Dt](),this[kt].validationMessage}get willValidate(){return this[Dt](),this[kt].willValidate}checkValidity(){return this[Dt](),this[kt].checkValidity()}reportValidity(){return this[Dt](),this[kt].reportValidity()}setCustomValidity(t){this[Ot]=t,this[Dt]()}requestUpdate(t,e,i){super.requestUpdate(t,e,i),this[Dt]()}firstUpdated(t){super.firstUpdated(t),this[Dt]()}[(e=Ot,Dt)](){if(r)return;this[Et]||(this[Et]=this[St]());const{validity:t,validationMessage:e}=this[Et].getValidity(),i=!!this[Ot],o=this[Ot]||e;this[kt].setValidity({...t,customError:i},o,this[Ct]()??void 0)}[St](){throw new Error("Implement [createValidator]")}[Ct](){throw new Error("Implement [getValidityAnchor]")}}return i}(function(t){class e extends t{get form(){return this[kt].form}get labels(){return this[kt].labels}get name(){return this.getAttribute("name")??""}set name(t){this.setAttribute("name",t)}get disabled(){return this.hasAttribute("disabled")}set disabled(t){this.toggleAttribute("disabled",t)}attributeChangedCallback(t,e,i){if("name"!==t&&"disabled"!==t)super.attributeChangedCallback(t,e,i);else{const i="disabled"===t?null!==e:e;this.requestUpdate(t,i)}}requestUpdate(t,e,i){super.requestUpdate(t,e,i),this[kt].setFormValue(this[Tt](),this[zt]())}[Tt](){throw new Error("Implement [getFormValue]")}[zt](){return this[Tt]()}formDisabledCallback(t){this.disabled=t}}return e.formAssociated=!0,a([A({noAccessor:!0})],e.prototype,"name",null),a([A({type:Boolean,noAccessor:!0})],e.prototype,"disabled",null),e}((qt=function(t){var e,i,o;class r extends t{constructor(){super(...arguments),this[e]=!0,this[i]=null,this[o]=!1}get[Mt](){return this[Ft]}set[Mt](t){this[Mt]!==t&&(this[Ft]=t,this[At]())}connectedCallback(){super.connectedCallback(),this[At]()}attributeChangedCallback(t,e,i){if("tabindex"===t){if(this.requestUpdate("tabIndex",Number(e??-1)),!this[jt])return this.hasAttribute("tabindex")?void(this[Pt]=this.tabIndex):(this[Pt]=null,void this[At]())}else super.attributeChangedCallback(t,e,i)}[(e=Ft,i=Pt,o=jt,At)](){const t=this[Mt]?0:-1,e=this[Pt]??t;this[jt]=!0,this.tabIndex=e,this[jt]=!1}}return a([A({noAccessor:!0})],r.prototype,"tabIndex",void 0),r}(t),class extends qt{get[kt](){return this[$t]||(this[$t]=this.attachInternals()),this[$t]}})));var qt;class Wt extends Vt{get checked(){return this[Nt]}set checked(t){const e=this.checked;e!==t&&(this[Nt]=t,this.requestUpdate("checked",e),this.selectionController.handleCheckedChange())}constructor(){super(),this.maskId="cutout"+ ++Rt,this[Bt]=!1,this.required=!1,this.value="on",this.selectionController=new _t(this),this.addController(this.selectionController),r||(this[kt].role="radio",this.addEventListener("click",this.handleClick.bind(this)),this.addEventListener("keydown",this.handleKeydown.bind(this)))}render(){const t={checked:this.checked};return e`
1771
- <div class="container ${n(t)}" aria-hidden="true">
1833
+ */var Re;const Ne=Symbol("checked");let Ve=0;const Ue=function(e){var t;class i extends e{constructor(){super(...arguments),this[t]=""}get validity(){return this[Me](),this[$e].validity}get validationMessage(){return this[Me](),this[$e].validationMessage}get willValidate(){return this[Me](),this[$e].willValidate}checkValidity(){return this[Me](),this[$e].checkValidity()}reportValidity(){return this[Me](),this[$e].reportValidity()}setCustomValidity(e){this[Oe]=e,this[Me]()}requestUpdate(e,t,i){super.requestUpdate(e,t,i),this[Me]()}firstUpdated(e){super.firstUpdated(e),this[Me]()}[(t=Oe,Me)](){if(r)return;this[De]||(this[De]=this[Ce]());const{validity:e,validationMessage:t}=this[De].getValidity(),i=!!this[Oe],o=this[Oe]||t;this[$e].setValidity({...e,customError:i},o,this[Ee]()??void 0)}[Ce](){throw new Error("Implement [createValidator]")}[Ee](){throw new Error("Implement [getValidityAnchor]")}}return i}(function(e){class t extends e{get form(){return this[$e].form}get labels(){return this[$e].labels}get name(){return this.getAttribute("name")??""}set name(e){this.setAttribute("name",e)}get disabled(){return this.hasAttribute("disabled")}set disabled(e){this.toggleAttribute("disabled",e)}attributeChangedCallback(e,t,i){if("name"!==e&&"disabled"!==e)super.attributeChangedCallback(e,t,i);else{const i="disabled"===e?null!==t:t;this.requestUpdate(e,i)}}requestUpdate(e,t,i){super.requestUpdate(e,t,i),this[$e].setFormValue(this[Ae](),this[Le]())}[Ae](){throw new Error("Implement [getFormValue]")}[Le](){return this[Ae]()}formDisabledCallback(e){this.disabled=e}}return t.formAssociated=!0,a([P({noAccessor:!0})],t.prototype,"name",null),a([P({type:Boolean,noAccessor:!0})],t.prototype,"disabled",null),t}((qe=function(e){var t,i,o;class r extends e{constructor(){super(...arguments),this[t]=!0,this[i]=null,this[o]=!1}get[Fe](){return this[Te]}set[Fe](e){this[Fe]!==e&&(this[Te]=e,this[ze]())}connectedCallback(){super.connectedCallback(),this[ze]()}attributeChangedCallback(e,t,i){if("tabindex"===e){if(this.requestUpdate("tabIndex",Number(t??-1)),!this[Pe])return this.hasAttribute("tabindex")?void(this[je]=this.tabIndex):(this[je]=null,void this[ze]())}else super.attributeChangedCallback(e,t,i)}[(t=Te,i=je,o=Pe,ze)](){const e=this[Fe]?0:-1,t=this[je]??e;this[Pe]=!0,this.tabIndex=t,this[Pe]=!1}}return a([P({noAccessor:!0})],r.prototype,"tabIndex",void 0),r}(e),class extends qe{get[$e](){return this[Se]||(this[Se]=this.attachInternals()),this[Se]}})));var qe;class Ye extends Ue{get checked(){return this[Ne]}set checked(e){const t=this.checked;t!==e&&(this[Ne]=e,this.requestUpdate("checked",t),this.selectionController.handleCheckedChange())}constructor(){super(),this.maskId="cutout"+ ++Ve,this[Re]=!1,this.required=!1,this.value="on",this.selectionController=new Be(this),this.addController(this.selectionController),r||(this[$e].role="radio",this.addEventListener("click",this.handleClick.bind(this)),this.addEventListener("keydown",this.handleKeydown.bind(this)))}render(){const e={checked:this.checked};return t`
1834
+ <div class="container ${n(e)}" aria-hidden="true">
1772
1835
  <md-ripple
1773
1836
  part="ripple"
1774
1837
  .control=${this}
@@ -1790,19 +1853,19 @@ class Lt{constructor(t){this.getCurrentState=t,this.currentValidity={validity:{}
1790
1853
 
1791
1854
  <div class="touch-target"></div>
1792
1855
  </div>
1793
- `}updated(){this[kt].ariaChecked=String(this.checked)}async handleClick(t){this.disabled||(await 0,t.defaultPrevented||(xt(t)&&this.focus(),this.checked=!0,this.dispatchEvent(new Event("change",{bubbles:!0})),this.dispatchEvent(new InputEvent("input",{bubbles:!0,composed:!0}))))}async handleKeydown(t){await 0," "!==t.key||t.defaultPrevented||this.click()}[(Bt=Nt,Tt)](){return this.checked?this.value:null}[zt](){return String(this.checked)}formResetCallback(){this.checked=this.hasAttribute("checked")}formStateRestoreCallback(t){this.checked="true"===t}[St](){return new It((()=>this.selectionController?this.selectionController.controls:[this]))}[Ct](){return this.container}}a([A({type:Boolean})],Wt.prototype,"checked",null),a([A({type:Boolean})],Wt.prototype,"required",void 0),a([A()],Wt.prototype,"value",void 0),a([z(".container")],Wt.prototype,"container",void 0);
1856
+ `}updated(){this[$e].ariaChecked=String(this.checked)}async handleClick(e){this.disabled||(await 0,e.defaultPrevented||(we(e)&&this.focus(),this.checked=!0,this.dispatchEvent(new Event("change",{bubbles:!0})),this.dispatchEvent(new InputEvent("input",{bubbles:!0,composed:!0}))))}async handleKeydown(e){await 0," "!==e.key||e.defaultPrevented||this.click()}[(Re=Ne,Ae)](){return this.checked?this.value:null}[Le](){return String(this.checked)}formResetCallback(){this.checked=this.hasAttribute("checked")}formStateRestoreCallback(e){this.checked="true"===e}[Ce](){return new _e((()=>this.selectionController?this.selectionController.controls:[this]))}[Ee](){return this.container}}a([P({type:Boolean})],Ye.prototype,"checked",null),a([P({type:Boolean})],Ye.prototype,"required",void 0),a([P()],Ye.prototype,"value",void 0),a([A(".container")],Ye.prototype,"container",void 0);
1794
1857
  /**
1795
1858
  * @license
1796
1859
  * Copyright 2024 Google LLC
1797
1860
  * SPDX-License-Identifier: Apache-2.0
1798
1861
  */
1799
- const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20px);outline:none;position:relative;vertical-align:top;width:var(--md-radio-icon-size, 20px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;--md-ripple-hover-color: var(--md-radio-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-radio-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-radio-pressed-state-layer-opacity, 0.12)}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-radio-icon-size, 20px))/2)}.container{display:flex;height:100%;place-content:center;place-items:center;width:100%}md-focus-ring{height:44px;inset:unset;width:44px}.checked{--md-ripple-hover-color: var(--md-radio-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-radio-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-radio-selected-pressed-state-layer-opacity, 0.12)}.touch-target{height:48px;position:absolute;width:48px}:host([touch-target=none]) .touch-target{display:none}md-ripple{border-radius:50%;height:var(--md-radio-state-layer-size, 40px);inset:unset;width:var(--md-radio-state-layer-size, 40px)}.icon{fill:var(--md-radio-icon-color, var(--md-sys-color-on-surface-variant, #49454f));inset:0;position:absolute}.outer.circle{transition:fill 50ms linear}.inner.circle{opacity:0;transform-origin:center;transition:opacity 50ms linear}.checked .icon{fill:var(--md-radio-selected-icon-color, var(--md-sys-color-primary, #6750a4))}.checked .inner.circle{animation:inner-circle-grow 300ms cubic-bezier(0.05, 0.7, 0.1, 1);opacity:1}@keyframes inner-circle-grow{from{transform:scale(0)}to{transform:scale(1)}}:host([disabled]) .circle{animation-duration:0s;transition-duration:0s}:host(:hover) .icon{fill:var(--md-radio-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:focus-within) .icon{fill:var(--md-radio-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:active) .icon{fill:var(--md-radio-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host([disabled]) .icon{fill:var(--md-radio-disabled-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-unselected-icon-opacity, 0.38)}:host(:hover) .checked .icon{fill:var(--md-radio-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:focus-within) .checked .icon{fill:var(--md-radio-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:active) .checked .icon{fill:var(--md-radio-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4))}:host([disabled]) .checked .icon{fill:var(--md-radio-disabled-selected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-selected-icon-opacity, 0.38)}}@layer hcm{@media(forced-colors: active){.icon{fill:CanvasText}:host([disabled]) .icon{fill:GrayText;opacity:1}}}
1862
+ const We=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20px);outline:none;position:relative;vertical-align:top;width:var(--md-radio-icon-size, 20px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;--md-ripple-hover-color: var(--md-radio-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-radio-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-radio-pressed-state-layer-opacity, 0.12)}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-radio-icon-size, 20px))/2)}.container{display:flex;height:100%;place-content:center;place-items:center;width:100%}md-focus-ring{height:44px;inset:unset;width:44px}.checked{--md-ripple-hover-color: var(--md-radio-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-radio-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-radio-selected-pressed-state-layer-opacity, 0.12)}.touch-target{height:48px;position:absolute;width:48px}:host([touch-target=none]) .touch-target{display:none}md-ripple{border-radius:50%;height:var(--md-radio-state-layer-size, 40px);inset:unset;width:var(--md-radio-state-layer-size, 40px)}.icon{fill:var(--md-radio-icon-color, var(--md-sys-color-on-surface-variant, #49454f));inset:0;position:absolute}.outer.circle{transition:fill 50ms linear}.inner.circle{opacity:0;transform-origin:center;transition:opacity 50ms linear}.checked .icon{fill:var(--md-radio-selected-icon-color, var(--md-sys-color-primary, #6750a4))}.checked .inner.circle{animation:inner-circle-grow 300ms cubic-bezier(0.05, 0.7, 0.1, 1);opacity:1}@keyframes inner-circle-grow{from{transform:scale(0)}to{transform:scale(1)}}:host([disabled]) .circle{animation-duration:0s;transition-duration:0s}:host(:hover) .icon{fill:var(--md-radio-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:focus-within) .icon{fill:var(--md-radio-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:active) .icon{fill:var(--md-radio-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host([disabled]) .icon{fill:var(--md-radio-disabled-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-unselected-icon-opacity, 0.38)}:host(:hover) .checked .icon{fill:var(--md-radio-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:focus-within) .checked .icon{fill:var(--md-radio-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:active) .checked .icon{fill:var(--md-radio-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4))}:host([disabled]) .checked .icon{fill:var(--md-radio-disabled-selected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-selected-icon-opacity, 0.38)}}@layer hcm{@media(forced-colors: active){.icon{fill:CanvasText}:host([disabled]) .icon{fill:GrayText;opacity:1}}}
1800
1863
  `
1801
1864
  /**
1802
1865
  * @license
1803
1866
  * Copyright 2022 Google LLC
1804
1867
  * SPDX-License-Identifier: Apache-2.0
1805
- */;let Ut=class extends Wt{};Ut.styles=[Yt],Ut=a([d("md-radio")],Ut);let Ht=class extends t{constructor(){super(...arguments),this.name="radio-group",this.checked=!1,this.disabled=!1,this.error=!1}static{this.styles=o`
1868
+ */;let He=class extends Ye{};He.styles=[We],He=a([d("md-radio")],He);let Ge=class extends e{constructor(){super(...arguments),this.name="radio-group",this.checked=!1,this.disabled=!1,this.error=!1}static{this.styles=o`
1806
1869
  :host {
1807
1870
  font-family: "Graphik", sans-serif;
1808
1871
  }
@@ -1856,11 +1919,11 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
1856
1919
  color: #9FA3B3;
1857
1920
  cursor: default;
1858
1921
  }
1859
- `}render(){const t=[this.checked?"checked":"",this.error?"error":"",this.disabled?"disabled":""].join(" ");return e`
1922
+ `}render(){const e=[this.checked?"checked":"",this.error?"error":"",this.disabled?"disabled":""].join(" ");return t`
1860
1923
  <label class="radio-container ${this.disabled?"disabled":""}">
1861
1924
  <md-radio
1862
1925
  name=${this.name}
1863
- class=${t}
1926
+ class=${e}
1864
1927
  ?checked=${this.checked}
1865
1928
  ?disabled=${this.disabled}
1866
1929
  >
@@ -1868,350 +1931,339 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
1868
1931
 
1869
1932
  <span>${this.checked?"On":"Off"} ${this.error?"Error":""}</span>
1870
1933
  </label>
1871
- `}};a([A({type:String}),s("design:type",Object)],Ht.prototype,"name",void 0),a([A({type:Boolean}),s("design:type",Object)],Ht.prototype,"checked",void 0),a([A({type:Boolean}),s("design:type",Object)],Ht.prototype,"disabled",void 0),a([A({type:Boolean}),s("design:type",Object)],Ht.prototype,"error",void 0),Ht=a([d("custom-radio")],Ht);let Gt=class extends L{constructor(){super(...arguments),this.value="",this.defaultValue="",this.options=[],this.filterable=!0,this.isMobile=!1,this.highlightedIndex=-1,this._isCleared=!1,this.filteredOptions=[],this.filterValue="",this.isOpen=!1,this.mobileFilterValue="",this.debounceTimeout=null,this.updateResponsiveModeBound=this.updateResponsiveMode.bind(this)}static{this.styles=o`
1872
- ${X}
1873
- ${Q}
1874
- ${K}
1934
+ `}};a([P({type:String}),s("design:type",Object)],Ge.prototype,"name",void 0),a([P({type:Boolean}),s("design:type",Object)],Ge.prototype,"checked",void 0),a([P({type:Boolean}),s("design:type",Object)],Ge.prototype,"disabled",void 0),a([P({type:Boolean}),s("design:type",Object)],Ge.prototype,"error",void 0),Ge=a([d("custom-radio")],Ge);let Xe=class extends L{constructor(){super(...arguments),this.value="",this.defaultValue="",this.options=[],this.filterable=!0,this.isMobile=!1,this.highlightedIndex=-1,this._isCleared=!1,this.filteredOptions=[],this.filterValue="",this.isOpen=!1,this.mobileFilterValue="",this.debounceTimeout=null,this.updateResponsiveModeBound=this.updateResponsiveMode.bind(this)}static{this.styles=[J,o`
1935
+ ${K}
1936
+ ${Q}
1937
+ ${X}
1938
+
1939
+ /* --- Own Error Styles --- */
1940
+ :host([error]) .input-container:not(.open) .input-wrapper:hover {
1941
+ box-shadow: 0px 0px 0px 4px #E00F0F1A !important;
1942
+ }
1875
1943
 
1876
- /* --- Own Error Styles --- */
1877
- :host([error]) .input-container:not(.open) .input-wrapper:hover {
1878
- box-shadow: 0px 0px 0px 4px #E00F0F1A !important;
1879
- }
1944
+ :host([error]) .input-container.open:not(.mobile) .input-wrapper {
1945
+ border-bottom-left-radius: 0;
1946
+ border-bottom-right-radius: 0;
1947
+ border: 1px solid var(--ui-negative, red) !important;
1948
+ border-bottom: 1px solid transparent !important;
1949
+ }
1880
1950
 
1881
- :host([error]) .input-container.open:not(.mobile) .input-wrapper {
1882
- border-bottom-left-radius: 0;
1883
- border-bottom-right-radius: 0;
1884
- border: 1px solid var(--ui-negative, red) !important;
1885
- border-bottom: 1px solid transparent !important;
1886
- }
1951
+ :host([error]) .input-container:not(.mobile) .options-list {
1952
+ border: 1px solid var(--ui-negative, red) !important;
1953
+ border-top: none !important;
1954
+ border-radius: 0 0 4px 4px;
1955
+ }
1887
1956
 
1888
- :host([error]) .input-container:not(.mobile) .options-list {
1889
- border: 1px solid var(--ui-negative, red) !important;
1890
- border-top: none !important;
1891
- border-radius: 0 0 4px 4px;
1892
- }
1957
+ /* Estilos para el estado disabled */
1958
+ .input-wrapper.disabled .filter-input, .input-wrapper.disabled .filter-input, .input-wrapper.disabled .filter-fake {
1959
+ background-color: var(--secondary-color-10);
1960
+ color: #9FA3B3;
1961
+ cursor: default;
1962
+ }
1893
1963
 
1894
- /* Estilos para el estado disabled */
1895
- .input-wrapper.disabled .filter-input, .input-wrapper.disabled .filter-input, .input-wrapper.disabled .filter-fake {
1896
- background-color: var(--secondary-color-10);
1897
- color: #9FA3B3;
1898
- cursor: default;
1899
- }
1964
+ .input-wrapper.disabled .icon-button,
1965
+ .input-wrapper.disabled .icon-button randstad-icon,
1966
+ .input-wrapper.disabled .icon-button .close-icon {
1967
+ color: #9FA3B3;
1968
+ cursor: default;
1969
+ }
1900
1970
 
1901
- .input-wrapper.disabled .icon-button,
1902
- .input-wrapper.disabled .icon-button randstad-icon,
1903
- .input-wrapper.disabled .icon-button .close-icon {
1904
- color: #9FA3B3;
1905
- cursor: default;
1906
- }
1971
+ /* Y si tienes un icono seleccionado que también debe cambiar de color */
1972
+ .input-wrapper.disabled .icon-selected svg {
1973
+ fill: #9FA3B3;
1974
+ }
1907
1975
 
1908
- /* Y si tienes un icono seleccionado que también debe cambiar de color */
1909
- .input-wrapper.disabled .icon-selected svg {
1910
- fill: #9FA3B3;
1911
- }
1976
+ .input-wrapper .icon-button .close-icon {
1977
+ color: var(--primary-color);
1978
+ }
1912
1979
 
1913
- .input-wrapper .icon-button .close-icon {
1914
- color: var(--primary-color);
1915
- }
1980
+ .select-container {
1981
+ display: flex;
1982
+ flex-direction: column;
1983
+ gap: 8px;
1984
+ width: 100%;
1985
+ }
1916
1986
 
1917
- .select-container {
1918
- display: flex;
1919
- flex-direction: column;
1920
- gap: 8px;
1921
- width: 100%;
1922
- }
1987
+ .input-container.focused:not(.open):not(.mobile) .input-wrapper {
1988
+ border: 1px solid var(--primary-color);
1989
+ border-radius: 4px;
1990
+ box-shadow: none;
1991
+ z-index: 11;
1992
+ }
1923
1993
 
1924
- .input-container.focused:not(.open):not(.mobile) .input-wrapper {
1925
- border: 1px solid var(--primary-color);
1926
- border-radius: 4px;
1927
- box-shadow: none;
1928
- z-index: 11;
1929
- }
1994
+ .input-container.focused:not(.open):not(.mobile) .input-wrapper:hover {
1995
+ box-shadow: none;
1996
+ }
1930
1997
 
1931
- .input-container.focused:not(.open):not(.mobile) .input-wrapper:hover {
1932
- box-shadow: none;
1933
- }
1998
+ :host(:not([error])) .input-container.open:not(.mobile) {
1999
+ border-radius: 4px;
2000
+ border-bottom-left-radius: 0;
2001
+ border-bottom-right-radius: 0;
2002
+ }
1934
2003
 
1935
- :host(:not([error])) .input-container.open:not(.mobile) {
1936
- border-radius: 4px;
1937
- border-bottom-left-radius: 0;
1938
- border-bottom-right-radius: 0;
1939
- }
2004
+ :host(:not([error])) .input-container.open:not(.mobile) .input-wrapper {
2005
+ border: 1px solid var(--primary-color);
2006
+ border-top-left-radius: 4px;
2007
+ border-top-right-radius: 4px;
2008
+ border-bottom-left-radius: 0;
2009
+ border-bottom-right-radius: 0;
2010
+ border-bottom: 1px solid transparent;
2011
+ box-shadow: none;
2012
+ z-index: 11;
2013
+ }
1940
2014
 
1941
- :host(:not([error])) .input-container.open:not(.mobile) .input-wrapper {
1942
- border: 1px solid var(--primary-color);
1943
- border-top-left-radius: 4px;
1944
- border-top-right-radius: 4px;
1945
- border-bottom-left-radius: 0;
1946
- border-bottom-right-radius: 0;
1947
- border-bottom: 1px solid transparent;
1948
- box-shadow: none;
1949
- z-index: 11;
1950
- }
2015
+ :host(:not([error])) .input-wrapper:hover {
2016
+ box-shadow: 0px 0px 0px 4px #0F19411A;
2017
+ }
1951
2018
 
1952
- :host(:not([error])) .input-wrapper:hover {
1953
- box-shadow: 0px 0px 0px 4px #0F19411A;
1954
- }
2019
+ :host .input-container.open:not(.mobile)::after {
2020
+ content: '';
2021
+ position: absolute;
2022
+ top: calc(100% - 1px);
2023
+ left: 20px;
2024
+ right: 20px;
2025
+ height: 1px;
2026
+ background-color: var(--gray-20);
2027
+ z-index: 10;
2028
+ }
1955
2029
 
1956
- :host .input-container.open:not(.mobile)::after {
1957
- content: '';
1958
- position: absolute;
1959
- top: calc(100% - 1px);
1960
- left: 20px;
1961
- right: 20px;
1962
- height: 1px;
1963
- background-color: var(--gray-20);
1964
- z-index: 10;
1965
- }
2030
+ .input-wrapper {
2031
+ border: 1px solid var(--secondary-color-10);
2032
+ border-radius: 4px;
2033
+ overflow: hidden;
2034
+ display: flex;
2035
+ align-items: center;
2036
+ width: 100%;
2037
+ transition: box-shadow 0.2s ease-in-out;
2038
+ background-color: white;
2039
+ }
1966
2040
 
1967
- .input-wrapper {
1968
- border: 1px solid var(--secondary-color-10);
1969
- border-radius: 4px;
1970
- overflow: hidden;
1971
- display: flex;
1972
- align-items: center;
1973
- width: 100%;
1974
- transition: box-shadow 0.2s ease-in-out;
1975
- background-color: white;
1976
- }
2041
+ .mobile-modal .filter-input {
2042
+ border-bottom: 1px solid var(--gray-20);
2043
+ }
1977
2044
 
1978
- .mobile-modal .filter-input {
1979
- border-bottom: 1px solid var(--gray-20);
1980
- }
2045
+ .filter-input {
2046
+ ${R};
2047
+ padding: 16px;
2048
+ padding-right: 40px;
2049
+ border: none;
2050
+ outline: none;
2051
+ width: 100%;
2052
+ box-sizing: border-box;
2053
+ background: white;
2054
+ cursor: pointer;
2055
+ color: var(--secondary-color);
2056
+ flex-grow: 1;
2057
+ }
1981
2058
 
1982
- .filter-input {
1983
- ${N};
1984
- padding: 16px;
1985
- padding-right: 40px;
1986
- border: none;
1987
- outline: none;
1988
- width: 100%;
1989
- box-sizing: border-box;
1990
- background: white;
1991
- cursor: pointer;
1992
- color: var(--secondary-color);
1993
- flex-grow: 1;
1994
- }
2059
+ .filter-input,
2060
+ .filter-fake,
2061
+ .input-wrapper,
2062
+ .mobile-modal {
2063
+ -webkit-tap-highlight-color: transparent !important;
2064
+ }
1995
2065
 
1996
- .filter-input,
1997
- .filter-fake,
1998
- .input-wrapper,
1999
- .mobile-modal {
2000
- -webkit-tap-highlight-color: transparent !important;
2001
- }
2066
+ .filter-input::placeholder {
2067
+ ${R};
2068
+ color: var(--secondary-color-40);
2069
+ }
2002
2070
 
2003
- .filter-input::placeholder {
2004
- ${N};
2005
- color: var(--secondary-color-40);
2006
- }
2071
+ .icon-button {
2072
+ position: absolute;
2073
+ right: 10px;
2074
+ top: 50%;
2075
+ transform: translateY(-50%);
2076
+ background: transparent;
2077
+ border: none;
2078
+ cursor: pointer;
2079
+ display: flex;
2080
+ align-items: center;
2081
+ justify-content: center;
2082
+ width: 24px;
2083
+ height: 24px;
2084
+ padding: 0;
2085
+ }
2007
2086
 
2008
- .icon-button {
2009
- position: absolute;
2010
- right: 10px;
2011
- top: 50%;
2012
- transform: translateY(-50%);
2013
- background: transparent;
2014
- border: none;
2015
- cursor: pointer;
2016
- display: flex;
2017
- align-items: center;
2018
- justify-content: center;
2019
- width: 24px;
2020
- height: 24px;
2021
- padding: 0;
2022
- }
2087
+ randstad-icon {
2088
+ width: 24px;
2089
+ height: 24px;
2090
+ color: var(--primary-color);
2091
+ }
2023
2092
 
2024
- randstad-icon {
2025
- width: 24px;
2026
- height: 24px;
2027
- color: var(--primary-color);
2028
- }
2093
+ .options-list {
2094
+ width: 100%;
2095
+ position: absolute;
2096
+ top: 99%;
2097
+ left: 0;
2098
+ right: 0;
2099
+ max-height: 200px;
2100
+ overflow-y: auto;
2101
+ border: 1px solid var(--primary-color);
2102
+ border-top: none;
2103
+ border-radius: 0 0 4px 4px;
2104
+ background: white;
2105
+ list-style: none;
2106
+ margin: 0;
2107
+ padding: 0;
2108
+ z-index: 10;
2109
+ }
2029
2110
 
2030
- .options-list {
2031
- width: 100%;
2032
- position: absolute;
2033
- top: 99%;
2034
- left: 0;
2035
- right: 0;
2036
- max-height: 200px;
2037
- overflow-y: auto;
2038
- border: 1px solid var(--primary-color);
2039
- border-top: none;
2040
- border-radius: 0 0 4px 4px;
2041
- background: white;
2042
- list-style: none;
2043
- margin: 0;
2044
- padding: 0;
2045
- z-index: 10;
2046
- }
2111
+ .options-list li {
2112
+ ${R};
2113
+ padding: 8px 16px 8px 16px;
2114
+ cursor: pointer;
2115
+ color: var(--secondary-color-80);
2116
+ display: flex;
2117
+ align-items: center;
2118
+ }
2047
2119
 
2048
- .options-list li {
2049
- ${N};
2050
- padding: 8px 16px 8px 16px;
2051
- cursor: pointer;
2052
- color: var(--secondary-color-80);
2053
- display: flex;
2054
- align-items: center;
2055
- }
2120
+ .options-list li.highlighted {
2121
+ background-color: var(--primary-color-10);
2122
+ }
2056
2123
 
2057
- .options-list li.highlighted {
2058
- background-color: var(--primary-color-10);
2059
- }
2124
+ .mobile-modal {
2125
+ position: fixed;
2126
+ bottom: 0;
2127
+ left: 0;
2128
+ right: 0;
2129
+ background-color: white;
2130
+ z-index: 1000;
2131
+ border-radius: 12px 12px 0 0;
2132
+ box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.15);
2133
+ display: flex;
2134
+ flex-direction: column;
2135
+ padding: 0px;
2136
+ animation: slideUp 0.5s ease-out;
2137
+ max-height: 80dvh;
2138
+ overflow-y: auto;
2139
+ }
2060
2140
 
2061
- .mobile-modal {
2062
- position: fixed;
2063
- bottom: 0;
2064
- left: 0;
2065
- right: 0;
2066
- background-color: white;
2067
- z-index: 1000;
2068
- border-radius: 12px 12px 0 0;
2069
- box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.15);
2070
- display: flex;
2071
- flex-direction: column;
2072
- padding: 0px;
2073
- gap: 12px;
2074
- animation: slideUp 0.5s ease-out;
2075
- max-height: 80vh;
2076
- overflow-y: auto;
2077
- }
2141
+ .mobile-modal .options-list {
2142
+ position: static;
2143
+ max-height: none;
2144
+ border: none;
2145
+ box-shadow: none;
2146
+ }
2078
2147
 
2079
- .mobile-modal .options-list {
2080
- position: static;
2081
- max-height: none;
2082
- border: none;
2083
- box-shadow: none;
2084
- }
2148
+ .mobile-modal .modal-input-container {
2149
+ position: relative;
2150
+ }
2085
2151
 
2086
- .mobile-modal .modal-input-container {
2087
- position: relative;
2088
- }
2152
+ .mobile-modal .modal-close-button {
2153
+ position: absolute;
2154
+ top: 50%;
2155
+ right: 12px;
2156
+ transform: translateY(-50%);
2157
+ background: transparent;
2158
+ border: none;
2159
+ cursor: pointer;
2160
+ padding: 4px;
2161
+ display: flex;
2162
+ align-items: center;
2163
+ justify-content: center;
2164
+ }
2089
2165
 
2090
- .mobile-modal .modal-close-button {
2091
- position: absolute;
2092
- top: 50%;
2093
- right: 12px;
2094
- transform: translateY(-50%);
2095
- background: transparent;
2096
- border: none;
2097
- cursor: pointer;
2098
- padding: 4px;
2099
- display: flex;
2100
- align-items: center;
2101
- justify-content: center;
2102
- }
2166
+ .mobile-modal .modal-close-button randstad-icon {
2167
+ width: 20px;
2168
+ height: 20px;
2169
+ color: var(--secondary-color-60);
2170
+ }
2103
2171
 
2104
- .mobile-modal .modal-close-button randstad-icon {
2105
- width: 20px;
2106
- height: 20px;
2107
- color: var(--secondary-color-60);
2108
- }
2172
+ .mobile-backdrop {
2173
+ position: fixed;
2174
+ inset: 0;
2175
+ background-color: rgba(0, 0, 0, 0.4);
2176
+ z-index: 999;
2177
+ display: flex;
2178
+ align-items: flex-end;
2179
+ }
2109
2180
 
2110
- .mobile-backdrop {
2111
- position: fixed;
2112
- inset: 0;
2113
- background-color: rgba(0, 0, 0, 0.4);
2114
- z-index: 999;
2115
- display: flex;
2116
- align-items: flex-end;
2117
- }
2118
-
2119
- .filter-fake {
2120
- ${N};
2121
- padding: 15px;
2122
- padding-right: 40px;
2123
- width: 100%;
2124
- background: white;
2125
- box-sizing: border-box;
2126
- cursor: pointer;
2127
- color: var(--secondary-color-80);
2128
- white-space: nowrap;
2129
- overflow: hidden;
2130
- text-overflow: ellipsis;
2131
- display: flex;
2132
- align-items: center;
2133
- }
2134
-
2135
- @keyframes slideUp {
2136
- from {
2137
- transform: translateY(100%);
2138
- }
2139
- to {
2140
- transform: translateY(0);
2181
+ .filter-fake {
2182
+ ${R};
2183
+ padding: 15px;
2184
+ padding-right: 40px;
2185
+ width: 100%;
2186
+ background: white;
2187
+ box-sizing: border-box;
2188
+ cursor: pointer;
2189
+ color: var(--secondary-color-80);
2190
+ white-space: nowrap;
2191
+ overflow: hidden;
2192
+ text-overflow: ellipsis;
2193
+ display: flex;
2194
+ align-items: center;
2141
2195
  }
2142
- }
2143
-
2144
- .options-list::-webkit-scrollbar {
2145
- width: 6px;
2146
- }
2147
-
2148
- .options-list::-webkit-scrollbar-track {
2149
- background: transparent;
2150
- }
2151
-
2152
- .options-list::-webkit-scrollbar-thumb {
2153
- background-color: var(--secondary-color-30);
2154
- border-radius: 4px;
2155
- }
2156
2196
 
2157
- .options-list::-webkit-scrollbar-button {
2158
- display: none;
2159
- }
2160
-
2161
- /* Estilos por defecto del icon para mobile */
2162
- .icon-selected {
2163
- width: 24px;
2164
- height: auto;
2165
- margin-left: 4px;
2166
- padding-right: 12px;
2167
- border-right: 1px solid var(--secondary-color-20);
2168
- display: flex;
2169
- align-items: center;
2170
- justify-content: center;
2171
- flex-shrink: 0;
2172
- }
2173
-
2174
- .value-text {
2175
- margin-left: 8px; /* Aumentamos el margen para separar el texto en mobile */
2176
- }
2197
+ @keyframes slideUp {
2198
+ from {
2199
+ transform: translateY(100%);
2200
+ }
2201
+ to {
2202
+ transform: translateY(0);
2203
+ }
2204
+ }
2177
2205
 
2178
- /*
2179
- * Media query para aplicar estilos de escritorio (a partir de 941px)
2180
- */
2181
- @media (min-width: 941px) {
2206
+ /* Estilos por defecto del icon para mobile */
2182
2207
  .icon-selected {
2183
- /* Estilos de escritorio para el icono, se anulan los de mobile */
2184
- margin-left: 16px;
2185
- padding-right: 18px;
2208
+ width: 24px;
2209
+ height: auto;
2210
+ margin-left: 4px;
2211
+ padding-right: 12px;
2212
+ border-right: 1px solid var(--secondary-color-20);
2213
+ display: flex;
2214
+ align-items: center;
2215
+ justify-content: center;
2216
+ flex-shrink: 0;
2186
2217
  }
2187
-
2218
+
2188
2219
  .value-text {
2189
- /* En escritorio no necesitamos este margen, lo reseteamos */
2190
- margin-left: 0;
2220
+ margin-left: 8px; /* Aumentamos el margen para separar el texto en mobile */
2191
2221
  }
2192
- }
2193
2222
 
2194
- .icon-selected svg,
2195
- .icon-list svg {
2196
- display: block;
2197
- width: 100%;
2198
- height: auto;
2199
- }
2223
+ /*
2224
+ * Media query para aplicar estilos de escritorio (a partir de 941px)
2225
+ */
2226
+ @media (min-width: 941px) {
2227
+ .icon-selected {
2228
+ /* Estilos de escritorio para el icono, se anulan los de mobile */
2229
+ margin-left: 16px;
2230
+ padding-right: 18px;
2231
+ }
2232
+
2233
+ .value-text {
2234
+ /* En escritorio no necesitamos este margen, lo reseteamos */
2235
+ margin-left: 0;
2236
+ }
2237
+ }
2200
2238
 
2201
- .icon-list {
2202
- width: 24px;
2203
- height: auto;
2204
- margin-right: 8px;
2205
- flex-shrink: 0;
2206
- }
2207
- `}update(t){if(t.has("options")&&(this.filteredOptions=[...this.options]),t.has("defaultValue")||t.has("options")||t.has("value")){if(this._isCleared)return void super.update(t);const e=this.value||this.defaultValue,i=this.options.find((t=>"string"==typeof t?t===e:t.value===e));i?(this.filterValue="string"==typeof i?i:i.label,this.value="string"==typeof i?i:i.value):(this.filterValue="",this.value="")}super.update(t)}connectedCallback(){super.connectedCallback(),this.updateResponsiveMode(),window.addEventListener("resize",this.updateResponsiveModeBound),document.addEventListener("click",this.handleClickOutside.bind(this))}disconnectedCallback(){window.removeEventListener("resize",this.updateResponsiveModeBound),document.removeEventListener("click",this.handleClickOutside.bind(this)),super.disconnectedCallback()}updateResponsiveMode(){this.isMobile=window.innerWidth<=940}handleInputClick(t){this.isMobile&&(this.mobileFilterValue=""),this.disabled||(this.isOpen=!this.isOpen,this.requestUpdate())}handleInput(t){if(!this.filterable)return;this._isCleared=!1;const e=t.target.value,i=this.maxLength?e.slice(0,this.maxLength).toLowerCase():e.toLowerCase();this.filterValue=i,this.value="",this.filteredOptions=this.options.filter((t=>("string"==typeof t?t:t.label).toLowerCase().includes(this.filterValue.toLowerCase()))),this.isOpen=!0,this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=window.setTimeout((()=>{this.filterValue.length>2&&this.dispatchEvent(new CustomEvent("filter-location",{detail:{value:this.filterValue},bubbles:!0,composed:!0}))}),300),this.requestUpdate()}handleMobileInput(t){this._isCleared=!1;const e=t.target.value,i=this.maxLength?e.slice(0,this.maxLength).toLowerCase():e.toLowerCase();this.mobileFilterValue=i,this.value="",this.filteredOptions=this.options.filter((t=>("string"==typeof t?t:t.label).toLowerCase().includes(i))),this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=window.setTimeout((()=>{i.length>2&&this.dispatchEvent(new CustomEvent("filter-location",{detail:{value:i},bubbles:!0,composed:!0}))}),300)}handleSelect(t){this._isCleared=!1;const e="string"==typeof t?t:t.value;this.dispatchEvent(new CustomEvent("option-selected",{detail:{value:e},bubbles:!0,composed:!0})),this.filterValue="string"==typeof t?t:t.label,this.value=e,this.isOpen=!1,this.requestUpdate()}handleIconClick(){this.disabled||(this.filterable&&this.filterValue?(this._isCleared=!0,this.filterValue="",this.value="",this.filteredOptions=[...this.options],this.dispatchEvent(new CustomEvent("option-selected",{detail:{value:""},bubbles:!0,composed:!0})),this.isOpen=!1):this.isOpen=!this.isOpen,this.requestUpdate())}handleClickOutside(t){const e=t.target;e instanceof Node&&(this.contains(e)||(this.isOpen=!1,this.requestUpdate()))}handleKeyDown(t){const{key:e}=t;if(!this.isOpen&&("Enter"===e||" "===e))return t.preventDefault(),void(this.isOpen=!0);if(this.isOpen)if("ArrowDown"===e)t.preventDefault(),this.highlightedIndex=Math.min(this.highlightedIndex+1,this.filteredOptions.length-1),this.requestUpdate();else if("ArrowUp"===e)t.preventDefault(),this.highlightedIndex=Math.max(this.highlightedIndex-1,0),this.requestUpdate();else if("Enter"===e){t.preventDefault();const e=this.filteredOptions[this.highlightedIndex];e&&this.handleSelect(e)}else"Escape"===e&&(t.preventDefault(),this.isOpen=!1)}renderSelectedIcon(){const t=this.options.find((t=>"string"==typeof t?t===this.value:t.value===this.value));return t&&"string"!=typeof t&&t.icon&&"string"==typeof t.icon?e`<span class="icon-selected" .innerHTML="${t.icon}"></span>`:i}renderOptionIcon(t){return t&&"string"==typeof t?e`<span class="icon-list" .innerHTML="${t}"></span>`:i}render(){const t=this.isMobile;return e`
2239
+ .icon-selected svg,
2240
+ .icon-list svg {
2241
+ display: block;
2242
+ width: 100%;
2243
+ height: auto;
2244
+ }
2245
+
2246
+ .icon-list {
2247
+ width: 24px;
2248
+ height: auto;
2249
+ margin-right: 8px;
2250
+ flex-shrink: 0;
2251
+ }
2252
+ `]}update(e){if(e.has("options")&&(this.filteredOptions=[...this.options]),e.has("defaultValue")||e.has("options")||e.has("value")){if(this._isCleared)return void super.update(e);const t=this.value||this.defaultValue,i=this.options.find((e=>"string"==typeof e?e===t:e.value===t));i?(this.filterValue="string"==typeof i?i:i.label,this.value="string"==typeof i?i:i.value):(this.filterValue="",this.value="")}super.update(e)}connectedCallback(){super.connectedCallback(),this.updateResponsiveMode(),window.addEventListener("resize",this.updateResponsiveModeBound),document.addEventListener("click",this.handleClickOutside.bind(this))}disconnectedCallback(){window.removeEventListener("resize",this.updateResponsiveModeBound),document.removeEventListener("click",this.handleClickOutside.bind(this)),super.disconnectedCallback()}updateResponsiveMode(){this.isMobile=window.innerWidth<=940}handleInputClick(e){this.isMobile&&(this.mobileFilterValue=""),this.disabled||(this.isOpen=!this.isOpen,this.requestUpdate())}handleInput(e){if(!this.filterable)return;this._isCleared=!1;const t=e.target.value,i=this.maxLength?t.slice(0,this.maxLength).toLowerCase():t.toLowerCase();this.filterValue=i,this.value="",this.filteredOptions=this.options.filter((e=>("string"==typeof e?e:e.label).toLowerCase().includes(this.filterValue.toLowerCase()))),this.isOpen=!0,this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=window.setTimeout((()=>{this.filterValue.length>2&&this.dispatchEvent(new CustomEvent("filter-location",{detail:{value:this.filterValue},bubbles:!0,composed:!0}))}),300),this.requestUpdate()}handleMobileInput(e){this._isCleared=!1;const t=e.target.value,i=this.maxLength?t.slice(0,this.maxLength).toLowerCase():t.toLowerCase();this.mobileFilterValue=i,this.value="",this.filteredOptions=this.options.filter((e=>("string"==typeof e?e:e.label).toLowerCase().includes(i))),this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=window.setTimeout((()=>{i.length>2&&this.dispatchEvent(new CustomEvent("filter-location",{detail:{value:i},bubbles:!0,composed:!0}))}),300)}handleSelect(e){this._isCleared=!1;const t="string"==typeof e?e:e.value;this.dispatchEvent(new CustomEvent("option-selected",{detail:{value:t},bubbles:!0,composed:!0})),this.filterValue="string"==typeof e?e:e.label,this.value=t,this.isOpen=!1,this.requestUpdate()}handleIconClick(){this.disabled||(this.filterable&&this.filterValue?(this._isCleared=!0,this.filterValue="",this.value="",this.filteredOptions=[...this.options],this.dispatchEvent(new CustomEvent("option-selected",{detail:{value:""},bubbles:!0,composed:!0})),this.isOpen=!1):this.isOpen=!this.isOpen,this.requestUpdate())}handleClickOutside(e){const t=e.target;t instanceof Node&&(this.contains(t)||(this.isOpen=!1,this.requestUpdate()))}handleKeyDown(e){const{key:t}=e;if(!this.isOpen&&("Enter"===t||" "===t))return e.preventDefault(),void(this.isOpen=!0);if(this.isOpen)if("ArrowDown"===t)e.preventDefault(),this.highlightedIndex=Math.min(this.highlightedIndex+1,this.filteredOptions.length-1),this.requestUpdate();else if("ArrowUp"===t)e.preventDefault(),this.highlightedIndex=Math.max(this.highlightedIndex-1,0),this.requestUpdate();else if("Enter"===t){e.preventDefault();const t=this.filteredOptions[this.highlightedIndex];t&&this.handleSelect(t)}else"Escape"===t&&(e.preventDefault(),this.isOpen=!1)}renderSelectedIcon(){const e=this.options.find((e=>"string"==typeof e?e===this.value:e.value===this.value));return e&&"string"!=typeof e&&e.icon&&"string"==typeof e.icon?t`<span class="icon-selected" .innerHTML="${e.icon}"></span>`:i}renderOptionIcon(e){return e&&"string"==typeof e?t`<span class="icon-list" .innerHTML="${e}"></span>`:i}render(){const e=this.isMobile,o=t`
2253
+ <randstad-icon
2254
+ name="${this.isOpen&&this.filteredOptions.length>0?"arrow_up":"arrow_down"}"
2255
+ size="24px"
2256
+ .color=${"var( --primary-color )"}
2257
+ >
2258
+ </randstad-icon>
2259
+ `;return t`
2208
2260
  <div class="select-container" style="${this.labelColor?` --label-color: ${this.labelColor}`:""}">
2209
2261
  ${this.renderLabelContainer()}
2210
2262
 
2211
2263
  <div class="list-container">
2212
- <div class="input-container ${this.isOpen?"focused":""} ${this.isOpen&&this.filteredOptions.length>0?"open":""} ${t?"mobile":""}">
2264
+ <div class="input-container ${this.isOpen?"focused":""} ${this.isOpen&&this.filteredOptions.length>0?"open":""} ${e?"mobile":""}">
2213
2265
  <div class="input-wrapper ${this.disabled?"disabled":""}">
2214
- ${t?e`
2266
+ ${e?t`
2215
2267
  <div
2216
2268
  class="filter-fake"
2217
2269
  @click="${this.handleInputClick}"
@@ -2226,7 +2278,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2226
2278
  ${this.renderSelectedIcon()}
2227
2279
  <span class="value-text">${this.filterValue||this.placeholder}</span>
2228
2280
  </div>
2229
- `:e`
2281
+ `:t`
2230
2282
  ${this.renderSelectedIcon()}
2231
2283
 
2232
2284
  <input
@@ -2247,18 +2299,18 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2247
2299
  @click="${this.handleIconClick}"
2248
2300
  ?disabled="${this.disabled}"
2249
2301
  >
2250
- ${this.filterable&&this.filterValue?e`<randstad-icon name="close" size="24px"></randstad-icon>`:this.isOpen&&this.filteredOptions.length>0?e`<randstad-icon name="arrow_up" size="24px"></randstad-icon>`:e`<randstad-icon name="arrow_down" size="24px"></randstad-icon>`}
2302
+ ${this.filterable&&this.filterValue?t`<randstad-icon name="close" size="24px"></randstad-icon>`:o}
2251
2303
  </button>
2252
2304
  </div>
2253
2305
 
2254
- ${!t&&this.isOpen&&this.filteredOptions.length>0?e`
2306
+ ${!e&&this.isOpen&&this.filteredOptions.length>0?t`
2255
2307
  <ul class="options-list">
2256
- ${this.filteredOptions.map(((t,i)=>{const o="string"==typeof t?t:t.label,r="object"==typeof t&&t.disabled,n="object"==typeof t?t.icon:void 0;return e`
2308
+ ${this.filteredOptions.map(((e,i)=>{const o="string"==typeof e?e:e.label,r="object"==typeof e&&e.disabled,n="object"==typeof e?e.icon:void 0;return t`
2257
2309
  <li
2258
2310
  class="${r?"disabled":""} ${i===this.highlightedIndex?"highlighted":""}"
2259
2311
  role="option"
2260
2312
  aria-selected="${i===this.highlightedIndex}"
2261
- @click="${()=>{r||this.handleSelect(t)}}"
2313
+ @click="${()=>{r||this.handleSelect(e)}}"
2262
2314
  >
2263
2315
  ${this.renderOptionIcon(n)}
2264
2316
  ${o}
@@ -2274,14 +2326,14 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2274
2326
  ${this.renderHelper()}
2275
2327
  </div>
2276
2328
 
2277
- ${t&&this.isOpen?e`
2329
+ ${e&&this.isOpen?t`
2278
2330
  <div class="mobile-backdrop" @click="${()=>{this.isOpen=!1}}">
2279
- <div class="mobile-modal" @click="${t=>t.stopPropagation()}">
2331
+ <div class="mobile-modal" @click="${e=>e.stopPropagation()}">
2280
2332
  <div class="modal-input-container">
2281
2333
  <input
2282
2334
  class="filter-input"
2283
2335
  .value="${this.mobileFilterValue||""}"
2284
- @input=${t=>this.handleMobileInput(t)}
2336
+ @input=${e=>this.handleMobileInput(e)}
2285
2337
  placeholder="${this.placeholder}"
2286
2338
  maxlength="${this.maxLength??""}"
2287
2339
  />
@@ -2291,12 +2343,12 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2291
2343
  </div>
2292
2344
 
2293
2345
  <ul class="options-list">
2294
- ${this.filteredOptions.map(((t,i)=>{const o="string"==typeof t?t:t.label,r="object"==typeof t&&t.disabled,n="object"==typeof t?t.icon:void 0;return e`
2346
+ ${this.filteredOptions.map(((e,i)=>{const o="string"==typeof e?e:e.label,r="object"==typeof e&&e.disabled,n="object"==typeof e?e.icon:void 0;return t`
2295
2347
  <li
2296
2348
  class="${r?"disabled":""} ${i===this.highlightedIndex?"highlighted":""}"
2297
2349
  role="option"
2298
2350
  aria-selected="${i===this.highlightedIndex}"
2299
- @click="${()=>{r||this.handleSelect(t)}}"
2351
+ @click="${()=>{r||this.handleSelect(e)}}"
2300
2352
  >
2301
2353
  ${this.renderOptionIcon(n)}
2302
2354
  ${o}
@@ -2306,12 +2358,12 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2306
2358
  </div>
2307
2359
  </div>
2308
2360
  `:i}
2309
- `}};a([A({type:Object}),s("design:type",Object)],Gt.prototype,"value",void 0),a([A({type:String,attribute:"default-value"}),s("design:type",Object)],Gt.prototype,"defaultValue",void 0),a([A({type:Array}),s("design:type",Array)],Gt.prototype,"options",void 0),a([A({type:Boolean}),s("design:type",Object)],Gt.prototype,"filterable",void 0),a([A({type:Number}),s("design:type",Number)],Gt.prototype,"maxLength",void 0),a([T(),s("design:type",Boolean)],Gt.prototype,"isMobile",void 0),a([T(),s("design:type",Object)],Gt.prototype,"highlightedIndex",void 0),a([T(),s("design:type",Boolean)],Gt.prototype,"_isCleared",void 0),a([T(),s("design:type",Array)],Gt.prototype,"filteredOptions",void 0),a([T(),s("design:type",Object)],Gt.prototype,"filterValue",void 0),a([T(),s("design:type",Object)],Gt.prototype,"isOpen",void 0),a([T(),s("design:type",Object)],Gt.prototype,"mobileFilterValue",void 0),Gt=a([d("filterable-select")],Gt);const Kt=new CSSStyleSheet;Kt.replaceSync("\n @font-face {\n font-family: 'Graphik';\n src: url('/src/assets/font/Graphik-Regular.woff2') format('woff2'),\n url('/src/assets/font/Graphik-Regular.woff') format('woff'),\n url('/src/assets/font/Graphik-Regular.eot') format('embedded-opentype');\n font-weight: normal;\n font-style: normal;\n }\n\n .body-s {\n font-weight: 400;\n font-size: 14px;\n line-height: 100%;\n letter-spacing: 0%;\n color: green;\n }\n\n .body-l {\n font-family: Graphik;\n font-size: 18px;\n font-style: normal;\n font-weight: 400;\n line-height: 30px;\n }\n");class Xt extends t{static{this.styles=[Kt,o`
2361
+ `}};a([P({type:Object}),s("design:type",Object)],Xe.prototype,"value",void 0),a([P({type:String,attribute:"default-value"}),s("design:type",Object)],Xe.prototype,"defaultValue",void 0),a([P({type:Array}),s("design:type",Array)],Xe.prototype,"options",void 0),a([P({type:Boolean}),s("design:type",Object)],Xe.prototype,"filterable",void 0),a([P({type:Number}),s("design:type",Number)],Xe.prototype,"maxLength",void 0),a([z(),s("design:type",Boolean)],Xe.prototype,"isMobile",void 0),a([z(),s("design:type",Object)],Xe.prototype,"highlightedIndex",void 0),a([z(),s("design:type",Boolean)],Xe.prototype,"_isCleared",void 0),a([z(),s("design:type",Array)],Xe.prototype,"filteredOptions",void 0),a([z(),s("design:type",Object)],Xe.prototype,"filterValue",void 0),a([z(),s("design:type",Object)],Xe.prototype,"isOpen",void 0),a([z(),s("design:type",Object)],Xe.prototype,"mobileFilterValue",void 0),Xe=a([d("filterable-select")],Xe);const Ke=new CSSStyleSheet;Ke.replaceSync("\n @font-face {\n font-family: 'Graphik';\n src: url('/src/assets/font/Graphik-Regular.woff2') format('woff2'),\n url('/src/assets/font/Graphik-Regular.woff') format('woff'),\n url('/src/assets/font/Graphik-Regular.eot') format('embedded-opentype');\n font-weight: normal;\n font-style: normal;\n }\n\n .body-s {\n font-weight: 400;\n font-size: 14px;\n line-height: 100%;\n letter-spacing: 0%;\n color: green;\n }\n\n .body-l {\n font-family: Graphik;\n font-size: 18px;\n font-style: normal;\n font-weight: 400;\n line-height: 30px;\n }\n");class Qe extends e{static{this.styles=[Ke,o`
2310
2362
  :host {
2311
2363
  display: flex;
2312
2364
  position: fixed;
2313
2365
  align-items: center;
2314
- max-width: 100vw;
2366
+ max-width: 100dvw;
2315
2367
  height: auto;
2316
2368
  z-index: 9999;
2317
2369
  }
@@ -2372,7 +2424,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2372
2424
  }
2373
2425
 
2374
2426
  :host(.mobile) .container {
2375
- width: 90vw !important;
2427
+ width: 90dvw !important;
2376
2428
  }
2377
2429
 
2378
2430
  .container {
@@ -2433,16 +2485,16 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2433
2485
  .informative {
2434
2486
  background-color: var(--ui-informative);
2435
2487
  }
2436
- `]}static get properties(){return{type:{type:String},icon:{type:String},message:{type:String},open:{type:Boolean},position:{type:String,reflect:!0}}}constructor(){super(),this.type="informative",this.icon="info",this.message="Este es un mensaje.",this.open=!1,this.position="bottom-center",this.isMobile=!1,this.updateResponsiveStyles=this.updateResponsiveStyles.bind(this)}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.updateResponsiveStyles),this.updateResponsiveStyles()}disconnectedCallback(){window.removeEventListener("resize",this.updateResponsiveStyles),super.disconnectedCallback()}updateResponsiveStyles(){const t=window.innerWidth<=940;this.classList.toggle("mobile",t)}render(){const t="error"===this.type||"warning"===this.type?"alert":"status";return e`
2488
+ `]}static get properties(){return{type:{type:String},icon:{type:String},message:{type:String},open:{type:Boolean},position:{type:String,reflect:!0}}}constructor(){super(),this.type="informative",this.icon="info",this.message="Este es un mensaje.",this.open=!1,this.position="bottom-center",this.isMobile=!1,this.updateResponsiveStyles=this.updateResponsiveStyles.bind(this)}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.updateResponsiveStyles),this.updateResponsiveStyles()}disconnectedCallback(){window.removeEventListener("resize",this.updateResponsiveStyles),super.disconnectedCallback()}updateResponsiveStyles(){const e=window.innerWidth<=940;this.classList.toggle("mobile",e)}render(){const e="error"===this.type||"warning"===this.type?"alert":"status";return t`
2437
2489
  <div
2438
2490
  class="container ${this.open?"":"hidden"} ${this.type}"
2439
- role="${t}"
2491
+ role="${e}"
2440
2492
  aria-live="polite"
2441
2493
  >
2442
2494
  <randstad-icon name=${this.icon} size="24px" color="white"></randstad-icon>
2443
2495
  <span class="message">${this.message}</span>
2444
2496
  </div>
2445
- `}}customElements.define("randstad-snackbar",Xt);let Qt=class extends t{constructor(){super(...arguments),this.totalSteps=4,this.currentStep=0}static{this.styles=o`
2497
+ `}}customElements.define("randstad-snackbar",Qe);let Je=class extends e{constructor(){super(...arguments),this.totalSteps=4,this.currentStep=0}static{this.styles=o`
2446
2498
  .stepper {
2447
2499
  display: flex;
2448
2500
  gap: 20px;
@@ -2529,20 +2581,20 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2529
2581
  -webkit-font-smoothing: antialiased;
2530
2582
  -moz-osx-font-smoothing: grayscale;
2531
2583
  }
2532
- `}render(){return e`
2584
+ `}render(){return t`
2533
2585
  <div class="stepper">
2534
- ${Array.from({length:this.totalSteps},((t,i)=>e`
2586
+ ${Array.from({length:this.totalSteps},((e,i)=>t`
2535
2587
  <div
2536
2588
  class="step ${i<this.currentStep?"completed":i===this.currentStep?"active":""}"
2537
2589
  >
2538
- ${i<this.currentStep?e`<randstad-icon name="tick-circle" size="16px"></randstad-icon>`:i===this.currentStep?e`
2590
+ ${i<this.currentStep?t`<randstad-icon name="tick-circle" size="16px"></randstad-icon>`:i===this.currentStep?t`
2539
2591
  <span class="pulse-circle"></span>
2540
2592
  <span class="inner-circle"></span>
2541
- `:e`<span class="inner-circle"></span>`}
2593
+ `:t`<span class="inner-circle"></span>`}
2542
2594
  </div>
2543
2595
  `))}
2544
2596
  </div>
2545
- `}};a([A({type:Number}),s("design:type",Object)],Qt.prototype,"totalSteps",void 0),a([A({type:Number}),s("design:type",Object)],Qt.prototype,"currentStep",void 0),Qt=a([d("custom-stepper")],Qt);let Jt=class extends t{constructor(){super(...arguments),this.tabs=[],this.selected="",this.internalSelected="",this.showPrev=!1,this.showNext=!1,this.SCROLL_OFFSET=56,this.handleScroll=()=>{const t=this.renderRoot.querySelector(".tab-wrapper");if(!t)return;const{scrollLeft:e,scrollWidth:i,clientWidth:o}=t;this.showPrev=e>0,this.showNext=e+o<i-1}}static{this.styles=o`
2597
+ `}};a([P({type:Number}),s("design:type",Object)],Je.prototype,"totalSteps",void 0),a([P({type:Number}),s("design:type",Object)],Je.prototype,"currentStep",void 0),Je=a([d("custom-stepper")],Je);let Ze=class extends e{constructor(){super(...arguments),this.tabs=[],this.selected="",this.internalSelected="",this.showPrev=!1,this.showNext=!1,this.SCROLL_OFFSET=56,this.handleScroll=()=>{const e=this.renderRoot.querySelector(".tab-wrapper");if(!e)return;const{scrollLeft:t,scrollWidth:i,clientWidth:o}=e;this.showPrev=t>0,this.showNext=t+o<i-1}}static{this.styles=o`
2546
2598
  :host {
2547
2599
  display: block;
2548
2600
  border-bottom: 1px solid #E7E8EC;
@@ -2555,7 +2607,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2555
2607
  }
2556
2608
 
2557
2609
  .tab {
2558
- ${R};
2610
+ ${N};
2559
2611
  display: flex;
2560
2612
  gap: 8px;
2561
2613
  flex-direction: row;
@@ -2657,31 +2709,41 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2657
2709
  padding: 16px;
2658
2710
  }
2659
2711
  }
2660
- `}firstUpdated(){this.handleScroll()}updated(t){t.has("selected")&&(this.internalSelected=this.selected)}selectTab(t){this.internalSelected=t;const e=this.tabs.find((e=>e.value===t));e&&this.dispatchEvent(new CustomEvent("tab-change",{detail:e,bubbles:!0,composed:!0}))}scrollTabsLeft(){const t=this.renderRoot.querySelector(".tab-wrapper");if(!t)return;const e=t.scrollLeft,i=Array.from(t.querySelectorAll(".tab"));for(let o=i.length-1;o>=0;o--){const r=i[o].offsetLeft;if(r<e+this.SCROLL_OFFSET-1){const e=r-this.SCROLL_OFFSET;t.scrollTo({left:e,behavior:"smooth"});break}}setTimeout((()=>this.handleScroll()),300)}scrollTabsRight(){const t=this.renderRoot.querySelector(".tab-wrapper");if(!t)return;const e=t.scrollLeft,i=Array.from(t.querySelectorAll(".tab"));for(const o of i)if(o.offsetLeft>e+this.SCROLL_OFFSET){const e=o.offsetLeft-this.SCROLL_OFFSET;t.scrollTo({left:e,behavior:"smooth"});break}setTimeout((()=>this.handleScroll()),300)}render(){return e`
2712
+ `}firstUpdated(){this.handleScroll()}updated(e){e.has("selected")&&(this.internalSelected=this.selected)}selectTab(e){this.internalSelected=e;const t=this.tabs.find((t=>t.value===e));t&&this.dispatchEvent(new CustomEvent("tab-change",{detail:t,bubbles:!0,composed:!0}))}scrollTabsLeft(){const e=this.renderRoot.querySelector(".tab-wrapper");if(!e)return;const t=e.scrollLeft,i=Array.from(e.querySelectorAll(".tab"));for(let o=i.length-1;o>=0;o--){const r=i[o].offsetLeft;if(r<t+this.SCROLL_OFFSET-1){const t=r-this.SCROLL_OFFSET;e.scrollTo({left:t,behavior:"smooth"});break}}setTimeout((()=>this.handleScroll()),300)}scrollTabsRight(){const e=this.renderRoot.querySelector(".tab-wrapper");if(!e)return;const t=e.scrollLeft,i=Array.from(e.querySelectorAll(".tab"));for(const o of i)if(o.offsetLeft>t+this.SCROLL_OFFSET){const t=o.offsetLeft-this.SCROLL_OFFSET;e.scrollTo({left:t,behavior:"smooth"});break}setTimeout((()=>this.handleScroll()),300)}render(){return t`
2661
2713
  <div class="scroll-container">
2662
- ${this.showPrev?e`
2714
+ ${this.showPrev?t`
2663
2715
  <button class="scroll-button prev" @click=${this.scrollTabsLeft}>
2664
2716
  <randstad-icon name="arrow_left" size="36px"></randstad-icon>
2665
2717
  </button>
2666
2718
  `:null}
2667
2719
 
2668
2720
  <div class="tab-wrapper" @scroll=${this.handleScroll}>
2669
- ${this.tabs.map((t=>e`
2670
- <div class="tab ${this.internalSelected===t.value?"active":""}"
2671
- @click=${()=>this.selectTab(t.value)}>
2672
- <img src="/assets/icons/${t.icon}" alt="${t.label}" />
2673
- <span>${t.label}</span>
2721
+ ${this.tabs.map((e=>t`
2722
+ <div class="tab ${this.internalSelected===e.value?"active":""}"
2723
+ @click=${()=>this.selectTab(e.value)}>
2724
+ <img src="/assets/icons/${e.icon}" alt="${e.label}" />
2725
+ <span>${e.label}</span>
2674
2726
  </div>
2675
2727
  `))}
2676
2728
  </div>
2677
2729
 
2678
- ${this.showNext?e`
2730
+ ${this.showNext?t`
2679
2731
  <button class="scroll-button next" @click=${this.scrollTabsRight}>
2680
2732
  <randstad-icon name="arrow_right" size="36px"></randstad-icon>
2681
2733
  </button>
2682
2734
  `:null}
2683
2735
  </div>
2684
- `}};a([A({type:Array}),s("design:type",Array)],Jt.prototype,"tabs",void 0),a([A({type:String}),s("design:type",String)],Jt.prototype,"selected",void 0),a([T(),s("design:type",String)],Jt.prototype,"internalSelected",void 0),a([T(),s("design:type",Object)],Jt.prototype,"showPrev",void 0),a([T(),s("design:type",Object)],Jt.prototype,"showNext",void 0),Jt=a([d("tabs-bar")],Jt);const Zt=o`
2736
+ `}};a([P({type:Array}),s("design:type",Array)],Ze.prototype,"tabs",void 0),a([P({type:String}),s("design:type",String)],Ze.prototype,"selected",void 0),a([z(),s("design:type",String)],Ze.prototype,"internalSelected",void 0),a([z(),s("design:type",Object)],Ze.prototype,"showPrev",void 0),a([z(),s("design:type",Object)],Ze.prototype,"showNext",void 0),Ze=a([d("tabs-bar")],Ze);let et=class extends L{constructor(){super(...arguments),this.files=[],this.simulatedDelay=0,this.loading=!1,this.progress=0,this.errorTextMessage=null}baseGetTextMaxFileSize(e){return e/1048576}getReadableFileTypes(e,t){const i=e.map((e=>t[e]||e));if(i.length<=1)return i.join("");const o=i.pop();return`${i.join(", ")} y ${o}`}validateFiles(e,t,i,o,r,n){for(const a of e){if(i.length>0&&!i.includes(a.type))return this.setError(n,o),!1;if(a.size>t)return this.setError(n,r),!1}return!0}async baseHandleFiles(e,t){const{baseMaxFiles:i,maxFileSize:o,acceptedFileTypes:r,errorMessageType:n,errorMessageSize:a,typeError:s}=t;if(this.setError(s,null),!e||this.disabled||this.loading)return;const d=Array.isArray(this.files)?this.files:[],l=Number.isFinite(i)&&i>0?i:1,c=l-d.length;if(c<=0){const e=`se ha alcanzado el número máximo de archivos (${l}).`;return void this.setError(s,e)}const p=Array.from(e).slice(0,c);if(0===p.length)return;if(!this.validateFiles(p,o,r,n,a,s))return;const h=this.simulatedDelay??0;if(h<=0)return this.files=[...d,...p],void this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files}));this.loading=!0,this.progress=0,await this.updateComplete;const u=Date.now(),b=setInterval((()=>{const e=Date.now()-u,t=Math.min(Math.round(e/h*100),100);this.progress=t,this.progress>=100&&(clearInterval(b),this.files=[...d,...p],this.loading=!1,this.progress=0,this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files})))}),10);this.fileInput&&(this.fileInput.value="")}baseOnFileInputChange(e,t){const i=e.target;this.baseHandleFiles(i.files,t),this.fileInput&&(this.fileInput.value="")}removeFile(e,t){this.files=this.files.filter(((t,i)=>i!==e)),this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files})),0===this.files.length&&this.setError(t,null)}setError(e="file",t){"file"===e&&(this.error=!!t,this.errorMessage=t),"image"===e&&(this.errorTextMessage=t)}renderLoadingContainer(e){return t`
2737
+ ${this.loading?t`
2738
+ <div class="progress-bar-container">
2739
+ <div class="progress-bar" role="progressbar" aria-label="Subiendo archivo…">
2740
+ <div class="progress-bar-fill" style="width: ${this.progress}%;"></div>
2741
+ </div>
2742
+ </div>
2743
+ `:t`
2744
+ ${e}
2745
+ `}
2746
+ `}};a([P({type:Array}),s("design:type",Array)],et.prototype,"files",void 0),a([P({type:Number}),s("design:type",Object)],et.prototype,"simulatedDelay",void 0),a([z(),s("design:type",Object)],et.prototype,"loading",void 0),a([z(),s("design:type",Object)],et.prototype,"progress",void 0),a([z(),s("design:type",Object)],et.prototype,"errorTextMessage",void 0),a([A('input[ type="file" ]'),s("design:type",HTMLInputElement)],et.prototype,"fileInput",void 0),et=a([d("base-upload")],et);const tt=o`
2685
2747
  .progress-bar-container {
2686
2748
  min-height: 23px;
2687
2749
  display: flex;
@@ -2691,39 +2753,45 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2691
2753
  .progress-bar {
2692
2754
  min-width: 80px;
2693
2755
  height: 8px;
2694
- background-color: var(--secondary-color-20);
2756
+ background-color: var( --secondary-color-20 );
2695
2757
  border-radius: 999px;
2696
2758
  overflow: hidden;
2697
2759
  }
2698
2760
 
2699
2761
  .progress-bar-fill {
2700
2762
  height: 100%;
2701
- background-color: var(--primary-color);
2763
+ background-color: var( --primary-color );
2702
2764
  transition: width 0.1s ease;
2703
2765
  }
2704
- `;let te=class extends t{constructor(){super(...arguments),this.files=[],this.disabled=!1,this.simulatedDelay=0,this.loading=!1,this.progress=0,this.isDragging=!1}static{this.styles=o`
2705
- ${Zt}
2766
+ `,it={"image/jpg":".jpg","image/jpeg":".jpeg","image/png":".png"},ot={"application/pdf":".pdf","application/msword":".doc","application/vnd.openxmlformats-officedocument.wordprocessingml.document":".docx",...it,"text/plain":".txt"};let rt=class extends et{constructor(){super(...arguments),this.acceptedFileTypes=["image/jpeg","image/png","image/jpg"],this.maxFiles=3,this.maxFileSize=2097152,this.isDragging=!1,this.imageUrls=[],this.isMaxFilesReached=!1}static{this.styles=o`
2767
+ ${tt}
2706
2768
 
2707
2769
  :host {
2708
2770
  font-family: 'Graphik', sans-serif;
2709
2771
  }
2710
2772
 
2773
+ .upload-component-wrapper {
2774
+ display: flex;
2775
+ flex-direction: column;
2776
+ gap: 8px;
2777
+ }
2778
+
2711
2779
  .container {
2712
2780
  display: flex;
2713
2781
  gap: 16px;
2714
2782
  flex-direction: column;
2715
- border: 1px solid var(--secondary-color-10);
2783
+ border: 1px solid var( --secondary-color-10 );
2716
2784
  border-radius: 4px;
2717
2785
  padding: 16px;
2718
2786
  align-items: center;
2719
- background-color: var(--white);
2787
+ background-color: var( --white );
2720
2788
  transition: border 0.2s ease, outline 0.2s ease;
2721
2789
  }
2722
2790
 
2723
2791
  .container.dragging {
2724
- border: 1px dashed var(--secondary-color-40);
2792
+ border: 1px dashed var( --secondary-color-40 );
2725
2793
  }
2726
-
2794
+
2727
2795
  .icon {
2728
2796
  width: 40px;
2729
2797
  height: 40px
@@ -2740,26 +2808,26 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2740
2808
  ${_};
2741
2809
  text-align: center;
2742
2810
  vertical-align: middle;
2743
- color: var(--secondary-color-80);
2811
+ color: var( --secondary-color-80 );
2744
2812
  }
2745
2813
 
2746
2814
  .text-secondary {
2747
2815
  ${I};
2748
2816
  text-align: center;
2749
2817
  vertical-align: middle;
2750
- color: var(--secondary-color-60);
2818
+ color: var( --secondary-color-60 );
2751
2819
  }
2752
2820
 
2753
2821
  .text-tertiary {
2754
2822
  ${I};
2755
2823
  text-align: center;
2756
2824
  vertical-align: middle;
2757
- color: var(--secondary-color-40);
2825
+ color: var( --secondary-color-40 );
2758
2826
  }
2759
2827
 
2760
2828
  .button {
2761
2829
  ${I};
2762
- background-color: var(--primary-color);
2830
+ background-color: var( --primary-color );
2763
2831
  border: none;
2764
2832
  padding: 4px 16px;
2765
2833
  cursor: pointer;
@@ -2769,470 +2837,539 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
2769
2837
  vertical-align: middle;
2770
2838
  }
2771
2839
 
2772
- :host([disabled]) .button {
2773
- background-color: var(--secondary-color-20);
2774
- color: var(--secondary-color-80);
2840
+ :host([disabled]) .button, .container[disabled] .button {
2841
+ background-color: var( --secondary-color-20 );
2842
+ color: var( --secondary-color-80 );
2775
2843
  cursor: default;
2776
2844
  }
2777
2845
 
2778
2846
  input[type="file"] {
2779
2847
  display: none;
2780
2848
  }
2781
- `}async handleFiles(t){if(this.loading||this.disabled)return;const e=Array.isArray(this.files)?this.files:[],i=Array.from(t||[]).slice(0,3-e.length),o=this.simulatedDelay??0;if(o<=0)return this.files=[...e,...i],void this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files}));this.loading=!0,this.progress=0,await this.updateComplete;const r=Date.now(),n=setInterval((()=>{const t=Date.now()-r,a=Math.min(Math.round(t/o*100),100);this.progress=a,this.progress>=100&&(clearInterval(n),this.files=[...e,...i],this.loading=!1,this.progress=0,this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files})))}),10)}onFileInputChange(t){const e=t.target;this.handleFiles(e.files)}onDrop(t){t.preventDefault(),this.disabled||(this.isDragging=!1,this.handleFiles(t.dataTransfer?.files||null))}onDragOver(t){t.preventDefault(),this.disabled||(this.isDragging=!0)}onDragLeave(t){t.preventDefault(),this.disabled||(this.isDragging=!1)}render(){return e`
2782
- <div class="container ${this.isDragging?"dragging":""}"
2783
- @drop="${this.onDrop}"
2784
- @dragover="${this.onDragOver}"
2785
- @dragleave="${this.onDragLeave}"
2786
- >
2787
- <img class="icon"
2788
- src=${this.disabled?"/assets/img/image-upload-disabled.svg":"/assets/img/image-upload-circle.svg"}
2789
- alt="Subir imagen"
2790
- />
2791
-
2792
- <div class="text-container">
2793
- <div class="text-main">subí hasta 3 imágenes</div>
2794
-
2795
- <div class="text-secondary">
2796
- Podés agregar un archivo o arrastrar y soltar acá
2797
- </div>
2798
-
2799
- <div class="text-tertiary">.jpg, .jpeg, .png</div>
2800
- </div>
2801
-
2802
- ${this.loading?e`
2803
- <div class="progress-bar-container">
2804
- <div class="progress-bar" role="progressbar" aria-label="Subiendo archivo…">
2805
- <div class="progress-bar-fill" style="width: ${this.progress}%;"></div>
2806
- </div>
2807
- </div>
2808
- `:e`
2809
- <label class="button">
2810
- agregar archivo
2811
- <input type="file" accept=".jpg,.jpeg,.png" multiple @change="${this.onFileInputChange}" />
2812
- </label>
2813
- `}
2814
- </div>
2815
- `}};a([A({type:Array}),s("design:type",Array)],te.prototype,"files",void 0),a([A({type:Boolean,reflect:!0}),s("design:type",Object)],te.prototype,"disabled",void 0),a([A({type:Number}),s("design:type",Object)],te.prototype,"simulatedDelay",void 0),a([T(),s("design:type",Object)],te.prototype,"loading",void 0),a([T(),s("design:type",Object)],te.prototype,"progress",void 0),a([T(),s("design:type",Object)],te.prototype,"isDragging",void 0),te=a([d("upload-image")],te);const ee=6048e5,ie=Symbol.for("constructDateFrom");function oe(t,e){return"function"==typeof t?t(e):t&&"object"==typeof t&&ie in t?t[ie](e):t instanceof Date?new t.constructor(e):new Date(e)}function re(t,e){return oe(e||t,t)}function ne(t,e,i){const o=re(t,i?.in);if(isNaN(e))return oe(t,NaN);if(!e)return o;const r=o.getDate(),n=oe(t,o.getTime());n.setMonth(o.getMonth()+e+1,0);return r>=n.getDate()?n:(o.setFullYear(n.getFullYear(),n.getMonth(),r),o)}let ae={};function se(){return ae}function de(t,e){const i=se(),o=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??i.weekStartsOn??i.locale?.options?.weekStartsOn??0,r=re(t,e?.in),n=r.getDay(),a=(n<o?7:0)+n-o;return r.setDate(r.getDate()-a),r.setHours(0,0,0,0),r}function le(t,e){return de(t,{...e,weekStartsOn:1})}function ce(t,e){const i=re(t,e?.in),o=i.getFullYear(),r=oe(i,0);r.setFullYear(o+1,0,4),r.setHours(0,0,0,0);const n=le(r),a=oe(i,0);a.setFullYear(o,0,4),a.setHours(0,0,0,0);const s=le(a);return i.getTime()>=n.getTime()?o+1:i.getTime()>=s.getTime()?o:o-1}function pe(t){const e=re(t),i=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return i.setUTCFullYear(e.getFullYear()),+t-+i}function he(t,...e){const i=oe.bind(null,e.find((t=>"object"==typeof t)));return e.map(i)}function ue(t,e){const i=re(t,e?.in);return i.setHours(0,0,0,0),i}function be(t,e,i){return ne(t,12*e,i)}function me(t){return!(!((e=t)instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e))&&"number"!=typeof t||isNaN(+re(t)));var e}function ge(t,e){const i=re(t,e?.in);return i.setDate(1),i.setHours(0,0,0,0),i}const ye={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function fe(t){return(e={})=>{const i=e.width?String(e.width):t.defaultWidth;return t.formats[i]||t.formats[t.defaultWidth]}}const ve={date:fe({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:fe({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:fe({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},xe={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function we(t){return(e,i)=>{let o;if("formatting"===(i?.context?String(i.context):"standalone")&&t.formattingValues){const e=t.defaultFormattingWidth||t.defaultWidth,r=i?.width?String(i.width):e;o=t.formattingValues[r]||t.formattingValues[e]}else{const e=t.defaultWidth,r=i?.width?String(i.width):t.defaultWidth;o=t.values[r]||t.values[e]}return o[t.argumentCallback?t.argumentCallback(e):e]}}function ke(t){return(e,i={})=>{const o=i.width,r=o&&t.matchPatterns[o]||t.matchPatterns[t.defaultMatchWidth],n=e.match(r);if(!n)return null;const a=n[0],s=o&&t.parsePatterns[o]||t.parsePatterns[t.defaultParseWidth],d=Array.isArray(s)?function(t,e){for(let i=0;i<t.length;i++)if(e(t[i]))return i;return}(s,(t=>t.test(a))):function(t,e){for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&e(t[i]))return i;return}(s,(t=>t.test(a)));let l;l=t.valueCallback?t.valueCallback(d):d,l=i.valueCallback?i.valueCallback(l):l;return{value:l,rest:e.slice(a.length)}}}var $e;const Se={code:"en-US",formatDistance:(t,e,i)=>{let o;const r=ye[t];return o="string"==typeof r?r:1===e?r.one:r.other.replace("{{count}}",e.toString()),i?.addSuffix?i.comparison&&i.comparison>0?"in "+o:o+" ago":o},formatLong:ve,formatRelative:(t,e,i,o)=>xe[t],localize:{ordinalNumber:(t,e)=>{const i=Number(t),o=i%100;if(o>20||o<10)switch(o%10){case 1:return i+"st";case 2:return i+"nd";case 3:return i+"rd"}return i+"th"},era:we({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:we({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:t=>t-1}),month:we({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:we({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:we({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:($e={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:t=>parseInt(t,10)},(t,e={})=>{const i=t.match($e.matchPattern);if(!i)return null;const o=i[0],r=t.match($e.parsePattern);if(!r)return null;let n=$e.valueCallback?$e.valueCallback(r[0]):r[0];return n=e.valueCallback?e.valueCallback(n):n,{value:n,rest:t.slice(o.length)}}),era:ke({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:ke({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:t=>t+1}),month:ke({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:ke({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:ke({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ce(t,e){const i=re(t,e?.in),o=function(t,e){const[i,o]=he(0,t,e),r=ue(i),n=ue(o),a=+r-pe(r),s=+n-pe(n);return Math.round((a-s)/864e5)}(i,function(t,e){const i=re(t,e?.in);return i.setFullYear(i.getFullYear(),0,1),i.setHours(0,0,0,0),i}(i));return o+1}function Ee(t,e){const i=re(t,e?.in),o=+le(i)-+function(t,e){const i=ce(t,e),o=oe(t,0);return o.setFullYear(i,0,4),o.setHours(0,0,0,0),le(o)}(i);return Math.round(o/ee)+1}function De(t,e){const i=re(t,e?.in),o=i.getFullYear(),r=se(),n=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,a=oe(e?.in||t,0);a.setFullYear(o+1,0,n),a.setHours(0,0,0,0);const s=de(a,e),d=oe(e?.in||t,0);d.setFullYear(o,0,n),d.setHours(0,0,0,0);const l=de(d,e);return+i>=+s?o+1:+i>=+l?o:o-1}function Oe(t,e){const i=re(t,e?.in),o=+de(i,e)-+function(t,e){const i=se(),o=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,r=De(t,e),n=oe(e?.in||t,0);return n.setFullYear(r,0,o),n.setHours(0,0,0,0),de(n,e)}(i,e);return Math.round(o/ee)+1}function Me(t,e){return(t<0?"-":"")+Math.abs(t).toString().padStart(e,"0")}const Fe={y(t,e){const i=t.getFullYear(),o=i>0?i:1-i;return Me("yy"===e?o%100:o,e.length)},M(t,e){const i=t.getMonth();return"M"===e?String(i+1):Me(i+1,2)},d:(t,e)=>Me(t.getDate(),e.length),a(t,e){const i=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return i.toUpperCase();case"aaa":return i;case"aaaaa":return i[0];default:return"am"===i?"a.m.":"p.m."}},h:(t,e)=>Me(t.getHours()%12||12,e.length),H:(t,e)=>Me(t.getHours(),e.length),m:(t,e)=>Me(t.getMinutes(),e.length),s:(t,e)=>Me(t.getSeconds(),e.length),S(t,e){const i=e.length,o=t.getMilliseconds();return Me(Math.trunc(o*Math.pow(10,i-3)),e.length)}},Pe="midnight",je="noon",Ae="morning",Te="afternoon",ze="evening",Le="night",Ie={G:function(t,e,i){const o=t.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return i.era(o,{width:"abbreviated"});case"GGGGG":return i.era(o,{width:"narrow"});default:return i.era(o,{width:"wide"})}},y:function(t,e,i){if("yo"===e){const e=t.getFullYear(),o=e>0?e:1-e;return i.ordinalNumber(o,{unit:"year"})}return Fe.y(t,e)},Y:function(t,e,i,o){const r=De(t,o),n=r>0?r:1-r;if("YY"===e){return Me(n%100,2)}return"Yo"===e?i.ordinalNumber(n,{unit:"year"}):Me(n,e.length)},R:function(t,e){return Me(ce(t),e.length)},u:function(t,e){return Me(t.getFullYear(),e.length)},Q:function(t,e,i){const o=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(o);case"QQ":return Me(o,2);case"Qo":return i.ordinalNumber(o,{unit:"quarter"});case"QQQ":return i.quarter(o,{width:"abbreviated",context:"formatting"});case"QQQQQ":return i.quarter(o,{width:"narrow",context:"formatting"});default:return i.quarter(o,{width:"wide",context:"formatting"})}},q:function(t,e,i){const o=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(o);case"qq":return Me(o,2);case"qo":return i.ordinalNumber(o,{unit:"quarter"});case"qqq":return i.quarter(o,{width:"abbreviated",context:"standalone"});case"qqqqq":return i.quarter(o,{width:"narrow",context:"standalone"});default:return i.quarter(o,{width:"wide",context:"standalone"})}},M:function(t,e,i){const o=t.getMonth();switch(e){case"M":case"MM":return Fe.M(t,e);case"Mo":return i.ordinalNumber(o+1,{unit:"month"});case"MMM":return i.month(o,{width:"abbreviated",context:"formatting"});case"MMMMM":return i.month(o,{width:"narrow",context:"formatting"});default:return i.month(o,{width:"wide",context:"formatting"})}},L:function(t,e,i){const o=t.getMonth();switch(e){case"L":return String(o+1);case"LL":return Me(o+1,2);case"Lo":return i.ordinalNumber(o+1,{unit:"month"});case"LLL":return i.month(o,{width:"abbreviated",context:"standalone"});case"LLLLL":return i.month(o,{width:"narrow",context:"standalone"});default:return i.month(o,{width:"wide",context:"standalone"})}},w:function(t,e,i,o){const r=Oe(t,o);return"wo"===e?i.ordinalNumber(r,{unit:"week"}):Me(r,e.length)},I:function(t,e,i){const o=Ee(t);return"Io"===e?i.ordinalNumber(o,{unit:"week"}):Me(o,e.length)},d:function(t,e,i){return"do"===e?i.ordinalNumber(t.getDate(),{unit:"date"}):Fe.d(t,e)},D:function(t,e,i){const o=Ce(t);return"Do"===e?i.ordinalNumber(o,{unit:"dayOfYear"}):Me(o,e.length)},E:function(t,e,i){const o=t.getDay();switch(e){case"E":case"EE":case"EEE":return i.day(o,{width:"abbreviated",context:"formatting"});case"EEEEE":return i.day(o,{width:"narrow",context:"formatting"});case"EEEEEE":return i.day(o,{width:"short",context:"formatting"});default:return i.day(o,{width:"wide",context:"formatting"})}},e:function(t,e,i,o){const r=t.getDay(),n=(r-o.weekStartsOn+8)%7||7;switch(e){case"e":return String(n);case"ee":return Me(n,2);case"eo":return i.ordinalNumber(n,{unit:"day"});case"eee":return i.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return i.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return i.day(r,{width:"short",context:"formatting"});default:return i.day(r,{width:"wide",context:"formatting"})}},c:function(t,e,i,o){const r=t.getDay(),n=(r-o.weekStartsOn+8)%7||7;switch(e){case"c":return String(n);case"cc":return Me(n,e.length);case"co":return i.ordinalNumber(n,{unit:"day"});case"ccc":return i.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return i.day(r,{width:"narrow",context:"standalone"});case"cccccc":return i.day(r,{width:"short",context:"standalone"});default:return i.day(r,{width:"wide",context:"standalone"})}},i:function(t,e,i){const o=t.getDay(),r=0===o?7:o;switch(e){case"i":return String(r);case"ii":return Me(r,e.length);case"io":return i.ordinalNumber(r,{unit:"day"});case"iii":return i.day(o,{width:"abbreviated",context:"formatting"});case"iiiii":return i.day(o,{width:"narrow",context:"formatting"});case"iiiiii":return i.day(o,{width:"short",context:"formatting"});default:return i.day(o,{width:"wide",context:"formatting"})}},a:function(t,e,i){const o=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return i.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return i.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return i.dayPeriod(o,{width:"narrow",context:"formatting"});default:return i.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(t,e,i){const o=t.getHours();let r;switch(r=12===o?je:0===o?Pe:o/12>=1?"pm":"am",e){case"b":case"bb":return i.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return i.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return i.dayPeriod(r,{width:"narrow",context:"formatting"});default:return i.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(t,e,i){const o=t.getHours();let r;switch(r=o>=17?ze:o>=12?Te:o>=4?Ae:Le,e){case"B":case"BB":case"BBB":return i.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return i.dayPeriod(r,{width:"narrow",context:"formatting"});default:return i.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(t,e,i){if("ho"===e){let e=t.getHours()%12;return 0===e&&(e=12),i.ordinalNumber(e,{unit:"hour"})}return Fe.h(t,e)},H:function(t,e,i){return"Ho"===e?i.ordinalNumber(t.getHours(),{unit:"hour"}):Fe.H(t,e)},K:function(t,e,i){const o=t.getHours()%12;return"Ko"===e?i.ordinalNumber(o,{unit:"hour"}):Me(o,e.length)},k:function(t,e,i){let o=t.getHours();return 0===o&&(o=24),"ko"===e?i.ordinalNumber(o,{unit:"hour"}):Me(o,e.length)},m:function(t,e,i){return"mo"===e?i.ordinalNumber(t.getMinutes(),{unit:"minute"}):Fe.m(t,e)},s:function(t,e,i){return"so"===e?i.ordinalNumber(t.getSeconds(),{unit:"second"}):Fe.s(t,e)},S:function(t,e){return Fe.S(t,e)},X:function(t,e,i){const o=t.getTimezoneOffset();if(0===o)return"Z";switch(e){case"X":return Be(o);case"XXXX":case"XX":return Ne(o);default:return Ne(o,":")}},x:function(t,e,i){const o=t.getTimezoneOffset();switch(e){case"x":return Be(o);case"xxxx":case"xx":return Ne(o);default:return Ne(o,":")}},O:function(t,e,i){const o=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+_e(o,":");default:return"GMT"+Ne(o,":")}},z:function(t,e,i){const o=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+_e(o,":");default:return"GMT"+Ne(o,":")}},t:function(t,e,i){return Me(Math.trunc(+t/1e3),e.length)},T:function(t,e,i){return Me(+t,e.length)}};function _e(t,e=""){const i=t>0?"-":"+",o=Math.abs(t),r=Math.trunc(o/60),n=o%60;return 0===n?i+String(r):i+String(r)+e+Me(n,2)}function Be(t,e){if(t%60==0){return(t>0?"-":"+")+Me(Math.abs(t)/60,2)}return Ne(t,e)}function Ne(t,e=""){const i=t>0?"-":"+",o=Math.abs(t);return i+Me(Math.trunc(o/60),2)+e+Me(o%60,2)}const Re=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});default:return e.date({width:"full"})}},Ve=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});default:return e.time({width:"full"})}},qe={p:Ve,P:(t,e)=>{const i=t.match(/(P+)(p+)?/)||[],o=i[1],r=i[2];if(!r)return Re(t,e);let n;switch(o){case"P":n=e.dateTime({width:"short"});break;case"PP":n=e.dateTime({width:"medium"});break;case"PPP":n=e.dateTime({width:"long"});break;default:n=e.dateTime({width:"full"})}return n.replace("{{date}}",Re(o,e)).replace("{{time}}",Ve(r,e))}},We=/^D+$/,Ye=/^Y+$/,Ue=["D","DD","YY","YYYY"];const He=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ge=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ke=/^'([^]*?)'?$/,Xe=/''/g,Qe=/[a-zA-Z]/;function Je(t,e,i){const o=se(),r=o.locale??Se,n=o.firstWeekContainsDate??o.locale?.options?.firstWeekContainsDate??1,a=o.weekStartsOn??o.locale?.options?.weekStartsOn??0,s=re(t,i?.in);if(!me(s))throw new RangeError("Invalid time value");let d=e.match(Ge).map((t=>{const e=t[0];if("p"===e||"P"===e){return(0,qe[e])(t,r.formatLong)}return t})).join("").match(He).map((t=>{if("''"===t)return{isToken:!1,value:"'"};const e=t[0];if("'"===e)return{isToken:!1,value:Ze(t)};if(Ie[e])return{isToken:!0,value:t};if(e.match(Qe))throw new RangeError("Format string contains an unescaped latin alphabet character `"+e+"`");return{isToken:!1,value:t}}));r.localize.preprocessor&&(d=r.localize.preprocessor(s,d));const l={firstWeekContainsDate:n,weekStartsOn:a,locale:r};return d.map((i=>{if(!i.isToken)return i.value;const o=i.value;(function(t){return Ye.test(t)}(o)||function(t){return We.test(t)}(o))&&function(t,e,i){const o=function(t,e,i){const o="Y"===t[0]?"years":"days of the month";return`Use \`${t.toLowerCase()}\` instead of \`${t}\` (in \`${e}\`) for formatting ${o} to the input \`${i}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(t,e,i);if(console.warn(o),Ue.includes(t))throw new RangeError(o)}(o,e,String(t));return(0,Ie[o[0]])(s,o,r.localize,l)})).join("")}function Ze(t){const e=t.match(Ke);return e?e[1].replace(Xe,"'"):t}function ti(t,e){return re(t,e?.in).getDate()}function ei(t,e){const i=re(t,e?.in),o=i.getFullYear(),r=i.getMonth(),n=oe(i,0);return n.setFullYear(o,r+1,0),n.setHours(0,0,0,0),n.getDate()}function ii(t,e){return+re(t)>+re(e)}function oi(t,e){return+re(t)<+re(e)}function ri(t,e,i){const[o,r]=he(0,t,e);return o.getFullYear()===r.getFullYear()&&o.getMonth()===r.getMonth()}function ni(t,e,i){const[o,r]=he(0,t,e);return o.getFullYear()===r.getFullYear()}function ai(t,e){return function(t,e){const[i,o]=he(0,t,e);return+ue(i)===+ue(o)}(oe(t,t),function(t){return oe(t,Date.now())}(t))}let si=class extends t{constructor(){super(...arguments),this.selectedDate=null,this.viewDate=new Date,this.isMobile=!1,this.calendarWidth=0,this.minDate=null,this.maxDate=null,this.currentView="days",this.handleOutsideClick=t=>{const e=this.getRootNode(),i=e?.host;!i||t.composedPath().includes(this)||t.composedPath().includes(i)||this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0}))}}static{this.styles=o`
2816
- /* Estilos generales del contenedor del calendario (escritorio) */
2817
- .calendar-container {
2818
- position: absolute;
2819
- top: 100%;
2820
- left: 0;
2821
- z-index: 10;
2822
- border: var(--border-weight-default, 1px) solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
2823
- background: var(--secondary-white, #fff);
2824
- border-radius: 4px;
2825
- margin-top: 8px;
2826
- padding: 16px;
2827
- box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
2828
- font-family: Graphik;
2829
- display: flex;
2830
- flex-direction: column;
2831
- box-sizing: border-box;
2832
- min-width: 360px;
2833
- }
2834
2849
 
2835
- /* El header no tiene margin-bottom */
2836
- .header {
2837
- margin-bottom: 0;
2838
- }
2839
-
2840
- /* El separador no tiene margin-top para no dejar espacio con el header */
2841
- .weekdays-separator {
2850
+ .image-gallery {
2851
+ display: flex;
2852
+ flex-wrap: wrap;
2853
+ gap: 16px;
2842
2854
  width: 100%;
2843
- height: 1px;
2844
- background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
2845
- margin-top: 0;
2846
- margin-bottom: 16px;
2847
2855
  }
2848
2856
 
2849
- /* Estilos del encabezado de navegación (botones y título) */
2850
- .header {
2857
+ .image-item {
2858
+ position: relative;
2859
+ width: 100px;
2860
+ height: 99px;
2861
+ border: 1px solid transparent;
2862
+ border-radius: 4px;
2863
+ overflow: hidden;
2851
2864
  display: flex;
2852
- justify-content: space-between;
2865
+ justify-content: center;
2853
2866
  align-items: center;
2854
2867
  }
2855
2868
 
2856
- /* Estilos generales para los botones de navegación */
2857
- .nav-button {
2858
- background: none;
2859
- border: none;
2860
- cursor: pointer;
2861
- padding: 8px;
2862
- color: var(--primary-randstad-blue-70, #2175d9);
2863
- border-radius: 50%;
2864
- transition: background-color 0.2s;
2865
- gap: 8px;
2869
+ .image-item img {
2870
+ width: 100%;
2871
+ height: 100%;
2872
+ object-fit: cover;
2873
+ opacity: 0.2;
2866
2874
  }
2867
2875
 
2868
- .nav-button:hover {
2869
- background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
2876
+ /* Solución definitiva para el posicionamiento y el padding del botón. */
2877
+ .image-item randstad-button {
2878
+ position: absolute;
2879
+ top: 0;
2880
+ right: 0;
2881
+ z-index: 10;
2882
+ --content-padding: 8px;
2870
2883
  }
2871
2884
 
2872
- .header-left,
2873
- .header-right {
2874
- display: flex;
2875
- align-items: center;
2876
- gap: 4px;
2885
+ .text-main.error {
2886
+ color: var(--ui-negative, #E00F0F);
2877
2887
  }
2888
+ `}getFileConfig(){const e="tu archivo no es válido";return{baseMaxFiles:this.maxFiles,maxFileSize:this.maxFileSize,acceptedFileTypes:this.acceptedFileTypes,errorMessageType:e,errorMessageSize:e,typeError:"image"}}getTextAcceptedFileTypes(){return this.getReadableFileTypes(this.acceptedFileTypes,it)}getTextMaxFileSize(){return this.baseGetTextMaxFileSize(this.maxFileSize)}updated(e){e.has("files")&&this.files&&(this.imageUrls.forEach((e=>URL.revokeObjectURL(e))),this.imageUrls=this.files.map((e=>URL.createObjectURL(e))))}disconnectedCallback(){super.disconnectedCallback(),this.imageUrls.forEach((e=>URL.revokeObjectURL(e)))}async handleFiles(e){await this.baseHandleFiles(e,this.getFileConfig())}onFileInputChange(e){this.baseOnFileInputChange(e,this.getFileConfig())}onDrop(e){e.preventDefault(),this.disabled||(this.isDragging=!1,this.handleFiles(e.dataTransfer?.files||null))}onDragOver(e){e.preventDefault(),this.disabled||(this.isDragging=!0)}onDragLeave(e){e.preventDefault(),this.disabled||(this.isDragging=!1)}willUpdate(e){e.has("files")&&(this.isMaxFilesReached=(this.files||[]).length>=3)}render(){const e=this.disabled||this.isMaxFilesReached,i=this.disabled,o=this.errorTextMessage||`subí hasta ${this.maxFiles} imágenes`,r=this.errorTextMessage?"assets/img/image-upload-error.svg":e?"assets/img/image-upload-disabled.svg":"assets/img/image-upload-circle.svg",n=`container ${this.isDragging?"dragging":""} ${this.errorTextMessage?"error":""}`,a=t`
2889
+ <label class="button">
2890
+ agregar archivo
2878
2891
 
2879
- .month-year-button {
2880
- ${_}
2881
- display: flex;
2882
- align-items: center;
2883
- justify-content: center;
2884
- gap: 8px;
2885
- background: none;
2886
- border: none;
2887
- cursor: pointer;
2888
- transition: background-color 0.2s;
2889
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
2890
- border-radius: 16px;
2891
- width: auto;
2892
- height: 41px;
2893
- padding: 8px;
2894
- }
2892
+ <input
2893
+ type="file"
2894
+ accept=${this.acceptedFileTypes.join(",")}
2895
+ ?multiple=${this.maxFiles>1}
2896
+ @change="${this.onFileInputChange}"
2897
+ ?disabled="${e}"
2898
+ />
2899
+ </label>
2900
+ `;return t`
2901
+ <div class="upload-component-wrapper">
2902
+ ${this.imageUrls.length>0?t`
2903
+ <div class="image-gallery">
2904
+ ${this.imageUrls.map(((e,o)=>t`
2905
+ <div class="image-item">
2906
+ <img src="${e}" loading="lazy" alt="Uploaded image" />
2907
+
2908
+ <randstad-button
2909
+ .variant=${"button-icon"}
2910
+ .iconName=${"trash"}
2911
+ @click=${()=>this.removeFile(o,"image")}
2912
+ ?disabled=${i}
2913
+ >
2914
+ </randstad-button>
2915
+ </div>
2916
+ `))}
2917
+ </div>
2918
+ `:""}
2895
2919
 
2896
- .month-year-button:hover {
2897
- background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
2898
- }
2920
+ <div
2921
+ class="${n}"
2922
+ ?disabled="${e}"
2923
+ @drop="${this.onDrop}"
2924
+ @dragover="${this.onDragOver}"
2925
+ @dragleave="${this.onDragLeave}"
2926
+ >
2927
+ <img
2928
+ class="icon"
2929
+ src=${r}
2930
+ alt="Subir imagen"
2931
+ />
2899
2932
 
2900
- .month-year-button randstad-icon {
2901
- color: var(--primary-randstad-blue-70, #2175d9);
2902
- }
2933
+ <div class="text-container">
2934
+ <div class="text-main ${this.errorTextMessage?"error":""}">${o}</div>
2903
2935
 
2904
- /* Contenedor de los nombres de los días de la semana */
2905
- .weekdays {
2906
- display: grid;
2907
- place-items: center;
2908
- grid-template-columns: repeat(7, 1fr);
2909
- text-align: center;
2910
- color: var(--secondary-randstad-dark-blue-60, #6c7387);
2911
- opacity: 1;
2912
- margin-bottom: 8px; /* Gap de 8px entre nombres y días */
2913
- font-size: 16px;
2914
- font-style: normal;
2915
- font-weight: 500;
2916
- margin-top: 0;
2917
- }
2918
-
2919
- /* Cuadrícula para los días del mes */
2920
- .days-grid {
2921
- display: grid;
2922
- place-items: center;
2923
- grid-template-columns: repeat(7, 1fr);
2924
- gap: 8px;
2925
- }
2936
+ <div class="text-secondary">
2937
+ Podés agregar un archivo o arrastrar y soltar acá
2938
+ </div>
2926
2939
 
2927
- /* Estilos para cada botón de día */
2928
- .day {
2929
- ${B}
2930
- display: flex;
2931
- align-items: center;
2932
- justify-content: center;
2933
- width: 40px;
2934
- height: 40px;
2935
- border-radius: 50%;
2936
- cursor: pointer;
2937
- background-color: transparent;
2938
- border: none;
2939
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
2940
- padding: 0;
2941
- position: relative;
2942
- }
2940
+ <div class="text-tertiary">${this.getTextAcceptedFileTypes()} / max. ${this.getTextMaxFileSize()}MB</div>
2941
+ </div>
2943
2942
 
2944
- .day:hover {
2945
- background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
2946
- }
2943
+ ${this.renderLoadingContainer(a)}
2944
+ </div>
2945
+ </div>
2946
+ `}};a([P({type:Array}),s("design:type",Array)],rt.prototype,"acceptedFileTypes",void 0),a([P({type:Number}),s("design:type",Object)],rt.prototype,"maxFiles",void 0),a([P({type:Number}),s("design:type",Object)],rt.prototype,"maxFileSize",void 0),a([z(),s("design:type",Object)],rt.prototype,"isDragging",void 0),a([z(),s("design:type",Array)],rt.prototype,"imageUrls",void 0),a([z(),s("design:type",Boolean)],rt.prototype,"isMaxFilesReached",void 0),rt=a([d("upload-image")],rt);const nt=6048e5,at=Symbol.for("constructDateFrom");function st(e,t){return"function"==typeof e?e(t):e&&"object"==typeof e&&at in e?e[at](t):e instanceof Date?new e.constructor(t):new Date(t)}function dt(e,t){return st(t||e,e)}function lt(e,t,i){const o=dt(e,i?.in);if(isNaN(t))return st(e,NaN);if(!t)return o;const r=o.getDate(),n=st(e,o.getTime());n.setMonth(o.getMonth()+t+1,0);return r>=n.getDate()?n:(o.setFullYear(n.getFullYear(),n.getMonth(),r),o)}let ct={};function pt(){return ct}function ht(e,t){const i=pt(),o=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??i.weekStartsOn??i.locale?.options?.weekStartsOn??0,r=dt(e,t?.in),n=r.getDay(),a=(n<o?7:0)+n-o;return r.setDate(r.getDate()-a),r.setHours(0,0,0,0),r}function ut(e,t){return ht(e,{...t,weekStartsOn:1})}function bt(e,t){const i=dt(e,t?.in),o=i.getFullYear(),r=st(i,0);r.setFullYear(o+1,0,4),r.setHours(0,0,0,0);const n=ut(r),a=st(i,0);a.setFullYear(o,0,4),a.setHours(0,0,0,0);const s=ut(a);return i.getTime()>=n.getTime()?o+1:i.getTime()>=s.getTime()?o:o-1}function gt(e){const t=dt(e),i=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return i.setUTCFullYear(t.getFullYear()),+e-+i}function mt(e,...t){const i=st.bind(null,t.find((e=>"object"==typeof e)));return t.map(i)}function yt(e,t){const i=dt(e,t?.in);return i.setHours(0,0,0,0),i}function vt(e,t,i){return lt(e,12*t,i)}function ft(e){return!(!((t=e)instanceof Date||"object"==typeof t&&"[object Date]"===Object.prototype.toString.call(t))&&"number"!=typeof e||isNaN(+dt(e)));var t}function xt(e,t){const i=dt(e,t?.in);return i.setDate(1),i.setHours(0,0,0,0),i}const wt={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function kt(e){return(t={})=>{const i=t.width?String(t.width):e.defaultWidth;return e.formats[i]||e.formats[e.defaultWidth]}}const $t={date:kt({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:kt({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:kt({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},St={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function Ct(e){return(t,i)=>{let o;if("formatting"===(i?.context?String(i.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,r=i?.width?String(i.width):t;o=e.formattingValues[r]||e.formattingValues[t]}else{const t=e.defaultWidth,r=i?.width?String(i.width):e.defaultWidth;o=e.values[r]||e.values[t]}return o[e.argumentCallback?e.argumentCallback(t):t]}}function Et(e){return(t,i={})=>{const o=i.width,r=o&&e.matchPatterns[o]||e.matchPatterns[e.defaultMatchWidth],n=t.match(r);if(!n)return null;const a=n[0],s=o&&e.parsePatterns[o]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(s)?function(e,t){for(let i=0;i<e.length;i++)if(t(e[i]))return i;return}(s,(e=>e.test(a))):function(e,t){for(const i in e)if(Object.prototype.hasOwnProperty.call(e,i)&&t(e[i]))return i;return}(s,(e=>e.test(a)));let l;l=e.valueCallback?e.valueCallback(d):d,l=i.valueCallback?i.valueCallback(l):l;return{value:l,rest:t.slice(a.length)}}}var Dt;const Mt={code:"en-US",formatDistance:(e,t,i)=>{let o;const r=wt[e];return o="string"==typeof r?r:1===t?r.one:r.other.replace("{{count}}",t.toString()),i?.addSuffix?i.comparison&&i.comparison>0?"in "+o:o+" ago":o},formatLong:$t,formatRelative:(e,t,i,o)=>St[e],localize:{ordinalNumber:(e,t)=>{const i=Number(e),o=i%100;if(o>20||o<10)switch(o%10){case 1:return i+"st";case 2:return i+"nd";case 3:return i+"rd"}return i+"th"},era:Ct({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Ct({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ct({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Ct({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Ct({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(Dt={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const i=e.match(Dt.matchPattern);if(!i)return null;const o=i[0],r=e.match(Dt.parsePattern);if(!r)return null;let n=Dt.valueCallback?Dt.valueCallback(r[0]):r[0];return n=t.valueCallback?t.valueCallback(n):n,{value:n,rest:e.slice(o.length)}}),era:Et({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:Et({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Et({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:Et({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:Et({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ot(e,t){const i=dt(e,t?.in),o=function(e,t){const[i,o]=mt(0,e,t),r=yt(i),n=yt(o),a=+r-gt(r),s=+n-gt(n);return Math.round((a-s)/864e5)}(i,function(e,t){const i=dt(e,t?.in);return i.setFullYear(i.getFullYear(),0,1),i.setHours(0,0,0,0),i}(i));return o+1}function Ft(e,t){const i=dt(e,t?.in),o=+ut(i)-+function(e,t){const i=bt(e,t),o=st(e,0);return o.setFullYear(i,0,4),o.setHours(0,0,0,0),ut(o)}(i);return Math.round(o/nt)+1}function Tt(e,t){const i=dt(e,t?.in),o=i.getFullYear(),r=pt(),n=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,a=st(t?.in||e,0);a.setFullYear(o+1,0,n),a.setHours(0,0,0,0);const s=ht(a,t),d=st(t?.in||e,0);d.setFullYear(o,0,n),d.setHours(0,0,0,0);const l=ht(d,t);return+i>=+s?o+1:+i>=+l?o:o-1}function jt(e,t){const i=dt(e,t?.in),o=+ht(i,t)-+function(e,t){const i=pt(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,r=Tt(e,t),n=st(t?.in||e,0);return n.setFullYear(r,0,o),n.setHours(0,0,0,0),ht(n,t)}(i,t);return Math.round(o/nt)+1}function Pt(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}const zt={y(e,t){const i=e.getFullYear(),o=i>0?i:1-i;return Pt("yy"===t?o%100:o,t.length)},M(e,t){const i=e.getMonth();return"M"===t?String(i+1):Pt(i+1,2)},d:(e,t)=>Pt(e.getDate(),t.length),a(e,t){const i=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return i.toUpperCase();case"aaa":return i;case"aaaaa":return i[0];default:return"am"===i?"a.m.":"p.m."}},h:(e,t)=>Pt(e.getHours()%12||12,t.length),H:(e,t)=>Pt(e.getHours(),t.length),m:(e,t)=>Pt(e.getMinutes(),t.length),s:(e,t)=>Pt(e.getSeconds(),t.length),S(e,t){const i=t.length,o=e.getMilliseconds();return Pt(Math.trunc(o*Math.pow(10,i-3)),t.length)}},At="midnight",Lt="noon",It="morning",_t="afternoon",Bt="evening",Rt="night",Nt={G:function(e,t,i){const o=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return i.era(o,{width:"abbreviated"});case"GGGGG":return i.era(o,{width:"narrow"});default:return i.era(o,{width:"wide"})}},y:function(e,t,i){if("yo"===t){const t=e.getFullYear(),o=t>0?t:1-t;return i.ordinalNumber(o,{unit:"year"})}return zt.y(e,t)},Y:function(e,t,i,o){const r=Tt(e,o),n=r>0?r:1-r;if("YY"===t){return Pt(n%100,2)}return"Yo"===t?i.ordinalNumber(n,{unit:"year"}):Pt(n,t.length)},R:function(e,t){return Pt(bt(e),t.length)},u:function(e,t){return Pt(e.getFullYear(),t.length)},Q:function(e,t,i){const o=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(o);case"QQ":return Pt(o,2);case"Qo":return i.ordinalNumber(o,{unit:"quarter"});case"QQQ":return i.quarter(o,{width:"abbreviated",context:"formatting"});case"QQQQQ":return i.quarter(o,{width:"narrow",context:"formatting"});default:return i.quarter(o,{width:"wide",context:"formatting"})}},q:function(e,t,i){const o=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(o);case"qq":return Pt(o,2);case"qo":return i.ordinalNumber(o,{unit:"quarter"});case"qqq":return i.quarter(o,{width:"abbreviated",context:"standalone"});case"qqqqq":return i.quarter(o,{width:"narrow",context:"standalone"});default:return i.quarter(o,{width:"wide",context:"standalone"})}},M:function(e,t,i){const o=e.getMonth();switch(t){case"M":case"MM":return zt.M(e,t);case"Mo":return i.ordinalNumber(o+1,{unit:"month"});case"MMM":return i.month(o,{width:"abbreviated",context:"formatting"});case"MMMMM":return i.month(o,{width:"narrow",context:"formatting"});default:return i.month(o,{width:"wide",context:"formatting"})}},L:function(e,t,i){const o=e.getMonth();switch(t){case"L":return String(o+1);case"LL":return Pt(o+1,2);case"Lo":return i.ordinalNumber(o+1,{unit:"month"});case"LLL":return i.month(o,{width:"abbreviated",context:"standalone"});case"LLLLL":return i.month(o,{width:"narrow",context:"standalone"});default:return i.month(o,{width:"wide",context:"standalone"})}},w:function(e,t,i,o){const r=jt(e,o);return"wo"===t?i.ordinalNumber(r,{unit:"week"}):Pt(r,t.length)},I:function(e,t,i){const o=Ft(e);return"Io"===t?i.ordinalNumber(o,{unit:"week"}):Pt(o,t.length)},d:function(e,t,i){return"do"===t?i.ordinalNumber(e.getDate(),{unit:"date"}):zt.d(e,t)},D:function(e,t,i){const o=Ot(e);return"Do"===t?i.ordinalNumber(o,{unit:"dayOfYear"}):Pt(o,t.length)},E:function(e,t,i){const o=e.getDay();switch(t){case"E":case"EE":case"EEE":return i.day(o,{width:"abbreviated",context:"formatting"});case"EEEEE":return i.day(o,{width:"narrow",context:"formatting"});case"EEEEEE":return i.day(o,{width:"short",context:"formatting"});default:return i.day(o,{width:"wide",context:"formatting"})}},e:function(e,t,i,o){const r=e.getDay(),n=(r-o.weekStartsOn+8)%7||7;switch(t){case"e":return String(n);case"ee":return Pt(n,2);case"eo":return i.ordinalNumber(n,{unit:"day"});case"eee":return i.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return i.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return i.day(r,{width:"short",context:"formatting"});default:return i.day(r,{width:"wide",context:"formatting"})}},c:function(e,t,i,o){const r=e.getDay(),n=(r-o.weekStartsOn+8)%7||7;switch(t){case"c":return String(n);case"cc":return Pt(n,t.length);case"co":return i.ordinalNumber(n,{unit:"day"});case"ccc":return i.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return i.day(r,{width:"narrow",context:"standalone"});case"cccccc":return i.day(r,{width:"short",context:"standalone"});default:return i.day(r,{width:"wide",context:"standalone"})}},i:function(e,t,i){const o=e.getDay(),r=0===o?7:o;switch(t){case"i":return String(r);case"ii":return Pt(r,t.length);case"io":return i.ordinalNumber(r,{unit:"day"});case"iii":return i.day(o,{width:"abbreviated",context:"formatting"});case"iiiii":return i.day(o,{width:"narrow",context:"formatting"});case"iiiiii":return i.day(o,{width:"short",context:"formatting"});default:return i.day(o,{width:"wide",context:"formatting"})}},a:function(e,t,i){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return i.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return i.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return i.dayPeriod(o,{width:"narrow",context:"formatting"});default:return i.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,i){const o=e.getHours();let r;switch(r=12===o?Lt:0===o?At:o/12>=1?"pm":"am",t){case"b":case"bb":return i.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return i.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return i.dayPeriod(r,{width:"narrow",context:"formatting"});default:return i.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,i){const o=e.getHours();let r;switch(r=o>=17?Bt:o>=12?_t:o>=4?It:Rt,t){case"B":case"BB":case"BBB":return i.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return i.dayPeriod(r,{width:"narrow",context:"formatting"});default:return i.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,i){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),i.ordinalNumber(t,{unit:"hour"})}return zt.h(e,t)},H:function(e,t,i){return"Ho"===t?i.ordinalNumber(e.getHours(),{unit:"hour"}):zt.H(e,t)},K:function(e,t,i){const o=e.getHours()%12;return"Ko"===t?i.ordinalNumber(o,{unit:"hour"}):Pt(o,t.length)},k:function(e,t,i){let o=e.getHours();return 0===o&&(o=24),"ko"===t?i.ordinalNumber(o,{unit:"hour"}):Pt(o,t.length)},m:function(e,t,i){return"mo"===t?i.ordinalNumber(e.getMinutes(),{unit:"minute"}):zt.m(e,t)},s:function(e,t,i){return"so"===t?i.ordinalNumber(e.getSeconds(),{unit:"second"}):zt.s(e,t)},S:function(e,t){return zt.S(e,t)},X:function(e,t,i){const o=e.getTimezoneOffset();if(0===o)return"Z";switch(t){case"X":return Ut(o);case"XXXX":case"XX":return qt(o);default:return qt(o,":")}},x:function(e,t,i){const o=e.getTimezoneOffset();switch(t){case"x":return Ut(o);case"xxxx":case"xx":return qt(o);default:return qt(o,":")}},O:function(e,t,i){const o=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Vt(o,":");default:return"GMT"+qt(o,":")}},z:function(e,t,i){const o=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Vt(o,":");default:return"GMT"+qt(o,":")}},t:function(e,t,i){return Pt(Math.trunc(+e/1e3),t.length)},T:function(e,t,i){return Pt(+e,t.length)}};function Vt(e,t=""){const i=e>0?"-":"+",o=Math.abs(e),r=Math.trunc(o/60),n=o%60;return 0===n?i+String(r):i+String(r)+t+Pt(n,2)}function Ut(e,t){if(e%60==0){return(e>0?"-":"+")+Pt(Math.abs(e)/60,2)}return qt(e,t)}function qt(e,t=""){const i=e>0?"-":"+",o=Math.abs(e);return i+Pt(Math.trunc(o/60),2)+t+Pt(o%60,2)}const Yt=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},Wt=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},Ht={p:Wt,P:(e,t)=>{const i=e.match(/(P+)(p+)?/)||[],o=i[1],r=i[2];if(!r)return Yt(e,t);let n;switch(o){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;default:n=t.dateTime({width:"full"})}return n.replace("{{date}}",Yt(o,t)).replace("{{time}}",Wt(r,t))}},Gt=/^D+$/,Xt=/^Y+$/,Kt=["D","DD","YY","YYYY"];const Qt=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Jt=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Zt=/^'([^]*?)'?$/,ei=/''/g,ti=/[a-zA-Z]/;function ii(e,t,i){const o=pt(),r=o.locale??Mt,n=o.firstWeekContainsDate??o.locale?.options?.firstWeekContainsDate??1,a=o.weekStartsOn??o.locale?.options?.weekStartsOn??0,s=dt(e,i?.in);if(!ft(s))throw new RangeError("Invalid time value");let d=t.match(Jt).map((e=>{const t=e[0];if("p"===t||"P"===t){return(0,Ht[t])(e,r.formatLong)}return e})).join("").match(Qt).map((e=>{if("''"===e)return{isToken:!1,value:"'"};const t=e[0];if("'"===t)return{isToken:!1,value:oi(e)};if(Nt[t])return{isToken:!0,value:e};if(t.match(ti))throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}}));r.localize.preprocessor&&(d=r.localize.preprocessor(s,d));const l={firstWeekContainsDate:n,weekStartsOn:a,locale:r};return d.map((i=>{if(!i.isToken)return i.value;const o=i.value;(function(e){return Xt.test(e)}(o)||function(e){return Gt.test(e)}(o))&&function(e,t,i){const o=function(e,t,i){const o="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${o} to the input \`${i}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,i);if(console.warn(o),Kt.includes(e))throw new RangeError(o)}(o,t,String(e));return(0,Nt[o[0]])(s,o,r.localize,l)})).join("")}function oi(e){const t=e.match(Zt);return t?t[1].replace(ei,"'"):e}function ri(e,t){return dt(e,t?.in).getDate()}function ni(e,t){const i=dt(e,t?.in),o=i.getFullYear(),r=i.getMonth(),n=st(i,0);return n.setFullYear(o,r+1,0),n.setHours(0,0,0,0),n.getDate()}function ai(e,t){return+dt(e)>+dt(t)}function si(e,t){return+dt(e)<+dt(t)}function di(e,t,i){const[o,r]=mt(0,e,t);return o.getFullYear()===r.getFullYear()&&o.getMonth()===r.getMonth()}function li(e,t,i){const[o,r]=mt(0,e,t);return o.getFullYear()===r.getFullYear()}function ci(e,t){return function(e,t){const[i,o]=mt(0,e,t);return+yt(i)===+yt(o)}(st(e,e),function(e){return st(e,Date.now())}(e))}let pi=class extends e{constructor(){super(...arguments),this.selectedDate=null,this.viewDate=new Date,this.isMobile=!1,this.calendarWidth=0,this.minDate=null,this.maxDate=null,this.currentView="days",this.handleOutsideClick=e=>{const t=this.getRootNode(),i=t?.host;!i||e.composedPath().includes(this)||e.composedPath().includes(i)||this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0}))}}static{this.styles=[J,o`
2947
+ /* Estilos generales del contenedor del calendario (escritorio) */
2948
+ .calendar-container {
2949
+ position: absolute;
2950
+ top: 100%;
2951
+ left: 0;
2952
+ z-index: 10;
2953
+ border: var(--border-weight-default, 1px) solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
2954
+ background: var(--secondary-white, #fff);
2955
+ border-radius: 4px;
2956
+ margin-top: 8px;
2957
+ padding: 16px;
2958
+ box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
2959
+ font-family: Graphik;
2960
+ display: flex;
2961
+ flex-direction: column;
2962
+ box-sizing: border-box;
2963
+ min-width: 360px;
2964
+ }
2965
+
2966
+ /* El header no tiene margin-bottom */
2967
+ .header {
2968
+ margin-bottom: 0;
2969
+ }
2970
+
2971
+ /* El separador no tiene margin-top para no dejar espacio con el header */
2972
+ .weekdays-separator {
2973
+ width: 100%;
2974
+ height: 1px;
2975
+ background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
2976
+ margin-top: 0;
2977
+ margin-bottom: 16px;
2978
+ }
2947
2979
 
2948
- /* Estilos para el día, mes y año de hoy */
2949
- .day.today {
2950
- color: var(--primary-randstad-blue-70, #2175d9);
2951
- font-weight: 500;
2952
- }
2980
+ /* Estilos del encabezado de navegación (botones y título) */
2981
+ .header {
2982
+ display: flex;
2983
+ justify-content: space-between;
2984
+ align-items: center;
2985
+ }
2953
2986
 
2954
- .day.today::after {
2955
- content: '';
2956
- position: absolute;
2957
- bottom: 0;
2958
- left: 0;
2959
- right: 0;
2960
- width: 100%;
2961
- height: 2px;
2962
- background-color: var(--primary-randstad-blue-70, #2175d9);
2963
- border-radius: 2px;
2964
- }
2987
+ /* Estilos generales para los botones de navegación */
2988
+ .nav-button {
2989
+ background: none;
2990
+ border: none;
2991
+ cursor: pointer;
2992
+ padding: 8px;
2993
+ color: var(--primary-randstad-blue-70, #2175d9);
2994
+ border-radius: 50%;
2995
+ transition: background-color 0.2s;
2996
+ gap: 8px;
2997
+ }
2965
2998
 
2966
- /* Estilos para el día seleccionado */
2967
- .day.selected {
2968
- background-color: var(--primary-randstad-blue-70, #2175d9);
2969
- color: var(--secondary-white, #fff);
2970
- font-weight: 500;
2971
- }
2999
+ .nav-button:hover {
3000
+ background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
3001
+ }
2972
3002
 
2973
- /* Estilos para el día seleccionado cuando se muestra en un mes o año diferente */
2974
- .day.secondary-selected {
2975
- background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
2976
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
2977
- font-weight: 500;
2978
- border: 1px solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
2979
- }
3003
+ .header-left,
3004
+ .header-right {
3005
+ display: flex;
3006
+ align-items: center;
3007
+ gap: 4px;
3008
+ }
2980
3009
 
2981
- /* Grillas para selección de año y mes */
2982
- .year-grid,
2983
- .month-grid {
2984
- display: grid;
2985
- grid-template-columns: repeat(3, 1fr);
2986
- gap: 8px;
2987
- }
3010
+ .month-year-button {
3011
+ ${_}
3012
+ display: flex;
3013
+ align-items: center;
3014
+ justify-content: center;
3015
+ gap: 8px;
3016
+ background: none;
3017
+ border: none;
3018
+ cursor: pointer;
3019
+ transition: background-color 0.2s;
3020
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3021
+ border-radius: 16px;
3022
+ width: auto;
3023
+ height: 41px;
3024
+ padding: 8px;
3025
+ }
2988
3026
 
2989
- /* Botones de año y mes en la grilla */
2990
- .year-button,
2991
- .month-button {
2992
- ${B}
2993
- background: var(--secondary-white, #fff);
2994
- border: 1px solid transparent;
2995
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
2996
- cursor: pointer;
2997
- transition: background-color 0.2s, border-color 0.2s;
2998
- border-radius: 9999px;
2999
- padding: 4px 16px;
3000
- text-align: center;
3001
- display: flex;
3002
- justify-content: center;
3003
- align-items: center;
3004
- height: 38px;
3005
- }
3027
+ .month-year-button:hover {
3028
+ background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
3029
+ }
3006
3030
 
3007
- .year-button:hover,
3008
- .month-button:hover {
3009
- background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
3010
- }
3031
+ .month-year-button randstad-icon {
3032
+ color: var(--primary-randstad-blue-70, #2175d9);
3033
+ }
3011
3034
 
3012
- /* Estilos para el año o mes seleccionado */
3013
- .year-button.selected,
3014
- .month-button.selected {
3015
- background-color: var(--primary-randstad-blue-70, #2175d9);
3016
- color: var(--secondary-white, #fff);
3017
- border: 1px solid var(--primary-randstad-blue-70, #2175d9);
3018
- }
3035
+ /* Contenedor de los nombres de los días de la semana */
3036
+ .weekdays {
3037
+ display: grid;
3038
+ place-items: center;
3039
+ grid-template-columns: repeat(7, 1fr);
3040
+ text-align: center;
3041
+ color: var(--secondary-randstad-dark-blue-60, #6c7387);
3042
+ opacity: 1;
3043
+ margin-bottom: 8px; /* Gap de 8px entre nombres y días */
3044
+ font-size: 16px;
3045
+ font-style: normal;
3046
+ font-weight: 500;
3047
+ margin-top: 0;
3048
+ }
3019
3049
 
3020
- /* Estilos para el mes seleccionado en otro año (estilo secundario) */
3021
- .month-button.secondary-selected {
3022
- background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
3023
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
3024
- font-weight: 500;
3025
- border: 1px solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
3026
- }
3050
+ /* Cuadrícula para los días del mes */
3051
+ .days-grid {
3052
+ display: grid;
3053
+ place-items: center;
3054
+ grid-template-columns: repeat(7, 1fr);
3055
+ gap: 8px;
3056
+ }
3027
3057
 
3028
- /* Estilos para el año y mes current */
3029
- .year-button.current,
3030
- .month-button.current {
3031
- position: relative;
3032
- }
3058
+ /* Estilos para cada botón de día */
3059
+ .day {
3060
+ ${B}
3061
+ display: flex;
3062
+ align-items: center;
3063
+ justify-content: center;
3064
+ width: 40px;
3065
+ height: 40px;
3066
+ border-radius: 50%;
3067
+ cursor: pointer;
3068
+ background-color: transparent;
3069
+ border: none;
3070
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3071
+ padding: 0;
3072
+ position: relative;
3073
+ }
3033
3074
 
3034
- .year-button.current::after,
3035
- .month-button.current::after {
3036
- content: '';
3037
- position: absolute;
3038
- bottom: 0;
3039
- width: 100%;
3040
- height: 2px;
3041
- border-radius: 2px;
3042
- background-color: var(--primary-randstad-blue-70, #2175d9);
3043
- }
3075
+ .day:hover {
3076
+ background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
3077
+ }
3044
3078
 
3045
- /* Estilos para el botón de navegación deshabilitado */
3046
- .nav-button[disabled] {
3047
- color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3048
- pointer-events: none;
3049
- }
3079
+ /* Estilos para el día, mes y año de hoy */
3080
+ .day.today {
3081
+ color: var(--primary-randstad-blue-70, #2175d9);
3082
+ font-weight: 500;
3083
+ }
3050
3084
 
3051
- .nav-button[disabled]:hover {
3052
- background-color: transparent;
3053
- }
3085
+ .day.today::after {
3086
+ content: '';
3087
+ position: absolute;
3088
+ bottom: 0;
3089
+ left: 0;
3090
+ right: 0;
3091
+ width: 100%;
3092
+ height: 2px;
3093
+ background-color: var(--primary-randstad-blue-70, #2175d9);
3094
+ border-radius: 2px;
3095
+ }
3054
3096
 
3055
- /* Estilos para el botón de día deshabilitado */
3056
- .day[disabled] {
3057
- color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3058
- pointer-events: none;
3059
- background-color: transparent;
3060
- }
3061
-
3062
- .day[disabled]:hover {
3063
- background-color: transparent;
3064
- }
3097
+ /* Estilos para el día seleccionado */
3098
+ .day.selected {
3099
+ background-color: var(--primary-randstad-blue-70, #2175d9);
3100
+ color: var(--secondary-white, #fff);
3101
+ font-weight: 500;
3102
+ }
3065
3103
 
3066
- /* Estilos para los botones de año y mes deshabilitados */
3067
- .year-button[disabled],
3068
- .month-button[disabled] {
3069
- color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3070
- pointer-events: none;
3071
- background-color: transparent;
3072
- }
3073
-
3074
- .year-button[disabled]:hover,
3075
- .month-button[disabled]:hover {
3076
- background-color: transparent;
3077
- }
3104
+ /* Estilos para el día seleccionado cuando se muestra en un mes o año diferente */
3105
+ .day.secondary-selected {
3106
+ background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
3107
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3108
+ font-weight: 500;
3109
+ border: 1px solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
3110
+ }
3078
3111
 
3079
- /* --- Estilos para móvil --- */
3080
- .mobile-backdrop {
3081
- position: fixed;
3082
- inset: 0;
3083
- background-color: rgba(0, 0, 0, 0.4);
3084
- z-index: 999;
3085
- font-family: Graphik;
3086
- }
3112
+ /* Grillas para selección de año y mes */
3113
+ .year-grid,
3114
+ .month-grid {
3115
+ display: grid;
3116
+ grid-template-columns: repeat(3, 1fr);
3117
+ gap: 8px;
3118
+ }
3087
3119
 
3088
- .mobile-modal {
3089
- position: fixed;
3090
- bottom: 0;
3091
- left: 0;
3092
- right: 0;
3093
- background-color: white;
3094
- z-index: 1000;
3095
- border-radius: 12px 12px 0 0;
3096
- box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.15);
3097
- display: flex;
3098
- flex-direction: column;
3099
- padding: 24px 16px;
3100
- animation: slideUp 0.5s ease-out;
3101
- max-height: 80vh;
3102
- overflow-y: auto;
3103
- font-family: Graphik;
3104
- }
3120
+ /* Botones de año y mes en la grilla */
3121
+ .year-button,
3122
+ .month-button {
3123
+ ${B}
3124
+ background: var(--secondary-white, #fff);
3125
+ border: 1px solid transparent;
3126
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3127
+ cursor: pointer;
3128
+ transition: background-color 0.2s, border-color 0.2s;
3129
+ border-radius: 9999px;
3130
+ padding: 4px 16px;
3131
+ text-align: center;
3132
+ display: flex;
3133
+ justify-content: center;
3134
+ align-items: center;
3135
+ height: 38px;
3136
+ }
3105
3137
 
3106
- @keyframes slideUp {
3107
- from {
3108
- transform: translateY(100%);
3138
+ .year-button:hover,
3139
+ .month-button:hover {
3140
+ background-color: var(--secondary-randstad-light-blue-10, #e8f1fb);
3109
3141
  }
3110
- to {
3111
- transform: translateY(0);
3142
+
3143
+ /* Estilos para el año o mes seleccionado */
3144
+ .year-button.selected,
3145
+ .month-button.selected {
3146
+ background-color: var(--primary-randstad-blue-70, #2175d9);
3147
+ color: var(--secondary-white, #fff);
3148
+ border: 1px solid var(--primary-randstad-blue-70, #2175d9);
3112
3149
  }
3113
- }
3114
-
3115
- .mobile-modal .header {
3116
- margin-bottom: 0;
3117
- position: sticky;
3118
- top: 0;
3119
- background: white;
3120
- z-index: 10;
3121
- }
3122
-
3123
- .mobile-modal .weekdays-separator {
3124
- margin: 0;
3125
- }
3126
3150
 
3127
- .mobile-modal .weekdays {
3128
- place-items: center;
3129
- margin-top: 16px;
3130
- margin-bottom: 8px;
3131
- }
3132
-
3133
- .mobile-modal .days-grid {
3134
- gap: 8px;
3135
- grid-template-columns: repeat(7, 1fr);
3136
- place-items: center;
3137
- }
3138
-
3139
- .mobile-modal .month-grid,
3140
- .mobile-modal .year-grid {
3141
- gap: 16px;
3142
- margin-top: 16px;
3143
- }
3151
+ /* Estilos para el mes seleccionado en otro año (estilo secundario) */
3152
+ .month-button.secondary-selected {
3153
+ background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
3154
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3155
+ font-weight: 500;
3156
+ border: 1px solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
3157
+ }
3144
3158
 
3145
- .mobile-modal .day {
3146
- ${N}
3147
- font-weight: 500;
3148
- display: flex;
3149
- align-items: center;
3150
- justify-content: center;
3151
- width: 40px;
3152
- height: 40px;
3153
- border-radius: 50%;
3154
- cursor: pointer;
3155
- background-color: transparent;
3156
- border: none;
3157
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
3158
- position: relative;
3159
- }
3159
+ /* Estilos para el año y mes current */
3160
+ .year-button.current,
3161
+ .month-button.current {
3162
+ position: relative;
3163
+ }
3160
3164
 
3161
- .mobile-modal .day.selected {
3162
- background-color: var(--primary-randstad-blue-70, #2175d9);
3163
- color: var(--secondary-white, #fff);
3164
- font-weight: 500;
3165
- border-radius: 50%;
3166
- }
3165
+ .year-button.current::after,
3166
+ .month-button.current::after {
3167
+ content: '';
3168
+ position: absolute;
3169
+ bottom: 0;
3170
+ width: 100%;
3171
+ height: 2px;
3172
+ border-radius: 2px;
3173
+ background-color: var(--primary-randstad-blue-70, #2175d9);
3174
+ }
3167
3175
 
3168
- .mobile-modal .day.today {
3169
- color: var(--primary-randstad-blue-70, #2175d9);
3170
- font-weight: 500;
3171
- }
3176
+ /* Estilos para el botón de navegación deshabilitado */
3177
+ .nav-button[disabled] {
3178
+ color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3179
+ pointer-events: none;
3180
+ }
3172
3181
 
3173
- .mobile-modal .day.today::after {
3174
- content: '';
3175
- position: absolute;
3176
- bottom: 0;
3177
- width: 40px;
3178
- left: 50%;
3179
- transform: translateX(-50%);
3180
- height: 2px;
3181
- background-color: var(--primary-randstad-blue-70, #2175d9);
3182
- border-radius: 2px;
3183
- }
3182
+ .nav-button[disabled]:hover {
3183
+ background-color: transparent;
3184
+ }
3184
3185
 
3185
- .mobile-modal .year-grid,
3186
- .mobile-modal .month-grid {
3187
- grid-template-columns: repeat(3, 1fr);
3188
- gap: 8px;
3189
- }
3186
+ /* Estilos para el botón de día deshabilitado */
3187
+ .day[disabled] {
3188
+ color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3189
+ pointer-events: none;
3190
+ background-color: transparent;
3191
+ }
3192
+
3193
+ .day[disabled]:hover {
3194
+ background-color: transparent;
3195
+ }
3190
3196
 
3191
- .mobile-modal .year-button,
3192
- .mobile-modal .month-button {
3193
- width: 100%;
3194
- height: 48px;
3195
- border-radius: 9999px;
3196
- flex: 1 1 33.3333%;
3197
- padding: 0;
3198
- }
3197
+ /* Estilos para los botones de año y mes deshabilitados */
3198
+ .year-button[disabled],
3199
+ .month-button[disabled] {
3200
+ color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3201
+ pointer-events: none;
3202
+ background-color: transparent;
3203
+ }
3204
+
3205
+ .year-button[disabled]:hover,
3206
+ .month-button[disabled]:hover {
3207
+ background-color: transparent;
3208
+ }
3199
3209
 
3200
- .mobile-modal .day.secondary-selected,
3201
- .mobile-modal .month-button.secondary-selected {
3202
- background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
3203
- color: var(--secondary-randstad-dark-blue-80, #3c4257);
3204
- font-weight: 500;
3205
- border: 1px solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
3206
- }
3210
+ /* --- Estilos para móvil --- */
3211
+ .mobile-backdrop {
3212
+ position: fixed;
3213
+ inset: 0;
3214
+ background-color: rgba(0, 0, 0, 0.4);
3215
+ z-index: 999;
3216
+ font-family: Graphik;
3217
+ }
3207
3218
 
3208
- /* Estilos para elementos deshabilitados dentro del modal de móviles. */
3209
- .mobile-modal .day[disabled],
3210
- .mobile-modal .month-button[disabled],
3211
- .mobile-modal .year-button[disabled] {
3212
- color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3213
- pointer-events: none;
3214
- background-color: transparent;
3215
- }
3219
+ .mobile-modal {
3220
+ position: fixed;
3221
+ bottom: 0;
3222
+ left: 0;
3223
+ right: 0;
3224
+ background-color: white;
3225
+ z-index: 1000;
3226
+ border-radius: 12px 12px 0 0;
3227
+ box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.15);
3228
+ display: flex;
3229
+ flex-direction: column;
3230
+ padding: 24px 16px;
3231
+ animation: slideUp 0.5s ease-out;
3232
+ max-height: 80dvh;
3233
+ overflow-y: auto;
3234
+ font-family: Graphik;
3235
+ }
3216
3236
 
3217
- .mobile-modal .nav-button[disabled] {
3218
- color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3219
- pointer-events: none;
3220
- background-color: transparent;
3221
- }
3237
+ @keyframes slideUp {
3238
+ from {
3239
+ transform: translateY(100%);
3240
+ }
3241
+ to {
3242
+ transform: translateY(0);
3243
+ }
3244
+ }
3245
+
3246
+ .mobile-modal .header {
3247
+ margin-bottom: 0;
3248
+ position: sticky;
3249
+ top: 0;
3250
+ background: white;
3251
+ z-index: 10;
3252
+ }
3253
+
3254
+ .mobile-modal .weekdays-separator {
3255
+ margin: 0;
3256
+ }
3222
3257
 
3223
- /* Evitamos que el estilo 'today' o 'current' se aplique si el elemento está deshabilitado */
3224
- .mobile-modal .day.today[disabled]::after,
3225
- .mobile-modal .nav-button[disabled] randstad-icon {
3226
- color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3227
- }
3228
- /* */
3229
- `}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleOutsideClick)}handleHeaderClick(){"days"===this.currentView?this.currentView="years":this.currentView="days"}_updateView(t,e=null){this.viewDate=t,e&&(this.currentView=e),this.dispatchEvent(new CustomEvent("view-date-change",{detail:{date:this.viewDate}}))}handleNavClick(t){let e=this.viewDate;e="days"===this.currentView?ne(this.viewDate,t):"months"===this.currentView?be(this.viewDate,t):be(this.viewDate,21*t),this._updateView(e)}handleYearSelect(t){const e=function(t,e,i){const o=re(t,i?.in);return isNaN(+o)?oe(t,NaN):(o.setFullYear(e),o)}(this.viewDate,t);this._updateView(e,"months")}handleMonthSelect(t){const e=function(t,e,i){const o=re(t,i?.in),r=o.getFullYear(),n=o.getDate(),a=oe(t,0);a.setFullYear(r,e,15),a.setHours(0,0,0,0);const s=ei(a);return o.setMonth(e,Math.min(n,s)),o}(this.viewDate,t);this._updateView(e,"days")}handleDayClick(t){this.selectedDate=t,this.dispatchEvent(new CustomEvent("date-selected",{detail:{date:t},bubbles:!0,composed:!0}))}getFullMonthNames(){return["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"]}getShortMonthNames(){return this.getFullMonthNames().map((t=>t.substring(0,3)))}getShortWeekdays(){return["lu","ma","mi","ju","vi","sa","do"]}renderHeader(){const t=this.getFullMonthNames();let i="",o=!1,r=!1;if("years"===this.currentView){const t=this.viewDate.getFullYear()-this.viewDate.getFullYear()%21,e=t+20;i=`${t} - ${e}`;o=t<=(this.minDate?this.minDate.getFullYear():-1/0),r=e>=(this.maxDate?this.maxDate.getFullYear():1/0)}else if("months"===this.currentView){i=`${this.viewDate.getFullYear()}`;const t=this.viewDate.getFullYear();o=t<=(this.minDate?this.minDate.getFullYear():-1/0),r=t>=(this.maxDate?this.maxDate.getFullYear():1/0)}else{i=`${t[this.viewDate.getMonth()]} ${this.viewDate.getFullYear()}`,this.minDate&&(o=ri(ge(this.viewDate),ge(this.minDate))||oi(this.viewDate,this.minDate)),this.maxDate&&(r=ri(ge(this.viewDate),ge(this.maxDate))||ii(this.viewDate,this.maxDate))}return e`
3258
+ .mobile-modal .weekdays {
3259
+ place-items: center;
3260
+ margin-top: 16px;
3261
+ margin-bottom: 8px;
3262
+ }
3263
+
3264
+ .mobile-modal .days-grid {
3265
+ gap: 8px;
3266
+ grid-template-columns: repeat(7, 1fr);
3267
+ place-items: center;
3268
+ }
3269
+
3270
+ .mobile-modal .month-grid,
3271
+ .mobile-modal .year-grid {
3272
+ gap: 16px;
3273
+ margin-top: 16px;
3274
+ }
3275
+
3276
+ .mobile-modal .day {
3277
+ ${R}
3278
+ font-weight: 500;
3279
+ display: flex;
3280
+ align-items: center;
3281
+ justify-content: center;
3282
+ width: 40px;
3283
+ height: 40px;
3284
+ border-radius: 50%;
3285
+ cursor: pointer;
3286
+ background-color: transparent;
3287
+ border: none;
3288
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3289
+ position: relative;
3290
+ }
3291
+
3292
+ .mobile-modal .day.selected {
3293
+ background-color: var(--primary-randstad-blue-70, #2175d9);
3294
+ color: var(--secondary-white, #fff);
3295
+ font-weight: 500;
3296
+ border-radius: 50%;
3297
+ }
3298
+
3299
+ .mobile-modal .day.today {
3300
+ color: var(--primary-randstad-blue-70, #2175d9);
3301
+ font-weight: 500;
3302
+ }
3303
+
3304
+ .mobile-modal .day.today::after {
3305
+ content: '';
3306
+ position: absolute;
3307
+ bottom: 0;
3308
+ width: 40px;
3309
+ left: 50%;
3310
+ transform: translateX(-50%);
3311
+ height: 2px;
3312
+ background-color: var(--primary-randstad-blue-70, #2175d9);
3313
+ border-radius: 2px;
3314
+ }
3315
+
3316
+ .mobile-modal .year-grid,
3317
+ .mobile-modal .month-grid {
3318
+ grid-template-columns: repeat(3, 1fr);
3319
+ gap: 8px;
3320
+ }
3321
+
3322
+ .mobile-modal .year-button,
3323
+ .mobile-modal .month-button {
3324
+ width: 100%;
3325
+ height: 48px;
3326
+ border-radius: 9999px;
3327
+ flex: 1 1 33.3333%;
3328
+ padding: 0;
3329
+ }
3330
+
3331
+ .mobile-modal .day.secondary-selected,
3332
+ .mobile-modal .month-button.secondary-selected {
3333
+ background-color: var(--secondary-randstad-dark-blue-10, #e7e8ec);
3334
+ color: var(--secondary-randstad-dark-blue-80, #3c4257);
3335
+ font-weight: 500;
3336
+ border: 1px solid var(--secondary-randstad-dark-blue-10, #e7e8ec);
3337
+ }
3338
+
3339
+ /* Estilos para elementos deshabilitados dentro del modal de móviles. */
3340
+ .mobile-modal .day[disabled],
3341
+ .mobile-modal .month-button[disabled],
3342
+ .mobile-modal .year-button[disabled] {
3343
+ color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3344
+ pointer-events: none;
3345
+ background-color: transparent;
3346
+ }
3347
+
3348
+ .mobile-modal .nav-button[disabled] {
3349
+ color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3350
+ pointer-events: none;
3351
+ background-color: transparent;
3352
+ }
3353
+
3354
+ /* Evitamos que el estilo 'today' o 'current' se aplique si el elemento está deshabilitado */
3355
+ .mobile-modal .day.today[disabled]::after,
3356
+ .mobile-modal .nav-button[disabled] randstad-icon {
3357
+ color: var(--secondary-randstad-dark-blue-30, #b1b5c4);
3358
+ }
3359
+ /* */
3360
+ `]}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleOutsideClick)}handleHeaderClick(){"days"===this.currentView?this.currentView="years":this.currentView="days"}_updateView(e,t=null){this.viewDate=e,t&&(this.currentView=t),this.dispatchEvent(new CustomEvent("view-date-change",{detail:{date:this.viewDate}}))}handleNavClick(e){let t=this.viewDate;t="days"===this.currentView?lt(this.viewDate,e):"months"===this.currentView?vt(this.viewDate,e):vt(this.viewDate,21*e),this._updateView(t)}handleYearSelect(e){const t=function(e,t,i){const o=dt(e,i?.in);return isNaN(+o)?st(e,NaN):(o.setFullYear(t),o)}(this.viewDate,e);this._updateView(t,"months")}handleMonthSelect(e){const t=function(e,t,i){const o=dt(e,i?.in),r=o.getFullYear(),n=o.getDate(),a=st(e,0);a.setFullYear(r,t,15),a.setHours(0,0,0,0);const s=ni(a);return o.setMonth(t,Math.min(n,s)),o}(this.viewDate,e);this._updateView(t,"days")}handleDayClick(e){this.selectedDate=e,this.dispatchEvent(new CustomEvent("date-selected",{detail:{date:e},bubbles:!0,composed:!0}))}getFullMonthNames(){return["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"]}getShortMonthNames(){return this.getFullMonthNames().map((e=>e.substring(0,3)))}getShortWeekdays(){return["lu","ma","mi","ju","vi","sa","do"]}renderHeader(){const e=this.getFullMonthNames();let i="",o=!1,r=!1;if("years"===this.currentView){const e=this.viewDate.getFullYear()-this.viewDate.getFullYear()%21,t=e+20;i=`${e} - ${t}`;o=e<=(this.minDate?this.minDate.getFullYear():-1/0),r=t>=(this.maxDate?this.maxDate.getFullYear():1/0)}else if("months"===this.currentView){i=`${this.viewDate.getFullYear()}`;const e=this.viewDate.getFullYear();o=e<=(this.minDate?this.minDate.getFullYear():-1/0),r=e>=(this.maxDate?this.maxDate.getFullYear():1/0)}else{i=`${e[this.viewDate.getMonth()]} ${this.viewDate.getFullYear()}`,this.minDate&&(o=di(xt(this.viewDate),xt(this.minDate))||si(this.viewDate,this.minDate)),this.maxDate&&(r=di(xt(this.viewDate),xt(this.maxDate))||ai(this.viewDate,this.maxDate))}const n=t`
3361
+ <randstad-icon
3362
+ name="${"days"===this.currentView?"arrow_drop_down":"arrow_drop_up"}"
3363
+ class="select-icon"
3364
+ >
3365
+ </randstad-icon>
3366
+ `;return t`
3230
3367
  <div class="header">
3231
3368
  <div class="header-left">
3232
3369
  <button class="month-year-button" @click=${this.handleHeaderClick}>
3233
3370
  <span>${i}</span>
3234
3371
 
3235
- ${"days"===this.currentView?e`<randstad-icon name="arrow_drop_down" class="select-icon"></randstad-icon>`:e`<randstad-icon name="arrow_drop_up" class="select-icon"></randstad-icon>`}
3372
+ ${n}
3236
3373
  </button>
3237
3374
  </div>
3238
3375
 
@@ -3246,64 +3383,64 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3246
3383
  </button>
3247
3384
  </div>
3248
3385
  </div>
3249
- `}renderYearsView(){const t=this.viewDate.getFullYear()-this.viewDate.getFullYear()%21,i=Array.from({length:21},((e,i)=>t+i)),o=this.selectedDate?this.selectedDate.getFullYear():null,r=(new Date).getFullYear(),n=this.minDate?this.minDate.getFullYear():-1/0,a=this.maxDate?this.maxDate.getFullYear():1/0;return e`
3386
+ `}renderYearsView(){const e=this.viewDate.getFullYear()-this.viewDate.getFullYear()%21,i=Array.from({length:21},((t,i)=>e+i)),o=this.selectedDate?this.selectedDate.getFullYear():null,r=(new Date).getFullYear(),n=this.minDate?this.minDate.getFullYear():-1/0,a=this.maxDate?this.maxDate.getFullYear():1/0;return t`
3250
3387
  <div class="year-grid">
3251
- ${i.map((t=>e`
3388
+ ${i.map((e=>t`
3252
3389
  <button
3253
- class="${"year-button "+(t===o?"selected":t===r?"current":"")}"
3254
- @click=${()=>this.handleYearSelect(t)}
3255
- ?disabled=${t<n||t>a}
3390
+ class="${"year-button "+(e===o?"selected":e===r?"current":"")}"
3391
+ @click=${()=>this.handleYearSelect(e)}
3392
+ ?disabled=${e<n||e>a}
3256
3393
  >
3257
- ${t}
3394
+ ${e}
3258
3395
  </button>
3259
3396
  `))}
3260
3397
  </div>
3261
- `}renderMonthsView(){const t=this.getShortMonthNames(),i=this.selectedDate?.getMonth(),o=(new Date).getMonth(),r=this.viewDate.getFullYear();return e`
3398
+ `}renderMonthsView(){const e=this.getShortMonthNames(),i=this.selectedDate?.getMonth(),o=(new Date).getMonth(),r=this.viewDate.getFullYear();return t`
3262
3399
  <div class="month-grid">
3263
- ${t.map(((t,n)=>{const a=n===o,s=n===i&&this.selectedDate&&ni(this.viewDate,this.selectedDate),d=n===i&&this.selectedDate&&!ni(this.viewDate,this.selectedDate);let l=!1;this.minDate&&r===this.minDate.getFullYear()&&(l=n<this.minDate.getMonth()),this.maxDate&&r===this.maxDate.getFullYear()&&(l=l||n>this.maxDate.getMonth());return e`
3400
+ ${e.map(((e,n)=>{const a=n===o,s=n===i&&this.selectedDate&&li(this.viewDate,this.selectedDate),d=n===i&&this.selectedDate&&!li(this.viewDate,this.selectedDate);let l=!1;this.minDate&&r===this.minDate.getFullYear()&&(l=n<this.minDate.getMonth()),this.maxDate&&r===this.maxDate.getFullYear()&&(l=l||n>this.maxDate.getMonth());return t`
3264
3401
  <button
3265
3402
  class="${"month-button "+(s?"selected":d?"secondary-selected":a?"current":"")}"
3266
3403
  ?disabled=${l}
3267
3404
  @click=${()=>this.handleMonthSelect(n)}
3268
3405
  >
3269
- ${t}
3406
+ ${e}
3270
3407
  </button>
3271
3408
  `}))}
3272
3409
  </div>
3273
- `}renderDayView(){const t=ei(this.viewDate),i=ge(this.viewDate),o=re(i,r?.in).getDay();var r;const n=Array.from({length:0===o?6:o-1},(()=>null)),a=Array.from({length:t},((t,e)=>function(t,e,i){const o=re(t,i?.in);return o.setDate(e),o}(i,e+1))),s=this.getShortWeekdays();return e`
3410
+ `}renderDayView(){const e=ni(this.viewDate),i=xt(this.viewDate),o=dt(i,r?.in).getDay();var r;const n=Array.from({length:0===o?6:o-1},(()=>null)),a=Array.from({length:e},((e,t)=>function(e,t,i){const o=dt(e,i?.in);return o.setDate(t),o}(i,t+1))),s=this.getShortWeekdays();return t`
3274
3411
  <div class="weekdays">
3275
- ${s.map((t=>e`<div>${t}</div>`))}
3412
+ ${s.map((e=>t`<div>${e}</div>`))}
3276
3413
  </div>
3277
3414
 
3278
3415
  <div class="days-grid">
3279
- ${n.map((()=>e`<div></div>`))}
3280
- ${a.map((t=>{const i=ue(t),o=this.selectedDate?ue(this.selectedDate):null,r=this.minDate&&oi(i,ue(this.minDate))||this.maxDate&&ii(i,ue(this.maxDate)),n=ai(i),a=o&&ti(i)===ti(o),s=a&&o&&ri(i,o)&&ni(i,o);return e`
3416
+ ${n.map((()=>t`<div></div>`))}
3417
+ ${a.map((e=>{const i=yt(e),o=this.selectedDate?yt(this.selectedDate):null,r=this.minDate&&si(i,yt(this.minDate))||this.maxDate&&ai(i,yt(this.maxDate)),n=ci(i),a=o&&ri(i)===ri(o),s=a&&o&&di(i,o)&&li(i,o);return t`
3281
3418
  <button
3282
3419
  class="${`day ${n?"today":""} ${s?"selected":a&&!s?"secondary-selected":""}`}"
3283
3420
  ?disabled=${r}
3284
- @click=${()=>this.handleDayClick(t)}
3421
+ @click=${()=>this.handleDayClick(e)}
3285
3422
  >
3286
- ${Je(t,"d")}
3423
+ ${ii(e,"d")}
3287
3424
  </button>
3288
3425
  `}))}
3289
3426
  </div>
3290
- `}render(){let t;t="days"===this.currentView?this.renderDayView():"months"===this.currentView?this.renderMonthsView():this.renderYearsView();const i=e`${this.renderHeader()} <div class="weekdays-separator"></div> ${t}`;return this.isMobile?e`
3427
+ `}render(){let e;e="days"===this.currentView?this.renderDayView():"months"===this.currentView?this.renderMonthsView():this.renderYearsView();const i=t`${this.renderHeader()} <div class="weekdays-separator"></div> ${e}`;return this.isMobile?t`
3291
3428
  <div
3292
3429
  class="mobile-backdrop"
3293
3430
  @click=${()=>this.dispatchEvent(new CustomEvent("close"))}
3294
3431
  >
3295
- <div class="mobile-modal" @click=${t=>t.stopPropagation()}>
3432
+ <div class="mobile-modal" @click=${e=>e.stopPropagation()}>
3296
3433
  ${i}
3297
3434
  </div>
3298
3435
  </div>
3299
- `:e`
3436
+ `:t`
3300
3437
  <div class="calendar-container" style="width: ${this.calendarWidth}px;">
3301
3438
  ${i}
3302
3439
  </div>
3303
- `}};a([A({type:Object}),s("design:type",Object)],si.prototype,"selectedDate",void 0),a([A({type:Object}),s("design:type",Date)],si.prototype,"viewDate",void 0),a([A({type:Boolean}),s("design:type",Object)],si.prototype,"isMobile",void 0),a([A({type:Number}),s("design:type",Number)],si.prototype,"calendarWidth",void 0),a([A({type:Object}),s("design:type",Object)],si.prototype,"minDate",void 0),a([A({type:Object}),s("design:type",Object)],si.prototype,"maxDate",void 0),a([T(),s("design:type",String)],si.prototype,"currentView",void 0),si=a([d("calendar-overlay")],si);let di=class extends L{constructor(){super(...arguments),this.isRenderClearButton=!0,this.eighteenOrOlder=!1,this.isOpen=!1,this.selectedDate=null,this.viewDate=new Date,this.isMobile=!1,this.calendarWidth=0,this.inputValue=null,this.updateResponsiveModeBound=this.updateResponsiveMode.bind(this),this.handleClickOutside=t=>{t.composedPath().includes(this)||(this.isOpen=!1)}}static{this.styles=o`
3304
- ${X}
3305
- ${Q}
3440
+ `}};a([P({type:Object}),s("design:type",Object)],pi.prototype,"selectedDate",void 0),a([P({type:Object}),s("design:type",Date)],pi.prototype,"viewDate",void 0),a([P({type:Boolean}),s("design:type",Object)],pi.prototype,"isMobile",void 0),a([P({type:Number}),s("design:type",Number)],pi.prototype,"calendarWidth",void 0),a([P({type:Object}),s("design:type",Object)],pi.prototype,"minDate",void 0),a([P({type:Object}),s("design:type",Object)],pi.prototype,"maxDate",void 0),a([z(),s("design:type",String)],pi.prototype,"currentView",void 0),pi=a([d("calendar-overlay")],pi);let hi=class extends L{constructor(){super(...arguments),this.isRenderClearButton=!0,this.eighteenOrOlder=!1,this.isOpen=!1,this.selectedDate=null,this.viewDate=new Date,this.isMobile=!1,this.calendarWidth=0,this.inputValue=null,this.updateResponsiveModeBound=this.updateResponsiveMode.bind(this),this.handleClickOutside=e=>{e.composedPath().includes(this)||(this.isOpen=!1)}}static{this.styles=o`
3306
3441
  ${K}
3442
+ ${Q}
3443
+ ${X}
3307
3444
 
3308
3445
  /* Si se proporciona una propiedad width (ej. width="600px"), se usa ese valor. */
3309
3446
  :host([width]) {
@@ -3319,7 +3456,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3319
3456
 
3320
3457
  /* Estilos para evitar el desbordamiento en móviles */
3321
3458
  calendar-overlay {
3322
- max-width: 100vw;
3459
+ max-width: 100dvw;
3323
3460
  box-sizing: border-box;
3324
3461
  }
3325
3462
 
@@ -3363,7 +3500,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3363
3500
  }
3364
3501
 
3365
3502
  .date-input {
3366
- ${N}
3503
+ ${R}
3367
3504
  flex-grow: 1;
3368
3505
  border: none;
3369
3506
  outline: none;
@@ -3401,12 +3538,12 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3401
3538
  .calendar-button randstad-icon {
3402
3539
  font-size: 18px;
3403
3540
  }
3404
- `}setMessageErrorFormatInvalid(){return"formato de fecha inválido, se esperaba 'dd-MM-yyyy'"}connectedCallback(){super.connectedCallback(),this.updateResponsiveMode(),window.addEventListener("resize",this.updateResponsiveModeBound),document.addEventListener("click",this.handleClickOutside)}disconnectedCallback(){window.removeEventListener("resize",this.updateResponsiveModeBound),document.removeEventListener("click",this.handleClickOutside),super.disconnectedCallback()}firstUpdated(){this.setInitialWidth()}updated(t){t.has("value")&&this._syncValue(this.value),(t.has("isOpen")||t.has("value"))&&this.setInitialWidth(),super.updated(t)}setInitialWidth(){this.inputContainer&&(this.calendarWidth=this.inputContainer.getBoundingClientRect().width)}updateResponsiveMode(){this.isMobile=window.innerWidth<=940,this.setInitialWidth()}handleInput(t){const e=t.target;this.inputValue=e.value,this._parseAndValidateDate(e.value,!0)}handleCalendarButtonClick(t){this.disabled||(t.stopPropagation(),this.isOpen=!this.isOpen,this.selectedDate?this.viewDate=this.selectedDate:this.viewDate=new Date,this.requestUpdate())}handleClearDate(){this.inputValue=null,this.selectedDate=null,this.error=!1,this.errorMessage=null,this.closeOverlay(null)}handleDateSelect(t){const e=t.detail.date;if(!e)return;if(this._validateDate(e)){this.selectedDate=e,this.viewDate=e;const t=Je(e,"dd-MM-yyyy");this.inputValue=t,this.closeOverlay(t)}else{const t=Je(e,"dd-MM-yyyy");this.inputValue=t,this.selectedDate=null,this.closeOverlay(null)}}handleViewDateChange(t){this.viewDate=t.detail.date}closeOverlay(t){this.value=t,this.dispatchEvent(new CustomEvent("date-selected",{detail:{value:t}})),this.isOpen=!1}_syncValue(t){if(""===t||null===t)return void(this.error||(this.selectedDate=null,this.inputValue=null,this.errorMessage=null));const e=this._parseDate(t);e&&this._validateDate(e)?(this.selectedDate=e,this.viewDate=e,this.error=!1,this.errorMessage=null,this.value=Je(e,"dd-MM-yyyy"),this.inputValue=this.value):this.selectedDate=e}_validateDate(t){if(!t)return!1;if(this.error=!1,this.errorMessage=null,this.eighteenOrOlder){const e=function(t,e,i){return be(t,-18,i)}(new Date);if(ii(t,e))return this.error=!0,this.errorMessage="tenés que ser mayor de 18 años",!1}if(!this._isWithinBounds(t)){const t=this._getValidDateRange();return this.error=!0,this.errorMessage=`la fecha debe estar entre ${t?.minDate?Je(t.minDate,"dd-MM-yyyy"):""} y ${t?.maxDate?Je(t.maxDate,"dd-MM-yyyy"):""}.`,!1}return!0}_parseAndValidateDate(t,e){if(this.disabled)return;if(""===t||null===t)return this.selectedDate=null,this.error=!1,this.errorMessage=null,void(e&&this.closeOverlay(null));const i=this._parseDate(t);if(i){this._validateDate(i)?(this.selectedDate=i,this.viewDate=i,this.error=!1,this.errorMessage=null,e&&this.closeOverlay(Je(i,"dd-MM-yyyy"))):(this.error=!0,this.selectedDate=null,e&&this.closeOverlay(null))}else this.error=!0,this.errorMessage=this.setMessageErrorFormatInvalid(),this.selectedDate=null,e&&this.closeOverlay(null)}_parseDate(t){const e=t.split("-").map(Number);if(3===e.length){const[i,o,r]=e;if(i&&o&&r&&o>=1&&o<=12&&r>1e3){const e=new Date(r,o-1,i,12);if(me(e)&&Je(e,"dd-MM-yyyy")===t)return e}}const i=t.split("-").map(Number);if(3===i.length){const[e,o,r]=i;if(e&&o&&r&&o>=1&&o<=12&&e>1e3){const i=new Date(e,o-1,r,12);if(me(i)&&Je(i,"yyyy-MM-dd")===t)return i}}return null}_parseDateString(t){if(!t)return null;const e=t.split("-").map(Number);if(3===e.length&&!isNaN(e[0])&&!isNaN(e[1])&&!isNaN(e[2])){return new Date(e[0],e[1]-1,e[2],12)}return null}_getValidDateRange(){const t=this._parseDateString(this.minDate),e=this._parseDateString(this.maxDate);return t||e?t&&e&&ii(t,e)?null:{minDate:t,maxDate:e}:{minDate:null,maxDate:null}}_isWithinBounds(t){const e=this._getValidDateRange();return!e||(!e.minDate||!oi(t,e.minDate))&&(!e.maxDate||!ii(t,e.maxDate))}render(){const t=n({"input-wrapper":!0,active:this.isOpen,error:this.error,disabled:this.disabled}),o=`width: ${this.width||"100%"};`,r=this._getValidDateRange();return e`
3541
+ `}setMessageErrorFormatInvalid(){return"formato de fecha inválido, se esperaba 'dd-MM-yyyy'"}connectedCallback(){super.connectedCallback(),this.updateResponsiveMode(),window.addEventListener("resize",this.updateResponsiveModeBound),document.addEventListener("click",this.handleClickOutside)}disconnectedCallback(){window.removeEventListener("resize",this.updateResponsiveModeBound),document.removeEventListener("click",this.handleClickOutside),super.disconnectedCallback()}firstUpdated(){this.setInitialWidth()}updated(e){e.has("value")&&this._syncValue(this.value),(e.has("isOpen")||e.has("value"))&&this.setInitialWidth(),super.updated(e)}setInitialWidth(){this.inputContainer&&(this.calendarWidth=this.inputContainer.getBoundingClientRect().width)}updateResponsiveMode(){this.isMobile=window.innerWidth<=940,this.setInitialWidth()}handleInput(e){const t=e.target;this.inputValue=t.value,this._parseAndValidateDate(t.value,!0)}handleCalendarButtonClick(e){this.disabled||(e.stopPropagation(),this.isOpen=!this.isOpen,this.selectedDate?this.viewDate=this.selectedDate:this.viewDate=new Date,this.requestUpdate())}handleClearDate(){this.inputValue=null,this.selectedDate=null,this.error=!1,this.errorMessage=null,this.closeOverlay(null)}handleDateSelect(e){const t=e.detail.date;if(!t)return;if(this._validateDate(t)){this.selectedDate=t,this.viewDate=t;const e=ii(t,"dd-MM-yyyy");this.inputValue=e,this.closeOverlay(e)}else{const e=ii(t,"dd-MM-yyyy");this.inputValue=e,this.selectedDate=null,this.closeOverlay(null)}}handleViewDateChange(e){this.viewDate=e.detail.date}closeOverlay(e){this.value=e,this.dispatchEvent(new CustomEvent("date-selected",{detail:{value:e}})),this.isOpen=!1}_syncValue(e){if(""===e||null===e)return void(this.error||(this.selectedDate=null,this.inputValue=null,this.errorMessage=null));const t=this._parseDate(e);t&&this._validateDate(t)?(this.selectedDate=t,this.viewDate=t,this.error=!1,this.errorMessage=null,this.value=ii(t,"dd-MM-yyyy"),this.inputValue=this.value):this.selectedDate=t}_validateDate(e){if(!e)return!1;if(this.error=!1,this.errorMessage=null,this.eighteenOrOlder){const t=function(e,t,i){return vt(e,-18,i)}(new Date);if(ai(e,t))return this.error=!0,this.errorMessage="tenés que ser mayor de 18 años",!1}if(!this._isWithinBounds(e)){const e=this._getValidDateRange();return this.error=!0,this.errorMessage=`la fecha debe estar entre ${e?.minDate?ii(e.minDate,"dd-MM-yyyy"):""} y ${e?.maxDate?ii(e.maxDate,"dd-MM-yyyy"):""}.`,!1}return!0}_parseAndValidateDate(e,t){if(this.disabled)return;if(""===e||null===e)return this.selectedDate=null,this.error=!1,this.errorMessage=null,void(t&&this.closeOverlay(null));const i=this._parseDate(e);if(i){this._validateDate(i)?(this.selectedDate=i,this.viewDate=i,this.error=!1,this.errorMessage=null,t&&this.closeOverlay(ii(i,"dd-MM-yyyy"))):(this.error=!0,this.selectedDate=null,t&&this.closeOverlay(null))}else this.error=!0,this.errorMessage=this.setMessageErrorFormatInvalid(),this.selectedDate=null,t&&this.closeOverlay(null)}_parseDate(e){const t=e.split("-").map(Number);if(3===t.length){const[i,o,r]=t;if(i&&o&&r&&o>=1&&o<=12&&r>1e3){const t=new Date(r,o-1,i,12);if(ft(t)&&ii(t,"dd-MM-yyyy")===e)return t}}const i=e.split("-").map(Number);if(3===i.length){const[t,o,r]=i;if(t&&o&&r&&o>=1&&o<=12&&t>1e3){const i=new Date(t,o-1,r,12);if(ft(i)&&ii(i,"yyyy-MM-dd")===e)return i}}return null}_parseDateString(e){if(!e)return null;const t=e.split("-").map(Number);if(3===t.length&&!isNaN(t[0])&&!isNaN(t[1])&&!isNaN(t[2])){return new Date(t[0],t[1]-1,t[2],12)}return null}_getValidDateRange(){const e=this._parseDateString(this.minDate),t=this._parseDateString(this.maxDate);return e||t?e&&t&&ai(e,t)?null:{minDate:e,maxDate:t}:{minDate:null,maxDate:null}}_isWithinBounds(e){const t=this._getValidDateRange();return!t||(!t.minDate||!si(e,t.minDate))&&(!t.maxDate||!ai(e,t.maxDate))}render(){const e=n({"input-wrapper":!0,active:this.isOpen,error:this.error,disabled:this.disabled}),o=`width: ${this.width||"100%"};`,r=this._getValidDateRange();return t`
3405
3542
  <div class="datepicker-container" style="${this.labelColor?` --label-color: ${this.labelColor}`:""} ${o}">
3406
3543
  ${this.renderLabelContainer()}
3407
3544
 
3408
3545
  <div class="input-container">
3409
- <div class="${t}" style="width: 100%">
3546
+ <div class="${e}" style="width: 100%">
3410
3547
  <input
3411
3548
  type="text"
3412
3549
  class="date-input"
@@ -3416,7 +3553,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3416
3553
  @input=${this.handleInput}
3417
3554
  />
3418
3555
 
3419
- ${this.isRenderClearButton&&this.selectedDate&&!this.disabled?e`
3556
+ ${this.isRenderClearButton&&this.selectedDate&&!this.disabled?t`
3420
3557
  <button
3421
3558
  class="icon-button clear-button"
3422
3559
  @click=${this.handleClearDate}
@@ -3433,7 +3570,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3433
3570
  </button>
3434
3571
  </div>
3435
3572
 
3436
- ${this.isOpen?e`
3573
+ ${this.isOpen?t`
3437
3574
  <calendar-overlay
3438
3575
  .isMobile=${this.isMobile}
3439
3576
  .selectedDate=${this.selectedDate}
@@ -3453,14 +3590,14 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3453
3590
 
3454
3591
  ${this.renderHelper()}
3455
3592
  </div>
3456
- `}};a([A({type:String}),s("design:type",String)],di.prototype,"width",void 0),a([A({type:Boolean}),s("design:type",Object)],di.prototype,"isRenderClearButton",void 0),a([A({type:String}),s("design:type",String)],di.prototype,"minDate",void 0),a([A({type:String}),s("design:type",String)],di.prototype,"maxDate",void 0),a([A({type:Boolean}),s("design:type",Object)],di.prototype,"eighteenOrOlder",void 0),a([T(),s("design:type",Object)],di.prototype,"isOpen",void 0),a([T(),s("design:type",Object)],di.prototype,"selectedDate",void 0),a([T(),s("design:type",Date)],di.prototype,"viewDate",void 0),a([T(),s("design:type",Object)],di.prototype,"isMobile",void 0),a([T(),s("design:type",Number)],di.prototype,"calendarWidth",void 0),a([T(),s("design:type",Object)],di.prototype,"inputValue",void 0),a([z(".input-container"),s("design:type",HTMLDivElement)],di.prototype,"inputContainer",void 0),di=a([d("datepicker-component")],di);const li={"application/pdf":"PDF","application/msword":"Word (.doc)","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"Word (.docx)","image/jpeg":"JPEG","image/png":"PNG","text/plain":"Texto (.txt)"};let ci=class extends L{constructor(){super(...arguments),this.files=[],this.maxFiles=1,this.acceptedFileTypes=[],this.maxFileSize=5242880,this.buttonText="Agregar archivo",this.simulatedDelay=0,this.loading=!1,this.progress=0}static{this.styles=o`
3457
- ${X}
3458
- ${Q}
3593
+ `}};a([P({type:String}),s("design:type",String)],hi.prototype,"width",void 0),a([P({type:Boolean}),s("design:type",Object)],hi.prototype,"isRenderClearButton",void 0),a([P({type:String}),s("design:type",String)],hi.prototype,"minDate",void 0),a([P({type:String}),s("design:type",String)],hi.prototype,"maxDate",void 0),a([P({type:Boolean}),s("design:type",Object)],hi.prototype,"eighteenOrOlder",void 0),a([z(),s("design:type",Object)],hi.prototype,"isOpen",void 0),a([z(),s("design:type",Object)],hi.prototype,"selectedDate",void 0),a([z(),s("design:type",Date)],hi.prototype,"viewDate",void 0),a([z(),s("design:type",Object)],hi.prototype,"isMobile",void 0),a([z(),s("design:type",Number)],hi.prototype,"calendarWidth",void 0),a([z(),s("design:type",Object)],hi.prototype,"inputValue",void 0),a([A(".input-container"),s("design:type",HTMLDivElement)],hi.prototype,"inputContainer",void 0),hi=a([d("datepicker-component")],hi);let ui=class extends et{constructor(){super(...arguments),this.maxFiles=1,this.acceptedFileTypes=[],this.maxFileSize=5242880,this.buttonText="Agregar archivo"}static{this.styles=o`
3459
3594
  ${K}
3460
- ${Zt}
3595
+ ${Q}
3596
+ ${X}
3597
+ ${tt}
3461
3598
 
3462
3599
  :host([width]) {
3463
- width: var(--upload-file-width);
3600
+ width: var( --upload-file-width );
3464
3601
  }
3465
3602
 
3466
3603
  /* Contenedor principal para organizar los elementos */
@@ -3470,7 +3607,7 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3470
3607
  gap: 8px;
3471
3608
  }
3472
3609
 
3473
- input[type="file"] {
3610
+ input[ type="file" ] {
3474
3611
  display: none;
3475
3612
  }
3476
3613
 
@@ -3491,14 +3628,14 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3491
3628
  display: flex;
3492
3629
  align-items: center;
3493
3630
  gap: 8px;
3494
- color: var(--secondary-color-80, #404767);
3631
+ color: var( --secondary-color-80, #404767 );
3495
3632
  max-width: 100%;
3496
3633
  }
3497
3634
 
3498
3635
  .file-name {
3499
3636
  ${B};
3500
3637
  text-align: right;
3501
- color: var(--secondary-color-40);
3638
+ color: var( --secondary-color-40 );
3502
3639
  vertical-align: middle;
3503
3640
  leading-trim: NONE;
3504
3641
  white-space: nowrap;
@@ -3508,31 +3645,25 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3508
3645
  }
3509
3646
 
3510
3647
  .remove-file-button {
3511
- --primary-color: var(--ui-negative, #E00F0F);
3648
+ --primary-color: var( --ui-negative, #E00F0F );
3512
3649
  }
3513
3650
 
3514
3651
  .progress-bar {
3515
3652
  width: 100%;
3516
3653
  }
3517
- `}updated(t){super.updated(t),this.applyWidth()}applyWidth(){this.width&&this.style.setProperty("--upload-file-width",this.width)}getReadableFileTypes(){const t=this.acceptedFileTypes.map((t=>li[t]||t));if(t.length<=1)return t.join("");const e=t.pop();return`${t.join(", ")} y ${e}`}validateFiles(t){const e=this.maxFileSize/1024/1024;for(const i of t){if(this.acceptedFileTypes.length>0&&!this.acceptedFileTypes.includes(i.type))return this.errorMessage=`formato de archivo no válido, se aceptan: ${this.getReadableFileTypes()}`,!1;if(i.size>this.maxFileSize)return this.errorMessage=`el archivo es demasiado grande, el máximo es de ${e}MB`,!1}return!0}async handleFiles(t){if(this.error=!1,this.errorMessage=null,!t||this.disabled||this.loading)return;const e=Number.isFinite(this.maxFiles)&&this.maxFiles>0?this.maxFiles:1,i=Array.from(t),o=e-this.files.length;if(o<=0)return this.error=!0,void(this.errorMessage=`se ha alcanzado el número máximo de archivos (${e}).`);const r=i.slice(0,o);if(!this.validateFiles(r))return void(this.error=!0);const n=this.simulatedDelay??0;if(n<=0)return this.files=[...this.files,...r],void this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files}));this.loading=!0,this.progress=0,await this.updateComplete;const a=Date.now(),s=setInterval((()=>{const t=Date.now()-a,e=Math.min(Math.round(t/n*100),100);this.progress=e,this.progress>=100&&(clearInterval(s),this.files=[...this.files,...r],this.loading=!1,this.progress=0,this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files})))}),10);this.fileInput&&(this.fileInput.value="")}onFileInputChange(t){const e=t.target;this.handleFiles(e.files),this.fileInput&&(this.fileInput.value="")}removeFile(t){this.files=this.files.filter(((e,i)=>i!==t)),this.dispatchEvent(new CustomEvent("files-changed",{detail:this.files})),0===this.files.length&&(this.error=!1,this.errorMessage=null)}render(){const t=this.files.length>=this.maxFiles,o=this.disabled||t;return e`
3654
+ `}getFileConfig(){return{baseMaxFiles:this.maxFiles,maxFileSize:this.maxFileSize,acceptedFileTypes:this.acceptedFileTypes,errorMessageType:`formato de archivo no válido, se aceptan: ${this.getTextAcceptedFileTypes()}`,errorMessageSize:`el archivo es demasiado grande, el máximo es de ${this.getTextMaxFileSize()}MB`,typeError:"file"}}getTextAcceptedFileTypes(){return this.getReadableFileTypes(this.acceptedFileTypes,ot)}getTextMaxFileSize(){return this.baseGetTextMaxFileSize(this.maxFileSize)}updated(e){super.updated(e),this.applyWidth()}applyWidth(){this.width&&this.style.setProperty("--upload-file-width",this.width)}onFileInputChange(e){this.baseOnFileInputChange(e,this.getFileConfig())}render(){const e=this.files.length>=this.maxFiles,o=this.disabled||e,r=t`
3655
+ <randstad-button
3656
+ .label=${this.buttonText}
3657
+ .variant=${"button-primary"}
3658
+ ?disabled=${o}
3659
+ @click=${()=>this.fileInput?.click()}
3660
+ >
3661
+ </randstad-button>
3662
+ `;return t`
3518
3663
  <div class="file-container" style="${this.labelColor?`--label-color: ${this.labelColor};`:""}">
3519
3664
  ${this.renderLabelContainer()}
3520
3665
 
3521
- ${this.loading?e`
3522
- <div class="progress-bar-container">
3523
- <div class="progress-bar" role="progressbar" aria-label="Subiendo archivo…">
3524
- <div class="progress-bar-fill" style="width: ${this.progress}%;"></div>
3525
- </div>
3526
- </div>
3527
- `:e`
3528
- <randstad-button
3529
- .label=${this.buttonText}
3530
- .variant=${"button-primary"}
3531
- ?disabled=${o}
3532
- @click=${()=>this.fileInput?.click()}
3533
- >
3534
- </randstad-button>
3535
- `}
3666
+ ${this.renderLoadingContainer(r)}
3536
3667
 
3537
3668
  <input
3538
3669
  type="file"
@@ -3546,26 +3677,80 @@ const Yt=o`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
3546
3677
 
3547
3678
  ${this.renderHelper()}
3548
3679
 
3549
- ${this.files.length>0?e`
3680
+ ${this.files.length>0?t`
3550
3681
  <div class="file-list-container">
3551
3682
  <div class="file-list">
3552
- ${this.files.map(((t,i)=>e`
3553
- <div class="file-item">
3554
- <span class="file-name">${t.name}</span>
3555
-
3556
- <randstad-button
3557
- class="remove-file-button"
3558
- .variant=${"button-icon"}
3559
- .iconName=${"trash"}
3560
- @click=${()=>this.removeFile(i)}
3561
- ?disabled=${this.disabled}
3562
- >
3563
- </randstad-button>
3564
- </div>
3565
- `))}
3683
+ ${this.files.map(((e,i)=>t`
3684
+ <div class="file-item">
3685
+ <span class="file-name">${e.name}</span>
3686
+
3687
+ <randstad-button
3688
+ class="remove-file-button"
3689
+ .variant=${"button-icon"}
3690
+ .iconName=${"trash"}
3691
+ @click=${()=>this.removeFile(i,"file")}
3692
+ ?disabled=${this.disabled}
3693
+ >
3694
+ </randstad-button>
3695
+ </div>
3696
+ `))}
3566
3697
  </div>
3567
3698
  </div>
3568
3699
  `:i}
3569
3700
  </div>
3570
- `}};a([A({type:String}),s("design:type",String)],ci.prototype,"width",void 0),a([A({type:Array}),s("design:type",Array)],ci.prototype,"files",void 0),a([A({type:Number}),s("design:type",Object)],ci.prototype,"maxFiles",void 0),a([A({type:Array}),s("design:type",Array)],ci.prototype,"acceptedFileTypes",void 0),a([A({type:Number}),s("design:type",Object)],ci.prototype,"maxFileSize",void 0),a([A({type:String}),s("design:type",Object)],ci.prototype,"buttonText",void 0),a([A({type:Number}),s("design:type",Object)],ci.prototype,"simulatedDelay",void 0),a([T(),s("design:type",Object)],ci.prototype,"loading",void 0),a([T(),s("design:type",Object)],ci.prototype,"progress",void 0),a([z('input[type="file"]'),s("design:type",HTMLInputElement)],ci.prototype,"fileInput",void 0),ci=a([d("upload-file")],ci);export{Y as AccordionList,W as AccordionPanel,L as BaseControl,si as CalendarOverlay,H as CarouselCard,G as Checkbox,it as CustomModal,ot as CustomPopup,Ht as CustomRadio,Qt as CustomStepper,di as DatePickerComponent,Gt as FilterableSelect,Z as FormGroup,tt as IconComponent,rt as ProgressCircle,U as RandstadButton,J as RandstadForm,et as RandstadNotice,Jt as TabsBar,ci as UploadFile,te as UploadImage};
3701
+ `}};a([P({type:String}),s("design:type",String)],ui.prototype,"width",void 0),a([P({type:Number}),s("design:type",Object)],ui.prototype,"maxFiles",void 0),a([P({type:Array}),s("design:type",Array)],ui.prototype,"acceptedFileTypes",void 0),a([P({type:Number}),s("design:type",Object)],ui.prototype,"maxFileSize",void 0),a([P({type:String}),s("design:type",Object)],ui.prototype,"buttonText",void 0),ui=a([d("upload-file")],ui);let bi=class extends e{constructor(){super(...arguments),this.cards=[],this.isDown=!1,this.isDragging=!1,this.prevX=0}static{this.styles=o`
3702
+ :host {
3703
+ display: block;
3704
+ width: 100%;
3705
+ overflow: hidden;
3706
+ user-select: none;
3707
+ }
3708
+
3709
+ .carousel-wrapper {
3710
+ display: flex;
3711
+ gap: 24px;
3712
+ overflow-x: auto;
3713
+ -webkit-overflow-scrolling: touch;
3714
+ padding: 0 16px;
3715
+ }
3716
+
3717
+ .carousel-wrapper:hover {
3718
+ cursor: grab;
3719
+ }
3720
+
3721
+ .carousel-wrapper.active {
3722
+ cursor: grabbing;
3723
+ }
3724
+
3725
+ .carousel-wrapper::-webkit-scrollbar {
3726
+ display: none;
3727
+ }
3728
+
3729
+ .carousel-card-item {
3730
+ flex-shrink: 0;
3731
+ }
3732
+
3733
+ @media ( min-width: 941px ) {
3734
+ .carousel-wrapper {
3735
+ gap: 40px;
3736
+ }
3737
+ }
3738
+ `}disconnectedCallback(){super.disconnectedCallback(),this.baseAddListeners()}get slider(){return this.shadowRoot.querySelector(".carousel-wrapper")}handleMouseDown(e){this.slider&&0===e.button&&(this.isDown=!0,this.isDragging=!1,this.slider.classList.add("active"),this.prevX=e.pageX)}handleMouseLeave(){this.slider&&(this.isDown=!1,this.isDragging=!1,this.slider.classList.remove("active"))}handleMouseUp(){if(this.slider){if(this.isDown=!1,this.slider.classList.remove("active"),this.isDragging){const e=this.slider.querySelector(".carousel-card-item").getBoundingClientRect().width+24,t=this.slider.scrollLeft,i=Math.round(t/e)*e;this.slider.scrollTo({left:i,behavior:"smooth"})}this.isDragging=!1}}handleMouseMove(e){if(e.preventDefault(),!this.isDown||!this.slider)return;this.isDragging=!0;const t=e.pageX-this.prevX;this.slider.scrollLeft-=1.5*t,this.prevX=e.pageX}firstUpdated(){const e=this.slider;e&&(e.addEventListener("mousedown",this.handleMouseDown.bind(this)),e.addEventListener("mouseleave",this.handleMouseLeave.bind(this)),e.addEventListener("mouseup",this.handleMouseUp.bind(this)),e.addEventListener("mousemove",this.handleMouseMove.bind(this)),e.addEventListener("dragstart",(e=>e.preventDefault())))}baseAddListeners(){const e=this.slider;e&&(e.addEventListener("mousedown",this.handleMouseDown.bind(this)),e.addEventListener("mouseleave",this.handleMouseLeave.bind(this)),e.addEventListener("mouseup",this.handleMouseUp.bind(this)),e.addEventListener("mousemove",this.handleMouseMove.bind(this)),e.addEventListener("dragstart",(e=>e.preventDefault())))}render(){return t`
3739
+ <div class="carousel-wrapper">
3740
+ ${this.cards.map((e=>t`
3741
+ <div class="carousel-card-item">
3742
+ <carousel-card
3743
+ img=${e.img}
3744
+ name=${e.name}
3745
+ title=${e.title}
3746
+ description=${e.description}
3747
+ buttonLabel=${e.buttonLabel}
3748
+ cardId=${e.cardId}
3749
+ .onClick=${e.onClick}
3750
+ >
3751
+ </carousel-card>
3752
+ </div>
3753
+ `))}
3754
+ </div>
3755
+ `}};a([P({type:Array}),s("design:type",Array)],bi.prototype,"cards",void 0),bi=a([d("carousel-component")],bi);export{Y as AccordionList,q as AccordionPanel,L as BaseControl,pi as CalendarOverlay,bi as Carousel,H as CarouselCard,G as Checkbox,oe as CustomModal,re as CustomPopup,Ge as CustomRadio,Je as CustomStepper,hi as DatePickerComponent,Xe as FilterableSelect,ee as FormGroup,te as IconComponent,ne as ProgressCircle,W as RandstadButton,Z as RandstadForm,ie as RandstadNotice,Ze as TabsBar,ui as UploadFile,rt as UploadImage,J as scrollbarStyles};
3571
3756
  //# sourceMappingURL=index.js.map