@solcre-org/core-ui 2.12.1 → 2.12.2

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.
@@ -63,6 +63,7 @@
63
63
  display: -webkit-box;
64
64
  -webkit-line-clamp: 2;
65
65
  -webkit-box-orient: vertical;
66
+ overflow-wrap: anywhere;
66
67
  }
67
68
 
68
69
  .c-attachments__pic{
@@ -10831,12 +10831,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
10831
10831
  // Este archivo es generado automáticamente por scripts/update-version.js
10832
10832
  // No edites manualmente este archivo
10833
10833
  const VERSION = {
10834
- full: '2.12.1',
10834
+ full: '2.12.2',
10835
10835
  major: 2,
10836
10836
  minor: 12,
10837
- patch: 1,
10838
- timestamp: '2025-09-02T20:43:25.016Z',
10839
- buildDate: '2/9/2025'
10837
+ patch: 2,
10838
+ timestamp: '2025-09-03T13:16:06.353Z',
10839
+ buildDate: '3/9/2025'
10840
10840
  };
10841
10841
 
10842
10842
  class MainNavComponent {
@@ -12279,460 +12279,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
12279
12279
  }]
12280
12280
  }] });
12281
12281
 
12282
- var SliderActionType;
12283
- (function (SliderActionType) {
12284
- SliderActionType["CLICK"] = "click";
12285
- SliderActionType["CHANGE"] = "change";
12286
- SliderActionType["BEFORE_CHANGE"] = "beforeChange";
12287
- SliderActionType["AFTER_CHANGE"] = "afterChange";
12288
- SliderActionType["EDGE"] = "edge";
12289
- SliderActionType["SWIPE"] = "swipe";
12290
- })(SliderActionType || (SliderActionType = {}));
12291
-
12292
- class SliderService {
12293
- currentIndex = signal(0);
12294
- items = signal([]);
12295
- config = signal({});
12296
- getCurrentIndex = computed(() => this.currentIndex());
12297
- getItems = computed(() => this.items());
12298
- getConfig = computed(() => this.config());
12299
- getTotalItems = computed(() => this.items().length);
12300
- getNavigation = computed(() => {
12301
- const current = this.currentIndex();
12302
- const total = this.items().length;
12303
- const infinite = this.config().infinite ?? false;
12304
- return {
12305
- currentIndex: current,
12306
- totalItems: total,
12307
- canGoPrev: infinite || current > 0,
12308
- canGoNext: infinite || current < total - 1
12309
- };
12310
- });
12311
- getCurrentItem = computed(() => {
12312
- const items = this.items();
12313
- const index = this.currentIndex();
12314
- return items[index] || null;
12315
- });
12316
- setItems(items) {
12317
- this.items.set(items);
12318
- if (this.currentIndex() >= items.length) {
12319
- this.currentIndex.set(Math.max(0, items.length - 1));
12320
- }
12321
- }
12322
- setConfig(config) {
12323
- this.config.set(config);
12324
- }
12325
- goToSlide(index) {
12326
- const items = this.items();
12327
- if (index >= 0 && index < items.length) {
12328
- this.currentIndex.set(index);
12329
- }
12330
- }
12331
- nextSlide() {
12332
- const current = this.currentIndex();
12333
- const total = this.items().length;
12334
- const infinite = this.config().infinite ?? false;
12335
- if (infinite) {
12336
- this.currentIndex.set((current + 1) % total);
12337
- }
12338
- else if (current < total - 1) {
12339
- this.currentIndex.set(current + 1);
12340
- }
12341
- }
12342
- prevSlide() {
12343
- const current = this.currentIndex();
12344
- const total = this.items().length;
12345
- const infinite = this.config().infinite ?? false;
12346
- if (infinite) {
12347
- this.currentIndex.set(current === 0 ? total - 1 : current - 1);
12348
- }
12349
- else if (current > 0) {
12350
- this.currentIndex.set(current - 1);
12351
- }
12352
- }
12353
- reset() {
12354
- this.currentIndex.set(0);
12355
- }
12356
- getSlidesByConfig() {
12357
- const items = this.items();
12358
- const slidesToShow = this.config().slidesToShow ?? 1;
12359
- const currentIndex = this.currentIndex();
12360
- if (slidesToShow === 1) {
12361
- return [items[currentIndex]].filter(Boolean);
12362
- }
12363
- const result = [];
12364
- for (let i = 0; i < slidesToShow; i++) {
12365
- const index = (currentIndex + i) % items.length;
12366
- if (items[index]) {
12367
- result.push(items[index]);
12368
- }
12369
- }
12370
- return result;
12371
- }
12372
- getThumbnails() {
12373
- return this.items().map(item => ({
12374
- ...item,
12375
- imageUrl: item.thumbnailUrl || item.imageUrl
12376
- }));
12377
- }
12378
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SliderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12379
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SliderService, providedIn: 'root' });
12380
- }
12381
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SliderService, decorators: [{
12382
- type: Injectable,
12383
- args: [{
12384
- providedIn: 'root'
12385
- }]
12386
- }] });
12387
-
12388
- class GenericSliderComponent {
12389
- sliderService = inject(SliderService);
12390
- autoPlayInterval = null;
12391
- items = input([]);
12392
- config = input({
12393
- autoPlay: false,
12394
- autoPlayInterval: 3000,
12395
- showDots: true,
12396
- showArrows: true,
12397
- showThumbnails: false,
12398
- infinite: true,
12399
- slidesToShow: 1,
12400
- slidesToScroll: 1,
12401
- centerMode: false,
12402
- height: '400px',
12403
- thumbnailHeight: '80px',
12404
- showPreview: true,
12405
- enableKeyboard: true,
12406
- swipeToSlide: true,
12407
- pauseOnHover: true,
12408
- showCounter: false,
12409
- lazyLoad: true,
12410
- fadeEffect: false,
12411
- verticalThumbnails: false
12412
- });
12413
- actionTriggered = output();
12414
- slideChanged = output();
12415
- isHovered = signal(false);
12416
- isDragging = signal(false);
12417
- startX = signal(0);
12418
- currentX = signal(0);
12419
- currentIndex = computed(() => this.sliderService.getCurrentIndex());
12420
- totalItems = computed(() => this.sliderService.getTotalItems());
12421
- currentItem = computed(() => this.sliderService.getCurrentItem());
12422
- navigation = computed(() => this.sliderService.getNavigation());
12423
- visibleSlides = computed(() => this.sliderService.getSlidesByConfig());
12424
- thumbnails = computed(() => this.sliderService.getThumbnails());
12425
- mergedConfig = computed(() => ({
12426
- ...this.config(),
12427
- ...this.sliderService.getConfig()
12428
- }));
12429
- canAutoPlay = computed(() => {
12430
- const config = this.mergedConfig();
12431
- return config.autoPlay && !this.isHovered() && !this.isDragging();
12432
- });
12433
- showDots = computed(() => this.mergedConfig().showDots && this.totalItems() > 1);
12434
- showArrows = computed(() => this.mergedConfig().showArrows && this.totalItems() > 1);
12435
- showThumbnails = computed(() => this.mergedConfig().showThumbnails && this.totalItems() > 1);
12436
- showCounter = computed(() => this.mergedConfig().showCounter && this.totalItems() > 1);
12437
- containerStyles = computed(() => ({
12438
- height: this.mergedConfig().height || '400px',
12439
- position: 'relative',
12440
- overflow: 'hidden'
12441
- }));
12442
- slideStyles = computed(() => {
12443
- const config = this.mergedConfig();
12444
- const slidesToShow = config.slidesToShow || 1;
12445
- const currentIndex = this.currentIndex();
12446
- const totalItems = this.totalItems();
12447
- const totalWidth = (totalItems / slidesToShow) * 100;
12448
- const slideWidth = 100 / slidesToShow;
12449
- const translateX = -(currentIndex * slideWidth);
12450
- return {
12451
- transform: `translateX(${translateX}%)`,
12452
- transition: this.isDragging() ? 'none' : 'transform 0.3s ease-in-out',
12453
- display: 'flex',
12454
- width: `${totalWidth}%`
12455
- };
12456
- });
12457
- prevButtonConfig = computed(() => ({
12458
- type: ButtonType.PRIMARY,
12459
- context: ButtonContext.DEFAULT,
12460
- size: ButtonSize.SMALL,
12461
- text: '',
12462
- icon: 'icon-arrow-left',
12463
- disabled: !this.navigation().canGoPrev,
12464
- ariaLabel: 'slider.previous'
12465
- }));
12466
- nextButtonConfig = computed(() => ({
12467
- type: ButtonType.PRIMARY,
12468
- context: ButtonContext.DEFAULT,
12469
- size: ButtonSize.SMALL,
12470
- text: '',
12471
- icon: 'icon-arrow-right',
12472
- disabled: !this.navigation().canGoNext,
12473
- ariaLabel: 'slider.next'
12474
- }));
12475
- constructor() {
12476
- effect(() => {
12477
- this.sliderService.setItems(this.items());
12478
- });
12479
- effect(() => {
12480
- this.sliderService.setConfig(this.config());
12481
- });
12482
- effect(() => {
12483
- const currentIndex = this.currentIndex();
12484
- const currentItem = this.currentItem();
12485
- if (currentItem) {
12486
- this.slideChanged.emit({ currentIndex, currentItem });
12487
- }
12488
- });
12489
- effect(() => {
12490
- if (this.canAutoPlay()) {
12491
- this.startAutoPlay();
12492
- }
12493
- else {
12494
- this.stopAutoPlay();
12495
- }
12496
- });
12497
- }
12498
- ngOnInit() {
12499
- this.setupAutoPlay();
12500
- }
12501
- ngOnDestroy() {
12502
- this.stopAutoPlay();
12503
- }
12504
- onKeydown(event) {
12505
- if (!this.mergedConfig().enableKeyboard)
12506
- return;
12507
- switch (event.key) {
12508
- case 'ArrowLeft':
12509
- event.preventDefault();
12510
- this.goToPrevious();
12511
- break;
12512
- case 'ArrowRight':
12513
- event.preventDefault();
12514
- this.goToNext();
12515
- break;
12516
- case ' ':
12517
- event.preventDefault();
12518
- this.toggleAutoPlay();
12519
- break;
12520
- case 'Home':
12521
- event.preventDefault();
12522
- this.goToSlide(0);
12523
- break;
12524
- case 'End':
12525
- event.preventDefault();
12526
- this.goToSlide(this.totalItems() - 1);
12527
- break;
12528
- }
12529
- }
12530
- goToSlide(index) {
12531
- const previousIndex = this.currentIndex();
12532
- this.sliderService.goToSlide(index);
12533
- this.emitAction(SliderActionType.CHANGE, this.currentItem(), index);
12534
- if (previousIndex !== index) {
12535
- this.emitAction(SliderActionType.AFTER_CHANGE, this.currentItem(), index);
12536
- }
12537
- }
12538
- goToNext() {
12539
- const config = this.mergedConfig();
12540
- const current = this.currentIndex();
12541
- const total = this.totalItems();
12542
- const slidesToShow = config.slidesToShow || 1;
12543
- const slidesToScroll = config.slidesToScroll || 1;
12544
- let nextIndex;
12545
- if (config.infinite) {
12546
- nextIndex = (current + slidesToScroll) % total;
12547
- }
12548
- else {
12549
- const maxIndex = Math.max(0, total - slidesToShow);
12550
- nextIndex = Math.min(current + slidesToScroll, maxIndex);
12551
- }
12552
- this.goToSlide(nextIndex);
12553
- }
12554
- goToPrevious() {
12555
- const config = this.mergedConfig();
12556
- const current = this.currentIndex();
12557
- const total = this.totalItems();
12558
- const slidesToScroll = config.slidesToScroll || 1;
12559
- let prevIndex;
12560
- if (config.infinite) {
12561
- prevIndex = current - slidesToScroll < 0 ? total - slidesToScroll : current - slidesToScroll;
12562
- }
12563
- else {
12564
- prevIndex = Math.max(current - slidesToScroll, 0);
12565
- }
12566
- this.goToSlide(prevIndex);
12567
- }
12568
- setupAutoPlay() {
12569
- if (this.mergedConfig().autoPlay) {
12570
- this.startAutoPlay();
12571
- }
12572
- }
12573
- startAutoPlay() {
12574
- this.stopAutoPlay();
12575
- if (this.canAutoPlay()) {
12576
- this.autoPlayInterval = setInterval(() => {
12577
- if (this.canAutoPlay()) {
12578
- this.goToNext();
12579
- }
12580
- }, this.mergedConfig().autoPlayInterval || 3000);
12581
- }
12582
- }
12583
- stopAutoPlay() {
12584
- if (this.autoPlayInterval) {
12585
- clearInterval(this.autoPlayInterval);
12586
- this.autoPlayInterval = null;
12587
- }
12588
- }
12589
- toggleAutoPlay() {
12590
- if (this.canAutoPlay()) {
12591
- this.stopAutoPlay();
12592
- }
12593
- else {
12594
- this.startAutoPlay();
12595
- }
12596
- }
12597
- onMouseEnter() {
12598
- if (this.mergedConfig().pauseOnHover) {
12599
- this.isHovered.set(true);
12600
- }
12601
- }
12602
- onMouseLeave() {
12603
- if (this.mergedConfig().pauseOnHover) {
12604
- this.isHovered.set(false);
12605
- }
12606
- }
12607
- onTouchStart(event) {
12608
- if (!this.mergedConfig().swipeToSlide)
12609
- return;
12610
- this.isDragging.set(true);
12611
- this.startX.set(event.touches[0].clientX);
12612
- }
12613
- onTouchMove(event) {
12614
- if (!this.isDragging() || !this.mergedConfig().swipeToSlide)
12615
- return;
12616
- this.currentX.set(event.touches[0].clientX);
12617
- event.preventDefault();
12618
- }
12619
- onTouchEnd() {
12620
- if (!this.isDragging() || !this.mergedConfig().swipeToSlide)
12621
- return;
12622
- const diffX = this.startX() - this.currentX();
12623
- const threshold = 50;
12624
- if (Math.abs(diffX) > threshold) {
12625
- if (diffX > 0) {
12626
- this.goToNext();
12627
- }
12628
- else {
12629
- this.goToPrevious();
12630
- }
12631
- this.emitAction(SliderActionType.SWIPE, this.currentItem(), this.currentIndex());
12632
- }
12633
- this.isDragging.set(false);
12634
- this.startX.set(0);
12635
- this.currentX.set(0);
12636
- }
12637
- onSlideClick(item, index) {
12638
- this.emitAction(SliderActionType.CLICK, item, index);
12639
- }
12640
- onDotClick(index) {
12641
- this.goToSlide(index);
12642
- }
12643
- onThumbnailClick(index) {
12644
- this.goToSlide(index);
12645
- }
12646
- emitAction(type, item, index) {
12647
- this.actionTriggered.emit({ type, item, index });
12648
- }
12649
- getSlideImage(item) {
12650
- return item.imageUrl || '';
12651
- }
12652
- getSlideAlt(item) {
12653
- return item.alt || item.title || `Slide ${this.currentIndex() + 1}`;
12654
- }
12655
- isActiveSlide(index) {
12656
- const config = this.mergedConfig();
12657
- const current = this.currentIndex();
12658
- const slidesToShow = config.slidesToShow || 1;
12659
- if (slidesToShow === 1) {
12660
- return index === current;
12661
- }
12662
- else {
12663
- return index >= current && index < current + slidesToShow;
12664
- }
12665
- }
12666
- isActiveDot(index) {
12667
- return index === this.currentIndex();
12668
- }
12669
- isActiveThumbnail(index) {
12670
- return index === this.currentIndex();
12671
- }
12672
- getCounterText() {
12673
- return `${this.currentIndex() + 1} / ${this.totalItems()}`;
12674
- }
12675
- getSlideWidth() {
12676
- const config = this.mergedConfig();
12677
- const slidesToShow = config.slidesToShow || 1;
12678
- const totalItems = this.totalItems();
12679
- const widthPercentage = (100 / totalItems);
12680
- return `${widthPercentage}%`;
12681
- }
12682
- getFileTypeIcon(fileType) {
12683
- const typeMap = {
12684
- 'pdf': 'icon-file-pdf',
12685
- 'doc': 'icon-file-word',
12686
- 'docx': 'icon-file-word',
12687
- 'xls': 'icon-file-excel',
12688
- 'xlsx': 'icon-file-excel',
12689
- 'ppt': 'icon-file-powerpoint',
12690
- 'pptx': 'icon-file-powerpoint',
12691
- 'txt': 'icon-file-text',
12692
- 'zip': 'icon-file-zip',
12693
- 'rar': 'icon-file-zip',
12694
- 'jpg': 'icon-file-image',
12695
- 'jpeg': 'icon-file-image',
12696
- 'png': 'icon-file-image',
12697
- 'gif': 'icon-file-image',
12698
- 'mp4': 'icon-file-video',
12699
- 'avi': 'icon-file-video',
12700
- 'mov': 'icon-file-video',
12701
- 'mp3': 'icon-file-audio',
12702
- 'wav': 'icon-file-audio'
12703
- };
12704
- return typeMap[fileType.toLowerCase()] || 'icon-file';
12705
- }
12706
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: GenericSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12707
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: GenericSliderComponent, isStandalone: true, selector: "core-generic-slider", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { actionTriggered: "actionTriggered", slideChanged: "slideChanged" }, host: { listeners: { "keydown": "onKeydown($event)" } }, ngImport: i0, template: "<div class=\"c-slider\" \n [style]=\"containerStyles()\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n (touchstart)=\"onTouchStart($event)\"\n (touchmove)=\"onTouchMove($event)\"\n (touchend)=\"onTouchEnd()\">\n \n <!-- Main slider container -->\n <div class=\"c-slider__container\">\n \n <!-- Previous arrow -->\n @if (showArrows()) {\n <div class=\"c-slider__arrow c-slider__arrow--prev\">\n <core-generic-button\n [config]=\"prevButtonConfig()\"\n (buttonClick)=\"goToPrevious()\">\n </core-generic-button>\n </div>\n }\n\n <!-- Slides wrapper -->\n <div class=\"c-slider__wrapper\">\n <div class=\"c-slider__track\" [style]=\"slideStyles()\">\n @for (slide of items(); track slide.id; let i = $index) {\n <div class=\"c-slider__slide\" \n [class.c-slider__slide--active]=\"isActiveSlide(i)\"\n [style.width]=\"getSlideWidth()\"\n (click)=\"onSlideClick(slide, i)\">\n \n <!-- Image -->\n <div class=\"c-slider__image-container\">\n @if (mergedConfig().lazyLoad) {\n <img [src]=\"getSlideImage(slide)\" \n [alt]=\"getSlideAlt(slide)\"\n class=\"c-slider__image\"\n loading=\"lazy\">\n } @else {\n <img [src]=\"getSlideImage(slide)\" \n [alt]=\"getSlideAlt(slide)\"\n class=\"c-slider__image\">\n }\n \n <!-- File Preview Icon -->\n @if (mergedConfig().showFilePreview && slide.filePreview) {\n <div class=\"c-slider__file-preview\">\n <div class=\"c-slider__file-icon\">\n <span class=\"icon-file\" [ngClass]=\"getFileTypeIcon(slide.filePreview.fileType)\"></span>\n </div>\n <div class=\"c-slider__file-info\">\n <span class=\"c-slider__file-name\">{{ slide.filePreview.fileName }}</span>\n @if (slide.filePreview.fileSize) {\n <span class=\"c-slider__file-size\">{{ slide.filePreview.fileSize }}</span>\n }\n </div>\n </div>\n }\n \n <!-- Overlay content -->\n @if (slide.title || slide.description) {\n <div class=\"c-slider__overlay\">\n @if (slide.title) {\n <h3 class=\"c-slider__title\">{{ slide.title }}</h3>\n }\n @if (slide.description) {\n <p class=\"c-slider__description\">{{ slide.description }}</p>\n }\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n\n <!-- Next arrow -->\n @if (showArrows()) {\n <div class=\"c-slider__arrow c-slider__arrow--next\">\n <core-generic-button\n [config]=\"nextButtonConfig()\"\n (buttonClick)=\"goToNext()\">\n </core-generic-button>\n </div>\n }\n </div>\n\n <!-- Counter -->\n @if (showCounter()) {\n <div class=\"c-slider__counter\">\n <span class=\"c-slider__counter-text\">{{ getCounterText() }}</span>\n </div>\n }\n\n <!-- Dots navigation -->\n @if (showDots()) {\n <div class=\"c-slider__dots\">\n @for (item of items(); track item.id; let i = $index) {\n <button type=\"button\"\n class=\"c-slider__dot\"\n [class.c-slider__dot--active]=\"isActiveDot(i)\"\n [attr.aria-label]=\"'slider.go-to-slide' | translate: {number: i + 1}\"\n (click)=\"onDotClick(i)\">\n </button>\n }\n </div>\n }\n\n <!-- Thumbnails -->\n @if (showThumbnails()) {\n <div class=\"c-slider__thumbnails\" \n [class.c-slider__thumbnails--vertical]=\"mergedConfig().verticalThumbnails\">\n @for (thumbnail of thumbnails(); track thumbnail.id; let i = $index) {\n <button type=\"button\"\n class=\"c-slider__thumbnail\"\n [class.c-slider__thumbnail--active]=\"isActiveThumbnail(i)\"\n [style.height]=\"mergedConfig().thumbnailHeight\"\n (click)=\"onThumbnailClick(i)\">\n <img [src]=\"thumbnail.imageUrl\" \n [alt]=\"thumbnail.alt || thumbnail.title\"\n class=\"c-slider__thumbnail-image\">\n @if (thumbnail.title) {\n <span class=\"c-slider__thumbnail-title\">{{ thumbnail.title }}</span>\n }\n </button>\n }\n </div>\n }\n\n <!-- Empty state -->\n @if (totalItems() === 0) {\n <div class=\"c-slider__empty\">\n <div class=\"c-slider__empty-icon\">\n <i class=\"icon-image\" aria-hidden=\"true\"></i>\n </div>\n <p class=\"c-slider__empty-text\">{{ 'slider.no-items' | translate }}</p>\n </div>\n }\n\n <!-- Loading state -->\n @if (isDragging()) {\n <div class=\"c-slider__loading\">\n <div class=\"c-slider__loading-spinner\"></div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: GenericButtonComponent, selector: "core-generic-button", inputs: ["config", "data"], outputs: ["buttonClick"] }] });
12708
- }
12709
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: GenericSliderComponent, decorators: [{
12710
- type: Component,
12711
- args: [{ selector: 'core-generic-slider', standalone: true, imports: [CommonModule, TranslateModule, GenericButtonComponent], template: "<div class=\"c-slider\" \n [style]=\"containerStyles()\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n (touchstart)=\"onTouchStart($event)\"\n (touchmove)=\"onTouchMove($event)\"\n (touchend)=\"onTouchEnd()\">\n \n <!-- Main slider container -->\n <div class=\"c-slider__container\">\n \n <!-- Previous arrow -->\n @if (showArrows()) {\n <div class=\"c-slider__arrow c-slider__arrow--prev\">\n <core-generic-button\n [config]=\"prevButtonConfig()\"\n (buttonClick)=\"goToPrevious()\">\n </core-generic-button>\n </div>\n }\n\n <!-- Slides wrapper -->\n <div class=\"c-slider__wrapper\">\n <div class=\"c-slider__track\" [style]=\"slideStyles()\">\n @for (slide of items(); track slide.id; let i = $index) {\n <div class=\"c-slider__slide\" \n [class.c-slider__slide--active]=\"isActiveSlide(i)\"\n [style.width]=\"getSlideWidth()\"\n (click)=\"onSlideClick(slide, i)\">\n \n <!-- Image -->\n <div class=\"c-slider__image-container\">\n @if (mergedConfig().lazyLoad) {\n <img [src]=\"getSlideImage(slide)\" \n [alt]=\"getSlideAlt(slide)\"\n class=\"c-slider__image\"\n loading=\"lazy\">\n } @else {\n <img [src]=\"getSlideImage(slide)\" \n [alt]=\"getSlideAlt(slide)\"\n class=\"c-slider__image\">\n }\n \n <!-- File Preview Icon -->\n @if (mergedConfig().showFilePreview && slide.filePreview) {\n <div class=\"c-slider__file-preview\">\n <div class=\"c-slider__file-icon\">\n <span class=\"icon-file\" [ngClass]=\"getFileTypeIcon(slide.filePreview.fileType)\"></span>\n </div>\n <div class=\"c-slider__file-info\">\n <span class=\"c-slider__file-name\">{{ slide.filePreview.fileName }}</span>\n @if (slide.filePreview.fileSize) {\n <span class=\"c-slider__file-size\">{{ slide.filePreview.fileSize }}</span>\n }\n </div>\n </div>\n }\n \n <!-- Overlay content -->\n @if (slide.title || slide.description) {\n <div class=\"c-slider__overlay\">\n @if (slide.title) {\n <h3 class=\"c-slider__title\">{{ slide.title }}</h3>\n }\n @if (slide.description) {\n <p class=\"c-slider__description\">{{ slide.description }}</p>\n }\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n\n <!-- Next arrow -->\n @if (showArrows()) {\n <div class=\"c-slider__arrow c-slider__arrow--next\">\n <core-generic-button\n [config]=\"nextButtonConfig()\"\n (buttonClick)=\"goToNext()\">\n </core-generic-button>\n </div>\n }\n </div>\n\n <!-- Counter -->\n @if (showCounter()) {\n <div class=\"c-slider__counter\">\n <span class=\"c-slider__counter-text\">{{ getCounterText() }}</span>\n </div>\n }\n\n <!-- Dots navigation -->\n @if (showDots()) {\n <div class=\"c-slider__dots\">\n @for (item of items(); track item.id; let i = $index) {\n <button type=\"button\"\n class=\"c-slider__dot\"\n [class.c-slider__dot--active]=\"isActiveDot(i)\"\n [attr.aria-label]=\"'slider.go-to-slide' | translate: {number: i + 1}\"\n (click)=\"onDotClick(i)\">\n </button>\n }\n </div>\n }\n\n <!-- Thumbnails -->\n @if (showThumbnails()) {\n <div class=\"c-slider__thumbnails\" \n [class.c-slider__thumbnails--vertical]=\"mergedConfig().verticalThumbnails\">\n @for (thumbnail of thumbnails(); track thumbnail.id; let i = $index) {\n <button type=\"button\"\n class=\"c-slider__thumbnail\"\n [class.c-slider__thumbnail--active]=\"isActiveThumbnail(i)\"\n [style.height]=\"mergedConfig().thumbnailHeight\"\n (click)=\"onThumbnailClick(i)\">\n <img [src]=\"thumbnail.imageUrl\" \n [alt]=\"thumbnail.alt || thumbnail.title\"\n class=\"c-slider__thumbnail-image\">\n @if (thumbnail.title) {\n <span class=\"c-slider__thumbnail-title\">{{ thumbnail.title }}</span>\n }\n </button>\n }\n </div>\n }\n\n <!-- Empty state -->\n @if (totalItems() === 0) {\n <div class=\"c-slider__empty\">\n <div class=\"c-slider__empty-icon\">\n <i class=\"icon-image\" aria-hidden=\"true\"></i>\n </div>\n <p class=\"c-slider__empty-text\">{{ 'slider.no-items' | translate }}</p>\n </div>\n }\n\n <!-- Loading state -->\n @if (isDragging()) {\n <div class=\"c-slider__loading\">\n <div class=\"c-slider__loading-spinner\"></div>\n </div>\n }\n</div>\n" }]
12712
- }], ctorParameters: () => [], propDecorators: { onKeydown: [{
12713
- type: HostListener,
12714
- args: ['keydown', ['$event']]
12715
- }] } });
12716
-
12717
- var SliderDirection;
12718
- (function (SliderDirection) {
12719
- SliderDirection["HORIZONTAL"] = "horizontal";
12720
- SliderDirection["VERTICAL"] = "vertical";
12721
- })(SliderDirection || (SliderDirection = {}));
12722
- var SliderTransition;
12723
- (function (SliderTransition) {
12724
- SliderTransition["SLIDE"] = "slide";
12725
- SliderTransition["FADE"] = "fade";
12726
- SliderTransition["SCALE"] = "scale";
12727
- })(SliderTransition || (SliderTransition = {}));
12728
- var SliderNavigationType;
12729
- (function (SliderNavigationType) {
12730
- SliderNavigationType["DOTS"] = "dots";
12731
- SliderNavigationType["ARROWS"] = "arrows";
12732
- SliderNavigationType["THUMBNAILS"] = "thumbnails";
12733
- SliderNavigationType["COUNTER"] = "counter";
12734
- })(SliderNavigationType || (SliderNavigationType = {}));
12735
-
12736
12282
  class CarouselComponent {
12737
12283
  images = input([]);
12738
12284
  config = input({});
@@ -12867,11 +12413,11 @@ class CarouselComponent {
12867
12413
  };
12868
12414
  }
