@sapphire-ion/framework 1.0.15 → 1.0.17
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/esm2022/lib/components/drawer/drawer-group/drawer-group.component.mjs +3 -3
- package/esm2022/lib/components/drawer/drawer.component.mjs +52 -13
- package/esm2022/lib/components/inputs/input-bool/input-bool.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-cep/input-cep.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-date/input-date.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-decimal/input-decimal.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +3 -3
- package/esm2022/lib/components/inputs/input-string/input-string.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-telefone/input-telefone.component.mjs +2 -2
- package/esm2022/lib/components/inputs/input-textarea/input-textarea.component.mjs +2 -2
- package/esm2022/lib/components/main-content/main-content.component.mjs +38 -6
- package/esm2022/lib/components/popover/sion-popover/sion-popover.component.mjs +29 -12
- package/esm2022/lib/services/auth.service.mjs +5 -1
- package/fesm2022/sapphire-ion-framework.mjs +130 -48
- package/fesm2022/sapphire-ion-framework.mjs.map +1 -1
- package/lib/components/drawer/drawer.component.d.ts +12 -2
- package/lib/components/main-content/main-content.component.d.ts +9 -1
- package/lib/components/popover/sion-popover/sion-popover.component.d.ts +7 -4
- package/lib/components/stepper/step/step.component.d.ts +1 -1
- package/package.json +1 -1
- package/themes/compiled-styles.scss +26 -0
- package/themes/components/drawer/drawer-group/drawer-group.component.scss +54 -14
- package/themes/components/drawer/drawer.component.scss +58 -2
- package/themes/components/inputs/inputs.scss +1 -1
- package/themes/styles/core.styles.scss +1 -1
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
import { EventEmitter, InputSignal, Signal } from '@angular/core';
|
|
1
|
+
import { EventEmitter, InputSignal, Signal, WritableSignal } from '@angular/core';
|
|
2
|
+
import { NavController } from '@ionic/angular';
|
|
2
3
|
import { Menu } from './menu';
|
|
4
|
+
import { Router } from '@angular/router';
|
|
5
|
+
import { GenericService } from '../../services/generics.service';
|
|
3
6
|
import * as i0 from "@angular/core";
|
|
4
7
|
export declare class DrawerComponent {
|
|
8
|
+
router: Router;
|
|
9
|
+
private navController;
|
|
10
|
+
private genericService;
|
|
5
11
|
TranslationModule: any;
|
|
6
12
|
loading: boolean;
|
|
7
13
|
lstMenu: InputSignal<Menu[]>;
|
|
@@ -10,12 +16,16 @@ export declare class DrawerComponent {
|
|
|
10
16
|
colapsedChange: EventEmitter<boolean>;
|
|
11
17
|
title: string;
|
|
12
18
|
useTranslation: boolean;
|
|
13
|
-
constructor();
|
|
19
|
+
constructor(router: Router, navController: NavController, genericService: GenericService);
|
|
14
20
|
CurrentGroupActive: Menu;
|
|
15
21
|
ToggleCollapsed(): void;
|
|
16
22
|
_enterColapsed: boolean;
|
|
17
23
|
onMouseEnter(): void;
|
|
18
24
|
onMouseLeave(): void;
|
|
25
|
+
HandleNav(item: Menu | any, event: MouseEvent): void;
|
|
26
|
+
SetTitle(item: Menu): void;
|
|
27
|
+
search: WritableSignal<string>;
|
|
28
|
+
lstMenuFiltered: Signal<Menu[]>;
|
|
19
29
|
static ɵfac: i0.ɵɵFactoryDeclaration<DrawerComponent, never>;
|
|
20
30
|
static ɵcmp: i0.ɵɵComponentDeclaration<DrawerComponent, "drawer", never, { "loading": { "alias": "loading"; "required": false; }; "lstMenu": { "alias": "lstMenu"; "required": false; "isSignal": true; }; "colapsed": { "alias": "colapsed"; "required": false; }; "title": { "alias": "title"; "required": false; }; "useTranslation": { "alias": "useTranslation"; "required": false; }; }, { "colapsedChange": "colapsedChange"; }, never, ["[slot=logo]", "[slot=drawer]"], true, never>;
|
|
21
31
|
}
|
|
@@ -10,10 +10,18 @@ export declare class MainContentComponent implements OnInit {
|
|
|
10
10
|
drawerComponent: DrawerComponent;
|
|
11
11
|
constructor(authService: AuthService);
|
|
12
12
|
Token: any;
|
|
13
|
-
ngOnInit(): void
|
|
13
|
+
ngOnInit(): Promise<void>;
|
|
14
|
+
Theme: Theme;
|
|
15
|
+
SetTheme(theme: Theme): Promise<void>;
|
|
14
16
|
get fullScreen(): boolean;
|
|
15
17
|
FullScreenConteiner: any;
|
|
16
18
|
FullScreen(): void;
|
|
17
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<MainContentComponent, never>;
|
|
18
20
|
static ɵcmp: i0.ɵɵComponentDeclaration<MainContentComponent, "main-content", never, { "backdrop": { "alias": "backdrop"; "required": false; }; "shadowColor": { "alias": "shadowColor"; "required": false; }; "colapsed": { "alias": "colapsed"; "required": false; }; "drawerComponent": { "alias": "drawerComponent"; "required": false; }; }, {}, never, ["[slot=start]", "[slot=end]", "[slot=user-popover]", "*"], true, never>;
|
|
19
21
|
}
|
|
22
|
+
declare enum Theme {
|
|
23
|
+
System = 0,
|
|
24
|
+
Light = 1,
|
|
25
|
+
Dark = 2
|
|
26
|
+
}
|
|
27
|
+
export {};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { ElementRef, EventEmitter, OnDestroy, QueryList, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
1
|
+
import { ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, QueryList, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import { ComputePositionReturn, Placement } from '@floating-ui/dom';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
type Fill = 'solid' | 'outline' | 'blur' | 'clear';
|
|
5
|
-
export declare class SIonPopoverComponent implements OnDestroy {
|
|
5
|
+
export declare class SIonPopoverComponent implements OnDestroy, OnInit {
|
|
6
6
|
private viewContainerRef;
|
|
7
|
+
private ngZone;
|
|
7
8
|
fill: Fill;
|
|
8
9
|
arrow: boolean;
|
|
9
10
|
flip: boolean;
|
|
@@ -15,7 +16,7 @@ export declare class SIonPopoverComponent implements OnDestroy {
|
|
|
15
16
|
onWillDismiss: EventEmitter<void>;
|
|
16
17
|
onDidDismiss: EventEmitter<void>;
|
|
17
18
|
anchor: HTMLElement | undefined;
|
|
18
|
-
constructor(viewContainerRef: ViewContainerRef);
|
|
19
|
+
constructor(viewContainerRef: ViewContainerRef, ngZone: NgZone);
|
|
19
20
|
popoverTemplate: TemplateRef<any>;
|
|
20
21
|
contentContainer: ElementRef<HTMLDivElement>;
|
|
21
22
|
arrowElement: ElementRef<HTMLElement>;
|
|
@@ -27,7 +28,9 @@ export declare class SIonPopoverComponent implements OnDestroy {
|
|
|
27
28
|
present(event?: Event): Promise<void>;
|
|
28
29
|
GetComputePositionReturn(refEl: HTMLElement, popEl: HTMLElement, arrowEl: HTMLElement): Promise<ComputePositionReturn>;
|
|
29
30
|
private CreatePopoverInBody;
|
|
30
|
-
|
|
31
|
+
onClick(event: MouseEvent): void;
|
|
32
|
+
documentClickListener: (event: MouseEvent) => void;
|
|
33
|
+
ngOnInit(): void;
|
|
31
34
|
dismiss(): Promise<void>;
|
|
32
35
|
ngOnDestroy(): void;
|
|
33
36
|
static ɵfac: i0.ɵɵFactoryDeclaration<SIonPopoverComponent, never>;
|
|
@@ -9,7 +9,7 @@ export declare class StepComponent implements OnInit {
|
|
|
9
9
|
get index(): number;
|
|
10
10
|
get fill(): boolean;
|
|
11
11
|
get selected(): boolean;
|
|
12
|
-
get _fill():
|
|
12
|
+
get _fill(): 0 | 1;
|
|
13
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<StepComponent, never>;
|
|
14
14
|
static ɵcmp: i0.ɵɵComponentDeclaration<StepComponent, "step", never, { "label": { "alias": "label"; "required": false; }; }, {}, never, ["ion-icon, ion-text"], false, never>;
|
|
15
15
|
}
|
package/package.json
CHANGED
|
@@ -1555,6 +1555,10 @@ video {
|
|
|
1555
1555
|
align-items: center;
|
|
1556
1556
|
}
|
|
1557
1557
|
|
|
1558
|
+
.\!justify-start {
|
|
1559
|
+
justify-content: flex-start !important;
|
|
1560
|
+
}
|
|
1561
|
+
|
|
1558
1562
|
.justify-start {
|
|
1559
1563
|
justify-content: flex-start;
|
|
1560
1564
|
}
|
|
@@ -1828,6 +1832,10 @@ video {
|
|
|
1828
1832
|
border-right-width: 2px;
|
|
1829
1833
|
}
|
|
1830
1834
|
|
|
1835
|
+
.border-t {
|
|
1836
|
+
border-top-width: 1px;
|
|
1837
|
+
}
|
|
1838
|
+
|
|
1831
1839
|
.border-solid {
|
|
1832
1840
|
border-style: solid;
|
|
1833
1841
|
}
|
|
@@ -1976,6 +1984,11 @@ video {
|
|
|
1976
1984
|
padding-right: 0px !important;
|
|
1977
1985
|
}
|
|
1978
1986
|
|
|
1987
|
+
.\!py-2 {
|
|
1988
|
+
padding-top: 0.5rem !important;
|
|
1989
|
+
padding-bottom: 0.5rem !important;
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1979
1992
|
.px-1 {
|
|
1980
1993
|
padding-left: 0.25rem;
|
|
1981
1994
|
padding-right: 0.25rem;
|
|
@@ -2035,6 +2048,10 @@ video {
|
|
|
2035
2048
|
padding-bottom: 0px !important;
|
|
2036
2049
|
}
|
|
2037
2050
|
|
|
2051
|
+
.\!pl-8 {
|
|
2052
|
+
padding-left: 2rem !important;
|
|
2053
|
+
}
|
|
2054
|
+
|
|
2038
2055
|
.\!pr-0 {
|
|
2039
2056
|
padding-right: 0px !important;
|
|
2040
2057
|
}
|
|
@@ -2051,6 +2068,10 @@ video {
|
|
|
2051
2068
|
padding-left: 0.75rem;
|
|
2052
2069
|
}
|
|
2053
2070
|
|
|
2071
|
+
.pl-4 {
|
|
2072
|
+
padding-left: 1rem;
|
|
2073
|
+
}
|
|
2074
|
+
|
|
2054
2075
|
.pl-8 {
|
|
2055
2076
|
padding-left: 2rem;
|
|
2056
2077
|
}
|
|
@@ -2273,6 +2294,11 @@ video {
|
|
|
2273
2294
|
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
2274
2295
|
}
|
|
2275
2296
|
|
|
2297
|
+
.drop-shadow {
|
|
2298
|
+
--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
|
|
2299
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
2300
|
+
}
|
|
2301
|
+
|
|
2276
2302
|
.grayscale {
|
|
2277
2303
|
--tw-grayscale: grayscale(100%);
|
|
2278
2304
|
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
@@ -1,21 +1,61 @@
|
|
|
1
1
|
|
|
2
|
-
.bg-active{
|
|
3
|
-
--color-primary: var(--ion-color-primary) !important;
|
|
4
|
-
--step-1-opacity: 0.7 !important;
|
|
5
|
-
--step-2-opacity: 0.3 !important;
|
|
6
|
-
// --background: color-mix(in srgb, var(--ion-color-secondary) 70%, transparent 30%) !important;
|
|
7
|
-
}
|
|
8
|
-
.bg-inactive{
|
|
9
|
-
--color-primary: var(--ion-color-step-250);
|
|
10
|
-
--step-1-opacity: .5;
|
|
11
|
-
--step-2-opacity: .4;
|
|
12
|
-
--step-3-opacity: .8;
|
|
13
|
-
}
|
|
14
2
|
.menu{
|
|
15
|
-
@apply rounded-xl cursor-pointer p-1.5 flex items-center justify-start
|
|
3
|
+
@apply rounded-xl cursor-pointer p-1.5 flex items-center justify-start shrink-0 overflow-hidden;
|
|
16
4
|
transition: --color-primary, --step-1-opacity, --step-2-opacity .2s ease-in-out;
|
|
17
|
-
--inset: var(--color-primary) 0px 1.75px
|
|
5
|
+
--inset: var(--color-primary) 0px 1.75px 2px 0px inset;
|
|
18
6
|
box-shadow: var(--inset);
|
|
7
|
+
.content{
|
|
8
|
+
@apply flex items-center justify-start gap-2;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
&.bg-active{
|
|
13
|
+
&::after{
|
|
14
|
+
content: '';
|
|
15
|
+
position: absolute;
|
|
16
|
+
top: 50%;
|
|
17
|
+
right: 0;
|
|
18
|
+
width: .375rem;
|
|
19
|
+
height: 75%;
|
|
20
|
+
transform: translateY(-50%);
|
|
21
|
+
border-radius: inherit;
|
|
22
|
+
background-color: color-mix(in srgb, var(--ion-color-primary) 70%, transparent);
|
|
23
|
+
opacity: 1 !important;
|
|
24
|
+
|
|
25
|
+
filter: drop-shadow(color-mix(in srgb, var(--ion-color-primary) 70%, transparent) 0px 0px 3px)
|
|
26
|
+
}
|
|
27
|
+
&::before{
|
|
28
|
+
content: "";
|
|
29
|
+
position: absolute;
|
|
30
|
+
top: 50%;
|
|
31
|
+
right: -2.3rem;
|
|
32
|
+
width: 5rem;
|
|
33
|
+
height: 7rem;
|
|
34
|
+
transform: translateY(-50%);
|
|
35
|
+
border-radius: inherit;
|
|
36
|
+
opacity: .5 !important;
|
|
37
|
+
background: radial-gradient(color-mix(in srgb, var(--ion-color-primary) 70%, transparent) 0%, transparent 66%);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
&.bg-inactive{
|
|
41
|
+
--color-primary: var(--ion-color-step-250);
|
|
42
|
+
--step-1-opacity: .5;
|
|
43
|
+
--step-2-opacity: .4;
|
|
44
|
+
--step-3-opacity: .8;
|
|
45
|
+
position: relative;
|
|
46
|
+
&::after{
|
|
47
|
+
content: '';
|
|
48
|
+
opacity: 0;
|
|
49
|
+
transition: opacity .2s ease-in-out;
|
|
50
|
+
will-change: opacity;
|
|
51
|
+
}
|
|
52
|
+
&::before{
|
|
53
|
+
content: '';
|
|
54
|
+
opacity: 0;
|
|
55
|
+
transition: opacity .2s ease-in-out;
|
|
56
|
+
will-change: opacity;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
19
59
|
}
|
|
20
60
|
|
|
21
61
|
.header{
|
|
@@ -60,10 +60,66 @@
|
|
|
60
60
|
.menu{
|
|
61
61
|
@apply rounded-xl cursor-pointer p-2 flex items-center justify-center gap-2;
|
|
62
62
|
transition: --color-primary, --step-1-opacity, --step-2-opacity .2s ease-in-out;
|
|
63
|
-
--inset: var(--color-primary) 0px 1.75px
|
|
63
|
+
--inset: var(--color-primary) 0px 1.75px 2px 0px inset;
|
|
64
64
|
box-shadow: var(--inset);
|
|
65
65
|
}
|
|
66
66
|
.toggle:hover{
|
|
67
67
|
--color-primary: var(--ion-color-step-500) !important;
|
|
68
68
|
transition: --color-primary .2s ease-in-out;
|
|
69
|
-
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.search-button{
|
|
72
|
+
--inset2: var(--ion-color-medium) 0px 0px 5px -1px inset;
|
|
73
|
+
box-shadow: var(--inset2);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.menu-search{
|
|
77
|
+
@apply relative overflow-hidden cursor-pointer;
|
|
78
|
+
&.bg-active{
|
|
79
|
+
&::after{
|
|
80
|
+
content: '';
|
|
81
|
+
position: absolute;
|
|
82
|
+
top: 50%;
|
|
83
|
+
right: 0;
|
|
84
|
+
width: .375rem;
|
|
85
|
+
height: 75%;
|
|
86
|
+
transform: translateY(-50%);
|
|
87
|
+
border-radius: 1rem;
|
|
88
|
+
background-color: color-mix(in srgb, var(--ion-color-primary) 70%, transparent);
|
|
89
|
+
opacity: 1 !important;
|
|
90
|
+
|
|
91
|
+
filter: drop-shadow(color-mix(in srgb, var(--ion-color-primary) 70%, transparent) 0px 0px 3px)
|
|
92
|
+
}
|
|
93
|
+
&::before{
|
|
94
|
+
content: "";
|
|
95
|
+
position: absolute;
|
|
96
|
+
top: 50%;
|
|
97
|
+
right: -2.3rem;
|
|
98
|
+
width: 5rem;
|
|
99
|
+
height: 7rem;
|
|
100
|
+
transform: translateY(-50%);
|
|
101
|
+
border-radius: 1rem;
|
|
102
|
+
opacity: .5 !important;
|
|
103
|
+
background: radial-gradient(color-mix(in srgb, var(--ion-color-primary) 70%, transparent) 0%, transparent 66%);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
&.bg-inactive{
|
|
107
|
+
--color-primary: var(--ion-color-step-250);
|
|
108
|
+
--step-1-opacity: .5;
|
|
109
|
+
--step-2-opacity: .4;
|
|
110
|
+
--step-3-opacity: .8;
|
|
111
|
+
position: relative;
|
|
112
|
+
&::after{
|
|
113
|
+
content: '';
|
|
114
|
+
opacity: 0;
|
|
115
|
+
transition: opacity .2s ease-in-out;
|
|
116
|
+
will-change: opacity;
|
|
117
|
+
}
|
|
118
|
+
&::before{
|
|
119
|
+
content: '';
|
|
120
|
+
opacity: 0;
|
|
121
|
+
transition: opacity .2s ease-in-out;
|
|
122
|
+
will-change: opacity;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
--color: var(--ion-color-dark);
|
|
36
36
|
--input-color: var(--input-background, var(--ion-color-step-250));
|
|
37
37
|
--shadow: 0 3px 4px -1px rgb(0 0 0 / 0.1);
|
|
38
|
-
--inset-shadow: var(--input-color) 0px 1.75px
|
|
38
|
+
--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;
|
|
39
39
|
--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);
|
|
40
40
|
|
|
41
41
|
box-shadow: var(--inset-shadow), var(--shadow);
|
|
@@ -463,4 +463,4 @@ text-tooltip{
|
|
|
463
463
|
hsl(from var(--color-primary , var(--ion-color-primary)) h s l / var(--step-1-opacity, 0.7)),
|
|
464
464
|
hsl(from var(--color-primary , var(--ion-color-primary)) h s l / var(--step-2-opacity, 0.3))),
|
|
465
465
|
hsl(from var(--color-secondary, var(--ion-color-light)) h s l / var(--step-3-opacity, 0.2));
|
|
466
|
-
}
|
|
466
|
+
}
|