@rededor/site-front-end-lib 20.0.32 → 20.0.33

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 (71) hide show
  1. package/cura/forms/cura-checkbox/index.d.ts +6 -3
  2. package/cura/forms/cura-select/index.d.ts +2 -3
  3. package/fesm2022/rededor-site-front-end-lib-components-algolia-search.mjs +2 -2
  4. package/fesm2022/rededor-site-front-end-lib-components-algolia-search.mjs.map +1 -1
  5. package/fesm2022/rededor-site-front-end-lib-components-cards.mjs +6 -6
  6. package/fesm2022/rededor-site-front-end-lib-components-cards.mjs.map +1 -1
  7. package/fesm2022/rededor-site-front-end-lib-components-carousels.mjs +2 -2
  8. package/fesm2022/rededor-site-front-end-lib-components-carousels.mjs.map +1 -1
  9. package/fesm2022/rededor-site-front-end-lib-components-cta-wrapper.mjs +2 -2
  10. package/fesm2022/rededor-site-front-end-lib-components-cta-wrapper.mjs.map +1 -1
  11. package/fesm2022/rededor-site-front-end-lib-components-error.mjs +2 -2
  12. package/fesm2022/rededor-site-front-end-lib-components-error.mjs.map +1 -1
  13. package/fesm2022/rededor-site-front-end-lib-components-filter-letter-and-terms.mjs +2 -2
  14. package/fesm2022/rededor-site-front-end-lib-components-filter-letter-and-terms.mjs.map +1 -1
  15. package/fesm2022/rededor-site-front-end-lib-components-filters-filter-generic.mjs +4 -4
  16. package/fesm2022/rededor-site-front-end-lib-components-filters-filter-generic.mjs.map +1 -1
  17. package/fesm2022/rededor-site-front-end-lib-components-footer.mjs +2 -2
  18. package/fesm2022/rededor-site-front-end-lib-components-footer.mjs.map +1 -1
  19. package/fesm2022/rededor-site-front-end-lib-components-header-components-action.mjs +2 -2
  20. package/fesm2022/rededor-site-front-end-lib-components-header-components-action.mjs.map +1 -1
  21. package/fesm2022/rededor-site-front-end-lib-components-header-components-main.mjs +4 -4
  22. package/fesm2022/rededor-site-front-end-lib-components-header-components-main.mjs.map +1 -1
  23. package/fesm2022/rededor-site-front-end-lib-components-header-components-side.mjs +2 -2
  24. package/fesm2022/rededor-site-front-end-lib-components-header-components-side.mjs.map +1 -1
  25. package/fesm2022/rededor-site-front-end-lib-components-header.mjs +2 -2
  26. package/fesm2022/rededor-site-front-end-lib-components-header.mjs.map +1 -1
  27. package/fesm2022/rededor-site-front-end-lib-components-load-screen.mjs +2 -2
  28. package/fesm2022/rededor-site-front-end-lib-components-load-screen.mjs.map +1 -1
  29. package/fesm2022/rededor-site-front-end-lib-components-page-header.mjs +2 -2
  30. package/fesm2022/rededor-site-front-end-lib-components-page-header.mjs.map +1 -1
  31. package/fesm2022/rededor-site-front-end-lib-components-page-template-fullcontent.mjs +2 -2
  32. package/fesm2022/rededor-site-front-end-lib-components-page-template-fullcontent.mjs.map +1 -1
  33. package/fesm2022/rededor-site-front-end-lib-components-page-template-sidebar.mjs +2 -2
  34. package/fesm2022/rededor-site-front-end-lib-components-page-template-sidebar.mjs.map +1 -1
  35. package/fesm2022/rededor-site-front-end-lib-components-pagination.mjs +2 -2
  36. package/fesm2022/rededor-site-front-end-lib-components-pagination.mjs.map +1 -1
  37. package/fesm2022/rededor-site-front-end-lib-components-search.mjs +2 -2
  38. package/fesm2022/rededor-site-front-end-lib-components-search.mjs.map +1 -1
  39. package/fesm2022/rededor-site-front-end-lib-components-section-navigation.mjs +2 -2
  40. package/fesm2022/rededor-site-front-end-lib-components-section-navigation.mjs.map +1 -1
  41. package/fesm2022/rededor-site-front-end-lib-components-side-ctas.mjs +8 -8
  42. package/fesm2022/rededor-site-front-end-lib-components-side-ctas.mjs.map +1 -1
  43. package/fesm2022/rededor-site-front-end-lib-components-whatsapp.mjs +2 -2
  44. package/fesm2022/rededor-site-front-end-lib-components-whatsapp.mjs.map +1 -1
  45. package/fesm2022/rededor-site-front-end-lib-cura-accordion.mjs +2 -2
  46. package/fesm2022/rededor-site-front-end-lib-cura-accordion.mjs.map +1 -1
  47. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-outline.mjs +2 -2
  48. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-outline.mjs.map +1 -1
  49. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-select.mjs +2 -2
  50. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-select.mjs.map +1 -1
  51. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-transparent.mjs +2 -2
  52. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-transparent.mjs.map +1 -1
  53. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button.mjs +2 -2
  54. package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button.mjs.map +1 -1
  55. package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-modal.mjs +2 -2
  56. package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-modal.mjs.map +1 -1
  57. package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-toast.mjs +2 -2
  58. package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-toast.mjs.map +1 -1
  59. package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-checkbox.mjs +9 -5
  60. package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-checkbox.mjs.map +1 -1
  61. package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-input-text.mjs +2 -2
  62. package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-input-text.mjs.map +1 -1
  63. package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select.mjs +18 -42
  64. package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select.mjs.map +1 -1
  65. package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-display.mjs +2 -2
  66. package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-display.mjs.map +1 -1
  67. package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-heading.mjs +2 -2
  68. package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-heading.mjs.map +1 -1
  69. package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-paragraph.mjs +2 -2
  70. package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-paragraph.mjs.map +1 -1
  71. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ElementRef, PLATFORM_ID, input, model, output, signal, viewChild, contentChildren, computed, effect, forwardRef, Component } from '@angular/core';
2
+ import { inject, ElementRef, PLATFORM_ID, input, model, output, signal, linkedSignal, viewChild, contentChildren, computed, effect, forwardRef, Component } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { isPlatformBrowser, CommonModule } from '@angular/common';
5
5
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
@@ -77,7 +77,12 @@ class CuraSelectComponent {
77
77
  this.isFocused = signal(false, ...(ngDevMode ? [{ debugName: "isFocused" }] : []));
78
78
  this.isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
79
79
  this.activeIndex = signal(-1, ...(ngDevMode ? [{ debugName: "activeIndex" }] : []));
80
- this.textInput = signal('', ...(ngDevMode ? [{ debugName: "textInput" }] : []));
80
+ this.textInput = linkedSignal(() => {
81
+ const opts = this.options();
82
+ const val = this.value();
83
+ const option = opts.find((o) => o.value() === val);
84
+ return option?.elementRef?.nativeElement?.textContent ?? '';
85
+ }, ...(ngDevMode ? [{ debugName: "textInput" }] : []));
81
86
  // Unique ID for accessibility
82
87
  this.componentId = `cura-select-${Math.random().toString(36).substring(2, 8)}`;
83
88
  // Form control callbacks
@@ -180,12 +185,8 @@ class CuraSelectComponent {
180
185
  this.updateOptionHighlights(this.activeIndex());
181
186
  });
182
187
  effect(() => {
183
- if (!this.options() || this.options().length === 0)
184
- return;
185
- const selectedOption = this.options().find((option) => option.selected());
186
- if (selectedOption && selectedOption.value() !== this.value()) {
187
- this.handleOptionSelected(selectedOption);
188
- }
188
+ const currentValue = this.value();
189
+ this.options().forEach((opt) => opt.selected.set(opt.value() === currentValue));
189
190
  });
190
191
  }
