@randstad-uca/design-system 1.0.8 → 1.0.9

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.
@@ -3,9 +3,10 @@ export declare class IconComponent extends LitElement {
3
3
  name: string;
4
4
  size: string;
5
5
  color: string;
6
- key: string;
7
6
  static styles: import("lit").CSSResult;
7
+ constructor();
8
+ connectedCallback(): void;
8
9
  updated(changedProperties: Map<string, unknown>): void;
9
10
  loadIcon(): Promise<void>;
10
- render(): symbol;
11
+ render(): null;
11
12
  }
@@ -5,6 +5,7 @@ export declare class FilterableSelect extends LitElement {
5
5
  defaultValue: string;
6
6
  disabled: boolean;
7
7
  label: string;
8
+ value: string;
8
9
  labelColor: string;
9
10
  filterable: boolean;
10
11
  filteredOptions: never[];
@@ -13,7 +14,7 @@ export declare class FilterableSelect extends LitElement {
13
14
  private debounceTimeout;
14
15
  static styles: import("lit").CSSResult;
15
16
  constructor();
16
- willUpdate(changedProperties: any): void;
17
+ willUpdate(changedProperties: Map<string, any>): void;
17
18
  connectedCallback(): void;
18
19
  disconnectedCallback(): void;
19
20
  handleInputClick(e: any): void;
package/dist/index.js CHANGED
@@ -41,6 +41,11 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
41
41
  display: inline-block;
42
42
  }
43
43
 
44
+ :host([disabled]) {
45
+ pointer-events: none;
46
+ cursor: not-allowed;
47
+ }
48
+
44
49
  .button {
45
50
  display: flex;
46
51
  align-items: center;
@@ -56,97 +61,93 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
56
61
  width: 100%;
57
62
  }
58
63
 
64
+ .button[disabled] {
65
+ cursor: not-allowed;
66
+ }
67
+
59
68
  .button-lg {
60
69
  font-size: 18px;
61
70
  line-height: 30px;
62
- min-height: 62px;
71
+ min-width: 48px;
72
+ min-height: 62px; /* padding (16px * 2) + line-height (30px) */
63
73
  }
64
74
 
65
75
  .button-md {
66
76
  font-size: 14px;
67
77
  line-height: 25px;
68
- min-height: 57px;
78
+ min-height: 57px; /* padding (16px * 2) + line-height (25px) */
69
79
  }
70
80
 
71
- /* Primary */
72
81
  .button-primary {
73
82
  background-color: var(--primary-color);
74
83
  color: var(--white);
75
84
  }
76
85
 
77
- .button-primary:not([disabled]):hover {
86
+ :host(:hover) .button-primary:not([disabled]) {
78
87
  background-color: var(--primary-button-hover);
79
88
  }
80
89
 
81
- .button-primary:not([disabled]):active {
90
+ :host(:active) .button-primary:not([disabled]) {
82
91
  background-color: var(--primary-button-active);
83
92
  }
84
93
 
85
- .button-primary:not([disabled]):focus-visible {
86
- outline: 2px solid var(--primary-button-focus);
87
- outline-offset: 2px;
94
+ :host(:focus-within) .button-primary:not([disabled]) {
95
+ background-color: var(--primary-button-focus);
88
96
  }
89
97
 
90
98
  .button-primary[disabled] {
91
99
  color: var(--secondary-color-60);
92
100
  background-color: var(--secondary-color-20);
93
- cursor: not-allowed;
94
101
  }
95
102
 
96
- /* Secondary */
97
103
  .button-secondary {
98
104
  background: none;
99
105
  color: var(--primary-color);
100
106
  border: 1px solid var(--primary-color);
101
107
  }
102
108
 
103
- .button-secondary:not([disabled]):hover {
109
+ :host(:hover) .button-secondary:not([disabled]) {
104
110
  color: #175197;
105
- border-color: #175197;
111
+ border: 1px solid #175197;
106
112
  }
107
113
 
108
- .button-secondary:not([disabled]):active {
114
+ :host(:active) .button-secondary:not([disabled]) {
109
115
  color: var(--secondary-color-80);
110
- border-color: var(--secondary-color-80);
116
+ border: 1px solid var(--secondary-color-80);
111
117
  }
112
118
 
113
- .button-secondary:not([disabled]):focus-visible {
114
- outline: 2px solid var(--primary-color);
115
- outline-offset: 2px;
119
+ :host(:focus-within) .button-secondary:not([disabled]) {
120
+ color: var(--primary-color);
121
+ border: 1px solid var(--primary-color);
116
122
  }
117
123
 
118
124
  .button-secondary[disabled] {
119
125
  color: var(--secondary-color-60);
120
- border-color: var(--secondary-color-60);
121
- cursor: not-allowed;
126
+ border: 1px solid var(--secondary-color-60);
122
127
  }
123
128
 
124
- /* Tertiary */
125
129
  .button-tertiary {
126
130
  background: none;
127
131
  border: none;
128
132
  color: var(--primary-color);
129
133
  }
130
134
 
131
- .button-tertiary:not([disabled]):hover {
135
+ :host(:hover) .button-tertiary:not([disabled]) {
132
136
  background: #2175D90D;
133
137
  }
134
138
 
135
- .button-tertiary:not([disabled]):active {
139
+ :host(:active) .button-tertiary:not([disabled]) {
136
140
  background-color: #2175D91A;
137
141
  }
138
142
 
139
- .button-tertiary:not([disabled]):focus-visible {
140
- outline: 2px solid var(--primary-color);
141
- outline-offset: 2px;
143
+ :host(:focus-within) .button-tertiary:not([disabled]) {
144
+ border: 1px solid var(--primary-color);
142
145
  }
143
146
 
144
147
  .button-tertiary[disabled] {
145
148
  color: #6F758D;
146
- cursor: not-allowed;
147
149
  }
148
150
 
149
- /* Round */
150
151
  .button-round {
151
152
  width: 48px;
152
153
  height: 48px;
@@ -156,22 +157,16 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
156
157
  padding: 0;
157
158
  }
158
159
 
159
- .button-round:not([disabled]):hover {
160
+ :host(:hover) .button-round:not([disabled]) {
160
161
  background-color: #E8F1FB;
161
162
  }
162
163
 
163
- .button-round:not([disabled]):active {
164
+ :host(:active) .button-round:not([disabled]) {
164
165
  background-color: #A6C8F0;
165
166
  }
166
167
 
167
- .button-round:not([disabled]):focus-visible {
168
- outline: 2px solid var(--primary-color);
169
- outline-offset: 2px;
170
- }
171
-
172
168
  .button-round[disabled] {
173
169
  background-color: var(--secondary-color-20);
174
- cursor: not-allowed;
175
170
  }
176
171
 
177
172
  .button-round img.button-icon {
@@ -179,14 +174,13 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
179
174
  height: 24px;
180
175
  }
181
176
 
182
- /* Loader */
183
177
  .loader {
184
178
  display: flex;
185
179
  gap: 8px;
186
180
  justify-content: center;
187
181
  align-items: center;
188
182
  width: 100%;
189
- height: 100%;
183
+ height: 100%; /* Ocupa toda la altura del botón */
190
184
  }
191
185
 
192
186
  .dot {
@@ -227,7 +221,7 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
227
221
  border: none;
228
222
  color: var(--white);
229
223
  }
230
- `}handleClick(t){this.disabled||this.dispatchEvent(new CustomEvent("button-click",{bubbles:!0,composed:!0}))}render(){const t=`button ${"button-round"===this.variant?"":`button-${this.size}`} ${this.variant} ${this.loader?"loader":""}`,e="button-tertiary"===this.variant?"#2175D9":"white";return o`
224
+ `}handleClick(t){this.disabled||this.dispatchEvent(new CustomEvent("button-click",{bubbles:!0,composed:!0}))}render(){const t=`button button-${this.size} ${this.variant} ${this.loader?"loader":""}`,e="button-tertiary"===this.variant?"#2175D9":"white";return o`
231
225
  <button
232
226
  type="button"
233
227
  class=${t}
@@ -243,7 +237,7 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
243
237
  `:o`
244
238
  ${this.iconSrc&&"button-round"===this.variant?o`<img src=${this.iconSrc} alt="icon" class="button-icon" />`:""}
245
239
  ${this.iconName&&"button-round"!==this.variant&&"left"===this.iconPosition?o`<randstad-icon name=${this.iconName} size="24px"></randstad-icon>`:""}
246
- ${this.label?o`<span>${this.label}</span>`:o`<slot></slot>`}
240
+ ${this.label}
247
241
  ${this.iconName&&"button-round"!==this.variant&&"right"===this.iconPosition?o`<randstad-icon name=${this.iconName} size="24px"></randstad-icon>`:""}
248
242
  `}
249
243
  </button>
@@ -314,7 +308,7 @@ function N(t,e){return(e,o,i)=>((t,e,o)=>(o.configurable=!0,o.enumerable=!0,Refl
314
308
  ${this.prefix}&nbsp;
315
309
  ${this.renderClause(this.clause1Text,this.clause1Url)},&nbsp;
316
310
  ${this.connector}&nbsp;
317
- ${this.renderClause(this.clause2Text,this.clause2Url)}
311
+ ${this.renderClause(this.clause2Text,this.clause2Url)}.
318
312
  </span>
319
313
  </label>
320
314
  `}};n([I({type:String}),a("design:type",Object)],M.prototype,"prefix",void 0),n([I({type:String}),a("design:type",Object)],M.prototype,"clause1Text",void 0),n([I({type:String}),a("design:type",String)],M.prototype,"clause1Url",void 0),n([I({type:String}),a("design:type",Object)],M.prototype,"connector",void 0),n([I({type:String}),a("design:type",Object)],M.prototype,"clause2Text",void 0),n([I({type:String}),a("design:type",String)],M.prototype,"clause2Url",void 0),n([I({type:Boolean,reflect:!0}),a("design:type",Object)],M.prototype,"checked",void 0),M=n([l("randstad-checkbox")],M);
@@ -4047,7 +4041,7 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4047
4041
  outline: none;
4048
4042
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
4049
4043
  width: 100%;
4050
- color: #0F1941 !important;
4044
+ color: #0F1941;
4051
4045
  }
4052
4046
 
4053
4047
  .form.error .form-input {
@@ -4167,7 +4161,7 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4167
4161
  }
4168
4162
 
4169
4163
  .link-text:hover {
4170
- text-decoration: underline;
4164
+ color: #0f3b65;
4171
4165
  }
4172
4166
 
4173
4167
  .tooltip-wrapper randstad-icon {
@@ -4182,13 +4176,6 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4182
4176
  .toggle-password randstad-icon svg {
4183
4177
  fill: #2175D9 !important;
4184
4178
  }
4185
-
4186
- input:-webkit-autofill,
4187
- textarea:-webkit-autofill {
4188
- box-shadow: 0 0 0px 1000px white inset !important;
4189
- -webkit-text-fill-color: #0F1941 !important;
4190
- transition: background-color 5000s ease-in-out 0s;
4191
- }
4192
4179
  `}togglePassword(t){this.isPasswordVisible=!this.isPasswordVisible;const e=t.currentTarget.parentElement?.querySelector("input");e&&(e.type=this.isPasswordVisible?"text":"password"),this.requestUpdate()}handleInput(t){const e=t.target;this.value=e.value,this.dispatchEvent(new CustomEvent("valueChanged",{detail:this.value})),this.dispatchEvent(new Event("input",{bubbles:!0}))}handleLinkClick(t){t.preventDefault(),this.linkRoute&&this.dispatchEvent(new CustomEvent("linkClicked",{detail:this.linkRoute,bubbles:!0,composed:!0}))}render(){return o`
4193
4180
  <div
4194
4181
  class="form ${this.error?"error":""} ${this.success?"success":""} ${this.disabled?"disabled":""}"
@@ -4228,10 +4215,11 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4228
4215
  />
4229
4216
  ${"password"===this.type?o`
4230
4217
  <button type="button" class="toggle-password" @click=${this.togglePassword}>
4231
- <button type="button" class="toggle-password" @click=${this.togglePassword}>
4232
- ${this.isPasswordVisible?o`<randstad-icon name="eye_crossed" size="24px" color="#2175D9" key="visible"></randstad-icon>`:o`<randstad-icon name="eye" size="24px" color="#2175D9" key="hidden"></randstad-icon>`}
4233
- </button>
4234
-
4218
+ <randstad-icon
4219
+ name=${this.isPasswordVisible?"eye_crossed":"eye"}
4220
+ size="24px"
4221
+ color="#2175D9"
4222
+ ></randstad-icon>
4235
4223
  </button>
4236
4224
  `:r}
4237
4225
  `}
@@ -4245,15 +4233,11 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4245
4233
  ${this.errorMessage?this.errorMessage:o`<slot name="error-extended"></slot>`}
4246
4234
  </p>
4247
4235
  `:r}
4248
- ${this.linkText&&this.linkRoute?o`
4249
- <div style="text-align: right;">
4250
- <a class="link-text" href="#" @click=${this.handleLinkClick}>${this.linkText}</a>
4251
- </div>
4252
- `:r}
4236
+ ${this.linkText&&this.linkRoute?o`<a class="link-text" href="#" @click=${this.handleLinkClick}>${this.linkText}</a>`:r}
4253
4237
 
4254
4238
  ${this.helper?o`<p class="helper-description">${this.helper}</p>`:r}
4255
4239
  </div>
4256
- `}};n([I({type:String}),a("design:type",String)],xs.prototype,"placeholder",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"label",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"labelColor",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"value",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"size",void 0),n([I({type:String}),a("design:type",Object)],xs.prototype,"icon",void 0),n([I({type:String}),a("design:type",Object)],xs.prototype,"helper",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"error",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"errorMessage",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"success",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"disabled",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"typing",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"type",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"tooltipMessage",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"linkText",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"linkRoute",void 0),n([I({type:Boolean,reflect:!0}),a("design:type",Object)],xs.prototype,"isPasswordVisible",void 0),xs=n([l("randstad-form")],xs);class Cs extends t{constructor(){super(...arguments),this.name="",this.size="24px",this.color="",this.key=""}static{this.styles=e`
4240
+ `}};n([I({type:String}),a("design:type",String)],xs.prototype,"placeholder",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"label",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"labelColor",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"value",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"size",void 0),n([I({type:String}),a("design:type",Object)],xs.prototype,"icon",void 0),n([I({type:String}),a("design:type",Object)],xs.prototype,"helper",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"error",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"errorMessage",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"success",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"disabled",void 0),n([I({type:Boolean}),a("design:type",Boolean)],xs.prototype,"typing",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"type",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"tooltipMessage",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"linkText",void 0),n([I({type:String}),a("design:type",String)],xs.prototype,"linkRoute",void 0),n([I({type:Boolean,reflect:!0}),a("design:type",Object)],xs.prototype,"isPasswordVisible",void 0),xs=n([l("randstad-form")],xs);class Cs extends t{static{this.styles=e`
4257
4241
  :host {
4258
4242
  display: inline-flex;
4259
4243
  width: var(--icon-size, 24px);
@@ -4261,13 +4245,12 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4261
4245
  align-items: center;
4262
4246
  justify-content: center;
4263
4247
  }
4264
-
4265
4248
  svg {
4266
- width: var(--icon-size, 24px);
4267
- height: var(--icon-size, 24px);
4249
+ width: var(--icon-size, 24px); /* Tamaño fijo basado en size */
4250
+ height: var(--icon-size, 24px); /* Tamaño fijo basado en size */
4268
4251
  fill: var(--icon-color, currentColor);
4269
4252
  }
4270
- `}updated(t){(t.has("name")||t.has("key"))&&this.loadIcon(),t.has("size")&&this.style.setProperty("--icon-size",this.size),t.has("color")&&this.style.setProperty("--icon-color",this.color)}async loadIcon(){if(this.name)try{const t=await fetch(`/assets/icons/${this.name}.svg`);if(!t.ok)throw new Error("Icon not found");const e=await t.text(),o=new DOMParser,i=o.parseFromString(e,"image/svg+xml").querySelector("svg");if(!i)throw new Error("No se encontró un SVG válido");i.removeAttribute("fill"),i.setAttribute("width",this.size),i.setAttribute("height",this.size),this.renderRoot.innerHTML="",this.renderRoot.appendChild(i)}catch(t){console.error(`❌ Error cargando icono ${this.name}:`,t),this.renderRoot.innerHTML="<span>⚠️</span>"}else this.renderRoot.innerHTML=""}render(){return r}}n([I({type:String}),a("design:type",String)],Cs.prototype,"name",void 0),n([I({type:String}),a("design:type",String)],Cs.prototype,"size",void 0),n([I({type:String}),a("design:type",String)],Cs.prototype,"color",void 0),n([I({type:String}),a("design:type",String)],Cs.prototype,"key",void 0),customElements.define("randstad-icon",Cs);let ks=class extends t{constructor(){super(...arguments),this.open=!1,this.title="Título del modal"}static{this.styles=e`
4253
+ `}constructor(){super(),this.name="",this.size="24px",this.color=""}connectedCallback(){super.connectedCallback(),this.name&&this.loadIcon()}updated(t){t.has("name")&&this.name&&this.loadIcon(),t.has("size")&&this.style.setProperty("--icon-size",this.size),t.has("color")&&this.style.setProperty("--icon-color",this.color)}async loadIcon(){if(this.name)try{const t=await fetch(`/assets/icons/${this.name}.svg`);if(!t.ok)throw new Error("Icon not found");const e=await t.text(),o=new DOMParser,i=o.parseFromString(e,"image/svg+xml").querySelector("svg");if(!i)throw new Error("No se encontró un elemento SVG válido");i.removeAttribute("fill"),i.setAttribute("width",this.size||"24px"),i.setAttribute("height",this.size||"24px"),this.renderRoot.innerHTML="",this.renderRoot.appendChild(i)}catch(t){console.error(`❌ Error cargando icono ${this.name}:`,t),this.renderRoot.innerHTML="<span>⚠️</span>"}else this.renderRoot.innerHTML=""}render(){return null}}n([I({type:String}),a("design:type",String)],Cs.prototype,"name",void 0),n([I({type:String}),a("design:type",String)],Cs.prototype,"size",void 0),n([I({type:String}),a("design:type",String)],Cs.prototype,"color",void 0),customElements.define("randstad-icon",Cs);let ks=class extends t{constructor(){super(...arguments),this.open=!1,this.title="Título del modal"}static{this.styles=e`
4271
4254
  :host {
4272
4255
  display: none;
4273
4256
  position: fixed;
@@ -4354,6 +4337,7 @@ console.warn('WARNING: Since Vaadin 23.2, "@vaadin/vaadin-date-picker" is deprec
4354
4337
  line-height: 25px;
4355
4338
  font-weight: 400;
4356
4339
  color: white;
4340
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
4357
4341
  font-family: 'Graphik', sans-serif;
4358
4342
  }
4359
4343
  .container {
@@ -4865,7 +4849,6 @@ const ha=e`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
4865
4849
  background: white;
4866
4850
  cursor: pointer;
4867
4851
  transition: background-color 0.3s ease;
4868
- color: #0F1941 !important;
4869
4852
  }
4870
4853
 
4871
4854
  .input-container:hover .filter-input {
@@ -4973,7 +4956,7 @@ const ha=e`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
4973
4956
  .hidden {
4974
4957
  display: none;
4975
4958
  }
4976
- `}constructor(){super(),this.options=[],this.placeholder="Filtrar opciones...",this.defaultValue="",this.disabled=!1,this.label="",this.labelColor="",this.filterable=!0,this.filteredOptions=[],this.filterValue="",this.isOpen=!1,this.debounceTimeout=null,this.defaultValue&&this.options.includes(this.defaultValue)&&(this.filterValue=this.defaultValue)}willUpdate(t){t.has("options")&&(this.filteredOptions=[...this.options]),t.has("defaultValue")&&this.options.includes(this.defaultValue)&&(this.filterValue=this.defaultValue)}connectedCallback(){super.connectedCallback(),this.filteredOptions=[...this.options],document.addEventListener("click",this.handleClickOutside.bind(this))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleClickOutside.bind(this))}handleInputClick(t){this.disabled||t.target!==this.shadowRoot.querySelector(".filter-input")||(this.isOpen=!this.isOpen,this.requestUpdate())}handleInput(t){const e=t.target.value.toLowerCase();this.filterValue=e,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()}handleSelect(t){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.isOpen=!1,this.requestUpdate()}handleIconClick(){this.disabled||(this.isOpen||this.filterValue?(this.isOpen=!1,this.filterValue="",this.filteredOptions=[...this.options],this.dispatchEvent(new CustomEvent("option-selected",{detail:{value:""},bubbles:!0,composed:!0}))):this.isOpen=!0,this.requestUpdate())}handleClickOutside(t){this.contains(t.target)||(this.isOpen=!1,this.requestUpdate())}render(){return o`
4959
+ `}constructor(){if(super(),this.options=[],this.placeholder="Filtrar opciones...",this.defaultValue="",this.disabled=!1,this.label="",this.value="",this.labelColor="",this.filterable=!0,this.filteredOptions=[],this.filterValue="",this.isOpen=!1,this.debounceTimeout=null,this.defaultValue){const t=this.options.find((t=>"string"==typeof t?t===this.defaultValue:t.value===this.defaultValue));t&&(this.filterValue="string"==typeof t?t:t.label)}}willUpdate(t){if(t.has("options")&&(this.filteredOptions=[...this.options]),t.has("defaultValue")||t.has("options")){const t=this.options.find((t=>"string"==typeof t?t===this.defaultValue:t.value===this.defaultValue));t&&(this.filterValue="string"==typeof t?t:t.label)}if(t.has("value")){const t=this.options.find((t=>"string"==typeof t?t===this.value:t.value===this.value));t&&(this.filterValue="string"==typeof t?t:t.label)}}connectedCallback(){super.connectedCallback(),this.filteredOptions=[...this.options],document.addEventListener("click",this.handleClickOutside.bind(this))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleClickOutside.bind(this))}handleInputClick(t){this.disabled||t.target!==this.shadowRoot.querySelector(".filter-input")||(this.isOpen=!this.isOpen,this.requestUpdate())}handleInput(t){const e=t.target.value.toLowerCase();this.filterValue=e,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()}handleSelect(t){this.value="string"==typeof t?t:t.value;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.isOpen=!1,this.requestUpdate()}handleIconClick(){this.disabled||(this.filterable&&this.filterValue?(this.filterValue="",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){this.contains(t.target)||(this.isOpen=!1,this.requestUpdate())}render(){return o`
4977
4960
  <div class="select-container" style="${this.labelColor?` --label-color: ${this.labelColor}`:""}">
4978
4961
  ${this.label?o`
4979
4962
  <div class="label-container">
@@ -4996,7 +4979,8 @@ const ha=e`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
4996
4979
  @click="${this.handleIconClick}"
4997
4980
  ?disabled="${this.disabled}"
4998
4981
  >
4999
- ${this.isOpen||this.filterValue?o`<randstad-icon name="close" size="24px" color="#2175D9" key="visible"></randstad-icon>`:o`<randstad-icon name="arrow_down" size="24px" color="#2175D9" key="hidden"></randstad-icon>`}
4982
+ ${this.filterable&&this.filterValue?o`<randstad-icon name="close" size="24px" color="#2175D9"></randstad-icon>`:this.isOpen&&this.filteredOptions.length>0?o`<randstad-icon name="arrow_up" size="24px" color="#2175D9"></randstad-icon>`:o`<randstad-icon name="arrow_down" size="24px" color="#2175D9"></randstad-icon>`}
4983
+
5000
4984
  </button>
5001
4985
  </div>
5002
4986
  <ul class="options-list ${this.isOpen&&this.filteredOptions.length>0?"":"hidden"}">
@@ -5008,7 +4992,7 @@ const ha=e`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
5008
4992
  </ul>
5009
4993
  </div>
5010
4994
  </div>
5011
- `}};n([I({type:Array}),a("design:type",Array)],ma.prototype,"options",void 0),n([I({type:String}),a("design:type",Object)],ma.prototype,"placeholder",void 0),n([I({type:String,attribute:"default-value"}),a("design:type",Object)],ma.prototype,"defaultValue",void 0),n([I({type:Boolean}),a("design:type",Object)],ma.prototype,"disabled",void 0),n([I({type:String}),a("design:type",Object)],ma.prototype,"label",void 0),n([I({type:String}),a("design:type",Object)],ma.prototype,"labelColor",void 0),n([I({type:Boolean}),a("design:type",Object)],ma.prototype,"filterable",void 0),n([$(),a("design:type",Object)],ma.prototype,"filteredOptions",void 0),n([$(),a("design:type",Object)],ma.prototype,"filterValue",void 0),n([$(),a("design:type",Object)],ma.prototype,"isOpen",void 0),ma=n([l("filterable-select"),a("design:paramtypes",[])],ma);let fa=class extends t{constructor(){super(...arguments),this.totalSteps=4,this.currentStep=0}static{this.styles=e`
4995
+ `}};n([I({type:Array}),a("design:type",Array)],ma.prototype,"options",void 0),n([I({type:String}),a("design:type",Object)],ma.prototype,"placeholder",void 0),n([I({type:String,attribute:"default-value"}),a("design:type",Object)],ma.prototype,"defaultValue",void 0),n([I({type:Boolean}),a("design:type",Object)],ma.prototype,"disabled",void 0),n([I({type:String}),a("design:type",Object)],ma.prototype,"label",void 0),n([I({type:String}),a("design:type",String)],ma.prototype,"value",void 0),n([I({type:String}),a("design:type",Object)],ma.prototype,"labelColor",void 0),n([I({type:Boolean}),a("design:type",Object)],ma.prototype,"filterable",void 0),n([$(),a("design:type",Object)],ma.prototype,"filteredOptions",void 0),n([$(),a("design:type",Object)],ma.prototype,"filterValue",void 0),n([$(),a("design:type",Object)],ma.prototype,"isOpen",void 0),ma=n([l("filterable-select"),a("design:paramtypes",[])],ma);let fa=class extends t{constructor(){super(...arguments),this.totalSteps=4,this.currentStep=0}static{this.styles=e`
5012
4996
  .stepper {
5013
4997
  display: flex;
5014
4998
  gap: 20px;
@@ -5165,8 +5149,8 @@ const ha=e`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
5165
5149
  align-items: center;
5166
5150
  box-sizing: border-box;
5167
5151
  min-height: 48px;
5168
- min-width: 380px;
5169
- max-width: 380px;
5152
+ min-width: 270px;
5153
+ max-width: 480px;
5170
5154
  border-radius: 4px;
5171
5155
  padding: 8px;
5172
5156
  gap: 8px;
@@ -5220,17 +5204,6 @@ const ha=e`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20p
5220
5204
  .informative {
5221
5205
  background-color: var(--ui-informative);
5222
5206
  }
5223
-
5224
- @media (max-width: 940px) {
5225
- :host {
5226
- bottom: 16px !important;
5227
- left: 50% !important;
5228
- right: auto !important;
5229
- top: auto !important;
5230
- transform: translateX(-50%) !important;
5231
- justify-content: center !important;
5232
- }
5233
- }
5234
5207
  `]}constructor(){super(),this.type="informative",this.icon="info",this.message="Este es un mensaje.",this.open=!1,this.position="bottom-center"}static get properties(){return{type:{type:String},icon:{type:String},message:{type:String},open:{type:Boolean},position:{type:String,reflect:!0}}}render(){const t="error"===this.type||"warning"===this.type?"alert":"status";return o`
5235
5208
  <div
5236
5209
  class="container ${this.open?"":"hidden"} ${this.type}"