12869
12415
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12870
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: CarouselComponent, isStandalone: true, selector: "core-carousel", inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "window:resize": "onResize()", "keydown": "onKeyDown($event)" } }, viewQueries: [{ propertyName: "carouselHolder", first: true, predicate: ["carouselHolder"], descendants: true, isSignal: true }, { propertyName: "carouselViewport", first: true, predicate: ["carouselViewport"], descendants: true, isSignal: true }], ngImport: i0, template: "<div \n [ngClass]=\"carouselClasses()\"\n [attr.aria-label]=\"ariaLabel()\"\n tabindex=\"0\"\n #carouselViewport>\n \n <div class=\"c-img-carousel__viewport\">\n <div class=\"c-img-carousel__holder js-img-carousel-holder\" #carouselHolder>\n <div \n *ngFor=\"let image of images(); let i = index\"\n class=\"c-img-carousel__slide js-img-carousel-slide\">\n <div class=\"c-img-carousel__slide-inner\">\n <div>\n <core-image-preview\n [src]=\"image.url\"\n [alt]=\"image.alt || 'Image ' + (i + 1)\"\n [title]=\"image.title || image.alt || 'Image ' + (i + 1)\">\n </core-image-preview>\n </div>\n </div>\n </div>\n </div>\n \n @if (!config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n \n <div \n *ngIf=\"showDots()\"\n class=\"c-img-carousel__dots js-img-carousel-nav\"\n aria-label=\"Navegaci\u00F3n\">\n <button\n *ngFor=\"let page of dots(); let i = index\"\n class=\"c-img-carousel__dot js-img-carousel-dot\"\n type=\"button\"\n (click)=\"goToPage(i)\"\n [class.c-img-carousel__dot--active]=\"currentPage() === i\"\n [attr.aria-label]=\"'Ir a p\u00E1gina ' + (i + 1)\"\n [attr.aria-current]=\"currentPage() === i ? 'true' : 'false'\">\n </button>\n </div>\n </div>\n @if(config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ImagePreviewComponent, selector: "core-image-preview", inputs: ["src", "alt", "title", "width", "height", "objectFit", "borderRadius", "cursor", "loading", "isRelative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12416
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: CarouselComponent, isStandalone: true, selector: "core-carousel", inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "window:resize": "onResize()", "keydown": "onKeyDown($event)" } }, viewQueries: [{ propertyName: "carouselHolder", first: true, predicate: ["carouselHolder"], descendants: true, isSignal: true }, { propertyName: "carouselViewport", first: true, predicate: ["carouselViewport"], descendants: true, isSignal: true }], ngImport: i0, template: "<div \n [ngClass]=\"carouselClasses()\"\n [attr.aria-label]=\"ariaLabel()\"\n tabindex=\"0\"\n #carouselViewport>\n \n <div class=\"c-img-carousel__viewport\">\n <div class=\"c-img-carousel__holder js-img-carousel-holder\" #carouselHolder>\n <div \n *ngFor=\"let image of images(); let i = index\"\n class=\"c-img-carousel__slide js-img-carousel-slide\">\n <div class=\"c-img-carousel__slide-inner\">\n <core-image-preview\n [src]=\"image.url\"\n [alt]=\"image.alt || 'Image ' + (i + 1)\"\n [title]=\"image.title || image.alt || 'Image ' + (i + 1)\">\n </core-image-preview>\n </div>\n </div>\n </div>\n \n @if (!config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n \n <div \n *ngIf=\"showDots()\"\n class=\"c-img-carousel__dots js-img-carousel-nav\"\n aria-label=\"Navegaci\u00F3n\">\n <button\n *ngFor=\"let page of dots(); let i = index\"\n class=\"c-img-carousel__dot js-img-carousel-dot\"\n type=\"button\"\n (click)=\"goToPage(i)\"\n [class.c-img-carousel__dot--active]=\"currentPage() === i\"\n [attr.aria-label]=\"'Ir a p\u00E1gina ' + (i + 1)\"\n [attr.aria-current]=\"currentPage() === i ? 'true' : 'false'\">\n </button>\n </div>\n </div>\n @if(config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ImagePreviewComponent, selector: "core-image-preview", inputs: ["src", "alt", "title", "width", "height", "objectFit", "borderRadius", "cursor", "loading", "isRelative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12871
12417
  }
