@underlayerdev/ui 0.13.2 → 0.13.4

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.
@@ -0,0 +1,133 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ViewEncapsulation, Component, input, output, viewChild, contentChildren, effect } from '@angular/core';
3
+ import Splide from '@splidejs/splide';
4
+
5
+ class CarouselItemComponent {
6
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", type: CarouselItemComponent, isStandalone: true, selector: "ul-carousel-item", host: { classAttribute: "splide__slide ul-carousel__item" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, encapsulation: i0.ViewEncapsulation.None });
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselItemComponent, decorators: [{
10
+ type: Component,
11
+ args: [{
12
+ selector: 'ul-carousel-item',
13
+ template: ` <ng-content /> `,
14
+ encapsulation: ViewEncapsulation.None,
15
+ host: {
16
+ class: 'splide__slide ul-carousel__item',
17
+ },
18
+ }]
19
+ }] });
20
+ class CarouselComponent {
21
+ options = input({
22
+ autoplay: true,
23
+ }, /* @ts-ignore */
24
+ ...(ngDevMode ? [{ debugName: "options" }] : /* istanbul ignore next */ []));
25
+ autoMount = input(true, /* @ts-ignore */
26
+ ...(ngDevMode ? [{ debugName: "autoMount" }] : /* istanbul ignore next */ []));
27
+ mounted = output();
28
+ carousel = viewChild('carousel', /* @ts-ignore */
29
+ ...(ngDevMode ? [{ debugName: "carousel" }] : /* istanbul ignore next */ []));
30
+ items = contentChildren(CarouselItemComponent, /* @ts-ignore */
31
+ ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
32
+ instance = null;
33
+ constructor() {
34
+ effect(() => {
35
+ this.items(); // trigger change detection
36
+ this.updateCarouselOnItemsChange();
37
+ });
38
+ }
39
+ ngAfterViewInit() {
40
+ this.init();
41
+ }
42
+ ngOnDestroy() {
43
+ this.instance?.destroy();
44
+ }
45
+ // Get the Splide instance
46
+ getInstance() {
47
+ return this.instance;
48
+ }
49
+ // Methods to control the carousel
50
+ goNext() {
51
+ this.instance?.go('>');
52
+ }
53
+ goPrev() {
54
+ this.instance?.go('<');
55
+ }
56
+ goTo(index) {
57
+ this.instance?.go(index);
58
+ }
59
+ // Mount the carousel
60
+ mount() {
61
+ if (!this.instance) {
62
+ throw new Error('Carousel instance not found');
63
+ }
64
+ this.instance.mount();
65
+ this.mounted.emit(this.instance);
66
+ }
67
+ init() {
68
+ const carousel = this.carousel();
69
+ if (!carousel) {
70
+ throw new Error('Carousel element not found');
71
+ }
72
+ // initialize the carousel
73
+ this.instance = new Splide(carousel.nativeElement, {
74
+ arrows: false,
75
+ classes: {
76
+ page: 'splide__pagination__page ul-carousel__pagination-dot',
77
+ },
78
+ ...this.options(),
79
+ });
80
+ // mount the carousel
81
+ if (this.autoMount()) {
82
+ this.mount();
83
+ }
84
+ }
85
+ updateCarouselOnItemsChange() {
86
+ this.instance?.refresh();
87
+ }
88
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
89
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.0", type: CarouselComponent, isStandalone: true, selector: "ul-carousel", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, autoMount: { classPropertyName: "autoMount", publicName: "autoMount", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { mounted: "mounted" }, queries: [{ propertyName: "items", predicate: CarouselItemComponent, isSignal: true }], viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true, isSignal: true }], ngImport: i0, template: `
90
+ <div class="splide ul-carousel" #carousel role="region" aria-roledescription="carousel">
91
+ <div class="splide__track ul-carousel__track">
92
+ <div class="splide__list">
93
+ <ng-content />
94
+ </div>
95
+ </div>
96
+ </div>
97
+ `, isInline: true, styles: ["@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;contain:strict;display:inline-block;height:20px;inset:0;margin:auto;position:absolute;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-carousel{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;position:relative}.ul-carousel .splide__arrows{position:absolute;inset:0;z-index:1;pointer-events:none}.ul-carousel .splide__arrow{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:4096px;background-color:#0000004d;color:#fff;cursor:pointer;transition:background-color .25s cubic-bezier(.4,0,.2,1),opacity .25s cubic-bezier(.4,0,.2,1)}.ul-carousel .splide__arrow:hover:not(:disabled){background-color:#000000b3}.ul-carousel .splide__arrow svg{width:20px;height:20px;fill:currentColor}.ul-carousel .splide__arrow:disabled{opacity:.3;cursor:default}.ul-carousel .splide__arrow--prev{left:8px}.ul-carousel .splide__arrow--prev svg{transform:scaleX(-1)}.ul-carousel .splide__arrow--next{right:8px}.ul-carousel__pagination-dot{border:0;border-radius:50%;margin:1rem .2rem 0;padding:0;height:6px;width:6px;background-color:#ffffff80}.ul-carousel__pagination-dot.is-active{background-color:#fff}\n"], encapsulation: i0.ViewEncapsulation.None });
98
+ }
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselComponent, decorators: [{
100
+ type: Component,
101
+ args: [{ selector: 'ul-carousel', template: `
102
+ <div class="splide ul-carousel" #carousel role="region" aria-roledescription="carousel">
103
+ <div class="splide__track ul-carousel__track">
104
+ <div class="splide__list">
105
+ <ng-content />
106
+ </div>
107
+ </div>
108
+ </div>
109
+ `, encapsulation: ViewEncapsulation.None, styles: ["@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;contain:strict;display:inline-block;height:20px;inset:0;margin:auto;position:absolute;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-carousel{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;position:relative}.ul-carousel .splide__arrows{position:absolute;inset:0;z-index:1;pointer-events:none}.ul-carousel .splide__arrow{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:4096px;background-color:#0000004d;color:#fff;cursor:pointer;transition:background-color .25s cubic-bezier(.4,0,.2,1),opacity .25s cubic-bezier(.4,0,.2,1)}.ul-carousel .splide__arrow:hover:not(:disabled){background-color:#000000b3}.ul-carousel .splide__arrow svg{width:20px;height:20px;fill:currentColor}.ul-carousel .splide__arrow:disabled{opacity:.3;cursor:default}.ul-carousel .splide__arrow--prev{left:8px}.ul-carousel .splide__arrow--prev svg{transform:scaleX(-1)}.ul-carousel .splide__arrow--next{right:8px}.ul-carousel__pagination-dot{border:0;border-radius:50%;margin:1rem .2rem 0;padding:0;height:6px;width:6px;background-color:#ffffff80}.ul-carousel__pagination-dot.is-active{background-color:#fff}\n"] }]
110
+ }], ctorParameters: () => [], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], autoMount: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoMount", required: false }] }], mounted: [{ type: i0.Output, args: ["mounted"] }], carousel: [{ type: i0.ViewChild, args: ['carousel', { isSignal: true }] }], items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => CarouselItemComponent), { isSignal: true }] }] } });
111
+
112
+ // Secondary entry point (`@underlayerdev/ui/carousel`), not re-exported from
113
+ // the root barrel: CarouselComponent pulls in @splidejs/splide (~36 kB
114
+ // minified), and the root entry ships as a single FESM file — anything that
115
+ // imports even one symbol from it (ButtonComponent, in every app shell)
116
+ // drags the whole file's dependency graph along, splide included, whether
117
+ // or not that consumer ever uses a carousel. A real module boundary is what
118
+ // actually stops that; nothing on the import side can.
119
+ //
120
+ // The component's own source lives in this folder too, not in
121
+ // src/components/carousel/ re-exported from here: ng-packagr's secondary
122
+ // entry points need to own their files — a public-api.ts that only
123
+ // re-exports a file from outside its own directory tree makes ng-packagr's
124
+ // internal dependency graph crash on external templateUrl/styleUrl
125
+ // resolution ("Cannot destructure property 'pos' of
126
+ // 'file.referencedFiles[index]' as it is undefined").
127
+
128
+ /**
129
+ * Generated bundle index. Do not edit.
130
+ */
131
+
132
+ export { CarouselComponent, CarouselItemComponent };
133
+ //# sourceMappingURL=underlayerdev-ui-carousel.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"underlayerdev-ui-carousel.mjs","sources":["../../../projects/ui/carousel/carousel.ts","../../../projects/ui/carousel/public-api.ts","../../../projects/ui/carousel/underlayerdev-ui-carousel.ts"],"sourcesContent":["import {\n AfterViewInit,\n Component,\n contentChildren,\n effect,\n ElementRef,\n input,\n OnDestroy,\n output,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport Splide, { Options } from '@splidejs/splide';\n\n@Component({\n selector: 'ul-carousel-item',\n template: ` <ng-content /> `,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'splide__slide ul-carousel__item',\n },\n})\nexport class CarouselItemComponent {}\n\n@Component({\n selector: 'ul-carousel',\n template: `\n <div class=\"splide ul-carousel\" #carousel role=\"region\" aria-roledescription=\"carousel\">\n <div class=\"splide__track ul-carousel__track\">\n <div class=\"splide__list\">\n <ng-content />\n </div>\n </div>\n </div>\n `,\n styleUrl: './carousel.scss',\n encapsulation: ViewEncapsulation.None,\n})\nexport class CarouselComponent implements AfterViewInit, OnDestroy {\n options = input<Options>({\n autoplay: true,\n });\n autoMount = input<boolean>(true);\n mounted = output<Splide>();\n\n private carousel = viewChild<ElementRef<HTMLElement>>('carousel');\n private items = contentChildren<CarouselItemComponent>(CarouselItemComponent);\n private instance: Splide | null = null;\n\n constructor() {\n effect(() => {\n this.items(); // trigger change detection\n this.updateCarouselOnItemsChange();\n });\n }\n\n ngAfterViewInit() {\n this.init();\n }\n\n ngOnDestroy() {\n this.instance?.destroy();\n }\n\n // Get the Splide instance\n getInstance() {\n return this.instance;\n }\n\n // Methods to control the carousel\n goNext() {\n this.instance?.go('>');\n }\n\n goPrev() {\n this.instance?.go('<');\n }\n\n goTo(index: number) {\n this.instance?.go(index);\n }\n\n // Mount the carousel\n mount() {\n if (!this.instance) {\n throw new Error('Carousel instance not found');\n }\n this.instance.mount();\n this.mounted.emit(this.instance);\n }\n\n private init() {\n const carousel = this.carousel();\n if (!carousel) {\n throw new Error('Carousel element not found');\n }\n // initialize the carousel\n this.instance = new Splide(carousel.nativeElement, {\n arrows: false,\n classes: {\n page: 'splide__pagination__page ul-carousel__pagination-dot',\n },\n ...this.options(),\n });\n // mount the carousel\n if (this.autoMount()) {\n this.mount();\n }\n }\n\n private updateCarouselOnItemsChange() {\n this.instance?.refresh();\n }\n}\n","// Secondary entry point (`@underlayerdev/ui/carousel`), not re-exported from\n// the root barrel: CarouselComponent pulls in @splidejs/splide (~36 kB\n// minified), and the root entry ships as a single FESM file — anything that\n// imports even one symbol from it (ButtonComponent, in every app shell)\n// drags the whole file's dependency graph along, splide included, whether\n// or not that consumer ever uses a carousel. A real module boundary is what\n// actually stops that; nothing on the import side can.\n//\n// The component's own source lives in this folder too, not in\n// src/components/carousel/ re-exported from here: ng-packagr's secondary\n// entry points need to own their files — a public-api.ts that only\n// re-exports a file from outside its own directory tree makes ng-packagr's\n// internal dependency graph crash on external templateUrl/styleUrl\n// resolution (\"Cannot destructure property 'pos' of\n// 'file.referencedFiles[index]' as it is undefined\").\nexport * from './carousel';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,13 +1,12 @@
1
1
  import * as i1 from '@angular/cdk/accordion';
2
2
  import { CdkAccordionItem, CdkAccordion } from '@angular/cdk/accordion';
3
3
  import * as i0 from '@angular/core';
4
- import { inject, ElementRef, Component, input, DestroyRef, contentChildren, computed, ViewEncapsulation, signal, effect, Directive, output, model, booleanAttribute, viewChild, ViewChild, contentChild, HostListener, Pipe, SecurityContext, Injectable, HostBinding } from '@angular/core';
4
+ import { inject, ElementRef, Component, input, DestroyRef, contentChildren, computed, ViewEncapsulation, signal, effect, Directive, output, model, booleanAttribute, ViewChild, contentChild, viewChild, HostListener, Pipe, SecurityContext, Injectable, HostBinding } from '@angular/core';
5
5
  import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
6
6
  import * as i1$1 from '@angular/common';
7
7
  import { CommonModule, NgTemplateOutlet, CurrencyPipe } from '@angular/common';
8
8
  import { RouterLink } from '@angular/router';
9
9
  import { CdkMenuTrigger, CdkMenu, CdkMenuItem } from '@angular/cdk/menu';
10
- import Splide from '@splidejs/splide';
11
10
  import { fromEvent, map } from 'rxjs';
12
11
  import { debounceTime } from 'rxjs/operators';
13
12
  import { ImageCropperComponent as ImageCropperComponent$1 } from 'ngx-image-cropper';
@@ -1294,7 +1293,7 @@ class CardComponent {
1294
1293
  // Loading state
1295
1294
  loading = input(false, { ...(ngDevMode ? { debugName: "loading" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1296
1295
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1297
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.0", type: CardComponent, isStandalone: true, selector: "ul-card", inputs: { focused: { classPropertyName: "focused", publicName: "focused", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, cardDirection: { classPropertyName: "cardDirection", publicName: "cardDirection", isSignal: true, isRequired: false, transformFunction: null }, cardCaptionSize: { classPropertyName: "cardCaptionSize", publicName: "cardCaptionSize", isSignal: true, isRequired: false, transformFunction: null }, footerDist: { classPropertyName: "footerDist", publicName: "footerDist", isSignal: true, isRequired: false, transformFunction: null }, mediaAspectRatio: { classPropertyName: "mediaAspectRatio", publicName: "mediaAspectRatio", isSignal: true, isRequired: false, transformFunction: null }, mediaBlur: { classPropertyName: "mediaBlur", publicName: "mediaBlur", isSignal: true, isRequired: false, transformFunction: null }, mediaGrayscale: { classPropertyName: "mediaGrayscale", publicName: "mediaGrayscale", isSignal: true, isRequired: false, transformFunction: null }, cardCaption: { classPropertyName: "cardCaption", publicName: "cardCaption", isSignal: true, isRequired: false, transformFunction: null }, cardTitle: { classPropertyName: "cardTitle", publicName: "cardTitle", isSignal: true, isRequired: false, transformFunction: null }, cardTitleSingleLine: { classPropertyName: "cardTitleSingleLine", publicName: "cardTitleSingleLine", isSignal: true, isRequired: false, transformFunction: null }, cardSubtitle: { classPropertyName: "cardSubtitle", publicName: "cardSubtitle", isSignal: true, isRequired: false, transformFunction: null }, cardSubtitleSingleLine: { classPropertyName: "cardSubtitleSingleLine", publicName: "cardSubtitleSingleLine", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.aria-disabled": "disabled() ? \"true\" : null", "class.ul-card--focused": "focused()", "class.ul-card--disabled": "disabled()", "class.ul-card--horizontal": "cardDirection() === \"horizontal\"", "class.ul-card--caption-sm": "cardCaptionSize() === \"sm\"", "class.ul-card--footer-equal": "footerDist() === \"equal\"", "class.ul-card--media-square": "mediaAspectRatio() === \"square\"", "class.ul-card--media-portrait": "mediaAspectRatio() === \"portrait\"", "class.ul-card--media-grayscale": "mediaGrayscale()", "class.ul-card--loading": "loading()", "class.ul-card--media-blurred": "mediaBlur()" }, classAttribute: "ul-card" }, ngImport: i0, template: "@if (loading()) {\n <div class=\"ul-card__skeleton\">\n <div class=\"ul-card__media\">\n <ul-skeleton variant=\"rect\" borderRadius=\"lg\" [show]=\"true\" />\n </div>\n <div class=\"ul-card__content\">\n <div class=\"ul-card__content-title ul-card__content-title--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"2\" borderRadius=\"sm\" />\n </div>\n <div class=\"ul-card__content-subtitle ul-card__content-subtitle--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"1\" borderRadius=\"sm\" />\n </div>\n </div>\n </div>\n} @else {\n <div class=\"ul-card__media\">\n <ng-content select=\"[udsCardMedia]\" />\n <ng-content select=\"[udsCardMediaOverlay]\" />\n </div>\n <div class=\"ul-card__media-action\">\n <ng-content select=\"[udsCardMediaAction]\" />\n </div>\n\n <div class=\"ul-card__content\">\n @if (cardCaption()) {\n <div class=\"ul-card__content-caption\">\n {{ cardCaption() }}\n </div>\n }\n @if (cardTitle()) {\n <div\n class=\"ul-card__content-title\"\n [class.ul-card__content-title--single-line]=\"cardTitleSingleLine()\"\n >\n {{ cardTitle() }}\n </div>\n }\n @if (cardSubtitle()) {\n <div\n class=\"ul-card__content-subtitle\"\n [class.ul-card__content-subtitle--single-line]=\"cardSubtitleSingleLine()\"\n >\n {{ cardSubtitle() }}\n </div>\n }\n </div>\n\n <div class=\"ul-card__footer\">\n <ng-content select=\"[udsCardFooter]\" />\n </div>\n}\n", styles: [".ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-card{display:flex;position:relative;flex-direction:column;overflow:visible;width:100%;color:#ffffff80;border-radius:8px;gap:12px;outline:8px solid transparent;background-color:transparent;font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400;transition:background-color .25s cubic-bezier(.4,0,.2,1),outline .25s cubic-bezier(.4,0,.2,1)}@media(min-width:0px){.ul-card{min-width:100px}}@media(min-width:768px){.ul-card{min-width:180px}}@media(min-width:1280px){.ul-card{min-width:150px}}.ul-card:hover,.ul-card:focus,.ul-card:focus-within,.ul-card--focused{outline-color:#ffffff1a;background-color:#ffffff1a}.ul-card__media{position:relative;overflow:hidden;width:100%;background-color:#ffffff1a;border-radius:8px}@media(min-width:0px){.ul-card__media{min-height:100px}}@media(min-width:768px){.ul-card__media{min-height:180px}}@media(min-width:1280px){.ul-card__media{min-height:150px}}.ul-card__media>:first-child{width:100%;height:100%;display:block;object-fit:cover;filter:blur(var(--ul-card__media-blur, 0)) grayscale(var(--ul-card__media-grayscale, 0))}.ul-card__media>:nth-child(2){position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.ul-card__media-action{opacity:0;position:absolute;top:8px;right:8px;z-index:2;transition:opacity .15s cubic-bezier(.4,0,.2,1)}@media(max-width:1023px){.ul-card__media-action{opacity:1}}.ul-card:hover .ul-card__media-action,.ul-card:focus .ul-card__media-action,.ul-card:focus-within .ul-card__media-action{opacity:1}.ul-card__content{flex:1}.ul-card__content-caption{color:#ffffff80;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-title{color:#fff;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-title--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-subtitle{color:#ffffff80;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-subtitle--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__footer{display:flex;gap:8px}.ul-card--disabled{cursor:not-allowed;pointer-events:none;opacity:.5}.ul-card--caption-sm .ul-card__content-caption{font-family:Ultra Nunito Sans;line-height:20px;font-size:14px;letter-spacing:.14px;font-weight:400}.ul-card--footer-equal .ul-card__footer>*{flex:1}.ul-card--media-square .ul-card__media{aspect-ratio:1/1}.ul-card--media-portrait .ul-card__media{aspect-ratio:3/4}.ul-card__media img{width:100%;height:100%;object-fit:cover}.ul-card--media-blurred{--ul-card__media-blur: 16px}.ul-card--media-blurred .ul-card__media>:first-child{fill:#0000004d}.ul-card--media-grayscale{--ul-card__media-grayscale: 1}.ul-card--media-grayscale .ul-card__media>:first-child{opacity:.5;mix-blend-mode:luminosity}.ul-card__skeleton{display:flex;flex-direction:column;gap:12px;min-height:100px}.ul-card__skeleton>.ul-skeleton:first-child{width:100%;aspect-ratio:16/9}.ul-card__skeleton-body{margin-top:12px;display:flex;flex-direction:column;gap:8px}\n"], dependencies: [{ kind: "component", type: SkeletonComponent, selector: "ul-skeleton", inputs: ["variant", "width", "height", "lines", "borderRadius", "show"] }], encapsulation: i0.ViewEncapsulation.None });
1296
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.0", type: CardComponent, isStandalone: true, selector: "ul-card", inputs: { focused: { classPropertyName: "focused", publicName: "focused", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, cardDirection: { classPropertyName: "cardDirection", publicName: "cardDirection", isSignal: true, isRequired: false, transformFunction: null }, cardCaptionSize: { classPropertyName: "cardCaptionSize", publicName: "cardCaptionSize", isSignal: true, isRequired: false, transformFunction: null }, footerDist: { classPropertyName: "footerDist", publicName: "footerDist", isSignal: true, isRequired: false, transformFunction: null }, mediaAspectRatio: { classPropertyName: "mediaAspectRatio", publicName: "mediaAspectRatio", isSignal: true, isRequired: false, transformFunction: null }, mediaBlur: { classPropertyName: "mediaBlur", publicName: "mediaBlur", isSignal: true, isRequired: false, transformFunction: null }, mediaGrayscale: { classPropertyName: "mediaGrayscale", publicName: "mediaGrayscale", isSignal: true, isRequired: false, transformFunction: null }, cardCaption: { classPropertyName: "cardCaption", publicName: "cardCaption", isSignal: true, isRequired: false, transformFunction: null }, cardTitle: { classPropertyName: "cardTitle", publicName: "cardTitle", isSignal: true, isRequired: false, transformFunction: null }, cardTitleSingleLine: { classPropertyName: "cardTitleSingleLine", publicName: "cardTitleSingleLine", isSignal: true, isRequired: false, transformFunction: null }, cardSubtitle: { classPropertyName: "cardSubtitle", publicName: "cardSubtitle", isSignal: true, isRequired: false, transformFunction: null }, cardSubtitleSingleLine: { classPropertyName: "cardSubtitleSingleLine", publicName: "cardSubtitleSingleLine", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.aria-disabled": "disabled() ? \"true\" : null", "class.ul-card--focused": "focused()", "class.ul-card--disabled": "disabled()", "class.ul-card--horizontal": "cardDirection() === \"horizontal\"", "class.ul-card--caption-sm": "cardCaptionSize() === \"sm\"", "class.ul-card--footer-equal": "footerDist() === \"equal\"", "class.ul-card--media-square": "mediaAspectRatio() === \"square\"", "class.ul-card--media-portrait": "mediaAspectRatio() === \"portrait\"", "class.ul-card--media-grayscale": "mediaGrayscale()", "class.ul-card--loading": "loading()", "class.ul-card--media-blurred": "mediaBlur()" }, classAttribute: "ul-card" }, ngImport: i0, template: "@if (loading()) {\n <div class=\"ul-card__skeleton\">\n <div class=\"ul-card__media\">\n <ul-skeleton variant=\"rect\" borderRadius=\"lg\" [show]=\"true\" />\n </div>\n <div class=\"ul-card__content\">\n <div class=\"ul-card__content-title ul-card__content-title--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"2\" borderRadius=\"sm\" />\n </div>\n <div class=\"ul-card__content-subtitle ul-card__content-subtitle--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"1\" borderRadius=\"sm\" />\n </div>\n </div>\n </div>\n} @else {\n <div class=\"ul-card__media\">\n <ng-content select=\"[ulCardMedia]\" />\n <ng-content select=\"[ulCardMediaOverlay]\" />\n </div>\n <div class=\"ul-card__media-action\">\n <ng-content select=\"[ulCardMediaAction]\" />\n </div>\n\n <div class=\"ul-card__content\">\n @if (cardCaption()) {\n <div class=\"ul-card__content-caption\">\n {{ cardCaption() }}\n </div>\n }\n @if (cardTitle()) {\n <div\n class=\"ul-card__content-title\"\n [class.ul-card__content-title--single-line]=\"cardTitleSingleLine()\"\n >\n {{ cardTitle() }}\n </div>\n }\n @if (cardSubtitle()) {\n <div\n class=\"ul-card__content-subtitle\"\n [class.ul-card__content-subtitle--single-line]=\"cardSubtitleSingleLine()\"\n >\n {{ cardSubtitle() }}\n </div>\n }\n </div>\n\n <div class=\"ul-card__footer\">\n <ng-content select=\"[ulCardFooter]\" />\n </div>\n}\n", styles: [".ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-card{display:flex;position:relative;flex-direction:column;overflow:visible;width:100%;color:#ffffff80;border-radius:8px;gap:12px;outline:8px solid transparent;background-color:transparent;font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400;transition:background-color .25s cubic-bezier(.4,0,.2,1),outline .25s cubic-bezier(.4,0,.2,1)}@media(min-width:0px){.ul-card{min-width:100px}}@media(min-width:768px){.ul-card{min-width:180px}}@media(min-width:1280px){.ul-card{min-width:150px}}.ul-card:hover,.ul-card:focus,.ul-card:focus-within,.ul-card--focused{outline-color:#ffffff1a;background-color:#ffffff1a}.ul-card__media{position:relative;overflow:hidden;width:100%;background-color:#ffffff1a;border-radius:8px}@media(min-width:0px){.ul-card__media{min-height:100px}}@media(min-width:768px){.ul-card__media{min-height:180px}}@media(min-width:1280px){.ul-card__media{min-height:150px}}.ul-card__media>:first-child{width:100%;height:100%;display:block;object-fit:cover;filter:blur(var(--ul-card__media-blur, 0)) grayscale(var(--ul-card__media-grayscale, 0))}.ul-card__media>:nth-child(2){position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.ul-card__media-action{opacity:0;position:absolute;top:8px;right:8px;z-index:2;transition:opacity .15s cubic-bezier(.4,0,.2,1)}@media(max-width:1023px){.ul-card__media-action{opacity:1}}.ul-card:hover .ul-card__media-action,.ul-card:focus .ul-card__media-action,.ul-card:focus-within .ul-card__media-action{opacity:1}.ul-card__content{flex:1}.ul-card__content-caption{color:#ffffff80;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-title{color:#fff;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-title--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-subtitle{color:#ffffff80;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-subtitle--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__footer{display:flex;gap:8px}.ul-card--disabled{cursor:not-allowed;pointer-events:none;opacity:.5}.ul-card--caption-sm .ul-card__content-caption{font-family:Ultra Nunito Sans;line-height:20px;font-size:14px;letter-spacing:.14px;font-weight:400}.ul-card--footer-equal .ul-card__footer>*{flex:1}.ul-card--media-square .ul-card__media{aspect-ratio:1/1}.ul-card--media-portrait .ul-card__media{aspect-ratio:3/4}.ul-card__media img{width:100%;height:100%;object-fit:cover}.ul-card--media-blurred{--ul-card__media-blur: 16px}.ul-card--media-blurred .ul-card__media>:first-child{fill:#0000004d}.ul-card--media-grayscale{--ul-card__media-grayscale: 1}.ul-card--media-grayscale .ul-card__media>:first-child{opacity:.5;mix-blend-mode:luminosity}.ul-card__skeleton{display:flex;flex-direction:column;gap:12px;min-height:100px}.ul-card__skeleton>.ul-skeleton:first-child{width:100%;aspect-ratio:16/9}.ul-card__skeleton-body{margin-top:12px;display:flex;flex-direction:column;gap:8px}\n"], dependencies: [{ kind: "component", type: SkeletonComponent, selector: "ul-skeleton", inputs: ["variant", "width", "height", "lines", "borderRadius", "show"] }], encapsulation: i0.ViewEncapsulation.None });
1298
1297
  }
