@lamenna/lxp-angular 0.3.0 → 0.4.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.
@@ -1355,6 +1355,9 @@ class CardComponent {
1355
1355
  padding = "md";
1356
1356
  elevation = "sm";
1357
1357
  bordered = true;
1358
+ imageSrc;
1359
+ imageAlt = "";
1360
+ imageHeight;
1358
1361
  id;
1359
1362
  className;
1360
1363
  testID;
@@ -1366,16 +1369,36 @@ class CardComponent {
1366
1369
  ? `${c.borderWidth}px solid ${c.borderColor}`
1367
1370
  : "none",
1368
1371
  "border-radius": c.borderRadius,
1369
- padding: cardConfig.paddings[this.padding],
1370
1372
  "box-shadow": cardConfig.elevations[this.elevation],
1373
+ overflow: "hidden",
1374
+ };
1375
+ }
1376
+ get imageStyles() {
1377
+ return {
1378
+ display: "block",
1379
+ width: "100%",
1380
+ height: `${this.imageHeight ?? cardConfig.media.defaultHeight}px`,
1381
+ "object-fit": cardConfig.media.objectFit,
1382
+ "background-color": cardConfig.media.placeholderColor,
1371
1383
  };
1372
1384
  }
1385
+ get contentStyles() {
1386
+ return { padding: cardConfig.paddings[this.padding] };
1387
+ }
1373
1388
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1374
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: CardComponent, isStandalone: true, selector: "lxp-card", inputs: { padding: "padding", elevation: "elevation", bordered: "bordered", id: "id", className: "className", testID: "testID" }, ngImport: i0, template: `
1389
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: CardComponent, isStandalone: true, selector: "lxp-card", inputs: { padding: "padding", elevation: "elevation", bordered: "bordered", imageSrc: "imageSrc", imageAlt: "imageAlt", imageHeight: "imageHeight", id: "id", className: "className", testID: "testID" }, ngImport: i0, template: `
1375
1390
  <div [attr.id]="id" [attr.data-testid]="testID" [ngStyle]="styles">
1376
- <ng-content></ng-content>
1391
+ <img
1392
+ *ngIf="imageSrc"
1393
+ [src]="imageSrc"
1394
+ [attr.alt]="imageAlt"
1395
+ [ngStyle]="imageStyles"
1396
+ />
1397
+ <div [ngStyle]="contentStyles">
1398
+ <ng-content></ng-content>
1399
+ </div>
1377
1400
  </div>
1378
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1401
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1379
1402
  }
1380
1403
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: CardComponent, decorators: [{
1381
1404
  type: Component,
@@ -1385,7 +1408,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
1385
1408
  imports: [CommonModule],
1386
1409
  template: `
1387
1410
  <div [attr.id]="id" [attr.data-testid]="testID" [ngStyle]="styles">
1388
- <ng-content></ng-content>
1411
+ <img
1412
+ *ngIf="imageSrc"
1413
+ [src]="imageSrc"
1414
+ [attr.alt]="imageAlt"
1415
+ [ngStyle]="imageStyles"
1416
+ />
1417
+ <div [ngStyle]="contentStyles">
1418
+ <ng-content></ng-content>
1419
+ </div>
1389
1420
  </div>
1390
1421
  `,
1391
1422
  }]
@@ -1395,6 +1426,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
1395
1426
  type: Input
