@sapphire-ion/framework 1.0.11 → 1.0.13

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 (44) hide show
  1. package/esm2022/lib/classes/environment.mjs +4 -2
  2. package/esm2022/lib/components/default/default-view/default-view.component.mjs +17 -11
  3. package/esm2022/lib/components/inputs/input-cep/input-cep.component.mjs +39 -0
  4. package/esm2022/lib/components/inputs/input-cep/input-cep.configuration.mjs +6 -0
  5. package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +474 -0
  6. package/esm2022/lib/components/inputs/input-configuration.mjs +1 -1
  7. package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +8 -3
  8. package/esm2022/lib/components/inputs/input-icon/fluenticons.mjs +3734 -0
  9. package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +54 -0
  10. package/esm2022/lib/components/inputs/input-icon/ionicons.mjs +1360 -0
  11. package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +3 -3
  12. package/esm2022/lib/components/inputs/input-telefone/input-telefone.component.mjs +63 -0
  13. package/esm2022/lib/components/inputs/input-telefone/input-telefone.configuration.mjs +12 -0
  14. package/esm2022/lib/components/inputs/input-type.mjs +12 -6
  15. package/esm2022/lib/components/inputs/input-validators.mjs +32 -1
  16. package/esm2022/lib/components/inputs/inputs.module.mjs +18 -2
  17. package/esm2022/lib/index.mjs +9 -2
  18. package/fesm2022/sapphire-ion-framework.mjs +5768 -16
  19. package/fesm2022/sapphire-ion-framework.mjs.map +1 -1
  20. package/lib/classes/environment.d.ts +2 -1
  21. package/lib/components/default/default-view/default-view.component.d.ts +2 -0
  22. package/lib/components/inputs/input-cep/input-cep.component.d.ts +16 -0
  23. package/lib/components/inputs/input-cep/input-cep.configuration.d.ts +5 -0
  24. package/lib/components/inputs/input-color/input-color.component.d.ts +77 -0
  25. package/lib/components/inputs/input-configuration.d.ts +2 -1
  26. package/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.d.ts +1 -0
  27. package/lib/components/inputs/input-icon/fluenticons.d.ts +1 -0
  28. package/lib/components/inputs/input-icon/input-icon.component.d.ts +20 -0
  29. package/lib/components/inputs/input-icon/ionicons.d.ts +1 -0
  30. package/lib/components/inputs/input-telefone/input-telefone.component.d.ts +18 -0
  31. package/lib/components/inputs/input-telefone/input-telefone.configuration.d.ts +9 -0
  32. package/lib/components/inputs/input-type.d.ts +12 -6
  33. package/lib/components/inputs/input-validators.d.ts +6 -0
  34. package/lib/components/inputs/inputs.module.d.ts +24 -20
  35. package/lib/index.d.ts +5 -0
  36. package/package.json +2 -1
  37. package/themes/compiled-styles.scss +9 -12
  38. package/themes/components/inputs/input-color/input-color.component.scss +41 -0
  39. package/themes/components/inputs/input-icon/input-icon.component.scss +0 -0
  40. package/themes/components/inputs/input-telefone/input-telefone.component.scss +0 -0
  41. package/themes/components/_inputs_new/inputs.scss +0 -15
  42. package/themes/components/inputs_old/input-color/input-color.component.scss +0 -48
  43. package/themes/components/inputs_old/inputs.scss +0 -67
  44. /package/themes/components/{_inputs_new/input-string/input-string.component.scss → inputs/input-cep/input-cep.component.scss} +0 -0
