@xosue-utils/actions 0.1.4 → 0.2.0

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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { input, booleanAttribute, computed, Component, output } from '@angular/core';
2
+ import { input, booleanAttribute, computed, Component, output, model } from '@angular/core';
3
3
  import { NgTemplateOutlet } from '@angular/common';
4
4
  import { RouterLink } from '@angular/router';
5
5
  import { LucideDynamicIcon } from '@lucide/angular';
@@ -77,7 +77,7 @@ function buildUiClasses(opts) {
77
77
  opts.base,
78
78
  'Ui',
79
79
  `Ui--size-${opts.size ?? 'md'}`,
80
- `Ui--rounded-${opts.rounded ?? 'normal'}`,
80
+ `Ui--rounded-${opts.rounded ?? (opts.base === 'Capsule' ? 'full' : 'medium')}`,
81
81
  `Ui--color-${opts.color ?? 'primary'}`,
82
82
  `Ui--${opts.variant ?? 'solid'}`,
83
83
  `Ui--fit-${opts.fit ?? 'content'}`,
@@ -91,6 +91,14 @@ function buildUiClasses(opts) {
91
91
  if (opts.base === 'TextBtn') {
92
92
  classes.push(`TextBtn--${opts.layout ?? 'horizontal'}`);
93
93
  }
94
+ if (opts.base === 'Capsule') {
95
+ const tone = opts.tone ?? opts.color ?? 'muted';
96
+ classes.push(`Capsule--size-${opts.size ?? 'md'}`);
97
+ classes.push(`Capsule--tone-${tone}`);
98
+ if (opts.interactive) {
99
+ classes.push('Capsule--interactive');
100
+ }
101
+ }
94
102
  return classes.join(' ');
95
103
  }
96
104
  function buildUiHostStyle(colors, fit, width) {
@@ -106,6 +114,9 @@ function buildUiHostStyle(colors, fit, width) {
106
114
  }
107
115
  return style;
108
116
  }
117
+ function statusClassToTone(className) {
118
+ return className.replace(/^status-/, '').replace(/^StatusCapsule\s*/, '').trim();
119
+ }
109
120
 
110
121
  class TextBtnComponent {
111
122
  label = input('');
@@ -115,7 +126,7 @@ class TextBtnComponent {
115
126
  layout = input('horizontal');
116
127
  variant = input('solid');
117
128
  color = input('primary');
118
- rounded = input('normal');
129
+ rounded = input('medium');
119
130
  size = input('md');
120
131
  ripple = input(true, { transform: booleanAttribute });
121
132
  disabled = input(false, { transform: booleanAttribute });
@@ -206,7 +217,7 @@ class TextBtnComponent {
206
217
  </span>
207
218
  }
208
219
  </ng-template>
209
- `, isInline: true, styles: [".Ui,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 12px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);opacity:.92}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.14}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
220
+ `, isInline: true, styles: [".Ui,.Capsule,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.Capsule:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 16px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);transform:scale(.98)}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75;transform:scale(.98)}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.12}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Capsule{display:inline-flex;height:auto;min-height:0;padding:4px 8px;font-size:.72rem;font-weight:var(--weight-medium, 500);gap:4px;cursor:default;border-width:1px;white-space:nowrap;max-width:100%}.Capsule .Ui__Label{white-space:nowrap}.Capsule--interactive{cursor:pointer}.Capsule--size-sm{padding:2px 4px;font-size:.68rem;--ui-icon: 11px}.Capsule--size-md{padding:4px 8px;font-size:.72rem;--ui-icon: 12px}.Capsule--size-lg{padding:4px 12px;font-size:.8rem;--ui-icon: 14px}.Capsule--tone-pending,.Capsule--tone-sent{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-ok,.Capsule--tone-approved,.Capsule--tone-paid,.Capsule--tone-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border)}.Capsule--tone-bad,.Capsule--tone-cancelled,.Capsule--tone-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule--tone-muted,.Capsule--tone-neutral{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border)}.Capsule--tone-registered,.Capsule--tone-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border)}.Capsule--tone-primary{--ui-text: var(--btn-primary-text);--ui-bg: color-mix(in srgb, var(--btn-primary-bg) 20%, transparent);--ui-border: var(--btn-primary-border)}.Capsule--tone-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: color-mix(in srgb, var(--btn-secondary-bg) 20%, transparent);--ui-border: var(--btn-secondary-border)}.Capsule--tone-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-danger{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule.Ui--variant-solid,.Capsule.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Capsule.Ui--variant-solid.Capsule--interactive:active:not(.Ui--disabled),.Capsule.Ui--solid.Capsule--interactive:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
210
221
  }
211
222
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: TextBtnComponent, decorators: [{
212
223
  type: Component,
@@ -262,14 +273,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImpo
262
273
  </span>
263
274
  }
264
275
  </ng-template>
265
- `, styles: [".Ui,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 12px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);opacity:.92}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.14}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}\n"] }]
276
+ `, styles: [".Ui,.Capsule,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.Capsule:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 16px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);transform:scale(.98)}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75;transform:scale(.98)}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.12}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Capsule{display:inline-flex;height:auto;min-height:0;padding:4px 8px;font-size:.72rem;font-weight:var(--weight-medium, 500);gap:4px;cursor:default;border-width:1px;white-space:nowrap;max-width:100%}.Capsule .Ui__Label{white-space:nowrap}.Capsule--interactive{cursor:pointer}.Capsule--size-sm{padding:2px 4px;font-size:.68rem;--ui-icon: 11px}.Capsule--size-md{padding:4px 8px;font-size:.72rem;--ui-icon: 12px}.Capsule--size-lg{padding:4px 12px;font-size:.8rem;--ui-icon: 14px}.Capsule--tone-pending,.Capsule--tone-sent{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-ok,.Capsule--tone-approved,.Capsule--tone-paid,.Capsule--tone-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border)}.Capsule--tone-bad,.Capsule--tone-cancelled,.Capsule--tone-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule--tone-muted,.Capsule--tone-neutral{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border)}.Capsule--tone-registered,.Capsule--tone-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border)}.Capsule--tone-primary{--ui-text: var(--btn-primary-text);--ui-bg: color-mix(in srgb, var(--btn-primary-bg) 20%, transparent);--ui-border: var(--btn-primary-border)}.Capsule--tone-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: color-mix(in srgb, var(--btn-secondary-bg) 20%, transparent);--ui-border: var(--btn-secondary-border)}.Capsule--tone-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-danger{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule.Ui--variant-solid,.Capsule.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Capsule.Ui--variant-solid.Capsule--interactive:active:not(.Ui--disabled),.Capsule.Ui--solid.Capsule--interactive:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}\n"] }]
266
277
  }] });
