@luizleon/sf.prefeiturasp.vuecomponents 0.0.43 → 0.0.44

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 (52) hide show
  1. package/dist/components/button/Button.d.ts +45 -42
  2. package/dist/components/content/Content.d.ts +21 -36
  3. package/dist/components/drawer/Drawer.d.ts +46 -55
  4. package/dist/components/icon/Icon.d.ts +38 -38
  5. package/dist/components/internal/HeaderAvatar.d.ts +6 -0
  6. package/dist/components/internal/ScrollToTop.d.ts +2 -7
  7. package/dist/components/internal/ThemeToggle.d.ts +2 -11
  8. package/dist/components/layout/Layout.d.ts +18 -45
  9. package/dist/components/message/Message.d.ts +33 -37
  10. package/dist/components/navmenulink/NavMenuLink.d.ts +12 -35
  11. package/dist/components/tabnavigation/TabNavigation.d.ts +23 -42
  12. package/dist/index.d.ts +3 -3
  13. package/dist/keycloak.d.ts +1 -1
  14. package/dist/services/dialogService.d.ts +16 -5
  15. package/dist/{lib.es.js → sf.prefeiturasp.vuecomponents.es.js} +1300 -1266
  16. package/dist/sf.prefeiturasp.vuecomponents.es.js.map +1 -0
  17. package/dist/sf.prefeiturasp.vuecomponents.umd.js +82 -0
  18. package/dist/sf.prefeiturasp.vuecomponents.umd.js.map +1 -0
  19. package/dist/style.css +1 -1
  20. package/package.json +10 -10
  21. package/src/components/button/Button.d.ts +18 -3
  22. package/src/components/button/Button.vue +1 -0
  23. package/src/components/drawer/Drawer.d.ts +3 -0
  24. package/src/components/icon/Icon.d.ts +17 -3
  25. package/src/components/icon/Icon.vue +14 -8
  26. package/src/components/internal/HeaderAvatar.vue +4 -5
  27. package/src/components/message/Message.d.ts +10 -2
  28. package/src/components/message/Message.vue +9 -10
  29. package/src/index.ts +6 -6
  30. package/src/services/dialogService.ts +71 -25
  31. package/src/style/src/components/_icon.scss +0 -7
  32. package/src/style/src/sweetalert/scss/_animations.scss +197 -197
  33. package/src/style/src/sweetalert/scss/_body.scss +45 -45
  34. package/src/style/src/sweetalert/scss/_core.scss +862 -862
  35. package/src/style/src/sweetalert/scss/_mixins.scss +16 -16
  36. package/src/style/src/sweetalert/scss/_theming.scss +8 -8
  37. package/src/style/src/sweetalert/scss/_toasts-animations.scss +83 -83
  38. package/src/style/src/sweetalert/scss/_toasts-body.scss +85 -85
  39. package/src/style/src/sweetalert/scss/_toasts.scss +203 -203
  40. package/src/ts-helpers.d.ts +9 -9
  41. package/tsconfig.json +2 -2
  42. package/vite.config.js +4 -3
  43. package/dist/enum/cor.d.ts +0 -9
  44. package/dist/enum/index.d.ts +0 -2
  45. package/dist/enum/tamanho.d.ts +0 -5
  46. package/dist/lib.es.js.map +0 -1
  47. package/dist/lib.umd.js +0 -84
  48. package/dist/lib.umd.js.map +0 -1
  49. package/dist/ts-helpers.d.ts +0 -57
  50. package/src/enum/cor.ts +0 -9
  51. package/src/enum/index.ts +0 -2
  52. package/src/enum/tamanho.ts +0 -5
@@ -1,4 +1,4 @@
1
- import Swal from "sweetalert2";
1
+ import Swal, { SweetAlertIcon } from "sweetalert2";
2
2
  import DOMPurify from "dompurify";
3
3
 