@@ -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>;
@@ -0,0 +1,16 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { MaskitoMaskExpression, MaskitoOptions } from '@maskito/core';
3
+ import { CustomInput } from '../custom-input';
4
+ import * as i0 from "@angular/core";
5
+ export declare class InputCepComponent extends CustomInput<string> {
6
+ protected elementRef: ElementRef<HTMLInputElement>;
7
+ input: ElementRef<HTMLInputElement>;
8
+ inputContainer: ElementRef<HTMLDivElement>;
9
+ focus(event: MouseEvent): void;
10
+ constructor(elementRef: ElementRef<HTMLInputElement>);
11
+ writeValue(obj: string): void | Promise<void>;
12
+ readonly cepMask: MaskitoMaskExpression;
13
+ readonly mask: MaskitoOptions;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputCepComponent, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputCepComponent, "input-cep", never, {}, {}, never, never, false, never>;
16
+ }
@@ -0,0 +1,5 @@
1
+ export type CPFCnpj = 'CPF' | 'CNPJ' | 'CPFCNPJ';
2
+ export declare class InputCpfCnpjConfiguration {
3
+ type: CPFCnpj;
4
+ constructor(type?: CPFCnpj);
5
+ }
@@ -0,0 +1,77 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { CustomInput } from '../custom-input';
3
+ import { GenericService } from '../../../services/generics.service';
4
+ import { SIonPopoverComponent } from '../../popover/sion-popover/sion-popover.component';
5
+ import { MaskitoOptions } from '@maskito/core';
6
+ import * as i0 from "@angular/core";
7
+ type RGB = {
8
+ r: number;
9
+ g: number;
10
+ b: number;
11
+ };
12
+ type HSL = {
13
+ h: number;
14
+ l: number;
15
+ s: number;
16
+ };
17
+ export declare class InputColorComponent extends CustomInput<string> {
18
+ private genericService;
19
+ input: ElementRef<HTMLInputElement>;
20
+ inputContainer: ElementRef<HTMLDivElement>;
21
+ focus(event: MouseEvent): void;
22
+ constructor(genericService: GenericService);
23
+ popover: SIonPopoverComponent;
24
+ rgbColor: RGB;
25
+ hslColor: HSL;
26
+ alpha: number;
27
+ writeValue(obj: string): void | Promise<void>;
28
+ SetValue(value: string): void;
29
+ rendering: boolean;
30
+ Present(event: MouseEvent): Promise<void>;
31
+ indicatorX: number;
32
+ indicatorY: number;
33
+ gradient: ElementRef<HTMLCanvasElement>;
34
+ private isGradientDragging;
35
+ private gradientCtx;
36
+ private gradientWidth;
37
+ private gradientHeight;
38
+ InitializeGradient(): void;
39
+ StartGradientDrag(e: MouseEvent): void;
40
+ GradientDrag(e: MouseEvent): void;
41
+ EndGradientDrag(): void;
42
+ HandleGradientTouch(e: TouchEvent): void;
43
+ HandleColorSelection(x: number, y: number): void;
44
+ UpdateSelectedColor(saturation?: number | null, lightness?: number | null, emitChanges?: boolean): void;
45
+ hueSlider: ElementRef<HTMLCanvasElement>;
46
+ private isHueDragging;
47
+ private hueCtx;
48
+ private hueSliderWidth;
49
+ private hueSliderHeight;
50
+ InitializeHueSlider(): void;
51
+ StartHueDrag(e: MouseEvent): void;
52
+ HueDrag(e: MouseEvent): void;
53
+ EndHueDrag(): void;
54
+ HandleHueTouch(e: TouchEvent): void;
55
+ HandleHueSelection(x: number): void;
56
+ alphaSlider: ElementRef<HTMLCanvasElement>;
57
+ private isAlphaDragging;
58
+ private alphaCtx;
59
+ private alphaSliderWidth;
60
+ private alphaSliderHeight;
61
+ InitializeAlphaSlider(): void;
62
+ StartAlphaDrag(e: MouseEvent): void;
63
+ AlphaDrag(e: MouseEvent): void;
64
+ EndAlphaDrag(): void;
65
+ HandleAlphaTouch(e: TouchEvent): void;
66
+ HandleAlphaSelection(x: number): void;
67
+ SetColorFromHex(hexColor: string, updateCanvas?: boolean, emitChanges?: boolean): void;
68
+ DrawColorGradient(): void;
69
+ DrawHueSlider(): void;
70
+ DrawAlphaSlider(): void;
71
+ CopyToClipboard(): Promise<void>;
72
+ UpdateIndicatorPositions(): void;
73
+ HEXMask: MaskitoOptions;
74
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputColorComponent, never>;
75
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputColorComponent, "input-color", never, {}, {}, never, never, false, never>;
76
+ }
77
+ export {};
@@ -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;
@@ -11,6 +11,7 @@ export declare class InputCpfCnpjComponent extends CustomInput<string> {
11
11
  focus(event: MouseEvent): void;
12
12
  constructor(elementRef: ElementRef<HTMLInputElement>);
13
13
  writeValue(obj: string): void | Promise<void>;
14
+ SetValue(obj: string): void;
14
15
  readonly cpfMask: MaskitoMaskExpression;
15
16
  readonly cnpjMask: MaskitoMaskExpression;
16
17
  readonly mask: MaskitoOptions;
@@ -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[];
@@ -0,0 +1,18 @@
1
+ import { ElementRef, ModelSignal } from '@angular/core';
2
+ import { MaskitoOptions } from '@maskito/core';
3
+ import { InputTelefoneCelularConfiguration } from './input-telefone.configuration';
4
+ import { CustomInput } from '../custom-input';
5
+ import * as i0 from "@angular/core";
6
+ export declare class InputTelefoneComponent extends CustomInput<string> {
7
+ protected elementRef: ElementRef<HTMLInputElement>;
8
+ configuration: ModelSignal<InputTelefoneCelularConfiguration>;
9
+ input: ElementRef<HTMLInputElement>;
10
+ inputContainer: ElementRef<HTMLDivElement>;
11
+ focus(event: MouseEvent): void;
12
+ constructor(elementRef: ElementRef<HTMLInputElement>);
13
+ writeValue(obj: string): void | Promise<void>;
14
+ SetValue(obj: string): void;
15
+ readonly mask: MaskitoOptions;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputTelefoneComponent, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputTelefoneComponent, "input-telefone, input-celular, input-telefone-celular", never, { "configuration": { "alias": "configuration"; "required": false; "isSignal": true; }; }, { "configuration": "configurationChange"; }, never, never, false, never>;
18
+ }
@@ -0,0 +1,9 @@
1
+ export declare enum TelefoneCelular {
2
+ 'Tel' = "Tel",
3
+ 'Cel' = "Cel",
4
+ 'TelCel' = "TelCel"
5
+ }
6
+ export declare class InputTelefoneCelularConfiguration {
7
+ type: TelefoneCelular;
8
+ constructor(type?: TelefoneCelular);
9
+ }
@@ -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
  }
