otimus-library 0.3.39 → 0.3.41
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.
- package/fesm2022/otimus-library.mjs +257 -3
- package/fesm2022/otimus-library.mjs.map +1 -1
- package/index.d.ts +50 -2
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, Component, Input, Directive,
|
|
2
|
+
import { Injectable, Component, Input, Directive, input, EventEmitter, Output, HostBinding, ContentChild, ViewEncapsulation, ViewChildren, ViewChild, ChangeDetectionStrategy, forwardRef, ContentChildren } from '@angular/core';
|
|
3
3
|
import * as i2$1 from '@angular/cdk/menu';
|
|
4
4
|
import { CdkMenuModule } from '@angular/cdk/menu';
|
|
5
5
|
import * as i1 from '@angular/common';
|
|
@@ -8,7 +8,7 @@ import * as i2 from '@angular/platform-browser';
|
|
|
8
8
|
import * as i5 from '@angular/forms';
|
|
9
9
|
import { FormsModule, ReactiveFormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
10
10
|
import * as i1$1 from '@angular/common/http';
|
|
11
|
-
import { ComponentPortal } from '@angular/cdk/portal';
|
|
11
|
+
import { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
|
|
12
12
|
import * as i3 from '@angular/cdk/overlay';
|
|
13
13
|
|
|
14
14
|
class OtimusLibraryService {
|
|
@@ -539,6 +539,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
539
539
|
type: Input
|
|
540
540
|
}] } });
|
|
541
541
|
|
|
542
|
+
class OcCardComponent {
|
|
543
|
+
constructor() {
|
|
544
|
+
this.ocSelected = input(false, ...(ngDevMode ? [{ debugName: "ocSelected" }] : []));
|
|
545
|
+
this.ocColor = input('default', ...(ngDevMode ? [{ debugName: "ocColor" }] : []));
|
|
546
|
+
this.ocClickable = input(false, ...(ngDevMode ? [{ debugName: "ocClickable" }] : []));
|
|
547
|
+
this.ocClick = new EventEmitter();
|
|
548
|
+
}
|
|
549
|
+
onClick() {
|
|
550
|
+
this.ocClick.emit();
|
|
551
|
+
}
|
|
552
|
+
get color() {
|
|
553
|
+
return 'oc-' + this.ocColor();
|
|
554
|
+
}
|
|
555
|
+
get isSelected() {
|
|
556
|
+
return this.ocSelected() ? 'oc-card-selected' : '';
|
|
557
|
+
}
|
|
558
|
+
get isClickable() {
|
|
559
|
+
return this.ocClickable() ? 'oc-card-clickable' : '';
|
|
560
|
+
}
|
|
561
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: OcCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
562
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.9", type: OcCardComponent, isStandalone: true, selector: "oc-card", inputs: { ocSelected: { classPropertyName: "ocSelected", publicName: "ocSelected", isSignal: true, isRequired: false, transformFunction: null }, ocColor: { classPropertyName: "ocColor", publicName: "ocColor", isSignal: true, isRequired: false, transformFunction: null }, ocClickable: { classPropertyName: "ocClickable", publicName: "ocClickable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ocClick: "ocClick" }, ngImport: i0, template: "<div\n class=\"oc-card\"\n [ngClass]=\"[color, isSelected, isClickable]\"\n (click)=\"onClick()\"\n>\n <div class=\"oc-card-header\">\n <ng-content select=\"[header]\"></ng-content>\n </div>\n <div class=\"oc-card-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"oc-card-footer\">\n <ng-content select=\"[footer]\"></ng-content>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.oc-card{border-radius:4px 8px 8px 4px;padding:1.5rem;display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto 1fr;grid-row-gap:.5rem}.oc-card .oc-card-header{grid-area:1/1/1/1}.oc-card .oc-card-body{grid-area:2/1/2/1}.oc-card .oc-card-footer{grid-area:3/1/3/1}.oc-default{background-color:#f7f7f7;border-left:4px solid #8f9596;color:#8f9596}.oc-red{background-color:#fff3f3;border-left:4px solid #ed3a3a;color:#ed3a3a}.oc-green{background-color:#eefff7fc;border-left:4px solid #00dda3;color:#00dda3}.oc-card-selected{transform:translateY(-6px) scale(1.01);box-shadow:0 20px 30px #0000001f,0 6px 12px #0000000f,inset 0 1px #ffffff05;border-left-width:6px;outline:3px solid rgba(0,0,0,.04);outline-offset:6px;position:relative;z-index:1}.oc-card-selected:after{content:\"\\2713\";position:absolute;top:10px;right:10px;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;font-size:12px;font-weight:700;color:#fff;background:#00dda3;box-shadow:0 3px 6px #0000001f}.oc-card-clickable{transition:transform .18s cubic-bezier(.2,.9,.2,1),box-shadow .18s,border-left-width .18s,outline-offset .18s,background-color .18s;cursor:pointer}.oc-card-clickable:active{transform:translateY(1px) scale(.998)}.oc-card-clickable:focus-visible{outline:3px solid rgba(0,0,0,.06);outline-offset:4px}.oc-card-clickable:not(.oc-card-selected):hover{transform:translateY(-6px) scale(1.01);box-shadow:0 26px 40px #00000024,0 8px 18px #0000000f}.oc-card-clickable.oc-card-selected:hover{transform:translateY(-8px) scale(1.012);box-shadow:0 30px 48px #00000026,0 10px 20px #0000000f}.oc-card.disabled{cursor:default;pointer-events:none;opacity:.7}@media (prefers-reduced-motion: reduce){.oc-card-clickable,.oc-card-clickable:not(.oc-card-selected):hover,.oc-card-clickable.oc-card-selected:hover{transition:none!important;transform:none!important;box-shadow:none!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
563
|
+
}
|
|
564
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: OcCardComponent, decorators: [{
|
|
565
|
+
type: Component,
|
|
566
|
+
args: [{ selector: 'oc-card', standalone: true, imports: [CommonModule], template: "<div\n class=\"oc-card\"\n [ngClass]=\"[color, isSelected, isClickable]\"\n (click)=\"onClick()\"\n>\n <div class=\"oc-card-header\">\n <ng-content select=\"[header]\"></ng-content>\n </div>\n <div class=\"oc-card-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"oc-card-footer\">\n <ng-content select=\"[footer]\"></ng-content>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.oc-card{border-radius:4px 8px 8px 4px;padding:1.5rem;display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto 1fr;grid-row-gap:.5rem}.oc-card .oc-card-header{grid-area:1/1/1/1}.oc-card .oc-card-body{grid-area:2/1/2/1}.oc-card .oc-card-footer{grid-area:3/1/3/1}.oc-default{background-color:#f7f7f7;border-left:4px solid #8f9596;color:#8f9596}.oc-red{background-color:#fff3f3;border-left:4px solid #ed3a3a;color:#ed3a3a}.oc-green{background-color:#eefff7fc;border-left:4px solid #00dda3;color:#00dda3}.oc-card-selected{transform:translateY(-6px) scale(1.01);box-shadow:0 20px 30px #0000001f,0 6px 12px #0000000f,inset 0 1px #ffffff05;border-left-width:6px;outline:3px solid rgba(0,0,0,.04);outline-offset:6px;position:relative;z-index:1}.oc-card-selected:after{content:\"\\2713\";position:absolute;top:10px;right:10px;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;font-size:12px;font-weight:700;color:#fff;background:#00dda3;box-shadow:0 3px 6px #0000001f}.oc-card-clickable{transition:transform .18s cubic-bezier(.2,.9,.2,1),box-shadow .18s,border-left-width .18s,outline-offset .18s,background-color .18s;cursor:pointer}.oc-card-clickable:active{transform:translateY(1px) scale(.998)}.oc-card-clickable:focus-visible{outline:3px solid rgba(0,0,0,.06);outline-offset:4px}.oc-card-clickable:not(.oc-card-selected):hover{transform:translateY(-6px) scale(1.01);box-shadow:0 26px 40px #00000024,0 8px 18px #0000000f}.oc-card-clickable.oc-card-selected:hover{transform:translateY(-8px) scale(1.012);box-shadow:0 30px 48px #00000026,0 10px 20px #0000000f}.oc-card.disabled{cursor:default;pointer-events:none;opacity:.7}@media (prefers-reduced-motion: reduce){.oc-card-clickable,.oc-card-clickable:not(.oc-card-selected):hover,.oc-card-clickable.oc-card-selected:hover{transition:none!important;transform:none!important;box-shadow:none!important}}\n"] }]
|
|
567
|
+
}], propDecorators: { ocSelected: [{ type: i0.Input, args: [{ isSignal: true, alias: "ocSelected", required: false }] }], ocColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "ocColor", required: false }] }], ocClickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "ocClickable", required: false }] }], ocClick: [{
|
|
568
|
+
type: Output
|
|
569
|
+
}] } });
|
|
570
|
+
|
|
542
571
|
class OcFilterComponent {
|
|
543
572
|
constructor(styleThemeService) {
|
|
544
573
|
this.styleThemeService = styleThemeService;
|
|
@@ -2619,6 +2648,231 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
2619
2648
|
type: Input
|
|
2620
2649
|
}] } });
|
|
2621
2650
|
|
|
2651
|
+
class OcOverlayComponent {
|
|
2652
|
+
constructor(overlay, viewContainerRef) {
|
|
2653
|
+
this.overlay = overlay;
|
|
2654
|
+
this.viewContainerRef = viewContainerRef;
|
|
2655
|
+
this.ocContent = null;
|
|
2656
|
+
this.ocTrigger = 'click';
|
|
2657
|
+
this.ocPosition = 'center';
|
|
2658
|
+
this.ocShowBackdrop = true;
|
|
2659
|
+
this.ocCloseOnBackdropClick = true;
|
|
2660
|
+
this.ocWidth = 'auto';
|
|
2661
|
+
this.ocHeight = 'auto';
|
|
2662
|
+
this.ocStyle = 'otimus';
|
|
2663
|
+
this.ocDisabled = false;
|
|
2664
|
+
this.ocZIndex = 1000;
|
|
2665
|
+
this.ocOpen = new EventEmitter();
|
|
2666
|
+
this.ocClose = new EventEmitter();
|
|
2667
|
+
this.ocToggle = new EventEmitter();
|
|
2668
|
+
this.overlayRef = null;
|
|
2669
|
+
this.portal = null;
|
|
2670
|
+
this.isOverlayOpen = false;
|
|
2671
|
+
}
|
|
2672
|
+
ngAfterViewInit() {
|
|
2673
|
+
this.setupEventListeners();
|
|
2674
|
+
}
|
|
2675
|
+
ngOnDestroy() {
|
|
2676
|
+
this.closeOverlay();
|
|
2677
|
+
}
|
|
2678
|
+
setupEventListeners() {
|
|
2679
|
+
if (!this.trigger || this.ocDisabled)
|
|
2680
|
+
return;
|
|
2681
|
+
const triggerElement = this.trigger.nativeElement;
|
|
2682
|
+
if (this.ocTrigger === 'click') {
|
|
2683
|
+
triggerElement.addEventListener('click', (event) => {
|
|
2684
|
+
event.stopPropagation();
|
|
2685
|
+
this.toggleOverlay();
|
|
2686
|
+
});
|
|
2687
|
+
}
|
|
2688
|
+
else if (this.ocTrigger === 'hover') {
|
|
2689
|
+
triggerElement.addEventListener('mouseenter', () => {
|
|
2690
|
+
this.openOverlay();
|
|
2691
|
+
});
|
|
2692
|
+
triggerElement.addEventListener('mouseleave', () => {
|
|
2693
|
+
// Add a small delay before closing to allow moving into the overlay
|
|
2694
|
+
setTimeout(() => {
|
|
2695
|
+
this.closeOverlay();
|
|
2696
|
+
}, 100);
|
|
2697
|
+
});
|
|
2698
|
+
}
|
|
2699
|
+
}
|
|
2700
|
+
toggleOverlay() {
|
|
2701
|
+
if (this.isOverlayOpen) {
|
|
2702
|
+
this.closeOverlay();
|
|
2703
|
+
}
|
|
2704
|
+
else {
|
|
2705
|
+
this.openOverlay();
|
|
2706
|
+
}
|
|
2707
|
+
}
|
|
2708
|
+
openOverlay() {
|
|
2709
|
+
if (this.isOverlayOpen || this.ocDisabled || !this.overlayTemplate) {
|
|
2710
|
+
return;
|
|
2711
|
+
}
|
|
2712
|
+
const overlayConfig = this.getOverlayConfig();
|
|
2713
|
+
this.overlayRef = this.overlay.create(overlayConfig);
|
|
2714
|
+
this.portal = new TemplatePortal(this.overlayTemplate, this.viewContainerRef);
|
|
2715
|
+
this.overlayRef.attach(this.portal);
|
|
2716
|
+
this.isOverlayOpen = true;
|
|
2717
|
+
// Handle backdrop click
|
|
2718
|
+
if (this.ocShowBackdrop && this.ocCloseOnBackdropClick) {
|
|
2719
|
+
this.overlayRef.backdropClick().subscribe(() => {
|
|
2720
|
+
this.closeOverlay();
|
|
2721
|
+
});
|
|
2722
|
+
}
|
|
2723
|
+
this.ocOpen.emit();
|
|
2724
|
+
this.ocToggle.emit(true);
|
|
2725
|
+
}
|
|
2726
|
+
closeOverlay() {
|
|
2727
|
+
if (!this.overlayRef || !this.isOverlayOpen) {
|
|
2728
|
+
return;
|
|
2729
|
+
}
|
|
2730
|
+
this.overlayRef.detach();
|
|
2731
|
+
this.overlayRef.dispose();
|
|
2732
|
+
this.overlayRef = null;
|
|
2733
|
+
this.portal = null;
|
|
2734
|
+
this.isOverlayOpen = false;
|
|
2735
|
+
this.ocClose.emit();
|
|
2736
|
+
this.ocToggle.emit(false);
|
|
2737
|
+
}
|
|
2738
|
+
getOverlayConfig() {
|
|
2739
|
+
const positionStrategy = this.overlay.position()
|
|
2740
|
+
.flexibleConnectedTo(this.trigger.nativeElement)
|
|
2741
|
+
.withPositions(this.getPositions())
|
|
2742
|
+
.withFlexibleDimensions(true)
|
|
2743
|
+
.withPush(false);
|
|
2744
|
+
return {
|
|
2745
|
+
positionStrategy,
|
|
2746
|
+
hasBackdrop: this.ocShowBackdrop,
|
|
2747
|
+
backdropClass: this.ocShowBackdrop ? undefined : 'cdk-overlay-transparent-backdrop',
|
|
2748
|
+
panelClass: ['oc-overlay-panel', `oc-overlay-${this.ocStyle}`],
|
|
2749
|
+
width: this.parseSize(this.ocWidth),
|
|
2750
|
+
height: this.parseSize(this.ocHeight),
|
|
2751
|
+
disposeOnNavigation: true
|
|
2752
|
+
};
|
|
2753
|
+
}
|
|
2754
|
+
getPositions() {
|
|
2755
|
+
const basePositions = [
|
|
2756
|
+
{
|
|
2757
|
+
originX: 'center',
|
|
2758
|
+
originY: 'bottom',
|
|
2759
|
+
overlayX: 'center',
|
|
2760
|
+
overlayY: 'top',
|
|
2761
|
+
offsetX: 0,
|
|
2762
|
+
offsetY: 8
|
|
2763
|
+
},
|
|
2764
|
+
{
|
|
2765
|
+
originX: 'center',
|
|
2766
|
+
originY: 'top',
|
|
2767
|
+
overlayX: 'center',
|
|
2768
|
+
overlayY: 'bottom',
|
|
2769
|
+
offsetX: 0,
|
|
2770
|
+
offsetY: -8
|
|
2771
|
+
},
|
|
2772
|
+
{
|
|
2773
|
+
originX: 'end',
|
|
2774
|
+
originY: 'center',
|
|
2775
|
+
overlayX: 'start',
|
|
2776
|
+
overlayY: 'center',
|
|
2777
|
+
offsetX: -8,
|
|
2778
|
+
offsetY: 0
|
|
2779
|
+
},
|
|
2780
|
+
{
|
|
2781
|
+
originX: 'start',
|
|
2782
|
+
originY: 'center',
|
|
2783
|
+
overlayX: 'end',
|
|
2784
|
+
overlayY: 'center',
|
|
2785
|
+
offsetX: 8,
|
|
2786
|
+
offsetY: 0
|
|
2787
|
+
}
|
|
2788
|
+
];
|
|
2789
|
+
// Position-specific configurations
|
|
2790
|
+
switch (this.ocPosition) {
|
|
2791
|
+
case 'top':
|
|
2792
|
+
return [
|
|
2793
|
+
{
|
|
2794
|
+
originX: 'center',
|
|
2795
|
+
originY: 'top',
|
|
2796
|
+
overlayX: 'center',
|
|
2797
|
+
overlayY: 'bottom',
|
|
2798
|
+
offsetX: 0,
|
|
2799
|
+
offsetY: -8
|
|
2800
|
+
},
|
|
2801
|
+
basePositions[0]
|
|
2802
|
+
];
|
|
2803
|
+
case 'bottom':
|
|
2804
|
+
return [
|
|
2805
|
+
basePositions[0],
|
|
2806
|
+
basePositions[1]
|
|
2807
|
+
];
|
|
2808
|
+
case 'left':
|
|
2809
|
+
return [
|
|
2810
|
+
{
|
|
2811
|
+
originX: 'start',
|
|
2812
|
+
originY: 'center',
|
|
2813
|
+
overlayX: 'end',
|
|
2814
|
+
overlayY: 'center',
|
|
2815
|
+
offsetX: -8,
|
|
2816
|
+
offsetY: 0
|
|
2817
|
+
},
|
|
2818
|
+
basePositions[2]
|
|
2819
|
+
];
|
|
2820
|
+
case 'right':
|
|
2821
|
+
return [
|
|
2822
|
+
basePositions[2],
|
|
2823
|
+
basePositions[3]
|
|
2824
|
+
];
|
|
2825
|
+
case 'center':
|
|
2826
|
+
default:
|
|
2827
|
+
return basePositions;
|
|
2828
|
+
}
|
|
2829
|
+
}
|
|
2830
|
+
parseSize(size) {
|
|
2831
|
+
if (size === 'auto' || size === undefined) {
|
|
2832
|
+
return undefined;
|
|
2833
|
+
}
|
|
2834
|
+
return typeof size === 'number' ? `${size}px` : size;
|
|
2835
|
+
}
|
|
2836
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: OcOverlayComponent, deps: [{ token: i3.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2837
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: OcOverlayComponent, isStandalone: true, selector: "oc-overlay", inputs: { ocContent: "ocContent", ocTrigger: "ocTrigger", ocPosition: "ocPosition", ocShowBackdrop: "ocShowBackdrop", ocCloseOnBackdropClick: "ocCloseOnBackdropClick", ocWidth: "ocWidth", ocHeight: "ocHeight", ocStyle: "ocStyle", ocDisabled: "ocDisabled", ocZIndex: "ocZIndex" }, outputs: { ocOpen: "ocOpen", ocClose: "ocClose", ocToggle: "ocToggle" }, viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "overlayTemplate", first: true, predicate: ["overlayTemplate"], descendants: true }], ngImport: i0, template: "<!-- Trigger element -->\n<div #trigger class=\"oc-overlay-trigger\" [ngClass]=\"{\n 'disabled': ocDisabled,\n 'shui': ocStyle === 'shui'\n}\">\n <ng-content select=\"[ocTrigger]\"></ng-content>\n</div>\n\n<!-- Template for overlay content -->\n<ng-template #overlayTemplate>\n <div class=\"oc-overlay-content\" [ngClass]=\"{\n 'shui': ocStyle === 'shui'\n }\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [".oc-overlay-trigger{display:inline-block;cursor:pointer;transition:opacity .2s ease}.oc-overlay-trigger.disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.oc-overlay-trigger:hover:not(.disabled){opacity:.8}.oc-overlay-panel{border-radius:0 8px 8px;box-shadow:0 4px 8.7px #00000021;z-index:1000;max-width:90vw;max-height:90vh;overflow:auto;animation:showUp .15s ease}.oc-overlay-content{padding:16px;font-family:inherit;font-size:1rem;line-height:1.5;color:#8f9596;background-color:#f8f9ff;border:2px solid #ffffff;border-radius:12px}.oc-overlay-panel.oc-overlay-otimus .oc-overlay-content{color:#8f9596}.oc-overlay-panel.oc-overlay-shui{background-color:#f5f5f5;border:2px solid #ebebeb}.oc-overlay-panel.oc-overlay-shui .oc-overlay-content{color:#7d7d7d}.oc-overlay-backdrop{background-color:#00000052;animation:backdropFadeIn .2s ease-out}@keyframes showUp{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.oc-overlay-panel{max-width:95vw;max-height:95vh}.oc-overlay-content{padding:12px;font-size:.875rem}}@media (prefers-contrast: high){.oc-overlay-panel{border-width:2px}}@media (prefers-reduced-motion: reduce){.oc-overlay-panel,.oc-overlay-backdrop{animation:none}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
2838
|
+
}
|
|
2839
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: OcOverlayComponent, decorators: [{
|
|
2840
|
+
type: Component,
|
|
2841
|
+
args: [{ selector: 'oc-overlay', imports: [CommonModule], template: "<!-- Trigger element -->\n<div #trigger class=\"oc-overlay-trigger\" [ngClass]=\"{\n 'disabled': ocDisabled,\n 'shui': ocStyle === 'shui'\n}\">\n <ng-content select=\"[ocTrigger]\"></ng-content>\n</div>\n\n<!-- Template for overlay content -->\n<ng-template #overlayTemplate>\n <div class=\"oc-overlay-content\" [ngClass]=\"{\n 'shui': ocStyle === 'shui'\n }\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [".oc-overlay-trigger{display:inline-block;cursor:pointer;transition:opacity .2s ease}.oc-overlay-trigger.disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.oc-overlay-trigger:hover:not(.disabled){opacity:.8}.oc-overlay-panel{border-radius:0 8px 8px;box-shadow:0 4px 8.7px #00000021;z-index:1000;max-width:90vw;max-height:90vh;overflow:auto;animation:showUp .15s ease}.oc-overlay-content{padding:16px;font-family:inherit;font-size:1rem;line-height:1.5;color:#8f9596;background-color:#f8f9ff;border:2px solid #ffffff;border-radius:12px}.oc-overlay-panel.oc-overlay-otimus .oc-overlay-content{color:#8f9596}.oc-overlay-panel.oc-overlay-shui{background-color:#f5f5f5;border:2px solid #ebebeb}.oc-overlay-panel.oc-overlay-shui .oc-overlay-content{color:#7d7d7d}.oc-overlay-backdrop{background-color:#00000052;animation:backdropFadeIn .2s ease-out}@keyframes showUp{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.oc-overlay-panel{max-width:95vw;max-height:95vh}.oc-overlay-content{padding:12px;font-size:.875rem}}@media (prefers-contrast: high){.oc-overlay-panel{border-width:2px}}@media (prefers-reduced-motion: reduce){.oc-overlay-panel,.oc-overlay-backdrop{animation:none}}\n"] }]
|
|
2842
|
+
}], ctorParameters: () => [{ type: i3.Overlay }, { type: i0.ViewContainerRef }], propDecorators: { ocContent: [{
|
|
2843
|
+
type: Input
|
|
2844
|
+
}], ocTrigger: [{
|
|
2845
|
+
type: Input
|
|
2846
|
+
}], ocPosition: [{
|
|
2847
|
+
type: Input
|
|
2848
|
+
}], ocShowBackdrop: [{
|
|
2849
|
+
type: Input
|
|
2850
|
+
}], ocCloseOnBackdropClick: [{
|
|
2851
|
+
type: Input
|
|
2852
|
+
}], ocWidth: [{
|
|
2853
|
+
type: Input
|
|
2854
|
+
}], ocHeight: [{
|
|
2855
|
+
type: Input
|
|
2856
|
+
}], ocStyle: [{
|
|
2857
|
+
type: Input
|
|
2858
|
+
}], ocDisabled: [{
|
|
2859
|
+
type: Input
|
|
2860
|
+
}], ocZIndex: [{
|
|
2861
|
+
type: Input
|
|
2862
|
+
}], ocOpen: [{
|
|
2863
|
+
type: Output
|
|
2864
|
+
}], ocClose: [{
|
|
2865
|
+
type: Output
|
|
2866
|
+
}], ocToggle: [{
|
|
2867
|
+
type: Output
|
|
2868
|
+
}], trigger: [{
|
|
2869
|
+
type: ViewChild,
|
|
2870
|
+
args: ['trigger']
|
|
2871
|
+
}], overlayTemplate: [{
|
|
2872
|
+
type: ViewChild,
|
|
2873
|
+
args: ['overlayTemplate']
|
|
2874
|
+
}] } });
|
|
2875
|
+
|
|
2622
2876
|
/*
|
|
2623
2877
|
* Public API Surface of otimus-library
|
|
2624
2878
|
*/
|
|
@@ -2627,5 +2881,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
2627
2881
|
* Generated bundle index. Do not edit.
|
|
2628
2882
|
*/
|
|
2629
2883
|
|
|
2630
|
-
export { OcAccordionComponent, OcAccordionItemComponent, OcAutocompleteComponent, OcBadgeComponent, OcButtonMenuComponent, OcCheckboxComponent, OcChipComponent, OcDateSelectComponent, OcFilterComponent, OcInputComponent, OcKeyValueComponent, OcLogComponent, OcMenuComponent, OcMenuHorizComponent, OcMenuHorizDirective, OcMessageComponent, OcModalComponent, OcModalFooterComponent, OcNotFoundComponent, OcPaginationComponent, OcProfileComponent, OcProgressComponent, OcStepComponent, OcStepperComponent, OcTabComponent, OcTabsComponent, OcToastComponent, OcToastService, OcToggleComponent, OcTooltipDirective, OtimusLibraryComponent, OtimusLibraryService, StyleThemeService };
|
|
2884
|
+
export { OcAccordionComponent, OcAccordionItemComponent, OcAutocompleteComponent, OcBadgeComponent, OcButtonMenuComponent, OcCardComponent, OcCheckboxComponent, OcChipComponent, OcDateSelectComponent, OcFilterComponent, OcInputComponent, OcKeyValueComponent, OcLogComponent, OcMenuComponent, OcMenuHorizComponent, OcMenuHorizDirective, OcMessageComponent, OcModalComponent, OcModalFooterComponent, OcNotFoundComponent, OcOverlayComponent, OcPaginationComponent, OcProfileComponent, OcProgressComponent, OcStepComponent, OcStepperComponent, OcTabComponent, OcTabsComponent, OcToastComponent, OcToastService, OcToggleComponent, OcTooltipDirective, OtimusLibraryComponent, OtimusLibraryService, StyleThemeService };
|
|
2631
2885
|
//# sourceMappingURL=otimus-library.mjs.map
|