@sapphire-ion/framework 1.0.12 → 1.0.15

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.
Files changed (38) hide show
  1. package/esm2022/lib/classes/environment.mjs +4 -2
  2. package/esm2022/lib/classes/inputs/table-field.mjs +11 -1
  3. package/esm2022/lib/components/default/default-view/default-view.component.mjs +17 -11
  4. package/esm2022/lib/components/drawer/default-drawer-end/default-drawer-end.component.mjs +3 -3
  5. package/esm2022/lib/components/drawer/drawer-group/drawer-group.component.mjs +11 -8
  6. package/esm2022/lib/components/drawer/drawer.component.mjs +13 -13
  7. package/esm2022/lib/components/inputs/input-configuration.mjs +1 -1
  8. package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +1 -1
  9. package/esm2022/lib/components/inputs/input-icon/fluenticons.mjs +3734 -0
  10. package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +54 -0
  11. package/esm2022/lib/components/inputs/input-icon/ionicons.mjs +1360 -0
  12. package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +3 -3
  13. package/esm2022/lib/components/inputs/input-type.mjs +12 -6
  14. package/esm2022/lib/components/inputs/inputs.module.mjs +6 -2
  15. package/esm2022/lib/components/login/login.component.mjs +10 -4
  16. package/esm2022/lib/components/main-content/main-content.component.mjs +3 -3
  17. package/esm2022/lib/guards/error.interceptor.mjs +2 -1
  18. package/esm2022/lib/index.mjs +3 -1
  19. package/fesm2022/sapphire-ion-framework.mjs +5535 -368
  20. package/fesm2022/sapphire-ion-framework.mjs.map +1 -1
  21. package/lib/classes/environment.d.ts +2 -1
  22. package/lib/components/default/default-view/default-view.component.d.ts +2 -0
  23. package/lib/components/drawer/drawer-group/drawer-group.component.d.ts +1 -1
  24. package/lib/components/drawer/drawer.component.d.ts +1 -3
  25. package/lib/components/inputs/input-configuration.d.ts +2 -1
  26. package/lib/components/inputs/input-icon/fluenticons.d.ts +1 -0
  27. package/lib/components/inputs/input-icon/input-icon.component.d.ts +20 -0
  28. package/lib/components/inputs/input-icon/ionicons.d.ts +1 -0
  29. package/lib/components/inputs/input-type.d.ts +12 -6
  30. package/lib/components/inputs/inputs.module.d.ts +18 -17
  31. package/lib/components/login/login.component.d.ts +1 -0
  32. package/lib/index.d.ts +1 -0
  33. package/package.json +1 -1
  34. package/themes/compiled-styles.scss +18 -0
  35. package/themes/components/drawer/drawer-group/drawer-group.component.scss +19 -16
  36. package/themes/components/drawer/drawer.component.scss +63 -40
  37. package/themes/components/inputs/input-icon/input-icon.component.scss +0 -0
  38. package/themes/styles/core.styles.scss +61 -4
@@ -2,6 +2,7 @@ import { Credentials } from "./credentials";
2
2
  import { ViewFiltros } from "./filters/view-filtros";
3
3
  import { PageOption } from "./page-option";