267
278
 
268
279
  class IconBtnComponent {
269
280
  icon = input.required();
270
281
  variant = input('ghost');
271
282
  color = input('neutral');
272
- rounded = input('normal');
283
+ rounded = input('medium');
273
284
  size = input('md');
274
285
  ripple = input(true, { transform: booleanAttribute });
275
286
  disabled = input(false, { transform: booleanAttribute });
@@ -353,7 +364,7 @@ class IconBtnComponent {
353
364
  </span>
354
365
  </button>
355
366
  }
356
- `, isInline: true, styles: [".Ui,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 12px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);opacity:.92}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.14}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
367
+ `, isInline: true, styles: [".Ui,.Capsule,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.Capsule:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 16px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);transform:scale(.98)}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75;transform:scale(.98)}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.12}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Capsule{display:inline-flex;height:auto;min-height:0;padding:4px 8px;font-size:.72rem;font-weight:var(--weight-medium, 500);gap:4px;cursor:default;border-width:1px;white-space:nowrap;max-width:100%}.Capsule .Ui__Label{white-space:nowrap}.Capsule--interactive{cursor:pointer}.Capsule--size-sm{padding:2px 4px;font-size:.68rem;--ui-icon: 11px}.Capsule--size-md{padding:4px 8px;font-size:.72rem;--ui-icon: 12px}.Capsule--size-lg{padding:4px 12px;font-size:.8rem;--ui-icon: 14px}.Capsule--tone-pending,.Capsule--tone-sent{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-ok,.Capsule--tone-approved,.Capsule--tone-paid,.Capsule--tone-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border)}.Capsule--tone-bad,.Capsule--tone-cancelled,.Capsule--tone-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule--tone-muted,.Capsule--tone-neutral{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border)}.Capsule--tone-registered,.Capsule--tone-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border)}.Capsule--tone-primary{--ui-text: var(--btn-primary-text);--ui-bg: color-mix(in srgb, var(--btn-primary-bg) 20%, transparent);--ui-border: var(--btn-primary-border)}.Capsule--tone-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: color-mix(in srgb, var(--btn-secondary-bg) 20%, transparent);--ui-border: var(--btn-secondary-border)}.Capsule--tone-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-danger{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule.Ui--variant-solid,.Capsule.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Capsule.Ui--variant-solid.Capsule--interactive:active:not(.Ui--disabled),.Capsule.Ui--solid.Capsule--interactive:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
357
368
  }
358
369
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: IconBtnComponent, decorators: [{
359
370
  type: Component,
@@ -401,7 +412,494 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImpo
401
412
  </span>
402
413
  </button>
403
414
  }
404
- `, styles: [".Ui,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 12px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);opacity:.92}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.14}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}\n"] }]
415
+ `, styles: [".Ui,.Capsule,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.Capsule:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 16px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);transform:scale(.98)}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75;transform:scale(.98)}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.12}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Capsule{display:inline-flex;height:auto;min-height:0;padding:4px 8px;font-size:.72rem;font-weight:var(--weight-medium, 500);gap:4px;cursor:default;border-width:1px;white-space:nowrap;max-width:100%}.Capsule .Ui__Label{white-space:nowrap}.Capsule--interactive{cursor:pointer}.Capsule--size-sm{padding:2px 4px;font-size:.68rem;--ui-icon: 11px}.Capsule--size-md{padding:4px 8px;font-size:.72rem;--ui-icon: 12px}.Capsule--size-lg{padding:4px 12px;font-size:.8rem;--ui-icon: 14px}.Capsule--tone-pending,.Capsule--tone-sent{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-ok,.Capsule--tone-approved,.Capsule--tone-paid,.Capsule--tone-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border)}.Capsule--tone-bad,.Capsule--tone-cancelled,.Capsule--tone-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule--tone-muted,.Capsule--tone-neutral{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border)}.Capsule--tone-registered,.Capsule--tone-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border)}.Capsule--tone-primary{--ui-text: var(--btn-primary-text);--ui-bg: color-mix(in srgb, var(--btn-primary-bg) 20%, transparent);--ui-border: var(--btn-primary-border)}.Capsule--tone-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: color-mix(in srgb, var(--btn-secondary-bg) 20%, transparent);--ui-border: var(--btn-secondary-border)}.Capsule--tone-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-danger{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule.Ui--variant-solid,.Capsule.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Capsule.Ui--variant-solid.Capsule--interactive:active:not(.Ui--disabled),.Capsule.Ui--solid.Capsule--interactive:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}\n"] }]
416
+ }] });
417
+
418
+ class CapsuleComponent {
419
+ label = input('');
420
+ icon = input(null);
421
+ tone = input(null);
422
+ statusClass = input(null);
423
+ color = input('muted');
424
+ variant = input('solid');
425
+ rounded = input('full');
426
+ size = input('md');
427
+ ripple = input(false, { transform: booleanAttribute });
428
+ interactive = input(false, { transform: booleanAttribute });
429
+ disabled = input(false, { transform: booleanAttribute });
430
+ href = input(null);
431
+ routerLink = input(null);
432
+ fit = input('content');
433
+ width = input(null);
434
+ textColor = input(null);
435
+ bgColor = input(null);
436
+ borderColor = input(null);
437
+ clicked = output();
438
+ resolvedTone = computed(() => {
439
+ if (this.tone())
440
+ return this.tone();
441
+ if (this.statusClass())
442
+ return statusClassToTone(this.statusClass());
443
+ return this.color();
444
+ });
445
+ iconSize = computed(() => {
446
+ const map = { sm: 11, md: 12, lg: 14 };
447
+ return map[this.size()];
448
+ });
449
+ classes = computed(() => buildUiClasses({
450
+ base: 'Capsule',
451
+ size: this.size(),
452
+ rounded: this.rounded(),
453
+ color: this.color(),
454
+ variant: this.variant(),
455
+ ripple: this.ripple(),
456
+ disabled: this.disabled(),
457
+ fit: this.fit(),
458
+ tone: this.resolvedTone(),
459
+ interactive: this.interactive(),
460
+ }));
461
+ hostStyle = computed(() => buildUiHostStyle({
462
+ text: this.textColor(),
463
+ bg: this.bgColor(),
464
+ border: this.borderColor(),
465
+ }, this.fit(), this.width()));
466
+ onActivate(event) {
467
+ if (this.disabled()) {
468
+ event.preventDefault();
469
+ event.stopPropagation();
470
+ return;
471
+ }
472
+ this.clicked.emit(event);
473
+ }
474
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CapsuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
475
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: CapsuleComponent, isStandalone: true, selector: "capsule", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, tone: { classPropertyName: "tone", publicName: "tone", isSignal: true, isRequired: false, transformFunction: null }, statusClass: { classPropertyName: "statusClass", publicName: "statusClass", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, ripple: { classPropertyName: "ripple", publicName: "ripple", isSignal: true, isRequired: false, transformFunction: null }, interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, routerLink: { classPropertyName: "routerLink", publicName: "routerLink", isSignal: true, isRequired: false, transformFunction: null }, fit: { classPropertyName: "fit", publicName: "fit", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, textColor: { classPropertyName: "textColor", publicName: "textColor", isSignal: true, isRequired: false, transformFunction: null }, bgColor: { classPropertyName: "bgColor", publicName: "bgColor", isSignal: true, isRequired: false, transformFunction: null }, borderColor: { classPropertyName: "borderColor", publicName: "borderColor", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked" }, ngImport: i0, template: `
476
+ @if (href()) {
477
+ <a
478
+ [class]="classes()"
479
+ [style]="hostStyle()"
480
+ [href]="disabled() ? null : href()"
481
+ [attr.aria-disabled]="disabled() || null"
482
+ (click)="onActivate($event)"
483
+ >
484
+ <ng-container *ngTemplateOutlet="content"></ng-container>
485
+ </a>
486
+ } @else if (routerLink()) {
487
+ <a
488
+ [class]="classes()"
489
+ [style]="hostStyle()"
490
+ [routerLink]="disabled() ? null : routerLink()"
491
+ [attr.aria-disabled]="disabled() || null"
492
+ (click)="onActivate($event)"
493
+ >
494
+ <ng-container *ngTemplateOutlet="content"></ng-container>
495
+ </a>
496
+ } @else if (interactive()) {
497
+ <button
498
+ [class]="classes()"
499
+ [style]="hostStyle()"
500
+ type="button"
501
+ [disabled]="disabled()"
502
+ (click)="onActivate($event)"
503
+ >
504
+ <ng-container *ngTemplateOutlet="content"></ng-container>
505
+ </button>
506
+ } @else {
507
+ <span [class]="classes()" [style]="hostStyle()">
508
+ <ng-container *ngTemplateOutlet="content"></ng-container>
509
+ </span>
510
+ }
511
+
512
+ <ng-template #content>
513
+ @if (icon()) {
514
+ <span class="Ui__Icon">
515
+ <lucide-icon [name]="icon()!" [size]="iconSize()"></lucide-icon>
516
+ </span>
517
+ }
518
+ @if (label()) {
519
+ <span class="Ui__Label">{{ label() }}</span>
520
+ }
521
+ <ng-content></ng-content>
522
+ </ng-template>
523
+ `, isInline: true, styles: [".Ui,.Capsule,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.Capsule:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 16px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);transform:scale(.98)}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75;transform:scale(.98)}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.12}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Capsule{display:inline-flex;height:auto;min-height:0;padding:4px 8px;font-size:.72rem;font-weight:var(--weight-medium, 500);gap:4px;cursor:default;border-width:1px;white-space:nowrap;max-width:100%}.Capsule .Ui__Label{white-space:nowrap}.Capsule--interactive{cursor:pointer}.Capsule--size-sm{padding:2px 4px;font-size:.68rem;--ui-icon: 11px}.Capsule--size-md{padding:4px 8px;font-size:.72rem;--ui-icon: 12px}.Capsule--size-lg{padding:4px 12px;font-size:.8rem;--ui-icon: 14px}.Capsule--tone-pending,.Capsule--tone-sent{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-ok,.Capsule--tone-approved,.Capsule--tone-paid,.Capsule--tone-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border)}.Capsule--tone-bad,.Capsule--tone-cancelled,.Capsule--tone-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule--tone-muted,.Capsule--tone-neutral{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border)}.Capsule--tone-registered,.Capsule--tone-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border)}.Capsule--tone-primary{--ui-text: var(--btn-primary-text);--ui-bg: color-mix(in srgb, var(--btn-primary-bg) 20%, transparent);--ui-border: var(--btn-primary-border)}.Capsule--tone-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: color-mix(in srgb, var(--btn-secondary-bg) 20%, transparent);--ui-border: var(--btn-secondary-border)}.Capsule--tone-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-danger{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule.Ui--variant-solid,.Capsule.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Capsule.Ui--variant-solid.Capsule--interactive:active:not(.Ui--disabled),.Capsule.Ui--solid.Capsule--interactive:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
524
+ }
525
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CapsuleComponent, decorators: [{
526
+ type: Component,
527
+ args: [{ selector: 'capsule', standalone: true, imports: [LucideIconComponent, RouterLink, NgTemplateOutlet], template: `
528
+ @if (href()) {
529
+ <a
530
+ [class]="classes()"
531
+ [style]="hostStyle()"
532
+ [href]="disabled() ? null : href()"
533
+ [attr.aria-disabled]="disabled() || null"
534
+ (click)="onActivate($event)"
535
+ >
536
+ <ng-container *ngTemplateOutlet="content"></ng-container>
537
+ </a>
538
+ } @else if (routerLink()) {
539
+ <a
540
+ [class]="classes()"
541
+ [style]="hostStyle()"
542
+ [routerLink]="disabled() ? null : routerLink()"
543
+ [attr.aria-disabled]="disabled() || null"
544
+ (click)="onActivate($event)"
545
+ >
546
+ <ng-container *ngTemplateOutlet="content"></ng-container>
547
+ </a>
548
+ } @else if (interactive()) {
549
+ <button
550
+ [class]="classes()"
551
+ [style]="hostStyle()"
552
+ type="button"
553
+ [disabled]="disabled()"
554
+ (click)="onActivate($event)"
555
+ >
556
+ <ng-container *ngTemplateOutlet="content"></ng-container>
557
+ </button>
558
+ } @else {
559
+ <span [class]="classes()" [style]="hostStyle()">
560
+ <ng-container *ngTemplateOutlet="content"></ng-container>
561
+ </span>
562
+ }
563
+
564
+ <ng-template #content>
565
+ @if (icon()) {
566
+ <span class="Ui__Icon">
567
+ <lucide-icon [name]="icon()!" [size]="iconSize()"></lucide-icon>
568
+ </span>
569
+ }
570
+ @if (label()) {
571
+ <span class="Ui__Label">{{ label() }}</span>
572
+ }
573
+ <ng-content></ng-content>
574
+ </ng-template>
575
+ `, styles: [".Ui,.Capsule,.IconBtn,.TextBtn{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;border:1px solid transparent;font-family:inherit;font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease;position:relative;overflow:hidden;max-width:100%;box-shadow:none}.Ui:focus-visible,.Capsule:focus-visible,.IconBtn:focus-visible,.TextBtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Ui--fit-content{width:auto;max-width:100%}.Ui--fit-fill{width:100%;max-width:100%}.Ui--fit-fixed{max-width:100%}.Ui--size-sm{--ui-pad-y: 2px;--ui-pad-x: 4px;--ui-font: .8rem;--ui-icon: 14px;--ui-gap: 4px}.Ui--size-md{--ui-pad-y: 4px;--ui-pad-x: 8px;--ui-font: .875rem;--ui-icon: 16px;--ui-gap: 4px}.Ui--size-lg{--ui-pad-y: 4px;--ui-pad-x: 12px;--ui-font: 1rem;--ui-icon: 18px;--ui-gap: 8px}.Ui--rounded-full{border-radius:9999px}.Ui--rounded-medium{border-radius:var(--radius-xl, 24px)}.Ui--rounded-normal{border-radius:var(--radius-lg, 16px)}.Ui--rounded-small{border-radius:var(--radius-md, 8px)}.Ui--rounded-square{border-radius:var(--radius-sm, 4px)}.Ui--color-primary{--ui-text: var(--btn-primary-text);--ui-bg: var(--btn-primary-bg);--ui-border: var(--btn-primary-border);--ui-text-hover: var(--btn-primary-text-hover);--ui-bg-hover: var(--btn-primary-bg-hover);--ui-border-hover: var(--btn-primary-border-hover);--ui-text-active: var(--btn-primary-text-active);--ui-bg-active: var(--btn-primary-bg-active);--ui-border-active: var(--btn-primary-border-active)}.Ui--color-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: var(--btn-secondary-bg);--ui-border: var(--btn-secondary-border);--ui-text-hover: var(--btn-secondary-text-hover);--ui-bg-hover: var(--btn-secondary-bg-hover);--ui-border-hover: var(--btn-secondary-border-hover);--ui-text-active: var(--btn-secondary-text-active);--ui-bg-active: var(--btn-secondary-bg-active);--ui-border-active: var(--btn-secondary-border-active)}.Ui--color-danger{--ui-text: var(--btn-danger-text);--ui-bg: var(--btn-danger-bg);--ui-border: var(--btn-danger-border);--ui-text-hover: var(--btn-danger-text-hover);--ui-bg-hover: var(--btn-danger-bg-hover);--ui-border-hover: var(--btn-danger-border-hover);--ui-text-active: var(--btn-danger-text-active);--ui-bg-active: var(--btn-danger-bg-active);--ui-border-active: var(--btn-danger-border-active)}.Ui--color-neutral{--ui-text: var(--btn-neutral-text);--ui-bg: var(--btn-neutral-bg);--ui-border: var(--btn-neutral-border);--ui-text-hover: var(--btn-neutral-text-hover);--ui-bg-hover: var(--btn-neutral-bg-hover);--ui-border-hover: var(--btn-neutral-border-hover);--ui-text-active: var(--btn-neutral-text-active);--ui-bg-active: var(--btn-neutral-bg-active);--ui-border-active: var(--btn-neutral-border-active)}.Ui--color-cancel{--ui-text: var(--btn-cancel-text);--ui-bg: var(--btn-cancel-bg);--ui-border: var(--btn-cancel-border);--ui-text-hover: var(--btn-cancel-text-hover);--ui-bg-hover: var(--btn-cancel-bg-hover);--ui-border-hover: var(--btn-cancel-border-hover);--ui-text-active: var(--btn-cancel-text-active);--ui-bg-active: var(--btn-cancel-bg-active);--ui-border-active: var(--btn-cancel-border-active)}.Ui--color-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border);--ui-text-hover: var(--success-text);--ui-bg-hover: color-mix(in srgb, var(--success-bg) 80%, var(--success-text));--ui-border-hover: var(--success-border);--ui-text-active: var(--success-text);--ui-bg-active: color-mix(in srgb, var(--success-bg) 65%, var(--success-text));--ui-border-active: var(--success-border)}.Ui--color-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border);--ui-text-hover: var(--warning-text);--ui-bg-hover: color-mix(in srgb, var(--warning-bg) 80%, var(--warning-text));--ui-border-hover: var(--warning-border);--ui-text-active: var(--warning-text);--ui-bg-active: color-mix(in srgb, var(--warning-bg) 65%, var(--warning-text));--ui-border-active: var(--warning-border)}.Ui--color-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border);--ui-text-hover: var(--error-text);--ui-bg-hover: color-mix(in srgb, var(--error-bg) 80%, var(--error-text));--ui-border-hover: var(--error-border);--ui-text-active: var(--error-text);--ui-bg-active: color-mix(in srgb, var(--error-bg) 65%, var(--error-text));--ui-border-active: var(--error-border)}.Ui--color-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border);--ui-text-hover: var(--info-text);--ui-bg-hover: color-mix(in srgb, var(--info-bg) 80%, var(--info-text));--ui-border-hover: var(--info-border);--ui-text-active: var(--info-text);--ui-bg-active: color-mix(in srgb, var(--info-bg) 65%, var(--info-text));--ui-border-active: var(--info-border)}.Ui--color-muted{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border);--ui-text-hover: var(--text-base);--ui-bg-hover: var(--surface);--ui-border-hover: var(--border);--ui-text-active: var(--text-base);--ui-bg-active: var(--surface);--ui-border-active: var(--border)}.Ui--variant-solid,.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Ui--variant-solid:hover:not(.Ui--disabled),.Ui--solid:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-solid:active:not(.Ui--disabled),.Ui--solid:active:not(.Ui--disabled){color:var(--ui-text-active);background-color:var(--ui-bg-active);border-color:var(--ui-border-active);transform:scale(.98)}.Ui--variant-line,.Ui--line{color:var(--ui-text);background-color:transparent;border-color:var(--ui-border)}.Ui--variant-line:hover:not(.Ui--disabled),.Ui--line:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover);border-color:var(--ui-border-hover)}.Ui--variant-line:active:not(.Ui--disabled),.Ui--line:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}.Ui--variant-ghost,.Ui--ghost{color:var(--ui-text);background-color:transparent;border-color:transparent}.Ui--variant-ghost:hover:not(.Ui--disabled),.Ui--ghost:hover:not(.Ui--disabled){color:var(--ui-text-hover);background-color:var(--ui-bg-hover)}.Ui--variant-ghost:active:not(.Ui--disabled),.Ui--ghost:active:not(.Ui--disabled){opacity:.75;transform:scale(.98)}.Ui--ripple:after{content:\"\";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .35s ease}.Ui--ripple:active:not(.Ui--disabled):after{opacity:.12}.Ui--disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.Ui__Icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Ui__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TextBtn{padding:var(--ui-pad-y) var(--ui-pad-x);font-size:var(--ui-font);gap:var(--ui-gap)}.TextBtn--horizontal{flex-direction:row}.TextBtn--vertical{flex-direction:column;gap:calc(var(--ui-gap) * .75)}.IconBtn{width:32px;min-width:32px;padding:4px;flex-shrink:0}.IconBtn .Ui__Icon .lucide-svg{width:var(--ui-icon);height:var(--ui-icon)}.Capsule{display:inline-flex;height:auto;min-height:0;padding:4px 8px;font-size:.72rem;font-weight:var(--weight-medium, 500);gap:4px;cursor:default;border-width:1px;white-space:nowrap;max-width:100%}.Capsule .Ui__Label{white-space:nowrap}.Capsule--interactive{cursor:pointer}.Capsule--size-sm{padding:2px 4px;font-size:.68rem;--ui-icon: 11px}.Capsule--size-md{padding:4px 8px;font-size:.72rem;--ui-icon: 12px}.Capsule--size-lg{padding:4px 12px;font-size:.8rem;--ui-icon: 14px}.Capsule--tone-pending,.Capsule--tone-sent{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-ok,.Capsule--tone-approved,.Capsule--tone-paid,.Capsule--tone-success{--ui-text: var(--success-text);--ui-bg: var(--success-bg);--ui-border: var(--success-border)}.Capsule--tone-bad,.Capsule--tone-cancelled,.Capsule--tone-error{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule--tone-muted,.Capsule--tone-neutral{--ui-text: var(--text-muted);--ui-bg: var(--surface-2, var(--surface));--ui-border: var(--border)}.Capsule--tone-registered,.Capsule--tone-info{--ui-text: var(--info-text);--ui-bg: var(--info-bg);--ui-border: var(--info-border)}.Capsule--tone-primary{--ui-text: var(--btn-primary-text);--ui-bg: color-mix(in srgb, var(--btn-primary-bg) 20%, transparent);--ui-border: var(--btn-primary-border)}.Capsule--tone-secondary{--ui-text: var(--btn-secondary-text);--ui-bg: color-mix(in srgb, var(--btn-secondary-bg) 20%, transparent);--ui-border: var(--btn-secondary-border)}.Capsule--tone-warning{--ui-text: var(--warning-text);--ui-bg: var(--warning-bg);--ui-border: var(--warning-border)}.Capsule--tone-danger{--ui-text: var(--error-text);--ui-bg: var(--error-bg);--ui-border: var(--error-border)}.Capsule.Ui--variant-solid,.Capsule.Ui--solid{color:var(--ui-text);background-color:var(--ui-bg);border-color:var(--ui-border)}.Capsule.Ui--variant-solid.Capsule--interactive:active:not(.Ui--disabled),.Capsule.Ui--solid.Capsule--interactive:active:not(.Ui--disabled){opacity:.85;transform:scale(.98)}\n"] }]
576
+ }] });
577
+
578
+ class ChipComponent {
579
+ label = input.required();
580
+ icon = input(null);
581
+ selected = input(false, { transform: booleanAttribute });
582
+ removable = input(false, { transform: booleanAttribute });
583
+ disabled = input(false, { transform: booleanAttribute });
584
+ clicked = output();
585
+ removed = output();
586
+ onClick(event) {
587
+ if (this.disabled())
588
+ return;
589
+ this.clicked.emit(event);
590
+ }
591
+ onRemove(event) {
592
+ event.stopPropagation();
593
+ event.preventDefault();
594
+ if (this.disabled())
595
+ return;
596
+ this.removed.emit(event);
597
+ }
598
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
599
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ChipComponent, isStandalone: true, selector: "chip", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null }, removable: { classPropertyName: "removable", publicName: "removable", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked", removed: "removed" }, ngImport: i0, template: `
600
+ <button
601
+ type="button"
602
+ class="Chip"
603
+ [class.Chip--selected]="selected()"
604
+ [class.Chip--disabled]="disabled()"
605
+ [disabled]="disabled()"
606
+ (click)="onClick($event)"
607
+ >
608
+ @if (icon()) {
609
+ <span class="Chip__Icon">
610
+ <lucide-icon [name]="icon()!" [size]="14"></lucide-icon>
611
+ </span>
612
+ }
613
+ <span class="Chip__Label">{{ label() }}</span>
614
+ @if (removable()) {
615
+ <span
616
+ class="Chip__Remove"
617
+ role="button"
618
+ tabindex="0"
619
+ [attr.aria-label]="'Quitar ' + label()"
620
+ (click)="onRemove($event)"
621
+ (keydown.enter)="onRemove($event)"
622
+ (keydown.space)="onRemove($event); $event.preventDefault()"
623
+ >
624
+ <lucide-icon name="x" [size]="12"></lucide-icon>
625
+ </span>
626
+ }
627
+ </button>
628
+ `, isInline: true, styles: [":host{display:inline-flex}.Chip{display:inline-flex;align-items:center;gap:4px;height:32px;padding:4px 8px;border:1px solid var(--border);border-radius:9999px;background:var(--surface-2, var(--surface));color:var(--text-base);font:inherit;font-size:.8125rem;font-weight:var(--weight-medium, 500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease}.Chip:hover:not(.Chip--disabled){background:color-mix(in srgb,var(--surface) 70%,var(--border))}.Chip:active:not(.Chip--disabled){transform:scale(.98)}.Chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Chip--selected{background:color-mix(in srgb,var(--primary) 16%,var(--surface));border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:var(--primary)}.Chip--disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.Chip__Icon,.Chip__Remove{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.Chip__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Chip__Remove{margin-left:0;padding:2px;border-radius:9999px;color:var(--text-muted)}.Chip__Remove:hover{background:color-mix(in srgb,var(--text-base) 10%,transparent);color:var(--text-base)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }] });
629
+ }
630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ChipComponent, decorators: [{
631
+ type: Component,
632
+ args: [{ selector: 'chip', standalone: true, imports: [LucideIconComponent], template: `
633
+ <button
634
+ type="button"
635
+ class="Chip"
636
+ [class.Chip--selected]="selected()"
637
+ [class.Chip--disabled]="disabled()"
638
+ [disabled]="disabled()"
639
+ (click)="onClick($event)"
640
+ >
641
+ @if (icon()) {
642
+ <span class="Chip__Icon">
643
+ <lucide-icon [name]="icon()!" [size]="14"></lucide-icon>
644
+ </span>
645
+ }
646
+ <span class="Chip__Label">{{ label() }}</span>
647
+ @if (removable()) {
648
+ <span
649
+ class="Chip__Remove"
650
+ role="button"
651
+ tabindex="0"
652
+ [attr.aria-label]="'Quitar ' + label()"
653
+ (click)="onRemove($event)"
654
+ (keydown.enter)="onRemove($event)"
655
+ (keydown.space)="onRemove($event); $event.preventDefault()"
656
+ >
657
+ <lucide-icon name="x" [size]="12"></lucide-icon>
658
+ </span>
659
+ }
660
+ </button>
661
+ `, styles: [":host{display:inline-flex}.Chip{display:inline-flex;align-items:center;gap:4px;height:32px;padding:4px 8px;border:1px solid var(--border);border-radius:9999px;background:var(--surface-2, var(--surface));color:var(--text-base);font:inherit;font-size:.8125rem;font-weight:var(--weight-medium, 500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease,border-color .15s ease,transform .1s ease,opacity .15s ease}.Chip:hover:not(.Chip--disabled){background:color-mix(in srgb,var(--surface) 70%,var(--border))}.Chip:active:not(.Chip--disabled){transform:scale(.98)}.Chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.Chip--selected{background:color-mix(in srgb,var(--primary) 16%,var(--surface));border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:var(--primary)}.Chip--disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.Chip__Icon,.Chip__Remove{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.Chip__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Chip__Remove{margin-left:0;padding:2px;border-radius:9999px;color:var(--text-muted)}.Chip__Remove:hover{background:color-mix(in srgb,var(--text-base) 10%,transparent);color:var(--text-base)}\n"] }]
662
+ }] });
663
+
664
+ class SegmentedControlComponent {
665
+ options = input([]);
666
+ size = input('md');
667
+ disabled = input(false, { transform: booleanAttribute });
668
+ /** Two-way binding via [(value)]. */
669
+ value = model(null);
670
+ /** One-way + event alias: [selected] + (selectedChange). */
671
+ selected = input(null);
672
+ selectedChange = output();
673
+ trackOpt(index, opt) {
674
+ return opt.value ?? index;
675
+ }
676
+ isSelected(v) {
677
+ const current = this.value() ?? this.selected();
678
+ return current === v;
679
+ }
680
+ select(v) {
681
+ if (this.disabled())
682
+ return;
683
+ this.value.set(v);
684
+ this.selectedChange.emit(v);
685
+ }
686
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SegmentedControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
687
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: SegmentedControlComponent, isStandalone: true, selector: "segmented-control", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", selectedChange: "selectedChange" }, ngImport: i0, template: `
688
+ <div
689
+ class="Segmented"
690
+ [class.Segmented--sm]="size() === 'sm'"
691
+ [class.Segmented--md]="size() === 'md'"
692
+ role="tablist"
693
+ [attr.aria-disabled]="disabled() || null"
694
+ >
695
+ @for (opt of options(); track trackOpt($index, opt)) {
696
+ <button
697
+ type="button"
698
+ class="Segmented__Item"
699
+ role="tab"
700
+ [class.Segmented__Item--active]="isSelected(opt.value)"
701
+ [disabled]="disabled() || !!opt.disabled"
702
+ [attr.aria-selected]="isSelected(opt.value)"
703
+ (click)="select(opt.value)"
704
+ >
705
+ @if (opt.icon) {
706
+ <span class="Segmented__Icon">
707
+ <lucide-icon [name]="opt.icon" [size]="size() === 'sm' ? 14 : 16"></lucide-icon>
708
+ </span>
709
+ }
710
+ <span class="Segmented__Label">{{ opt.label }}</span>
711
+ </button>
712
+ }
713
+ </div>
714
+ `, isInline: true, styles: [":host{display:inline-flex;max-width:100%}.Segmented{display:inline-flex;align-items:stretch;gap:0;padding:2px;background:var(--surface-2, var(--surface));border:1px solid var(--border);border-radius:var(--radius-lg, 12px);max-width:100%}.Segmented--sm .Segmented__Item{height:28px;padding:2px 8px;font-size:.75rem}.Segmented--md .Segmented__Item{height:32px;padding:4px 12px;font-size:.8125rem}.Segmented__Item{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:1 1 auto;min-width:0;border:none;border-radius:var(--radius-md, 8px);background:transparent;color:var(--text-muted);font:inherit;font-weight:var(--weight-medium, 500);cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease}.Segmented__Item:hover:not(:disabled):not(.Segmented__Item--active){color:var(--text-base);background:color-mix(in srgb,var(--surface) 60%,transparent)}.Segmented__Item:active:not(:disabled){transform:scale(.98)}.Segmented__Item:disabled{opacity:.45;cursor:not-allowed}.Segmented__Item:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.Segmented__Item--active{background:var(--surface);color:var(--text-base);box-shadow:0 1px 2px color-mix(in srgb,var(--text-base) 12%,transparent)}.Segmented__Icon{display:inline-flex;flex-shrink:0}.Segmented__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }] });
715
+ }
716
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SegmentedControlComponent, decorators: [{
717
+ type: Component,
718
+ args: [{ selector: 'segmented-control', standalone: true, imports: [LucideIconComponent], template: `
719
+ <div
720
+ class="Segmented"
721
+ [class.Segmented--sm]="size() === 'sm'"
722
+ [class.Segmented--md]="size() === 'md'"
723
+ role="tablist"
724
+ [attr.aria-disabled]="disabled() || null"
725
+ >
726
+ @for (opt of options(); track trackOpt($index, opt)) {
727
+ <button
728
+ type="button"
729
+ class="Segmented__Item"
730
+ role="tab"
731
+ [class.Segmented__Item--active]="isSelected(opt.value)"
732
+ [disabled]="disabled() || !!opt.disabled"
733
+ [attr.aria-selected]="isSelected(opt.value)"
734
+ (click)="select(opt.value)"
735
+ >
736
+ @if (opt.icon) {
737
+ <span class="Segmented__Icon">
738
+ <lucide-icon [name]="opt.icon" [size]="size() === 'sm' ? 14 : 16"></lucide-icon>
739
+ </span>
740
+ }
741
+ <span class="Segmented__Label">{{ opt.label }}</span>
742
+ </button>
743
+ }
744
+ </div>
745
+ `, styles: [":host{display:inline-flex;max-width:100%}.Segmented{display:inline-flex;align-items:stretch;gap:0;padding:2px;background:var(--surface-2, var(--surface));border:1px solid var(--border);border-radius:var(--radius-lg, 12px);max-width:100%}.Segmented--sm .Segmented__Item{height:28px;padding:2px 8px;font-size:.75rem}.Segmented--md .Segmented__Item{height:32px;padding:4px 12px;font-size:.8125rem}.Segmented__Item{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:1 1 auto;min-width:0;border:none;border-radius:var(--radius-md, 8px);background:transparent;color:var(--text-muted);font:inherit;font-weight:var(--weight-medium, 500);cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease}.Segmented__Item:hover:not(:disabled):not(.Segmented__Item--active){color:var(--text-base);background:color-mix(in srgb,var(--surface) 60%,transparent)}.Segmented__Item:active:not(:disabled){transform:scale(.98)}.Segmented__Item:disabled{opacity:.45;cursor:not-allowed}.Segmented__Item:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.Segmented__Item--active{background:var(--surface);color:var(--text-base);box-shadow:0 1px 2px color-mix(in srgb,var(--text-base) 12%,transparent)}.Segmented__Icon{display:inline-flex;flex-shrink:0}.Segmented__Label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
746
+ }] });
747
+
748
+ class ProgressBarComponent {
749
+ value = input(0);
750
+ label = input(null);
751
+ indeterminate = input(false, { transform: booleanAttribute });
752
+ clamped = computed(() => {
753
+ const v = this.value();
754
+ if (Number.isNaN(v))
755
+ return 0;
756
+ return Math.max(0, Math.min(100, Math.round(v)));
757
+ });
758
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
759
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ProgressBarComponent, isStandalone: true, selector: "progress-bar", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: "indeterminate", publicName: "indeterminate", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
760
+ <div class="Progress" [class.Progress--indeterminate]="indeterminate()">
761
+ @if (label()) {
762
+ <div class="Progress__Meta">
763
+ <span class="Progress__Label">{{ label() }}</span>
764
+ @if (!indeterminate()) {
765
+ <span class="Progress__Value">{{ clamped() }}%</span>
766
+ }
767
+ </div>
768
+ }
769
+ <div class="Progress__Track" role="progressbar" [attr.aria-valuenow]="indeterminate() ? null : clamped()" aria-valuemin="0" aria-valuemax="100" [attr.aria-label]="label() || 'Progreso'">
770
+ <div class="Progress__Fill" [style.width.%]="indeterminate() ? null : clamped()"></div>
771
+ </div>
772
+ </div>
773
+ `, isInline: true, styles: [":host{display:block;width:100%}.Progress{display:flex;flex-direction:column;gap:4px;width:100%}.Progress__Meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.Progress__Label,.Progress__Value{font-size:.75rem;color:var(--text-muted)}.Progress__Track{position:relative;width:100%;height:4px;overflow:hidden;border-radius:9999px;background:var(--surface-2, var(--border))}.Progress__Fill{height:100%;border-radius:inherit;background:var(--primary);transition:width .2s ease}.Progress--indeterminate .Progress__Fill{width:40%;position:absolute;left:0;animation:ProgressSlide 1.1s ease-in-out infinite}@keyframes ProgressSlide{0%{left:-40%}to{left:100%}}\n"] });
774
+ }
775
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ProgressBarComponent, decorators: [{
776
+ type: Component,
777
+ args: [{ selector: 'progress-bar', standalone: true, template: `
778
+ <div class="Progress" [class.Progress--indeterminate]="indeterminate()">
779
+ @if (label()) {
780
+ <div class="Progress__Meta">
781
+ <span class="Progress__Label">{{ label() }}</span>
782
+ @if (!indeterminate()) {
783
+ <span class="Progress__Value">{{ clamped() }}%</span>
784
+ }
785
+ </div>
786
+ }
787
+ <div class="Progress__Track" role="progressbar" [attr.aria-valuenow]="indeterminate() ? null : clamped()" aria-valuemin="0" aria-valuemax="100" [attr.aria-label]="label() || 'Progreso'">
788
+ <div class="Progress__Fill" [style.width.%]="indeterminate() ? null : clamped()"></div>
789
+ </div>
790
+ </div>
791
+ `, styles: [":host{display:block;width:100%}.Progress{display:flex;flex-direction:column;gap:4px;width:100%}.Progress__Meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.Progress__Label,.Progress__Value{font-size:.75rem;color:var(--text-muted)}.Progress__Track{position:relative;width:100%;height:4px;overflow:hidden;border-radius:9999px;background:var(--surface-2, var(--border))}.Progress__Fill{height:100%;border-radius:inherit;background:var(--primary);transition:width .2s ease}.Progress--indeterminate .Progress__Fill{width:40%;position:absolute;left:0;animation:ProgressSlide 1.1s ease-in-out infinite}@keyframes ProgressSlide{0%{left:-40%}to{left:100%}}\n"] }]
792
+ }] });
793
+
794
+ class BadgeComponent {
795
+ count = input(null);
796
+ max = input(99);
797
+ dot = input(false, { transform: booleanAttribute });
798
+ hideZero = input(true, { transform: booleanAttribute });
799
+ showCount = computed(() => {
800
+ const c = this.count();
801
+ if (c === null || c === undefined)
802
+ return false;
803
+ if (this.hideZero() && c <= 0)
804
+ return false;
805
+ return true;
806
+ });
807
+ display = computed(() => {
808
+ const c = this.count() ?? 0;
809
+ const max = this.max();
810
+ return c > max ? `${max}+` : String(c);
811
+ });
812
+ countLabel = computed(() => `${this.count() ?? 0}`);
813
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: BadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
814
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: BadgeComponent, isStandalone: true, selector: "badge", inputs: { count: { classPropertyName: "count", publicName: "count", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, dot: { classPropertyName: "dot", publicName: "dot", isSignal: true, isRequired: false, transformFunction: null }, hideZero: { classPropertyName: "hideZero", publicName: "hideZero", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
815
+ <span class="BadgeHost">
816
+ <ng-content></ng-content>
817
+ @if (dot()) {
818
+ <span class="Badge Badge--dot" aria-hidden="true"></span>
819
+ } @else if (showCount()) {
820
+ <span class="Badge Badge--count" [attr.aria-label]="countLabel()">{{ display() }}</span>
821
+ }
822
+ </span>
823
+ `, isInline: true, styles: [":host{display:inline-flex}.BadgeHost{position:relative;display:inline-flex;align-items:center;justify-content:center}.Badge{position:absolute;top:0;right:0;transform:translate(40%,-40%);pointer-events:none;box-sizing:border-box}.Badge--dot{width:8px;height:8px;border-radius:9999px;background:var(--error-text, var(--danger, var(--primary)));border:2px solid var(--surface)}.Badge--count{min-width:16px;height:16px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;font-size:.625rem;font-weight:700;line-height:1;color:var(--text-inverted);background:var(--error-text, var(--danger, var(--primary)));border:2px solid var(--surface)}\n"] });
824
+ }
825
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: BadgeComponent, decorators: [{
826
+ type: Component,
827
+ args: [{ selector: 'badge', standalone: true, template: `
828
+ <span class="BadgeHost">
829
+ <ng-content></ng-content>
830
+ @if (dot()) {
831
+ <span class="Badge Badge--dot" aria-hidden="true"></span>
832
+ } @else if (showCount()) {
833
+ <span class="Badge Badge--count" [attr.aria-label]="countLabel()">{{ display() }}</span>
834
+ }
835
+ </span>
836
+ `, styles: [":host{display:inline-flex}.BadgeHost{position:relative;display:inline-flex;align-items:center;justify-content:center}.Badge{position:absolute;top:0;right:0;transform:translate(40%,-40%);pointer-events:none;box-sizing:border-box}.Badge--dot{width:8px;height:8px;border-radius:9999px;background:var(--error-text, var(--danger, var(--primary)));border:2px solid var(--surface)}.Badge--count{min-width:16px;height:16px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;font-size:.625rem;font-weight:700;line-height:1;color:var(--text-inverted);background:var(--error-text, var(--danger, var(--primary)));border:2px solid var(--surface)}\n"] }]
837
+ }] });
838
+
839
+ class DividerComponent {
840
+ vertical = input(false, { transform: booleanAttribute });
841
+ inset = input(false, { transform: booleanAttribute });
842
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
843
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.11", type: DividerComponent, isStandalone: true, selector: "divider", inputs: { vertical: { classPropertyName: "vertical", publicName: "vertical", isSignal: true, isRequired: false, transformFunction: null }, inset: { classPropertyName: "inset", publicName: "inset", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
844
+ <div
845
+ class="Divider"
846
+ [class.Divider--vertical]="vertical()"
847
+ [class.Divider--inset]="inset()"
848
+ role="separator"
849
+ [attr.aria-orientation]="vertical() ? 'vertical' : 'horizontal'"
850
+ ></div>
851
+ `, isInline: true, styles: [":host{display:block}:host:has(.Divider--vertical){display:inline-flex;align-self:stretch;height:auto}.Divider{height:1px;width:100%;background:var(--border);border:none;margin:0}.Divider--inset{margin-left:8px;margin-right:8px;width:calc(100% - 16px)}.Divider--vertical{width:1px;height:100%;min-height:1em;align-self:stretch}.Divider--vertical.Divider--inset{margin:4px 0;height:calc(100% - 8px);width:1px}\n"] });
852
+ }
853
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DividerComponent, decorators: [{
854
+ type: Component,
855
+ args: [{ selector: 'divider', standalone: true, template: `
856
+ <div
857
+ class="Divider"
858
+ [class.Divider--vertical]="vertical()"
859
+ [class.Divider--inset]="inset()"
860
+ role="separator"
861
+ [attr.aria-orientation]="vertical() ? 'vertical' : 'horizontal'"
862
+ ></div>
863
+ `, styles: [":host{display:block}:host:has(.Divider--vertical){display:inline-flex;align-self:stretch;height:auto}.Divider{height:1px;width:100%;background:var(--border);border:none;margin:0}.Divider--inset{margin-left:8px;margin-right:8px;width:calc(100% - 16px)}.Divider--vertical{width:1px;height:100%;min-height:1em;align-self:stretch}.Divider--vertical.Divider--inset{margin:4px 0;height:calc(100% - 8px);width:1px}\n"] }]
864
+ }] });
865
+
866
+ class SpinnerComponent {
867
+ /** Pixel size or CSS length. */
868
+ size = input(20);
869
+ label = input('Cargando');
870
+ sizeCss() {
871
+ const s = this.size();
872
+ if (typeof s === 'number')
873
+ return `${s}px`;
874
+ const trimmed = String(s).trim();
875
+ if (/^\d+(\.\d+)?$/.test(trimmed))
876
+ return `${trimmed}px`;
877
+ return trimmed;
878
+ }
879
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
880
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.11", type: SpinnerComponent, isStandalone: true, selector: "spinner", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
881
+ <span
882
+ class="Spinner"
883
+ [style.--spinner-size]="sizeCss()"
884
+ role="status"
885
+ [attr.aria-label]="label()"
886
+ >
887
+ <span class="Spinner__Ring" aria-hidden="true"></span>
888
+ </span>
889
+ `, isInline: true, styles: [":host{display:inline-flex;align-items:center;justify-content:center}.Spinner{--spinner-size: 20px;display:inline-flex;width:var(--spinner-size);height:var(--spinner-size)}.Spinner__Ring{box-sizing:border-box;width:100%;height:100%;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);animation:SpinnerRotate .75s linear infinite}@keyframes SpinnerRotate{to{transform:rotate(360deg)}}\n"] });
890
+ }
891
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SpinnerComponent, decorators: [{
892
+ type: Component,
893
+ args: [{ selector: 'spinner', standalone: true, template: `
894
+ <span
895
+ class="Spinner"
896
+ [style.--spinner-size]="sizeCss()"
897
+ role="status"
898
+ [attr.aria-label]="label()"
899
+ >
900
+ <span class="Spinner__Ring" aria-hidden="true"></span>
901
+ </span>
902
+ `, styles: [":host{display:inline-flex;align-items:center;justify-content:center}.Spinner{--spinner-size: 20px;display:inline-flex;width:var(--spinner-size);height:var(--spinner-size)}.Spinner__Ring{box-sizing:border-box;width:100%;height:100%;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);animation:SpinnerRotate .75s linear infinite}@keyframes SpinnerRotate{to{transform:rotate(360deg)}}\n"] }]
405
903
  }] });
406
904
 
407
905
  /*
@@ -412,5 +910,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImpo
412
910
  * Generated bundle index. Do not edit.
413
911
  */
414
912
 
415
- export { IconBtnComponent, LucideIconComponent, TextBtnComponent, buildUiClasses, buildUiHostStyle };
913
+ export { BadgeComponent, CapsuleComponent, ChipComponent, DividerComponent, IconBtnComponent, LucideIconComponent, ProgressBarComponent, SegmentedControlComponent, SpinnerComponent, TextBtnComponent, buildUiClasses, buildUiHostStyle, statusClassToTone };
416
914
  //# sourceMappingURL=xosue-utils-actions.mjs.map