12872
12418
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CarouselComponent, decorators: [{
12873
12419
  type: Component,
12874
- args: [{ selector: 'core-carousel', standalone: true, imports: [CommonModule, ImagePreviewComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div \n [ngClass]=\"carouselClasses()\"\n [attr.aria-label]=\"ariaLabel()\"\n tabindex=\"0\"\n #carouselViewport>\n \n <div class=\"c-img-carousel__viewport\">\n <div class=\"c-img-carousel__holder js-img-carousel-holder\" #carouselHolder>\n <div \n *ngFor=\"let image of images(); let i = index\"\n class=\"c-img-carousel__slide js-img-carousel-slide\">\n <div class=\"c-img-carousel__slide-inner\">\n <div>\n <core-image-preview\n [src]=\"image.url\"\n [alt]=\"image.alt || 'Image ' + (i + 1)\"\n [title]=\"image.title || image.alt || 'Image ' + (i + 1)\">\n </core-image-preview>\n </div>\n </div>\n </div>\n </div>\n \n @if (!config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n \n <div \n *ngIf=\"showDots()\"\n class=\"c-img-carousel__dots js-img-carousel-nav\"\n aria-label=\"Navegaci\u00F3n\">\n <button\n *ngFor=\"let page of dots(); let i = index\"\n class=\"c-img-carousel__dot js-img-carousel-dot\"\n type=\"button\"\n (click)=\"goToPage(i)\"\n [class.c-img-carousel__dot--active]=\"currentPage() === i\"\n [attr.aria-label]=\"'Ir a p\u00E1gina ' + (i + 1)\"\n [attr.aria-current]=\"currentPage() === i ? 'true' : 'false'\">\n </button>\n </div>\n </div>\n @if(config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n</div>" }]
12420
+ args: [{ selector: 'core-carousel', standalone: true, imports: [CommonModule, ImagePreviewComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div \n [ngClass]=\"carouselClasses()\"\n [attr.aria-label]=\"ariaLabel()\"\n tabindex=\"0\"\n #carouselViewport>\n \n <div class=\"c-img-carousel__viewport\">\n <div class=\"c-img-carousel__holder js-img-carousel-holder\" #carouselHolder>\n <div \n *ngFor=\"let image of images(); let i = index\"\n class=\"c-img-carousel__slide js-img-carousel-slide\">\n <div class=\"c-img-carousel__slide-inner\">\n <core-image-preview\n [src]=\"image.url\"\n [alt]=\"image.alt || 'Image ' + (i + 1)\"\n [title]=\"image.title || image.alt || 'Image ' + (i + 1)\">\n </core-image-preview>\n </div>\n </div>\n </div>\n \n @if (!config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n \n <div \n *ngIf=\"showDots()\"\n class=\"c-img-carousel__dots js-img-carousel-nav\"\n aria-label=\"Navegaci\u00F3n\">\n <button\n *ngFor=\"let page of dots(); let i = index\"\n class=\"c-img-carousel__dot js-img-carousel-dot\"\n type=\"button\"\n (click)=\"goToPage(i)\"\n [class.c-img-carousel__dot--active]=\"currentPage() === i\"\n [attr.aria-label]=\"'Ir a p\u00E1gina ' + (i + 1)\"\n [attr.aria-current]=\"currentPage() === i ? 'true' : 'false'\">\n </button>\n </div>\n </div>\n @if(config().arrowsOutside) {\n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--prev icon-arrow-left\"\n type=\"button\"\n (click)=\"goToPrevSlide()\"\n [attr.aria-label]=\"'Anterior'\"\n data-control=\"prevBtn\">\n </button>\n \n <button \n *ngIf=\"showArrows()\"\n class=\"c-img-carousel__btn c-img-carousel__btn--next icon-arrow-right\"\n type=\"button\"\n (click)=\"goToNextSlide()\"\n [attr.aria-label]=\"'Siguiente'\"\n data-control=\"nextBtn\">\n </button>\n }\n</div>" }]
12875
12421
  }], ctorParameters: () => [], propDecorators: { onResize: [{
12876
12422
  type: HostListener,
12877
12423
  args: ['window:resize']
@@ -13207,5 +12753,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
13207
12753
  * Generated bundle index. Do not edit.
13208
12754
  */
13209
12755
 
13210
- export { ActiveFiltersComponent, AlertComponent, AlertContainerComponent, AlertService, AlertType, ApiConfigurationProvider, BaseFieldComponent, ButtonContext, ButtonSize, ButtonType, CacheBustingInterceptor, CardComponent, CarouselComponent, CheckboxFieldComponent, ConfigurationModel, ConfirmationDialogComponent, ConfirmationDialogService, CoreHostDirective, CoreUiHttpLoaderFactory, CoreUiTranslateLoader, CoreUiTranslateService, DataListComponent, DataListItemComponent, DateFieldComponent, DateUtility, DatetimeFieldComponent, DialogActions, DocumentAction, DocumentDisplayMode, DropdownComponent, DropdownDirection, DropdownService, DynamicFieldDirective, FieldErrorsComponent, FieldType, FileFieldComponent, FileModel, FileTemplateModel, FileTemplateType, FileType, FileTypeModel, FileUploadService, FilterModalComponent, FilterService, FilterType, GenericButtonComponent, GenericDocumentationComponent, GenericModalComponent, GenericPaginationComponent, GenericRatingComponent, GenericSidebarComponent, GenericSliderComponent, GenericStepsComponent, GenericTableComponent, GenericTabsComponent, GenericTimelineComponent, GlobalApiConfigService, HeaderComponent, HeaderConfigurationService, HeaderElementType, HeaderService, HttpLoaderFactory, ImageModalComponent, ImageModalService, ImagePreviewComponent, LayoutAuth, LayoutBreakpoint, LayoutComponent, LayoutService, LayoutStateService, LayoutType, LoaderComponent, LoaderService, MainNavComponent, MainNavService, ModalMode, ModelApiService, MultiEntryFieldComponent, MultiEntryOutputFormat, NumberFieldComponent, NumberFieldConfigType, NumberFieldType, NumberRange, PERMISSION_ACTIONS_PROVIDER, PERMISSION_PROVIDER, PERMISSION_RESOURCES_PROVIDER, PaginationService, PasswordFieldComponent, PermissionEnumsService, PermissionModel, PermissionService, PermissionWrapperService, PermissionsActions, PermissionsInterceptor, PermissionsResources, ProgressBarComponent, ProgressBarSize, RatingService, RatingSize, RatingType, ResetPasswordModel, RoleModel, SelectFieldComponent, ServerSelectFieldComponent, ServerSelectService, SidebarCustomModalComponent, SidebarCustomModalService, SidebarHeight, SidebarMobileModalService, SidebarMobileType, SidebarPosition, SidebarService, SidebarState, SidebarTemplateRegistryService, SidebarVisibility, SidebarWidth, SliderActionType, SliderDirection, SliderNavigationType, SliderService, SliderTransition, SmartFieldComponent, StepSize, StepStatus, StepType, StepsService, SwitchFieldComponent, TableAction, TableActionService, TableDataService, TextAreaFieldComponent, TextFieldComponent, TimeFieldComponent, TimeInterval, TimelineService, TimelineStatus, TimelineType, TranslationMergeService, UsersModel, VERSION, equalToValidator, isSameDate, provideCoreUiTranslateLoader, providePermissionActions, providePermissionEnums, providePermissionResources, providePermissionService, providePermissionServiceFactory, provideTranslateLoader };
12756
+ export { ActiveFiltersComponent, AlertComponent, AlertContainerComponent, AlertService, AlertType, ApiConfigurationProvider, BaseFieldComponent, ButtonContext, ButtonSize, ButtonType, CacheBustingInterceptor, CardComponent, CarouselComponent, CheckboxFieldComponent, ConfigurationModel, ConfirmationDialogComponent, ConfirmationDialogService, CoreHostDirective, CoreUiHttpLoaderFactory, CoreUiTranslateLoader, CoreUiTranslateService, DataListComponent, DataListItemComponent, DateFieldComponent, DateUtility, DatetimeFieldComponent, DialogActions, DocumentAction, DocumentDisplayMode, DropdownComponent, DropdownDirection, DropdownService, DynamicFieldDirective, FieldErrorsComponent, FieldType, FileFieldComponent, FileModel, FileTemplateModel, FileTemplateType, FileType, FileTypeModel, FileUploadService, FilterModalComponent, FilterService, FilterType, GenericButtonComponent, GenericDocumentationComponent, GenericModalComponent, GenericPaginationComponent, GenericRatingComponent, GenericSidebarComponent, GenericStepsComponent, GenericTableComponent, GenericTabsComponent, GenericTimelineComponent, GlobalApiConfigService, HeaderComponent, HeaderConfigurationService, HeaderElementType, HeaderService, HttpLoaderFactory, ImageModalComponent, ImageModalService, ImagePreviewComponent, LayoutAuth, LayoutBreakpoint, LayoutComponent, LayoutService, LayoutStateService, LayoutType, LoaderComponent, LoaderService, MainNavComponent, MainNavService, ModalMode, ModelApiService, MultiEntryFieldComponent, MultiEntryOutputFormat, NumberFieldComponent, NumberFieldConfigType, NumberFieldType, NumberRange, PERMISSION_ACTIONS_PROVIDER, PERMISSION_PROVIDER, PERMISSION_RESOURCES_PROVIDER, PaginationService, PasswordFieldComponent, PermissionEnumsService, PermissionModel, PermissionService, PermissionWrapperService, PermissionsActions, PermissionsInterceptor, PermissionsResources, ProgressBarComponent, ProgressBarSize, RatingService, RatingSize, RatingType, ResetPasswordModel, RoleModel, SelectFieldComponent, ServerSelectFieldComponent, ServerSelectService, SidebarCustomModalComponent, SidebarCustomModalService, SidebarHeight, SidebarMobileModalService, SidebarMobileType, SidebarPosition, SidebarService, SidebarState, SidebarTemplateRegistryService, SidebarVisibility, SidebarWidth, SmartFieldComponent, StepSize, StepStatus, StepType, StepsService, SwitchFieldComponent, TableAction, TableActionService, TableDataService, TextAreaFieldComponent, TextFieldComponent, TimeFieldComponent, TimeInterval, TimelineService, TimelineStatus, TimelineType, TranslationMergeService, UsersModel, VERSION, equalToValidator, isSameDate, provideCoreUiTranslateLoader, providePermissionActions, providePermissionEnums, providePermissionResources, providePermissionService, providePermissionServiceFactory, provideTranslateLoader };
13211
12757
  //# sourceMappingURL=solcre-org-core-ui.mjs.map