191
192
  ngAfterViewInit() {
@@ -200,12 +201,6 @@ class CuraSelectComponent {
200
201
  // ControlValueAccessor implementation
201
202
  writeValue(value) {
202
203
  this.value.set(value);
203
- if (!this.options)
204
- return;
205
- const option = this.options().find((opt) => opt.value() === value);
206
- if (option) {
207
- this.textInput.set(option.elementRef?.nativeElement?.textContent || '');
208
- }
209
204
  }
210
205
  registerOnChange(fn) {
211
206
  this.onChange = fn;
@@ -229,35 +224,18 @@ class CuraSelectComponent {
229
224
  option.size.set(this.size());
230
225
  option.active.set(false);
231
226
  option.visible.set(true);
232
- const isSelected = this.value() === option.value();
233
- option.selected.set(isSelected);
234
- if (isSelected) {
235
- this.value.set(option.value());
236
- this.textInput.update((value) => option.elementRef?.nativeElement?.textContent || value);
237
- }
238
227
  });
239
228
  }
240
- handleOptionSelected(selectedOption) {
229
+ selectOption(selectedOption) {
241
230
  const value = selectedOption.value();
242
231
  this.value.set(value);
243
- const optionText = selectedOption.elementRef?.nativeElement?.textContent || '';
244
- if (this.textInput() !== optionText) {
245
- this.onChange(value);
246
- this.textInput.set(optionText);
247
- this.isOpen.set(false);
248
- this.filterOptions(optionText);
249
- this.selected.emit({ value });
250
- }
251
- }
252
- clearSelectedAttributes() {
253
- if (!this.options())
254
- return;
255
- this.options().forEach((option) => {
256
- option.selected.set(false);
257
- });
232
+ this.onChange(value);
233
+ this.isOpen.set(false);
234
+ this.filterOptions(selectedOption.elementRef?.nativeElement?.textContent || '');
235
+ this.selected.emit({ value });
258
236
  }
259
237
  removeAccents(str) {
260
- return str.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
238
+ return str.normalize('NFD').replace(/[̀-ͯ]/g, '');
261
239
  }
262
240
  filterOptions(searchTerm) {
263
241
  if (!this.searchBehavior()) {
@@ -320,13 +298,11 @@ class CuraSelectComponent {
320
298
  return;
321
299
  }
322
300
  const target = event.target;
323
- // Procura pelo elemento cura-select-option mais próximo
324
301
  const optionElement = target.closest('cura-select-option');
325
302
  if (optionElement) {
326
- this.clearSelectedAttributes();
327
303
  const clickedOption = this.options()?.find((option) => option.elementRef?.nativeElement === optionElement);
328
304
  if (clickedOption) {
329
- clickedOption.selected.set(true);
305
+ this.selectOption(clickedOption);
330
306
  }
331
307
  return;
332
308
  }
@@ -359,7 +335,7 @@ class CuraSelectComponent {
359
335
  useExisting: forwardRef(() => CuraSelectComponent),
360
336
  multi: true,
361
337
  },
362
- ], queries: [{ propertyName: "options", predicate: CuraSelectOptionComponent, isSignal: true }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, isSignal: true }], ngImport: i0, template: "<div [ngClass]=\"containerClasses()\" [style]=\"styles()\" (mouseenter)=\"isHovered.set(true)\" (mouseleave)=\"isHovered.set(false)\" (click)=\"handleClick($event)\">\n @if (label()) {\n <cura-label class=\"label\" weight=\"bold\" [size]=\"size() === 'large' ? 'small' : 'xsmall'\" [color]=\"labelColor()\">\n {{ label() }}\n @if (required()) {\n <span class=\"required\">*</span>\n }\n </cura-label>\n }\n\n <div\n [ngClass]=\"{\n 'cura-input-field': true,\n open: isOpen(),\n }\"\n >\n @if (status() !== 'default' || iconName()) {\n <cura-icon\n class=\"feedback-icon\"\n [name]=\"currentIconName()\"\n iconset=\"default\"\n [size]=\"size() === 'large' ? 20 : 16\"\n [color]=\"iconColor()\"\n [style]=\"styles()\"\n >\n </cura-icon>\n }\n\n <input\n #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n [readonly]=\"!searchBehavior()\"\n [value]=\"textInput()\"\n [attr.id]=\"name() || null\"\n [attr.name]=\"name() || null\"\n [attr.aria-required]=\"required()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-invalid]=\"status() === 'error'\"\n [attr.aria-autocomplete]=\"searchBehavior() ? 'list' : 'none'\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n role=\"combobox\"\n [style]=\"styles()\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false)\"\n (input)=\"handleInputChange($event)\"\n (keydown)=\"handleKeyNavigation($event)\"\n />\n\n <button\n class=\"up-down-button\"\n type=\"button\"\n [attr.aria-label]=\"isOpen() ? 'Fechar lista de op\u00E7\u00F5es' : 'Abrir lista de op\u00E7\u00F5es'\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-controls]=\"listboxId()\"\n [disabled]=\"disabled()\"\n tabindex=\"-1\"\n >\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" class=\"up-down-icon\" [color]=\"disabled() ? 'neutral-dark' : 'primary-base'\" [size]=\"16\" iconset=\"default\">\n </cura-icon>\n </button>\n </div>\n\n <cura-label class=\"helper-text\" size=\"xsmall\" [color]=\"textColor()\" [weight]=\"mode() === 'transparent' ? 'bold' : 'regular'\">\n <ng-content></ng-content>\n </cura-label>\n\n @if (isOpen()) {\n <div\n [ngClass]=\"{\n menu: true,\n open: isOpen(),\n }\"\n [style]=\"{ '--max-height': maxHeight() }\"\n role=\"listbox\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"'Lista de op\u00E7\u00F5es para ' + (label() || 'sele\u00E7\u00E3o')\"\n [attr.aria-multiselectable]=\"false\"\n >\n <ng-content select=\"cura-select-option\"></ng-content>\n </div>\n }\n</div>\n", styles: [":host{display:block;position:relative;font-family:var(--font-family)}.wrapper{width:100%;-webkit-user-select:none;user-select:none;text-align:left!important}.wrapper cura-label{margin-bottom:8px}.wrapper .helper-text{margin-top:8px;color:var(--neutral-dark)}.wrapper .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper .cura-input-field .feedback-icon{padding-left:12px}.wrapper .cura-input-field .feedback-icon{box-sizing:content-box}.wrapper .cura-input-field .up-down-icon{order:3;margin-right:6px;cursor:pointer;pointer-events:all}.wrapper .cura-input-field .up-down-button{background-color:transparent;border:none}.wrapper .cura-input-field input{padding:0 12px 0 8px;cursor:pointer}.wrapper .cura-input-field.open{border-radius:calc(var(--border-radius, 4px) / 2) calc(var(--border-radius, 4px) / 2) 0 0!important}.wrapper.transparent{background-color:transparent;padding:0;max-height:80px}.wrapper.transparent .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box;background-color:transparent!important;border:none!important;border-radius:0;height:27px}.wrapper.transparent .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.transparent .cura-input-field .feedback-icon{padding-left:12px}.wrapper.transparent .cura-input-field input{color:var(--neutral-black)!important;font-size:16px;font-weight:var(--font-weight-bold)!important;padding:0}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-black)}.wrapper.transparent .cura-input-field .feedback-icon{order:3;margin:0 20px 0 0}.wrapper.transparent:focus-within .cura-input-field{border:none!important;background-color:transparent!important}.wrapper.transparent:focus-within .cura-input-field input{border:none!important;outline:none}.wrapper.transparent .helper-text{margin-top:0}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field{border-color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input{color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper:focus-within:not(.selection) .cura-input-field{border:2px solid var(--info-base)!important;background-color:var(--neutral-purewhite);outline:none}.wrapper:focus-within:not(.selection) .cura-input-field input{color:var(--neutral-black)!important}.wrapper:focus-within.selection .cura-input-field{border-radius:var(--border-radius) var(--border-radius) 0px 0px}.wrapper.success .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.success .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success .cura-input-field .feedback-icon{padding-left:12px}.wrapper.success .cura-input-field input{color:var(--success-darker)!important}.wrapper.success .cura-input-field input::placeholder{color:var(--success-darker)!important}.wrapper.success:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box;border:2px solid var(--success-dark)!important;background-color:var(--success-lighter)!important}.wrapper.success:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.error .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error .cura-input-field input{color:var(--error-darker)!important}.wrapper.error .cura-input-field input::placeholder{color:var(--error-darker)!important}.wrapper.error:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box;border:2px solid var(--error-dark)!important;background-color:var(--error-lighter)!important}.wrapper.error:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.small .cura-input-field{width:100%;height:32px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.small .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:12px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.small .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.small .cura-input-field .feedback-icon{padding-left:12px}.wrapper.small .cura-input-field input{line-height:13px;letter-spacing:.72px}.wrapper.small .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.small.label .menu{top:53px}.wrapper.small .menu{top:33px}.wrapper.medium .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.medium .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.medium .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.medium .cura-input-field .feedback-icon{padding-left:12px}.wrapper.medium .cura-input-field input{line-height:16px;letter-spacing:.56px}.wrapper.medium .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.medium.label .menu{top:61px}.wrapper.medium .menu{top:40px}.wrapper.large .cura-input-field{width:100%;height:44px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.large .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:16px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.large .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.large .cura-input-field .feedback-icon{padding-left:12px}.wrapper.large .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-bold)}.wrapper.large.label .menu{top:69px}.wrapper.large .menu{top:47px}.wrapper.disabled .cura-input-field{background-color:var(--neutral-white);border:2px solid var(--neutral-base)}.wrapper.disabled .cura-input-field input{color:var(--neutral-medium)}.wrapper.disabled .cura-input-field input::placeholder{color:var(--neutral-medium)}.required{color:red}.menu{position:absolute;left:0;right:-1px;background:#fff;border:2px solid var(--neutral-light);border-radius:4px;z-index:1000;max-height:285px;overflow:hidden;border-top:transparent;align-items:center;scrollbar-color:var(--neutral-medium) var(--neutral-black-20);overflow-y:auto;box-shadow:0 4px 8px #26262629}.menu.open{border-radius:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CuraLabelComponent, selector: "cura-label", inputs: ["size", "weight", "spotColor", "color", "marginBlock", "lineHeight", "textOverflow"] }, { kind: "component", type: CuraIconComponent, selector: "cura-icon", inputs: ["name", "color", "size", "iconset", "disabled"] }] }); }
338
+ ], queries: [{ propertyName: "options", predicate: CuraSelectOptionComponent, isSignal: true }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, isSignal: true }], ngImport: i0, template: "<div [ngClass]=\"containerClasses()\" [style]=\"styles()\" (mouseenter)=\"isHovered.set(true)\" (mouseleave)=\"isHovered.set(false)\" (click)=\"handleClick($event)\">\n @if (label()) {\n <cura-label class=\"label\" weight=\"bold\" [size]=\"size() === 'large' ? 'small' : 'xsmall'\" [color]=\"labelColor()\">\n {{ label() }}\n @if (required()) {\n <span class=\"required\">*</span>\n }\n </cura-label>\n }\n\n <div\n [ngClass]=\"{\n 'cura-input-field': true,\n open: isOpen(),\n }\"\n >\n @if (status() !== 'default' || iconName()) {\n <cura-icon\n class=\"feedback-icon\"\n [name]=\"currentIconName()\"\n iconset=\"default\"\n [size]=\"size() === 'large' ? 20 : 16\"\n [color]=\"iconColor()\"\n [style]=\"styles()\"\n >\n </cura-icon>\n }\n\n <input\n #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n [readonly]=\"!searchBehavior()\"\n [value]=\"textInput()\"\n [attr.id]=\"name() || null\"\n [attr.name]=\"name() || null\"\n [attr.aria-required]=\"required()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-invalid]=\"status() === 'error'\"\n [attr.aria-autocomplete]=\"searchBehavior() ? 'list' : 'none'\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n role=\"combobox\"\n [style]=\"styles()\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false)\"\n (input)=\"handleInputChange($event)\"\n (keydown)=\"handleKeyNavigation($event)\"\n />\n\n <button\n class=\"up-down-button\"\n type=\"button\"\n [attr.aria-label]=\"isOpen() ? 'Fechar lista de op\u00E7\u00F5es' : 'Abrir lista de op\u00E7\u00F5es'\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-controls]=\"listboxId()\"\n [disabled]=\"disabled()\"\n tabindex=\"-1\"\n >\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" class=\"up-down-icon\" [color]=\"disabled() ? 'neutral-dark' : 'primary-base'\" [size]=\"16\" iconset=\"default\">\n </cura-icon>\n </button>\n </div>\n\n <cura-label class=\"helper-text\" size=\"xsmall\" [color]=\"textColor()\" [weight]=\"mode() === 'transparent' ? 'bold' : 'regular'\">\n <ng-content></ng-content>\n </cura-label>\n\n @if (isOpen()) {\n <div\n [ngClass]=\"{\n menu: true,\n open: isOpen(),\n }\"\n [style]=\"{ '--max-height': maxHeight() }\"\n role=\"listbox\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"'Lista de op\u00E7\u00F5es para ' + (label() || 'sele\u00E7\u00E3o')\"\n [attr.aria-multiselectable]=\"false\"\n >\n <ng-content select=\"cura-select-option\"></ng-content>\n </div>\n }\n</div>\n", styles: [":host{display:block;position:relative;font-family:var(--font-family)}.wrapper{width:100%;-webkit-user-select:none;user-select:none;text-align:left!important}.wrapper cura-label{margin-bottom:8px}.wrapper .helper-text{margin-top:8px;color:var(--neutral-dark)}.wrapper .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper .cura-input-field .feedback-icon{padding-left:12px}.wrapper .cura-input-field .feedback-icon{box-sizing:content-box}.wrapper .cura-input-field .up-down-icon{order:3;margin-right:6px;cursor:pointer;pointer-events:all}.wrapper .cura-input-field .up-down-button{background-color:transparent;border:none}.wrapper .cura-input-field input{padding:0 12px 0 8px;cursor:pointer}.wrapper .cura-input-field.open{border-radius:calc(var(--border-radius, 4px) / 2) calc(var(--border-radius, 4px) / 2) 0 0!important}.wrapper.transparent{background-color:transparent;padding:0;max-height:80px}.wrapper.transparent .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.transparent .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.transparent .cura-input-field .feedback-icon{padding-left:12px}.wrapper.transparent .cura-input-field{background-color:transparent!important;border:none!important;border-radius:0;height:27px}.wrapper.transparent .cura-input-field input{color:var(--neutral-black)!important;font-size:16px;font-weight:var(--font-weight-bold)!important;padding:0}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-black)}.wrapper.transparent .cura-input-field .feedback-icon{order:3;margin:0 20px 0 0}.wrapper.transparent:focus-within .cura-input-field{border:none!important;background-color:transparent!important}.wrapper.transparent:focus-within .cura-input-field input{border:none!important;outline:none}.wrapper.transparent .helper-text{margin-top:0}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field{border-color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input{color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper:focus-within:not(.selection) .cura-input-field{border:2px solid var(--info-base)!important;background-color:var(--neutral-purewhite);outline:none}.wrapper:focus-within:not(.selection) .cura-input-field input{color:var(--neutral-black)!important}.wrapper:focus-within.selection .cura-input-field{border-radius:var(--border-radius) var(--border-radius) 0px 0px}.wrapper.success .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.success .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success .cura-input-field .feedback-icon{padding-left:12px}.wrapper.success .cura-input-field input{color:var(--success-darker)!important}.wrapper.success .cura-input-field input::placeholder{color:var(--success-darker)!important}.wrapper.success:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.success:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.success:not(.transparent) .cura-input-field{border:2px solid var(--success-dark)!important;background-color:var(--success-lighter)!important}.wrapper.error .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.error .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error .cura-input-field input{color:var(--error-darker)!important}.wrapper.error .cura-input-field input::placeholder{color:var(--error-darker)!important}.wrapper.error:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.error:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error:not(.transparent) .cura-input-field{border:2px solid var(--error-dark)!important;background-color:var(--error-lighter)!important}.wrapper.small .cura-input-field{width:100%;height:32px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.small .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:12px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.small .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.small .cura-input-field .feedback-icon{padding-left:12px}.wrapper.small .cura-input-field input{line-height:13px;letter-spacing:.72px}.wrapper.small .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.small.label .menu{top:53px}.wrapper.small .menu{top:33px}.wrapper.medium .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.medium .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.medium .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.medium .cura-input-field .feedback-icon{padding-left:12px}.wrapper.medium .cura-input-field input{line-height:16px;letter-spacing:.56px}.wrapper.medium .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.medium.label .menu{top:61px}.wrapper.medium .menu{top:40px}.wrapper.large .cura-input-field{width:100%;height:44px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.large .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:16px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.large .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.large .cura-input-field .feedback-icon{padding-left:12px}.wrapper.large .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-bold)}.wrapper.large.label .menu{top:69px}.wrapper.large .menu{top:47px}.wrapper.disabled .cura-input-field{background-color:var(--neutral-white);border:2px solid var(--neutral-base)}.wrapper.disabled .cura-input-field input{color:var(--neutral-medium)}.wrapper.disabled .cura-input-field input::placeholder{color:var(--neutral-medium)}.required{color:red}.menu{position:absolute;left:0;right:-1px;background:#fff;border:2px solid var(--neutral-light);border-radius:4px;z-index:1000;max-height:285px;overflow:hidden;border-top:transparent;align-items:center;scrollbar-color:var(--neutral-medium) var(--neutral-black-20);overflow-y:auto;box-shadow:0 4px 8px #26262629}.menu.open{border-radius:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CuraLabelComponent, selector: "cura-label", inputs: ["size", "weight", "spotColor", "color", "marginBlock", "lineHeight", "textOverflow"] }, { kind: "component", type: CuraIconComponent, selector: "cura-icon", inputs: ["name", "color", "size", "iconset", "disabled"] }] }); }
363
339
  }
364
340
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: CuraSelectComponent, decorators: [{
365
341
  type: Component,
@@ -378,7 +354,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
378
354
  useExisting: forwardRef(() => CuraSelectComponent),
379
355
  multi: true,
380
356
  },
381
- ], template: "<div [ngClass]=\"containerClasses()\" [style]=\"styles()\" (mouseenter)=\"isHovered.set(true)\" (mouseleave)=\"isHovered.set(false)\" (click)=\"handleClick($event)\">\n @if (label()) {\n <cura-label class=\"label\" weight=\"bold\" [size]=\"size() === 'large' ? 'small' : 'xsmall'\" [color]=\"labelColor()\">\n {{ label() }}\n @if (required()) {\n <span class=\"required\">*</span>\n }\n </cura-label>\n }\n\n <div\n [ngClass]=\"{\n 'cura-input-field': true,\n open: isOpen(),\n }\"\n >\n @if (status() !== 'default' || iconName()) {\n <cura-icon\n class=\"feedback-icon\"\n [name]=\"currentIconName()\"\n iconset=\"default\"\n [size]=\"size() === 'large' ? 20 : 16\"\n [color]=\"iconColor()\"\n [style]=\"styles()\"\n >\n </cura-icon>\n }\n\n <input\n #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n [readonly]=\"!searchBehavior()\"\n [value]=\"textInput()\"\n [attr.id]=\"name() || null\"\n [attr.name]=\"name() || null\"\n [attr.aria-required]=\"required()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-invalid]=\"status() === 'error'\"\n [attr.aria-autocomplete]=\"searchBehavior() ? 'list' : 'none'\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n role=\"combobox\"\n [style]=\"styles()\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false)\"\n (input)=\"handleInputChange($event)\"\n (keydown)=\"handleKeyNavigation($event)\"\n />\n\n <button\n class=\"up-down-button\"\n type=\"button\"\n [attr.aria-label]=\"isOpen() ? 'Fechar lista de op\u00E7\u00F5es' : 'Abrir lista de op\u00E7\u00F5es'\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-controls]=\"listboxId()\"\n [disabled]=\"disabled()\"\n tabindex=\"-1\"\n >\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" class=\"up-down-icon\" [color]=\"disabled() ? 'neutral-dark' : 'primary-base'\" [size]=\"16\" iconset=\"default\">\n </cura-icon>\n </button>\n </div>\n\n <cura-label class=\"helper-text\" size=\"xsmall\" [color]=\"textColor()\" [weight]=\"mode() === 'transparent' ? 'bold' : 'regular'\">\n <ng-content></ng-content>\n </cura-label>\n\n @if (isOpen()) {\n <div\n [ngClass]=\"{\n menu: true,\n open: isOpen(),\n }\"\n [style]=\"{ '--max-height': maxHeight() }\"\n role=\"listbox\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"'Lista de op\u00E7\u00F5es para ' + (label() || 'sele\u00E7\u00E3o')\"\n [attr.aria-multiselectable]=\"false\"\n >\n <ng-content select=\"cura-select-option\"></ng-content>\n </div>\n }\n</div>\n", styles: [":host{display:block;position:relative;font-family:var(--font-family)}.wrapper{width:100%;-webkit-user-select:none;user-select:none;text-align:left!important}.wrapper cura-label{margin-bottom:8px}.wrapper .helper-text{margin-top:8px;color:var(--neutral-dark)}.wrapper .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper .cura-input-field .feedback-icon{padding-left:12px}.wrapper .cura-input-field .feedback-icon{box-sizing:content-box}.wrapper .cura-input-field .up-down-icon{order:3;margin-right:6px;cursor:pointer;pointer-events:all}.wrapper .cura-input-field .up-down-button{background-color:transparent;border:none}.wrapper .cura-input-field input{padding:0 12px 0 8px;cursor:pointer}.wrapper .cura-input-field.open{border-radius:calc(var(--border-radius, 4px) / 2) calc(var(--border-radius, 4px) / 2) 0 0!important}.wrapper.transparent{background-color:transparent;padding:0;max-height:80px}.wrapper.transparent .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box;background-color:transparent!important;border:none!important;border-radius:0;height:27px}.wrapper.transparent .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.transparent .cura-input-field .feedback-icon{padding-left:12px}.wrapper.transparent .cura-input-field input{color:var(--neutral-black)!important;font-size:16px;font-weight:var(--font-weight-bold)!important;padding:0}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-black)}.wrapper.transparent .cura-input-field .feedback-icon{order:3;margin:0 20px 0 0}.wrapper.transparent:focus-within .cura-input-field{border:none!important;background-color:transparent!important}.wrapper.transparent:focus-within .cura-input-field input{border:none!important;outline:none}.wrapper.transparent .helper-text{margin-top:0}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field{border-color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input{color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper:focus-within:not(.selection) .cura-input-field{border:2px solid var(--info-base)!important;background-color:var(--neutral-purewhite);outline:none}.wrapper:focus-within:not(.selection) .cura-input-field input{color:var(--neutral-black)!important}.wrapper:focus-within.selection .cura-input-field{border-radius:var(--border-radius) var(--border-radius) 0px 0px}.wrapper.success .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.success .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success .cura-input-field .feedback-icon{padding-left:12px}.wrapper.success .cura-input-field input{color:var(--success-darker)!important}.wrapper.success .cura-input-field input::placeholder{color:var(--success-darker)!important}.wrapper.success:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box;border:2px solid var(--success-dark)!important;background-color:var(--success-lighter)!important}.wrapper.success:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.error .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error .cura-input-field input{color:var(--error-darker)!important}.wrapper.error .cura-input-field input::placeholder{color:var(--error-darker)!important}.wrapper.error:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box;border:2px solid var(--error-dark)!important;background-color:var(--error-lighter)!important}.wrapper.error:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.small .cura-input-field{width:100%;height:32px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.small .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:12px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.small .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.small .cura-input-field .feedback-icon{padding-left:12px}.wrapper.small .cura-input-field input{line-height:13px;letter-spacing:.72px}.wrapper.small .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.small.label .menu{top:53px}.wrapper.small .menu{top:33px}.wrapper.medium .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.medium .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.medium .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.medium .cura-input-field .feedback-icon{padding-left:12px}.wrapper.medium .cura-input-field input{line-height:16px;letter-spacing:.56px}.wrapper.medium .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.medium.label .menu{top:61px}.wrapper.medium .menu{top:40px}.wrapper.large .cura-input-field{width:100%;height:44px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.large .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:16px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.large .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.large .cura-input-field .feedback-icon{padding-left:12px}.wrapper.large .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-bold)}.wrapper.large.label .menu{top:69px}.wrapper.large .menu{top:47px}.wrapper.disabled .cura-input-field{background-color:var(--neutral-white);border:2px solid var(--neutral-base)}.wrapper.disabled .cura-input-field input{color:var(--neutral-medium)}.wrapper.disabled .cura-input-field input::placeholder{color:var(--neutral-medium)}.required{color:red}.menu{position:absolute;left:0;right:-1px;background:#fff;border:2px solid var(--neutral-light);border-radius:4px;z-index:1000;max-height:285px;overflow:hidden;border-top:transparent;align-items:center;scrollbar-color:var(--neutral-medium) var(--neutral-black-20);overflow-y:auto;box-shadow:0 4px 8px #26262629}.menu.open{border-radius:0!important}\n"] }]
357
+ ], template: "<div [ngClass]=\"containerClasses()\" [style]=\"styles()\" (mouseenter)=\"isHovered.set(true)\" (mouseleave)=\"isHovered.set(false)\" (click)=\"handleClick($event)\">\n @if (label()) {\n <cura-label class=\"label\" weight=\"bold\" [size]=\"size() === 'large' ? 'small' : 'xsmall'\" [color]=\"labelColor()\">\n {{ label() }}\n @if (required()) {\n <span class=\"required\">*</span>\n }\n </cura-label>\n }\n\n <div\n [ngClass]=\"{\n 'cura-input-field': true,\n open: isOpen(),\n }\"\n >\n @if (status() !== 'default' || iconName()) {\n <cura-icon\n class=\"feedback-icon\"\n [name]=\"currentIconName()\"\n iconset=\"default\"\n [size]=\"size() === 'large' ? 20 : 16\"\n [color]=\"iconColor()\"\n [style]=\"styles()\"\n >\n </cura-icon>\n }\n\n <input\n #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n [readonly]=\"!searchBehavior()\"\n [value]=\"textInput()\"\n [attr.id]=\"name() || null\"\n [attr.name]=\"name() || null\"\n [attr.aria-required]=\"required()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-invalid]=\"status() === 'error'\"\n [attr.aria-autocomplete]=\"searchBehavior() ? 'list' : 'none'\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n role=\"combobox\"\n [style]=\"styles()\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false)\"\n (input)=\"handleInputChange($event)\"\n (keydown)=\"handleKeyNavigation($event)\"\n />\n\n <button\n class=\"up-down-button\"\n type=\"button\"\n [attr.aria-label]=\"isOpen() ? 'Fechar lista de op\u00E7\u00F5es' : 'Abrir lista de op\u00E7\u00F5es'\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-controls]=\"listboxId()\"\n [disabled]=\"disabled()\"\n tabindex=\"-1\"\n >\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" class=\"up-down-icon\" [color]=\"disabled() ? 'neutral-dark' : 'primary-base'\" [size]=\"16\" iconset=\"default\">\n </cura-icon>\n </button>\n </div>\n\n <cura-label class=\"helper-text\" size=\"xsmall\" [color]=\"textColor()\" [weight]=\"mode() === 'transparent' ? 'bold' : 'regular'\">\n <ng-content></ng-content>\n </cura-label>\n\n @if (isOpen()) {\n <div\n [ngClass]=\"{\n menu: true,\n open: isOpen(),\n }\"\n [style]=\"{ '--max-height': maxHeight() }\"\n role=\"listbox\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"'Lista de op\u00E7\u00F5es para ' + (label() || 'sele\u00E7\u00E3o')\"\n [attr.aria-multiselectable]=\"false\"\n >\n <ng-content select=\"cura-select-option\"></ng-content>\n </div>\n }\n</div>\n", styles: [":host{display:block;position:relative;font-family:var(--font-family)}.wrapper{width:100%;-webkit-user-select:none;user-select:none;text-align:left!important}.wrapper cura-label{margin-bottom:8px}.wrapper .helper-text{margin-top:8px;color:var(--neutral-dark)}.wrapper .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper .cura-input-field .feedback-icon{padding-left:12px}.wrapper .cura-input-field .feedback-icon{box-sizing:content-box}.wrapper .cura-input-field .up-down-icon{order:3;margin-right:6px;cursor:pointer;pointer-events:all}.wrapper .cura-input-field .up-down-button{background-color:transparent;border:none}.wrapper .cura-input-field input{padding:0 12px 0 8px;cursor:pointer}.wrapper .cura-input-field.open{border-radius:calc(var(--border-radius, 4px) / 2) calc(var(--border-radius, 4px) / 2) 0 0!important}.wrapper.transparent{background-color:transparent;padding:0;max-height:80px}.wrapper.transparent .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.transparent .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.transparent .cura-input-field .feedback-icon{padding-left:12px}.wrapper.transparent .cura-input-field{background-color:transparent!important;border:none!important;border-radius:0;height:27px}.wrapper.transparent .cura-input-field input{color:var(--neutral-black)!important;font-size:16px;font-weight:var(--font-weight-bold)!important;padding:0}.wrapper.transparent .cura-input-field input::placeholder{color:var(--neutral-black)}.wrapper.transparent .cura-input-field .feedback-icon{order:3;margin:0 20px 0 0}.wrapper.transparent:focus-within .cura-input-field{border:none!important;background-color:transparent!important}.wrapper.transparent:focus-within .cura-input-field input{border:none!important;outline:none}.wrapper.transparent .helper-text{margin-top:0}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field{border-color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input{color:var(--neutral-dark)}.wrapper:hover:not(.disabled):not(.isLoading):not(.success):not(.error):not(.isFocused):not(.readOnly):not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper:focus-within:not(.selection) .cura-input-field{border:2px solid var(--info-base)!important;background-color:var(--neutral-purewhite);outline:none}.wrapper:focus-within:not(.selection) .cura-input-field input{color:var(--neutral-black)!important}.wrapper:focus-within.selection .cura-input-field{border-radius:var(--border-radius) var(--border-radius) 0px 0px}.wrapper.success .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.success .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success .cura-input-field .feedback-icon{padding-left:12px}.wrapper.success .cura-input-field input{color:var(--success-darker)!important}.wrapper.success .cura-input-field input::placeholder{color:var(--success-darker)!important}.wrapper.success:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.success:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.success:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.success:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.success:not(.transparent) .cura-input-field{border:2px solid var(--success-dark)!important;background-color:var(--success-lighter)!important}.wrapper.error .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.error .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error .cura-input-field input{color:var(--error-darker)!important}.wrapper.error .cura-input-field input::placeholder{color:var(--error-darker)!important}.wrapper.error:not(.transparent) .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.error:not(.transparent) .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.error:not(.transparent) .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.error:not(.transparent) .cura-input-field .feedback-icon{padding-left:12px}.wrapper.error:not(.transparent) .cura-input-field{border:2px solid var(--error-dark)!important;background-color:var(--error-lighter)!important}.wrapper.small .cura-input-field{width:100%;height:32px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.small .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:12px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.small .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.small .cura-input-field .feedback-icon{padding-left:12px}.wrapper.small .cura-input-field input{line-height:13px;letter-spacing:.72px}.wrapper.small .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.small.label .menu{top:53px}.wrapper.small .menu{top:33px}.wrapper.medium .cura-input-field{width:100%;height:40px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.medium .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:14px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.medium .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.medium .cura-input-field .feedback-icon{padding-left:12px}.wrapper.medium .cura-input-field input{line-height:16px;letter-spacing:.56px}.wrapper.medium .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-regular)}.wrapper.medium.label .menu{top:61px}.wrapper.medium .menu{top:40px}.wrapper.large .cura-input-field{width:100%;height:44px;display:flex;flex-direction:row;align-items:center;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-medium);border-radius:var(--border-radius, 4px);color:var(--primary-base);letter-spacing:.32px;line-height:20px;overflow:hidden;box-sizing:border-box}.wrapper.large .cura-input-field input{flex:1;width:100%;height:100%;background:transparent;border:none;outline:none;color:var(--neutral-dark);font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:16px;box-sizing:border-box;padding:0 12px 0 8px}.wrapper.large .cura-input-field input::placeholder{color:var(--neutral-dark)}.wrapper.large .cura-input-field .feedback-icon{padding-left:12px}.wrapper.large .helper-text{margin-top:8px;color:var(--neutral-dark);font-weight:var(--font-weight-bold)}.wrapper.large.label .menu{top:69px}.wrapper.large .menu{top:47px}.wrapper.disabled .cura-input-field{background-color:var(--neutral-white);border:2px solid var(--neutral-base)}.wrapper.disabled .cura-input-field input{color:var(--neutral-medium)}.wrapper.disabled .cura-input-field input::placeholder{color:var(--neutral-medium)}.required{color:red}.menu{position:absolute;left:0;right:-1px;background:#fff;border:2px solid var(--neutral-light);border-radius:4px;z-index:1000;max-height:285px;overflow:hidden;border-top:transparent;align-items:center;scrollbar-color:var(--neutral-medium) var(--neutral-black-20);overflow-y:auto;box-shadow:0 4px 8px #26262629}.menu.open{border-radius:0!important}\n"] }]
382
358
  }], ctorParameters: () => [], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], iconName: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconName", required: false }] }], status: [{ type: i0.Input, args: [{ isSignal: true, alias: "status", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], searchBehavior: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchBehavior", required: false }] }], caseSensitive: [{ type: i0.Input, args: [{ isSignal: true, alias: "caseSensitive", required: false }] }], maxHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxHeight", required: false }] }], selected: [{ type: i0.Output, args: ["selected"] }], searchTermInput: [{ type: i0.Output, args: ["searchTermInput"] }], inputElement: [{ type: i0.ViewChild, args: ['inputElement', { isSignal: true }] }], options: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => CuraSelectOptionComponent), { isSignal: true }] }] } });