1299
1298
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CardComponent, decorators: [{
1300
1299
  type: Component,
@@ -1311,116 +1310,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImpor
1311
1310
  '[class.ul-card--media-grayscale]': 'mediaGrayscale()',
1312
1311
  '[class.ul-card--loading]': 'loading()',
1313
1312
  '[class.ul-card--media-blurred]': 'mediaBlur()',
1314
- }, encapsulation: ViewEncapsulation.None, template: "@if (loading()) {\n <div class=\"ul-card__skeleton\">\n <div class=\"ul-card__media\">\n <ul-skeleton variant=\"rect\" borderRadius=\"lg\" [show]=\"true\" />\n </div>\n <div class=\"ul-card__content\">\n <div class=\"ul-card__content-title ul-card__content-title--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"2\" borderRadius=\"sm\" />\n </div>\n <div class=\"ul-card__content-subtitle ul-card__content-subtitle--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"1\" borderRadius=\"sm\" />\n </div>\n </div>\n </div>\n} @else {\n <div class=\"ul-card__media\">\n <ng-content select=\"[udsCardMedia]\" />\n <ng-content select=\"[udsCardMediaOverlay]\" />\n </div>\n <div class=\"ul-card__media-action\">\n <ng-content select=\"[udsCardMediaAction]\" />\n </div>\n\n <div class=\"ul-card__content\">\n @if (cardCaption()) {\n <div class=\"ul-card__content-caption\">\n {{ cardCaption() }}\n </div>\n }\n @if (cardTitle()) {\n <div\n class=\"ul-card__content-title\"\n [class.ul-card__content-title--single-line]=\"cardTitleSingleLine()\"\n >\n {{ cardTitle() }}\n </div>\n }\n @if (cardSubtitle()) {\n <div\n class=\"ul-card__content-subtitle\"\n [class.ul-card__content-subtitle--single-line]=\"cardSubtitleSingleLine()\"\n >\n {{ cardSubtitle() }}\n </div>\n }\n </div>\n\n <div class=\"ul-card__footer\">\n <ng-content select=\"[udsCardFooter]\" />\n </div>\n}\n", styles: [".ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-card{display:flex;position:relative;flex-direction:column;overflow:visible;width:100%;color:#ffffff80;border-radius:8px;gap:12px;outline:8px solid transparent;background-color:transparent;font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400;transition:background-color .25s cubic-bezier(.4,0,.2,1),outline .25s cubic-bezier(.4,0,.2,1)}@media(min-width:0px){.ul-card{min-width:100px}}@media(min-width:768px){.ul-card{min-width:180px}}@media(min-width:1280px){.ul-card{min-width:150px}}.ul-card:hover,.ul-card:focus,.ul-card:focus-within,.ul-card--focused{outline-color:#ffffff1a;background-color:#ffffff1a}.ul-card__media{position:relative;overflow:hidden;width:100%;background-color:#ffffff1a;border-radius:8px}@media(min-width:0px){.ul-card__media{min-height:100px}}@media(min-width:768px){.ul-card__media{min-height:180px}}@media(min-width:1280px){.ul-card__media{min-height:150px}}.ul-card__media>:first-child{width:100%;height:100%;display:block;object-fit:cover;filter:blur(var(--ul-card__media-blur, 0)) grayscale(var(--ul-card__media-grayscale, 0))}.ul-card__media>:nth-child(2){position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.ul-card__media-action{opacity:0;position:absolute;top:8px;right:8px;z-index:2;transition:opacity .15s cubic-bezier(.4,0,.2,1)}@media(max-width:1023px){.ul-card__media-action{opacity:1}}.ul-card:hover .ul-card__media-action,.ul-card:focus .ul-card__media-action,.ul-card:focus-within .ul-card__media-action{opacity:1}.ul-card__content{flex:1}.ul-card__content-caption{color:#ffffff80;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-title{color:#fff;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-title--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-subtitle{color:#ffffff80;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-subtitle--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__footer{display:flex;gap:8px}.ul-card--disabled{cursor:not-allowed;pointer-events:none;opacity:.5}.ul-card--caption-sm .ul-card__content-caption{font-family:Ultra Nunito Sans;line-height:20px;font-size:14px;letter-spacing:.14px;font-weight:400}.ul-card--footer-equal .ul-card__footer>*{flex:1}.ul-card--media-square .ul-card__media{aspect-ratio:1/1}.ul-card--media-portrait .ul-card__media{aspect-ratio:3/4}.ul-card__media img{width:100%;height:100%;object-fit:cover}.ul-card--media-blurred{--ul-card__media-blur: 16px}.ul-card--media-blurred .ul-card__media>:first-child{fill:#0000004d}.ul-card--media-grayscale{--ul-card__media-grayscale: 1}.ul-card--media-grayscale .ul-card__media>:first-child{opacity:.5;mix-blend-mode:luminosity}.ul-card__skeleton{display:flex;flex-direction:column;gap:12px;min-height:100px}.ul-card__skeleton>.ul-skeleton:first-child{width:100%;aspect-ratio:16/9}.ul-card__skeleton-body{margin-top:12px;display:flex;flex-direction:column;gap:8px}\n"] }]
1313
+ }, encapsulation: ViewEncapsulation.None, template: "@if (loading()) {\n <div class=\"ul-card__skeleton\">\n <div class=\"ul-card__media\">\n <ul-skeleton variant=\"rect\" borderRadius=\"lg\" [show]=\"true\" />\n </div>\n <div class=\"ul-card__content\">\n <div class=\"ul-card__content-title ul-card__content-title--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"2\" borderRadius=\"sm\" />\n </div>\n <div class=\"ul-card__content-subtitle ul-card__content-subtitle--single-line\">\n <ul-skeleton variant=\"text\" [lines]=\"1\" borderRadius=\"sm\" />\n </div>\n </div>\n </div>\n} @else {\n <div class=\"ul-card__media\">\n <ng-content select=\"[ulCardMedia]\" />\n <ng-content select=\"[ulCardMediaOverlay]\" />\n </div>\n <div class=\"ul-card__media-action\">\n <ng-content select=\"[ulCardMediaAction]\" />\n </div>\n\n <div class=\"ul-card__content\">\n @if (cardCaption()) {\n <div class=\"ul-card__content-caption\">\n {{ cardCaption() }}\n </div>\n }\n @if (cardTitle()) {\n <div\n class=\"ul-card__content-title\"\n [class.ul-card__content-title--single-line]=\"cardTitleSingleLine()\"\n >\n {{ cardTitle() }}\n </div>\n }\n @if (cardSubtitle()) {\n <div\n class=\"ul-card__content-subtitle\"\n [class.ul-card__content-subtitle--single-line]=\"cardSubtitleSingleLine()\"\n >\n {{ cardSubtitle() }}\n </div>\n }\n </div>\n\n <div class=\"ul-card__footer\">\n <ng-content select=\"[ulCardFooter]\" />\n </div>\n}\n", styles: [".ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-card{display:flex;position:relative;flex-direction:column;overflow:visible;width:100%;color:#ffffff80;border-radius:8px;gap:12px;outline:8px solid transparent;background-color:transparent;font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400;transition:background-color .25s cubic-bezier(.4,0,.2,1),outline .25s cubic-bezier(.4,0,.2,1)}@media(min-width:0px){.ul-card{min-width:100px}}@media(min-width:768px){.ul-card{min-width:180px}}@media(min-width:1280px){.ul-card{min-width:150px}}.ul-card:hover,.ul-card:focus,.ul-card:focus-within,.ul-card--focused{outline-color:#ffffff1a;background-color:#ffffff1a}.ul-card__media{position:relative;overflow:hidden;width:100%;background-color:#ffffff1a;border-radius:8px}@media(min-width:0px){.ul-card__media{min-height:100px}}@media(min-width:768px){.ul-card__media{min-height:180px}}@media(min-width:1280px){.ul-card__media{min-height:150px}}.ul-card__media>:first-child{width:100%;height:100%;display:block;object-fit:cover;filter:blur(var(--ul-card__media-blur, 0)) grayscale(var(--ul-card__media-grayscale, 0))}.ul-card__media>:nth-child(2){position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.ul-card__media-action{opacity:0;position:absolute;top:8px;right:8px;z-index:2;transition:opacity .15s cubic-bezier(.4,0,.2,1)}@media(max-width:1023px){.ul-card__media-action{opacity:1}}.ul-card:hover .ul-card__media-action,.ul-card:focus .ul-card__media-action,.ul-card:focus-within .ul-card__media-action{opacity:1}.ul-card__content{flex:1}.ul-card__content-caption{color:#ffffff80;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-title{color:#fff;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-title--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__content-subtitle{color:#ffffff80;font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:800;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ul-card__content-subtitle--single-line{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ul-card__footer{display:flex;gap:8px}.ul-card--disabled{cursor:not-allowed;pointer-events:none;opacity:.5}.ul-card--caption-sm .ul-card__content-caption{font-family:Ultra Nunito Sans;line-height:20px;font-size:14px;letter-spacing:.14px;font-weight:400}.ul-card--footer-equal .ul-card__footer>*{flex:1}.ul-card--media-square .ul-card__media{aspect-ratio:1/1}.ul-card--media-portrait .ul-card__media{aspect-ratio:3/4}.ul-card__media img{width:100%;height:100%;object-fit:cover}.ul-card--media-blurred{--ul-card__media-blur: 16px}.ul-card--media-blurred .ul-card__media>:first-child{fill:#0000004d}.ul-card--media-grayscale{--ul-card__media-grayscale: 1}.ul-card--media-grayscale .ul-card__media>:first-child{opacity:.5;mix-blend-mode:luminosity}.ul-card__skeleton{display:flex;flex-direction:column;gap:12px;min-height:100px}.ul-card__skeleton>.ul-skeleton:first-child{width:100%;aspect-ratio:16/9}.ul-card__skeleton-body{margin-top:12px;display:flex;flex-direction:column;gap:8px}\n"] }]
1315
1314
  }], propDecorators: { focused: [{ type: i0.Input, args: [{ isSignal: true, alias: "focused", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], cardDirection: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardDirection", required: false }] }], cardCaptionSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardCaptionSize", required: false }] }], footerDist: [{ type: i0.Input, args: [{ isSignal: true, alias: "footerDist", required: false }] }], mediaAspectRatio: [{ type: i0.Input, args: [{ isSignal: true, alias: "mediaAspectRatio", required: false }] }], mediaBlur: [{ type: i0.Input, args: [{ isSignal: true, alias: "mediaBlur", required: false }] }], mediaGrayscale: [{ type: i0.Input, args: [{ isSignal: true, alias: "mediaGrayscale", required: false }] }], cardCaption: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardCaption", required: false }] }], cardTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardTitle", required: false }] }], cardTitleSingleLine: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardTitleSingleLine", required: false }] }], cardSubtitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardSubtitle", required: false }] }], cardSubtitleSingleLine: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardSubtitleSingleLine", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }] } });
