ngwr 0.6.0 → 1.1.0

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 (204) hide show
  1. package/README.md +1 -1
  2. package/_index.scss +21 -21
  3. package/button/button.d.ts +1 -1
  4. package/button/button.scss +2 -2
  5. package/checkbox/checkbox.d.ts +1 -1
  6. package/core/color/color.d.ts +1 -1
  7. package/core/overlay/connected-overlay-directive.d.ts +1 -1
  8. package/core/overlay/position-type.d.ts +1 -1
  9. package/core/types/on-change-type.d.ts +1 -1
  10. package/core/types/on-touched-type.d.ts +1 -1
  11. package/core/types/safe-any.d.ts +1 -1
  12. package/dialog/dialog-content-directives.d.ts +1 -1
  13. package/divider/divider.d.ts +1 -1
  14. package/divider/divider.scss +2 -2
  15. package/{esm2020 → esm2022}/button/button-module.mjs +5 -5
  16. package/esm2022/button/button.mjs +187 -0
  17. package/{esm2020 → esm2022}/checkbox/checkbox-module.mjs +5 -5
  18. package/esm2022/checkbox/checkbox.mjs +154 -0
  19. package/{esm2020 → esm2022}/core/abstract/base.mjs +4 -4
  20. package/esm2022/core/overlay/connected-overlay-directive.mjs +98 -0
  21. package/{esm2020 → esm2022}/core/overlay/overlay-module.mjs +5 -5
  22. package/{esm2020 → esm2022}/dialog/dialog-base.mjs +4 -4
  23. package/esm2022/dialog/dialog-container.mjs +58 -0
  24. package/esm2022/dialog/dialog-content-directives.mjs +98 -0
  25. package/{esm2020 → esm2022}/dialog/dialog-module.mjs +5 -5
  26. package/{esm2020 → esm2022}/dialog/dialog-service.mjs +11 -11
  27. package/{esm2020 → esm2022}/divider/divider-module.mjs +5 -5
  28. package/esm2022/divider/divider.mjs +100 -0
  29. package/{esm2020 → esm2022}/form/form-error.mjs +4 -4
  30. package/esm2022/form/form-item.mjs +46 -0
  31. package/{esm2020 → esm2022}/form/form-module.mjs +5 -5
  32. package/{esm2020 → esm2022}/icon/icon-module.mjs +5 -5
  33. package/esm2022/icon/icon-service.mjs +21 -0
  34. package/esm2022/icon/icon.mjs +60 -0
  35. package/esm2022/icon/icons.mjs +464 -0
  36. package/{esm2020 → esm2022}/input/input-module.mjs +5 -5
  37. package/esm2022/input/input.mjs +240 -0
  38. package/{esm2020 → esm2022}/skeleton/skeleton-module.mjs +5 -5
  39. package/{esm2020 → esm2022}/skeleton/skeleton.mjs +4 -4
  40. package/{esm2020 → esm2022}/spinner/spinner-module.mjs +5 -5
  41. package/{esm2020 → esm2022}/spinner/spinner.mjs +4 -4
  42. package/{esm2020 → esm2022}/tag/tag-module.mjs +5 -5
  43. package/{esm2020 → esm2022}/tag/tag.mjs +4 -4
  44. package/esm2022/tooltip/tooltip-component.mjs +93 -0
  45. package/esm2022/tooltip/tooltip-directive.mjs +85 -0
  46. package/{esm2020 → esm2022}/tooltip/tooltip-module.mjs +5 -5
  47. package/{fesm2015 → fesm2022}/ngwr-button.mjs +29 -30
  48. package/{fesm2020 → fesm2022}/ngwr-button.mjs.map +1 -1
  49. package/{fesm2015 → fesm2022}/ngwr-checkbox.mjs +39 -40
  50. package/fesm2022/ngwr-checkbox.mjs.map +1 -0
  51. package/{fesm2015 → fesm2022}/ngwr-core-abstract.mjs +3 -4
  52. package/{fesm2020 → fesm2022}/ngwr-core-abstract.mjs.map +1 -1
  53. package/{fesm2020 → fesm2022}/ngwr-core-color.mjs +0 -1
  54. package/{fesm2020 → fesm2022}/ngwr-core-decorators.mjs +0 -1
  55. package/{fesm2015 → fesm2022}/ngwr-core-overlay.mjs +13 -14
  56. package/{fesm2015 → fesm2022}/ngwr-core-overlay.mjs.map +1 -1
  57. package/{fesm2015 → fesm2022}/ngwr-core-types.mjs +0 -1
  58. package/{fesm2020 → fesm2022}/ngwr-dialog.mjs +44 -45
  59. package/{fesm2020 → fesm2022}/ngwr-dialog.mjs.map +1 -1
  60. package/{fesm2015 → fesm2022}/ngwr-divider.mjs +15 -16
  61. package/{fesm2015 → fesm2022}/ngwr-divider.mjs.map +1 -1
  62. package/{fesm2020 → fesm2022}/ngwr-form.mjs +14 -15
  63. package/fesm2022/ngwr-form.mjs.map +1 -0
  64. package/{fesm2020 → fesm2022}/ngwr-icon.mjs +81 -81
  65. package/fesm2022/ngwr-icon.mjs.map +1 -0
  66. package/{fesm2020 → fesm2022}/ngwr-input.mjs +41 -42
  67. package/fesm2022/ngwr-input.mjs.map +1 -0
  68. package/{fesm2015 → fesm2022}/ngwr-skeleton.mjs +7 -8
  69. package/{fesm2020 → fesm2022}/ngwr-skeleton.mjs.map +1 -1
  70. package/fesm2022/ngwr-spinner.mjs +43 -0
  71. package/fesm2022/ngwr-spinner.mjs.map +1 -0
  72. package/{fesm2015 → fesm2022}/ngwr-tag.mjs +7 -8
  73. package/{fesm2020 → fesm2022}/ngwr-tag.mjs.map +1 -1
  74. package/{fesm2020 → fesm2022}/ngwr-tooltip.mjs +26 -27
  75. package/{fesm2015 → fesm2022}/ngwr-tooltip.mjs.map +1 -1
  76. package/{fesm2020 → fesm2022}/ngwr.mjs +0 -1
  77. package/form/form-item.d.ts +1 -1
  78. package/icon/icon.d.ts +1 -1
  79. package/icon/icons.d.ts +2 -2
  80. package/input/input-types.d.ts +3 -3
  81. package/input/input.d.ts +1 -1
  82. package/package.json +76 -114
  83. package/skeleton/skeleton.d.ts +1 -1
  84. package/skeleton/skeleton.scss +2 -2
  85. package/styles/functions.scss +11 -0
  86. package/styles/grid.scss +51 -36
  87. package/styles/maps.scss +31 -0
  88. package/styles/mixins.scss +23 -0
  89. package/styles/root.scss +3 -3
  90. package/tag/tag.d.ts +1 -1
  91. package/tag/tag.scss +2 -2
  92. package/tooltip/tooltip-component.d.ts +1 -1
  93. package/tooltip/tooltip-directive.d.ts +1 -1
  94. package/tooltip/tooltip-trigger.d.ts +1 -1
  95. package/esm2020/button/button.mjs +0 -187
  96. package/esm2020/checkbox/checkbox.mjs +0 -154
  97. package/esm2020/core/overlay/connected-overlay-directive.mjs +0 -98
  98. package/esm2020/dialog/dialog-container.mjs +0 -58
  99. package/esm2020/dialog/dialog-content-directives.mjs +0 -98
  100. package/esm2020/divider/divider.mjs +0 -100
  101. package/esm2020/form/form-item.mjs +0 -46
  102. package/esm2020/icon/icon-service.mjs +0 -21
  103. package/esm2020/icon/icon.mjs +0 -60
  104. package/esm2020/icon/icons.mjs +0 -464
  105. package/esm2020/input/input.mjs +0 -240
  106. package/esm2020/tooltip/tooltip-component.mjs +0 -93
  107. package/esm2020/tooltip/tooltip-directive.mjs +0 -85
  108. package/fesm2015/ngwr-button.mjs.map +0 -1
  109. package/fesm2015/ngwr-checkbox.mjs.map +0 -1
  110. package/fesm2015/ngwr-core-abstract.mjs.map +0 -1
  111. package/fesm2015/ngwr-core-color.mjs +0 -26
  112. package/fesm2015/ngwr-core-decorators.mjs +0 -23
  113. package/fesm2015/ngwr-dialog.mjs +0 -454
  114. package/fesm2015/ngwr-dialog.mjs.map +0 -1
  115. package/fesm2015/ngwr-form.mjs +0 -90
  116. package/fesm2015/ngwr-form.mjs.map +0 -1
  117. package/fesm2015/ngwr-icon.mjs +0 -567
  118. package/fesm2015/ngwr-icon.mjs.map +0 -1
  119. package/fesm2015/ngwr-input.mjs +0 -263
  120. package/fesm2015/ngwr-input.mjs.map +0 -1
  121. package/fesm2015/ngwr-skeleton.mjs.map +0 -1
  122. package/fesm2015/ngwr-spinner.mjs +0 -44
  123. package/fesm2015/ngwr-spinner.mjs.map +0 -1
  124. package/fesm2015/ngwr-tag.mjs.map +0 -1
  125. package/fesm2015/ngwr-tooltip.mjs +0 -208
  126. package/fesm2015/ngwr.mjs +0 -8
  127. package/fesm2020/ngwr-button.mjs +0 -212
  128. package/fesm2020/ngwr-checkbox.mjs +0 -178
  129. package/fesm2020/ngwr-checkbox.mjs.map +0 -1
  130. package/fesm2020/ngwr-core-abstract.mjs +0 -26
  131. package/fesm2020/ngwr-core-color.mjs.map +0 -1
  132. package/fesm2020/ngwr-core-decorators.mjs.map +0 -1
  133. package/fesm2020/ngwr-core-overlay.mjs +0 -147
  134. package/fesm2020/ngwr-core-overlay.mjs.map +0 -1
  135. package/fesm2020/ngwr-core-types.mjs +0 -5
  136. package/fesm2020/ngwr-core-types.mjs.map +0 -1
  137. package/fesm2020/ngwr-divider.mjs +0 -121
  138. package/fesm2020/ngwr-divider.mjs.map +0 -1
  139. package/fesm2020/ngwr-form.mjs.map +0 -1
  140. package/fesm2020/ngwr-icon.mjs.map +0 -1
  141. package/fesm2020/ngwr-input.mjs.map +0 -1
  142. package/fesm2020/ngwr-skeleton.mjs +0 -67
  143. package/fesm2020/ngwr-spinner.mjs +0 -44
  144. package/fesm2020/ngwr-spinner.mjs.map +0 -1
  145. package/fesm2020/ngwr-tag.mjs +0 -105
  146. package/fesm2020/ngwr-tooltip.mjs.map +0 -1
  147. package/fesm2020/ngwr.mjs.map +0 -1
  148. package/styles/vars.scss +0 -2
  149. /package/{esm2020 → esm2022}/button/index.mjs +0 -0
  150. /package/{esm2020 → esm2022}/button/ngwr-button.mjs +0 -0
  151. /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
  152. /package/{esm2020 → esm2022}/checkbox/ngwr-checkbox.mjs +0 -0
  153. /package/{esm2020 → esm2022}/core/abstract/index.mjs +0 -0
  154. /package/{esm2020 → esm2022}/core/abstract/ngwr-core-abstract.mjs +0 -0
  155. /package/{esm2020 → esm2022}/core/color/color.mjs +0 -0
  156. /package/{esm2020 → esm2022}/core/color/index.mjs +0 -0
  157. /package/{esm2020 → esm2022}/core/color/is-theme-color.mjs +0 -0
  158. /package/{esm2020 → esm2022}/core/color/ngwr-core-color.mjs +0 -0
  159. /package/{esm2020 → esm2022}/core/decorators/index.mjs +0 -0
  160. /package/{esm2020 → esm2022}/core/decorators/input-boolean.mjs +0 -0
  161. /package/{esm2020 → esm2022}/core/decorators/ngwr-core-decorators.mjs +0 -0
  162. /package/{esm2020 → esm2022}/core/overlay/get-placement-name.mjs +0 -0
  163. /package/{esm2020 → esm2022}/core/overlay/index.mjs +0 -0
  164. /package/{esm2020 → esm2022}/core/overlay/ngwr-core-overlay.mjs +0 -0
  165. /package/{esm2020 → esm2022}/core/overlay/position-map.mjs +0 -0
  166. /package/{esm2020 → esm2022}/core/overlay/position-type.mjs +0 -0
  167. /package/{esm2020 → esm2022}/core/types/index.mjs +0 -0
  168. /package/{esm2020 → esm2022}/core/types/ng-style-interface.mjs +0 -0
  169. /package/{esm2020 → esm2022}/core/types/ngwr-core-types.mjs +0 -0
  170. /package/{esm2020 → esm2022}/core/types/on-change-type.mjs +0 -0
  171. /package/{esm2020 → esm2022}/core/types/on-touched-type.mjs +0 -0
  172. /package/{esm2020 → esm2022}/core/types/property-mapping.mjs +0 -0
  173. /package/{esm2020 → esm2022}/core/types/safe-any.mjs +0 -0
  174. /package/{esm2020 → esm2022}/dialog/dialog-animations.mjs +0 -0
  175. /package/{esm2020 → esm2022}/dialog/dialog-config.mjs +0 -0
  176. /package/{esm2020 → esm2022}/dialog/dialog-ref.mjs +0 -0
  177. /package/{esm2020 → esm2022}/dialog/dialog-tokens.mjs +0 -0
  178. /package/{esm2020 → esm2022}/dialog/index.mjs +0 -0
  179. /package/{esm2020 → esm2022}/dialog/ngwr-dialog.mjs +0 -0
  180. /package/{esm2020 → esm2022}/divider/index.mjs +0 -0
  181. /package/{esm2020 → esm2022}/divider/ngwr-divider.mjs +0 -0
  182. /package/{esm2020 → esm2022}/form/index.mjs +0 -0
  183. /package/{esm2020 → esm2022}/form/ngwr-form.mjs +0 -0
  184. /package/{esm2020 → esm2022}/icon/index.mjs +0 -0
  185. /package/{esm2020 → esm2022}/icon/ngwr-icon.mjs +0 -0
  186. /package/{esm2020 → esm2022}/index.mjs +0 -0
  187. /package/{esm2020 → esm2022}/input/index.mjs +0 -0
  188. /package/{esm2020 → esm2022}/input/input-types.mjs +0 -0
  189. /package/{esm2020 → esm2022}/input/ngwr-input.mjs +0 -0
  190. /package/{esm2020 → esm2022}/ngwr.mjs +0 -0
  191. /package/{esm2020 → esm2022}/skeleton/index.mjs +0 -0
  192. /package/{esm2020 → esm2022}/skeleton/ngwr-skeleton.mjs +0 -0
  193. /package/{esm2020 → esm2022}/spinner/index.mjs +0 -0
  194. /package/{esm2020 → esm2022}/spinner/ngwr-spinner.mjs +0 -0
  195. /package/{esm2020 → esm2022}/tag/index.mjs +0 -0
  196. /package/{esm2020 → esm2022}/tag/ngwr-tag.mjs +0 -0
  197. /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
  198. /package/{esm2020 → esm2022}/tooltip/ngwr-tooltip.mjs +0 -0
  199. /package/{esm2020 → esm2022}/tooltip/tooltip-default-positions.mjs +0 -0
  200. /package/{esm2020 → esm2022}/tooltip/tooltip-trigger.mjs +0 -0
  201. /package/{fesm2015 → fesm2022}/ngwr-core-color.mjs.map +0 -0
  202. /package/{fesm2015 → fesm2022}/ngwr-core-decorators.mjs.map +0 -0
  203. /package/{fesm2015 → fesm2022}/ngwr-core-types.mjs.map +0 -0
  204. /package/{fesm2015 → fesm2022}/ngwr.mjs.map +0 -0