4
4
  export declare class Environment {
5
+ useFluentIcons: boolean;
5
6
  production: boolean;
6
7
  applicationName: string;
7
8
  apiUrl: string | null;
@@ -9,5 +10,5 @@ export declare class Environment {
9
10
  defaultPageLimits: PageOption[];
10
11
  get defaultPageLimit(): number | null;
11
12
  get defaultPaginationObject(): ViewFiltros;
12
- constructor(production: boolean, applicationName: string, apiUrl: string, defaultCredentials?: Credentials, defaultPageLimits?: PageOption[]);
13
+ constructor(production: boolean, applicationName: string, apiUrl: string, defaultCredentials?: Credentials, defaultPageLimits?: PageOption[], useFluentIcons?: boolean);
13
14
  }
@@ -6,6 +6,7 @@ import { HttpServiceAtivo } from '../../../services/web/http.ativo.service';
6
6
  import { HttpService } from '../../../services/web/http.service';
7
7
  import { GenericService } from './../../../services/generics.service';
8
8
  import { View } from './view';
9
+ import { InputType } from '../../inputs/input-type';
9
10
  import * as i0 from "@angular/core";
10
11
  /** Componente View Padão */
11
12
  export declare class DefaultViewComponent<T extends HttpService | HttpServiceAtivo> extends View<T> implements OnInit {
@@ -20,6 +21,7 @@ export declare class DefaultViewComponent<T extends HttpService | HttpServiceAti
20
21
  noNew: boolean;
21
22
  /** Remove os breadcrumbs da listagem */
22
23
  noBreadcrumbs: boolean;
24
+ InputType: typeof InputType;
23
25
  constructor(fb: FormBuilder, elementRef: ElementRef, activatedRoute: ActivatedRoute, genericService: GenericService, navController: NavController);
24
26
  static ɵfac: i0.ɵɵFactoryDeclaration<DefaultViewComponent<any>, never>;
25
27
  static ɵcmp: i0.ɵɵComponentDeclaration<DefaultViewComponent<any>, "default-view", never, { "noBack": { "alias": "noBack"; "required": false; }; "noNew": { "alias": "noNew"; "required": false; }; "noBreadcrumbs": { "alias": "noBreadcrumbs"; "required": false; }; }, {}, never, never, false, never>;
@@ -14,7 +14,7 @@ export declare class DrawerGroupComponent implements OnInit {
14
14
  useTranslation: boolean;
15
15
  constructor(router: Router, navController: NavController, genericService: GenericService);
16
16
  ngOnInit(): void;
17
- HandleNav(item: Menu | any): void;
17
+ HandleNav(item: Menu | any, event: MouseEvent): void;
18
18
  SetTitle(item: Menu): void;
19
19
  lstIonAcordionGroup: QueryList<IonAccordion>;
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<DrawerGroupComponent, never>;
@@ -1,9 +1,7 @@
1
1
  import { EventEmitter, InputSignal, Signal } from '@angular/core';
2
2
  import { Menu } from './menu';
3
- import { GenericService } from '../../services/generics.service';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class DrawerComponent {
6
- private genericService;
7
5
  TranslationModule: any;
8
6
  loading: boolean;
9
7
  lstMenu: InputSignal<Menu[]>;
@@ -12,7 +10,7 @@ export declare class DrawerComponent {
12
10
  colapsedChange: EventEmitter<boolean>;
13
11
  title: string;
14
12
  useTranslation: boolean;
15
- constructor(genericService: GenericService);
13
+ constructor();
16
14
  CurrentGroupActive: Menu;
17
15
  ToggleCollapsed(): void;
18
16
  _enterColapsed: boolean;
@@ -5,4 +5,5 @@ import { InputStringConfiguration } from "./input-string/input-string.configurat
5
5
  import { InputBoolConfiguration } from "./input-bool/input-bool.configuration";
6
6
  import { InputDateConfiguration } from "./input-date/input-date.configuration";
7
7
  import { InputFileConfiguration } from "./input-file/input-file.configuration";
8
- export type InputConfiguration = InputFileConfiguration | InputSelectConfiguration | InputBoolConfiguration | InputDateConfiguration | InputDecimalConfiguration | InputNumberConfiguration | InputCurrencyConfiguration | InputCpfCnpjConfiguration | InputStringConfiguration | any;
8
+ import { InputTelefoneCelularConfiguration } from "./input-telefone/input-telefone.configuration";
9
+ export type InputConfiguration = InputBoolConfiguration | InputCpfCnpjConfiguration | InputDateConfiguration | InputDecimalConfiguration | InputCurrencyConfiguration | InputNumberConfiguration | InputFileConfiguration | InputSelectConfiguration | InputStringConfiguration | InputTelefoneCelularConfiguration | any;
@@ -0,0 +1 @@
1
+ export declare const lstFluenticons: string[];
@@ -0,0 +1,20 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { CustomInput } from '../custom-input';
3
+ import { EnvironmentService } from '../../../services/environment.service';
4
+ import { InputSelectConfiguration } from '../input-select/input.select.configuration';
5
+ import * as i0 from "@angular/core";
6
+ export declare class InputIconComponent extends CustomInput<string> {
7
+ private environmentService;
8
+ lstIcons: {
9
+ name: string;
10
+ }[];
11
+ input: ElementRef<HTMLInputElement>;
12
+ inputContainer: ElementRef<HTMLDivElement>;
13
+ focus(event: MouseEvent): void;
14
+ config: InputSelectConfiguration;
15
+ constructor(environmentService: EnvironmentService);
16
+ writeValue(obj: string): void | Promise<void>;
17
+ SetValue(obj: string): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputIconComponent, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputIconComponent, "input-icon", never, {}, {}, never, never, false, never>;
20
+ }
@@ -0,0 +1 @@
1
+ export declare const lstIconsIonicons: string[];
@@ -1,16 +1,22 @@
1
1
  export declare enum InputType {
2
2
  Bool = "Bool",
3
- Currency = "Currency",
3
+ Cep = "Cep",
4
+ Color = "Color",
5
+ CpfCnpj = "CpfCnpj",
6
+ Cpf = "Cpf",
7
+ Cnpj = "Cnpj",
4
8
  Date = "Date",
5
9
  DateTime = "DateTime",
6
10
  Time = "Time",
7
11
  Decimal = "Decimal",
12
+ Currency = "Currency",
8
13
  Number = "Number",
9
14
  File = "File",
10
- String = "String",
11
- TextArea = "TextArea",
15
+ Icon = "Icon",
12
16
  Select = "Select",
13
- Cpf = "Cpf",
14
- Cpnj = "Cnpj",
15
- CpfCnpj = "CpfCnpj"
17
+ String = "String",
18
+ TelefoneCelular = "TelefoneCelular",
19
+ Telefone = "Telefone",
20
+ Celular = "Celular",
21
+ TextArea = "TextArea"
16
22
  }
@@ -6,24 +6,25 @@ import * as i4 from "./input-cpf-cnpj/input-cpf-cnpj.component";
6
6
  import * as i5 from "./input-date/input-date.component";
7
7
  import * as i6 from "./input-decimal/input-decimal.component";
8
8
  import * as i7 from "./input-file/input-file.component";
9
- import * as i8 from "./input-select/input-select.component";
10
- import * as i9 from "./input-select/directives/sion-label-template.directive";
11
- import * as i10 from "./input-select/directives/sion-option-template.directive";
12
- import * as i11 from "./input-select/directives/sion-placeholder-template.directive";
13
- import * as i12 from "./input-string/input-string.component";
14
- import * as i13 from "./input-telefone/input-telefone.component";
15
- import * as i14 from "./input-textarea/input-textarea.component";
16
- import * as i15 from "./input-file/download-button/download-button.component";
17
- import * as i16 from "@ionic/angular";
18
- import * as i17 from "@angular/common";
19
- import * as i18 from "@angular/forms";
20
- import * as i19 from "../image/image.component";
21
- import * as i20 from "@maskito/angular";
22
- import * as i21 from "../popover/sion-popover.module";
23
- import * as i22 from "../loading/loading.component";
24
- import * as i23 from "../../directives/ng-var.directive";
9
+ import * as i8 from "./input-icon/input-icon.component";
10
+ import * as i9 from "./input-select/input-select.component";
11
+ import * as i10 from "./input-select/directives/sion-label-template.directive";
12
+ import * as i11 from "./input-select/directives/sion-option-template.directive";
13
+ import * as i12 from "./input-select/directives/sion-placeholder-template.directive";
14
+ import * as i13 from "./input-string/input-string.component";
15
+ import * as i14 from "./input-telefone/input-telefone.component";
16
+ import * as i15 from "./input-textarea/input-textarea.component";
17
+ import * as i16 from "./input-file/download-button/download-button.component";
18
+ import * as i17 from "@ionic/angular";
19
+ import * as i18 from "@angular/common";
20
+ import * as i19 from "@angular/forms";
21
+ import * as i20 from "../image/image.component";
22
+ import * as i21 from "@maskito/angular";
23
+ import * as i22 from "../popover/sion-popover.module";
24
+ import * as i23 from "../loading/loading.component";
25
+ import * as i24 from "../../directives/ng-var.directive";
25
26
  export declare class InputsModule {
26
27
  static ɵfac: i0.ɵɵFactoryDeclaration<InputsModule, never>;
27
- static ɵmod: i0.ɵɵNgModuleDeclaration<InputsModule, [typeof i1.InputBoolComponent, typeof i2.InputCepComponent, typeof i3.InputColorComponent, typeof i4.InputCpfCnpjComponent, typeof i5.InputDateComponent, typeof i6.InputDecimalComponent, typeof i7.InputFileComponent, typeof i8.InputSelectComponent, typeof i9.SIonLabelTemplateDirective, typeof i10.SIonOptionTemplateDirective, typeof i11.SIonPlaceholderTemplateDirective, typeof i12.InputStringComponent, typeof i13.InputTelefoneComponent, typeof i14.InputTextareaComponent, typeof i15.DownloadButtonComponent], [typeof i16.IonicModule, typeof i17.CommonModule, typeof i18.ReactiveFormsModule, typeof i18.FormsModule, typeof i19.ImageComponent, typeof i20.MaskitoDirective, typeof i21.SIonPopoverModule, typeof i22.LoadingComponent, typeof i23.NgVarDirective], [typeof i1.InputBoolComponent, typeof i2.InputCepComponent, typeof i3.InputColorComponent, typeof i4.InputCpfCnpjComponent, typeof i5.InputDateComponent, typeof i6.InputDecimalComponent, typeof i7.InputFileComponent, typeof i8.InputSelectComponent, typeof i9.SIonLabelTemplateDirective, typeof i10.SIonOptionTemplateDirective, typeof i11.SIonPlaceholderTemplateDirective, typeof i12.InputStringComponent, typeof i13.InputTelefoneComponent, typeof i14.InputTextareaComponent, typeof i15.DownloadButtonComponent]>;
28
+ static ɵmod: i0.ɵɵNgModuleDeclaration<InputsModule, [typeof i1.InputBoolComponent, typeof i2.InputCepComponent, typeof i3.InputColorComponent, typeof i4.InputCpfCnpjComponent, typeof i5.InputDateComponent, typeof i6.InputDecimalComponent, typeof i7.InputFileComponent, typeof i8.InputIconComponent, typeof i9.InputSelectComponent, typeof i10.SIonLabelTemplateDirective, typeof i11.SIonOptionTemplateDirective, typeof i12.SIonPlaceholderTemplateDirective, typeof i13.InputStringComponent, typeof i14.InputTelefoneComponent, typeof i15.InputTextareaComponent, typeof i16.DownloadButtonComponent], [typeof i17.IonicModule, typeof i18.CommonModule, typeof i19.ReactiveFormsModule, typeof i19.FormsModule, typeof i20.ImageComponent, typeof i21.MaskitoDirective, typeof i22.SIonPopoverModule, typeof i23.LoadingComponent, typeof i24.NgVarDirective], [typeof i1.InputBoolComponent, typeof i2.InputCepComponent, typeof i3.InputColorComponent, typeof i4.InputCpfCnpjComponent, typeof i5.InputDateComponent, typeof i6.InputDecimalComponent, typeof i7.InputFileComponent, typeof i8.InputIconComponent, typeof i9.InputSelectComponent, typeof i10.SIonLabelTemplateDirective, typeof i11.SIonOptionTemplateDirective, typeof i12.SIonPlaceholderTemplateDirective, typeof i13.InputStringComponent, typeof i14.InputTelefoneComponent, typeof i15.InputTextareaComponent, typeof i16.DownloadButtonComponent]>;
28
29
  static ɵinj: i0.ɵɵInjectorDeclaration<InputsModule>;
29
30
  }
@@ -22,6 +22,7 @@ export declare class DefaultLoginComponent implements OnInit {
22
22
  loading: boolean;
23
23
  submitted: boolean;
24
24
  OnLogin: EventEmitter<any>;
25
+ loginContainer: HTMLElement;
25
26
  Login($event?: KeyboardEvent): Promise<void>;
26
27
  static ɵfac: i0.ɵɵFactoryDeclaration<DefaultLoginComponent, never>;
27
28
  static ɵcmp: i0.ɵɵComponentDeclaration<DefaultLoginComponent, "login", never, {}, { "OnLogin": "OnLogin"; }, never, ["[slot=logo]", "[slot=end]"], true, never>;
package/lib/index.d.ts CHANGED
@@ -65,6 +65,7 @@ export * from '../lib/components/inputs/input-decimal/input-decimal.configuratio
65
65
  export * from '../lib/components/inputs/input-file/download-button/download-button.component';
66
66
  export * from '../lib/components/inputs/input-file/input-file.component';
67
67
  export * from '../lib/components/inputs/input-file/input-file.configuration';
68
+ export * from '../lib/components/inputs/input-icon/input-icon.component';
68
69
  export * from '../lib/components/inputs/input-select/directives/sion-label-template.directive';
69
70
  export * from '../lib/components/inputs/input-select/directives/sion-option-template.directive';
70
71
  export * from '../lib/components/inputs/input-select/directives/sion-placeholder-template.directive';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapphire-ion/framework",
3
- "version": "1.0.12",
3
+ "version": "1.0.15",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^18.2.8",
@@ -1951,6 +1951,10 @@ video {
1951
1951
  padding: 0.25rem;
1952
1952
  }
1953
1953
 
1954
+ .p-1\.5 {
1955
+ padding: 0.375rem;
1956
+ }
1957
+
1954
1958
  .p-2 {
1955
1959
  padding: 0.5rem;
1956
1960
  }
@@ -2031,6 +2035,10 @@ video {
2031
2035
  padding-bottom: 0px !important;
2032
2036
  }
2033
2037
 
2038
+ .\!pr-0 {
2039
+ padding-right: 0px !important;
2040
+ }
2041
+
2034
2042
  .pb-2 {
2035
2043
  padding-bottom: 0.5rem;
2036
2044
  }
@@ -2051,6 +2059,10 @@ video {
2051
2059
  padding-right: 2.5rem;
2052
2060
  }
2053
2061
 
2062
+ .pr-2 {
2063
+ padding-right: 0.5rem;
2064
+ }
2065
+
2054
2066
  .pr-3 {
2055
2067
  padding-right: 0.75rem;
2056
2068
  }
@@ -2333,6 +2345,12 @@ video {
2333
2345
  margin-right: 0px;
2334
2346
  }
2335
2347
 
2348
+ @supports selector(::-webkit-scrollbar-thumb) {
2349
+ .supports-\[selector\(\:\:-webkit-scrollbar-thumb\)\]\:\!w-\[3\.375rem\] {
2350
+ width: 3.375rem !important;
2351
+ }
2352
+ }
2353
+
2336
2354
  @media (min-width: 640px) {
2337
2355
  .sm\:flex-row {
2338
2356
  flex-direction: row;
@@ -1,22 +1,25 @@
1
1
 
2
2
  .bg-active{
3
- --background: color-mix(in srgb, var(--ion-color-secondary) 70%, transparent 30%) !important;
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;
4
7
  }
5
8
  .bg-inactive{
6
- @apply cursor-pointer;
7
- --border-radius: 1rem;
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
+ .menu{
15
+ @apply rounded-xl cursor-pointer p-1.5 flex items-center justify-start gap-2;
16
+ transition: --color-primary, --step-1-opacity, --step-2-opacity .2s ease-in-out;
17
+ --inset: var(--color-primary) 0px 1.75px 1px 0px inset;
18
+ box-shadow: var(--inset);
19
+ }
8
20
 
9
- &::part(native){
10
- @apply transition-all;
11
- }
12
- --background: color-mix(in srgb, var(--ion-color-light-shade) 50%, transparent 50%);
13
- &:hover{
14
- --background: color-mix(in srgb, var(--ion-color-light-shade) 70%, transparent 30%);
15
- }
16
- @media (prefers-color-scheme: dark) {
17
- --background: color-mix(in srgb, var(--ion-color-light-tint) 70%, transparent 30%);
18
- &:hover{
19
- --background: var(--ion-color-light-tint);
20
- }
21
- }
21
+ .header{
22
+ --color-primary: var(--ion-color-primary) !important;
23
+ --step-1-opacity: 0.7 !important;
24
+ --step-2-opacity: 0.3 !important;
22
25
  }
@@ -1,46 +1,69 @@
1
- #drawer-button{
2
- &:hover{
3
- background-color: color-mix(in srgb, var(--ion-color-dark-tint) 50%, transparent 50%);
4
- ion-icon{
5
- color: var(--ion-color-light);
6
- }
7
- }
8
- @apply rounded-full;
9
- }
1
+ // #drawer-button{
2
+ // &:hover{
3
+ // background-color: color-mix(in srgb, var(--ion-color-dark-tint) 50%, transparent 50%);
4
+ // ion-icon{
5
+ // color: var(--ion-color-light);
6
+ // }
7
+ // }
8
+ // @apply rounded-full;
9
+ // }
10
10
 
11
- #menu-conteiner{
12
- @apply overflow-y-auto overflow-x-hidden size-full;
13
- }
11
+ // #menu-conteiner{
12
+ // @apply overflow-y-auto overflow-x-hidden size-full;
13
+ // }
14
14
 
15
- #group-menu{
16
- --min-height: 3rem;
17
- --min-width: 3rem;
18
- @apply transition-all;
19
- &:hover{
20
- #tooltip{
21
- @apply translate-x-0 opacity-100 w-fit #{!important};
22
- }
23
- }
24
- }
15
+ // #group-menu{
16
+ // --min-height: 3rem;
17
+ // --min-width: 3rem;
18
+ // @apply transition-all;
19
+ // &:hover{
20
+ // #tooltip{
21
+ // @apply translate-x-0 opacity-100 w-fit #{!important};
22
+ // }
23
+ // }
24
+ // }
25
+
26
+ // .bg-active{
27
+ // --background: color-mix(in srgb, var(--ion-color-secondary) 70%, transparent 30%) !important;
28
+ // }
29
+ // .bg-inactive{
30
+ // @apply cursor-pointer;
31
+ // --border-radius: 1rem;
32
+
33
+ // &::part(native){
34
+ // @apply transition-all;
35
+ // }
36
+ // --background: color-mix(in srgb, var(--ion-color-light-shade) 50%, transparent 50%) ;
37
+ // &:hover{
38
+ // --background: color-mix(in srgb, var(--ion-color-light-shade) 70%, transparent 30%) ;
39
+ // }
40
+ // @media (prefers-color-scheme: dark) {
41
+ // --background: color-mix(in srgb, var(--ion-color-light-tint) 70%, transparent 30%);
42
+ // &:hover{
43
+ // --background: var(--ion-color-light-tint);
44
+ // }
45
+ // }
46
+ // }
25
47
 
26
48
  .bg-active{
27
- --background: color-mix(in srgb, var(--ion-color-secondary) 70%, transparent 30%) !important;
49
+ --color-primary: var(--ion-color-primary) !important;
50
+ --step-1-opacity: 0.7 !important;
51
+ --step-2-opacity: 0.3 !important;
52
+ // --background: color-mix(in srgb, var(--ion-color-secondary) 70%, transparent 30%) !important;
28
53
  }
29
54
  .bg-inactive{
30
- @apply cursor-pointer;
31
- --border-radius: 1rem;
32
-
33
- &::part(native){
34
- @apply transition-all;
35
- }
36
- --background: color-mix(in srgb, var(--ion-color-light-shade) 50%, transparent 50%) ;
37
- &:hover{
38
- --background: color-mix(in srgb, var(--ion-color-light-shade) 70%, transparent 30%) ;
39
- }
40
- @media (prefers-color-scheme: dark) {
41
- --background: color-mix(in srgb, var(--ion-color-light-tint) 70%, transparent 30%);
42
- &:hover{
43
- --background: var(--ion-color-light-tint);
44
- }
45
- }
46
- }
55
+ --color-primary: var(--ion-color-step-250);
56
+ --step-1-opacity: .5;
57
+ --step-2-opacity: .4;
58
+ --step-3-opacity: .8;
59
+ }
60
+ .menu{
61
+ @apply rounded-xl cursor-pointer p-2 flex items-center justify-center gap-2;
62
+ transition: --color-primary, --step-1-opacity, --step-2-opacity .2s ease-in-out;
63
+ --inset: var(--color-primary) 0px 1.75px 1px 0px inset;
64
+ box-shadow: var(--inset);
65
+ }
66
+ .toggle:hover{
67
+ --color-primary: var(--ion-color-step-500) !important;
68
+ transition: --color-primary .2s ease-in-out;
69
+ }
@@ -20,19 +20,25 @@ input-date{
20
20
  --ion-color-translucid: color-mix(in srgb, var(--ion-color-medium) 20%, transparent 80%);
21
21
  }
22
22
 
23
- /* width */
23
+ // /* width */
24
24
  ::-webkit-scrollbar {
25
- height: 5px;
25
+ height: 7.5px;
26
26
  width: 5px;
27
27
  margin: 2px;
28
28
  }
29
29
 
30
30
  /* Handle */
31
31
  ::-webkit-scrollbar-thumb {
32
- background: var(--ion-color-medium);
32
+ background: var(--ion-color-medium-shade);
33
33
  border-radius: 10px;
34
34
  }
35
35
 
36
+ /* Track */
37
+ ::-webkit-scrollbar-track {
38
+ border-radius: 10px;
39
+ background: color-mix(in srgb, var(--ion-color-medium) 25%, transparent)
40
+ }
41
+
36
42
  input-bool, input-color, input-date, input-date-time, input-time, input-decimal, input-number, input-currency,
37
43
  input-file, input-select, input-string, input-textarea {
38
44
  @apply block;
@@ -406,4 +412,55 @@ tooltip{
406
412
 
407
413
  text-tooltip{
408
414
  @apply block relative w-full;
409
- }
415
+ }
416
+
417
+
418
+
419
+ @mixin property($variable: variable, $syntax: "<color>", $inherits: true, $initial-value: #FF){
420
+ @property --#{$variable} {
421
+ syntax: $syntax;
422
+ initial-value: $initial-value;
423
+ inherits: $inherits;
424
+ }
425
+ }
426
+
427
+ @include property(
428
+ $variable: color-primary,
429
+ $syntax: "<color>",
430
+ $inherits: false,
431
+ $initial-value: transparent
432
+ );
433
+ @include property(
434
+ $variable: color-primary,
435
+ $syntax: "<color>",
436
+ $inherits: false,
437
+ $initial-value: transparent
438
+ );
439
+ @include property(
440
+ $variable: step-1-opacity,
441
+ $syntax: "<number>",
442
+ $inherits: false,
443
+ $initial-value: 0
444
+ );
445
+ @include property(
446
+ $variable: step-2-opacity,
447
+ $syntax: "<number>",
448
+ $inherits: false,
449
+ $initial-value: 0
450
+ );
451
+ @include property(
452
+ $variable: step-3-opacity,
453
+ $syntax: "<number>",
454
+ $inherits: false,
455
+ $initial-value: 0
456
+ );
457
+
458
+ .gradient-background{
459
+ // --color-primary : var(--color-primary , var(--ion-color-primary));
460
+ // --color-secondary: var(--color-secondary, var(--ion-color-light));
461
+
462
+ background: radial-gradient(ellipse at 0px top,
463
+ hsl(from var(--color-primary , var(--ion-color-primary)) h s l / var(--step-1-opacity, 0.7)),
464
+ hsl(from var(--color-primary , var(--ion-color-primary)) h s l / var(--step-2-opacity, 0.3))),
465
+ hsl(from var(--color-secondary, var(--ion-color-light)) h s l / var(--step-3-opacity, 0.2));
466
+ }