1396
1427
  }], bordered: [{
1397
1428
  type: Input
1429
+ }], imageSrc: [{
1430
+ type: Input
1431
+ }], imageAlt: [{
1432
+ type: Input
1433
+ }], imageHeight: [{
1434
+ type: Input
1398
1435
  }], id: [{
1399
1436
  type: Input
1400
1437
  }], className: [{
@@ -1 +1 @@
1
- {"version":3,"file":"lamenna-lxp-angular.mjs","sources":["../../src/components/button/button.component.ts","../../src/components/table/table.component.ts","../../src/theme/theme.service.ts","../../src/components/theme-switcher/theme-switcher.component.ts","../../src/components/badge/badge.component.ts","../../src/components/text-field/text-field.component.ts","../../src/components/chip/chip.component.ts","../../src/components/toggle/toggle.component.ts","../../src/components/radio/radio.component.ts","../../src/components/avatar/avatar.component.ts","../../src/components/card/card.component.ts","../../src/components/segmented-control/segmented-control.component.ts","../../src/components/quantity-stepper/quantity-stepper.component.ts","../../src/lamenna-lxp-angular.ts"],"sourcesContent":["import { CommonModule } from \"@angular/common\";\nimport {\n Component,\n Input,\n Output,\n EventEmitter,\n HostBinding,\n} from \"@angular/core\";\nimport {\n AngularButtonProps,\n ButtonVariant,\n ButtonSize,\n buttonConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-button\",\n template: `\n <button\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n [ngClass]=\"buttonClasses\"\n >\n {{ content }}\n </button>\n `,\n standalone: true,\n imports: [CommonModule],\n})\nexport class ButtonComponent implements AngularButtonProps {\n @Input() content?: string;\n @Input() variant: ButtonVariant = \"primary\";\n @Input() size: ButtonSize = \"md\";\n @Input() disabled: boolean = false;\n @Input() className?: string;\n @Input() id?: string;\n @Input() ariaLabel?: string;\n @Input() testID?: string;\n @Input()\n get label(): string | undefined {\n return this.content;\n }\n set label(value: string | undefined) {\n this.content = value;\n }\n\n @Output() onClick = new EventEmitter<MouseEvent>();\n\n @HostBinding(\"style\") get hostStyles() {\n const variantConfig = buttonConfig.variants[this.variant];\n const sizeConfig = buttonConfig.sizes[this.size];\n return {\n ...buttonConfig.common,\n ...variantConfig,\n ...sizeConfig,\n opacity: this.disabled ? \"0.6\" : \"1\",\n pointerEvents: this.disabled ? \"none\" : \"auto\",\n };\n }\n\n get buttonClasses() {\n return {\n [this.className || \"\"]: !!this.className,\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n} from \"@angular/core\";\nimport {\n BaseTableProps,\n TableColumn,\n TableAction,\n TablePageChange,\n TableSearchData,\n TableThemeKey,\n tableConfig,\n tableThemeConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-table\",\n standalone: true,\n imports: [CommonModule, FormsModule],\n template: `\n <div class=\"lxp-table\">\n <div class=\"lxp-table__header\">\n <div class=\"lxp-table__title\">\n <h3 class=\"lxp-table__title-text\">{{ title || defaultTitle }}</h3>\n <span\n *ngIf=\"totalItems > 0\"\n class=\"lxp-table__title-count\"\n >\n ({{ totalItems }})\n </span>\n </div>\n\n <div class=\"lxp-table__controls\" *ngIf=\"showSearch\">\n <input\n type=\"search\"\n class=\"lxp-table__search\"\n [placeholder]=\"searchPlaceholder || 'Search...'\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"onSearchChange($event)\"\n />\n </div>\n </div>\n\n <div class=\"lxp-table__body-wrapper\">\n <table class=\"lxp-table__table\">\n <thead>\n <tr>\n <th\n *ngIf=\"selectable\"\n class=\"lxp-table__cell lxp-table__cell--checkbox\"\n ></th>\n <th\n *ngFor=\"let column of columns\"\n class=\"lxp-table__cell lxp-table__cell--header\"\n [style.text-align]=\"column.align || 'left'\"\n >\n {{ column.label }}\n </th>\n <th\n *ngIf=\"actions?.length\"\n class=\"lxp-table__cell lxp-table__cell--header lxp-table__cell--actions\"\n >\n Actions\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngIf=\"loading\">\n <td\n class=\"lxp-table__cell lxp-table__cell--status\"\n [attr.colspan]=\"columnSpan\"\n >\n {{ loadingMessage }}\n </td>\n </tr>\n\n <tr *ngIf=\"!loading && pagedData.length === 0\">\n <td\n class=\"lxp-table__cell lxp-table__cell--status\"\n [attr.colspan]=\"columnSpan\"\n >\n {{ emptyMessage }}\n </td>\n </tr>\n\n <tr\n *ngFor=\"let row of pagedData; let rowIndex = index\"\n class=\"lxp-table__row\"\n (click)=\"handleRowClick(row, rowIndex)\"\n >\n <td\n *ngIf=\"selectable\"\n class=\"lxp-table__cell lxp-table__cell--checkbox\"\n >\n <input\n type=\"checkbox\"\n [checked]=\"isRowSelected(globalRowIndex(rowIndex))\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleRowSelection(globalRowIndex(rowIndex))\"\n />\n </td>\n\n <td\n *ngFor=\"let column of columns\"\n class=\"lxp-table__cell\"\n [style.text-align]=\"column.align || 'left'\"\n >\n <ng-container [ngTemplateOutlet]=\"cellTemplate\"\n [ngTemplateOutletContext]=\"{ column: column, row: row }\">\n </ng-container>\n </td>\n\n <td\n *ngIf=\"actions?.length\"\n class=\"lxp-table__cell lxp-table__cell--actions\"\n >\n <button\n *ngFor=\"let action of actions\"\n type=\"button\"\n class=\"lxp-table__action\"\n [disabled]=\"isActionDisabled(action, row)\"\n (click)=\"runAction(action, row); $event.stopPropagation()\"\n >\n {{ action.label }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <div\n *ngIf=\"showPagination && totalPages > 1\"\n class=\"lxp-table__footer\"\n >\n <div class=\"lxp-table__footer-info\">\n Page {{ currentPageInternal }} of {{ totalPages }}\n </div>\n <div class=\"lxp-table__footer-controls\">\n <label class=\"lxp-table__page-size\">\n <span>Rows per page</span>\n <select\n [ngModel]=\"pageSizeInternal\"\n (ngModelChange)=\"onPageSizeChangeInternal($event)\"\n >\n <option *ngFor=\"let size of pageSizeOptionsInternal\" [ngValue]=\"size\">\n {{ size }}\n </option>\n </select>\n </label>\n\n <button\n type=\"button\"\n class=\"lxp-table__pager\"\n [disabled]=\"currentPageInternal === 1\"\n (click)=\"onPageChangeInternal(currentPageInternal - 1)\"\n >\n Previous\n </button>\n <button\n type=\"button\"\n class=\"lxp-table__pager\"\n [disabled]=\"currentPageInternal === totalPages\"\n (click)=\"onPageChangeInternal(currentPageInternal + 1)\"\n >\n Next\n </button>\n </div>\n </div>\n\n <ng-template #cellTemplate let-column=\"column\" let-row=\"row\">\n <ng-container *ngIf=\"column.render; else defaultCell\">\n {{ column.render(row[column.key], row) }}\n </ng-container>\n <ng-template #defaultCell>\n <ng-container\n *ngIf=\"isRichCell(row[column.key]); else plainCell\"\n >\n <div class=\"lxp-table__cell-text\">\n <div class=\"lxp-table__cell-line1\">\n {{ row[column.key].line1 || row[column.key].text || row[column.key].name }}\n </div>\n <div\n *ngIf=\"row[column.key].line2\"\n class=\"lxp-table__cell-line2\"\n >\n {{ row[column.key].line2 }}\n </div>\n </div>\n </ng-container>\n <ng-template #plainCell>\n {{ row[column.key] }}\n </ng-template>\n </ng-template>\n </ng-template>\n </div>\n `,\n})\nexport class TableComponent {\n @Input() columns: TableColumn[] = [];\n @Input() data: any[] = [];\n @Input() actions: TableAction[] = [];\n @Input() selectable = false;\n @Input() showPagination = true;\n @Input() showSearch = true;\n @Input() loading = false;\n @Input() theme: TableThemeKey = \"tera\";\n @Input() title?: string;\n @Input() titleLink?: string;\n @Input() serverSide = false;\n @Input() totalCount?: number;\n @Input() currentPage?: number;\n @Input() pageSize?: number;\n @Input() pageSizeOptions?: number[];\n @Input() emptyState?: BaseTableProps[\"emptyState\"];\n @Input() enableRowClick = false;\n @Input() searchPlaceholder?: string;\n\n @Output() onSelectionChange = new EventEmitter<number[]>();\n @Output() onPageChange = new EventEmitter<TablePageChange>();\n @Output() onPageSizeChange = new EventEmitter<TablePageChange>();\n @Output() onSearch = new EventEmitter<TableSearchData>();\n @Output() onRowClick = new EventEmitter<{ row: any; index: number }>();\n\n @HostBinding(\"style.fontFamily\")\n get fontFamily(): string {\n return tableThemeConfig[this.theme].fontFamily;\n }\n\n defaultTitle = tableConfig.defaultTitle;\n loadingMessage = tableConfig.loadingMessage;\n\n searchTerm = \"\";\n selectedRows: number[] = [];\n\n get columnSpan(): number {\n return (\n this.columns.length +\n (this.selectable ? 1 : 0) +\n (this.actions?.length ? 1 : 0)\n );\n }\n\n get totalItems(): number {\n if (this.serverSide) {\n return this.totalCount ?? this.data.length;\n }\n return this.filteredData.length;\n }\n\n get currentPageInternal(): number {\n return this.currentPage ?? this._currentPage;\n }\n\n get pageSizeInternal(): number {\n return this.pageSize ?? this._pageSize;\n }\n\n get pageSizeOptionsInternal(): ReadonlyArray<number> {\n return this.pageSizeOptions ?? tableConfig.defaultPageSizeOptions;\n }\n\n private _currentPage: number = 1;\n private _pageSize: number = tableConfig.defaultPageSize;\n\n get filteredData(): any[] {\n if (!this.showSearch || !this.searchTerm.trim()) {\n return this.data;\n }\n\n const term = this.searchTerm.toLowerCase();\n return this.data.filter((row) =>\n Object.values(row).some((value) =>\n String(\n typeof value === \"object\" && value !== null\n ? (value as any).line1 ?? (value as any).line2 ?? \"\"\n : value ?? \"\",\n )\n .toLowerCase()\n .includes(term),\n ),\n );\n }\n\n get pagedData(): any[] {\n if (!this.showPagination || this.serverSide) {\n return this.filteredData;\n }\n const start = (this.currentPageInternal - 1) * this.pageSizeInternal;\n return this.filteredData.slice(start, start + this.pageSizeInternal);\n }\n\n get totalPages(): number {\n if (!this.showPagination) {\n return 1;\n }\n return Math.max(1, Math.ceil(this.totalItems / this.pageSizeInternal));\n }\n\n isRichCell(value: any): boolean {\n return (\n value &&\n typeof value === \"object\" &&\n (\"line1\" in value || \"line2\" in value || \"text\" in value || \"name\" in value)\n );\n }\n\n isRowSelected(index: number): boolean {\n return this.selectedRows.includes(index);\n }\n\n globalRowIndex(localIndex: number): number {\n if (this.serverSide) {\n return localIndex;\n }\n return (this.currentPageInternal - 1) * this.pageSizeInternal + localIndex;\n }\n\n toggleRowSelection(index: number): void {\n const exists = this.selectedRows.includes(index);\n this.selectedRows = exists\n ? this.selectedRows.filter((i) => i !== index)\n : [...this.selectedRows, index];\n this.onSelectionChange.emit(this.selectedRows);\n }\n\n get emptyMessage(): string {\n const custom = this.emptyState?.message;\n const showDefault = this.emptyState?.showDefault ?? true;\n if (custom) return custom;\n return showDefault ? tableConfig.emptyMessage : \"\";\n }\n\n onSearchChange(term: any): void {\n const value =\n typeof term === \"string\"\n ? term\n : (term?.target as HTMLInputElement | null)?.value ?? \"\";\n this.searchTerm = value;\n this.onSearch.emit({\n page: this.currentPageInternal,\n pageSize: this.pageSizeInternal,\n searchTerm: value,\n filters: {},\n });\n }\n\n onPageChangeInternal(nextPage: number): void {\n if (nextPage < 1 || nextPage > this.totalPages) return;\n if (this.currentPage == null) {\n this._currentPage = nextPage;\n }\n this.onPageChange.emit({\n page: nextPage,\n pageSize: this.pageSizeInternal,\n searchTerm: this.searchTerm,\n filters: {},\n });\n }\n\n onPageSizeChangeInternal(nextSize: any): void {\n const size =\n typeof nextSize === \"number\" ? nextSize : Number(nextSize ?? 0);\n if (this.pageSize == null) {\n this._pageSize = size;\n this._currentPage = 1;\n }\n this.onPageSizeChange.emit({\n page: 1,\n pageSize: size,\n searchTerm: this.searchTerm,\n filters: {},\n });\n }\n\n handleRowClick(row: any, localIndex: number): void {\n if (!this.enableRowClick) return;\n const globalIndex = this.globalRowIndex(localIndex);\n this.onRowClick.emit({ row, index: globalIndex });\n }\n\n isActionDisabled(action: TableAction, row: any): boolean {\n return action.disabled ? action.disabled(row) : false;\n }\n\n runAction(action: TableAction, row: any): void {\n if (this.isActionDisabled(action, row)) return;\n action.action(row);\n }\n}\n\n\n","import { Injectable } from \"@angular/core\";\nimport { BehaviorSubject } from \"rxjs\";\nimport {\n defaultTheme,\n type CompanyTheme,\n} from \"@lamenna/lxp-shared-components\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class ThemeService {\n private readonly themeSubject = new BehaviorSubject<CompanyTheme>(\n defaultTheme,\n );\n\n readonly theme$ = this.themeSubject.asObservable();\n\n get theme(): CompanyTheme {\n return this.themeSubject.value;\n }\n\n setTheme(theme: CompanyTheme): void {\n this.themeSubject.next(theme);\n }\n\n toggleTheme(): void {\n this.themeSubject.next(this.theme === \"tera\" ? \"cynk\" : \"tera\");\n }\n}\n\n\n\n\n\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport { ThemeService } from \"../../theme/theme.service\";\n\n@Component({\n selector: \"lxp-theme-switcher\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n class=\"lxp-theme-switcher\"\n [ngClass]=\"className\"\n (click)=\"toggleTheme()\"\n [title]=\"buttonTitle\"\n >\n <ng-container *ngIf=\"showLabels; else iconOnly\">\n {{ label }}\n </ng-container>\n <ng-template #iconOnly>\n {{ shortLabel }}\n </ng-template>\n </button>\n `,\n})\nexport class ThemeSwitcherComponent {\n @Input() className?: string;\n @Input() showLabels = true;\n\n constructor(private readonly themeService: ThemeService) {}\n\n get label(): string {\n return this.themeService.theme === \"tera\" ? \"Tera theme\" : \"Cynk theme\";\n }\n\n get shortLabel(): string {\n return this.themeService.theme === \"tera\" ? \"T\" : \"C\";\n }\n\n get buttonTitle(): string {\n const next = this.themeService.theme === \"tera\" ? \"Cynk\" : \"Tera\";\n return `Switch to ${next} theme`;\n }\n\n toggleTheme(): void {\n this.themeService.toggleTheme();\n }\n}\n\n\n\n\n\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport {\n AngularBadgeProps,\n BadgeVariant,\n badgeConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-badge\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <span\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [ngStyle]=\"containerStyles\"\n >\n <span *ngIf=\"dot\" [ngStyle]=\"dotStyles\"></span>\n {{ text }}\n </span>\n `,\n})\nexport class BadgeComponent implements AngularBadgeProps {\n @Input() content?: string;\n @Input() label?: string;\n @Input() variant: BadgeVariant = \"neutral\";\n @Input() dot = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n\n get text(): string | undefined {\n return this.content ?? this.label;\n }\n private get v() {\n return badgeConfig.variants[this.variant];\n }\n get containerStyles() {\n const c = badgeConfig.common;\n return {\n display: \"inline-flex\",\n \"align-items\": \"center\",\n gap: `${c.gap}px`,\n \"background-color\": this.v.backgroundColor,\n color: this.v.color,\n \"border-radius\": c.borderRadius,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n padding: `${c.paddingVertical} ${c.paddingHorizontal}`,\n \"line-height\": \"1\",\n };\n }\n get dotStyles() {\n const c = badgeConfig.common;\n return {\n width: `${c.dotSize}px`,\n height: `${c.dotSize}px`,\n \"border-radius\": \"50%\",\n \"background-color\": this.v.color,\n display: \"inline-block\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularTextFieldProps,\n TextFieldState,\n textFieldConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-text-field\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div [ngStyle]=\"wrapperStyles\">\n <label *ngIf=\"label\" [attr.for]=\"id\" [ngStyle]=\"labelStyles\">{{\n label\n }}</label>\n <input\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [type]=\"type\"\n [value]=\"value || ''\"\n [attr.placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onInput($event)\"\n (focus)=\"focused = true\"\n (blur)=\"focused = false\"\n [ngStyle]=\"inputStyles\"\n />\n <span *ngIf=\"error || helperText\" [ngStyle]=\"helperStyles\">{{\n error || helperText\n }}</span>\n </div>\n `,\n})\nexport class TextFieldComponent implements AngularTextFieldProps {\n @Input() label?: string;\n @Input() value?: string;\n @Input() placeholder?: string;\n @Input() helperText?: string;\n @Input() error?: string;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Input() type = \"text\";\n @Output() valueChange = new EventEmitter<string>();\n\n focused = false;\n\n onInput(e: Event) {\n const val = (e.target as HTMLInputElement).value;\n this.value = val;\n this.valueChange.emit(val);\n }\n get state(): TextFieldState {\n return this.disabled\n ? \"disabled\"\n : this.error\n ? \"error\"\n : this.focused\n ? \"focused\"\n : \"default\";\n }\n private get s() {\n return textFieldConfig.states[this.state];\n }\n private get c() {\n return textFieldConfig.common;\n }\n get wrapperStyles() {\n return { display: \"flex\", \"flex-direction\": \"column\", gap: this.c.gap };\n }\n get labelStyles() {\n return {\n \"font-size\": \"13px\",\n \"font-weight\": \"500\",\n color: this.c.labelColor,\n };\n }\n get inputStyles() {\n const s = this.s;\n const c = this.c;\n return {\n \"box-sizing\": \"border-box\",\n width: \"100%\",\n border: `${s.borderWidth}px solid ${s.borderColor}`,\n \"background-color\": s.backgroundColor,\n \"border-radius\": c.borderRadius,\n padding: `${c.paddingVertical} ${c.paddingHorizontal}`,\n \"font-size\": c.fontSize,\n color: c.textColor,\n outline: \"none\",\n };\n }\n get helperStyles() {\n return {\n \"font-size\": \"12px\",\n color: this.error ? this.c.errorColor : this.c.helperColor,\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport { AngularChipProps, chipConfig } from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-chip\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n [ngStyle]=\"styles\"\n >\n {{ text }}\n </button>\n `,\n})\nexport class ChipComponent implements AngularChipProps {\n @Input() content?: string;\n @Input() label?: string;\n @Input() selected = false;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() onClick = new EventEmitter<MouseEvent>();\n\n get text(): string | undefined {\n return this.content ?? this.label;\n }\n private get st() {\n return this.selected ? chipConfig.states.active : chipConfig.states.default;\n }\n get styles() {\n const c = chipConfig.common;\n const st = this.st;\n return {\n \"background-color\": st.backgroundColor,\n color: st.color,\n border: st.borderWidth\n ? `${st.borderWidth}px solid ${st.borderColor}`\n : \"none\",\n \"border-radius\": c.borderRadius,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n padding: `${c.paddingVertical} ${c.paddingHorizontal}`,\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n opacity: this.disabled ? \"0.6\" : \"1\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularToggleProps,\n toggleConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-toggle\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n role=\"switch\"\n [attr.aria-checked]=\"checked\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n [ngStyle]=\"trackStyles\"\n >\n <span [ngStyle]=\"knobStyles\"></span>\n </button>\n `,\n})\nexport class ToggleComponent implements AngularToggleProps {\n @Input() checked = false;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() ariaLabel?: string;\n @Input() testID?: string;\n @Output() checkedChange = new EventEmitter<boolean>();\n\n toggle() {\n this.checked = !this.checked;\n this.checkedChange.emit(this.checked);\n }\n get trackStyles() {\n const t = toggleConfig.track;\n return {\n width: `${t.width}px`,\n height: `${t.height}px`,\n \"border-radius\": t.borderRadius,\n \"background-color\": this.checked ? t.onColor : t.offColor,\n border: \"none\",\n padding: `${t.padding}px`,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": this.checked ? \"flex-end\" : \"flex-start\",\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n opacity: this.disabled ? `${toggleConfig.common.disabledOpacity}` : \"1\",\n transition: \"background-color 0.2s\",\n };\n }\n get knobStyles() {\n const k = toggleConfig.knob;\n return {\n width: `${k.size}px`,\n height: `${k.size}px`,\n \"border-radius\": k.borderRadius,\n \"background-color\": k.color,\n \"box-shadow\": \"0 1px 2px rgba(0,0,0,0.2)\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport { AngularRadioProps, radioConfig } from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-radio\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n role=\"radio\"\n [attr.aria-checked]=\"checked\"\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [disabled]=\"disabled\"\n (click)=\"onSelect.emit(value)\"\n [ngStyle]=\"rootStyles\"\n >\n <span [ngStyle]=\"circleStyles\">\n <span *ngIf=\"checked\" [ngStyle]=\"dotStyles\"></span>\n </span>\n <span *ngIf=\"label\" [ngStyle]=\"labelStyles\">{{ label }}</span>\n </button>\n `,\n})\nexport class RadioComponent implements AngularRadioProps {\n @Input() checked = false;\n @Input() disabled = false;\n @Input() label?: string;\n @Input() value?: string;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() onSelect = new EventEmitter<string | undefined>();\n\n private get st() {\n return this.checked\n ? radioConfig.states.selected\n : radioConfig.states.unselected;\n }\n private get c() {\n return radioConfig.common;\n }\n get rootStyles() {\n return {\n display: \"inline-flex\",\n \"align-items\": \"center\",\n gap: `${this.c.gap}`,\n background: \"none\",\n border: \"none\",\n padding: \"0\",\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n opacity: this.disabled ? `${this.c.disabledOpacity}` : \"1\",\n };\n }\n get circleStyles() {\n const c = this.c;\n return {\n width: `${c.size}px`,\n height: `${c.size}px`,\n \"border-radius\": \"50%\",\n border: `${c.borderWidth}px solid ${this.st.borderColor}`,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": \"center\",\n \"box-sizing\": \"border-box\",\n };\n }\n get dotStyles() {\n const c = this.c;\n return {\n width: `${c.dotSize}px`,\n height: `${c.dotSize}px`,\n \"border-radius\": \"50%\",\n \"background-color\": this.st.dotColor,\n };\n }\n get labelStyles() {\n return { \"font-size\": this.c.fontSize, color: this.c.labelColor };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport {\n AngularAvatarProps,\n AvatarSize,\n avatarConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-avatar\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <span [attr.id]=\"id\" [attr.data-testid]=\"testID\" [ngStyle]=\"rootStyles\">\n <img\n *ngIf=\"src; else initialsTpl\"\n [src]=\"src\"\n [attr.alt]=\"initials || ''\"\n [ngStyle]=\"imgStyles\"\n />\n <ng-template #initialsTpl>{{ initials }}</ng-template>\n </span>\n `,\n})\nexport class AvatarComponent implements AngularAvatarProps {\n @Input() initials?: string;\n @Input() src?: string;\n @Input() size: AvatarSize = \"md\";\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n\n private get s() {\n return avatarConfig.sizes[this.size];\n }\n get rootStyles() {\n const c = avatarConfig.common;\n const s = this.s;\n return {\n width: `${s.size}px`,\n height: `${s.size}px`,\n \"border-radius\": c.borderRadius,\n \"background-color\": c.backgroundColor,\n color: c.color,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": \"center\",\n \"font-size\": s.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n overflow: \"hidden\",\n };\n }\n get imgStyles() {\n return { width: \"100%\", height: \"100%\", \"object-fit\": \"cover\" };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport {\n AngularCardProps,\n CardPadding,\n CardElevation,\n cardConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-card\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div [attr.id]=\"id\" [attr.data-testid]=\"testID\" [ngStyle]=\"styles\">\n <ng-content></ng-content>\n </div>\n `,\n})\nexport class CardComponent implements AngularCardProps {\n @Input() padding: CardPadding = \"md\";\n @Input() elevation: CardElevation = \"sm\";\n @Input() bordered = true;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n\n get styles() {\n const c = cardConfig.common;\n return {\n \"background-color\": c.backgroundColor,\n border: this.bordered\n ? `${c.borderWidth}px solid ${c.borderColor}`\n : \"none\",\n \"border-radius\": c.borderRadius,\n padding: cardConfig.paddings[this.padding],\n \"box-shadow\": cardConfig.elevations[this.elevation],\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularSegmentedControlProps,\n SegmentOption,\n segmentedControlConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-segmented-control\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n role=\"tablist\"\n [ngStyle]=\"containerStyles\"\n >\n <button\n *ngFor=\"let o of normalized\"\n type=\"button\"\n role=\"tab\"\n [attr.aria-selected]=\"o.value === value\"\n [disabled]=\"disabled\"\n (click)=\"valueChange.emit(o.value)\"\n [ngStyle]=\"segmentStyles(o.value === value)\"\n >\n {{ o.label }}\n </button>\n </div>\n `,\n})\nexport class SegmentedControlComponent implements AngularSegmentedControlProps {\n @Input() options: Array<string | SegmentOption> = [];\n @Input() value?: string;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() valueChange = new EventEmitter<string>();\n\n get normalized(): SegmentOption[] {\n return (this.options || []).map((o) =>\n typeof o === \"string\" ? { label: o, value: o } : o,\n );\n }\n private get c() {\n return segmentedControlConfig.common;\n }\n get containerStyles() {\n const c = this.c;\n return {\n display: \"inline-flex\",\n \"background-color\": c.backgroundColor,\n \"border-radius\": c.borderRadius,\n padding: `${c.padding}px`,\n };\n }\n segmentStyles(active: boolean) {\n const c = this.c;\n return {\n border: \"none\",\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n \"background-color\": active ? c.activeBackground : \"transparent\",\n color: active ? c.activeColor : c.inactiveColor,\n \"border-radius\": c.segmentRadius,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n padding: `${c.segmentPaddingVertical} ${c.segmentPaddingHorizontal}`,\n \"box-shadow\": active ? c.activeShadow : \"none\",\n transition: \"all 0.15s\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularQuantityStepperProps,\n quantityStepperConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-quantity-stepper\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div [attr.id]=\"id\" [attr.data-testid]=\"testID\" [ngStyle]=\"containerStyles\">\n <button\n type=\"button\"\n [disabled]=\"disabled || value <= min\"\n (click)=\"set(value - step)\"\n [ngStyle]=\"buttonStyles\"\n >\n −\n </button>\n <span [ngStyle]=\"valueStyles\">{{ value }}</span>\n <button\n type=\"button\"\n [disabled]=\"disabled || value >= max\"\n (click)=\"set(value + step)\"\n [ngStyle]=\"buttonStyles\"\n >\n +\n </button>\n </div>\n `,\n})\nexport class QuantityStepperComponent implements AngularQuantityStepperProps {\n @Input() value = 0;\n @Input() min = 0;\n @Input() max = Number.POSITIVE_INFINITY;\n @Input() step = 1;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() valueChange = new EventEmitter<number>();\n\n set(v: number) {\n const nv = Math.max(this.min, Math.min(this.max, v));\n this.value = nv;\n this.valueChange.emit(nv);\n }\n private get c() {\n return quantityStepperConfig.common;\n }\n get containerStyles() {\n const c = this.c;\n return {\n display: \"inline-flex\",\n \"align-items\": \"stretch\",\n border: `1px solid ${c.borderColor}`,\n \"border-radius\": c.borderRadius,\n overflow: \"hidden\",\n opacity: this.disabled ? `${c.disabledOpacity}` : \"1\",\n };\n }\n get buttonStyles() {\n const c = this.c;\n return {\n width: `${c.buttonWidth}px`,\n height: `${c.height}px`,\n border: \"none\",\n \"background-color\": c.buttonBackground,\n color: c.buttonColor,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n cursor: \"pointer\",\n };\n }\n get valueStyles() {\n const c = this.c;\n return {\n \"min-width\": `${c.valueWidth}px`,\n height: `${c.height}px`,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": \"center\",\n \"background-color\": c.valueBackground,\n color: c.valueColor,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ThemeService","i2"],"mappings":";;;;;;;;;MAgCa,eAAe,CAAA;AACjB,IAAA,OAAO;IACP,OAAO,GAAkB,SAAS;IAClC,IAAI,GAAe,IAAI;IACvB,QAAQ,GAAY,KAAK;AACzB,IAAA,SAAS;AACT,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AACf,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,OAAO;IACrB;IACA,IAAI,KAAK,CAAC,KAAyB,EAAA;AACjC,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;IACtB;AAEU,IAAA,OAAO,GAAG,IAAI,YAAY,EAAc;AAElD,IAAA,IAA0B,UAAU,GAAA;QAClC,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;QACzD,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAChD,OAAO;YACL,GAAG,YAAY,CAAC,MAAM;AACtB,YAAA,GAAG,aAAa;AAChB,YAAA,GAAG,UAAU;YACb,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,GAAG,GAAG;YACpC,aAAa,EAAE,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,MAAM;SAC/C;IACH;AAEA,IAAA,IAAI,aAAa,GAAA;QACf,OAAO;YACL,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SACzC;IACH;uGAnCW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAfhB;;;;;;;;;;;AAWT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAES,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAEX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAjB3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE;;;;;;;;;;;AAWT,EAAA,CAAA;AACD,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACxB,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBAQA;;sBAEA,WAAW;uBAAC,OAAO;;;MCwJT,cAAc,CAAA;IAChB,OAAO,GAAkB,EAAE;IAC3B,IAAI,GAAU,EAAE;IAChB,OAAO,GAAkB,EAAE;IAC3B,UAAU,GAAG,KAAK;IAClB,cAAc,GAAG,IAAI;IACrB,UAAU,GAAG,IAAI;IACjB,OAAO,GAAG,KAAK;IACf,KAAK,GAAkB,MAAM;AAC7B,IAAA,KAAK;AACL,IAAA,SAAS;IACT,UAAU,GAAG,KAAK;AAClB,IAAA,UAAU;AACV,IAAA,WAAW;AACX,IAAA,QAAQ;AACR,IAAA,eAAe;AACf,IAAA,UAAU;IACV,cAAc,GAAG,KAAK;AACtB,IAAA,iBAAiB;AAEhB,IAAA,iBAAiB,GAAG,IAAI,YAAY,EAAY;AAChD,IAAA,YAAY,GAAG,IAAI,YAAY,EAAmB;AAClD,IAAA,gBAAgB,GAAG,IAAI,YAAY,EAAmB;AACtD,IAAA,QAAQ,GAAG,IAAI,YAAY,EAAmB;AAC9C,IAAA,UAAU,GAAG,IAAI,YAAY,EAA+B;AAEtE,IAAA,IACI,UAAU,GAAA;QACZ,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU;IAChD;AAEA,IAAA,YAAY,GAAG,WAAW,CAAC,YAAY;AACvC,IAAA,cAAc,GAAG,WAAW,CAAC,cAAc;IAE3C,UAAU,GAAG,EAAE;IACf,YAAY,GAAa,EAAE;AAE3B,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,QACE,IAAI,CAAC,OAAO,CAAC,MAAM;aAClB,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;AACzB,aAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC;AAEA,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM;QAC5C;AACA,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM;IACjC;AAEA,IAAA,IAAI,mBAAmB,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY;IAC9C;AAEA,IAAA,IAAI,gBAAgB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS;IACxC;AAEA,IAAA,IAAI,uBAAuB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,eAAe,IAAI,WAAW,CAAC,sBAAsB;IACnE;IAEQ,YAAY,GAAW,CAAC;AACxB,IAAA,SAAS,GAAW,WAAW,CAAC,eAAe;AAEvD,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE;YAC/C,OAAO,IAAI,CAAC,IAAI;QAClB;QAEA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;AAC1C,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAC1B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAC5B,MAAM,CACJ,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK;cAClC,KAAa,CAAC,KAAK,IAAK,KAAa,CAAC,KAAK,IAAI;AAClD,cAAE,KAAK,IAAI,EAAE;AAEd,aAAA,WAAW;AACX,aAAA,QAAQ,CAAC,IAAI,CAAC,CAClB,CACF;IACH;AAEA,IAAA,IAAI,SAAS,GAAA;QACX,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,EAAE;YAC3C,OAAO,IAAI,CAAC,YAAY;QAC1B;AACA,QAAA,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB;AACpE,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACtE;AAEA,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;AACxB,YAAA,OAAO,CAAC;QACV;AACA,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxE;AAEA,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,QACE,KAAK;YACL,OAAO,KAAK,KAAK,QAAQ;AACzB,aAAC,OAAO,IAAI,KAAK,IAAI,OAAO,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,CAAC;IAEhF;AAEA,IAAA,aAAa,CAAC,KAAa,EAAA;QACzB,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC1C;AAEA,IAAA,cAAc,CAAC,UAAkB,EAAA;AAC/B,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,OAAO,UAAU;QACnB;AACA,QAAA,OAAO,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,GAAG,UAAU;IAC5E;AAEA,IAAA,kBAAkB,CAAC,KAAa,EAAA;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QAChD,IAAI,CAAC,YAAY,GAAG;AAClB,cAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK;cAC3C,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;IAChD;AAEA,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,IAAI,IAAI;AACxD,QAAA,IAAI,MAAM;AAAE,YAAA,OAAO,MAAM;QACzB,OAAO,WAAW,GAAG,WAAW,CAAC,YAAY,GAAG,EAAE;IACpD;AAEA,IAAA,cAAc,CAAC,IAAS,EAAA;AACtB,QAAA,MAAM,KAAK,GACT,OAAO,IAAI,KAAK;AACd,cAAE;cACC,IAAI,EAAE,MAAkC,EAAE,KAAK,IAAI,EAAE;AAC5D,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,IAAI,CAAC,mBAAmB;YAC9B,QAAQ,EAAE,IAAI,CAAC,gBAAgB;AAC/B,YAAA,UAAU,EAAE,KAAK;AACjB,YAAA,OAAO,EAAE,EAAE;AACZ,SAAA,CAAC;IACJ;AAEA,IAAA,oBAAoB,CAAC,QAAgB,EAAA;QACnC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,IAAI,CAAC,UAAU;YAAE;AAChD,QAAA,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;AAC5B,YAAA,IAAI,CAAC,YAAY,GAAG,QAAQ;QAC9B;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACrB,YAAA,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI,CAAC,gBAAgB;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,YAAA,OAAO,EAAE,EAAE;AACZ,SAAA,CAAC;IACJ;AAEA,IAAA,wBAAwB,CAAC,QAAa,EAAA;AACpC,QAAA,MAAM,IAAI,GACR,OAAO,QAAQ,KAAK,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;AACjE,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE;AACzB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,YAAA,IAAI,CAAC,YAAY,GAAG,CAAC;QACvB;AACA,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzB,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,YAAA,OAAO,EAAE,EAAE;AACZ,SAAA,CAAC;IACJ;IAEA,cAAc,CAAC,GAAQ,EAAE,UAAkB,EAAA;QACzC,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;AACnD,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IACnD;IAEA,gBAAgB,CAAC,MAAmB,EAAE,GAAQ,EAAA;AAC5C,QAAA,OAAO,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK;IACvD;IAEA,SAAS,CAAC,MAAmB,EAAE,GAAQ,EAAA;AACrC,QAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC;YAAE;AACxC,QAAA,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;IACpB;uGA9LW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAnLf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiLT,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAlLS,YAAY,saAAE,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,6GAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAoLxB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAvL1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;AACpC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiLT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBAEA;;sBACA;;sBACA;;sBACA;;sBACA;;sBAEA,WAAW;uBAAC,kBAAkB;;;MC3NpB,YAAY,CAAA;AACN,IAAA,YAAY,GAAG,IAAI,eAAe,CACjD,YAAY,CACb;AAEQ,IAAA,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;AAElD,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK;IAChC;AAEA,IAAA,QAAQ,CAAC,KAAmB,EAAA;AAC1B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;IAC/B;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjE;uGAjBW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFX,MAAM,EAAA,CAAA;;2FAEP,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCgBY,sBAAsB,CAAA;AAIJ,IAAA,YAAA;AAHpB,IAAA,SAAS;IACT,UAAU,GAAG,IAAI;AAE1B,IAAA,WAAA,CAA6B,YAA0B,EAAA;QAA1B,IAAA,CAAA,YAAY,GAAZ,YAAY;IAAiB;AAE1D,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,MAAM,GAAG,YAAY,GAAG,YAAY;IACzE;AAEA,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,MAAM,GAAG,GAAG,GAAG,GAAG;IACvD;AAEA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM;QACjE,OAAO,CAAA,UAAA,EAAa,IAAI,CAAA,MAAA,CAAQ;IAClC;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE;IACjC;uGArBW,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAjBvB;;;;;;;;;;;;;;;AAeT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAhBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAkBX,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBArBlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;AAeT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;;MCJU,cAAc,CAAA;AAChB,IAAA,OAAO;AACP,IAAA,KAAK;IACL,OAAO,GAAiB,SAAS;IACjC,GAAG,GAAG,KAAK;AACX,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AAEf,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK;IACnC;AACA,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3C;AACA,IAAA,IAAI,eAAe,GAAA;AACjB,QAAA,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM;QAC5B,OAAO;AACL,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,GAAG,EAAE,CAAA,EAAG,CAAC,CAAC,GAAG,CAAA,EAAA,CAAI;AACjB,YAAA,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,eAAe;AAC1C,YAAA,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK;YACnB,eAAe,EAAE,CAAC,CAAC,YAAY;YAC/B,WAAW,EAAE,CAAC,CAAC,QAAQ;AACvB,YAAA,aAAa,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,CAAE;YAChC,OAAO,EAAE,GAAG,CAAC,CAAC,eAAe,CAAA,CAAA,EAAI,CAAC,CAAC,iBAAiB,CAAA,CAAE;AACtD,YAAA,aAAa,EAAE,GAAG;SACnB;IACH;AACA,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM;QAC5B,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,OAAO,CAAA,EAAA,CAAI;AACvB,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,OAAO,CAAA,EAAA,CAAI;AACxB,YAAA,eAAe,EAAE,KAAK;AACtB,YAAA,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK;AAChC,YAAA,OAAO,EAAE,cAAc;SACxB;IACH;uGAvCW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,GAAA,EAAA,KAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAXf;;;;;;;;;AAST,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAVS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAYX,cAAc,EAAA,UAAA,EAAA,CAAA;kBAf1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;AAST,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCKU,kBAAkB,CAAA;AACpB,IAAA,KAAK;AACL,IAAA,KAAK;AACL,IAAA,WAAW;AACX,IAAA,UAAU;AACV,IAAA,KAAK;IACL,QAAQ,GAAG,KAAK;AAChB,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;IACN,IAAI,GAAG,MAAM;AACZ,IAAA,WAAW,GAAG,IAAI,YAAY,EAAU;IAElD,OAAO,GAAG,KAAK;AAEf,IAAA,OAAO,CAAC,CAAQ,EAAA;AACd,QAAA,MAAM,GAAG,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK;AAChD,QAAA,IAAI,CAAC,KAAK,GAAG,GAAG;AAChB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;IAC5B;AACA,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC;AACV,cAAE;cACA,IAAI,CAAC;AACL,kBAAE;kBACA,IAAI,CAAC;AACL,sBAAE;sBACA,SAAS;IACnB;AACA,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;IAC3C;AACA,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,eAAe,CAAC,MAAM;IAC/B;AACA,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE;IACzE;AACA,IAAA,IAAI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,MAAM;AACnB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU;SACzB;IACH;AACA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;AAChB,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,YAAY,EAAE,YAAY;AAC1B,YAAA,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,CAAA,SAAA,EAAY,CAAC,CAAC,WAAW,CAAA,CAAE;YACnD,kBAAkB,EAAE,CAAC,CAAC,eAAe;YACrC,eAAe,EAAE,CAAC,CAAC,YAAY;YAC/B,OAAO,EAAE,GAAG,CAAC,CAAC,eAAe,CAAA,CAAA,EAAI,CAAC,CAAC,iBAAiB,CAAA,CAAE;YACtD,WAAW,EAAE,CAAC,CAAC,QAAQ;YACvB,KAAK,EAAE,CAAC,CAAC,SAAS;AAClB,YAAA,OAAO,EAAE,MAAM;SAChB;IACH;AACA,IAAA,IAAI,YAAY,GAAA;QACd,OAAO;AACL,YAAA,WAAW,EAAE,MAAM;AACnB,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;SAC3D;IACH;uGAjEW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAvBnB;;;;;;;;;;;;;;;;;;;;;AAqBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAtBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAwBX,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBA3B9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;AAqBT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCzBU,aAAa,CAAA;AACf,IAAA,OAAO;AACP,IAAA,KAAK;IACL,QAAQ,GAAG,KAAK;IAChB,QAAQ,GAAG,KAAK;AAChB,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AACL,IAAA,OAAO,GAAG,IAAI,YAAY,EAAc;AAElD,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK;IACnC;AACA,IAAA,IAAY,EAAE,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO;IAC7E;AACA,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM;AAC3B,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE;QAClB,OAAO;YACL,kBAAkB,EAAE,EAAE,CAAC,eAAe;YACtC,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,MAAM,EAAE,EAAE,CAAC;kBACP,GAAG,EAAE,CAAC,WAAW,CAAA,SAAA,EAAY,EAAE,CAAC,WAAW,CAAA;AAC7C,kBAAE,MAAM;YACV,eAAe,EAAE,CAAC,CAAC,YAAY;YAC/B,WAAW,EAAE,CAAC,CAAC,QAAQ;AACvB,YAAA,aAAa,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,CAAE;YAChC,OAAO,EAAE,GAAG,CAAC,CAAC,eAAe,CAAA,CAAA,EAAI,CAAC,CAAC,iBAAiB,CAAA,CAAE;YACtD,MAAM,EAAE,IAAI,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS;YACjD,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,GAAG,GAAG;SACrC;IACH;uGAhCW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAbd;;;;;;;;;;;AAWT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAZS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAcX,aAAa,EAAA,UAAA,EAAA,CAAA;kBAjBzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;AAWT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCFU,eAAe,CAAA;IACjB,OAAO,GAAG,KAAK;IACf,QAAQ,GAAG,KAAK;AAChB,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,SAAS;AACT,IAAA,MAAM;AACL,IAAA,aAAa,GAAG,IAAI,YAAY,EAAW;IAErD,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO;QAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IACvC;AACA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK;QAC5B,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,KAAK,CAAA,EAAA,CAAI;AACrB,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,MAAM,CAAA,EAAA,CAAI;YACvB,eAAe,EAAE,CAAC,CAAC,YAAY;AAC/B,YAAA,kBAAkB,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ;AACzD,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE,CAAA,EAAG,CAAC,CAAC,OAAO,CAAA,EAAA,CAAI;AACzB,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,QAAQ;YACvB,iBAAiB,EAAE,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,YAAY;YAC3D,MAAM,EAAE,IAAI,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS;AACjD,YAAA,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAA,EAAG,YAAY,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,GAAG;AACvE,YAAA,UAAU,EAAE,uBAAuB;SACpC;IACH;AACA,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI;QAC3B,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,EAAA,CAAI;AACpB,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,EAAA,CAAI;YACrB,eAAe,EAAE,CAAC,CAAC,YAAY;YAC/B,kBAAkB,EAAE,CAAC,CAAC,KAAK;AAC3B,YAAA,YAAY,EAAE,2BAA2B;SAC1C;IACH;uGAvCW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAhBhB;;;;;;;;;;;;;;AAcT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAfS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAiBX,eAAe,EAAA,UAAA,EAAA,CAAA;kBApB3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;AAcT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCRU,cAAc,CAAA;IAChB,OAAO,GAAG,KAAK;IACf,QAAQ,GAAG,KAAK;AAChB,IAAA,KAAK;AACL,IAAA,KAAK;AACL,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AACL,IAAA,QAAQ,GAAG,IAAI,YAAY,EAAsB;AAE3D,IAAA,IAAY,EAAE,GAAA;QACZ,OAAO,IAAI,CAAC;AACV,cAAE,WAAW,CAAC,MAAM,CAAC;AACrB,cAAE,WAAW,CAAC,MAAM,CAAC,UAAU;IACnC;AACA,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,WAAW,CAAC,MAAM;IAC3B;AACA,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO;AACL,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,GAAG,EAAE,CAAA,EAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA,CAAE;AACpB,YAAA,UAAU,EAAE,MAAM;AAClB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,IAAI,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS;AACjD,YAAA,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAA,EAAG,IAAI,CAAC,CAAC,CAAC,eAAe,EAAE,GAAG,GAAG;SAC3D;IACH;AACA,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,EAAA,CAAI;AACpB,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,EAAA,CAAI;AACrB,YAAA,eAAe,EAAE,KAAK;YACtB,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,WAAW,CAAA,SAAA,EAAY,IAAI,CAAC,EAAE,CAAC,WAAW,CAAA,CAAE;AACzD,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,iBAAiB,EAAE,QAAQ;AAC3B,YAAA,YAAY,EAAE,YAAY;SAC3B;IACH;AACA,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,OAAO,CAAA,EAAA,CAAI;AACvB,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,OAAO,CAAA,EAAA,CAAI;AACxB,YAAA,eAAe,EAAE,KAAK;AACtB,YAAA,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ;SACrC;IACH;AACA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE;IACnE;uGAtDW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAlBf;;;;;;;;;;;;;;;;AAgBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAjBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAmBX,cAAc,EAAA,UAAA,EAAA,CAAA;kBAtB1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;AAgBT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCVU,eAAe,CAAA;AACjB,IAAA,QAAQ;AACR,IAAA,GAAG;IACH,IAAI,GAAe,IAAI;AACvB,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AAEf,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IACtC;AACA,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM;AAC7B,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,EAAA,CAAI;AACpB,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,EAAA,CAAI;YACrB,eAAe,EAAE,CAAC,CAAC,YAAY;YAC/B,kBAAkB,EAAE,CAAC,CAAC,eAAe;YACrC,KAAK,EAAE,CAAC,CAAC,KAAK;AACd,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,iBAAiB,EAAE,QAAQ;YAC3B,WAAW,EAAE,CAAC,CAAC,QAAQ;AACvB,YAAA,aAAa,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,CAAE;AAChC,YAAA,QAAQ,EAAE,QAAQ;SACnB;IACH;AACA,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE;IACjE;uGA9BW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,GAAA,EAAA,KAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAZhB;;;;;;;;;;AAUT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAXS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAaX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAhB3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;AAUT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCXU,aAAa,CAAA;IACf,OAAO,GAAgB,IAAI;IAC3B,SAAS,GAAkB,IAAI;IAC/B,QAAQ,GAAG,IAAI;AACf,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AAEf,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM;QAC3B,OAAO;YACL,kBAAkB,EAAE,CAAC,CAAC,eAAe;YACrC,MAAM,EAAE,IAAI,CAAC;kBACT,GAAG,CAAC,CAAC,WAAW,CAAA,SAAA,EAAY,CAAC,CAAC,WAAW,CAAA;AAC3C,kBAAE,MAAM;YACV,eAAe,EAAE,CAAC,CAAC,YAAY;YAC/B,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YAC1C,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;SACpD;IACH;uGAnBW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANd;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EALS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAOX,aAAa,EAAA,UAAA,EAAA,CAAA;kBAVzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;AAIT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCQU,yBAAyB,CAAA;IAC3B,OAAO,GAAkC,EAAE;AAC3C,IAAA,KAAK;IACL,QAAQ,GAAG,KAAK;AAChB,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AACL,IAAA,WAAW,GAAG,IAAI,YAAY,EAAU;AAElD,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,KAChC,OAAO,CAAC,KAAK,QAAQ,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CACnD;IACH;AACA,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,sBAAsB,CAAC,MAAM;IACtC;AACA,IAAA,IAAI,eAAe,GAAA;AACjB,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,OAAO,EAAE,aAAa;YACtB,kBAAkB,EAAE,CAAC,CAAC,eAAe;YACrC,eAAe,EAAE,CAAC,CAAC,YAAY;AAC/B,YAAA,OAAO,EAAE,CAAA,EAAG,CAAC,CAAC,OAAO,CAAA,EAAA,CAAI;SAC1B;IACH;AACA,IAAA,aAAa,CAAC,MAAe,EAAA;AAC3B,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,IAAI,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS;YACjD,kBAAkB,EAAE,MAAM,GAAG,CAAC,CAAC,gBAAgB,GAAG,aAAa;AAC/D,YAAA,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,aAAa;YAC/C,eAAe,EAAE,CAAC,CAAC,aAAa;YAChC,WAAW,EAAE,CAAC,CAAC,QAAQ;AACvB,YAAA,aAAa,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,CAAE;YAChC,OAAO,EAAE,GAAG,CAAC,CAAC,sBAAsB,CAAA,CAAA,EAAI,CAAC,CAAC,wBAAwB,CAAA,CAAE;YACpE,YAAY,EAAE,MAAM,GAAG,CAAC,CAAC,YAAY,GAAG,MAAM;AAC9C,YAAA,UAAU,EAAE,WAAW;SACxB;IACH;uGAxCW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAzB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EArB1B;;;;;;;;;;;;;;;;;;;AAmBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EApBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAsBX,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAzBrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;AAmBT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MCPU,wBAAwB,CAAA;IAC1B,KAAK,GAAG,CAAC;IACT,GAAG,GAAG,CAAC;AACP,IAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB;IAC9B,IAAI,GAAG,CAAC;IACR,QAAQ,GAAG,KAAK;AAChB,IAAA,EAAE;AACF,IAAA,SAAS;AACT,IAAA,MAAM;AACL,IAAA,WAAW,GAAG,IAAI,YAAY,EAAU;AAElD,IAAA,GAAG,CAAC,CAAS,EAAA;QACX,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACpD,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;IAC3B;AACA,IAAA,IAAY,CAAC,GAAA;QACX,OAAO,qBAAqB,CAAC,MAAM;IACrC;AACA,IAAA,IAAI,eAAe,GAAA;AACjB,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,SAAS;AACxB,YAAA,MAAM,EAAE,CAAA,UAAA,EAAa,CAAC,CAAC,WAAW,CAAA,CAAE;YACpC,eAAe,EAAE,CAAC,CAAC,YAAY;AAC/B,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAA,EAAG,CAAC,CAAC,eAAe,CAAA,CAAE,GAAG,GAAG;SACtD;IACH;AACA,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,KAAK,EAAE,CAAA,EAAG,CAAC,CAAC,WAAW,CAAA,EAAA,CAAI;AAC3B,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,MAAM,CAAA,EAAA,CAAI;AACvB,YAAA,MAAM,EAAE,MAAM;YACd,kBAAkB,EAAE,CAAC,CAAC,gBAAgB;YACtC,KAAK,EAAE,CAAC,CAAC,WAAW;YACpB,WAAW,EAAE,CAAC,CAAC,QAAQ;AACvB,YAAA,aAAa,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,CAAE;AAChC,YAAA,MAAM,EAAE,SAAS;SAClB;IACH;AACA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,OAAO;AACL,YAAA,WAAW,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,EAAA,CAAI;AAChC,YAAA,MAAM,EAAE,CAAA,EAAG,CAAC,CAAC,MAAM,CAAA,EAAA,CAAI;AACvB,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,iBAAiB,EAAE,QAAQ;YAC3B,kBAAkB,EAAE,CAAC,CAAC,eAAe;YACrC,KAAK,EAAE,CAAC,CAAC,UAAU;YACnB,WAAW,EAAE,CAAC,CAAC,QAAQ;AACvB,YAAA,aAAa,EAAE,CAAA,EAAG,CAAC,CAAC,UAAU,CAAA,CAAE;SACjC;IACH;uGAxDW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAtBzB;;;;;;;;;;;;;;;;;;;;AAoBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EArBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAuBX,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBA1BpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;AAoBT,EAAA,CAAA;AACF,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;AC1CH;;AAEG;;;;"}
1
+ {"version":3,"file":"lamenna-lxp-angular.mjs","sources":["../../src/components/button/button.component.ts","../../src/components/table/table.component.ts","../../src/theme/theme.service.ts","../../src/components/theme-switcher/theme-switcher.component.ts","../../src/components/badge/badge.component.ts","../../src/components/text-field/text-field.component.ts","../../src/components/chip/chip.component.ts","../../src/components/toggle/toggle.component.ts","../../src/components/radio/radio.component.ts","../../src/components/avatar/avatar.component.ts","../../src/components/card/card.component.ts","../../src/components/segmented-control/segmented-control.component.ts","../../src/components/quantity-stepper/quantity-stepper.component.ts","../../src/lamenna-lxp-angular.ts"],"sourcesContent":["import { CommonModule } from \"@angular/common\";\nimport {\n Component,\n Input,\n Output,\n EventEmitter,\n HostBinding,\n} from \"@angular/core\";\nimport {\n AngularButtonProps,\n ButtonVariant,\n ButtonSize,\n buttonConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-button\",\n template: `\n <button\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n [ngClass]=\"buttonClasses\"\n >\n {{ content }}\n </button>\n `,\n standalone: true,\n imports: [CommonModule],\n})\nexport class ButtonComponent implements AngularButtonProps {\n @Input() content?: string;\n @Input() variant: ButtonVariant = \"primary\";\n @Input() size: ButtonSize = \"md\";\n @Input() disabled: boolean = false;\n @Input() className?: string;\n @Input() id?: string;\n @Input() ariaLabel?: string;\n @Input() testID?: string;\n @Input()\n get label(): string | undefined {\n return this.content;\n }\n set label(value: string | undefined) {\n this.content = value;\n }\n\n @Output() onClick = new EventEmitter<MouseEvent>();\n\n @HostBinding(\"style\") get hostStyles() {\n const variantConfig = buttonConfig.variants[this.variant];\n const sizeConfig = buttonConfig.sizes[this.size];\n return {\n ...buttonConfig.common,\n ...variantConfig,\n ...sizeConfig,\n opacity: this.disabled ? \"0.6\" : \"1\",\n pointerEvents: this.disabled ? \"none\" : \"auto\",\n };\n }\n\n get buttonClasses() {\n return {\n [this.className || \"\"]: !!this.className,\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n} from \"@angular/core\";\nimport {\n BaseTableProps,\n TableColumn,\n TableAction,\n TablePageChange,\n TableSearchData,\n TableThemeKey,\n tableConfig,\n tableThemeConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-table\",\n standalone: true,\n imports: [CommonModule, FormsModule],\n template: `\n <div class=\"lxp-table\">\n <div class=\"lxp-table__header\">\n <div class=\"lxp-table__title\">\n <h3 class=\"lxp-table__title-text\">{{ title || defaultTitle }}</h3>\n <span\n *ngIf=\"totalItems > 0\"\n class=\"lxp-table__title-count\"\n >\n ({{ totalItems }})\n </span>\n </div>\n\n <div class=\"lxp-table__controls\" *ngIf=\"showSearch\">\n <input\n type=\"search\"\n class=\"lxp-table__search\"\n [placeholder]=\"searchPlaceholder || 'Search...'\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"onSearchChange($event)\"\n />\n </div>\n </div>\n\n <div class=\"lxp-table__body-wrapper\">\n <table class=\"lxp-table__table\">\n <thead>\n <tr>\n <th\n *ngIf=\"selectable\"\n class=\"lxp-table__cell lxp-table__cell--checkbox\"\n ></th>\n <th\n *ngFor=\"let column of columns\"\n class=\"lxp-table__cell lxp-table__cell--header\"\n [style.text-align]=\"column.align || 'left'\"\n >\n {{ column.label }}\n </th>\n <th\n *ngIf=\"actions?.length\"\n class=\"lxp-table__cell lxp-table__cell--header lxp-table__cell--actions\"\n >\n Actions\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngIf=\"loading\">\n <td\n class=\"lxp-table__cell lxp-table__cell--status\"\n [attr.colspan]=\"columnSpan\"\n >\n {{ loadingMessage }}\n </td>\n </tr>\n\n <tr *ngIf=\"!loading && pagedData.length === 0\">\n <td\n class=\"lxp-table__cell lxp-table__cell--status\"\n [attr.colspan]=\"columnSpan\"\n >\n {{ emptyMessage }}\n </td>\n </tr>\n\n <tr\n *ngFor=\"let row of pagedData; let rowIndex = index\"\n class=\"lxp-table__row\"\n (click)=\"handleRowClick(row, rowIndex)\"\n >\n <td\n *ngIf=\"selectable\"\n class=\"lxp-table__cell lxp-table__cell--checkbox\"\n >\n <input\n type=\"checkbox\"\n [checked]=\"isRowSelected(globalRowIndex(rowIndex))\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleRowSelection(globalRowIndex(rowIndex))\"\n />\n </td>\n\n <td\n *ngFor=\"let column of columns\"\n class=\"lxp-table__cell\"\n [style.text-align]=\"column.align || 'left'\"\n >\n <ng-container [ngTemplateOutlet]=\"cellTemplate\"\n [ngTemplateOutletContext]=\"{ column: column, row: row }\">\n </ng-container>\n </td>\n\n <td\n *ngIf=\"actions?.length\"\n class=\"lxp-table__cell lxp-table__cell--actions\"\n >\n <button\n *ngFor=\"let action of actions\"\n type=\"button\"\n class=\"lxp-table__action\"\n [disabled]=\"isActionDisabled(action, row)\"\n (click)=\"runAction(action, row); $event.stopPropagation()\"\n >\n {{ action.label }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <div\n *ngIf=\"showPagination && totalPages > 1\"\n class=\"lxp-table__footer\"\n >\n <div class=\"lxp-table__footer-info\">\n Page {{ currentPageInternal }} of {{ totalPages }}\n </div>\n <div class=\"lxp-table__footer-controls\">\n <label class=\"lxp-table__page-size\">\n <span>Rows per page</span>\n <select\n [ngModel]=\"pageSizeInternal\"\n (ngModelChange)=\"onPageSizeChangeInternal($event)\"\n >\n <option *ngFor=\"let size of pageSizeOptionsInternal\" [ngValue]=\"size\">\n {{ size }}\n </option>\n </select>\n </label>\n\n <button\n type=\"button\"\n class=\"lxp-table__pager\"\n [disabled]=\"currentPageInternal === 1\"\n (click)=\"onPageChangeInternal(currentPageInternal - 1)\"\n >\n Previous\n </button>\n <button\n type=\"button\"\n class=\"lxp-table__pager\"\n [disabled]=\"currentPageInternal === totalPages\"\n (click)=\"onPageChangeInternal(currentPageInternal + 1)\"\n >\n Next\n </button>\n </div>\n </div>\n\n <ng-template #cellTemplate let-column=\"column\" let-row=\"row\">\n <ng-container *ngIf=\"column.render; else defaultCell\">\n {{ column.render(row[column.key], row) }}\n </ng-container>\n <ng-template #defaultCell>\n <ng-container\n *ngIf=\"isRichCell(row[column.key]); else plainCell\"\n >\n <div class=\"lxp-table__cell-text\">\n <div class=\"lxp-table__cell-line1\">\n {{ row[column.key].line1 || row[column.key].text || row[column.key].name }}\n </div>\n <div\n *ngIf=\"row[column.key].line2\"\n class=\"lxp-table__cell-line2\"\n >\n {{ row[column.key].line2 }}\n </div>\n </div>\n </ng-container>\n <ng-template #plainCell>\n {{ row[column.key] }}\n </ng-template>\n </ng-template>\n </ng-template>\n </div>\n `,\n})\nexport class TableComponent {\n @Input() columns: TableColumn[] = [];\n @Input() data: any[] = [];\n @Input() actions: TableAction[] = [];\n @Input() selectable = false;\n @Input() showPagination = true;\n @Input() showSearch = true;\n @Input() loading = false;\n @Input() theme: TableThemeKey = \"tera\";\n @Input() title?: string;\n @Input() titleLink?: string;\n @Input() serverSide = false;\n @Input() totalCount?: number;\n @Input() currentPage?: number;\n @Input() pageSize?: number;\n @Input() pageSizeOptions?: number[];\n @Input() emptyState?: BaseTableProps[\"emptyState\"];\n @Input() enableRowClick = false;\n @Input() searchPlaceholder?: string;\n\n @Output() onSelectionChange = new EventEmitter<number[]>();\n @Output() onPageChange = new EventEmitter<TablePageChange>();\n @Output() onPageSizeChange = new EventEmitter<TablePageChange>();\n @Output() onSearch = new EventEmitter<TableSearchData>();\n @Output() onRowClick = new EventEmitter<{ row: any; index: number }>();\n\n @HostBinding(\"style.fontFamily\")\n get fontFamily(): string {\n return tableThemeConfig[this.theme].fontFamily;\n }\n\n defaultTitle = tableConfig.defaultTitle;\n loadingMessage = tableConfig.loadingMessage;\n\n searchTerm = \"\";\n selectedRows: number[] = [];\n\n get columnSpan(): number {\n return (\n this.columns.length +\n (this.selectable ? 1 : 0) +\n (this.actions?.length ? 1 : 0)\n );\n }\n\n get totalItems(): number {\n if (this.serverSide) {\n return this.totalCount ?? this.data.length;\n }\n return this.filteredData.length;\n }\n\n get currentPageInternal(): number {\n return this.currentPage ?? this._currentPage;\n }\n\n get pageSizeInternal(): number {\n return this.pageSize ?? this._pageSize;\n }\n\n get pageSizeOptionsInternal(): ReadonlyArray<number> {\n return this.pageSizeOptions ?? tableConfig.defaultPageSizeOptions;\n }\n\n private _currentPage: number = 1;\n private _pageSize: number = tableConfig.defaultPageSize;\n\n get filteredData(): any[] {\n if (!this.showSearch || !this.searchTerm.trim()) {\n return this.data;\n }\n\n const term = this.searchTerm.toLowerCase();\n return this.data.filter((row) =>\n Object.values(row).some((value) =>\n String(\n typeof value === \"object\" && value !== null\n ? (value as any).line1 ?? (value as any).line2 ?? \"\"\n : value ?? \"\",\n )\n .toLowerCase()\n .includes(term),\n ),\n );\n }\n\n get pagedData(): any[] {\n if (!this.showPagination || this.serverSide) {\n return this.filteredData;\n }\n const start = (this.currentPageInternal - 1) * this.pageSizeInternal;\n return this.filteredData.slice(start, start + this.pageSizeInternal);\n }\n\n get totalPages(): number {\n if (!this.showPagination) {\n return 1;\n }\n return Math.max(1, Math.ceil(this.totalItems / this.pageSizeInternal));\n }\n\n isRichCell(value: any): boolean {\n return (\n value &&\n typeof value === \"object\" &&\n (\"line1\" in value || \"line2\" in value || \"text\" in value || \"name\" in value)\n );\n }\n\n isRowSelected(index: number): boolean {\n return this.selectedRows.includes(index);\n }\n\n globalRowIndex(localIndex: number): number {\n if (this.serverSide) {\n return localIndex;\n }\n return (this.currentPageInternal - 1) * this.pageSizeInternal + localIndex;\n }\n\n toggleRowSelection(index: number): void {\n const exists = this.selectedRows.includes(index);\n this.selectedRows = exists\n ? this.selectedRows.filter((i) => i !== index)\n : [...this.selectedRows, index];\n this.onSelectionChange.emit(this.selectedRows);\n }\n\n get emptyMessage(): string {\n const custom = this.emptyState?.message;\n const showDefault = this.emptyState?.showDefault ?? true;\n if (custom) return custom;\n return showDefault ? tableConfig.emptyMessage : \"\";\n }\n\n onSearchChange(term: any): void {\n const value =\n typeof term === \"string\"\n ? term\n : (term?.target as HTMLInputElement | null)?.value ?? \"\";\n this.searchTerm = value;\n this.onSearch.emit({\n page: this.currentPageInternal,\n pageSize: this.pageSizeInternal,\n searchTerm: value,\n filters: {},\n });\n }\n\n onPageChangeInternal(nextPage: number): void {\n if (nextPage < 1 || nextPage > this.totalPages) return;\n if (this.currentPage == null) {\n this._currentPage = nextPage;\n }\n this.onPageChange.emit({\n page: nextPage,\n pageSize: this.pageSizeInternal,\n searchTerm: this.searchTerm,\n filters: {},\n });\n }\n\n onPageSizeChangeInternal(nextSize: any): void {\n const size =\n typeof nextSize === \"number\" ? nextSize : Number(nextSize ?? 0);\n if (this.pageSize == null) {\n this._pageSize = size;\n this._currentPage = 1;\n }\n this.onPageSizeChange.emit({\n page: 1,\n pageSize: size,\n searchTerm: this.searchTerm,\n filters: {},\n });\n }\n\n handleRowClick(row: any, localIndex: number): void {\n if (!this.enableRowClick) return;\n const globalIndex = this.globalRowIndex(localIndex);\n this.onRowClick.emit({ row, index: globalIndex });\n }\n\n isActionDisabled(action: TableAction, row: any): boolean {\n return action.disabled ? action.disabled(row) : false;\n }\n\n runAction(action: TableAction, row: any): void {\n if (this.isActionDisabled(action, row)) return;\n action.action(row);\n }\n}\n\n\n","import { Injectable } from \"@angular/core\";\nimport { BehaviorSubject } from \"rxjs\";\nimport {\n defaultTheme,\n type CompanyTheme,\n} from \"@lamenna/lxp-shared-components\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class ThemeService {\n private readonly themeSubject = new BehaviorSubject<CompanyTheme>(\n defaultTheme,\n );\n\n readonly theme$ = this.themeSubject.asObservable();\n\n get theme(): CompanyTheme {\n return this.themeSubject.value;\n }\n\n setTheme(theme: CompanyTheme): void {\n this.themeSubject.next(theme);\n }\n\n toggleTheme(): void {\n this.themeSubject.next(this.theme === \"tera\" ? \"cynk\" : \"tera\");\n }\n}\n\n\n\n\n\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport { ThemeService } from \"../../theme/theme.service\";\n\n@Component({\n selector: \"lxp-theme-switcher\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n class=\"lxp-theme-switcher\"\n [ngClass]=\"className\"\n (click)=\"toggleTheme()\"\n [title]=\"buttonTitle\"\n >\n <ng-container *ngIf=\"showLabels; else iconOnly\">\n {{ label }}\n </ng-container>\n <ng-template #iconOnly>\n {{ shortLabel }}\n </ng-template>\n </button>\n `,\n})\nexport class ThemeSwitcherComponent {\n @Input() className?: string;\n @Input() showLabels = true;\n\n constructor(private readonly themeService: ThemeService) {}\n\n get label(): string {\n return this.themeService.theme === \"tera\" ? \"Tera theme\" : \"Cynk theme\";\n }\n\n get shortLabel(): string {\n return this.themeService.theme === \"tera\" ? \"T\" : \"C\";\n }\n\n get buttonTitle(): string {\n const next = this.themeService.theme === \"tera\" ? \"Cynk\" : \"Tera\";\n return `Switch to ${next} theme`;\n }\n\n toggleTheme(): void {\n this.themeService.toggleTheme();\n }\n}\n\n\n\n\n\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport {\n AngularBadgeProps,\n BadgeVariant,\n badgeConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-badge\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <span\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [ngStyle]=\"containerStyles\"\n >\n <span *ngIf=\"dot\" [ngStyle]=\"dotStyles\"></span>\n {{ text }}\n </span>\n `,\n})\nexport class BadgeComponent implements AngularBadgeProps {\n @Input() content?: string;\n @Input() label?: string;\n @Input() variant: BadgeVariant = \"neutral\";\n @Input() dot = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n\n get text(): string | undefined {\n return this.content ?? this.label;\n }\n private get v() {\n return badgeConfig.variants[this.variant];\n }\n get containerStyles() {\n const c = badgeConfig.common;\n return {\n display: \"inline-flex\",\n \"align-items\": \"center\",\n gap: `${c.gap}px`,\n \"background-color\": this.v.backgroundColor,\n color: this.v.color,\n \"border-radius\": c.borderRadius,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n padding: `${c.paddingVertical} ${c.paddingHorizontal}`,\n \"line-height\": \"1\",\n };\n }\n get dotStyles() {\n const c = badgeConfig.common;\n return {\n width: `${c.dotSize}px`,\n height: `${c.dotSize}px`,\n \"border-radius\": \"50%\",\n \"background-color\": this.v.color,\n display: \"inline-block\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularTextFieldProps,\n TextFieldState,\n textFieldConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-text-field\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div [ngStyle]=\"wrapperStyles\">\n <label *ngIf=\"label\" [attr.for]=\"id\" [ngStyle]=\"labelStyles\">{{\n label\n }}</label>\n <input\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [type]=\"type\"\n [value]=\"value || ''\"\n [attr.placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onInput($event)\"\n (focus)=\"focused = true\"\n (blur)=\"focused = false\"\n [ngStyle]=\"inputStyles\"\n />\n <span *ngIf=\"error || helperText\" [ngStyle]=\"helperStyles\">{{\n error || helperText\n }}</span>\n </div>\n `,\n})\nexport class TextFieldComponent implements AngularTextFieldProps {\n @Input() label?: string;\n @Input() value?: string;\n @Input() placeholder?: string;\n @Input() helperText?: string;\n @Input() error?: string;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Input() type = \"text\";\n @Output() valueChange = new EventEmitter<string>();\n\n focused = false;\n\n onInput(e: Event) {\n const val = (e.target as HTMLInputElement).value;\n this.value = val;\n this.valueChange.emit(val);\n }\n get state(): TextFieldState {\n return this.disabled\n ? \"disabled\"\n : this.error\n ? \"error\"\n : this.focused\n ? \"focused\"\n : \"default\";\n }\n private get s() {\n return textFieldConfig.states[this.state];\n }\n private get c() {\n return textFieldConfig.common;\n }\n get wrapperStyles() {\n return { display: \"flex\", \"flex-direction\": \"column\", gap: this.c.gap };\n }\n get labelStyles() {\n return {\n \"font-size\": \"13px\",\n \"font-weight\": \"500\",\n color: this.c.labelColor,\n };\n }\n get inputStyles() {\n const s = this.s;\n const c = this.c;\n return {\n \"box-sizing\": \"border-box\",\n width: \"100%\",\n border: `${s.borderWidth}px solid ${s.borderColor}`,\n \"background-color\": s.backgroundColor,\n \"border-radius\": c.borderRadius,\n padding: `${c.paddingVertical} ${c.paddingHorizontal}`,\n \"font-size\": c.fontSize,\n color: c.textColor,\n outline: \"none\",\n };\n }\n get helperStyles() {\n return {\n \"font-size\": \"12px\",\n color: this.error ? this.c.errorColor : this.c.helperColor,\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport { AngularChipProps, chipConfig } from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-chip\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n [ngStyle]=\"styles\"\n >\n {{ text }}\n </button>\n `,\n})\nexport class ChipComponent implements AngularChipProps {\n @Input() content?: string;\n @Input() label?: string;\n @Input() selected = false;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() onClick = new EventEmitter<MouseEvent>();\n\n get text(): string | undefined {\n return this.content ?? this.label;\n }\n private get st() {\n return this.selected ? chipConfig.states.active : chipConfig.states.default;\n }\n get styles() {\n const c = chipConfig.common;\n const st = this.st;\n return {\n \"background-color\": st.backgroundColor,\n color: st.color,\n border: st.borderWidth\n ? `${st.borderWidth}px solid ${st.borderColor}`\n : \"none\",\n \"border-radius\": c.borderRadius,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n padding: `${c.paddingVertical} ${c.paddingHorizontal}`,\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n opacity: this.disabled ? \"0.6\" : \"1\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularToggleProps,\n toggleConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-toggle\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n role=\"switch\"\n [attr.aria-checked]=\"checked\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n [ngStyle]=\"trackStyles\"\n >\n <span [ngStyle]=\"knobStyles\"></span>\n </button>\n `,\n})\nexport class ToggleComponent implements AngularToggleProps {\n @Input() checked = false;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() ariaLabel?: string;\n @Input() testID?: string;\n @Output() checkedChange = new EventEmitter<boolean>();\n\n toggle() {\n this.checked = !this.checked;\n this.checkedChange.emit(this.checked);\n }\n get trackStyles() {\n const t = toggleConfig.track;\n return {\n width: `${t.width}px`,\n height: `${t.height}px`,\n \"border-radius\": t.borderRadius,\n \"background-color\": this.checked ? t.onColor : t.offColor,\n border: \"none\",\n padding: `${t.padding}px`,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": this.checked ? \"flex-end\" : \"flex-start\",\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n opacity: this.disabled ? `${toggleConfig.common.disabledOpacity}` : \"1\",\n transition: \"background-color 0.2s\",\n };\n }\n get knobStyles() {\n const k = toggleConfig.knob;\n return {\n width: `${k.size}px`,\n height: `${k.size}px`,\n \"border-radius\": k.borderRadius,\n \"background-color\": k.color,\n \"box-shadow\": \"0 1px 2px rgba(0,0,0,0.2)\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport { AngularRadioProps, radioConfig } from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-radio\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <button\n type=\"button\"\n role=\"radio\"\n [attr.aria-checked]=\"checked\"\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n [disabled]=\"disabled\"\n (click)=\"onSelect.emit(value)\"\n [ngStyle]=\"rootStyles\"\n >\n <span [ngStyle]=\"circleStyles\">\n <span *ngIf=\"checked\" [ngStyle]=\"dotStyles\"></span>\n </span>\n <span *ngIf=\"label\" [ngStyle]=\"labelStyles\">{{ label }}</span>\n </button>\n `,\n})\nexport class RadioComponent implements AngularRadioProps {\n @Input() checked = false;\n @Input() disabled = false;\n @Input() label?: string;\n @Input() value?: string;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() onSelect = new EventEmitter<string | undefined>();\n\n private get st() {\n return this.checked\n ? radioConfig.states.selected\n : radioConfig.states.unselected;\n }\n private get c() {\n return radioConfig.common;\n }\n get rootStyles() {\n return {\n display: \"inline-flex\",\n \"align-items\": \"center\",\n gap: `${this.c.gap}`,\n background: \"none\",\n border: \"none\",\n padding: \"0\",\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n opacity: this.disabled ? `${this.c.disabledOpacity}` : \"1\",\n };\n }\n get circleStyles() {\n const c = this.c;\n return {\n width: `${c.size}px`,\n height: `${c.size}px`,\n \"border-radius\": \"50%\",\n border: `${c.borderWidth}px solid ${this.st.borderColor}`,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": \"center\",\n \"box-sizing\": \"border-box\",\n };\n }\n get dotStyles() {\n const c = this.c;\n return {\n width: `${c.dotSize}px`,\n height: `${c.dotSize}px`,\n \"border-radius\": \"50%\",\n \"background-color\": this.st.dotColor,\n };\n }\n get labelStyles() {\n return { \"font-size\": this.c.fontSize, color: this.c.labelColor };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport {\n AngularAvatarProps,\n AvatarSize,\n avatarConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-avatar\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <span [attr.id]=\"id\" [attr.data-testid]=\"testID\" [ngStyle]=\"rootStyles\">\n <img\n *ngIf=\"src; else initialsTpl\"\n [src]=\"src\"\n [attr.alt]=\"initials || ''\"\n [ngStyle]=\"imgStyles\"\n />\n <ng-template #initialsTpl>{{ initials }}</ng-template>\n </span>\n `,\n})\nexport class AvatarComponent implements AngularAvatarProps {\n @Input() initials?: string;\n @Input() src?: string;\n @Input() size: AvatarSize = \"md\";\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n\n private get s() {\n return avatarConfig.sizes[this.size];\n }\n get rootStyles() {\n const c = avatarConfig.common;\n const s = this.s;\n return {\n width: `${s.size}px`,\n height: `${s.size}px`,\n \"border-radius\": c.borderRadius,\n \"background-color\": c.backgroundColor,\n color: c.color,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": \"center\",\n \"font-size\": s.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n overflow: \"hidden\",\n };\n }\n get imgStyles() {\n return { width: \"100%\", height: \"100%\", \"object-fit\": \"cover\" };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input } from \"@angular/core\";\nimport {\n AngularCardProps,\n CardPadding,\n CardElevation,\n cardConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-card\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div [attr.id]=\"id\" [attr.data-testid]=\"testID\" [ngStyle]=\"styles\">\n <img\n *ngIf=\"imageSrc\"\n [src]=\"imageSrc\"\n [attr.alt]=\"imageAlt\"\n [ngStyle]=\"imageStyles\"\n />\n <div [ngStyle]=\"contentStyles\">\n <ng-content></ng-content>\n </div>\n </div>\n `,\n})\nexport class CardComponent implements AngularCardProps {\n @Input() padding: CardPadding = \"md\";\n @Input() elevation: CardElevation = \"sm\";\n @Input() bordered = true;\n @Input() imageSrc?: string;\n @Input() imageAlt = \"\";\n @Input() imageHeight?: number;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n\n get styles() {\n const c = cardConfig.common;\n return {\n \"background-color\": c.backgroundColor,\n border: this.bordered\n ? `${c.borderWidth}px solid ${c.borderColor}`\n : \"none\",\n \"border-radius\": c.borderRadius,\n \"box-shadow\": cardConfig.elevations[this.elevation],\n overflow: \"hidden\",\n };\n }\n\n get imageStyles() {\n return {\n display: \"block\",\n width: \"100%\",\n height: `${this.imageHeight ?? cardConfig.media.defaultHeight}px`,\n \"object-fit\": cardConfig.media.objectFit,\n \"background-color\": cardConfig.media.placeholderColor,\n };\n }\n\n get contentStyles() {\n return { padding: cardConfig.paddings[this.padding] };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularSegmentedControlProps,\n SegmentOption,\n segmentedControlConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-segmented-control\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div\n [attr.id]=\"id\"\n [attr.data-testid]=\"testID\"\n role=\"tablist\"\n [ngStyle]=\"containerStyles\"\n >\n <button\n *ngFor=\"let o of normalized\"\n type=\"button\"\n role=\"tab\"\n [attr.aria-selected]=\"o.value === value\"\n [disabled]=\"disabled\"\n (click)=\"valueChange.emit(o.value)\"\n [ngStyle]=\"segmentStyles(o.value === value)\"\n >\n {{ o.label }}\n </button>\n </div>\n `,\n})\nexport class SegmentedControlComponent implements AngularSegmentedControlProps {\n @Input() options: Array<string | SegmentOption> = [];\n @Input() value?: string;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() valueChange = new EventEmitter<string>();\n\n get normalized(): SegmentOption[] {\n return (this.options || []).map((o) =>\n typeof o === \"string\" ? { label: o, value: o } : o,\n );\n }\n private get c() {\n return segmentedControlConfig.common;\n }\n get containerStyles() {\n const c = this.c;\n return {\n display: \"inline-flex\",\n \"background-color\": c.backgroundColor,\n \"border-radius\": c.borderRadius,\n padding: `${c.padding}px`,\n };\n }\n segmentStyles(active: boolean) {\n const c = this.c;\n return {\n border: \"none\",\n cursor: this.disabled ? \"not-allowed\" : \"pointer\",\n \"background-color\": active ? c.activeBackground : \"transparent\",\n color: active ? c.activeColor : c.inactiveColor,\n \"border-radius\": c.segmentRadius,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n padding: `${c.segmentPaddingVertical} ${c.segmentPaddingHorizontal}`,\n \"box-shadow\": active ? c.activeShadow : \"none\",\n transition: \"all 0.15s\",\n };\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, Input, Output, EventEmitter } from \"@angular/core\";\nimport {\n AngularQuantityStepperProps,\n quantityStepperConfig,\n} from \"@lamenna/lxp-shared-components\";\n\n@Component({\n selector: \"lxp-quantity-stepper\",\n standalone: true,\n imports: [CommonModule],\n template: `\n <div [attr.id]=\"id\" [attr.data-testid]=\"testID\" [ngStyle]=\"containerStyles\">\n <button\n type=\"button\"\n [disabled]=\"disabled || value <= min\"\n (click)=\"set(value - step)\"\n [ngStyle]=\"buttonStyles\"\n >\n −\n </button>\n <span [ngStyle]=\"valueStyles\">{{ value }}</span>\n <button\n type=\"button\"\n [disabled]=\"disabled || value >= max\"\n (click)=\"set(value + step)\"\n [ngStyle]=\"buttonStyles\"\n >\n +\n </button>\n </div>\n `,\n})\nexport class QuantityStepperComponent implements AngularQuantityStepperProps {\n @Input() value = 0;\n @Input() min = 0;\n @Input() max = Number.POSITIVE_INFINITY;\n @Input() step = 1;\n @Input() disabled = false;\n @Input() id?: string;\n @Input() className?: string;\n @Input() testID?: string;\n @Output() valueChange = new EventEmitter<number>();\n\n set(v: number) {\n const nv = Math.max(this.min, Math.min(this.max, v));\n this.value = nv;\n this.valueChange.emit(nv);\n }\n private get c() {\n return quantityStepperConfig.common;\n }\n get containerStyles() {\n const c = this.c;\n return {\n display: \"inline-flex\",\n \"align-items\": \"stretch\",\n border: `1px solid ${c.borderColor}`,\n \"border-radius\": c.borderRadius,\n overflow: \"hidden\",\n opacity: this.disabled ? `${c.disabledOpacity}` : \"1\",\n };\n }\n get buttonStyles() {\n const c = this.c;\n return {\n width: `${c.buttonWidth}px`,\n height: `${c.height}px`,\n border: \"none\",\n \"background-color\": c.buttonBackground,\n color: c.buttonColor,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n cursor: \"pointer\",\n };\n }\n get valueStyles() {\n const c = this.c;\n return {\n \"min-width\": `${c.valueWidth}px`,\n height: `${c.height}px`,\n display: \"inline-flex\",\n \"align-items\": \"center\",\n \"justify-content\": \"center\",\n \"background-color\": c.valueBackground,\n color: c.valueColor,\n \"font-size\": c.fontSize,\n \"font-weight\": `${c.fontWeight}`,\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ThemeService","i2"],"mappings":"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"}
@@ -411,6 +411,9 @@ declare class CardComponent implements AngularCardProps {
411
411
  padding: CardPadding;
412
412
  elevation: CardElevation;
413
413
  bordered: boolean;
414
+ imageSrc?: string;
415
+ imageAlt: string;
416
+ imageHeight?: number;
414
417
  id?: string;
415
418
  className?: string;
416
419
  testID?: string;
@@ -418,11 +421,21 @@ declare class CardComponent implements AngularCardProps {
418
421
  "background-color": string;
419
422
  border: string;
420
423
  "border-radius": string;
421
- padding: string;
422
424
  "box-shadow": "none" | "0 1px 3px rgba(15,23,42,0.06)" | "0 4px 12px rgba(15,23,42,0.08)" | "0 12px 32px rgba(15,23,42,0.12)";
425
+ overflow: string;
426
+ };
427
+ get imageStyles(): {
428
+ display: string;
429
+ width: string;
430
+ height: string;
431
+ "object-fit": "cover";
432
+ "background-color": string;
433
+ };
434
+ get contentStyles(): {
435
+ padding: string;
423
436
  };
424
437
  static ɵfac: i0.ɵɵFactoryDeclaration<CardComponent, never>;
425
- static ɵcmp: i0.ɵɵComponentDeclaration<CardComponent, "lxp-card", never, { "padding": { "alias": "padding"; "required": false; }; "elevation": { "alias": "elevation"; "required": false; }; "bordered": { "alias": "bordered"; "required": false; }; "id": { "alias": "id"; "required": false; }; "className": { "alias": "className"; "required": false; }; "testID": { "alias": "testID"; "required": false; }; }, {}, never, ["*"], true, never>;
438
+ static ɵcmp: i0.ɵɵComponentDeclaration<CardComponent, "lxp-card", never, { "padding": { "alias": "padding"; "required": false; }; "elevation": { "alias": "elevation"; "required": false; }; "bordered": { "alias": "bordered"; "required": false; }; "imageSrc": { "alias": "imageSrc"; "required": false; }; "imageAlt": { "alias": "imageAlt"; "required": false; }; "imageHeight": { "alias": "imageHeight"; "required": false; }; "id": { "alias": "id"; "required": false; }; "className": { "alias": "className"; "required": false; }; "testID": { "alias": "testID"; "required": false; }; }, {}, never, ["*"], true, never>;
426
439
  }
427
440
 
428
441
  declare class SegmentedControlComponent implements AngularSegmentedControlProps {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lamenna/lxp-angular",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Angular components for LXP",
5
5
  "main": "dist/fesm2022/lamenna-lxp-angular.mjs",
6
6
  "types": "dist/types/lamenna-lxp-angular.d.ts",
@@ -18,8 +18,8 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "tslib": "^2.8.1",
21
- "@lamenna/lxp-shared-components": "0.3.0",
22
- "@lamenna/lxp-tokens": "0.3.0"
21
+ "@lamenna/lxp-shared-components": "0.4.0",
22
+ "@lamenna/lxp-tokens": "0.4.0"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@angular/compiler-cli": "^21.0.6",