383
359
 
384
360
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rededor-site-front-end-lib-cura-forms-cura-select.mjs","sources":["../../../projects/site-front-end-lib/cura/forms/cura-select/cura-select.component.ts","../../../projects/site-front-end-lib/cura/forms/cura-select/cura-select.component.html","../../../projects/site-front-end-lib/cura/forms/cura-select/rededor-site-front-end-lib-cura-forms-cura-select.ts"],"sourcesContent":["import {\n Component,\n input,\n output,\n signal,\n computed,\n inject,\n forwardRef,\n ElementRef,\n AfterViewInit,\n OnDestroy,\n viewChild,\n contentChildren,\n model,\n effect,\n PLATFORM_ID,\n} from '@angular/core';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { CuraLabelComponent } from '@rededor/site-front-end-lib/cura/forms/cura-label';\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\nimport { CuraSelectOptionComponent } from '@rededor/site-front-end-lib/cura/forms/cura-select-option';\nimport { SelectMode, SelectSize, SelectStatus, SelectSelectedEvent, SelectSearchEvent } from './cura-select.definitions';\n\n@Component({\n selector: 'cura-select',\n imports: [CommonModule, CuraLabelComponent, CuraIconComponent],\n templateUrl: './cura-select.component.html',\n styleUrls: ['./cura-select.component.scss'],\n host: {\n role: 'combobox',\n '[attr.aria-label]': 'label()',\n '[attr.aria-required]': 'required()',\n '[attr.aria-disabled]': 'disabled()',\n '[attr.aria-invalid]': 'status() === \"error\"',\n '[attr.aria-expanded]': 'isOpen()',\n '[attr.aria-controls]': 'listboxId()',\n '[attr.aria-activedescendant]': 'activeOptionId()',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CuraSelectComponent),\n multi: true,\n },\n ],\n})\nexport class CuraSelectComponent implements ControlValueAccessor, AfterViewInit, OnDestroy {\n private curaApi: CuraApiService = inject(CuraApiService);\n private elementRef = inject(ElementRef);\n private platformId = inject(PLATFORM_ID);\n\n name = input<string>('');\n\n /**\n * The label text for the select component\n */\n label = input<string>('');\n\n /**\n * Placeholder text for the input field\n */\n placeholder = input<string>('');\n\n /**\n * Current value of the select component\n */\n value = model<string | any>('');\n\n /**\n * Display mode of the select component\n */\n mode = input<SelectMode>('default');\n\n /**\n * Size of the select component\n */\n size = input<SelectSize>('medium');\n\n /**\n * Icon name for the select component\n */\n iconName = input<string | undefined>(undefined);\n\n /**\n * Status of the select component\n */\n status = input<SelectStatus>('default');\n\n /**\n * Whether the select component is disabled\n */\n disabled = input<boolean>(false);\n\n /**\n * Whether the select component is required\n */\n required = input<boolean>(false);\n\n /**\n * Enable/Disable search at options by term\n */\n searchBehavior = input<boolean>(false);\n\n /**\n * The search will be sensitive to accents\n */\n caseSensitive = input<boolean>(true);\n\n /**\n * CSS max-height property for dropdown item.\n * Can also be used by css property --max-height.\n * Default: 285px\n */\n maxHeight = input<string>('285px');\n\n /**\n * Event emitted when an option is selected\n */\n selected = output<SelectSelectedEvent>();\n\n /**\n * Event emitted when search term changes\n */\n searchTermInput = output<SelectSearchEvent>();\n\n // Internal state signals\n isHovered = signal<boolean>(false);\n isFocused = signal<boolean>(false);\n isOpen = signal<boolean>(false);\n activeIndex = signal<number>(-1);\n textInput = signal<string>('');\n\n // Unique ID for accessibility\n private componentId = `cura-select-${Math.random().toString(36).substring(2, 8)}`;\n\n // Form control callbacks\n private onChange = (value: string) => {};\n private onTouched = () => {};\n\n // ViewChild references\n inputElement = viewChild<ElementRef<HTMLInputElement>>('inputElement');\n options = contentChildren<CuraSelectOptionComponent>(CuraSelectOptionComponent);\n\n // Computed signals\n currentIconName = computed(() => {\n const iconMap = {\n default: this.iconName() || '',\n success: 'checkCircle',\n error: 'alertCircle',\n };\n return iconMap[this.status()];\n });\n\n private colorConfig = computed(() => {\n if (this.disabled()) {\n return {\n label: 'neutral-medium',\n text: 'neutral-medium',\n icon: 'neutral-medium',\n };\n }\n\n const isStatusDefault = this.status() === 'default';\n const isHoveredOrFocused = this.isFocused() || this.isHovered();\n\n return {\n label: !isStatusDefault || isHoveredOrFocused ? 'neutral-black' : 'neutral-dark',\n text: this.getTextColor(isHoveredOrFocused, isStatusDefault),\n icon: this.getTextColor(isHoveredOrFocused, isStatusDefault),\n };\n });\n\n containerClasses = computed(() => {\n return {\n wrapper: true,\n label: !!this.label(),\n disabled: this.disabled(),\n transparent: this.mode() === 'transparent',\n [this.size().toLowerCase()]: true,\n [this.status().toLowerCase()]: true,\n };\n });\n\n labelColor = computed(() => this.colorConfig().label);\n textColor = computed(() => this.colorConfig().text);\n iconColor = computed(() => this.colorConfig().icon);\n\n // Accessibility computed signals\n listboxId = computed(() => `${this.componentId}-listbox`);\n activeOptionId = computed(() => {\n const activeOption = this.options()?.[this.activeIndex()];\n return activeOption?.optionId() || '';\n });\n\n styles = computed(() => {\n const { fonts, colors } = this.curaApi?.theme || { fonts: null, colors: null };\n\n const baseStyles: { [key: string]: string } = {};\n\n if (fonts) {\n const fontWeights = fonts.getWeights();\n baseStyles['--font-weight-medium'] = fontWeights.medium;\n baseStyles['--font-weight-bold'] = fontWeights.bold;\n baseStyles['--font-weight-regular'] = fontWeights.regular;\n baseStyles['--font-color'] = fonts.getColor();\n baseStyles['--font-family'] = fonts.getFamily();\n baseStyles['--font-size'] = fonts.getSize();\n }\n\n if (colors) {\n const colorKeys = [\n 'primary-base',\n 'neutral-purewhite',\n 'neutral-white',\n 'neutral-black',\n 'neutral-medium',\n 'neutral-light',\n 'neutral-base',\n 'neutral-dark',\n 'success-dark',\n 'success-darker',\n 'success-lighter',\n 'error-lighter',\n 'error-dark',\n 'error-darker',\n 'error-base',\n 'info-base',\n ];\n\n colorKeys.forEach((key) => {\n baseStyles[`--${key}`] = colors.getColor(key);\n });\n }\n\n return baseStyles;\n });\n\n constructor() {\n effect(() => {\n this.updateOptionHighlights(this.activeIndex());\n });\n\n effect(() => {\n if (!this.options() || this.options().length === 0) return;\n\n const selectedOption = this.options().find((option) => option.selected());\n if (selectedOption && selectedOption.value() !== this.value()) {\n this.handleOptionSelected(selectedOption);\n }\n });\n }\n\n ngAfterViewInit() {\n this.initializeOptions();\n this.addOutsideClickListener();\n }\n\n ngOnDestroy() {\n if (isPlatformBrowser(this.platformId)) {\n this.removeOutsideClickListener();\n }\n }\n\n // ControlValueAccessor implementation\n writeValue(value: string): void {\n this.value.set(value);\n if (!this.options) return;\n\n const option = this.options().find((opt) => opt.value() === value);\n if (option) {\n this.textInput.set(option.elementRef?.nativeElement?.textContent || '');\n }\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n private getTextColor(isHoveredOrFocused: boolean, isStatusDefault: boolean): string {\n if (isHoveredOrFocused && isStatusDefault) return 'neutral-black';\n if (this.status() === 'success') return 'success-dark';\n if (this.status() === 'error') return 'error-dark';\n return 'neutral-dark';\n }\n\n private initializeOptions() {\n if (!this.options()) return;\n\n this.options().forEach((option) => {\n option.size.set(this.size());\n option.active.set(false);\n option.visible.set(true);\n\n const isSelected = this.value() === option.value();\n option.selected.set(isSelected);\n if (isSelected) {\n this.value.set(option.value());\n this.textInput.update((value) => option.elementRef?.nativeElement?.textContent || value);\n }\n });\n }\n\n private handleOptionSelected(selectedOption: CuraSelectOptionComponent) {\n const value = selectedOption.value();\n this.value.set(value);\n\n const optionText = selectedOption.elementRef?.nativeElement?.textContent || '';\n if (this.textInput() !== optionText) {\n this.onChange(value);\n this.textInput.set(optionText);\n this.isOpen.set(false);\n this.filterOptions(optionText);\n this.selected.emit({ value });\n }\n }\n\n private clearSelectedAttributes() {\n if (!this.options()) return;\n\n this.options().forEach((option) => {\n option.selected.set(false);\n });\n }\n\n private removeAccents(str: string): string {\n return str.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n }\n\n private filterOptions(searchTerm: string) {\n if (!this.searchBehavior()) {\n return;\n }\n\n this.searchTermInput.emit({ searchTerm });\n\n let processedSearchTerm = searchTerm;\n if (!this.caseSensitive()) {\n processedSearchTerm = this.removeAccents(searchTerm).toLowerCase();\n }\n\n this.options().forEach((option) => {\n let optionText = option.elementRef?.nativeElement?.textContent || '';\n if (!this.caseSensitive()) {\n optionText = this.removeAccents(optionText.toLowerCase());\n }\n\n const isVisible = optionText.includes(processedSearchTerm);\n option.visible.set(isVisible);\n option.elementRef.nativeElement.style.display = isVisible ? 'block' : 'none';\n });\n }\n\n // Event handlers\n handleKeyNavigation(event: KeyboardEvent) {\n const { code: keyCode } = event;\n\n if (!this.isOpen() && keyCode === 'ArrowDown') {\n this.isOpen.set(true);\n this.activeIndex.set(0);\n return;\n }\n\n if (keyCode === 'ArrowDown') {\n event.preventDefault();\n this.updateActiveIndex(1);\n }\n\n if (keyCode === 'ArrowUp') {\n event.preventDefault();\n this.updateActiveIndex(-1);\n }\n\n if (keyCode === 'Enter' || keyCode === 'Space') {\n this.options()?.[this.activeIndex()]?.elementRef?.nativeElement?.click();\n }\n\n if (keyCode === 'Escape') {\n this.isOpen.set(false);\n }\n }\n\n private updateActiveIndex(direction: number) {\n const visibleOptions = this.options();\n if (!visibleOptions || visibleOptions.length === 0) return;\n\n this.activeIndex.update((index) => (index + direction + visibleOptions.length) % visibleOptions.length);\n }\n\n handleInputChange(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n this.textInput.set(value);\n this.isOpen.set(value.length > 0);\n this.onChange(value);\n this.filterOptions(value);\n }\n\n handleClick(event: MouseEvent) {\n if (this.disabled()) {\n event.preventDefault();\n return;\n }\n\n const target = event.target as HTMLElement;\n\n // Procura pelo elemento cura-select-option mais próximo\n const optionElement = target.closest('cura-select-option') as HTMLElement;\n\n if (optionElement) {\n this.clearSelectedAttributes();\n const clickedOption = this.options()?.find((option) => option.elementRef?.nativeElement === optionElement);\n if (clickedOption) {\n clickedOption.selected.set(true);\n }\n return;\n }\n\n this.isOpen.update((value) => !value);\n }\n\n private updateOptionHighlights(newActiveIndex: number): void {\n this.options().forEach((option, index) => {\n option.active.set(index === newActiveIndex);\n });\n }\n\n /**\n * Controla o clique fora do componente\n */\n private addOutsideClickListener(): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n document.addEventListener('click', this.handleClickOutside);\n }\n\n private removeOutsideClickListener(): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n document.removeEventListener('click', this.handleClickOutside);\n }\n\n private handleClickOutside = (event: MouseEvent): void => {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n const clickedOutside = !this.elementRef.nativeElement.contains(event.target as Node);\n if (clickedOutside && this.isOpen()) {\n this.isOpen.set(false);\n }\n };\n}\n","<div [ngClass]=\"containerClasses()\" [style]=\"styles()\" (mouseenter)=\"isHovered.set(true)\" (mouseleave)=\"isHovered.set(false)\" (click)=\"handleClick($event)\">\n @if (label()) {\n <cura-label class=\"label\" weight=\"bold\" [size]=\"size() === 'large' ? 'small' : 'xsmall'\" [color]=\"labelColor()\">\n {{ label() }}\n @if (required()) {\n <span class=\"required\">*</span>\n }\n </cura-label>\n }\n\n <div\n [ngClass]=\"{\n 'cura-input-field': true,\n open: isOpen(),\n }\"\n >\n @if (status() !== 'default' || iconName()) {\n <cura-icon\n class=\"feedback-icon\"\n [name]=\"currentIconName()\"\n iconset=\"default\"\n [size]=\"size() === 'large' ? 20 : 16\"\n [color]=\"iconColor()\"\n [style]=\"styles()\"\n >\n </cura-icon>\n }\n\n <input\n #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n [readonly]=\"!searchBehavior()\"\n [value]=\"textInput()\"\n [attr.id]=\"name() || null\"\n [attr.name]=\"name() || null\"\n [attr.aria-required]=\"required()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-invalid]=\"status() === 'error'\"\n [attr.aria-autocomplete]=\"searchBehavior() ? 'list' : 'none'\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n role=\"combobox\"\n [style]=\"styles()\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false)\"\n (input)=\"handleInputChange($event)\"\n (keydown)=\"handleKeyNavigation($event)\"\n />\n\n <button\n class=\"up-down-button\"\n type=\"button\"\n [attr.aria-label]=\"isOpen() ? 'Fechar lista de opções' : 'Abrir lista de opções'\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-controls]=\"listboxId()\"\n [disabled]=\"disabled()\"\n tabindex=\"-1\"\n >\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" class=\"up-down-icon\" [color]=\"disabled() ? 'neutral-dark' : 'primary-base'\" [size]=\"16\" iconset=\"default\">\n </cura-icon>\n </button>\n </div>\n\n <cura-label class=\"helper-text\" size=\"xsmall\" [color]=\"textColor()\" [weight]=\"mode() === 'transparent' ? 'bold' : 'regular'\">\n <ng-content></ng-content>\n </cura-label>\n\n @if (isOpen()) {\n <div\n [ngClass]=\"{\n menu: true,\n open: isOpen(),\n }\"\n [style]=\"{ '--max-height': maxHeight() }\"\n role=\"listbox\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"'Lista de opções para ' + (label() || 'seleção')\"\n [attr.aria-multiselectable]=\"false\"\n >\n <ng-content select=\"cura-select-option\"></ng-content>\n </div>\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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AAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,cAAc,2FAChB,yBAAyB,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE/IhF;;AAEG;;;;"}
1
+ {"version":3,"file":"rededor-site-front-end-lib-cura-forms-cura-select.mjs","sources":["../../../projects/site-front-end-lib/cura/forms/cura-select/cura-select.component.ts","../../../projects/site-front-end-lib/cura/forms/cura-select/cura-select.component.html","../../../projects/site-front-end-lib/cura/forms/cura-select/rededor-site-front-end-lib-cura-forms-cura-select.ts"],"sourcesContent":["import {\n Component,\n input,\n output,\n signal,\n computed,\n inject,\n forwardRef,\n ElementRef,\n AfterViewInit,\n OnDestroy,\n viewChild,\n contentChildren,\n model,\n effect,\n linkedSignal,\n PLATFORM_ID,\n} from '@angular/core';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { CuraLabelComponent } from '@rededor/site-front-end-lib/cura/forms/cura-label';\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\nimport { CuraSelectOptionComponent } from '@rededor/site-front-end-lib/cura/forms/cura-select-option';\nimport { SelectMode, SelectSize, SelectStatus, SelectSelectedEvent, SelectSearchEvent } from './cura-select.definitions';\n\n@Component({\n selector: 'cura-select',\n imports: [CommonModule, CuraLabelComponent, CuraIconComponent],\n templateUrl: './cura-select.component.html',\n styleUrls: ['./cura-select.component.scss'],\n host: {\n role: 'combobox',\n '[attr.aria-label]': 'label()',\n '[attr.aria-required]': 'required()',\n '[attr.aria-disabled]': 'disabled()',\n '[attr.aria-invalid]': 'status() === \"error\"',\n '[attr.aria-expanded]': 'isOpen()',\n '[attr.aria-controls]': 'listboxId()',\n '[attr.aria-activedescendant]': 'activeOptionId()',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CuraSelectComponent),\n multi: true,\n },\n ],\n})\nexport class CuraSelectComponent implements ControlValueAccessor, AfterViewInit, OnDestroy {\n private curaApi: CuraApiService = inject(CuraApiService);\n private elementRef = inject(ElementRef);\n private platformId = inject(PLATFORM_ID);\n\n name = input<string>('');\n\n /**\n * The label text for the select component\n */\n label = input<string>('');\n\n /**\n * Placeholder text for the input field\n */\n placeholder = input<string>('');\n\n /**\n * Current value of the select component\n */\n value = model<string | any>('');\n\n /**\n * Display mode of the select component\n */\n mode = input<SelectMode>('default');\n\n /**\n * Size of the select component\n */\n size = input<SelectSize>('medium');\n\n /**\n * Icon name for the select component\n */\n iconName = input<string | undefined>(undefined);\n\n /**\n * Status of the select component\n */\n status = input<SelectStatus>('default');\n\n /**\n * Whether the select component is disabled\n */\n disabled = input<boolean>(false);\n\n /**\n * Whether the select component is required\n */\n required = input<boolean>(false);\n\n /**\n * Enable/Disable search at options by term\n */\n searchBehavior = input<boolean>(false);\n\n /**\n * The search will be sensitive to accents\n */\n caseSensitive = input<boolean>(true);\n\n /**\n * CSS max-height property for dropdown item.\n * Can also be used by css property --max-height.\n * Default: 285px\n */\n maxHeight = input<string>('285px');\n\n /**\n * Event emitted when an option is selected\n */\n selected = output<SelectSelectedEvent>();\n\n /**\n * Event emitted when search term changes\n */\n searchTermInput = output<SelectSearchEvent>();\n\n // Internal state signals\n isHovered = signal<boolean>(false);\n isFocused = signal<boolean>(false);\n isOpen = signal<boolean>(false);\n activeIndex = signal<number>(-1);\n\n textInput = linkedSignal(() => {\n const opts = this.options();\n const val = this.value();\n const option = opts.find((o) => o.value() === val);\n return option?.elementRef?.nativeElement?.textContent ?? '';\n });\n\n // Unique ID for accessibility\n private componentId = `cura-select-${Math.random().toString(36).substring(2, 8)}`;\n\n // Form control callbacks\n private onChange = (value: string) => {};\n private onTouched = () => {};\n\n // ViewChild references\n inputElement = viewChild<ElementRef<HTMLInputElement>>('inputElement');\n options = contentChildren<CuraSelectOptionComponent>(CuraSelectOptionComponent);\n\n // Computed signals\n currentIconName = computed(() => {\n const iconMap = {\n default: this.iconName() || '',\n success: 'checkCircle',\n error: 'alertCircle',\n };\n return iconMap[this.status()];\n });\n\n private colorConfig = computed(() => {\n if (this.disabled()) {\n return {\n label: 'neutral-medium',\n text: 'neutral-medium',\n icon: 'neutral-medium',\n };\n }\n\n const isStatusDefault = this.status() === 'default';\n const isHoveredOrFocused = this.isFocused() || this.isHovered();\n\n return {\n label: !isStatusDefault || isHoveredOrFocused ? 'neutral-black' : 'neutral-dark',\n text: this.getTextColor(isHoveredOrFocused, isStatusDefault),\n icon: this.getTextColor(isHoveredOrFocused, isStatusDefault),\n };\n });\n\n containerClasses = computed(() => {\n return {\n wrapper: true,\n label: !!this.label(),\n disabled: this.disabled(),\n transparent: this.mode() === 'transparent',\n [this.size().toLowerCase()]: true,\n [this.status().toLowerCase()]: true,\n };\n });\n\n labelColor = computed(() => this.colorConfig().label);\n textColor = computed(() => this.colorConfig().text);\n iconColor = computed(() => this.colorConfig().icon);\n\n // Accessibility computed signals\n listboxId = computed(() => `${this.componentId}-listbox`);\n activeOptionId = computed(() => {\n const activeOption = this.options()?.[this.activeIndex()];\n return activeOption?.optionId() || '';\n });\n\n styles = computed(() => {\n const { fonts, colors } = this.curaApi?.theme || { fonts: null, colors: null };\n\n const baseStyles: { [key: string]: string } = {};\n\n if (fonts) {\n const fontWeights = fonts.getWeights();\n baseStyles['--font-weight-medium'] = fontWeights.medium;\n baseStyles['--font-weight-bold'] = fontWeights.bold;\n baseStyles['--font-weight-regular'] = fontWeights.regular;\n baseStyles['--font-color'] = fonts.getColor();\n baseStyles['--font-family'] = fonts.getFamily();\n baseStyles['--font-size'] = fonts.getSize();\n }\n\n if (colors) {\n const colorKeys = [\n 'primary-base',\n 'neutral-purewhite',\n 'neutral-white',\n 'neutral-black',\n 'neutral-medium',\n 'neutral-light',\n 'neutral-base',\n 'neutral-dark',\n 'success-dark',\n 'success-darker',\n 'success-lighter',\n 'error-lighter',\n 'error-dark',\n 'error-darker',\n 'error-base',\n 'info-base',\n ];\n\n colorKeys.forEach((key) => {\n baseStyles[`--${key}`] = colors.getColor(key);\n });\n }\n\n return baseStyles;\n });\n\n constructor() {\n effect(() => {\n this.updateOptionHighlights(this.activeIndex());\n });\n\n effect(() => {\n const currentValue = this.value();\n this.options().forEach((opt) => opt.selected.set(opt.value() === currentValue));\n });\n }\n\n ngAfterViewInit() {\n this.initializeOptions();\n this.addOutsideClickListener();\n }\n\n ngOnDestroy() {\n if (isPlatformBrowser(this.platformId)) {\n this.removeOutsideClickListener();\n }\n }\n\n // ControlValueAccessor implementation\n writeValue(value: string): void {\n this.value.set(value);\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n private getTextColor(isHoveredOrFocused: boolean, isStatusDefault: boolean): string {\n if (isHoveredOrFocused && isStatusDefault) return 'neutral-black';\n if (this.status() === 'success') return 'success-dark';\n if (this.status() === 'error') return 'error-dark';\n return 'neutral-dark';\n }\n\n private initializeOptions() {\n if (!this.options()) return;\n\n this.options().forEach((option) => {\n option.size.set(this.size());\n option.active.set(false);\n option.visible.set(true);\n });\n }\n\n private selectOption(selectedOption: CuraSelectOptionComponent): void {\n const value = selectedOption.value();\n this.value.set(value);\n this.onChange(value);\n this.isOpen.set(false);\n this.filterOptions(selectedOption.elementRef?.nativeElement?.textContent || '');\n this.selected.emit({ value });\n }\n\n private removeAccents(str: string): string {\n return str.normalize('NFD').replace(/[̀-ͯ]/g, '');\n }\n\n private filterOptions(searchTerm: string) {\n if (!this.searchBehavior()) {\n return;\n }\n\n this.searchTermInput.emit({ searchTerm });\n\n let processedSearchTerm = searchTerm;\n if (!this.caseSensitive()) {\n processedSearchTerm = this.removeAccents(searchTerm).toLowerCase();\n }\n\n this.options().forEach((option) => {\n let optionText = option.elementRef?.nativeElement?.textContent || '';\n if (!this.caseSensitive()) {\n optionText = this.removeAccents(optionText.toLowerCase());\n }\n\n const isVisible = optionText.includes(processedSearchTerm);\n option.visible.set(isVisible);\n option.elementRef.nativeElement.style.display = isVisible ? 'block' : 'none';\n });\n }\n\n // Event handlers\n handleKeyNavigation(event: KeyboardEvent) {\n const { code: keyCode } = event;\n\n if (!this.isOpen() && keyCode === 'ArrowDown') {\n this.isOpen.set(true);\n this.activeIndex.set(0);\n return;\n }\n\n if (keyCode === 'ArrowDown') {\n event.preventDefault();\n this.updateActiveIndex(1);\n }\n\n if (keyCode === 'ArrowUp') {\n event.preventDefault();\n this.updateActiveIndex(-1);\n }\n\n if (keyCode === 'Enter' || keyCode === 'Space') {\n this.options()?.[this.activeIndex()]?.elementRef?.nativeElement?.click();\n }\n\n if (keyCode === 'Escape') {\n this.isOpen.set(false);\n }\n }\n\n private updateActiveIndex(direction: number) {\n const visibleOptions = this.options();\n if (!visibleOptions || visibleOptions.length === 0) return;\n\n this.activeIndex.update((index) => (index + direction + visibleOptions.length) % visibleOptions.length);\n }\n\n handleInputChange(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n this.textInput.set(value);\n this.isOpen.set(value.length > 0);\n this.onChange(value);\n this.filterOptions(value);\n }\n\n handleClick(event: MouseEvent) {\n if (this.disabled()) {\n event.preventDefault();\n return;\n }\n\n const target = event.target as HTMLElement;\n const optionElement = target.closest('cura-select-option') as HTMLElement;\n\n if (optionElement) {\n const clickedOption = this.options()?.find((option) => option.elementRef?.nativeElement === optionElement);\n if (clickedOption) {\n this.selectOption(clickedOption);\n }\n return;\n }\n\n this.isOpen.update((value) => !value);\n }\n\n private updateOptionHighlights(newActiveIndex: number): void {\n this.options().forEach((option, index) => {\n option.active.set(index === newActiveIndex);\n });\n }\n\n /**\n * Controla o clique fora do componente\n */\n private addOutsideClickListener(): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n document.addEventListener('click', this.handleClickOutside);\n }\n\n private removeOutsideClickListener(): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n document.removeEventListener('click', this.handleClickOutside);\n }\n\n private handleClickOutside = (event: MouseEvent): void => {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n const clickedOutside = !this.elementRef.nativeElement.contains(event.target as Node);\n if (clickedOutside && this.isOpen()) {\n this.isOpen.set(false);\n }\n };\n}\n","<div [ngClass]=\"containerClasses()\" [style]=\"styles()\" (mouseenter)=\"isHovered.set(true)\" (mouseleave)=\"isHovered.set(false)\" (click)=\"handleClick($event)\">\n @if (label()) {\n <cura-label class=\"label\" weight=\"bold\" [size]=\"size() === 'large' ? 'small' : 'xsmall'\" [color]=\"labelColor()\">\n {{ label() }}\n @if (required()) {\n <span class=\"required\">*</span>\n }\n </cura-label>\n }\n\n <div\n [ngClass]=\"{\n 'cura-input-field': true,\n open: isOpen(),\n }\"\n >\n @if (status() !== 'default' || iconName()) {\n <cura-icon\n class=\"feedback-icon\"\n [name]=\"currentIconName()\"\n iconset=\"default\"\n [size]=\"size() === 'large' ? 20 : 16\"\n [color]=\"iconColor()\"\n [style]=\"styles()\"\n >\n </cura-icon>\n }\n\n <input\n #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n [readonly]=\"!searchBehavior()\"\n [value]=\"textInput()\"\n [attr.id]=\"name() || null\"\n [attr.name]=\"name() || null\"\n [attr.aria-required]=\"required()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-invalid]=\"status() === 'error'\"\n [attr.aria-autocomplete]=\"searchBehavior() ? 'list' : 'none'\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n role=\"combobox\"\n [style]=\"styles()\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false)\"\n (input)=\"handleInputChange($event)\"\n (keydown)=\"handleKeyNavigation($event)\"\n />\n\n <button\n class=\"up-down-button\"\n type=\"button\"\n [attr.aria-label]=\"isOpen() ? 'Fechar lista de opções' : 'Abrir lista de opções'\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-controls]=\"listboxId()\"\n [disabled]=\"disabled()\"\n tabindex=\"-1\"\n >\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" class=\"up-down-icon\" [color]=\"disabled() ? 'neutral-dark' : 'primary-base'\" [size]=\"16\" iconset=\"default\">\n </cura-icon>\n </button>\n </div>\n\n <cura-label class=\"helper-text\" size=\"xsmall\" [color]=\"textColor()\" [weight]=\"mode() === 'transparent' ? 'bold' : 'regular'\">\n <ng-content></ng-content>\n </cura-label>\n\n @if (isOpen()) {\n <div\n [ngClass]=\"{\n menu: true,\n open: isOpen(),\n }\"\n [style]=\"{ '--max-height': maxHeight() }\"\n role=\"listbox\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"'Lista de opções para ' + (label() || 'seleção')\"\n [attr.aria-multiselectable]=\"false\"\n >\n <ng-content select=\"cura-select-option\"></ng-content>\n </div>\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -63,7 +63,7 @@ class CuraDisplayComponent {
63
63
  }, ...(ngDevMode ? [{ debugName: "headingStyles" }] : []));
64
64
  }