4
4
  interface ConfirmOptions {
@@ -11,15 +11,77 @@ interface ConfirmOptions {
11
11
  interface AlertOptions {
12
12
  text: string | string[];
13
13
  title?: string;
14
- icon?: "info" | "error" | "success" | "warning" | "question";
14
+ icon?: SweetAlertIcon;
15
15
  }
16
16
 
17
- class DialogService {
17
+ class Base {
18
18
  get IsVisible(): boolean {
19
19
  return Swal.isVisible();
20
20
  }
21
+ }
21
22
 
22
- async ConfirmAsync(options: ConfirmOptions): Promise<boolean> {
23
+ class AlertService extends Base {
24
+ constructor() {
25
+ super();
26
+ }
27
+ async CreateAlertAsync(
28
+ options: AlertOptions | string | string[]
29
+ ): Promise<boolean> {
30
+ let icon: SweetAlertIcon = "info";
31
+ let html: string;
32
+ let title: string;
33
+ if (typeof options === "string" || Array.isArray(options)) {
34
+ html = Array.isArray(options)
35
+ ? options.join("<br />")
36
+ : options;
37
+ } else {
38
+ icon = options.icon ?? "info";
39
+ title = options.title ?? "";
40
+ html = Array.isArray(options.text)
41
+ ? options.text.join("<br />")
42
+ : options.text;
43
+ }
44
+ return new Promise((r) => {
45
+ Swal.fire({
46
+ allowEscapeKey: false,
47
+ allowOutsideClick: false,
48
+ icon,
49
+ title,
50
+ html: `<div style="max-height: 50vh; overflow: auto">${DOMPurify.sanitize(
51
+ html
52
+ )}</div>`,
53
+ }).then(() => r(true));
54
+ });
55
+ }
56
+
57
+ async AlertAsync(message: string | string[]): Promise<boolean> {
58
+ return this.CreateAlertAsync({
59
+ text: message,
60
+ icon: "info",
61
+ });
62
+ }
63
+
64
+ async AlertErrorAsync(error: string | string[]): Promise<boolean> {
65
+ return this.CreateAlertAsync({
66
+ text: error,
67
+ icon: "error",
68
+ });
69
+ }
70
+
71
+ async AlertSuccessAsync(
72
+ message: string | string[]
73
+ ): Promise<boolean> {
74
+ return this.CreateAlertAsync({
75
+ text: message,
76
+ icon: "success",
77
+ });
78
+ }
79
+ }
80
+
81
+ class ConfirmService extends Base {
82
+ async CreateConfirmAsync(
83
+ options: ConfirmOptions
84
+ ): Promise<boolean> {
23
85
  return new Promise((r) => {
24
86
  Swal.fire({
25
87
  showCancelButton: true,
@@ -35,29 +97,13 @@ class DialogService {
35
97
  });
36
98
  });
37
99
  }
38
-
39
- async AlertAsync(options: AlertOptions): Promise<boolean> {
40
- const icon = options.icon ?? "info";
41
- let html: string;
42
- if (Array.isArray(options.text)) {
43
- html = `<div style="max-height: 50vh; overflow: auto">
44
- ${options.text.join("<br />")}
45
- </div>`;
46
- } else {
47
- html = options.text;
48
- }
49
- return new Promise((r) => {
50
- Swal.fire({
51
- allowEscapeKey: false,
52
- allowOutsideClick: false,
53
- icon,
54
- title: options.title,
55
- html: DOMPurify.sanitize(html),
56
- }).then(() => r(true));
100
+ async ConfirmAsync(message: string) {
101
+ return this.CreateConfirmAsync({
102
+ text: message,
57
103
  });
58
104
  }
59
105
  }
60
106
 
61
- const service = new DialogService();
107
+ export const UseAlertService = () => new AlertService();
62
108
 
63
- export const UseDialogService = () => service;
109
+ export const UseConfirmService = () => new ConfirmService();
@@ -37,13 +37,6 @@ div.#{$prefix}icon {
37
37
  }
38
38
  }
39
39
 
40
- &.#{$prefix}icon-filled {
41
- button {
42
- font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0,
43
- "opsz" 48;
44
- }
45
- }
46
-
47
40
  &.#{$prefix}icon-small {
48
41
  min-width: 28px;
49
42
  > button {
@@ -1,197 +1,197 @@
1
- //@import 'toasts-animations';
2
-
3
- // Appearance animation
4
- @keyframes swal2-show {
5
- 0% {
6
- transform: scale(0.7);
7
- }
8
-
9
- 45% {
10
- transform: scale(1.05);
11
- }
12
-
13
- 80% {
14
- transform: scale(0.95);
15
- }
16
-
17
- 100% {
18
- transform: scale(1);
19
- }
20
- }
21
-
22
- // Disppearance animation
23
- @keyframes swal2-hide {
24
- 0% {
25
- transform: scale(1);
26
- opacity: 1;
27
- }
28
-
29
- 100% {
30
- transform: scale(0.5);
31
- opacity: 0;
32
- }
33
- }
34
-
35
- // Success icon animations
36
- @keyframes swal2-animate-success-line-tip {
37
- 0% {
38
- top: 1.1875em;
39
- left: 0.0625em;
40
- width: 0;
41
- }
42
-
43
- 54% {
44
- top: 1.0625em;
45
- left: 0.125em;
46
- width: 0;
47
- }
48
-
49
- 70% {
50
- top: 2.1875em;
51
- left: -0.375em;
52
- width: 3.125em;
53
- }
54
-
55
- 84% {
56
- top: 3em;
57
- left: 1.3125em;
58
- width: 1.0625em;
59
- }
60
-
61
- 100% {
62
- top: 2.8125em;
63
- left: 0.8125em;
64
- width: 1.5625em;
65
- }
66
- }
67
-
68
- @keyframes swal2-animate-success-line-long {
69
- 0% {
70
- top: 3.375em;
71
- right: 2.875em;
72
- width: 0;
73
- }
74
-
75
- 65% {
76
- top: 3.375em;
77
- right: 2.875em;
78
- width: 0;
79
- }
80
-
81
- 84% {
82
- top: 2.1875em;
83
- right: 0;
84
- width: 3.4375em;
85
- }
86
-
87
- 100% {
88
- top: 2.375em;
89
- right: 0.5em;
90
- width: 2.9375em;
91
- }
92
- }
93
-
94
- @keyframes swal2-rotate-success-circular-line {
95
- 0% {
96
- transform: rotate(-45deg);
97
- }
98
-
99
- 5% {
100
- transform: rotate(-45deg);
101
- }
102
-
103
- 12% {
104
- transform: rotate(-405deg);
105
- }
106
-
107
- 100% {
108
- transform: rotate(-405deg);
109
- }
110
- }
111
-
112
- // Error icon animations
113
- @keyframes swal2-animate-error-x-mark {
114
- 0% {
115
- margin-top: 1.625em;
116
- transform: scale(0.4);
117
- opacity: 0;
118
- }
119
-
120
- 50% {
121
- margin-top: 1.625em;
122
- transform: scale(0.4);
123
- opacity: 0;
124
- }
125
-
126
- 80% {
127
- margin-top: -0.375em;
128
- transform: scale(1.15);
129
- }
130
-
131
- 100% {
132
- margin-top: 0;
133
- transform: scale(1);
134
- opacity: 1;
135
- }
136
- }
137
-
138
- @keyframes swal2-animate-error-icon {
139
- 0% {
140
- transform: rotateX(100deg);
141
- opacity: 0;
142
- }
143
-
144
- 100% {
145
- transform: rotateX(0deg);
146
- opacity: 1;
147
- }
148
- }
149
-
150
- @keyframes swal2-rotate-loading {
151
- 0% {
152
- transform: rotate(0deg);
153
- }
154
-
155
- 100% {
156
- transform: rotate(360deg);
157
- }
158
- }
159
-
160
- // Question mark animation
161
- @keyframes swal2-animate-question-mark {
162
- 0% {
163
- transform: rotateY(-360deg);
164
- }
165
-
166
- 100% {
167
- transform: rotateY(0);
168
- }
169
- }
170
-
171
- // Info and Warning mark animation
172
- @keyframes swal2-animate-i-mark {
173
- 0% {
174
- transform: rotateZ(45deg);
175
- opacity: 0;
176
- }
177
-
178
- 25% {
179
- transform: rotateZ(-25deg);
180
- opacity: 0.4;
181
- }
182
-
183
- 50% {
184
- transform: rotateZ(15deg);
185
- opacity: 0.8;
186
- }
187
-
188
- 75% {
189
- transform: rotateZ(-5deg);
190
- opacity: 1;
191
- }
192
-
193
- 100% {
194
- transform: rotateX(0);
195
- opacity: 1;
196
- }
197
- }
1
+ //@import 'toasts-animations';
2
+
3
+ // Appearance animation
4
+ @keyframes swal2-show {
5
+ 0% {
6
+ transform: scale(0.7);
7
+ }
8
+
9
+ 45% {
10
+ transform: scale(1.05);
11
+ }
12
+
13
+ 80% {
14
+ transform: scale(0.95);
15
+ }
16
+
17
+ 100% {
18
+ transform: scale(1);
19
+ }
20
+ }
21
+
22
+ // Disppearance animation
23
+ @keyframes swal2-hide {
24
+ 0% {
25
+ transform: scale(1);
26
+ opacity: 1;
27
+ }
28
+
29
+ 100% {
30
+ transform: scale(0.5);
31
+ opacity: 0;
32
+ }
33
+ }
34
+
35
+ // Success icon animations
36
+ @keyframes swal2-animate-success-line-tip {
37
+ 0% {
38
+ top: 1.1875em;
39
+ left: 0.0625em;
40
+ width: 0;
41
+ }
42
+
43
+ 54% {
44
+ top: 1.0625em;
45
+ left: 0.125em;
46
+ width: 0;
47
+ }
48
+
49
+ 70% {
50
+ top: 2.1875em;
51
+ left: -0.375em;
52
+ width: 3.125em;
53
+ }
54
+
55
+ 84% {
56
+ top: 3em;
57
+ left: 1.3125em;
58
+ width: 1.0625em;
59
+ }
60
+
61
+ 100% {
62
+ top: 2.8125em;
63
+ left: 0.8125em;
64
+ width: 1.5625em;
65
+ }
66
+ }
67
+
68
+ @keyframes swal2-animate-success-line-long {
69
+ 0% {
70
+ top: 3.375em;
71
+ right: 2.875em;
72
+ width: 0;
73
+ }
74
+
75
+ 65% {
76
+ top: 3.375em;
77
+ right: 2.875em;
78
+ width: 0;
79
+ }
80
+
81
+ 84% {
82
+ top: 2.1875em;
83
+ right: 0;
84
+ width: 3.4375em;
85
+ }
86
+
87
+ 100% {
88
+ top: 2.375em;
89
+ right: 0.5em;
90
+ width: 2.9375em;
91
+ }
92
+ }
93
+
94
+ @keyframes swal2-rotate-success-circular-line {
95
+ 0% {
96
+ transform: rotate(-45deg);
97
+ }
98
+
99
+ 5% {
100
+ transform: rotate(-45deg);
101
+ }
102
+
103
+ 12% {
104
+ transform: rotate(-405deg);
105
+ }
106
+
107
+ 100% {
108
+ transform: rotate(-405deg);
109
+ }
110
+ }
111
+
112
+ // Error icon animations
113
+ @keyframes swal2-animate-error-x-mark {
114
+ 0% {
115
+ margin-top: 1.625em;
116
+ transform: scale(0.4);
117
+ opacity: 0;
118
+ }
119
+
120
+ 50% {
121
+ margin-top: 1.625em;
122
+ transform: scale(0.4);
123
+ opacity: 0;
124
+ }
125
+
126
+ 80% {
127
+ margin-top: -0.375em;
128
+ transform: scale(1.15);
129
+ }
130
+
131
+ 100% {
132
+ margin-top: 0;
133
+ transform: scale(1);
134
+ opacity: 1;
135
+ }
136
+ }
137
+
138
+ @keyframes swal2-animate-error-icon {
139
+ 0% {
140
+ transform: rotateX(100deg);
141
+ opacity: 0;
142
+ }
143
+
144
+ 100% {
145
+ transform: rotateX(0deg);
146
+ opacity: 1;
147
+ }
148
+ }
149
+
150
+ @keyframes swal2-rotate-loading {
151
+ 0% {
152
+ transform: rotate(0deg);
153
+ }
154
+
155
+ 100% {
156
+ transform: rotate(360deg);
157
+ }
158
+ }
159
+
160
+ // Question mark animation
161
+ @keyframes swal2-animate-question-mark {
162
+ 0% {
163
+ transform: rotateY(-360deg);
164
+ }
165
+
166
+ 100% {
167
+ transform: rotateY(0);
168
+ }
169
+ }
170
+
171
+ // Info and Warning mark animation
172
+ @keyframes swal2-animate-i-mark {
173
+ 0% {
174
+ transform: rotateZ(45deg);
175
+ opacity: 0;
176
+ }
177
+
178
+ 25% {
179
+ transform: rotateZ(-25deg);
180
+ opacity: 0.4;
181
+ }
182
+
183
+ 50% {
184
+ transform: rotateZ(15deg);
185
+ opacity: 0.8;
186
+ }
187
+
188
+ 75% {
189
+ transform: rotateZ(-5deg);
190
+ opacity: 1;
191
+ }
192
+
193
+ 100% {
194
+ transform: rotateX(0);
195
+ opacity: 1;
196
+ }
197
+ }
@@ -1,45 +1,45 @@
1
- //@import "toasts-body";
2
-
3
- @mixin sweetalert2-body() {
4
- &.swal2-shown {
5
- @include not(".swal2-no-backdrop", ".swal2-toast-shown") {
6
- overflow: hidden; // not overflow-y because of Sarari, #1253
7
- }
8
- }
9
-
10
- // SfLayout define height de html.
11
- // &.swal2-height-auto {
12
- // height: auto !important; // #781 #1107
13
- // }
14
-
15
- &.swal2-no-backdrop {
16
- .swal2-container {
17
- background-color: transparent !important;
18
- pointer-events: none;
19
-
20
- .swal2-popup {
21
- pointer-events: all;
22
- }
23
-
24
- .swal2-modal {
25
- box-shadow: 0 0 10px $swal2-backdrop;
26
- }
27
- }
28
- }
29
-
30
- @media print {
31
- &.swal2-shown {
32
- @include not(".swal2-no-backdrop", ".swal2-toast-shown") {
33
- overflow-y: scroll !important;
34
-
35
- > [aria-hidden="true"] {
36
- display: none;
37
- }
38
-
39
- .swal2-container {
40
- position: static !important;
41
- }
42
- }
43
- }
44
- }
45
- }
1
+ //@import "toasts-body";
2
+
3
+ @mixin sweetalert2-body() {
4
+ &.swal2-shown {
5
+ @include not(".swal2-no-backdrop", ".swal2-toast-shown") {
6
+ overflow: hidden; // not overflow-y because of Sarari, #1253
7
+ }
8
+ }
9
+
10
+ // SfLayout define height de html.
11
+ // &.swal2-height-auto {
12
+ // height: auto !important; // #781 #1107
13
+ // }
14
+
15
+ &.swal2-no-backdrop {
16
+ .swal2-container {
17
+ background-color: transparent !important;
18
+ pointer-events: none;
19
+
20
+ .swal2-popup {
21
+ pointer-events: all;
22
+ }
23
+
24
+ .swal2-modal {
25
+ box-shadow: 0 0 10px $swal2-backdrop;
26
+ }
27
+ }
28
+ }
29
+
30
+ @media print {
31
+ &.swal2-shown {
32
+ @include not(".swal2-no-backdrop", ".swal2-toast-shown") {
33
+ overflow-y: scroll !important;
34
+
35
+ > [aria-hidden="true"] {
36
+ display: none;
37
+ }
38
+
39
+ .swal2-container {
40
+ position: static !important;
41
+ }
42
+ }
43
+ }
44
+ }
45
+ }