@@ -7,5 +7,5 @@ export declare class WrSkeleton {
7
7
  animated: BooleanInput;
8
8
  get elClasses(): SafeAny;
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<WrSkeleton, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<WrSkeleton, "wr-skeleton", ["wrSkeleton"], { "color": "color"; "animated": "animated"; }, {}, never, never, false, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<WrSkeleton, "wr-skeleton", ["wrSkeleton"], { "color": { "alias": "color"; "required": false; }; "animated": { "alias": "animated"; "required": false; }; }, {}, never, never, false, never>;
11
11
  }
@@ -1,4 +1,4 @@
1
- @import '../styles/vars';
1
+ @use '../styles/maps' as maps;
2
2
 
3
3
  $skeleton-prefix: wr-skeleton;
4
4
 
@@ -37,7 +37,7 @@ $skeleton-prefix: wr-skeleton;
37
37
  }
38
38
  }
39
39
 
40
- @each $color, $value in $theme-colors {
40
+ @each $color, $value in maps.$theme-colors-map {
41
41
  .wr-skeleton--#{$color} {
42
42
  background: rgba(var(--wr-color-#{$color}-rgb), 0.125);
43
43
 
@@ -0,0 +1,11 @@
1
+ @function bp-min($name, $breakpoints: $breakpoints-map) {
2
+ $min: map-get($breakpoints, $name);
3
+ @return if($min != 0, $min, null);
4
+ }
5
+ @function bp-max($name, $breakpoints: $breakpoints-map) {
6
+ $max: map-get($breakpoints, $name);
7
+ @return if($max and $max > 0, $max - .02, null);
8
+ }
9
+ @function bp-infix($name, $breakpoints: $breakpoints-map) {
10
+ @return if(bp-min($name, $breakpoints) == null, '', '-#{$name}');
11
+ }
package/styles/grid.scss CHANGED
@@ -1,55 +1,70 @@
1
- $columns: 12;
1
+ @use 'maps';
2
+ @use 'functions';
3
+ @use 'mixins';
4
+
5
+ // Variables
6
+ $columns-count: 12;
2
7
  $gap: #{var(--wr-grid-gutter)};
3
- $breakpoints: (
4
- xs: 640px,
5
- sm: 768px,
6
- md: 960px,
7
- lg: 1170px,
8
- xl: 1280px
9
- );
10
-
11
- .container {
12
- width: calc(100% - var(--wr-grid-gutter));
8
+
9
+ // Helpers
10
+ @mixin make-container($gutter: $gap) {
11
+ width: 100%;
12
+ padding-right: calc($gap * 0.5);
13
+ padding-left: calc($gap * 0.5);
13
14
  margin-left: auto;
14
15
  margin-right: auto;
16
+ }
17
+ @mixin make-grid($columns: $columns-count, $breakpoints: maps.$breakpoints-map) {
18
+ @each $bp in map-keys($breakpoints) {
19
+ $infix: functions.bp-infix($bp, $breakpoints);
15
20
 
16
- @each $bp, $value in $breakpoints {
17
- @media only screen and (min-width: $value) {
18
- max-width: $value;
21
+ @include mixins.media-breakpoint-up($bp, $breakpoints) {
22
+ @for $i from 1 through $columns {
23
+ .col#{$infix}-#{$i} {
24
+ grid-column: auto / span $i;
25
+ }
26
+ }
19
27
  }
20
28
  }
21
29
  }
22
30
 
23
- @mixin create-selectors($breakpoint: null) {
24
- $infix: if($breakpoint == null, '', '-#{$breakpoint}');
31
+ // Styles
32
+ .container,
33
+ .container-fluid {
34
+ @include make-container();
35
+ }
25
36
 
26
- @for $i from 1 through $columns {
27
- .col#{$infix}-#{$i} {
28
- grid-column-end: span $i;
29
- }
30
- .col-offset#{$infix}-#{$i} {
31
- grid-column-start: $i + 1;
32
- }
33
- .row#{$infix}-#{$i} {
34
- grid-row-end: span $i;
37
+ @each $bp, $max-width in maps.$container-widths-map {
38
+ .container-#{$bp} {
39
+ @extend .container-fluid;
40
+ }
41
+
42
+ @include mixins.media-breakpoint-up($bp, maps.$breakpoints-map) {
43
+ %responsive-container-#{$bp} {
44
+ max-width: $max-width;
35
45
  }
36
- .row-offset#{$infix}-#{$i} {
37
- grid-row-start: $i + 1;
46
+
47
+ $extend-breakpoint: true;
48
+
49
+ @each $name, $width in maps.$breakpoints-map {
50
+ @if ($extend-breakpoint) {
51
+ .container#{functions.bp-infix($name, maps.$breakpoints-map)} {
52
+ @extend %responsive-container-#{$bp};
53
+ }
54
+
55
+ // Once the current breakpoint is reached, stop extending
56
+ @if ($bp == $name) {
57
+ $extend-breakpoint: false;
58
+ }
59
+ }
38
60
  }
39
61
  }
40
62
  }
41
63
 
42
64
  .grid {
43
65
  display: grid;
44
- grid-template-columns: repeat($columns, 1fr);
45
- grid-gap: $gap;
66
+ grid-template-columns: repeat($columns-count, 1fr);
46
67
  gap: $gap;
47
- }
48
-
49
- @include create-selectors;
50
68
 
51
- @each $breakpoint, $width in $breakpoints {
52
- @media (min-width: $width) {
53
- @include create-selectors($breakpoint);
54
- }
69
+ @include make-grid();
55
70
  }
@@ -0,0 +1,31 @@
1
+ $theme-colors-map: (
2
+ 'primary',
3
+ 'secondary',
4
+ 'light',
5
+ 'medium',
6
+ 'dark',
7
+ 'success',
8
+ 'warning',
9
+ 'danger'
10
+ );
11
+ $breakpoints-map: (
12
+ xs: 0,
13
+ sm: 576px,
14
+ md: 768px,
15
+ lg: 992px,
16
+ xl: 1200px,
17
+ xxl: 1400px,
18
+ xga: 1600px,
19
+ fhd: 1920px,
20
+ rt: 2560px
21
+ );
22
+ $container-widths-map: (
23
+ sm: 540px,
24
+ md: 720px,
25
+ lg: 960px,
26
+ xl: 1140px,
27
+ xxl: 1320px,
28
+ xga: 1530px,
29
+ fhd: 1830px,
30
+ rt: 2470px
31
+ );
@@ -0,0 +1,23 @@
1
+ @use 'maps';
2
+ @use 'functions';
3
+
4
+ @mixin media-breakpoint-up($name, $breakpoints: maps.$breakpoints-map) {
5
+ $min: functions.bp-min($name, $breakpoints);
6
+ @if $min {
7
+ @media (min-width: $min) {
8
+ @content;
9
+ }
10
+ } @else {
11
+ @content;
12
+ }
13
+ }
14
+ @mixin media-breakpoint-down($name, $breakpoints: maps.$breakpoints-map) {
15
+ $max: functions.bp-max($name, $breakpoints);
16
+ @if $max {
17
+ @media (max-width: $max) {
18
+ @content;
19
+ }
20
+ } @else {
21
+ @content;
22
+ }
23
+ }
package/styles/root.scss CHANGED
@@ -140,11 +140,11 @@ html {
140
140
  &.dark {
141
141
  color-scheme: dark;
142
142
 
143
- --wr-body-bg: #18152a;
144
- --wr-body-bg-rgb: 24,21,42;
143
+ --wr-body-bg: #0c0815;
144
+ --wr-body-bg-rgb: 12,8,21;
145
145
  --wr-body-color: #fff;
146
146
 
147
- --wr-border-color-base: #292349;
147
+ --wr-border-color-base: #211638;
148
148
 
149
149
  /* Dialog */
150
150
  --wr-dialog-bg: #18152a;
package/tag/tag.d.ts CHANGED
@@ -14,5 +14,5 @@ export declare class WrTag {
14
14
  loading: BooleanInput;
15
15
  get elClasses(): SafeAny;
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<WrTag, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<WrTag, "wr-tag", ["wrTag"], { "color": "color"; "icon": "icon"; "iconPosition": "iconPosition"; "outlined": "outlined"; "rounded": "rounded"; "transparent": "transparent"; "hoverable": "hoverable"; "loading": "loading"; }, {}, never, ["*"], false, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<WrTag, "wr-tag", ["wrTag"], { "color": { "alias": "color"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "iconPosition": { "alias": "iconPosition"; "required": false; }; "outlined": { "alias": "outlined"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "transparent": { "alias": "transparent"; "required": false; }; "hoverable": { "alias": "hoverable"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; }, {}, never, ["*"], false, never>;
18
18
  }
package/tag/tag.scss CHANGED
@@ -1,4 +1,4 @@
1
- @import '../styles/vars';
1
+ @use '../styles/maps' as maps;
2
2
 
3
3
  .wr-tag {
4
4
  display: inline-block;
@@ -66,7 +66,7 @@
66
66
  }
67
67
  }
68
68
 
69
- @each $color in $theme-colors {
69
+ @each $color in maps.$theme-colors-map {
70
70
  .wr-tag--#{$color} {
71
71
  color: var(--wr-color-#{$color}-contrast);
72
72
  background-color: var(--wr-color-#{$color});
@@ -27,5 +27,5 @@ export declare class WrTooltipComponent {
27
27
  onPositionChange(position: ConnectedOverlayPositionChange): void;
28
28
  onClickOutside(event: MouseEvent): void;
29
29
  static ɵfac: i0.ɵɵFactoryDeclaration<WrTooltipComponent, never>;
30
- static ɵcmp: i0.ɵɵComponentDeclaration<WrTooltipComponent, "wr-tooltip", never, { "message": "message"; "trigger": "trigger"; "visible": "visible"; "origin": "origin"; "position": "position"; }, {}, never, never, false, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<WrTooltipComponent, "wr-tooltip", never, { "message": { "alias": "message"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "origin": { "alias": "origin"; "required": false; }; "position": { "alias": "position"; "required": false; }; }, {}, never, never, false, never>;
31
31
  }
@@ -18,5 +18,5 @@ export declare class WrTooltipDirective implements AfterViewInit {
18
18
  private onTooltipHide;
19
19
  private leaveDelay;
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<WrTooltipDirective, never>;
21
- static ɵdir: i0.ɵɵDirectiveDeclaration<WrTooltipDirective, "[wrTooltip]", ["wrTooltip"], { "message": "wrTooltip"; "trigger": "trigger"; }, {}, never, never, false, never>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<WrTooltipDirective, "[wrTooltip]", ["wrTooltip"], { "message": { "alias": "wrTooltip"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; }, {}, never, never, false, never>;
22
22
  }
@@ -1 +1 @@
1
- export declare type WrTooltipTrigger = 'hover' | 'click';
1
+ export type WrTooltipTrigger = 'hover' | 'click';
@@ -1,187 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
- import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation, } from '@angular/core';
4
- import { WrAbstractBase } from 'ngwr/core/abstract';
5
- import { isThemeColor } from 'ngwr/core/color';
6
- import { InputBoolean } from 'ngwr/core/decorators';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- import * as i2 from "ngwr/spinner";
10
- import * as i3 from "ngwr/icon";
11
- export class WrButton extends WrAbstractBase {
12
- constructor(cdr, elRef, ngZone) {
13
- super();
14
- this.cdr = cdr;
15
- this.elRef = elRef;
16
- this.ngZone = ngZone;
17
- this._color = 'primary';
18
- this._size = 'default';
19
- this._outlined = false;
20
- this._rounded = false;
21
- this._fullwidth = false;
22
- this._loading = false;
23
- this._disabled = false;
24
- this._icon = null;
25
- this._iconPosition = 'start';
26
- /* A disabled button shouldn't apply any actions */
27
- this.preventEventsWhenDisabled = (event) => {
28
- if (this.disabled) {
29
- event.preventDefault();
30
- event.stopImmediatePropagation();
31
- }
32
- };
33
- }
34
- /** Set color of `wr-btn`; */
35
- get color() {
36
- return this._color;
37
- }
38
- set color(value) {
39
- this._color = isThemeColor(value) ? value : 'primary';
40
- this.cdr.markForCheck();
41
- }
42
- /** Set size of `wr-btn`; */
43
- get size() {
44
- return this._size;
45
- }
46
- set size(value) {
47
- this._size = value;
48
- this.cdr.markForCheck();
49
- }
50
- /** Set outlined state of `wr-btn`; */
51
- get outlined() {
52
- return this._outlined;
53
- }
54
- set outlined(value) {
55
- this._outlined = coerceBooleanProperty(value);
56
- this.cdr.markForCheck();
57
- }
58
- /** Set rounded state of `wr-btn`; */
59
- get rounded() {
60
- return this._rounded;
61
- }
62
- set rounded(value) {
63
- this._rounded = coerceBooleanProperty(value);
64
- this.cdr.markForCheck();
65
- }
66
- /** Set fullwidth state of `wr-btn`; */
67
- get fullwidth() {
68
- return this._fullwidth;
69
- }
70
- set fullwidth(value) {
71
- this._fullwidth = coerceBooleanProperty(value);
72
- this.cdr.markForCheck();
73
- }
74
- /** Set loading state of `wr-btn`; */
75
- get loading() {
76
- return this._loading;
77
- }
78
- set loading(value) {
79
- this._loading = coerceBooleanProperty(value);
80
- this.cdr.markForCheck();
81
- }
82
- /** Set disabled state of `wr-btn`; */
83
- get disabled() {
84
- return this._disabled;
85
- }
86
- set disabled(value) {
87
- this._disabled = coerceBooleanProperty(value);
88
- this.cdr.markForCheck();
89
- }
90
- /** Set icon of `wr-btn`; */
91
- get icon() {
92
- return this._icon;
93
- }
94
- set icon(value) {
95
- this._icon = value;
96
- this.cdr.markForCheck();
97
- }
98
- /** Set icon position of `wr-btn`; */
99
- get iconPosition() {
100
- return this._iconPosition;
101
- }
102
- set iconPosition(value) {
103
- this._iconPosition = value;
104
- this.cdr.markForCheck();
105
- }
106
- /** Set element disabled attribute */
107
- get nativeDisabled() {
108
- return this._disabled ? '' : null;
109
- }
110
- /** Set element classes */
111
- get elClasses() {
112
- return {
113
- 'wr-btn': true,
114
- 'wr-btn--primary': this.color === 'primary',
115
- 'wr-btn--secondary': this.color === 'secondary',
116
- 'wr-btn--success': this.color === 'success',
117
- 'wr-btn--warning': this.color === 'warning',
118
- 'wr-btn--danger': this.color === 'danger',
119
- 'wr-btn--light': this.color === 'light',
120
- 'wr-btn--medium': this.color === 'medium',
121
- 'wr-btn--dark': this.color === 'dark',
122
- 'wr-btn--default': this.size === 'default',
123
- 'wr-btn--small': this.size === 'small',
124
- 'wr-btn--icon-start': this.icon && this.iconPosition === 'start',
125
- 'wr-btn--icon-end': this.icon && this.iconPosition === 'end',
126
- 'wr-btn--outlined': this.outlined,
127
- 'wr-btn--rounded': this.rounded,
128
- 'wr-btn--loading': this.loading,
129
- 'wr-btn--full': this.fullwidth,
130
- };
131
- }
132
- ngOnInit() {
133
- this.ngZone.runOutsideAngular(() => {
134
- this.elRef.nativeElement.addEventListener('click', this.preventEventsWhenDisabled);
135
- });
136
- }
137
- ngOnDestroy() {
138
- super.ngOnDestroy();
139
- this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);
140
- }
141
- }
142
- WrButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
143
- WrButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: WrButton, selector: "wr-btn, button[wr-btn], a[wr-btn]", inputs: { color: "color", size: "size", outlined: "outlined", rounded: "rounded", fullwidth: "fullwidth", loading: "loading", disabled: "disabled", icon: "icon", iconPosition: "iconPosition" }, host: { properties: { "attr.disabled": "this.nativeDisabled", "class": "this.elClasses" } }, exportAs: ["wrBtn"], usesInheritance: true, ngImport: i0, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n", styles: [".wr-btn{display:inline-block;padding:var(--wr-btn-padding-y-base) var(--wr-btn-padding-x-base);font-family:var(--wr-btn-font-family-base);font-size:var(--wr-btn-font-size-base);font-weight:var(--wr-btn-font-weight-base);line-height:var(--wr-btn-line-height-base);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:var(--wr-btn-border-radius-base);transition:var(--wr-transition-short);position:relative}.wr-btn:hover{text-decoration:none}.wr-btn[disabled],.wr-btn:disabled,.wr-btn.disabled,fieldset:disabled .wr-btn{color:var(--wr-color-medium)!important;background-color:var(--wr-color-light)!important;background-image:none;border:none;box-shadow:none!important;pointer-events:none}.wr-btn[disabled] .wr-btn__icon,.wr-btn[disabled] .wr-btn__spin,.wr-btn:disabled .wr-btn__icon,.wr-btn:disabled .wr-btn__spin,.wr-btn.disabled .wr-btn__icon,.wr-btn.disabled .wr-btn__spin,fieldset:disabled .wr-btn .wr-btn__icon,fieldset:disabled .wr-btn .wr-btn__spin{color:var(--wr-color-medium)}.wr-btn__text{display:inline-block;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;word-break:break-all;padding:0;transition:var(--wr-transition-base)}.wr-btn__spin{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%)}.wr-btn__icon{width:1rem!important;height:1rem!important;min-width:1rem!important;min-height:1rem!important;transition:var(--wr-transition-base)}.wr-btn--icon-start{padding-left:calc(var(--wr-btn-padding-x-base) - .0825rem)}.wr-btn--icon-start .wr-btn__icon{margin-right:.375rem}.wr-btn--icon-end .wr-btn__icon{margin-left:.25rem}.wr-btn--loading{pointer-events:none}.wr-btn--loading .wr-btn__text,.wr-btn--loading .wr-btn__icon{opacity:0}.wr-btn--rounded{border-radius:var(--wr-btn-rounded-border-radius);padding:var(--wr-btn-rounded-padding-y) var(--wr-btn-rounded-padding-x)}.wr-btn--small{padding:var(--wr-btn-padding-y-small) var(--wr-btn-padding-x-small);border-radius:var(--wr-btn-border-radius-small);font-size:var(--wr-btn-font-size-small);line-height:var(--wr-btn-line-height-small)}.wr-btn--small .wr-btn__icon,.wr-btn--small .wr-btn__spin{height:var(--wr-btn-font-size-small)!important;width:var(--wr-btn-font-size-small)!important;min-height:var(--wr-btn-font-size-small)!important;min-width:var(--wr-btn-font-size-small)!important}.wr-btn--small .wr-btn--icon-start .wr-btn__icon{margin-right:.2rem!important}.wr-btn--small .wr-btn--icon-end .wr-btn__icon{margin-left:.2rem!important}.wr-btn--full{display:block;width:100%}.wr-btn--primary{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary)}.wr-btn--primary:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary-shade)}.wr-btn--primary.wr-btn--outlined{color:var(--wr-color-primary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-primary-rgb),.375)}.wr-btn--primary.wr-btn--outlined:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary);box-shadow:none}.wr-btn--secondary{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary)}.wr-btn--secondary:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary-shade)}.wr-btn--secondary.wr-btn--outlined{color:var(--wr-color-secondary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-secondary-rgb),.375)}.wr-btn--secondary.wr-btn--outlined:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary);box-shadow:none}.wr-btn--light{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light)}.wr-btn--light:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light-shade)}.wr-btn--light.wr-btn--outlined{color:var(--wr-color-light);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-light-rgb),.375)}.wr-btn--light.wr-btn--outlined:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light);box-shadow:none}.wr-btn--medium{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium)}.wr-btn--medium:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium-shade)}.wr-btn--medium.wr-btn--outlined{color:var(--wr-color-medium);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-medium-rgb),.375)}.wr-btn--medium.wr-btn--outlined:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium);box-shadow:none}.wr-btn--dark{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark)}.wr-btn--dark:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark-shade)}.wr-btn--dark.wr-btn--outlined{color:var(--wr-color-dark);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-dark-rgb),.375)}.wr-btn--dark.wr-btn--outlined:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark);box-shadow:none}.wr-btn--success{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success)}.wr-btn--success:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success-shade)}.wr-btn--success.wr-btn--outlined{color:var(--wr-color-success);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-success-rgb),.375)}.wr-btn--success.wr-btn--outlined:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success);box-shadow:none}.wr-btn--warning{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning)}.wr-btn--warning:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning-shade)}.wr-btn--warning.wr-btn--outlined{color:var(--wr-color-warning);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-warning-rgb),.375)}.wr-btn--warning.wr-btn--outlined:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning);box-shadow:none}.wr-btn--danger{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger)}.wr-btn--danger:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger-shade)}.wr-btn--danger.wr-btn--outlined{color:var(--wr-color-danger);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-danger-rgb),.375)}.wr-btn--danger.wr-btn--outlined:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger);box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.WrSpinner, selector: "wr-spin", exportAs: ["wrSpin"] }, { kind: "directive", type: i3.WrIcon, selector: "wr-icon[name]", inputs: ["name"], exportAs: ["wrIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
144
- __decorate([
145
- InputBoolean()
146
- ], WrButton.prototype, "outlined", null);
147
- __decorate([
148
- InputBoolean()
149
- ], WrButton.prototype, "rounded", null);
150
- __decorate([
151
- InputBoolean()
152
- ], WrButton.prototype, "fullwidth", null);
153
- __decorate([
154
- InputBoolean()
155
- ], WrButton.prototype, "loading", null);
156
- __decorate([
157
- InputBoolean()
158
- ], WrButton.prototype, "disabled", null);
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrButton, decorators: [{
160
- type: Component,
161
- args: [{ selector: 'wr-btn, button[wr-btn], a[wr-btn]', exportAs: 'wrBtn', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n", styles: [".wr-btn{display:inline-block;padding:var(--wr-btn-padding-y-base) var(--wr-btn-padding-x-base);font-family:var(--wr-btn-font-family-base);font-size:var(--wr-btn-font-size-base);font-weight:var(--wr-btn-font-weight-base);line-height:var(--wr-btn-line-height-base);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:var(--wr-btn-border-radius-base);transition:var(--wr-transition-short);position:relative}.wr-btn:hover{text-decoration:none}.wr-btn[disabled],.wr-btn:disabled,.wr-btn.disabled,fieldset:disabled .wr-btn{color:var(--wr-color-medium)!important;background-color:var(--wr-color-light)!important;background-image:none;border:none;box-shadow:none!important;pointer-events:none}.wr-btn[disabled] .wr-btn__icon,.wr-btn[disabled] .wr-btn__spin,.wr-btn:disabled .wr-btn__icon,.wr-btn:disabled .wr-btn__spin,.wr-btn.disabled .wr-btn__icon,.wr-btn.disabled .wr-btn__spin,fieldset:disabled .wr-btn .wr-btn__icon,fieldset:disabled .wr-btn .wr-btn__spin{color:var(--wr-color-medium)}.wr-btn__text{display:inline-block;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;word-break:break-all;padding:0;transition:var(--wr-transition-base)}.wr-btn__spin{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%)}.wr-btn__icon{width:1rem!important;height:1rem!important;min-width:1rem!important;min-height:1rem!important;transition:var(--wr-transition-base)}.wr-btn--icon-start{padding-left:calc(var(--wr-btn-padding-x-base) - .0825rem)}.wr-btn--icon-start .wr-btn__icon{margin-right:.375rem}.wr-btn--icon-end .wr-btn__icon{margin-left:.25rem}.wr-btn--loading{pointer-events:none}.wr-btn--loading .wr-btn__text,.wr-btn--loading .wr-btn__icon{opacity:0}.wr-btn--rounded{border-radius:var(--wr-btn-rounded-border-radius);padding:var(--wr-btn-rounded-padding-y) var(--wr-btn-rounded-padding-x)}.wr-btn--small{padding:var(--wr-btn-padding-y-small) var(--wr-btn-padding-x-small);border-radius:var(--wr-btn-border-radius-small);font-size:var(--wr-btn-font-size-small);line-height:var(--wr-btn-line-height-small)}.wr-btn--small .wr-btn__icon,.wr-btn--small .wr-btn__spin{height:var(--wr-btn-font-size-small)!important;width:var(--wr-btn-font-size-small)!important;min-height:var(--wr-btn-font-size-small)!important;min-width:var(--wr-btn-font-size-small)!important}.wr-btn--small .wr-btn--icon-start .wr-btn__icon{margin-right:.2rem!important}.wr-btn--small .wr-btn--icon-end .wr-btn__icon{margin-left:.2rem!important}.wr-btn--full{display:block;width:100%}.wr-btn--primary{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary)}.wr-btn--primary:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary-shade)}.wr-btn--primary.wr-btn--outlined{color:var(--wr-color-primary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-primary-rgb),.375)}.wr-btn--primary.wr-btn--outlined:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary);box-shadow:none}.wr-btn--secondary{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary)}.wr-btn--secondary:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary-shade)}.wr-btn--secondary.wr-btn--outlined{color:var(--wr-color-secondary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-secondary-rgb),.375)}.wr-btn--secondary.wr-btn--outlined:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary);box-shadow:none}.wr-btn--light{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light)}.wr-btn--light:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light-shade)}.wr-btn--light.wr-btn--outlined{color:var(--wr-color-light);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-light-rgb),.375)}.wr-btn--light.wr-btn--outlined:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light);box-shadow:none}.wr-btn--medium{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium)}.wr-btn--medium:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium-shade)}.wr-btn--medium.wr-btn--outlined{color:var(--wr-color-medium);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-medium-rgb),.375)}.wr-btn--medium.wr-btn--outlined:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium);box-shadow:none}.wr-btn--dark{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark)}.wr-btn--dark:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark-shade)}.wr-btn--dark.wr-btn--outlined{color:var(--wr-color-dark);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-dark-rgb),.375)}.wr-btn--dark.wr-btn--outlined:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark);box-shadow:none}.wr-btn--success{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success)}.wr-btn--success:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success-shade)}.wr-btn--success.wr-btn--outlined{color:var(--wr-color-success);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-success-rgb),.375)}.wr-btn--success.wr-btn--outlined:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success);box-shadow:none}.wr-btn--warning{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning)}.wr-btn--warning:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning-shade)}.wr-btn--warning.wr-btn--outlined{color:var(--wr-color-warning);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-warning-rgb),.375)}.wr-btn--warning.wr-btn--outlined:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning);box-shadow:none}.wr-btn--danger{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger)}.wr-btn--danger:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger-shade)}.wr-btn--danger.wr-btn--outlined{color:var(--wr-color-danger);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-danger-rgb),.375)}.wr-btn--danger.wr-btn--outlined:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger);box-shadow:none}\n"] }]
162
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { color: [{
163
- type: Input
164
- }], size: [{
165
- type: Input
166
- }], outlined: [{
167
- type: Input
168
- }], rounded: [{
169
- type: Input
170
- }], fullwidth: [{
171
- type: Input
172
- }], loading: [{
173
- type: Input
174
- }], disabled: [{
175
- type: Input
176
- }], icon: [{
177
- type: Input
178
- }], iconPosition: [{
179
- type: Input
180
- }], nativeDisabled: [{
181
- type: HostBinding,
182
- args: ['attr.disabled']
183
- }], elClasses: [{
184
- type: HostBinding,
185
- args: ['class']
186
- }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL2J1dHRvbi9idXR0b24udHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvYnV0dG9uL2J1dHRvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFJTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQVlwRCxNQUFNLE9BQU8sUUFBUyxTQUFRLGNBQWM7SUF1STFDLFlBQ21CLEdBQXNCLEVBQ3RCLEtBQXdGLEVBQ3hGLE1BQWM7UUFFL0IsS0FBSyxFQUFFLENBQUM7UUFKUyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixVQUFLLEdBQUwsS0FBSyxDQUFtRjtRQUN4RixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBaEl6QixXQUFNLEdBQWlCLFNBQVMsQ0FBQztRQVdqQyxVQUFLLEdBQXdCLFNBQVMsQ0FBQztRQVl2QyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBWTNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFZMUIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQVk1QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBWTFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFXM0IsVUFBSyxHQUFzQixJQUFJLENBQUM7UUFXaEMsa0JBQWEsR0FBb0IsT0FBTyxDQUFDO1FBbURqRCxtREFBbUQ7UUFDM0MsOEJBQXlCLEdBQUcsQ0FBQyxLQUFZLEVBQVEs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T3hCLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXckFic3RyYWN0QmFzZSB9IGZyb20gJ25nd3IvY29yZS9hYnN0cmFjdCc7XG5pbXBvcnQgeyBpc1RoZW1lQ29sb3IsIFdyVGhlbWVDb2xvciB9IGZyb20gJ25nd3IvY29yZS9jb2xvcic7XG5pbXBvcnQgeyBJbnB1dEJvb2xlYW4gfSBmcm9tICduZ3dyL2NvcmUvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBTYWZlQW55IH0gZnJvbSAnbmd3ci9jb3JlL3R5cGVzJztcbmltcG9ydCB7IHdySWNvbk5hbWUgfSBmcm9tICduZ3dyL2ljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3ci1idG4sIGJ1dHRvblt3ci1idG5dLCBhW3dyLWJ0bl0nLFxuICBleHBvcnRBczogJ3dyQnRuJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFdyQnV0dG9uIGV4dGVuZHMgV3JBYnN0cmFjdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKiBTZXQgY29sb3Igb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIGdldCBjb2xvcigpOiBXclRoZW1lQ29sb3Ige1xuICAgIHJldHVybiB0aGlzLl9jb2xvcjtcbiAgfVxuICBzZXQgY29sb3IodmFsdWU6IFdyVGhlbWVDb2xvcikge1xuICAgIHRoaXMuX2NvbG9yID0gaXNUaGVtZUNvbG9yKHZhbHVlKSA/IHZhbHVlIDogJ3ByaW1hcnknO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2NvbG9yOiBXclRoZW1lQ29sb3IgPSAncHJpbWFyeSc7XG5cbiAgLyoqIFNldCBzaXplIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgc2l6ZSgpOiAnZGVmYXVsdCcgfCAnc21hbGwnIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgfVxuICBzZXQgc2l6ZSh2YWx1ZTogJ2RlZmF1bHQnIHwgJ3NtYWxsJykge1xuICAgIHRoaXMuX3NpemUgPSB2YWx1ZTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9zaXplOiAnZGVmYXVsdCcgfCAnc21hbGwnID0gJ2RlZmF1bHQnO1xuXG4gIC8qKiBTZXQgb3V0bGluZWQgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgb3V0bGluZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX291dGxpbmVkO1xuICB9XG4gIHNldCBvdXRsaW5lZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fb3V0bGluZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX291dGxpbmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCByb3VuZGVkIHN0YXRlIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBASW5wdXRCb29sZWFuKClcbiAgZ2V0IHJvdW5kZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JvdW5kZWQ7XG4gIH1cbiAgc2V0IHJvdW5kZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX3JvdW5kZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX3JvdW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogU2V0IGZ1bGx3aWR0aCBzdGF0ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgQElucHV0Qm9vbGVhbigpXG4gIGdldCBmdWxsd2lkdGgoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Z1bGx3aWR0aDtcbiAgfVxuICBzZXQgZnVsbHdpZHRoKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9mdWxsd2lkdGggPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2Z1bGx3aWR0aDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgbG9hZGluZyBzdGF0ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgQElucHV0Qm9vbGVhbigpXG4gIGdldCBsb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICB9XG4gIHNldCBsb2FkaW5nKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9sb2FkaW5nID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9sb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBkaXNhYmxlZCBzdGF0ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgQElucHV0Qm9vbGVhbigpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogU2V0IGljb24gb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIGdldCBpY29uKCk6IHdySWNvbk5hbWUgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5faWNvbjtcbiAgfVxuICBzZXQgaWNvbih2YWx1ZTogd3JJY29uTmFtZSB8IG51bGwpIHtcbiAgICB0aGlzLl9pY29uID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfaWNvbjogd3JJY29uTmFtZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBTZXQgaWNvbiBwb3NpdGlvbiBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgZ2V0IGljb25Qb3NpdGlvbigpOiAnc3RhcnQnIHwgJ2VuZCcge1xuICAgIHJldHVybiB0aGlzLl9pY29uUG9zaXRpb247XG4gIH1cbiAgc2V0IGljb25Qb3NpdGlvbih2YWx1ZTogJ3N0YXJ0JyB8ICdlbmQnKSB7XG4gICAgdGhpcy5faWNvblBvc2l0aW9uID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfaWNvblBvc2l0aW9uOiAnc3RhcnQnIHwgJ2VuZCcgPSAnc3RhcnQnO1xuXG4gIC8qKiBTZXQgZWxlbWVudCBkaXNhYmxlZCBhdHRyaWJ1dGUgKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRpc2FibGVkJylcbiAgZ2V0IG5hdGl2ZURpc2FibGVkKCk6ICcnIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkID8gJycgOiBudWxsO1xuICB9XG5cbiAgLyoqIFNldCBlbGVtZW50IGNsYXNzZXMgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBlbENsYXNzZXMoKTogU2FmZUFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICd3ci1idG4nOiB0cnVlLFxuICAgICAgJ3dyLWJ0bi0tcHJpbWFyeSc6IHRoaXMuY29sb3IgPT09ICdwcmltYXJ5JyxcbiAgICAgICd3ci1idG4tLXNlY29uZGFyeSc6IHRoaXMuY29sb3IgPT09ICdzZWNvbmRhcnknLFxuICAgICAgJ3dyLWJ0bi0tc3VjY2Vzcyc6IHRoaXMuY29sb3IgPT09ICdzdWNjZXNzJyxcbiAgICAgICd3ci1idG4tLXdhcm5pbmcnOiB0aGlzLmNvbG9yID09PSAnd2FybmluZycsXG4gICAgICAnd3ItYnRuLS1kYW5nZXInOiB0aGlzLmNvbG9yID09PSAnZGFuZ2VyJyxcbiAgICAgICd3ci1idG4tLWxpZ2h0JzogdGhpcy5jb2xvciA9PT0gJ2xpZ2h0JyxcbiAgICAgICd3ci1idG4tLW1lZGl1bSc6IHRoaXMuY29sb3IgPT09ICdtZWRpdW0nLFxuICAgICAgJ3dyLWJ0bi0tZGFyayc6IHRoaXMuY29sb3IgPT09ICdkYXJrJyxcbiAgICAgICd3ci1idG4tLWRlZmF1bHQnOiB0aGlzLnNpemUgPT09ICdkZWZhdWx0JyxcbiAgICAgICd3ci1idG4tLXNtYWxsJzogdGhpcy5zaXplID09PSAnc21hbGwnLFxuICAgICAgJ3dyLWJ0bi0taWNvbi1zdGFydCc6IHRoaXMuaWNvbiAmJiB0aGlzLmljb25Qb3NpdGlvbiA9PT0gJ3N0YXJ0JyxcbiAgICAgICd3ci1idG4tLWljb24tZW5kJzogdGhpcy5pY29uICYmIHRoaXMuaWNvblBvc2l0aW9uID09PSAnZW5kJyxcbiAgICAgICd3ci1idG4tLW91dGxpbmVkJzogdGhpcy5vdXRsaW5lZCxcbiAgICAgICd3ci1idG4tLXJvdW5kZWQnOiB0aGlzLnJvdW5kZWQsXG4gICAgICAnd3ItYnRuLS1sb2FkaW5nJzogdGhpcy5sb2FkaW5nLFxuICAgICAgJ3dyLWJ0bi0tZnVsbCc6IHRoaXMuZnVsbHdpZHRoLFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbFJlZjogRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudCB8IEhUTUxMaW5rRWxlbWVudCB8IEhUTUxBbmNob3JFbGVtZW50IHwgSFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMucHJldmVudEV2ZW50c1doZW5EaXNhYmxlZCk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMucHJldmVudEV2ZW50c1doZW5EaXNhYmxlZCk7XG4gIH1cblxuICAvKiBBIGRpc2FibGVkIGJ1dHRvbiBzaG91bGRuJ3QgYXBwbHkgYW55IGFjdGlvbnMgKi9cbiAgcHJpdmF0ZSBwcmV2ZW50RXZlbnRzV2hlbkRpc2FibGVkID0gKGV2ZW50OiBFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgfVxuICB9O1xufVxuIiwiPHdyLXNwaW4gKm5nSWY9XCJsb2FkaW5nXCIgY2xhc3M9XCJ3ci1idG5fX3NwaW5cIj48L3dyLXNwaW4+XG48d3ItaWNvbiAqbmdJZj1cImljb24gJiYgaWNvblBvc2l0aW9uID09PSAnc3RhcnQnXCIgY2xhc3M9XCJ3ci1idG5fX2ljb25cIiBbbmFtZV09XCJpY29uXCI+PC93ci1pY29uPlxuPHNwYW4gY2xhc3M9XCJ3ci1idG5fX3RleHRcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9zcGFuPlxuPHdyLWljb24gKm5nSWY9XCJpY29uICYmIGljb25Qb3NpdGlvbiA9PT0gJ2VuZCdcIiBjbGFzcz1cIndyLWJ0bl9faWNvblwiIFtuYW1lXT1cImljb25cIj48L3dyLWljb24+XG4iXX0=