65
65
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: CuraDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: CuraDisplayComponent, isStandalone: true, selector: "cura-display", inputs: { level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, spotColor: { classPropertyName: "spotColor", publicName: "spotColor", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, marginBlock: { classPropertyName: "marginBlock", publicName: "marginBlock", isSignal: true, isRequired: false, transformFunction: null }, lineHeight: { classPropertyName: "lineHeight", publicName: "lineHeight", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "heading" }, properties: { "attr.aria-level": "level()", "style.--margin-block": "displayStyles().marginBlock", "style.--font-size-base": "displayStyles().fontSizeBase", "style.--line-height": "displayStyles().lineHeight" } }, ngImport: i0, template: "<ng-template #display>\n <ng-content></ng-content>\n</ng-template>\n\n@switch (level()) {\n @case (1) {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n @case (2) {\n <h2 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h2>\n }\n @case (3) {\n <h3 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h3>\n }\n @case (4) {\n <h4 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h4>\n }\n @case (5) {\n <h5 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h5>\n }\n @case (6) {\n <h6 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h6>\n }\n @default {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n}\n", styles: [":host{display:block;font-size:var(--font-size-base)}:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-family:var(--font-family);font-size:3em;font-weight:var(--font-weight-bold);color:var(--color-body);line-height:var(--line-height);margin-block:var(--margin-block);letter-spacing:0px}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.2857142857em;letter-spacing:-1.68px}:host h1 ::ng-deep b,:host h1 ::ng-deep strong,:host h2 ::ng-deep b,:host h2 ::ng-deep strong,:host h3 ::ng-deep b,:host h3 ::ng-deep strong,:host h4 ::ng-deep b,:host h4 ::ng-deep strong,:host h5 ::ng-deep b,:host h5 ::ng-deep strong,:host h6 ::ng-deep b,:host h6 ::ng-deep strong{font-weight:var(--font-weight-bold)}:host h1 ::ng-deep a,:host h2 ::ng-deep a,:host h3 ::ng-deep a,:host h4 ::ng-deep a,:host h5 ::ng-deep a,:host h6 ::ng-deep a{font-weight:var(--font-weight-bold);color:var(--color-link);text-underline-offset:10%;cursor:pointer}:host h1 ::ng-deep u,:host h2 ::ng-deep u,:host h3 ::ng-deep u,:host h4 ::ng-deep u,:host h5 ::ng-deep u,:host h6 ::ng-deep u{text-underline-offset:10%}:host h1 ::ng-deep i,:host h1 ::ng-deep em,:host h2 ::ng-deep i,:host h2 ::ng-deep em,:host h3 ::ng-deep i,:host h3 ::ng-deep em,:host h4 ::ng-deep i,:host h4 ::ng-deep em,:host h5 ::ng-deep i,:host h5 ::ng-deep em,:host h6 ::ng-deep i,:host h6 ::ng-deep em{font-style:italic;font-weight:var(--font-weight-medium)}:host h1 ::ng-deep abbr,:host h2 ::ng-deep abbr,:host h3 ::ng-deep abbr,:host h4 ::ng-deep abbr,:host h5 ::ng-deep abbr,:host h6 ::ng-deep abbr{color:var(--color-link);text-decoration:underline dashed 1px var(--color-link);text-underline-offset:10%;cursor:default}@media (min-width: 769px) and (max-width: 1920px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:3.429em}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.8571428571em;letter-spacing:-1.92px}}@media (min-width: 1921px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:4.286em;line-height:calc(var(--line-height) + 5%)}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:3.5714285714em;letter-spacing:-1.2px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
66
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: CuraDisplayComponent, isStandalone: true, selector: "cura-display", inputs: { level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, spotColor: { classPropertyName: "spotColor", publicName: "spotColor", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, marginBlock: { classPropertyName: "marginBlock", publicName: "marginBlock", isSignal: true, isRequired: false, transformFunction: null }, lineHeight: { classPropertyName: "lineHeight", publicName: "lineHeight", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "heading" }, properties: { "attr.aria-level": "level()", "style.--margin-block": "displayStyles().marginBlock", "style.--font-size-base": "displayStyles().fontSizeBase", "style.--line-height": "displayStyles().lineHeight" } }, ngImport: i0, template: "<ng-template #display>\n <ng-content></ng-content>\n</ng-template>\n\n@switch (level()) {\n @case (1) {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n @case (2) {\n <h2 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h2>\n }\n @case (3) {\n <h3 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h3>\n }\n @case (4) {\n <h4 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h4>\n }\n @case (5) {\n <h5 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h5>\n }\n @case (6) {\n <h6 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h6>\n }\n @default {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n}\n", styles: [":host{display:block;font-size:var(--font-size-base)}:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-family:var(--font-family);font-size:3em;font-weight:var(--font-weight-bold);color:var(--color-body);line-height:var(--line-height);margin-block:var(--margin-block);letter-spacing:0px}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.2857142857em;letter-spacing:-1.68px}:host h1 ::ng-deep b,:host h1 ::ng-deep strong,:host h2 ::ng-deep b,:host h2 ::ng-deep strong,:host h3 ::ng-deep b,:host h3 ::ng-deep strong,:host h4 ::ng-deep b,:host h4 ::ng-deep strong,:host h5 ::ng-deep b,:host h5 ::ng-deep strong,:host h6 ::ng-deep b,:host h6 ::ng-deep strong{font-weight:var(--font-weight-bold)}:host h1 ::ng-deep a,:host h2 ::ng-deep a,:host h3 ::ng-deep a,:host h4 ::ng-deep a,:host h5 ::ng-deep a,:host h6 ::ng-deep a{font-weight:var(--font-weight-bold);color:var(--color-link);text-underline-offset:10%;cursor:pointer}:host h1 ::ng-deep u,:host h2 ::ng-deep u,:host h3 ::ng-deep u,:host h4 ::ng-deep u,:host h5 ::ng-deep u,:host h6 ::ng-deep u{text-underline-offset:10%}:host h1 ::ng-deep i,:host h1 ::ng-deep em,:host h2 ::ng-deep i,:host h2 ::ng-deep em,:host h3 ::ng-deep i,:host h3 ::ng-deep em,:host h4 ::ng-deep i,:host h4 ::ng-deep em,:host h5 ::ng-deep i,:host h5 ::ng-deep em,:host h6 ::ng-deep i,:host h6 ::ng-deep em{font-style:italic;font-weight:var(--font-weight-medium)}:host h1 ::ng-deep abbr,:host h2 ::ng-deep abbr,:host h3 ::ng-deep abbr,:host h4 ::ng-deep abbr,:host h5 ::ng-deep abbr,:host h6 ::ng-deep abbr{color:var(--color-link);text-decoration:underline dashed 1px var(--color-link);text-underline-offset:10%;cursor:default}@media(min-width:769px)and (max-width:1920px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:3.429em}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.8571428571em;letter-spacing:-1.92px}}@media(min-width:1921px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:4.286em;line-height:calc(var(--line-height) + 5%)}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:3.5714285714em;letter-spacing:-1.2px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
67
67
  }
68
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: CuraDisplayComponent, decorators: [{
69
69
  type: Component,
@@ -73,7 +73,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
73
73
  '[style.--margin-block]': 'displayStyles().marginBlock',
74
74
  '[style.--font-size-base]': 'displayStyles().fontSizeBase',
75
75
  '[style.--line-height]': 'displayStyles().lineHeight',
76
- }, template: "<ng-template #display>\n <ng-content></ng-content>\n</ng-template>\n\n@switch (level()) {\n @case (1) {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n @case (2) {\n <h2 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h2>\n }\n @case (3) {\n <h3 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h3>\n }\n @case (4) {\n <h4 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h4>\n }\n @case (5) {\n <h5 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h5>\n }\n @case (6) {\n <h6 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h6>\n }\n @default {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n}\n", styles: [":host{display:block;font-size:var(--font-size-base)}:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-family:var(--font-family);font-size:3em;font-weight:var(--font-weight-bold);color:var(--color-body);line-height:var(--line-height);margin-block:var(--margin-block);letter-spacing:0px}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.2857142857em;letter-spacing:-1.68px}:host h1 ::ng-deep b,:host h1 ::ng-deep strong,:host h2 ::ng-deep b,:host h2 ::ng-deep strong,:host h3 ::ng-deep b,:host h3 ::ng-deep strong,:host h4 ::ng-deep b,:host h4 ::ng-deep strong,:host h5 ::ng-deep b,:host h5 ::ng-deep strong,:host h6 ::ng-deep b,:host h6 ::ng-deep strong{font-weight:var(--font-weight-bold)}:host h1 ::ng-deep a,:host h2 ::ng-deep a,:host h3 ::ng-deep a,:host h4 ::ng-deep a,:host h5 ::ng-deep a,:host h6 ::ng-deep a{font-weight:var(--font-weight-bold);color:var(--color-link);text-underline-offset:10%;cursor:pointer}:host h1 ::ng-deep u,:host h2 ::ng-deep u,:host h3 ::ng-deep u,:host h4 ::ng-deep u,:host h5 ::ng-deep u,:host h6 ::ng-deep u{text-underline-offset:10%}:host h1 ::ng-deep i,:host h1 ::ng-deep em,:host h2 ::ng-deep i,:host h2 ::ng-deep em,:host h3 ::ng-deep i,:host h3 ::ng-deep em,:host h4 ::ng-deep i,:host h4 ::ng-deep em,:host h5 ::ng-deep i,:host h5 ::ng-deep em,:host h6 ::ng-deep i,:host h6 ::ng-deep em{font-style:italic;font-weight:var(--font-weight-medium)}:host h1 ::ng-deep abbr,:host h2 ::ng-deep abbr,:host h3 ::ng-deep abbr,:host h4 ::ng-deep abbr,:host h5 ::ng-deep abbr,:host h6 ::ng-deep abbr{color:var(--color-link);text-decoration:underline dashed 1px var(--color-link);text-underline-offset:10%;cursor:default}@media (min-width: 769px) and (max-width: 1920px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:3.429em}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.8571428571em;letter-spacing:-1.92px}}@media (min-width: 1921px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:4.286em;line-height:calc(var(--line-height) + 5%)}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:3.5714285714em;letter-spacing:-1.2px}}\n"] }]
76
+ }, template: "<ng-template #display>\n <ng-content></ng-content>\n</ng-template>\n\n@switch (level()) {\n @case (1) {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n @case (2) {\n <h2 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h2>\n }\n @case (3) {\n <h3 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h3>\n }\n @case (4) {\n <h4 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h4>\n }\n @case (5) {\n <h5 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h5>\n }\n @case (6) {\n <h6 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h6>\n }\n @default {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n}\n", styles: [":host{display:block;font-size:var(--font-size-base)}:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-family:var(--font-family);font-size:3em;font-weight:var(--font-weight-bold);color:var(--color-body);line-height:var(--line-height);margin-block:var(--margin-block);letter-spacing:0px}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.2857142857em;letter-spacing:-1.68px}:host h1 ::ng-deep b,:host h1 ::ng-deep strong,:host h2 ::ng-deep b,:host h2 ::ng-deep strong,:host h3 ::ng-deep b,:host h3 ::ng-deep strong,:host h4 ::ng-deep b,:host h4 ::ng-deep strong,:host h5 ::ng-deep b,:host h5 ::ng-deep strong,:host h6 ::ng-deep b,:host h6 ::ng-deep strong{font-weight:var(--font-weight-bold)}:host h1 ::ng-deep a,:host h2 ::ng-deep a,:host h3 ::ng-deep a,:host h4 ::ng-deep a,:host h5 ::ng-deep a,:host h6 ::ng-deep a{font-weight:var(--font-weight-bold);color:var(--color-link);text-underline-offset:10%;cursor:pointer}:host h1 ::ng-deep u,:host h2 ::ng-deep u,:host h3 ::ng-deep u,:host h4 ::ng-deep u,:host h5 ::ng-deep u,:host h6 ::ng-deep u{text-underline-offset:10%}:host h1 ::ng-deep i,:host h1 ::ng-deep em,:host h2 ::ng-deep i,:host h2 ::ng-deep em,:host h3 ::ng-deep i,:host h3 ::ng-deep em,:host h4 ::ng-deep i,:host h4 ::ng-deep em,:host h5 ::ng-deep i,:host h5 ::ng-deep em,:host h6 ::ng-deep i,:host h6 ::ng-deep em{font-style:italic;font-weight:var(--font-weight-medium)}:host h1 ::ng-deep abbr,:host h2 ::ng-deep abbr,:host h3 ::ng-deep abbr,:host h4 ::ng-deep abbr,:host h5 ::ng-deep abbr,:host h6 ::ng-deep abbr{color:var(--color-link);text-decoration:underline dashed 1px var(--color-link);text-underline-offset:10%;cursor:default}@media(min-width:769px)and (max-width:1920px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:3.429em}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:2.8571428571em;letter-spacing:-1.92px}}@media(min-width:1921px){:host h1,:host h2,:host h3,:host h4,:host h5,:host h6{font-size:4.286em;line-height:calc(var(--line-height) + 5%)}:host h1.small,:host h2.small,:host h3.small,:host h4.small,:host h5.small,:host h6.small{font-size:3.5714285714em;letter-spacing:-1.2px}}\n"] }]
77
77
  }], propDecorators: { level: [{ type: i0.Input, args: [{ isSignal: true, alias: "level", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], spotColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "spotColor", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], marginBlock: [{ type: i0.Input, args: [{ isSignal: true, alias: "marginBlock", required: false }] }], lineHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "lineHeight", required: false }] }] } });
