@dataclouder/ngx-core 0.1.24 → 0.1.26

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.
@@ -161,7 +161,7 @@ class DCFilterBarComponent {
161
161
  this.onFilterAction.emit(filterEvent);
162
162
  }
163
163
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: DCFilterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
164
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: DCFilterBarComponent, isStandalone: true, selector: "dc-filter-bar", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, customFilters: { classPropertyName: "customFilters", publicName: "customFilters", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onFilterAction: "onFilterAction", onChangeSort: "onChangeSort", onNew: "onNew" }, ngImport: i0, template: "<div class=\"background-bar\">\n <div class=\"button-flex\">\n <div>\n <p-button icon=\"pi pi-search\" label=\"buscar\" severity=\"secondary\" (click)=\"isSearchVisible = true\" />\n </div>\n\n @if (options()?.showCreateButton) {\n <span class=\"admin\">\n <i style=\"position: absolute; right: -5px; top: -5px; z-index: 2; color: grey\" class=\"pi pi-key\"></i>\n <p-button icon=\"pi pi-plus\" label=\"Crear Nueva\" severity=\"secondary\" (click)=\"createNew()\" />\n </span>\n }\n </div>\n\n @if(options()?.showViewButton){\n <p-button icon=\"pi pi-objects-column\" variant=\"text\" (click)=\"doItemAction({ action: 'changeView', item: null })\" severity=\"secondary\"></p-button>\n } @if(options()?.showActions){ @for(item of items(); track $index) {\n <p-button [icon]=\"item.icon\" variant=\"text\" (click)=\"doItemAction({ action: item.title, item: item })\" severity=\"secondary\"></p-button>\n }\n\n <div class=\"button-flex\">\n <p-button icon=\"pi pi-filter\" label=\"Filtrar\" severity=\"secondary\" (click)=\"isFilterVisible = true\" />\n </div>\n }\n</div>\n\n@if (placeholder) {\n<span class=\"search-flex\" (click)=\"search(null)\"> <i class=\"pi pi-times\"></i>{{ placeholder }} </span>\n}\n\n<p-dialog [(visible)]=\"isSearchVisible\" [dismissableMask]=\"true\" [modal]=\"true\" [showHeader]=\"false\" (onHide)=\"isSearchVisible = false\">\n <p>Haz una b\u00FAsqueda (Enter)</p>\n <div>\n <span>\n <input (keydown.enter)=\"search(placeholder)\" type=\"text\" pInputText [(ngModel)]=\"placeholder\" />\n </span>\n </div>\n</p-dialog>\n\n<p-dialog [(visible)]=\"isFilterVisible\" [modal]=\"true\" [style]=\"{ width: '70vw', height: '70vh' }\" [header]=\"'Filtros'\">\n <div class=\"flex flex-column gap-4\">\n <!-- Sort Options -->\n <div class=\"field\">\n <label class=\"font-semibold block mb-2\">Ordenar por</label>\n <p-select [options]=\"sortOptions\" [(ngModel)]=\"selectedSort\" optionLabel=\"label\" [style]=\"{ width: '100%' }\" placeholder=\"Seleccionar orden\"> </p-select>\n </div>\n\n <p-multiselect\n [options]=\"availibleFilters\"\n [(ngModel)]=\"selectedFilters\"\n optionLabel=\"name\"\n placeholder=\"Filtros R\u00E1pidos\"\n [maxSelectedLabels]=\"3\"\n styleClass=\"w-full md:w-80\" />\n\n <!-- Date Filter -->\n <div class=\"field\">\n <label class=\"font-semibold block mb-2\">Rango de fechas</label>\n <p-calendar\n [(ngModel)]=\"dateRange\"\n selectionMode=\"range\"\n [showButtonBar]=\"true\"\n [style]=\"{ width: '100%' }\"\n placeholder=\"Seleccionar fechas\"\n dateFormat=\"dd/mm/yy\">\n </p-calendar>\n </div>\n\n @if (customFilters?.length > 0) {\n <h4>Filtros Personalizados (No terminado...) </h4>\n <h6>Encontrar la forma de que cada custom filter se renderize como un nuevo form.</h6>\n @for (filter of customFilters; track filter.name) {\n <div class=\"field\">\n <label class=\"font-semibold block mb-2\">{{ filter.name }}</label>\n </div>\n } }\n\n <!-- Recent/All Toggle -->\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex justify-content-end gap-2\">\n <p-button label=\"Limpiar\" icon=\"pi pi-trash\" (click)=\"clearFilters()\" styleClass=\"p-button-text\"> </p-button>\n <p-button label=\"Aplicar\" icon=\"pi pi-check\" (click)=\"applyFilters()\" severity=\"primary\"> </p-button>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [":host{display:block}.admin{margin-left:10px;position:relative}.background-bar{background-color:var(--p-primary-color);display:flex;border-radius:10px;justify-content:space-between;padding:10px}.button-flex{display:flex;margin-right:10px}.white{color:#fff}.search-flex{margin-left:10px}.search-dialog{width:750px;-webkit-backdrop-filter:blur(70px);backdrop-filter:blur(70px)}.border-none{border:none}.bg-black-alpha-50{background-color:var(--p-primary-color)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i4.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "size", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "fluid", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "fluid", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "size", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "component", type: i7.Calendar, selector: "p-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "fluid", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
164
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: DCFilterBarComponent, isStandalone: true, selector: "dc-filter-bar", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, customFilters: { classPropertyName: "customFilters", publicName: "customFilters", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onFilterAction: "onFilterAction", onChangeSort: "onChangeSort", onNew: "onNew" }, ngImport: i0, template: "<div class=\"background-bar\">\n <div class=\"button-flex\">\n <div>\n <p-button icon=\"pi pi-search\" label=\"buscar\" severity=\"secondary\" (click)=\"isSearchVisible = true\" />\n </div>\n\n @if (options()?.showCreateButton) {\n <span class=\"admin\">\n <i style=\"position: absolute; right: -5px; top: -5px; z-index: 2; color: grey\" class=\"pi pi-key\"></i>\n <p-button icon=\"pi pi-plus\" label=\"Crear Nueva\" severity=\"secondary\" (click)=\"createNew()\" />\n </span>\n }\n </div>\n\n @if(options()?.showViewButton){\n <p-button icon=\"pi pi-objects-column\" variant=\"text\" (click)=\"doItemAction({ action: 'changeView', item: null })\" severity=\"secondary\"></p-button>\n } @if(options()?.showActions){ @for(item of items(); track $index) {\n <p-button [icon]=\"item.icon\" variant=\"text\" (click)=\"doItemAction({ action: item.title, item: item })\" severity=\"secondary\"></p-button>\n }\n\n <div class=\"button-flex\">\n <p-button icon=\"pi pi-filter\" label=\"Filtrar\" severity=\"secondary\" (click)=\"isFilterVisible = true\" />\n </div>\n }\n</div>\n\n@if (placeholder) {\n<span class=\"search-flex\" (click)=\"search(null)\"> <i class=\"pi pi-times\"></i>{{ placeholder }} </span>\n}\n\n<p-dialog [(visible)]=\"isSearchVisible\" [dismissableMask]=\"true\" [modal]=\"true\" [showHeader]=\"false\" (onHide)=\"isSearchVisible = false\">\n <p>Haz una b\u00FAsqueda (Enter)</p>\n <div>\n <span>\n <input (keydown.enter)=\"search(placeholder)\" type=\"text\" pInputText [(ngModel)]=\"placeholder\" />\n </span>\n </div>\n</p-dialog>\n\n<p-dialog [(visible)]=\"isFilterVisible\" [modal]=\"true\" [style]=\"{ width: '70vw', height: '70vh' }\" [header]=\"'Filtros'\">\n <div class=\"flex flex-column gap-4\">\n <!-- Sort Options -->\n <div class=\"field\">\n <label class=\"font-semibold block mb-2\">Ordenar por</label>\n <p-select [options]=\"sortOptions\" [(ngModel)]=\"selectedSort\" optionLabel=\"label\" [style]=\"{ width: '100%' }\" placeholder=\"Seleccionar orden\"> </p-select>\n </div>\n\n <p-multiselect\n [options]=\"availibleFilters\"\n [(ngModel)]=\"selectedFilters\"\n optionLabel=\"name\"\n placeholder=\"Filtros R\u00E1pidos\"\n [maxSelectedLabels]=\"3\"\n styleClass=\"w-full md:w-80\" />\n\n <!-- Date Filter -->\n <div class=\"field\">\n <label class=\"font-semibold block mb-2\">Rango de fechas</label>\n <p-calendar\n [(ngModel)]=\"dateRange\"\n selectionMode=\"range\"\n [showButtonBar]=\"true\"\n [style]=\"{ width: '100%' }\"\n placeholder=\"Seleccionar fechas\"\n dateFormat=\"dd/mm/yy\">\n </p-calendar>\n </div>\n\n @if (customFilters?.length > 0) {\n <h4>Filtros Personalizados (No terminado...) </h4>\n <h6>Encontrar la forma de que cada custom filter se renderize como un nuevo form.</h6>\n @for (filter of customFilters; track filter.name) {\n <div class=\"field\">\n <label class=\"font-semibold block mb-2\">{{ filter.name }}</label>\n </div>\n } }\n\n <!-- Recent/All Toggle -->\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex justify-content-end gap-2\">\n <p-button label=\"Limpiar\" icon=\"pi pi-trash\" (click)=\"clearFilters()\" styleClass=\"p-button-text\"> </p-button>\n <p-button label=\"Aplicar\" icon=\"pi pi-check\" (click)=\"applyFilters()\" severity=\"primary\"> </p-button>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [":host{display:block}.admin{margin-left:10px;position:relative}.background-bar{background-color:var(--p-primary-color);display:flex;border-radius:10px;justify-content:space-between;padding:10px}.button-flex{display:flex;margin-right:10px}.white{color:#fff}.search-flex{margin-left:10px}.search-dialog{width:750px;-webkit-backdrop-filter:blur(70px);backdrop-filter:blur(70px)}.border-none{border:none}.bg-black-alpha-50{background-color:var(--p-primary-color)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i4.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "size", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "fluid", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "fluid", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "size", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "component", type: i7.Calendar, selector: "p-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "fluid", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
165
165
  }
166
166
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: DCFilterBarComponent, decorators: [{
167
167
  type: Component,
@@ -364,6 +364,20 @@ class LoadingBarService {
364
364
  this.hideProgressBar();
365
365
  }, 1100);
366
366
  }
367
+ errorAndHide() {
368
+ // Clear any existing progress interval
369
+ if (this.progressInterval) {
370
+ clearInterval(this.progressInterval);
371
+ this.progressInterval = null;
372
+ }
373
+ this.isShowing = true;
374
+ this.mode = 'indeterminate';
375
+ this.progress = 100;
376
+ this.color = '#FF0000';
377
+ setTimeout(() => {
378
+ this.hideProgressBar();
379
+ }, 1100);
380
+ }
367
381
  infoAndHide() {
368
382
  // Clear any existing progress interval
369
383
  if (this.progressInterval) {
@@ -596,7 +610,7 @@ class QuickTableComponent {
596
610
  }
597
611
  }
598
612
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: QuickTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
599
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: QuickTableComponent, isStandalone: true, selector: "app-quick-table", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, tableData: { classPropertyName: "tableData", publicName: "tableData", isSignal: true, isRequired: false, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableRef", first: true, predicate: ["tableRef"], descendants: true }], ngImport: i0, template: "<p-table\n [tableStyle]=\"{ 'min-width': '20rem' }\"\n #tableRef\n [value]=\"_tableData()\"\n [columns]=\"_columns()\"\n [globalFilterFields]=\"globalFilterFields()\"\n [filters]=\"filters()\"\n (onFilter)=\"onFilterLocal($event)\">\n <ng-template pTemplate=\"caption\">\n <div class=\"flex justify-content-between align-items-center\">\n <h5 class=\"m-0\">Table Data</h5>\n <span class=\"p-input-icon-left\">\n <i class=\"pi pi-search\"></i>\n <input pInputText type=\"text\" (input)=\"onGlobalFilter($event)\" placeholder=\"Search keyword\" />\n </span>\n </div>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n @for (column of columns; track column) {\n <th [pSortableColumn]=\"column.field\">{{ column.header }} <p-sortIcon [field]=\"column.field\"></p-sortIcon></th>\n }\n </tr>\n <tr>\n @for (column of columns; track column) { @if(column.type === 'tags') {\n <th>\n <p-multiselect\n [options]=\"filters()?.[column.field]?.['options']\"\n placeholder=\"Selecciona\"\n (onChange)=\"filterOutsideTable('tags', column.field, $event.value)\"\n [style]=\"{ minWidth: '14rem' }\"\n [panelStyle]=\"{ minWidth: '16rem' }\">\n <ng-template let-option #item>\n <div class=\"flex items-center gap-2\">\n <span>{{ option }}</span>\n </div>\n </ng-template>\n </p-multiselect>\n </th>\n\n } @else {\n <th>\n <p-columnFilter [type]=\"getFilterType(column)\" [field]=\"column.field\" placeholder=\"Search\" [showMenu]=\"false\"></p-columnFilter>\n </th>\n } }\n </tr>\n </ng-template>\n <!-- @if(tableData()){ -->\n <ng-template pTemplate=\"body\" let-item let-columns=\"columns\">\n <tr>\n @for (column of columns; track column) {\n <td>\n @if(column.type === 'image'){\n <div class=\"image-container\">\n <img [src]=\"item | getPath: column\" alt=\"Image\" class=\"image\" />\n </div>\n } @else if(column.type === 'tags') {\n <div class=\"tags-container\">\n @for (tag of item[column.field]; track tag) {\n <p-tag [rounded]=\"true\" [value]=\"tag\"></p-tag>\n }\n </div>\n } @else if(column.type === 'actions') {\n <div style=\"display: flex; gap: 2px\">\n @for (actionBtn of _actions(); track actionBtn) {\n <p-button (click)=\"selectItem(item, actionBtn)\" [icon]=\"actionBtn.icon\" [severity]=\"actionBtn['severity']\" />\n }\n </div>\n } @else {\n <span>{{ item | getPath: column}} </span>\n }\n </td>\n }\n </tr>\n </ng-template>\n <!-- } -->\n</p-table>\n", styles: [":host{display:block;height:100%;overflow:auto}.generic-list-container{display:flex;flex-direction:column;height:100%}.generic-list-content{margin-top:10px;flex:1;overflow-y:auto;padding-bottom:10px}.card-source{margin-bottom:10px;position:relative}.paginator-container{margin-top:auto;padding-top:10px}.image-container{width:50px;height:50px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center}.image-container img{width:100%;height:100%;object-fit:cover}\n"], dependencies: [{ kind: "ngmodule", type: CardModule }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: SpeedDialModule }, { kind: "ngmodule", type: PaginatorModule }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3$2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3$2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i3$2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i3$2.ColumnFilter, selector: "p-columnFilter", inputs: ["field", "type", "display", "showMenu", "matchMode", "operator", "showOperator", "showClearButton", "showApplyButton", "showMatchModes", "showAddButton", "hideOnClear", "placeholder", "matchModeOptions", "maxConstraints", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping", "showButtons", "ariaLabel", "filterButtonProps"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: RouterModule }, { kind: "pipe", type: GetPathPipe, name: "getPath" }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i5$1.Tag, selector: "p-tag", inputs: ["style", "styleClass", "severity", "value", "icon", "rounded"] }, { kind: "ngmodule", type: SelectModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "fluid", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "size", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
613
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: QuickTableComponent, isStandalone: true, selector: "app-quick-table", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, tableData: { classPropertyName: "tableData", publicName: "tableData", isSignal: true, isRequired: false, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableRef", first: true, predicate: ["tableRef"], descendants: true }], ngImport: i0, template: "<p-table\n [tableStyle]=\"{ 'min-width': '20rem' }\"\n #tableRef\n [value]=\"_tableData()\"\n [columns]=\"_columns()\"\n [globalFilterFields]=\"globalFilterFields()\"\n [filters]=\"filters()\"\n (onFilter)=\"onFilterLocal($event)\">\n <ng-template pTemplate=\"caption\">\n <div class=\"flex justify-content-between align-items-center\">\n <h5 class=\"m-0\">Table Data</h5>\n <span class=\"p-input-icon-left\">\n <i class=\"pi pi-search\"></i>\n <input pInputText type=\"text\" (input)=\"onGlobalFilter($event)\" placeholder=\"Search keyword\" />\n </span>\n </div>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n @for (column of columns; track column) {\n <th [pSortableColumn]=\"column.field\">{{ column.header }} <p-sortIcon [field]=\"column.field\"></p-sortIcon></th>\n }\n </tr>\n <tr>\n @for (column of columns; track column) { @if(column.type === 'tags') {\n <th>\n <p-multiselect\n [options]=\"filters()?.[column.field]?.['options']\"\n placeholder=\"Selecciona\"\n (onChange)=\"filterOutsideTable('tags', column.field, $event.value)\"\n [style]=\"{ minWidth: '14rem' }\"\n [panelStyle]=\"{ minWidth: '16rem' }\">\n <ng-template let-option #item>\n <div class=\"flex items-center gap-2\">\n <span>{{ option }}</span>\n </div>\n </ng-template>\n </p-multiselect>\n </th>\n\n } @else {\n <th>\n <p-columnFilter [type]=\"getFilterType(column)\" [field]=\"column.field\" placeholder=\"Search\" [showMenu]=\"false\"></p-columnFilter>\n </th>\n } }\n </tr>\n </ng-template>\n <!-- @if(tableData()){ -->\n <ng-template pTemplate=\"body\" let-item let-columns=\"columns\">\n <tr>\n @for (column of columns; track column) {\n <td>\n @if(column.type === 'image'){\n <div class=\"image-container\">\n <img [src]=\"item | getPath: column\" alt=\"Image\" class=\"image\" />\n </div>\n } @else if(column.type === 'tags') {\n <div class=\"tags-container\">\n @for (tag of item[column.field]; track tag) {\n <p-tag [rounded]=\"true\" [value]=\"tag\"></p-tag>\n }\n </div>\n } @else if(column.type === 'actions') {\n <div style=\"display: flex; gap: 2px\">\n @for (actionBtn of _actions(); track actionBtn) {\n <p-button (click)=\"selectItem(item, actionBtn)\" [icon]=\"actionBtn.icon\" [severity]=\"actionBtn['severity']\" />\n }\n </div>\n } @else {\n <span>{{ item | getPath: column}} </span>\n }\n </td>\n }\n </tr>\n </ng-template>\n <!-- } -->\n</p-table>\n", styles: [":host{display:block;height:100%;overflow:auto}.generic-list-container{display:flex;flex-direction:column;height:100%}.generic-list-content{margin-top:10px;flex:1;overflow-y:auto;padding-bottom:10px}.card-source{margin-bottom:10px;position:relative}.paginator-container{margin-top:auto;padding-top:10px}.image-container{width:50px;height:50px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center}.image-container img{width:100%;height:100%;object-fit:cover}\n"], dependencies: [{ kind: "ngmodule", type: CardModule }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: SpeedDialModule }, { kind: "ngmodule", type: PaginatorModule }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3$2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3$2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i3$2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i3$2.ColumnFilter, selector: "p-columnFilter", inputs: ["field", "type", "display", "showMenu", "matchMode", "operator", "showOperator", "showClearButton", "showApplyButton", "showMatchModes", "showAddButton", "hideOnClear", "placeholder", "matchModeOptions", "maxConstraints", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping", "showButtons", "ariaLabel", "filterButtonProps"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: RouterModule }, { kind: "pipe", type: GetPathPipe, name: "getPath" }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i5$1.Tag, selector: "p-tag", inputs: ["style", "styleClass", "severity", "value", "icon", "rounded"] }, { kind: "ngmodule", type: SelectModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "fluid", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "size", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
600
614
  }
601
615
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: QuickTableComponent, decorators: [{
602
616
  type: Component,
@@ -1228,7 +1242,7 @@ class PromptComponent {
1228
1242
  this.ref.close(null);
1229
1243
  }
1230
1244
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PromptComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1231
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: PromptComponent, isStandalone: true, selector: "dc-prompt", ngImport: i0, template: "<div class=\"form-input-card p-4\">\n <p-message severity=\"secondary\"> {{ title() }}</p-message>\n\n <div class=\"my-4\">{{ message() }}</div>\n\n <div class=\"p-field mb-4\">\n <textarea rows=\"5\" cols=\"30\" pTextarea [(ngModel)]=\"inputValue\" class=\"w-full\"></textarea>\n </div>\n\n <div class=\"flex justify-content-end gap-2\">\n <p-button [label]=\"cancelText()\" (click)=\"cancel()\" severity=\"secondary\"></p-button>\n <p-button [label]=\"acceptText()\" (click)=\"accept()\"></p-button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MessageModule }, { kind: "component", type: i2.Message, selector: "p-message", inputs: ["severity", "text", "escape", "style", "styleClass", "closable", "icon", "closeIcon", "life", "showTransitionOptions", "hideTransitionOptions", "size", "variant"], outputs: ["onClose"] }, { kind: "ngmodule", type: TextareaModule }, { kind: "directive", type: i4$3.Textarea, selector: "[pTextarea]", inputs: ["autoResize", "variant", "fluid", "pSize"], outputs: ["onResize"] }] }); }
1245
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: PromptComponent, isStandalone: true, selector: "dc-prompt", ngImport: i0, template: "<div class=\"form-input-card p-4\">\n <p-message severity=\"secondary\"> {{ title() }}</p-message>\n\n <div class=\"my-4\">{{ message() }}</div>\n\n <div class=\"p-field mb-4\">\n <textarea rows=\"5\" cols=\"30\" pTextarea [(ngModel)]=\"inputValue\" class=\"w-full\"></textarea>\n </div>\n\n <div class=\"flex justify-content-end gap-2\">\n <p-button [label]=\"cancelText()\" (click)=\"cancel()\" severity=\"secondary\"></p-button>\n <p-button [label]=\"acceptText()\" (click)=\"accept()\"></p-button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MessageModule }, { kind: "component", type: i2.Message, selector: "p-message", inputs: ["severity", "text", "escape", "style", "styleClass", "closable", "icon", "closeIcon", "life", "showTransitionOptions", "hideTransitionOptions", "size", "variant"], outputs: ["onClose"] }, { kind: "ngmodule", type: TextareaModule }, { kind: "directive", type: i4$3.Textarea, selector: "[pTextarea], [pInputTextarea]", inputs: ["autoResize", "variant", "fluid", "pSize"], outputs: ["onResize"] }] }); }
1232
1246
  }
1233
1247
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PromptComponent, decorators: [{
1234
1248
  type: Component,
@@ -1784,10 +1798,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
1784
1798
  type: Injectable
1785
1799
  }], ctorParameters: () => [{ type: undefined }] });
1786
1800
 
1801
+ class UiStateService {
1802
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: UiStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1803
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: UiStateService, providedIn: 'root' }); }
1804
+ }
1805
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: UiStateService, decorators: [{
1806
+ type: Injectable,
1807
+ args: [{
1808
+ providedIn: 'root',
1809
+ }]
1810
+ }] });
1811
+
1812
+ const SUPPORTED_LANGUAGES = [
1813
+ 'en',
1814
+ 'es',
1815
+ 'de',
1816
+ 'fr',
1817
+ 'zh',
1818
+ 'it',
1819
+ 'pt',
1820
+ 'ja',
1821
+ 'nl',
1822
+ 'ru',
1823
+ 'ko',
1824
+ 'pl',
1825
+ 'sv',
1826
+ 'tr',
1827
+ 'ar',
1828
+ 'vi',
1829
+ 'id',
1830
+ 'da',
1831
+ 'no',
1832
+ 'fi',
1833
+ 'cs',
1834
+ 'el',
1835
+ 'hu',
1836
+ 'ro',
1837
+ 'uk',
1838
+ 'he',
1839
+ 'th',
1840
+ 'hi',
1841
+ 'ca',
1842
+ 'bg',
1843
+ ];
1787
1844
  const LANGUAGES = {
1788
1845
  en: {
1789
1846
  nativeName: 'English',
1790
1847
  flag: '🇺🇸', // Using US flag as a primary example
1848
+ flagImg: 'assets/flags/us.svg',
1791
1849
  code: 'en',
1792
1850
  i: 1,
1793
1851
  llmKnowledge: 100,
@@ -1796,10 +1854,12 @@ const LANGUAGES = {
1796
1854
  en: 'English',
1797
1855
  es: 'Inglés',
1798
1856
  },
1857
+ status: 'ready',
1799
1858
  },
1800
1859
  es: {
1801
1860
  nativeName: 'Español',
1802
1861
  flag: '🇪🇸', // Using Spain flag as a primary example
1862
+ flagImg: 'assets/flags/es.svg',
1803
1863
  code: 'es',
1804
1864
  i: 2,
1805
1865
  llmKnowledge: 99,
@@ -1829,10 +1889,12 @@ const LANGUAGES = {
1829
1889
  en: 'Spanish',
1830
1890
  es: 'Español',
1831
1891
  },
1892
+ status: 'almostready',
1832
1893
  },
1833
1894
  de: {
1834
1895
  nativeName: 'Deutsch',
1835
1896
  flag: '🇩🇪',
1897
+ flagImg: 'assets/flags/de.svg',
1836
1898
  code: 'de',
1837
1899
  i: 3,
1838
1900
  llmKnowledge: 97,
@@ -1841,10 +1903,12 @@ const LANGUAGES = {
1841
1903
  en: 'German',
1842
1904
  es: 'Alemán',
1843
1905
  },
1906
+ status: 'almostready',
1844
1907
  },
1845
1908
  fr: {
1846
1909
  nativeName: 'Français',
1847
1910
  flag: '🇫🇷',
1911
+ flagImg: 'assets/flags/fr.svg',
1848
1912
  code: 'fr',
1849
1913
  i: 4,
1850
1914
  llmKnowledge: 96,
@@ -1853,10 +1917,12 @@ const LANGUAGES = {
1853
1917
  en: 'French',
1854
1918
  es: 'Francés',
1855
1919
  },
1920
+ status: 'almostready',
1856
1921
  },
1857
1922
  zh: {
1858
1923
  nativeName: '中文 (Zhōngwén)',
1859
1924
  flag: '🇨🇳',
1925
+ flagImg: 'assets/flags/cn.svg',
1860
1926
  code: 'zh',
1861
1927
  i: 5,
1862
1928
  llmKnowledge: 94,
@@ -1865,10 +1931,12 @@ const LANGUAGES = {
1865
1931
  en: 'Chinese (Mandarin)',
1866
1932
  es: 'Chino (Mandarín)',
1867
1933
  },
1934
+ status: 'almostready',
1868
1935
  },
1869
1936
  it: {
1870
1937
  nativeName: 'Italiano',
1871
1938
  flag: '🇮🇹',
1939
+ flagImg: 'assets/flags/it.svg',
1872
1940
  code: 'it',
1873
1941
  i: 6,
1874
1942
  llmKnowledge: 93,
@@ -1877,10 +1945,12 @@ const LANGUAGES = {
1877
1945
  en: 'Italian',
1878
1946
  es: 'Italiano',
1879
1947
  },
1948
+ status: 'almostready',
1880
1949
  },
1881
1950
  pt: {
1882
1951
  nativeName: 'Português',
1883
1952
  flag: '🇧🇷',
1953
+ flagImg: 'assets/flags/br.svg',
1884
1954
  code: 'pt',
1885
1955
  i: 7,
1886
1956
  llmKnowledge: 92,
@@ -1889,10 +1959,12 @@ const LANGUAGES = {
1889
1959
  en: 'Portuguese',
1890
1960
  es: 'Portugués',
1891
1961
  },
1962
+ status: 'ready',
1892
1963
  },
1893
1964
  ja: {
1894
1965
  nativeName: '日本語 (Nihongo)',
1895
1966
  flag: '🇯🇵',
1967
+ flagImg: 'assets/flags/jp.svg',
1896
1968
  code: 'ja',
1897
1969
  i: 8,
1898
1970
  llmKnowledge: 91,
@@ -1901,10 +1973,12 @@ const LANGUAGES = {
1901
1973
  en: 'Japanese',
1902
1974
  es: 'Japonés',
1903
1975
  },
1976
+ status: 'almostready',
1904
1977
  },
1905
1978
  nl: {
1906
1979
  nativeName: 'Nederlands',
1907
1980
  flag: '🇳🇱',
1981
+ flagImg: 'assets/flags/nl.svg',
1908
1982
  code: 'nl',
1909
1983
  i: 9,
1910
1984
  llmKnowledge: 90,
@@ -1913,10 +1987,12 @@ const LANGUAGES = {
1913
1987
  en: 'Dutch',
1914
1988
  es: 'Neerlandés',
1915
1989
  },
1990
+ status: 'commingsoon',
1916
1991
  },
1917
1992
  ru: {
1918
1993
  nativeName: 'Русский (Russkiy)',
1919
1994
  flag: '🇷🇺',
1995
+ flagImg: 'assets/flags/ru.svg',
1920
1996
  code: 'ru',
1921
1997
  i: 10, // Adjusted index
1922
1998
  llmKnowledge: 89,
@@ -1925,10 +2001,12 @@ const LANGUAGES = {
1925
2001
  en: 'Russian',
1926
2002
  es: 'Ruso',
1927
2003
  },
2004
+ status: 'commingsoon',
1928
2005
  },
1929
2006
  ko: {
1930
2007
  nativeName: '한국어 (Hangugeo)',
1931
2008
  flag: '🇰🇷',
2009
+ flagImg: 'assets/flags/kr.svg',
1932
2010
  code: 'ko',
1933
2011
  i: 11,
1934
2012
  llmKnowledge: 87,
@@ -1937,10 +2015,12 @@ const LANGUAGES = {
1937
2015
  en: 'Korean',
1938
2016
  es: 'Coreano',
1939
2017
  },
2018
+ status: 'almostready',
1940
2019
  },
1941
2020
  pl: {
1942
2021
  nativeName: 'Polski',
1943
2022
  flag: '🇵🇱',
2023
+ flagImg: 'assets/flags/pl.svg',
1944
2024
  code: 'pl',
1945
2025
  i: 12,
1946
2026
  llmKnowledge: 86,
@@ -1949,10 +2029,12 @@ const LANGUAGES = {
1949
2029
  en: 'Polish',
1950
2030
  es: 'Polaco',
1951
2031
  },
2032
+ status: 'commingsoon',
1952
2033
  },
1953
2034
  sv: {
1954
2035
  nativeName: 'Svenska',
1955
2036
  flag: '🇸🇪',
2037
+ flagImg: 'assets/flags/se.svg',
1956
2038
  code: 'sv',
1957
2039
  i: 13,
1958
2040
  llmKnowledge: 85,
@@ -1961,10 +2043,12 @@ const LANGUAGES = {
1961
2043
  en: 'Swedish',
1962
2044
  es: 'Sueco',
1963
2045
  },
2046
+ status: 'commingsoon',
1964
2047
  },
1965
2048
  tr: {
1966
2049
  nativeName: 'Türkçe',
1967
2050
  flag: '🇹🇷',
2051
+ flagImg: 'assets/flags/tr.svg',
1968
2052
  code: 'tr',
1969
2053
  i: 14,
1970
2054
  llmKnowledge: 84,
@@ -1973,10 +2057,12 @@ const LANGUAGES = {
1973
2057
  en: 'Turkish',
1974
2058
  es: 'Turco',
1975
2059
  },
2060
+ status: 'commingsoon',
1976
2061
  },
1977
2062
  ar: {
1978
2063
  nativeName: 'العربية (Al-Arabiyyah)',
1979
2064
  flag: '🇸🇦',
2065
+ flagImg: 'assets/flags/sa.svg',
1980
2066
  code: 'ar',
1981
2067
  i: 15,
1982
2068
  llmKnowledge: 83,
@@ -2011,10 +2097,12 @@ const LANGUAGES = {
2011
2097
  en: 'Arabic',
2012
2098
  es: 'Árabe',
2013
2099
  },
2100
+ status: 'commingsoon',
2014
2101
  },
2015
2102
  vi: {
2016
2103
  nativeName: 'Tiếng Việt',
2017
2104
  flag: '🇻🇳',
2105
+ flagImg: 'assets/flags/vn.svg',
2018
2106
  code: 'vi',
2019
2107
  i: 16,
2020
2108
  llmKnowledge: 82,
@@ -2023,10 +2111,12 @@ const LANGUAGES = {
2023
2111
  en: 'Vietnamese',
2024
2112
  es: 'Vietnamita',
2025
2113
  },
2114
+ status: 'commingsoon',
2026
2115
  },
2027
2116
  id: {
2028
2117
  nativeName: 'Bahasa Indonesia',
2029
2118
  flag: '🇮🇩',
2119
+ flagImg: 'assets/flags/id.svg',
2030
2120
  code: 'id',
2031
2121
  i: 17,
2032
2122
  llmKnowledge: 81,
@@ -2035,10 +2125,12 @@ const LANGUAGES = {
2035
2125
  en: 'Indonesian',
2036
2126
  es: 'Indonesio',
2037
2127
  },
2128
+ status: 'commingsoon',
2038
2129
  },
2039
2130
  da: {
2040
2131
  nativeName: 'Dansk',
2041
2132
  flag: '🇩🇰',
2133
+ flagImg: 'assets/flags/dk.svg',
2042
2134
  code: 'da',
2043
2135
  i: 18,
2044
2136
  llmKnowledge: 80,
@@ -2047,10 +2139,12 @@ const LANGUAGES = {
2047
2139
  en: 'Danish',
2048
2140
  es: 'Danés',
2049
2141
  },
2142
+ status: 'commingsoon',
2050
2143
  },
2051
2144
  no: {
2052
2145
  nativeName: 'Norsk',
2053
2146
  flag: '🇳🇴',
2147
+ flagImg: 'assets/flags/no.svg',
2054
2148
  code: 'no',
2055
2149
  i: 19,
2056
2150
  llmKnowledge: 79,
@@ -2059,10 +2153,12 @@ const LANGUAGES = {
2059
2153
  en: 'Norwegian',
2060
2154
  es: 'Noruego',
2061
2155
  },
2156
+ status: 'commingsoon',
2062
2157
  },
2063
2158
  fi: {
2064
2159
  nativeName: 'Suomi',
2065
2160
  flag: '🇫🇮',
2161
+ flagImg: 'assets/flags/fi.svg',
2066
2162
  code: 'fi',
2067
2163
  i: 20,
2068
2164
  llmKnowledge: 78,
@@ -2071,10 +2167,12 @@ const LANGUAGES = {
2071
2167
  en: 'Finnish',
2072
2168
  es: 'Finlandés',
2073
2169
  },
2170
+ status: 'commingsoon',
2074
2171
  },
2075
2172
  cs: {
2076
2173
  nativeName: 'Čeština',
2077
2174
  flag: '🇨🇿',
2175
+ flagImg: 'assets/flags/cz.svg',
2078
2176
  code: 'cs',
2079
2177
  i: 21,
2080
2178
  llmKnowledge: 77,
@@ -2083,10 +2181,12 @@ const LANGUAGES = {
2083
2181
  en: 'Czech',
2084
2182
  es: 'Checo',
2085
2183
  },
2184
+ status: 'commingsoon',
2086
2185
  },
2087
2186
  el: {
2088
2187
  nativeName: 'Ελληνικά (Elliniká)',
2089
2188
  flag: '🇬🇷',
2189
+ flagImg: 'assets/flags/gr.svg',
2090
2190
  code: 'el',
2091
2191
  i: 22,
2092
2192
  llmKnowledge: 76,
@@ -2095,10 +2195,12 @@ const LANGUAGES = {
2095
2195
  en: 'Greek',
2096
2196
  es: 'Griego',
2097
2197
  },
2198
+ status: 'commingsoon',
2098
2199
  },
2099
2200
  hu: {
2100
2201
  nativeName: 'Magyar',
2101
2202
  flag: '🇭🇺',
2203
+ flagImg: 'assets/flags/hu.svg',
2102
2204
  code: 'hu',
2103
2205
  i: 23,
2104
2206
  llmKnowledge: 75,
@@ -2107,10 +2209,12 @@ const LANGUAGES = {
2107
2209
  en: 'Hungarian',
2108
2210
  es: 'Húngaro',
2109
2211
  },
2212
+ status: 'commingsoon',
2110
2213
  },
2111
2214
  ro: {
2112
2215
  nativeName: 'Română',
2113
2216
  flag: '🇷🇴',
2217
+ flagImg: 'assets/flags/ro.svg',
2114
2218
  code: 'ro',
2115
2219
  i: 24,
2116
2220
  llmKnowledge: 74,
@@ -2119,10 +2223,12 @@ const LANGUAGES = {
2119
2223
  en: 'Romanian',
2120
2224
  es: 'Rumano',
2121
2225
  },
2226
+ status: 'commingsoon',
2122
2227
  },
2123
2228
  uk: {
2124
2229
  nativeName: 'Українська (Ukrainska)',
2125
2230
  flag: '🇺🇦',
2231
+ flagImg: 'assets/flags/ua.svg',
2126
2232
  code: 'uk',
2127
2233
  i: 25,
2128
2234
  llmKnowledge: 73,
@@ -2131,10 +2237,12 @@ const LANGUAGES = {
2131
2237
  en: 'Ukrainian',
2132
2238
  es: 'Ucraniano',
2133
2239
  },
2240
+ status: 'commingsoon',
2134
2241
  },
2135
2242
  he: {
2136
2243
  nativeName: 'עברית (Ivrit)',
2137
2244
  flag: '🇮🇱',
2245
+ flagImg: 'assets/flags/il.svg',
2138
2246
  code: 'he',
2139
2247
  i: 26,
2140
2248
  llmKnowledge: 72,
@@ -2143,10 +2251,12 @@ const LANGUAGES = {
2143
2251
  en: 'Hebrew',
2144
2252
  es: 'Hebreo',
2145
2253
  },
2254
+ status: 'commingsoon',
2146
2255
  },
2147
2256
  th: {
2148
2257
  nativeName: 'ภาษาไทย (Phasa Thai)',
2149
2258
  flag: '🇹🇭',
2259
+ flagImg: 'assets/flags/th.svg',
2150
2260
  code: 'th',
2151
2261
  i: 27,
2152
2262
  llmKnowledge: 71,
@@ -2155,10 +2265,12 @@ const LANGUAGES = {
2155
2265
  en: 'Thai',
2156
2266
  es: 'Tailandés',
2157
2267
  },
2268
+ status: 'commingsoon',
2158
2269
  },
2159
2270
  hi: {
2160
2271
  nativeName: 'हिन्दी (Hindī)',
2161
2272
  flag: '🇮🇳',
2273
+ flagImg: 'assets/flags/in.svg',
2162
2274
  code: 'hi',
2163
2275
  i: 28,
2164
2276
  llmKnowledge: 70,
@@ -2167,10 +2279,12 @@ const LANGUAGES = {
2167
2279
  en: 'Hindi',
2168
2280
  es: 'Hindi',
2169
2281
  },
2282
+ status: 'commingsoon',
2170
2283
  },
2171
2284
  ca: {
2172
2285
  nativeName: 'Català',
2173
2286
  flag: '🇪🇸',
2287
+ flagImg: 'assets/flags/es.svg',
2174
2288
  code: 'ca',
2175
2289
  i: 29,
2176
2290
  llmKnowledge: 69,
@@ -2179,10 +2293,12 @@ const LANGUAGES = {
2179
2293
  en: 'Catalan',
2180
2294
  es: 'Catalán',
2181
2295
  },
2296
+ status: 'commingsoon',
2182
2297
  },
2183
2298
  bg: {
2184
2299
  nativeName: 'Български (Balgarski)',
2185
2300
  flag: '🇧🇬',
2301
+ flagImg: 'assets/flags/bg.svg',
2186
2302
  code: 'bg',
2187
2303
  i: 30,
2188
2304
  llmKnowledge: 68,
@@ -2191,10 +2307,40 @@ const LANGUAGES = {
2191
2307
  en: 'Bulgarian',
2192
2308
  es: 'Búlgaro',
2193
2309
  },
2310
+ status: 'commingsoon',
2311
+ },
2312
+ eo: {
2313
+ nativeName: 'Esperanto',
2314
+ flag: '🇺🇳', // Usando la bandera de la ONU por su naturaleza internacional
2315
+ flagImg: 'assets/flags/eo.svg',
2316
+ code: 'eo',
2317
+ i: 59,
2318
+ llmKnowledge: 90,
2319
+ countries: ['Worldwide (constructed language)'],
2320
+ translations: {
2321
+ en: 'Esperanto',
2322
+ es: 'Esperanto',
2323
+ },
2324
+ status: 'commingsoon',
2325
+ },
2326
+ ia: {
2327
+ nativeName: 'Interlingua',
2328
+ flag: '🇺🇳', // Usando la bandera de la ONU por su naturaleza internacional
2329
+ flagImg: 'assets/flags/ia.svg',
2330
+ code: 'ia',
2331
+ i: 60,
2332
+ llmKnowledge: 85,
2333
+ countries: ['Worldwide (constructed language)'],
2334
+ translations: {
2335
+ en: 'Interlingua',
2336
+ es: 'Interlingua',
2337
+ },
2338
+ status: 'commingsoon',
2194
2339
  },
2195
2340
  hr: {
2196
2341
  nativeName: 'Hrvatski',
2197
2342
  flag: '🇭🇷',
2343
+ flagImg: 'assets/flags/hr.svg',
2198
2344
  code: 'hr',
2199
2345
  i: 31,
2200
2346
  llmKnowledge: 67,
@@ -2203,10 +2349,12 @@ const LANGUAGES = {
2203
2349
  en: 'Croatian',
2204
2350
  es: 'Croata',
2205
2351
  },
2352
+ status: 'commingsoon',
2206
2353
  },
2207
2354
  sk: {
2208
2355
  nativeName: 'Slovenčina',
2209
2356
  flag: '🇸🇰',
2357
+ flagImg: 'assets/flags/sk.svg',
2210
2358
  code: 'sk',
2211
2359
  i: 32,
2212
2360
  llmKnowledge: 66,
@@ -2215,10 +2363,12 @@ const LANGUAGES = {
2215
2363
  en: 'Slovak',
2216
2364
  es: 'Eslovaco',
2217
2365
  },
2366
+ status: 'commingsoon',
2218
2367
  },
2219
2368
  fil: {
2220
2369
  nativeName: 'Filipino',
2221
2370
  flag: '🇵🇭',
2371
+ flagImg: 'assets/flags/ph.svg',
2222
2372
  code: 'fil',
2223
2373
  i: 33,
2224
2374
  llmKnowledge: 65,
@@ -2227,11 +2377,13 @@ const LANGUAGES = {
2227
2377
  en: 'Filipino',
2228
2378
  es: 'Filipino',
2229
2379
  },
2380
+ status: 'commingsoon',
2230
2381
  },
2231
2382
  tl: {
2232
2383
  // Tagalog often used as base for Filipino, but distinct ISO code
2233
2384
  nativeName: 'Tagalog',
2234
2385
  flag: '🇵🇭',
2386
+ flagImg: 'assets/flags/ph.svg',
2235
2387
  code: 'tl',
2236
2388
  i: 34,
2237
2389
  llmKnowledge: 64,
@@ -2240,10 +2392,12 @@ const LANGUAGES = {
2240
2392
  en: 'Tagalog',
2241
2393
  es: 'Tagalo',
2242
2394
  },
2395
+ status: 'commingsoon',
2243
2396
  },
2244
2397
  lt: {
2245
2398
  nativeName: 'Lietuvių',
2246
2399
  flag: '🇱🇹',
2400
+ flagImg: 'assets/flags/lt.svg',
2247
2401
  code: 'lt',
2248
2402
  i: 35,
2249
2403
  llmKnowledge: 63,
@@ -2252,10 +2406,12 @@ const LANGUAGES = {
2252
2406
  en: 'Lithuanian',
2253
2407
  es: 'Lituano',
2254
2408
  },
2409
+ status: 'commingsoon',
2255
2410
  },
2256
2411
  lv: {
2257
2412
  nativeName: 'Latviešu',
2258
2413
  flag: '🇱🇻',
2414
+ flagImg: 'assets/flags/lv.svg',
2259
2415
  code: 'lv',
2260
2416
  i: 36,
2261
2417
  llmKnowledge: 62,
@@ -2264,10 +2420,12 @@ const LANGUAGES = {
2264
2420
  en: 'Latvian',
2265
2421
  es: 'Letón',
2266
2422
  },
2423
+ status: 'commingsoon',
2267
2424
  },
2268
2425
  sl: {
2269
2426
  nativeName: 'Slovenščina',
2270
2427
  flag: '🇸🇮',
2428
+ flagImg: 'assets/flags/si.svg',
2271
2429
  code: 'sl',
2272
2430
  i: 37,
2273
2431
  llmKnowledge: 61,
@@ -2276,10 +2434,12 @@ const LANGUAGES = {
2276
2434
  en: 'Slovenian',
2277
2435
  es: 'Esloveno',
2278
2436
  },
2437
+ status: 'commingsoon',
2279
2438
  },
2280
2439
  et: {
2281
2440
  nativeName: 'Eesti',
2282
2441
  flag: '🇪🇪',
2442
+ flagImg: 'assets/flags/ee.svg',
2283
2443
  code: 'et',
2284
2444
  i: 38,
2285
2445
  llmKnowledge: 60,
@@ -2288,10 +2448,12 @@ const LANGUAGES = {
2288
2448
  en: 'Estonian',
2289
2449
  es: 'Estonio',
2290
2450
  },
2451
+ status: 'commingsoon',
2291
2452
  },
2292
2453
  ms: {
2293
2454
  nativeName: 'Bahasa Melayu',
2294
2455
  flag: '🇲🇾',
2456
+ flagImg: 'assets/flags/my.svg',
2295
2457
  code: 'ms',
2296
2458
  i: 39,
2297
2459
  llmKnowledge: 59,
@@ -2300,10 +2462,12 @@ const LANGUAGES = {
2300
2462
  en: 'Malay',
2301
2463
  es: 'Malayo',
2302
2464
  },
2465
+ status: 'commingsoon',
2303
2466
  },
2304
2467
  sw: {
2305
2468
  nativeName: 'Kiswahili',
2306
2469
  flag: '🇹🇿',
2470
+ flagImg: 'assets/flags/tz.svg',
2307
2471
  code: 'sw',
2308
2472
  i: 40,
2309
2473
  llmKnowledge: 58,
@@ -2312,10 +2476,12 @@ const LANGUAGES = {
2312
2476
  en: 'Swahili',
2313
2477
  es: 'Suajili',
2314
2478
  },
2479
+ status: 'commingsoon',
2315
2480
  },
2316
2481
  fa: {
2317
2482
  nativeName: 'فارسی (Fārsī)',
2318
2483
  flag: '🇮🇷',
2484
+ flagImg: 'assets/flags/ir.svg',
2319
2485
  code: 'fa',
2320
2486
  i: 41,
2321
2487
  llmKnowledge: 57,
@@ -2324,10 +2490,12 @@ const LANGUAGES = {
2324
2490
  en: 'Persian/Farsi',
2325
2491
  es: 'Persa',
2326
2492
  },
2493
+ status: 'commingsoon',
2327
2494
  },
2328
2495
  bn: {
2329
2496
  nativeName: 'বাংলা (Bangla)',
2330
2497
  flag: '🇧🇩',
2498
+ flagImg: 'assets/flags/bd.svg',
2331
2499
  code: 'bn',
2332
2500
  i: 42,
2333
2501
  llmKnowledge: 56,
@@ -2336,10 +2504,12 @@ const LANGUAGES = {
2336
2504
  en: 'Bengali',
2337
2505
  es: 'Bengalí',
2338
2506
  },
2507
+ status: 'commingsoon',
2339
2508
  },
2340
2509
  ur: {
2341
2510
  nativeName: 'اردو (Urdū)',
2342
2511
  flag: '🇵🇰',
2512
+ flagImg: 'assets/flags/pk.svg',
2343
2513
  code: 'ur',
2344
2514
  i: 43,
2345
2515
  llmKnowledge: 55,
@@ -2348,10 +2518,12 @@ const LANGUAGES = {
2348
2518
  en: 'Urdu',
2349
2519
  es: 'Urdu',
2350
2520
  },
2521
+ status: 'commingsoon',
2351
2522
  },
2352
2523
  sr: {
2353
2524
  nativeName: 'Српски (Srpski)',
2354
2525
  flag: '🇷🇸',
2526
+ flagImg: 'assets/flags/rs.svg',
2355
2527
  code: 'sr',
2356
2528
  i: 44,
2357
2529
  llmKnowledge: 54,
@@ -2360,10 +2532,12 @@ const LANGUAGES = {
2360
2532
  en: 'Serbian',
2361
2533
  es: 'Serbio',
2362
2534
  },
2535
+ status: 'commingsoon',
2363
2536
  },
2364
2537
  is: {
2365
2538
  nativeName: 'Íslenska',
2366
2539
  flag: '🇮🇸',
2540
+ flagImg: 'assets/flags/is.svg',
2367
2541
  code: 'is',
2368
2542
  i: 45,
2369
2543
  llmKnowledge: 53,
@@ -2372,10 +2546,12 @@ const LANGUAGES = {
2372
2546
  en: 'Icelandic',
2373
2547
  es: 'Islandés',
2374
2548
  },
2549
+ status: 'commingsoon',
2375
2550
  },
2376
2551
  ta: {
2377
2552
  nativeName: 'தமிழ் (Tamiḻ)',
2378
2553
  flag: '🇱🇰',
2554
+ flagImg: 'assets/flags/lk.svg',
2379
2555
  code: 'ta',
2380
2556
  i: 46,
2381
2557
  llmKnowledge: 52,
@@ -2384,10 +2560,12 @@ const LANGUAGES = {
2384
2560
  en: 'Tamil',
2385
2561
  es: 'Tamil',
2386
2562
  },
2563
+ status: 'commingsoon',
2387
2564
  },
2388
2565
  mr: {
2389
2566
  nativeName: 'मराठी (Marāṭhī)',
2390
2567
  flag: '🇮🇳',
2568
+ flagImg: 'assets/flags/in.svg',
2391
2569
  code: 'mr',
2392
2570
  i: 47,
2393
2571
  llmKnowledge: 51,
@@ -2396,10 +2574,12 @@ const LANGUAGES = {
2396
2574
  en: 'Marathi',
2397
2575
  es: 'Maratí',
2398
2576
  },
2577
+ status: 'commingsoon',
2399
2578
  },
2400
2579
  my: {
2401
2580
  nativeName: 'မြန်မာဘာသာ (Myanmar)',
2402
2581
  flag: '🇲🇲',
2582
+ flagImg: 'assets/flags/mm.svg',
2403
2583
  code: 'my',
2404
2584
  i: 48,
2405
2585
  llmKnowledge: 50,
@@ -2408,10 +2588,12 @@ const LANGUAGES = {
2408
2588
  en: 'Burmese',
2409
2589
  es: 'Birmano',
2410
2590
  },
2591
+ status: 'commingsoon',
2411
2592
  },
2412
2593
  cy: {
2413
2594
  nativeName: 'Cymraeg',
2414
2595
  flag: '🏴󠁧󠁢󠁷󠁬󠁳󠁿',
2596
+ flagImg: 'assets/flags/cy.svg',
2415
2597
  code: 'cy',
2416
2598
  i: 49,
2417
2599
  llmKnowledge: 49,
@@ -2420,10 +2602,12 @@ const LANGUAGES = {
2420
2602
  en: 'Welsh',
2421
2603
  es: 'Galés',
2422
2604
  },
2605
+ status: 'commingsoon',
2423
2606
  },
2424
2607
  ha: {
2425
2608
  nativeName: 'Hausa',
2426
2609
  flag: '🇳🇬',
2610
+ flagImg: 'assets/flags/ng.svg',
2427
2611
  code: 'ha',
2428
2612
  i: 50,
2429
2613
  llmKnowledge: 48,
@@ -2432,10 +2616,12 @@ const LANGUAGES = {
2432
2616
  en: 'Hausa',
2433
2617
  es: 'Hausa',
2434
2618
  },
2619
+ status: 'commingsoon',
2435
2620
  },
2436
2621
  eu: {
2437
2622
  nativeName: 'Euskara',
2438
2623
  flag: '🇪🇸',
2624
+ flagImg: 'assets/flags/es.svg',
2439
2625
  code: 'eu',
2440
2626
  i: 51,
2441
2627
  llmKnowledge: 47,
@@ -2444,10 +2630,12 @@ const LANGUAGES = {
2444
2630
  en: 'Basque',
2445
2631
  es: 'Vasco',
2446
2632
  },
2633
+ status: 'commingsoon',
2447
2634
  },
2448
2635
  ga: {
2449
2636
  nativeName: 'Gaeilge',
2450
2637
  flag: '🇮🇪',
2638
+ flagImg: 'assets/flags/ie.svg',
2451
2639
  code: 'ga',
2452
2640
  i: 52,
2453
2641
  llmKnowledge: 46,
@@ -2456,10 +2644,12 @@ const LANGUAGES = {
2456
2644
  en: 'Irish',
2457
2645
  es: 'Irlandés',
2458
2646
  },
2647
+ status: 'commingsoon',
2459
2648
  },
2460
2649
  sd: {
2461
2650
  nativeName: 'سنڌي (Sindhī)',
2462
2651
  flag: '🇵🇰',
2652
+ flagImg: 'assets/flags/pk.svg',
2463
2653
  code: 'sd',
2464
2654
  i: 53,
2465
2655
  llmKnowledge: 45,
@@ -2468,10 +2658,12 @@ const LANGUAGES = {
2468
2658
  en: 'Sindhi',
2469
2659
  es: 'Sindi',
2470
2660
  },
2661
+ status: 'commingsoon',
2471
2662
  },
2472
2663
  am: {
2473
2664
  nativeName: 'አማርኛ (Amarəñña)',
2474
2665
  flag: '🇪🇹',
2666
+ flagImg: 'assets/flags/et.svg',
2475
2667
  code: 'am',
2476
2668
  i: 54,
2477
2669
  llmKnowledge: 44,
@@ -2480,10 +2672,12 @@ const LANGUAGES = {
2480
2672
  en: 'Amharic',
2481
2673
  es: 'Amárico',
2482
2674
  },
2675
+ status: 'commingsoon',
2483
2676
  },
2484
2677
  jv: {
2485
2678
  nativeName: 'Basa Jawa',
2486
2679
  flag: '🇮🇩',
2680
+ flagImg: 'assets/flags/id.svg',
2487
2681
  code: 'jv',
2488
2682
  i: 55,
2489
2683
  llmKnowledge: 43,
@@ -2492,10 +2686,12 @@ const LANGUAGES = {
2492
2686
  en: 'Javanese',
2493
2687
  es: 'Javanés',
2494
2688
  },
2689
+ status: 'commingsoon',
2495
2690
  },
2496
2691
  km: {
2497
2692
  nativeName: 'ភាសាខ្មែរ (Phéasa Khmér)',
2498
2693
  flag: '🇰🇭',
2694
+ flagImg: 'assets/flags/kh.svg',
2499
2695
  code: 'km',
2500
2696
  i: 56,
2501
2697
  llmKnowledge: 42,
@@ -2504,10 +2700,12 @@ const LANGUAGES = {
2504
2700
  en: 'Khmer',
2505
2701
  es: 'Jemer',
2506
2702
  },
2703
+ status: 'commingsoon',
2507
2704
  },
2508
2705
  yo: {
2509
2706
  nativeName: 'Yorùbá',
2510
2707
  flag: '🇳🇬',
2708
+ flagImg: 'assets/flags/ng.svg',
2511
2709
  code: 'yo',
2512
2710
  i: 57,
2513
2711
  llmKnowledge: 41,
@@ -2516,10 +2714,12 @@ const LANGUAGES = {
2516
2714
  en: 'Yoruba',
2517
2715
  es: 'Yoruba',
2518
2716
  },
2717
+ status: 'commingsoon',
2519
2718
  },
2520
2719
  gl: {
2521
2720
  nativeName: 'Galego',
2522
2721
  flag: '🇪🇸',
2722
+ flagImg: 'assets/flags/es.svg',
2523
2723
  code: 'gl',
2524
2724
  i: 58,
2525
2725
  llmKnowledge: 40,
@@ -2528,8 +2728,58 @@ const LANGUAGES = {
2528
2728
  en: 'Galician',
2529
2729
  es: 'Gallego',
2530
2730
  },
2731
+ status: 'commingsoon',
2531
2732
  },
2532
2733
  };