@@ -10,6 +10,12 @@ export declare class FormValidators {
10
10
  static CPFValidator(control: AbstractControl): ControlError | null;
11
11
  static CnpjValidator(control: AbstractControl): ControlError | null;
12
12
  static CPFCpnjValidator(control: AbstractControl): ControlError | null;
13
+ static readonly TelefoneError: ControlError;
14
+ static TelefoneValidator(control: AbstractControl): ControlError | null;
15
+ static readonly CelularError: ControlError;
16
+ static CelularValidator(control: AbstractControl): ControlError | null;
17
+ static readonly TelefoneCelularError: ControlError;
18
+ static TelefoneCelularValidator(control: AbstractControl): ControlError | null;
13
19
  static readonly PositiveNonZeroNumberError: ControlError;
14
20
  static PositiveNonZeroNumberValidator(fieldName: string): (control: AbstractControl) => ControlError | null;
15
21
  static readonly PositiveNumberError: ControlError;
@@ -1,26 +1,30 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./input-bool/input-bool.component";
3
- import * as i2 from "./input-cpf-cnpj/input-cpf-cnpj.component";
4
- import * as i3 from "./input-date/input-date.component";
5
- import * as i4 from "./input-decimal/input-decimal.component";
6
- import * as i5 from "./input-file/input-file.component";
7
- import * as i6 from "./input-select/input-select.component";
8
- import * as i7 from "./input-select/directives/sion-label-template.directive";
9
- import * as i8 from "./input-select/directives/sion-option-template.directive";
10
- import * as i9 from "./input-select/directives/sion-placeholder-template.directive";
11
- import * as i10 from "./input-string/input-string.component";
12
- import * as i11 from "./input-textarea/input-textarea.component";
13
- import * as i12 from "./input-file/download-button/download-button.component";
14
- import * as i13 from "@ionic/angular";
15
- import * as i14 from "@angular/common";
16
- import * as i15 from "@angular/forms";
17
- import * as i16 from "../image/image.component";
18
- import * as i17 from "@maskito/angular";
19
- import * as i18 from "../popover/sion-popover.module";
20
- import * as i19 from "../loading/loading.component";
21
- import * as i20 from "../../directives/ng-var.directive";
3
+ import * as i2 from "./input-cep/input-cep.component";
4
+ import * as i3 from "./input-color/input-color.component";
5
+ import * as i4 from "./input-cpf-cnpj/input-cpf-cnpj.component";
6
+ import * as i5 from "./input-date/input-date.component";
7
+ import * as i6 from "./input-decimal/input-decimal.component";
8
+ import * as i7 from "./input-file/input-file.component";
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";
22
26
  export declare class InputsModule {
23
27
  static ɵfac: i0.ɵɵFactoryDeclaration<InputsModule, never>;
24
- static ɵmod: i0.ɵɵNgModuleDeclaration<InputsModule, [typeof i1.InputBoolComponent, typeof i2.InputCpfCnpjComponent, typeof i3.InputDateComponent, typeof i4.InputDecimalComponent, typeof i5.InputFileComponent, typeof i6.InputSelectComponent, typeof i7.SIonLabelTemplateDirective, typeof i8.SIonOptionTemplateDirective, typeof i9.SIonPlaceholderTemplateDirective, typeof i10.InputStringComponent, typeof i11.InputTextareaComponent, typeof i12.DownloadButtonComponent], [typeof i13.IonicModule, typeof i14.CommonModule, typeof i15.ReactiveFormsModule, typeof i15.FormsModule, typeof i16.ImageComponent, typeof i17.MaskitoDirective, typeof i18.SIonPopoverModule, typeof i19.LoadingComponent, typeof i20.NgVarDirective], [typeof i1.InputBoolComponent, typeof i2.InputCpfCnpjComponent, typeof i3.InputDateComponent, typeof i4.InputDecimalComponent, typeof i5.InputFileComponent, typeof i6.InputSelectComponent, typeof i7.SIonLabelTemplateDirective, typeof i8.SIonOptionTemplateDirective, typeof i9.SIonPlaceholderTemplateDirective, typeof i10.InputStringComponent, typeof i11.InputTextareaComponent, typeof i12.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]>;
25
29
  static ɵinj: i0.ɵɵInjectorDeclaration<InputsModule>;
26
30
  }
package/lib/index.d.ts CHANGED
@@ -54,6 +54,8 @@ export * from '../lib/components/image/image.component';
54
54
  export * from '../lib/components/info-popover/info-popover.component';
55
55
  export * from '../lib/components/inputs/input-bool/input-bool.component';
56
56
  export * from '../lib/components/inputs/input-bool/input-bool.configuration';
57
+ export * from '../lib/components/inputs/input-cep/input-cep.component';
58
+ export * from '../lib/components/inputs/input-color/input-color.component';
57
59
  export * from '../lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component';
58
60
  export * from '../lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration';
59
61
  export * from '../lib/components/inputs/input-date/input-date.component';
@@ -63,6 +65,7 @@ export * from '../lib/components/inputs/input-decimal/input-decimal.configuratio
63
65
  export * from '../lib/components/inputs/input-file/download-button/download-button.component';
64
66
  export * from '../lib/components/inputs/input-file/input-file.component';
65
67
  export * from '../lib/components/inputs/input-file/input-file.configuration';
68
+ export * from '../lib/components/inputs/input-icon/input-icon.component';
66
69
  export * from '../lib/components/inputs/input-select/directives/sion-label-template.directive';
67
70
  export * from '../lib/components/inputs/input-select/directives/sion-option-template.directive';
68
71
  export * from '../lib/components/inputs/input-select/directives/sion-placeholder-template.directive';
@@ -70,6 +73,8 @@ export * from '../lib/components/inputs/input-select/input-select.component';
70
73
  export * from '../lib/components/inputs/input-select/input.select.configuration';
71
74
  export * from '../lib/components/inputs/input-string/input-string.component';
72
75
  export * from '../lib/components/inputs/input-string/input-string.configuration';
76
+ export * from '../lib/components/inputs/input-telefone/input-telefone.component';
77
+ export * from '../lib/components/inputs/input-telefone/input-telefone.configuration';
73
78
  export * from '../lib/components/inputs/input-textarea/input-textarea.component';
74
79
  export * from '../lib/components/inputs/input-configuration';
75
80
  export * from '../lib/components/inputs/input-default-configurations';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapphire-ion/framework",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^18.2.8",
@@ -10,6 +10,7 @@
10
10
  "@maskito/angular": "^3.1.2",
11
11
  "@maskito/core": "^3.1.2",
12
12
  "@maskito/kit": "^3.1.0",
13
+ "@maskito/phone": "^3.1.0",
13
14
  "@ngx-translate/core": "^16.0.3",
14
15
  "jwt-decode": "^4.0.0",
15
16
  "@capawesome/capacitor-file-picker": "^7.0.1",
@@ -672,6 +672,10 @@ video {
672
672
  bottom: 50%;
673
673
  }
674
674
 
675
+ .bottom-2 {
676
+ bottom: 0.5rem;
677
+ }
678
+
675
679
  .bottom-3 {
676
680
  bottom: 0.75rem;
677
681
  }
@@ -1039,6 +1043,11 @@ video {
1039
1043
  height: 1rem;
1040
1044
  }
1041
1045
 
1046
+ .size-5 {
1047
+ width: 1.25rem;
1048
+ height: 1.25rem;
1049
+ }
1050
+
1042
1051
  .size-7 {
1043
1052
  width: 1.75rem;
1044
1053
  height: 1.75rem;
@@ -1134,10 +1143,6 @@ video {
1134
1143
  height: 2rem;
1135
1144
  }
1136
1145
 
1137
- .h-\[12\.5rem\] {
1138
- height: 12.5rem;
1139
- }
1140
-
1141
1146
  .h-\[125\%\] {
1142
1147
  height: 125%;
1143
1148
  }
@@ -1835,10 +1840,6 @@ video {
1835
1840
  border-style: none;
1836
1841
  }
1837
1842
 
1838
- .border-\[var\(--ion-color-step-250\)\] {
1839
- border-color: var(--ion-color-step-250);
1840
- }
1841
-
1842
1843
  .border-transparent {
1843
1844
  border-color: transparent;
1844
1845
  }
@@ -2324,10 +2325,6 @@ video {
2324
2325
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
2325
2326
  }
2326
2327
 
2327
- .\[--border-radius\:0rem_1rem_1rem_0rem\] {
2328
- --border-radius: 0rem 1rem 1rem 0rem;
2329
- }
2330
-
2331
2328
  .\[clip-path\:polygon\(0_20\%\2c _0\%_100\%\2c _80\%_100\%\)\] {
2332
2329
  clip-path: polygon(0 20%, 0% 100%, 80% 100%);
2333
2330
  }
@@ -0,0 +1,41 @@
1
+ input:focus{
2
+ outline: solid 1px color-mix(in srgb, var(--ion-color-primary) 30%, transparent);
3
+ }
4
+ input{
5
+ @apply rounded h-5;
6
+ outline: 1px solid transparent;
7
+ transition-property: outline;
8
+ transition-duration: 0.2s;
9
+ }
10
+
11
+ .color-indicator {
12
+ position: absolute;
13
+ width: 12px;
14
+ height: 12px;
15
+ border-radius: 50%;
16
+ border: 2px solid white;
17
+ box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
18
+ transform: translate(-50%, -50%);
19
+ pointer-events: none;
20
+ }
21
+
22
+ .indicator {
23
+ position: absolute;
24
+ top: 50%;
25
+ width: 6px;
26
+ height: 24px;
27
+ background-color: white;
28
+ border-radius: 3px;
29
+ box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
30
+ transform: translate(-50%, -50%);
31
+ pointer-events: none;
32
+ }
33
+
34
+ .quick-transition{
35
+ transition: all 0.075s;
36
+ }
37
+
38
+ ion-popover{
39
+ --width: fit-content;
40
+ --height: fit-content;
41
+ }
@@ -1,15 +0,0 @@
1
- .input-container{
2
- @apply rounded-lg flex flex-col pt-1 transition-all items-start justify-center border border-[var(--ion-color-step-250)];
3
- background-color: color-mix(in srgb, var(--ion-color-dark) 3%, transparent);
4
- .input-label{
5
- @apply text-white text-sm mx-1.5;
6
- }
7
- input{
8
- @apply outline-none rounded-md px-1.5;
9
- }
10
- }
11
- .input-container:focus-within{
12
- @apply outline outline-1;
13
- outline-color: color-mix(in srgb, var(--ion-color-primary) 30%, transparent);
14
- box-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-primary) 50%, transparent);
15
- }
@@ -1,48 +0,0 @@
1
- input:focus{
2
- outline: solid 1px color-mix(in srgb, var(--ion-color-primary) 30%, transparent);
3
- }
4
- input{
5
- @apply rounded h-5;
6
- outline: 1px solid transparent;
7
- transition-property: outline;
8
- transition-duration: 0.2s;
9
- }
10
- input::-webkit-outer-spin-button,
11
- input::-webkit-inner-spin-button {
12
- -webkit-appearance: none;
13
- }
14
- input[type='number'] {
15
- -moz-appearance:textfield;
16
- }
17
-
18
-
19
- .color-indicator {
20
- position: absolute;
21
- width: 12px;
22
- height: 12px;
23
- border-radius: 50%;
24
- border: 2px solid white;
25
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
26
- transform: translate(-50%, -50%);
27
- pointer-events: none;
28
- }
29
-
30
- .indicator {
31
- position: absolute;
32
- top: 50%;
33
- width: 6px;
34
- height: 24px;
35
- background-color: white;
36
- border-radius: 3px;
37
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
38
- transform: translate(-50%, -50%);
39
- pointer-events: none;
40
- }
41
-
42
- .quick-transition{
43
- transition: all 0.075s;
44
- }
45
- ion-popover{
46
- --width: fit-content;
47
- --height: fit-content;
48
- }
@@ -1,67 +0,0 @@
1
- $ion-border-base : color-mix(in srgb, var(--ion-color-medium) 30%, transparent 70%);
2
- $ion-border-contrast : var(--ion-color-medium);
3
- $ion-border-invalid : color-mix(in srgb, var(--ion-color-danger) 75%, transparent 25%);
4
-
5
- $input-height: 58px;
6
-
7
- .on-hover{
8
- background: color-mix(in srgb, var(--ion-color-light) 97%, transparent 3%);
9
- &:hover{
10
- @apply transition-all ease-in-out duration-300;
11
- background: color-mix(in srgb, var(--ion-color-dark) 15%, transparent 93%);
12
- }
13
- }
14
-
15
- ion-card.ion-card-input{
16
- @apply rounded-2xl w-full h-full flex justify-center items-center transition-all ease-in-out duration-300 m-0 overflow-hidden shadow-none;
17
- background: color-mix(in srgb, var(--ion-color-light) 97%, transparent 3%);
18
- &:hover{
19
- background: color-mix(in srgb, var(--ion-color-dark) 15%, transparent 93%);
20
- }
21
- border-bottom-color: $ion-border-contrast;
22
- border-right-color : $ion-border-base;
23
- border-top-color : $ion-border-base;
24
- border-left-color : $ion-border-base;
25
-
26
- border-width: 1px 1px 2px 1px;
27
- &.submitted.invalid{
28
- border-color: $ion-border-invalid !important;
29
- }
30
- &.disabled{
31
- background-color: color-mix(in srgb, var(--ion-color-medium) 30%, transparent 70%) !important;
32
- }
33
- ion-card-content{ @apply size-full bg-transparent p-0; }
34
-
35
- min-height: $input-height;
36
- max-height: $input-height;
37
- height: $input-height;
38
- }
39
- ion-item{
40
- --background: transparent;
41
- }
42
-
43
- ion-text#label{
44
- &.required{
45
- &::after {
46
- content: "*";
47
- color: var(--ion-color-danger);
48
- vertical-align: text-bottom;
49
- font-size: small;
50
- }
51
- }
52
- &:not(.required)::after{
53
- content: var(--input-opcional-label, "(Opcional)");
54
- color: var(--ion-color-medium);
55
- vertical-align: text-bottom;
56
- font-size: small;
57
- }
58
- }
59
-
60
- .on-focus{
61
- border-bottom-color: var(--ion-color-primary);
62
- }
63
- .focus-within\:on-focus{
64
- &:focus-within{
65
- border-bottom-color: var(--ion-color-primary);
66
- }
67
- }