78
78
 
79
79
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rededor-site-front-end-lib-cura-texts-cura-display.mjs","sources":["../../../projects/site-front-end-lib/cura/texts/cura-display/cura-display.component.ts","../../../projects/site-front-end-lib/cura/texts/cura-display/cura-display.component.html","../../../projects/site-front-end-lib/cura/texts/cura-display/rededor-site-front-end-lib-cura-texts-cura-display.ts"],"sourcesContent":["import { Component, inject, input, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { HeadingLevel, DisplaySize } from '@rededor/site-front-end-lib/cura/texts';\n\n@Component({\n selector: 'cura-display',\n imports: [CommonModule],\n templateUrl: './cura-display.component.html',\n styleUrls: ['./cura-display.component.scss'],\n host: {\n role: 'heading',\n '[attr.aria-level]': 'level()',\n '[style.--margin-block]': 'displayStyles().marginBlock',\n '[style.--font-size-base]': 'displayStyles().fontSizeBase',\n '[style.--line-height]': 'displayStyles().lineHeight',\n },\n})\nexport class CuraDisplayComponent {\n private curaApi = inject(CuraApiService);\n\n /**\n * Heading level for semantics. Will render the related HTML tag <h1>, <h2>, ...\n * Values: 1(default) to 6.\n */\n level = input<HeadingLevel>(1);\n\n /**\n * Display size.\n * Values: 'large' (default) | 'small'.\n */\n size = input<DisplaySize>('large');\n\n /**\n * Apply design system color to interactive elements like <a> and <abbr> inside the text.\n * Values: Color from design system scheme. Default to 'accent-dark'.\n */\n spotColor = input<string>('accent-dark');\n\n /**\n * Text color.\n * Values: Color from design system scheme. Default to the font color from the theme.\n */\n color = input<string>('');\n\n /**\n * CSS margin-block property values.\n * Default to 1.25em\n */\n marginBlock = input<string>('1.25em');\n\n /**\n * CSS line-height property values.\n * Default to 120%\n */\n lineHeight = input<string>('120%');\n\n containerClasses = computed(() => {\n return this.size().toLowerCase();\n });\n\n displayStyles = computed(() => {\n return {\n marginBlock: this.marginBlock(),\n fontSizeBase: this.curaApi.theme.fonts.getSize(),\n lineHeight: this.lineHeight(),\n };\n });\n\n headingStyles = computed(() => {\n const weights = this.curaApi.theme.fonts.getWeights();\n const bodyColor = this.color()\n ? this.curaApi.theme.colors.getColor(this.color())\n : this.curaApi.theme.fonts.getColor() || this.curaApi.theme.colors.getColor('neutral-darker');\n\n return {\n '--font-family': this.curaApi.theme.fonts.getFamily('display'),\n '--font-size': this.curaApi.theme.fonts.getSize(),\n '--font-weight-bold': weights.bold,\n '--font-weight-medium': weights.medium,\n '--color-body': bodyColor,\n '--color-link': this.curaApi.theme.colors.getColor(this.spotColor()),\n };\n });\n}\n","<ng-template #display>\n <ng-content></ng-content>\n</ng-template>\n\n@switch (level()) {\n @case (1) {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n @case (2) {\n <h2 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h2>\n }\n @case (3) {\n <h3 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h3>\n }\n @case (4) {\n <h4 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h4>\n }\n @case (5) {\n <h5 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h5>\n }\n @case (6) {\n <h6 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h6>\n }\n @default {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rededor-site-front-end-lib-cura-texts-cura-display.mjs","sources":["../../../projects/site-front-end-lib/cura/texts/cura-display/cura-display.component.ts","../../../projects/site-front-end-lib/cura/texts/cura-display/cura-display.component.html","../../../projects/site-front-end-lib/cura/texts/cura-display/rededor-site-front-end-lib-cura-texts-cura-display.ts"],"sourcesContent":["import { Component, inject, input, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { HeadingLevel, DisplaySize } from '@rededor/site-front-end-lib/cura/texts';\n\n@Component({\n selector: 'cura-display',\n imports: [CommonModule],\n templateUrl: './cura-display.component.html',\n styleUrls: ['./cura-display.component.scss'],\n host: {\n role: 'heading',\n '[attr.aria-level]': 'level()',\n '[style.--margin-block]': 'displayStyles().marginBlock',\n '[style.--font-size-base]': 'displayStyles().fontSizeBase',\n '[style.--line-height]': 'displayStyles().lineHeight',\n },\n})\nexport class CuraDisplayComponent {\n private curaApi = inject(CuraApiService);\n\n /**\n * Heading level for semantics. Will render the related HTML tag <h1>, <h2>, ...\n * Values: 1(default) to 6.\n */\n level = input<HeadingLevel>(1);\n\n /**\n * Display size.\n * Values: 'large' (default) | 'small'.\n */\n size = input<DisplaySize>('large');\n\n /**\n * Apply design system color to interactive elements like <a> and <abbr> inside the text.\n * Values: Color from design system scheme. Default to 'accent-dark'.\n */\n spotColor = input<string>('accent-dark');\n\n /**\n * Text color.\n * Values: Color from design system scheme. Default to the font color from the theme.\n */\n color = input<string>('');\n\n /**\n * CSS margin-block property values.\n * Default to 1.25em\n */\n marginBlock = input<string>('1.25em');\n\n /**\n * CSS line-height property values.\n * Default to 120%\n */\n lineHeight = input<string>('120%');\n\n containerClasses = computed(() => {\n return this.size().toLowerCase();\n });\n\n displayStyles = computed(() => {\n return {\n marginBlock: this.marginBlock(),\n fontSizeBase: this.curaApi.theme.fonts.getSize(),\n lineHeight: this.lineHeight(),\n };\n });\n\n headingStyles = computed(() => {\n const weights = this.curaApi.theme.fonts.getWeights();\n const bodyColor = this.color()\n ? this.curaApi.theme.colors.getColor(this.color())\n : this.curaApi.theme.fonts.getColor() || this.curaApi.theme.colors.getColor('neutral-darker');\n\n return {\n '--font-family': this.curaApi.theme.fonts.getFamily('display'),\n '--font-size': this.curaApi.theme.fonts.getSize(),\n '--font-weight-bold': weights.bold,\n '--font-weight-medium': weights.medium,\n '--color-body': bodyColor,\n '--color-link': this.curaApi.theme.colors.getColor(this.spotColor()),\n };\n });\n}\n","<ng-template #display>\n <ng-content></ng-content>\n</ng-template>\n\n@switch (level()) {\n @case (1) {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n @case (2) {\n <h2 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h2>\n }\n @case (3) {\n <h3 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h3>\n }\n @case (4) {\n <h4 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h4>\n }\n @case (5) {\n <h5 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h5>\n }\n @case (6) {\n <h6 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h6>\n }\n @default {\n <h1 [class]=\"containerClasses()\" [ngStyle]=\"headingStyles()\">\n <ng-container *ngTemplateOutlet=\"display\"></ng-container>\n </h1>\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}