2734
+ function getLangDesc(langCode, lang) {
2735
+ return LANGUAGES[langCode]?.translations[lang] || langCode;
2736
+ }
2737
+ function getSupportedLanguageOptions(lang = 'es') {
2738
+ return SUPPORTED_LANGUAGES.map((langCode) => ({
2739
+ value: langCode,
2740
+ label: getLangDesc(langCode, lang),
2741
+ }));
2742
+ }
2743
+
2744
+ const MoodStateOptions = [
2745
+ // Emociones básicas y fundamentales
2746
+ { value: 'happy', label: '1) Alegría - Felicidad, gozo, satisfacción', emoji: '😊' },
2747
+ { value: 'sad', label: '2) Tristeza - Pena, melancolía, desánimo', emoji: '😢' },
2748
+ { value: 'angry', label: '3) Enojo - Ira, furia, irritación', emoji: '😠' },
2749
+ { value: 'fear', label: '4) Miedo - Temor, pánico, terror', emoji: '😨' },
2750
+ { value: 'surprised', label: '5) Sorpresa - Asombro, desconcierto', emoji: '😮' },
2751
+ { value: 'disgusted', label: '6) Asco - Repugnancia, aversión', emoji: '🤢' },
2752
+ // { value: 'excited', label: '27) Entusiasmo - Emoción, euforia, anticipación' },
2753
+ // Emociones sociales y autoconscientes
2754
+ { value: 'proud', label: '7) Orgullo - Satisfacción por logros propios o ajenos', emoji: '😎' },
2755
+ { value: 'ashamed', label: '8) Vergüenza - Humillado', emoji: '😰' },
2756
+ { value: 'guilty', label: '9) Culpa - Remordimiento, arrepentimiento', emoji: '😔' },
2757
+ { value: 'jealous', label: '10) Celos - Envidia, desconfianza', emoji: '😒' },
2758
+ { value: 'love', label: '11) Amor - Cariño, afecto, ternura', emoji: '❤️' },
2759
+ // { value: 'grateful', label: '12) Agradecimiento - Gratitud, aprecio' },
2760
+ { value: 'contempt', label: '30) Desprecio - Desdén, menosprecio', emoji: '🙃' },
2761
+ { value: 'comic', label: '32) Cómico - Divertido, gracioso', emoji: '😂' },
2762
+ { value: 'blushing', label: '33) Apenado - Sonrojado, avergonzado', emoji: '😳' },
2763
+ // Estados cognitivos y mentales
2764
+ // { value: 'neutral', label: '13) Neutral - Calma, imparcialidad' },
2765
+ { value: 'confused', label: '14) Confusión - Desorientación, perplejidad', emoji: '😕' },
2766
+ { value: 'curious', label: '15) Curiosidad - Interés, intriga, exploración', emoji: '🤔' },
2767
+ { value: 'bored', label: '16) Aburrimiento - Desinterés, tedio, apatía', emoji: '😑' },
2768
+ // { value: 'hopeful', label: '17) Esperanza - Optimismo, fe, expectativa positiva' },
2769
+ { value: 'frustrated', label: '18) Frustración - Decepción, impotencia', emoji: '😤' },
2770
+ { value: 'overwhelmed', label: '19) Abrumado - Agobio, exceso de carga', emoji: '😫' },
2771
+ // { value: 'lonely', label: '20) Soledad - Aislamiento, desamparo' },
2772
+ { value: 'focused', label: '21) Concentración - Enfoque, atención plena', emoji: '🤓' },
2773
+ { value: 'challenge', label: '28) Desafío - Reto, provocación, competitividad', emoji: '😏' },
2774
+ // { value: 'satisfied', label: '29) Satisfacción - Contentamiento, plenitud' },
2775
+ { value: 'serious', label: '31) Serenidad - Actitud seria', emoji: '😐' },
2776
+ // Estados corporales y fisiológicos
2777
+ { value: 'sleepy', label: '22) Cansancio - Somnolencia, agotamiento, fatiga', emoji: '😴' },
2778
+ // { value: 'energetic', label: '23) Energía - Vitalidad, vigor, dinamismo' },
2779
+ { value: 'horny', label: '24) Excitación sexual - Lujuria, deseo sexual', emoji: '😈' },
2780
+ { value: 'anxious', label: '25) Ansiedad - Nerviosismo, preocupación, inquietud', emoji: '😟' },
2781
+ { value: 'relaxed', label: '26) Relajación - Paz, serenidad, tranquilidad', emoji: '😌' },
2782
+ ];
2533
2783
 