1316
1315
 
1317
- class CarouselItemComponent {
1318
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1319
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", type: CarouselItemComponent, isStandalone: true, selector: "ul-carousel-item", host: { classAttribute: "splide__slide ul-carousel__item" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, encapsulation: i0.ViewEncapsulation.None });
1320
- }
1321
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselItemComponent, decorators: [{
1322
- type: Component,
1323
- args: [{
1324
- selector: 'ul-carousel-item',
1325
- template: ` <ng-content /> `,
1326
- encapsulation: ViewEncapsulation.None,
1327
- host: {
1328
- class: 'splide__slide ul-carousel__item',
1329
- },
1330
- }]
1331
- }] });
1332
- class CarouselComponent {
1333
- options = input({
1334
- autoplay: true,
1335
- }, /* @ts-ignore */
1336
- ...(ngDevMode ? [{ debugName: "options" }] : /* istanbul ignore next */ []));
1337
- autoMount = input(true, /* @ts-ignore */
1338
- ...(ngDevMode ? [{ debugName: "autoMount" }] : /* istanbul ignore next */ []));
1339
- mounted = output();
1340
- carousel = viewChild('carousel', /* @ts-ignore */
1341
- ...(ngDevMode ? [{ debugName: "carousel" }] : /* istanbul ignore next */ []));
1342
- items = contentChildren(CarouselItemComponent, /* @ts-ignore */
1343
- ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
1344
- instance = null;
1345
- constructor() {
1346
- effect(() => {
1347
- this.items(); // trigger change detection
1348
- this.updateCarouselOnItemsChange();
1349
- });
1350
- }
1351
- ngAfterViewInit() {
1352
- this.init();
1353
- }
1354
- ngOnDestroy() {
1355
- this.instance?.destroy();
1356
- }
1357
- // Get the Splide instance
1358
- getInstance() {
1359
- return this.instance;
1360
- }
1361
- // Methods to control the carousel
1362
- goNext() {
1363
- this.instance?.go('>');
1364
- }
1365
- goPrev() {
1366
- this.instance?.go('<');
1367
- }
1368
- goTo(index) {
1369
- this.instance?.go(index);
1370
- }
1371
- // Mount the carousel
1372
- mount() {
1373
- if (!this.instance) {
1374
- throw new Error('Carousel instance not found');
1375
- }
1376
- this.instance.mount();
1377
- this.mounted.emit(this.instance);
1378
- }
1379
- init() {
1380
- const carousel = this.carousel();
1381
- if (!carousel) {
1382
- throw new Error('Carousel element not found');
1383
- }
1384
- // initialize the carousel
1385
- this.instance = new Splide(carousel.nativeElement, {
1386
- arrows: false,
1387
- classes: {
1388
- page: 'splide__pagination__page ul-carousel__pagination-dot',
1389
- },
1390
- ...this.options(),
1391
- });
1392
- // mount the carousel
1393
- if (this.autoMount()) {
1394
- this.mount();
1395
- }
1396
- }
1397
- updateCarouselOnItemsChange() {
1398
- this.instance?.refresh();
1399
- }
1400
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1401
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.0", type: CarouselComponent, isStandalone: true, selector: "ul-carousel", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, autoMount: { classPropertyName: "autoMount", publicName: "autoMount", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { mounted: "mounted" }, queries: [{ propertyName: "items", predicate: CarouselItemComponent, isSignal: true }], viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true, isSignal: true }], ngImport: i0, template: `
1402
- <div class="splide ul-carousel" #carousel role="region" aria-roledescription="carousel">
1403
- <div class="splide__track ul-carousel__track">
1404
- <div class="splide__list">
1405
- <ng-content />
1406
- </div>
1407
- </div>
1408
- </div>
1409
- `, isInline: true, styles: ["@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;contain:strict;display:inline-block;height:20px;inset:0;margin:auto;position:absolute;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-carousel{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;position:relative}.ul-carousel .splide__arrows{position:absolute;inset:0;z-index:1;pointer-events:none}.ul-carousel .splide__arrow{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:4096px;background-color:#0000004d;color:#fff;cursor:pointer;transition:background-color .25s cubic-bezier(.4,0,.2,1),opacity .25s cubic-bezier(.4,0,.2,1)}.ul-carousel .splide__arrow:hover:not(:disabled){background-color:#000000b3}.ul-carousel .splide__arrow svg{width:20px;height:20px;fill:currentColor}.ul-carousel .splide__arrow:disabled{opacity:.3;cursor:default}.ul-carousel .splide__arrow--prev{left:8px}.ul-carousel .splide__arrow--prev svg{transform:scaleX(-1)}.ul-carousel .splide__arrow--next{right:8px}.ul-carousel__pagination-dot{border:0;border-radius:50%;margin:1rem .2rem 0;padding:0;height:6px;width:6px;background-color:#ffffff80}.ul-carousel__pagination-dot.is-active{background-color:#fff}\n"], encapsulation: i0.ViewEncapsulation.None });
1410
- }
1411
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: CarouselComponent, decorators: [{
1412
- type: Component,
1413
- args: [{ selector: 'ul-carousel', template: `
1414
- <div class="splide ul-carousel" #carousel role="region" aria-roledescription="carousel">
1415
- <div class="splide__track ul-carousel__track">
1416
- <div class="splide__list">
1417
- <ng-content />
1418
- </div>
1419
- </div>
1420
- </div>
1421
- `, encapsulation: ViewEncapsulation.None, styles: ["@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;contain:strict;display:inline-block;height:20px;inset:0;margin:auto;position:absolute;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.ul-rich-text{font-family:Ultra Nunito Sans;line-height:28px;font-size:18px;letter-spacing:0px;font-weight:400;color:#fff}.ul-rich-text p,.ul-rich-text ul,.ul-rich-text ol,.ul-rich-text blockquote,.ul-rich-text pre{margin-top:0;margin-bottom:16px}.ul-rich-text:last-child,.ul-rich-text p:last-child,.ul-rich-text ul:last-child,.ul-rich-text ol:last-child,.ul-rich-text blockquote:last-child,.ul-rich-text pre:last-child{margin-bottom:0}.ul-rich-text h1,.ul-rich-text h2,.ul-rich-text h3,.ul-rich-text h4,.ul-rich-text h5,.ul-rich-text h6{margin-top:32px;margin-bottom:12px;font-weight:1000}.ul-rich-text h1{font-family:Ultra Nunito Sans;line-height:48px;font-size:48px;letter-spacing:-.48px;font-weight:1000}.ul-rich-text h2{font-family:Ultra Nunito Sans;line-height:48px;font-size:40px;letter-spacing:-.4px;font-weight:1000}.ul-rich-text h3{font-family:Ultra Nunito Sans;line-height:44px;font-size:36px;letter-spacing:-.36px;font-weight:1000}.ul-rich-text h4{font-family:Ultra Nunito Sans;line-height:40px;font-size:32px;letter-spacing:-.32px;font-weight:1000}.ul-rich-text h5{font-family:Ultra Nunito Sans;line-height:36px;font-size:28px;letter-spacing:-.28px;font-weight:1000}.ul-rich-text h6{font-family:Ultra Nunito Sans;line-height:36px;font-size:24px;letter-spacing:-.24px;font-weight:1000}.ul-rich-text ul,.ul-rich-text ol{padding-left:24px}.ul-rich-text ul ul,.ul-rich-text ul ol,.ul-rich-text ol ul,.ul-rich-text ol ol{margin-top:8px;margin-bottom:8px}.ul-rich-text li{margin-top:4px;margin-bottom:4px}.ul-rich-text strong{font-weight:800}.ul-rich-text code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text em{font-style:italic}.ul-rich-text a{color:#c2a8ff;text-decoration:underline;text-decoration-thickness:1px}.ul-rich-text a:hover{color:#d6c5ff}.ul-rich-text a:active{color:#a781ff}.ul-rich-text pre{padding:16px;border-radius:8px;background-color:#3b3b3b;overflow-x:auto}.ul-rich-text pre code{font-family:Roboto Mono;line-height:20px;font-size:14px;letter-spacing:0px;font-weight:400}.ul-rich-text blockquote{margin-left:0;padding-left:16px;border-left-width:2px;border-left-style:solid;border-left-color:#ffffff1a;color:#ffffffb3}.ul-rich-text--muted{color:#ffffffb3}.ul-rich-text--inverse,.ul-rich-text--inverse a{color:#000}.ul-rich-text--inverse a:hover,.ul-rich-text--inverse a:active{color:#000000b3}.ul-rich-text--body-m{font-family:Ultra Nunito Sans;line-height:24px;font-size:16px;letter-spacing:0px;font-weight:400}.ul-rich-text--compact p,.ul-rich-text--compact ul,.ul-rich-text--compact ol,.ul-rich-text--compact blockquote,.ul-rich-text--compact pre{margin-bottom:8px}.ul-rich-text--compact h1,.ul-rich-text--compact h2,.ul-rich-text--compact h3,.ul-rich-text--compact h4,.ul-rich-text--compact h5,.ul-rich-text--compact h6{margin-top:16px;margin-bottom:8px}.ul-carousel{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;position:relative}.ul-carousel .splide__arrows{position:absolute;inset:0;z-index:1;pointer-events:none}.ul-carousel .splide__arrow{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:4096px;background-color:#0000004d;color:#fff;cursor:pointer;transition:background-color .25s cubic-bezier(.4,0,.2,1),opacity .25s cubic-bezier(.4,0,.2,1)}.ul-carousel .splide__arrow:hover:not(:disabled){background-color:#000000b3}.ul-carousel .splide__arrow svg{width:20px;height:20px;fill:currentColor}.ul-carousel .splide__arrow:disabled{opacity:.3;cursor:default}.ul-carousel .splide__arrow--prev{left:8px}.ul-carousel .splide__arrow--prev svg{transform:scaleX(-1)}.ul-carousel .splide__arrow--next{right:8px}.ul-carousel__pagination-dot{border:0;border-radius:50%;margin:1rem .2rem 0;padding:0;height:6px;width:6px;background-color:#ffffff80}.ul-carousel__pagination-dot.is-active{background-color:#fff}\n"] }]
1422
- }], ctorParameters: () => [], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], autoMount: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoMount", required: false }] }], mounted: [{ type: i0.Output, args: ["mounted"] }], carousel: [{ type: i0.ViewChild, args: ['carousel', { isSignal: true }] }], items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => CarouselItemComponent), { isSignal: true }] }] } });
1423
-
1424
1316
  /**
1425
1317
  * Checkbox component. Implements FormCheckboxControl for Signal Forms [formField].
1426
1318
  * Use [(checked)] or [formField]="myForm().acceptTerms". No value property.
@@ -5149,5 +5041,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImpor
5149
5041
  * Generated bundle index. Do not edit.
5150
5042
  */
5151
5043
 
5152
- export { AccordionComponent, AccordionItemComponent, AreaCodeComponent, AvatarComponent, AvatarGroupComponent, BreadcrumbComponent, ButtonComponent, CalendarComponent, CardComponent, CarouselComponent, CarouselItemComponent, CheckboxComponent, CollapseComponent, CustomCurrencyPipe, DockComponent, DockItemComponent, DockItemContentSlotDirective, DropdownComponent, FileInputComponent, FooterComponent, FormFieldHelperComponent, FormFieldLabelComponent, HeroComponent, IconComponent, ImageCropperComponent, ImageNotFoundComponent, ImageNotFoundDirective, InputComponent, ListItemComponent, LongPressDirective, MenuComponent, MenuItemsComponent, MenuTriggerComponent, ModalComponent, NavbarAppNameSlotDirective, NavbarAvatarSlotDirective, NavbarComponent, NavbarLogoSlotDirective, NavbarSearchSlotDirective, PeHeroActionsSlotDirective, PeHeroBadgesSlotDirective, PeHeroContentSlotDirective, PeHeroSubtitleSlotDirective, PeHeroTitleSlotDirective, PillComponent, PriceButtonComponent, RadialComponent, RadioComponent, RadioGroupComponent, RichTextComponent, SearchInputComponent, SearchSelectComponent, SelectComponent, SelectableRowComponent, SidebarComponent, SkeletonComponent, StatusComponent, StepperComponent, TableComponent, TextareaComponent, TextareaFieldDirective, ToastContainerComponent, ToastService, ToggleComponent, TooltipComponent, createFormFieldIds, getFormFieldDescribedBy, toastIcon };
5044
+ export { AccordionComponent, AccordionItemComponent, AreaCodeComponent, AvatarComponent, AvatarGroupComponent, BreadcrumbComponent, ButtonComponent, CalendarComponent, CardComponent, CheckboxComponent, CollapseComponent, CustomCurrencyPipe, DockComponent, DockItemComponent, DockItemContentSlotDirective, DropdownComponent, FileInputComponent, FooterComponent, FormFieldHelperComponent, FormFieldLabelComponent, HeroComponent, IconComponent, ImageCropperComponent, ImageNotFoundComponent, ImageNotFoundDirective, InputComponent, ListItemComponent, LongPressDirective, MenuComponent, MenuItemsComponent, MenuTriggerComponent, ModalComponent, NavbarAppNameSlotDirective, NavbarAvatarSlotDirective, NavbarComponent, NavbarLogoSlotDirective, NavbarSearchSlotDirective, PeHeroActionsSlotDirective, PeHeroBadgesSlotDirective, PeHeroContentSlotDirective, PeHeroSubtitleSlotDirective, PeHeroTitleSlotDirective, PillComponent, PriceButtonComponent, RadialComponent, RadioComponent, RadioGroupComponent, RichTextComponent, SearchInputComponent, SearchSelectComponent, SelectComponent, SelectableRowComponent, SidebarComponent, SkeletonComponent, StatusComponent, StepperComponent, TableComponent, TextareaComponent, TextareaFieldDirective, ToastContainerComponent, ToastService, ToggleComponent, TooltipComponent, createFormFieldIds, getFormFieldDescribedBy, toastIcon };
5153
5045
  //# sourceMappingURL=underlayerdev-ui.mjs.map