2534
2784
  /*
2535
2785
  * Public API Surface of core-components
@@ -2540,5 +2790,5 @@ const LANGUAGES = {
2540
2790
  * Generated bundle index. Do not edit.
2541
2791
  */
2542
2792
 
2543
- export { AudioSpeed, AudioSpeedReverse, ChatUserSettings, ConfirmComponent, ConfirmService, DCFilterBarComponent, DCProgressToastComponent, DcAuditableViewerComponent, DcExtensionsViewerComponent, DcLearnableViewerComponent, DcManageableViewerComponent, DcReactionsViewerComponent, EModelQuality, EmptyStateComponent, EntityBaseFormComponent, EntityBaseListComponent, EntityCommunicationService, GetPathPipe, HTTP_CORE_CONFIG, HttpCoreService, IAIModel, LANGUAGES, LoadingBarComponent, LoadingBarService, ModelQualityOptions, OptionValue, PaginationBase, PromptService, QuickTableComponent, TOAST_ALERTS_TOKEN, ToastAlertsAbstractService, availibleFilters, extractJsonFromString, formatCamelCaseString, provideToastAlert, sortOptions, sortTypes };
2793
+ export { AudioSpeed, AudioSpeedReverse, ChatUserSettings, ConfirmComponent, ConfirmService, DCFilterBarComponent, DCProgressToastComponent, DcAuditableViewerComponent, DcExtensionsViewerComponent, DcLearnableViewerComponent, DcManageableViewerComponent, DcReactionsViewerComponent, EModelQuality, EmptyStateComponent, EntityBaseFormComponent, EntityBaseListComponent, EntityCommunicationService, GetPathPipe, HTTP_CORE_CONFIG, HttpCoreService, IAIModel, LANGUAGES, LoadingBarComponent, LoadingBarService, ModelQualityOptions, MoodStateOptions, OptionValue, PaginationBase, PromptService, QuickTableComponent, SUPPORTED_LANGUAGES, TOAST_ALERTS_TOKEN, ToastAlertsAbstractService, UiStateService, availibleFilters, extractJsonFromString, formatCamelCaseString, getLangDesc, getSupportedLanguageOptions, provideToastAlert, sortOptions, sortTypes };
2544
2794
  //# sourceMappingURL=dataclouder-ngx-core.mjs.map