ngwr 0.1.2 → 0.2.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 (230) hide show
  1. package/LICENSE +3 -1
  2. package/README.md +35 -22
  3. package/_index.scss +27 -0
  4. package/button/{button.module.d.ts → button-module.d.ts} +4 -4
  5. package/button/button.d.ts +58 -0
  6. package/button/button.scss +160 -0
  7. package/button/index.d.ts +2 -2
  8. package/checkbox/{checkbox.module.d.ts → checkbox-module.d.ts} +2 -2
  9. package/checkbox/checkbox.d.ts +49 -0
  10. package/checkbox/checkbox.scss +103 -0
  11. package/checkbox/index.d.ts +2 -2
  12. package/core/abstract/base.d.ts +9 -0
  13. package/core/abstract/index.d.ts +1 -0
  14. package/core/color/color.d.ts +2 -0
  15. package/core/color/index.d.ts +2 -0
  16. package/core/color/is-theme-color.d.ts +2 -0
  17. package/core/decorators/index.d.ts +1 -0
  18. package/core/decorators/input-boolean.d.ts +1 -0
  19. package/core/types/index.d.ts +3 -0
  20. package/{_core → core}/types/on-change-type.d.ts +0 -0
  21. package/{_core → core}/types/on-touched-type.d.ts +0 -0
  22. package/{_core → core}/types/safe-any.d.ts +0 -0
  23. package/divider/{divider.module.d.ts → divider-module.d.ts} +2 -2
  24. package/divider/divider.d.ts +40 -0
  25. package/divider/divider.scss +34 -0
  26. package/divider/index.d.ts +2 -2
  27. package/esm2020/button/button-module.mjs +20 -0
  28. package/esm2020/button/button.mjs +187 -0
  29. package/esm2020/button/index.mjs +3 -3
  30. package/esm2020/button/ngwr-button.mjs +5 -0
  31. package/esm2020/checkbox/checkbox-module.mjs +20 -0
  32. package/esm2020/checkbox/checkbox.mjs +154 -0
  33. package/esm2020/checkbox/index.mjs +3 -3
  34. package/esm2020/checkbox/ngwr-checkbox.mjs +5 -0
  35. package/esm2020/core/abstract/base.mjs +18 -0
  36. package/esm2020/core/abstract/index.mjs +2 -0
  37. package/esm2020/core/abstract/ngwr-core-abstract.mjs +5 -0
  38. package/esm2020/core/color/color.mjs +11 -0
  39. package/esm2020/core/color/index.mjs +3 -0
  40. package/esm2020/core/color/is-theme-color.mjs +9 -0
  41. package/esm2020/core/color/ngwr-core-color.mjs +5 -0
  42. package/esm2020/core/decorators/index.mjs +2 -0
  43. package/esm2020/core/decorators/input-boolean.mjs +15 -0
  44. package/esm2020/core/decorators/ngwr-core-decorators.mjs +5 -0
  45. package/esm2020/core/types/index.mjs +4 -0
  46. package/esm2020/core/types/ngwr-core-types.mjs +5 -0
  47. package/esm2020/core/types/on-change-type.mjs +2 -0
  48. package/esm2020/core/types/on-touched-type.mjs +2 -0
  49. package/esm2020/core/types/safe-any.mjs +2 -0
  50. package/esm2020/divider/divider-module.mjs +16 -0
  51. package/esm2020/divider/divider.mjs +100 -0
  52. package/esm2020/divider/index.mjs +3 -3
  53. package/esm2020/divider/ngwr-divider.mjs +5 -0
  54. package/esm2020/form/form-error.mjs +23 -0
  55. package/esm2020/form/form-item.mjs +46 -0
  56. package/esm2020/form/form-module.mjs +19 -0
  57. package/esm2020/form/index.mjs +4 -4
  58. package/esm2020/form/ngwr-form.mjs +5 -0
  59. package/esm2020/icon/icon-module.mjs +21 -0
  60. package/esm2020/icon/icon-service.mjs +21 -0
  61. package/esm2020/icon/icon.mjs +60 -0
  62. package/esm2020/icon/icons.mjs +424 -0
  63. package/esm2020/icon/index.mjs +5 -5
  64. package/esm2020/icon/ngwr-icon.mjs +5 -0
  65. package/esm2020/index.mjs +3 -0
  66. package/esm2020/input/index.mjs +3 -3
  67. package/esm2020/input/input-module.mjs +20 -0
  68. package/esm2020/input/input-types.mjs +2 -0
  69. package/esm2020/input/input.mjs +240 -0
  70. package/esm2020/input/ngwr-input.mjs +5 -0
  71. package/esm2020/ngwr.mjs +2 -2
  72. package/esm2020/skeleton/index.mjs +3 -3
  73. package/esm2020/skeleton/ngwr-skeleton.mjs +5 -0
  74. package/esm2020/skeleton/skeleton-module.mjs +18 -0
  75. package/esm2020/skeleton/skeleton.mjs +44 -0
  76. package/esm2020/spinner/index.mjs +3 -3
  77. package/esm2020/spinner/ngwr-spinner.mjs +5 -0
  78. package/esm2020/spinner/spinner-module.mjs +16 -0
  79. package/esm2020/spinner/spinner.mjs +23 -0
  80. package/esm2020/tag/index.mjs +3 -3
  81. package/esm2020/tag/ngwr-tag.mjs +5 -0
  82. package/esm2020/tag/tag-module.mjs +20 -0
  83. package/esm2020/tag/tag.mjs +80 -0
  84. package/fesm2015/ngwr-button.mjs +211 -0
  85. package/fesm2015/ngwr-button.mjs.map +1 -0
  86. package/fesm2015/ngwr-checkbox.mjs +177 -0
  87. package/fesm2015/ngwr-checkbox.mjs.map +1 -0
  88. package/fesm2015/ngwr-core-abstract.mjs +25 -0
  89. package/fesm2015/ngwr-core-abstract.mjs.map +1 -0
  90. package/fesm2015/ngwr-core-color.mjs +25 -0
  91. package/fesm2015/ngwr-core-color.mjs.map +1 -0
  92. package/fesm2015/ngwr-core-decorators.mjs +22 -0
  93. package/fesm2015/ngwr-core-decorators.mjs.map +1 -0
  94. package/fesm2015/ngwr-core-types.mjs +4 -0
  95. package/fesm2015/ngwr-core-types.mjs.map +1 -0
  96. package/fesm2015/ngwr-divider.mjs +120 -0
  97. package/fesm2015/ngwr-divider.mjs.map +1 -0
  98. package/fesm2015/ngwr-form.mjs +89 -0
  99. package/fesm2015/ngwr-form.mjs.map +1 -0
  100. package/fesm2015/ngwr-icon.mjs +527 -0
  101. package/fesm2015/ngwr-icon.mjs.map +1 -0
  102. package/fesm2015/ngwr-input.mjs +262 -0
  103. package/fesm2015/ngwr-input.mjs.map +1 -0
  104. package/fesm2015/ngwr-skeleton.mjs +66 -0
  105. package/fesm2015/ngwr-skeleton.mjs.map +1 -0
  106. package/fesm2015/ngwr-spinner.mjs +43 -0
  107. package/fesm2015/ngwr-spinner.mjs.map +1 -0
  108. package/fesm2015/ngwr-tag.mjs +104 -0
  109. package/fesm2015/ngwr-tag.mjs.map +1 -0
  110. package/fesm2015/ngwr.mjs +2 -1401
  111. package/fesm2015/ngwr.mjs.map +1 -1
  112. package/fesm2020/ngwr-button.mjs +211 -0
  113. package/fesm2020/ngwr-button.mjs.map +1 -0
  114. package/fesm2020/ngwr-checkbox.mjs +177 -0
  115. package/fesm2020/ngwr-checkbox.mjs.map +1 -0
  116. package/fesm2020/ngwr-core-abstract.mjs +25 -0
  117. package/fesm2020/ngwr-core-abstract.mjs.map +1 -0
  118. package/fesm2020/ngwr-core-color.mjs +25 -0
  119. package/fesm2020/ngwr-core-color.mjs.map +1 -0
  120. package/fesm2020/ngwr-core-decorators.mjs +22 -0
  121. package/fesm2020/ngwr-core-decorators.mjs.map +1 -0
  122. package/fesm2020/ngwr-core-types.mjs +4 -0
  123. package/fesm2020/ngwr-core-types.mjs.map +1 -0
  124. package/fesm2020/ngwr-divider.mjs +120 -0
  125. package/fesm2020/ngwr-divider.mjs.map +1 -0
  126. package/fesm2020/ngwr-form.mjs +89 -0
  127. package/fesm2020/ngwr-form.mjs.map +1 -0
  128. package/fesm2020/ngwr-icon.mjs +525 -0
  129. package/fesm2020/ngwr-icon.mjs.map +1 -0
  130. package/fesm2020/ngwr-input.mjs +263 -0
  131. package/fesm2020/ngwr-input.mjs.map +1 -0
  132. package/fesm2020/ngwr-skeleton.mjs +66 -0
  133. package/fesm2020/ngwr-skeleton.mjs.map +1 -0
  134. package/fesm2020/ngwr-spinner.mjs +43 -0
  135. package/fesm2020/ngwr-spinner.mjs.map +1 -0
  136. package/fesm2020/ngwr-tag.mjs +104 -0
  137. package/fesm2020/ngwr-tag.mjs.map +1 -0
  138. package/fesm2020/ngwr.mjs +2 -1399
  139. package/fesm2020/ngwr.mjs.map +1 -1
  140. package/form/form-error.d.ts +6 -0
  141. package/form/form-item.d.ts +15 -0
  142. package/form/{form.module.d.ts → form-module.d.ts} +3 -3
  143. package/form/form.scss +52 -0
  144. package/form/index.d.ts +3 -3
  145. package/icon/{wr-icon.module.d.ts → icon-module.d.ts} +2 -2
  146. package/icon/{wr-icon.service.d.ts → icon-service.d.ts} +0 -9
  147. package/icon/icon.d.ts +20 -0
  148. package/icon/icon.scss +27 -0
  149. package/icon/{wr-icons.d.ts → icons.d.ts} +59 -3
  150. package/icon/index.d.ts +4 -4
  151. package/index.d.ts +2 -5
  152. package/input/index.d.ts +2 -2
  153. package/input/{input.module.d.ts → input-module.d.ts} +3 -3
  154. package/{_core/types/input-autocomplete-type.d.ts → input/input-types.d.ts} +2 -0
  155. package/input/{input.component.d.ts → input.d.ts} +7 -4
  156. package/input/input.scss +163 -0
  157. package/logo.svg +6 -1
  158. package/package.json +124 -19
  159. package/skeleton/index.d.ts +2 -2
  160. package/skeleton/{skeleton.module.d.ts → skeleton-module.d.ts} +2 -2
  161. package/skeleton/skeleton.d.ts +11 -0
  162. package/skeleton/skeleton.scss +54 -0
  163. package/spinner/index.d.ts +2 -2
  164. package/spinner/{spinner.module.d.ts → spinner-module.d.ts} +2 -2
  165. package/spinner/spinner.d.ts +6 -0
  166. package/spinner/spinner.scss +33 -0
  167. package/styles/animations.scss +14 -0
  168. package/styles/grid.scss +164 -0
  169. package/styles/reset.scss +106 -0
  170. package/styles/root.scss +152 -0
  171. package/styles/vars.scss +2 -0
  172. package/tag/index.d.ts +2 -2
  173. package/tag/{tag.module.d.ts → tag-module.d.ts} +4 -4
  174. package/tag/tag.d.ts +18 -0
  175. package/tag/tag.scss +106 -0
  176. package/_core/components/base.component.d.ts +0 -9
  177. package/_core/constants/style-prefix.d.ts +0 -1
  178. package/_core/index.d.ts +0 -4
  179. package/_core/types/boolean-input.d.ts +0 -1
  180. package/_core/types/color.d.ts +0 -1
  181. package/_core/types/index.d.ts +0 -8
  182. package/_core/types/input-mode-type.d.ts +0 -1
  183. package/_core/types/input-type.d.ts +0 -1
  184. package/_core/util/convert.d.ts +0 -19
  185. package/button/button.component.d.ts +0 -35
  186. package/checkbox/checkbox.component.d.ts +0 -32
  187. package/divider/divider.component.d.ts +0 -28
  188. package/esm2020/_core/components/base.component.mjs +0 -18
  189. package/esm2020/_core/constants/style-prefix.mjs +0 -2
  190. package/esm2020/_core/index.mjs +0 -9
  191. package/esm2020/_core/types/boolean-input.mjs +0 -2
  192. package/esm2020/_core/types/color.mjs +0 -2
  193. package/esm2020/_core/types/index.mjs +0 -2
  194. package/esm2020/_core/types/input-autocomplete-type.mjs +0 -2
  195. package/esm2020/_core/types/input-mode-type.mjs +0 -2
  196. package/esm2020/_core/types/input-type.mjs +0 -2
  197. package/esm2020/_core/types/on-change-type.mjs +0 -2
  198. package/esm2020/_core/types/on-touched-type.mjs +0 -2
  199. package/esm2020/_core/types/safe-any.mjs +0 -2
  200. package/esm2020/_core/util/convert.mjs +0 -51
  201. package/esm2020/button/button.component.mjs +0 -133
  202. package/esm2020/button/button.module.mjs +0 -20
  203. package/esm2020/checkbox/checkbox.component.mjs +0 -128
  204. package/esm2020/checkbox/checkbox.module.mjs +0 -20
  205. package/esm2020/divider/divider.component.mjs +0 -72
  206. package/esm2020/divider/divider.module.mjs +0 -16
  207. package/esm2020/form/form-error.component.mjs +0 -23
  208. package/esm2020/form/form-item.component.mjs +0 -35
  209. package/esm2020/form/form.module.mjs +0 -19
  210. package/esm2020/icon/wr-icon.component.mjs +0 -51
  211. package/esm2020/icon/wr-icon.module.mjs +0 -21
  212. package/esm2020/icon/wr-icon.service.mjs +0 -30
  213. package/esm2020/icon/wr-icons.mjs +0 -384
  214. package/esm2020/input/input.component.mjs +0 -239
  215. package/esm2020/input/input.module.mjs +0 -20
  216. package/esm2020/public-api.mjs +0 -11
  217. package/esm2020/skeleton/skeleton.component.mjs +0 -47
  218. package/esm2020/skeleton/skeleton.module.mjs +0 -18
  219. package/esm2020/spinner/spinner.component.mjs +0 -23
  220. package/esm2020/spinner/spinner.module.mjs +0 -16
  221. package/esm2020/tag/tag.component.mjs +0 -80
  222. package/esm2020/tag/tag.module.mjs +0 -20
  223. package/form/form-error.component.d.ts +0 -6
  224. package/form/form-item.component.d.ts +0 -8
  225. package/icon/wr-icon.component.d.ts +0 -17
  226. package/ngwr.min.css +0 -8
  227. package/public-api.d.ts +0 -10
  228. package/skeleton/skeleton.component.d.ts +0 -9
  229. package/spinner/spinner.component.d.ts +0 -6
  230. package/tag/tag.component.d.ts +0 -16
@@ -0,0 +1,80 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';
3
+ import { InputBoolean } from 'ngwr/core/decorators';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "ngwr/icon";
7
+ import * as i3 from "ngwr/spinner";
8
+ export class WrTag {
9
+ constructor() {
10
+ this.color = 'primary';
11
+ this.icon = null;
12
+ this.iconPosition = 'start';
13
+ this.outlined = false;
14
+ this.rounded = false;
15
+ this.transparent = false;
16
+ this.hoverable = false;
17
+ this.loading = false;
18
+ }
19
+ get elClasses() {
20
+ return {
21
+ 'wr-tag': true,
22
+ 'wr-tag--primary': this.color === 'primary',
23
+ 'wr-tag--secondary': this.color === 'secondary',
24
+ 'wr-tag--success': this.color === 'success',
25
+ 'wr-tag--warning': this.color === 'warning',
26
+ 'wr-tag--danger': this.color === 'danger',
27
+ 'wr-tag--light': this.color === 'light',
28
+ 'wr-tag--medium': this.color === 'medium',
29
+ 'wr-tag--dark': this.color === 'dark',
30
+ 'wr-tag--icon-start': (this.icon || this.loading) && this.iconPosition === 'start',
31
+ 'wr-tag--icon-end': (this.icon || this.loading) && this.iconPosition === 'end',
32
+ 'wr-tag--loading': this.loading,
33
+ 'wr-tag--rounded': this.rounded,
34
+ 'wr-tag--outlined': this.outlined,
35
+ 'wr-tag--transparent': this.transparent,
36
+ 'wr-tag--hoverable': this.hoverable,
37
+ };
38
+ }
39
+ }
40
+ WrTag.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrTag, deps: [], target: i0.ɵɵFactoryTarget.Component });
41
+ WrTag.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: WrTag, selector: "wr-tag", inputs: { color: "color", icon: "icon", iconPosition: "iconPosition", outlined: "outlined", rounded: "rounded", transparent: "transparent", hoverable: "hoverable", loading: "loading" }, host: { properties: { "class": "this.elClasses" } }, exportAs: ["wrTag"], ngImport: i0, template: "<wr-spin class=\"wr-tag__spin\" *ngIf=\"loading && iconPosition === 'start'\"></wr-spin>\n<wr-icon class=\"wr-tag__icon\" *ngIf=\"icon && !loading && iconPosition === 'start'\" [name]=\"icon\"></wr-icon>\n<ng-content></ng-content>\n<wr-spin class=\"wr-tag__spin\" *ngIf=\"loading && iconPosition === 'end'\"></wr-spin>\n<wr-icon class=\"wr-tag__icon\" *ngIf=\"icon && !loading && iconPosition === 'end'\" [name]=\"icon\"></wr-icon>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.WrIcon, selector: "wr-icon[name]", inputs: ["name"], exportAs: ["wrIcon"] }, { kind: "component", type: i3.WrSpinner, selector: "wr-spin", exportAs: ["wrSpin"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
42
+ __decorate([
43
+ InputBoolean()
44
+ ], WrTag.prototype, "outlined", void 0);
45
+ __decorate([
46
+ InputBoolean()
47
+ ], WrTag.prototype, "rounded", void 0);
48
+ __decorate([
49
+ InputBoolean()
50
+ ], WrTag.prototype, "transparent", void 0);
51
+ __decorate([
52
+ InputBoolean()
53
+ ], WrTag.prototype, "hoverable", void 0);
54
+ __decorate([
55
+ InputBoolean()
56
+ ], WrTag.prototype, "loading", void 0);
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrTag, decorators: [{
58
+ type: Component,
59
+ args: [{ selector: 'wr-tag', exportAs: 'wrTag', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<wr-spin class=\"wr-tag__spin\" *ngIf=\"loading && iconPosition === 'start'\"></wr-spin>\n<wr-icon class=\"wr-tag__icon\" *ngIf=\"icon && !loading && iconPosition === 'start'\" [name]=\"icon\"></wr-icon>\n<ng-content></ng-content>\n<wr-spin class=\"wr-tag__spin\" *ngIf=\"loading && iconPosition === 'end'\"></wr-spin>\n<wr-icon class=\"wr-tag__icon\" *ngIf=\"icon && !loading && iconPosition === 'end'\" [name]=\"icon\"></wr-icon>\n" }]
60
+ }], propDecorators: { color: [{
61
+ type: Input
62
+ }], icon: [{
63
+ type: Input
64
+ }], iconPosition: [{
65
+ type: Input
66
+ }], outlined: [{
67
+ type: Input
68
+ }], rounded: [{
69
+ type: Input
70
+ }], transparent: [{
71
+ type: Input
72
+ }], hoverable: [{
73
+ type: Input
74
+ }], loading: [{
75
+ type: Input
76
+ }], elClasses: [{
77
+ type: HostBinding,
78
+ args: ['class']
79
+ }] } });
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL3RhZy90YWcudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvdGFnL3RhZy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHMUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQVdwRCxNQUFNLE9BQU8sS0FBSztJQVBsQjtRQVFXLFVBQUssR0FBMEIsU0FBUyxDQUFDO1FBQ3pDLFNBQUksR0FBc0IsSUFBSSxDQUFDO1FBQy9CLGlCQUFZLEdBQW9CLE9BQU8sQ0FBQztRQUN4QixhQUFRLEdBQWlCLEtBQUssQ0FBQztRQUMvQixZQUFPLEdBQWlCLEtBQUssQ0FBQztRQUM5QixnQkFBVyxHQUFpQixLQUFLLENBQUM7UUFDbEMsY0FBUyxHQUFpQixLQUFLLENBQUM7UUFDaEMsWUFBTyxHQUFpQixLQUFLLENBQUM7S0F1QnhEO0lBckJDLElBQ0ksU0FBUztRQUNYLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSTtZQUNkLGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUztZQUMzQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVc7WUFDL0MsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTO1lBQzNDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUztZQUMzQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLFFBQVE7WUFDekMsZUFBZSxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssT0FBTztZQUN2QyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLFFBQVE7WUFDekMsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssTUFBTTtZQUNyQyxvQkFBb0IsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssT0FBTztZQUNsRixrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSztZQUM5RSxpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTztZQUMvQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTztZQUMvQixrQkFBa0IsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUNqQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsV0FBVztZQUN2QyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsU0FBUztTQUNwQyxDQUFDO0lBQ0osQ0FBQzs7bUdBOUJVLEtBQUs7dUZBQUwsS0FBSyxrVENmbEIsbWJBS0E7QURjMkI7SUFBZixZQUFZLEVBQUU7dUNBQWdDO0FBQy9CO0lBQWYsWUFBWSxFQUFFO3NDQUErQjtBQUM5QjtJQUFmLFlBQVksRUFBRTswQ0FBbUM7QUFDbEM7SUFBZixZQUFZLEVBQUU7d0NBQWlDO0FBQ2hDO0lBQWYsWUFBWSxFQUFFO3NDQUErQjs0RkFSNUMsS0FBSztrQkFQakIsU0FBUzsrQkFDRSxRQUFRLFlBQ1IsT0FBTyxtQkFFQSx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzhCQUc1QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ21CLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLE9BQU87c0JBQS9CLEtBQUs7Z0JBQ21CLFdBQVc7c0JBQW5DLEtBQUs7Z0JBQ21CLFNBQVM7c0JBQWpDLEtBQUs7Z0JBQ21CLE9BQU87c0JBQS9CLEtBQUs7Z0JBR0YsU0FBUztzQkFEWixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXclRoZW1lQ29sb3IgfSBmcm9tICduZ3dyL2NvcmUvY29sb3InO1xuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd3ci9jb3JlL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25nd3IvY29yZS90eXBlcyc7XG5pbXBvcnQgeyB3ckljb25OYW1lIH0gZnJvbSAnbmd3ci9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3ItdGFnJyxcbiAgZXhwb3J0QXM6ICd3clRhZycsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWcuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBXclRhZyB7XG4gIEBJbnB1dCgpIGNvbG9yOiBXclRoZW1lQ29sb3IgfCBzdHJpbmcgPSAncHJpbWFyeSc7XG4gIEBJbnB1dCgpIGljb246IHdySWNvbk5hbWUgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgaWNvblBvc2l0aW9uOiAnc3RhcnQnIHwgJ2VuZCcgPSAnc3RhcnQnO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgb3V0bGluZWQ6IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcm91bmRlZDogQm9vbGVhbklucHV0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSB0cmFuc3BhcmVudDogQm9vbGVhbklucHV0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBob3ZlcmFibGU6IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgbG9hZGluZzogQm9vbGVhbklucHV0ID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBlbENsYXNzZXMoKTogU2FmZUFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICd3ci10YWcnOiB0cnVlLFxuICAgICAgJ3dyLXRhZy0tcHJpbWFyeSc6IHRoaXMuY29sb3IgPT09ICdwcmltYXJ5JyxcbiAgICAgICd3ci10YWctLXNlY29uZGFyeSc6IHRoaXMuY29sb3IgPT09ICdzZWNvbmRhcnknLFxuICAgICAgJ3dyLXRhZy0tc3VjY2Vzcyc6IHRoaXMuY29sb3IgPT09ICdzdWNjZXNzJyxcbiAgICAgICd3ci10YWctLXdhcm5pbmcnOiB0aGlzLmNvbG9yID09PSAnd2FybmluZycsXG4gICAgICAnd3ItdGFnLS1kYW5nZXInOiB0aGlzLmNvbG9yID09PSAnZGFuZ2VyJyxcbiAgICAgICd3ci10YWctLWxpZ2h0JzogdGhpcy5jb2xvciA9PT0gJ2xpZ2h0JyxcbiAgICAgICd3ci10YWctLW1lZGl1bSc6IHRoaXMuY29sb3IgPT09ICdtZWRpdW0nLFxuICAgICAgJ3dyLXRhZy0tZGFyayc6IHRoaXMuY29sb3IgPT09ICdkYXJrJyxcbiAgICAgICd3ci10YWctLWljb24tc3RhcnQnOiAodGhpcy5pY29uIHx8IHRoaXMubG9hZGluZykgJiYgdGhpcy5pY29uUG9zaXRpb24gPT09ICdzdGFydCcsXG4gICAgICAnd3ItdGFnLS1pY29uLWVuZCc6ICh0aGlzLmljb24gfHwgdGhpcy5sb2FkaW5nKSAmJiB0aGlzLmljb25Qb3NpdGlvbiA9PT0gJ2VuZCcsXG4gICAgICAnd3ItdGFnLS1sb2FkaW5nJzogdGhpcy5sb2FkaW5nLFxuICAgICAgJ3dyLXRhZy0tcm91bmRlZCc6IHRoaXMucm91bmRlZCxcbiAgICAgICd3ci10YWctLW91dGxpbmVkJzogdGhpcy5vdXRsaW5lZCxcbiAgICAgICd3ci10YWctLXRyYW5zcGFyZW50JzogdGhpcy50cmFuc3BhcmVudCxcbiAgICAgICd3ci10YWctLWhvdmVyYWJsZSc6IHRoaXMuaG92ZXJhYmxlLFxuICAgIH07XG4gIH1cbn1cbiIsIjx3ci1zcGluIGNsYXNzPVwid3ItdGFnX19zcGluXCIgKm5nSWY9XCJsb2FkaW5nICYmIGljb25Qb3NpdGlvbiA9PT0gJ3N0YXJ0J1wiPjwvd3Itc3Bpbj5cbjx3ci1pY29uIGNsYXNzPVwid3ItdGFnX19pY29uXCIgKm5nSWY9XCJpY29uICYmICFsb2FkaW5nICYmIGljb25Qb3NpdGlvbiA9PT0gJ3N0YXJ0J1wiIFtuYW1lXT1cImljb25cIj48L3dyLWljb24+XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48d3Itc3BpbiBjbGFzcz1cIndyLXRhZ19fc3BpblwiICpuZ0lmPVwibG9hZGluZyAmJiBpY29uUG9zaXRpb24gPT09ICdlbmQnXCI+PC93ci1zcGluPlxuPHdyLWljb24gY2xhc3M9XCJ3ci10YWdfX2ljb25cIiAqbmdJZj1cImljb24gJiYgIWxvYWRpbmcgJiYgaWNvblBvc2l0aW9uID09PSAnZW5kJ1wiIFtuYW1lXT1cImljb25cIj48L3dyLWljb24+XG4iXX0=
@@ -0,0 +1,211 @@
1
+ import { __decorate } from 'tslib';
2
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
+ import * as i0 from '@angular/core';
4
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, HostBinding, NgModule } from '@angular/core';
5
+ import { WrAbstractBase } from 'ngwr/core/abstract';
6
+ import { isThemeColor } from 'ngwr/core/color';
7
+ import { InputBoolean } from 'ngwr/core/decorators';
8
+ import * as i1 from '@angular/common';
9
+ import { CommonModule } from '@angular/common';
10
+ import * as i2 from 'ngwr/spinner';
11
+ import { WrSpinnerModule } from 'ngwr/spinner';
12
+ import * as i3 from 'ngwr/icon';
13
+ import { WrIconModule } from 'ngwr/icon';
14
+
15
+ class WrButton extends WrAbstractBase {
16
+ constructor(cdr, elRef, ngZone) {
17
+ super();
18
+ this.cdr = cdr;
19
+ this.elRef = elRef;
20
+ this.ngZone = ngZone;
21
+ this._color = 'primary';
22
+ this._size = 'default';
23
+ this._outlined = false;
24
+ this._rounded = false;
25
+ this._fullwidth = false;
26
+ this._loading = false;
27
+ this._disabled = false;
28
+ this._icon = null;
29
+ this._iconPosition = 'start';
30
+ /* A disabled button shouldn't apply any actions */
31
+ this.preventEventsWhenDisabled = (event) => {
32
+ if (this.disabled) {
33
+ event.preventDefault();
34
+ event.stopImmediatePropagation();
35
+ }
36
+ };
37
+ }
38
+ /** Set color of `wr-btn`; */
39
+ get color() {
40
+ return this._color;
41
+ }
42
+ set color(value) {
43
+ this._color = isThemeColor(value) ? value : 'primary';
44
+ this.cdr.markForCheck();
45
+ }
46
+ /** Set size of `wr-btn`; */
47
+ get size() {
48
+ return this._size;
49
+ }
50
+ set size(value) {
51
+ this._size = value;
52
+ this.cdr.markForCheck();
53
+ }
54
+ /** Set outlined state of `wr-btn`; */
55
+ get outlined() {
56
+ return this._outlined;
57
+ }
58
+ set outlined(value) {
59
+ this._outlined = coerceBooleanProperty(value);
60
+ this.cdr.markForCheck();
61
+ }
62
+ /** Set rounded state of `wr-btn`; */
63
+ get rounded() {
64
+ return this._rounded;
65
+ }
66
+ set rounded(value) {
67
+ this._rounded = coerceBooleanProperty(value);
68
+ this.cdr.markForCheck();
69
+ }
70
+ /** Set fullwidth state of `wr-btn`; */
71
+ get fullwidth() {
72
+ return this._fullwidth;
73
+ }
74
+ set fullwidth(value) {
75
+ this._fullwidth = coerceBooleanProperty(value);
76
+ this.cdr.markForCheck();
77
+ }
78
+ /** Set loading state of `wr-btn`; */
79
+ get loading() {
80
+ return this._loading;
81
+ }
82
+ set loading(value) {
83
+ this._loading = coerceBooleanProperty(value);
84
+ this.cdr.markForCheck();
85
+ }
86
+ /** Set disabled state of `wr-btn`; */
87
+ get disabled() {
88
+ return this._disabled;
89
+ }
90
+ set disabled(value) {
91
+ this._disabled = coerceBooleanProperty(value);
92
+ this.cdr.markForCheck();
93
+ }
94
+ /** Set icon of `wr-btn`; */
95
+ get icon() {
96
+ return this._icon;
97
+ }
98
+ set icon(value) {
99
+ this._icon = value;
100
+ this.cdr.markForCheck();
101
+ }
102
+ /** Set icon position of `wr-btn`; */
103
+ get iconPosition() {
104
+ return this._iconPosition;
105
+ }
106
+ set iconPosition(value) {
107
+ this._iconPosition = value;
108
+ this.cdr.markForCheck();
109
+ }
110
+ /** Set element disabled attribute */
111
+ get nativeDisabled() {
112
+ return this._disabled ? '' : null;
113
+ }
114
+ /** Set element classes */
115
+ get elClasses() {
116
+ return {
117
+ 'wr-btn': true,
118
+ 'wr-btn--primary': this.color === 'primary',
119
+ 'wr-btn--secondary': this.color === 'secondary',
120
+ 'wr-btn--success': this.color === 'success',
121
+ 'wr-btn--warning': this.color === 'warning',
122
+ 'wr-btn--danger': this.color === 'danger',
123
+ 'wr-btn--light': this.color === 'light',
124
+ 'wr-btn--medium': this.color === 'medium',
125
+ 'wr-btn--dark': this.color === 'dark',
126
+ 'wr-btn--default': this.size === 'default',
127
+ 'wr-btn--small': this.size === 'small',
128
+ 'wr-btn--icon-start': this.icon && this.iconPosition === 'start',
129
+ 'wr-btn--icon-end': this.icon && this.iconPosition === 'end',
130
+ 'wr-btn--outlined': this.outlined,
131
+ 'wr-btn--rounded': this.rounded,
132
+ 'wr-btn--loading': this.loading,
133
+ 'wr-btn--full': this.fullwidth,
134
+ };
135
+ }
136
+ ngOnInit() {
137
+ this.ngZone.runOutsideAngular(() => {
138
+ this.elRef.nativeElement.addEventListener('click', this.preventEventsWhenDisabled);
139
+ });
140
+ }
141
+ ngOnDestroy() {
142
+ super.ngOnDestroy();
143
+ this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);
144
+ }
145
+ }
146
+ WrButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
147
+ WrButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", 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 });
148
+ __decorate([
149
+ InputBoolean()
150
+ ], WrButton.prototype, "outlined", null);
151
+ __decorate([
152
+ InputBoolean()
153
+ ], WrButton.prototype, "rounded", null);
154
+ __decorate([
155
+ InputBoolean()
156
+ ], WrButton.prototype, "fullwidth", null);
157
+ __decorate([
158
+ InputBoolean()
159
+ ], WrButton.prototype, "loading", null);
160
+ __decorate([
161
+ InputBoolean()
162
+ ], WrButton.prototype, "disabled", null);
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrButton, decorators: [{
164
+ type: Component,
165
+ 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"] }]
166
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { color: [{
167
+ type: Input
168
+ }], size: [{
169
+ type: Input
170
+ }], outlined: [{
171
+ type: Input
172
+ }], rounded: [{
173
+ type: Input
174
+ }], fullwidth: [{
175
+ type: Input
176
+ }], loading: [{
177
+ type: Input
178
+ }], disabled: [{
179
+ type: Input
180
+ }], icon: [{
181
+ type: Input
182
+ }], iconPosition: [{
183
+ type: Input
184
+ }], nativeDisabled: [{
185
+ type: HostBinding,
186
+ args: ['attr.disabled']
187
+ }], elClasses: [{
188
+ type: HostBinding,
189
+ args: ['class']
190
+ }] } });
191
+
192
+ class WrButtonModule {
193
+ }
194
+ WrButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
195
+ WrButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: WrButtonModule, declarations: [WrButton], imports: [CommonModule, WrSpinnerModule, WrIconModule], exports: [WrButton] });
196
+ WrButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrButtonModule, imports: [CommonModule, WrSpinnerModule, WrIconModule] });
197
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrButtonModule, decorators: [{
198
+ type: NgModule,
199
+ args: [{
200
+ imports: [CommonModule, WrSpinnerModule, WrIconModule],
201
+ declarations: [WrButton],
202
+ exports: [WrButton],
203
+ }]
204
+ }] });
205
+
206
+ /**
207
+ * Generated bundle index. Do not edit.
208
+ */
209
+
210
+ export { WrButton, WrButtonModule };
211
+ //# sourceMappingURL=ngwr-button.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngwr-button.mjs","sources":["../../../projects/lib/button/button.ts","../../../projects/lib/button/button.html","../../../projects/lib/button/button-module.ts","../../../projects/lib/button/ngwr-button.ts"],"sourcesContent":["import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n ChangeDetectionStrategy, ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { WrAbstractBase } from 'ngwr/core/abstract';\nimport { isThemeColor, WrThemeColor } from 'ngwr/core/color';\nimport { InputBoolean } from 'ngwr/core/decorators';\nimport { SafeAny } from 'ngwr/core/types';\nimport { wrIconName } from 'ngwr/icon';\n\n@Component({\n selector: 'wr-btn, button[wr-btn], a[wr-btn]',\n exportAs: 'wrBtn',\n templateUrl: './button.html',\n styleUrls: ['./button.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class WrButton extends WrAbstractBase implements OnInit, OnDestroy {\n /** Set color of `wr-btn`; */\n @Input()\n get color(): WrThemeColor {\n return this._color;\n }\n set color(value: WrThemeColor) {\n this._color = isThemeColor(value) ? value : 'primary';\n this.cdr.markForCheck();\n }\n private _color: WrThemeColor = 'primary';\n\n /** Set size of `wr-btn`; */\n @Input()\n get size(): 'default' | 'small' {\n return this._size;\n }\n set size(value: 'default' | 'small') {\n this._size = value;\n this.cdr.markForCheck();\n }\n private _size: 'default' | 'small' = 'default';\n\n /** Set outlined state of `wr-btn`; */\n @Input()\n @InputBoolean()\n get outlined(): boolean {\n return this._outlined;\n }\n set outlined(value: BooleanInput) {\n this._outlined = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _outlined: boolean = false;\n\n /** Set rounded state of `wr-btn`; */\n @Input()\n @InputBoolean()\n get rounded(): boolean {\n return this._rounded;\n }\n set rounded(value: BooleanInput) {\n this._rounded = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _rounded: boolean = false;\n\n /** Set fullwidth state of `wr-btn`; */\n @Input()\n @InputBoolean()\n get fullwidth(): boolean {\n return this._fullwidth;\n }\n set fullwidth(value: BooleanInput) {\n this._fullwidth = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _fullwidth: boolean = false;\n\n /** Set loading state of `wr-btn`; */\n @Input()\n @InputBoolean()\n get loading(): boolean {\n return this._loading;\n }\n set loading(value: BooleanInput) {\n this._loading = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _loading: boolean = false;\n\n /** Set disabled state of `wr-btn`; */\n @Input()\n @InputBoolean()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: BooleanInput) {\n this._disabled = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _disabled: boolean = false;\n\n /** Set icon of `wr-btn`; */\n @Input()\n get icon(): wrIconName | null {\n return this._icon;\n }\n set icon(value: wrIconName | null) {\n this._icon = value;\n this.cdr.markForCheck();\n }\n private _icon: wrIconName | null = null;\n\n /** Set icon position of `wr-btn`; */\n @Input()\n get iconPosition(): 'start' | 'end' {\n return this._iconPosition;\n }\n set iconPosition(value: 'start' | 'end') {\n this._iconPosition = value;\n this.cdr.markForCheck();\n }\n private _iconPosition: 'start' | 'end' = 'start';\n\n /** Set element disabled attribute */\n @HostBinding('attr.disabled')\n get nativeDisabled(): '' | null {\n return this._disabled ? '' : null;\n }\n\n /** Set element classes */\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-btn': true,\n 'wr-btn--primary': this.color === 'primary',\n 'wr-btn--secondary': this.color === 'secondary',\n 'wr-btn--success': this.color === 'success',\n 'wr-btn--warning': this.color === 'warning',\n 'wr-btn--danger': this.color === 'danger',\n 'wr-btn--light': this.color === 'light',\n 'wr-btn--medium': this.color === 'medium',\n 'wr-btn--dark': this.color === 'dark',\n 'wr-btn--default': this.size === 'default',\n 'wr-btn--small': this.size === 'small',\n 'wr-btn--icon-start': this.icon && this.iconPosition === 'start',\n 'wr-btn--icon-end': this.icon && this.iconPosition === 'end',\n 'wr-btn--outlined': this.outlined,\n 'wr-btn--rounded': this.rounded,\n 'wr-btn--loading': this.loading,\n 'wr-btn--full': this.fullwidth,\n };\n }\n\n constructor(\n private readonly cdr: ChangeDetectorRef,\n private readonly elRef: ElementRef<HTMLButtonElement | HTMLLinkElement | HTMLAnchorElement | HTMLElement>,\n private readonly ngZone: NgZone\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.ngZone.runOutsideAngular(() => {\n this.elRef.nativeElement.addEventListener('click', this.preventEventsWhenDisabled);\n });\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);\n }\n\n /* A disabled button shouldn't apply any actions */\n private preventEventsWhenDisabled = (event: Event): void => {\n if (this.disabled) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n };\n}\n","<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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { WrIconModule } from 'ngwr/icon';\nimport { WrSpinnerModule } from 'ngwr/spinner';\n\nimport { WrButton } from './button';\n\n@NgModule({\n imports: [CommonModule, WrSpinnerModule, WrIconModule],\n declarations: [WrButton],\n exports: [WrButton],\n})\nexport class WrButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,177 @@
1
+ import { __decorate } from 'tslib';
2
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
+ import * as i0 from '@angular/core';
4
+ import { forwardRef, Component, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, Input, HostBinding, NgModule } from '@angular/core';
5
+ import * as i2 from '@angular/forms';
6
+ import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
7
+ import { WrAbstractBase } from 'ngwr/core/abstract';
8
+ import { InputBoolean } from 'ngwr/core/decorators';
9
+ import * as i1 from '@angular/cdk/a11y';
10
+ import { A11yModule } from '@angular/cdk/a11y';
11
+ import { CommonModule } from '@angular/common';
12
+
13
+ class WrCheckbox extends WrAbstractBase {
14
+ constructor(cdr, elRef, focusMonitor, ngZone) {
15
+ super();
16
+ this.cdr = cdr;
17
+ this.elRef = elRef;
18
+ this.focusMonitor = focusMonitor;
19
+ this.ngZone = ngZone;
20
+ this._checked = false;
21
+ this._autofocus = false;
22
+ this._disabled = false;
23
+ this._focused = false;
24
+ // @ts-ignore
25
+ this.onChange = () => { };
26
+ // @ts-ignore
27
+ this.onTouched = () => { };
28
+ /**
29
+ * A disabled checkbox shouldn't apply any actions
30
+ *
31
+ * @param event
32
+ */
33
+ this.preventEventsWhenDisabled = (event) => {
34
+ if (this.disabled) {
35
+ event.preventDefault();
36
+ event.stopImmediatePropagation();
37
+ }
38
+ };
39
+ }
40
+ get checked() {
41
+ return this._checked;
42
+ }
43
+ set checked(value) {
44
+ const checked = coerceBooleanProperty(value);
45
+ if (checked != this.checked) {
46
+ this._checked = checked;
47
+ this.onChange(checked);
48
+ this.onTouched();
49
+ this.cdr.markForCheck();
50
+ }
51
+ }
52
+ /** Set autofocus for checkbox; */
53
+ get autofocus() {
54
+ return this._autofocus;
55
+ }
56
+ set autofocus(value) {
57
+ this._autofocus = coerceBooleanProperty(value);
58
+ this.cdr.markForCheck();
59
+ }
60
+ /** Set disabled state of `wr-btn`; */
61
+ get disabled() {
62
+ return this._disabled;
63
+ }
64
+ set disabled(value) {
65
+ this._disabled = coerceBooleanProperty(value);
66
+ this.cdr.markForCheck();
67
+ }
68
+ get focused() {
69
+ return this._focused;
70
+ }
71
+ set focused(value) {
72
+ this._focused = coerceBooleanProperty(value);
73
+ this.cdr.markForCheck();
74
+ }
75
+ /** Set element classes */
76
+ get elClasses() {
77
+ return {
78
+ 'wr-checkbox': true,
79
+ 'wr-checkbox--checked': this.checked,
80
+ 'wr-checkbox--focused': this.focused,
81
+ };
82
+ }
83
+ ngOnInit() {
84
+ this.ngZone.runOutsideAngular(() => {
85
+ this.elRef.nativeElement.addEventListener('click', this.preventEventsWhenDisabled);
86
+ });
87
+ }
88
+ ngAfterViewInit() {
89
+ this.focusMonitor.monitor(this.inputElement, true).subscribe(origin => {
90
+ this.ngZone.run(() => (this.focused = origin !== null));
91
+ });
92
+ if (this.autofocus) {
93
+ this.focus();
94
+ this.cdr.markForCheck();
95
+ }
96
+ }
97
+ ngOnDestroy() {
98
+ super.ngOnDestroy();
99
+ this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);
100
+ this.focusMonitor.stopMonitoring(this.inputElement);
101
+ }
102
+ focus(origin = 'program', options) {
103
+ if (origin) {
104
+ this.focusMonitor.focusVia(this.inputElement, origin, options);
105
+ }
106
+ else {
107
+ this.inputElement.focus(options);
108
+ }
109
+ }
110
+ writeValue(value) {
111
+ this.checked = value;
112
+ }
113
+ registerOnChange(fn) {
114
+ this.onChange = fn;
115
+ }
116
+ registerOnTouched(fn) {
117
+ this.onTouched = fn;
118
+ }
119
+ setDisabledState(isDisabled) {
120
+ this.disabled = isDisabled;
121
+ }
122
+ }
123
+ WrCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrCheckbox, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
124
+ WrCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: WrCheckbox, selector: "wr-checkbox", inputs: { autofocus: "autofocus", disabled: "disabled" }, host: { properties: { "class": "this.elClasses" } }, providers: [
125
+ {
126
+ provide: NG_VALUE_ACCESSOR,
127
+ useExisting: forwardRef(() => WrCheckbox),
128
+ multi: true,
129
+ },
130
+ ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, static: true }], exportAs: ["wrCheckbox"], usesInheritance: true, ngImport: i0, template: "<label class=\"wr-checkbox__container\">\n <input\n #inputElement\n class=\"wr-checkbox__input\"\n type=\"checkbox\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [ngModel]=\"checked\"\n (ngModelChange)=\"writeValue($event)\"\n />\n <div class=\"wr-checkbox-inner\">\n <div class=\"wr-checkbox-inner__mark\"></div>\n </div>\n <ng-content></ng-content>\n</label>\n", dependencies: [{ kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
131
+ __decorate([
132
+ InputBoolean()
133
+ ], WrCheckbox.prototype, "autofocus", null);
134
+ __decorate([
135
+ InputBoolean()
136
+ ], WrCheckbox.prototype, "disabled", null);
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrCheckbox, decorators: [{
138
+ type: Component,
139
+ args: [{ selector: 'wr-checkbox', exportAs: 'wrCheckbox', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
140
+ {
141
+ provide: NG_VALUE_ACCESSOR,
142
+ useExisting: forwardRef(() => WrCheckbox),
143
+ multi: true,
144
+ },
145
+ ], template: "<label class=\"wr-checkbox__container\">\n <input\n #inputElement\n class=\"wr-checkbox__input\"\n type=\"checkbox\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [ngModel]=\"checked\"\n (ngModelChange)=\"writeValue($event)\"\n />\n <div class=\"wr-checkbox-inner\">\n <div class=\"wr-checkbox-inner__mark\"></div>\n </div>\n <ng-content></ng-content>\n</label>\n" }]
146
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.FocusMonitor }, { type: i0.NgZone }]; }, propDecorators: { inputElement: [{
147
+ type: ViewChild,
148
+ args: ['inputElement', { static: true }]
149
+ }], autofocus: [{
150
+ type: Input
151
+ }], disabled: [{
152
+ type: Input
153
+ }], elClasses: [{
154
+ type: HostBinding,
155
+ args: ['class']
156
+ }] } });
157
+
158
+ class WrCheckboxModule {
159
+ }
160
+ WrCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
161
+ WrCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: WrCheckboxModule, declarations: [WrCheckbox], imports: [CommonModule, FormsModule, A11yModule], exports: [WrCheckbox] });
162
+ WrCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrCheckboxModule, imports: [CommonModule, FormsModule, A11yModule] });
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrCheckboxModule, decorators: [{
164
+ type: NgModule,
165
+ args: [{
166
+ imports: [CommonModule, FormsModule, A11yModule],
167
+ declarations: [WrCheckbox],
168
+ exports: [WrCheckbox],
169
+ }]
170
+ }] });
171
+
172
+ /**
173
+ * Generated bundle index. Do not edit.
174
+ */
175
+
176
+ export { WrCheckbox, WrCheckboxModule };
177
+ //# sourceMappingURL=ngwr-checkbox.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngwr-checkbox.mjs","sources":["../../../projects/lib/checkbox/checkbox.ts","../../../projects/lib/checkbox/checkbox.html","../../../projects/lib/checkbox/checkbox-module.ts","../../../projects/lib/checkbox/ngwr-checkbox.ts"],"sourcesContent":["import { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { WrAbstractBase } from 'ngwr/core/abstract';\nimport { InputBoolean } from 'ngwr/core/decorators';\nimport { OnChangeType, OnTouchedType, SafeAny } from 'ngwr/core/types';\n\n@Component({\n selector: 'wr-checkbox',\n exportAs: 'wrCheckbox',\n templateUrl: './checkbox.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => WrCheckbox),\n multi: true,\n },\n ],\n})\nexport class WrCheckbox extends WrAbstractBase implements ControlValueAccessor, OnInit, AfterViewInit, OnDestroy {\n @ViewChild('inputElement', { static: true }) inputElement!: HTMLInputElement;\n\n get checked(): boolean {\n return this._checked;\n }\n set checked(value: BooleanInput) {\n const checked = coerceBooleanProperty(value);\n\n if (checked != this.checked) {\n this._checked = checked;\n this.onChange(checked);\n this.onTouched();\n this.cdr.markForCheck();\n }\n }\n private _checked: boolean = false;\n\n /** Set autofocus for checkbox; */\n @Input()\n @InputBoolean()\n get autofocus(): boolean {\n return this._autofocus;\n }\n set autofocus(value: BooleanInput) {\n this._autofocus = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _autofocus: boolean = false;\n\n /** Set disabled state of `wr-btn`; */\n @Input()\n @InputBoolean()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: BooleanInput) {\n this._disabled = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _disabled: boolean = false;\n\n get focused(): boolean {\n return this._focused;\n }\n set focused(value: BooleanInput) {\n this._focused = coerceBooleanProperty(value);\n this.cdr.markForCheck();\n }\n private _focused: boolean = false;\n\n // @ts-ignore\n private onChange: OnChangeType = () => {};\n // @ts-ignore\n private onTouched: OnTouchedType = () => {};\n\n /** Set element classes */\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-checkbox': true,\n 'wr-checkbox--checked': this.checked,\n 'wr-checkbox--focused': this.focused,\n };\n }\n\n constructor(\n private readonly cdr: ChangeDetectorRef,\n private readonly elRef: ElementRef<HTMLElement>,\n private readonly focusMonitor: FocusMonitor,\n private readonly ngZone: NgZone\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.ngZone.runOutsideAngular(() => {\n this.elRef.nativeElement.addEventListener('click', this.preventEventsWhenDisabled);\n });\n }\n\n ngAfterViewInit(): void {\n this.focusMonitor.monitor(this.inputElement, true).subscribe(origin => {\n this.ngZone.run(() => (this.focused = origin !== null));\n });\n\n if (this.autofocus) {\n this.focus();\n this.cdr.markForCheck();\n }\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);\n this.focusMonitor.stopMonitoring(this.inputElement);\n }\n\n focus(origin: FocusOrigin = 'program', options?: FocusOptions): void {\n if (origin) {\n this.focusMonitor.focusVia(this.inputElement, origin, options);\n } else {\n this.inputElement.focus(options);\n }\n }\n\n writeValue(value: BooleanInput): void {\n this.checked = value;\n }\n\n registerOnChange(fn: OnChangeType): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: OnTouchedType): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n /**\n * A disabled checkbox shouldn't apply any actions\n *\n * @param event\n */\n private preventEventsWhenDisabled = (event: Event): void => {\n if (this.disabled) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n };\n}\n","<label class=\"wr-checkbox__container\">\n <input\n #inputElement\n class=\"wr-checkbox__input\"\n type=\"checkbox\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [ngModel]=\"checked\"\n (ngModelChange)=\"writeValue($event)\"\n />\n <div class=\"wr-checkbox-inner\">\n <div class=\"wr-checkbox-inner__mark\"></div>\n </div>\n <ng-content></ng-content>\n</label>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { WrCheckbox } from './checkbox';\n\n@NgModule({\n imports: [CommonModule, FormsModule, A11yModule],\n declarations: [WrCheckbox],\n exports: [WrCheckbox],\n})\nexport class WrCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Directive } from '@angular/core';
3
+ import { Subject } from 'rxjs';
4
+
5
+ class WrAbstractBase {
6
+ constructor() {
7
+ this.destroyed$ = new Subject();
8
+ }
9
+ ngOnDestroy() {
10
+ this.destroyed$.next();
11
+ this.destroyed$.complete();
12
+ }
13
+ }
14
+ WrAbstractBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrAbstractBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
15
+ WrAbstractBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: WrAbstractBase, ngImport: i0 });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WrAbstractBase, decorators: [{
17
+ type: Directive
18
+ }] });
19
+
20
+ /**
21
+ * Generated bundle index. Do not edit.
22
+ */
23
+
24
+ export { WrAbstractBase };
25
+ //# sourceMappingURL=ngwr-core-abstract.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngwr-core-abstract.mjs","sources":["../../../projects/lib/core/abstract/base.ts","../../../projects/lib/core/abstract/ngwr-core-abstract.ts"],"sourcesContent":["import { Directive, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Directive()\nexport abstract class WrAbstractBase implements OnDestroy {\n protected readonly destroyed$: Subject<void> = new Subject<void>();\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAIsB,cAAc,CAAA;AADpC,IAAA,WAAA,GAAA;AAEqB,QAAA,IAAA,CAAA,UAAU,GAAkB,IAAI,OAAO,EAAQ,CAAC;KAMpE;IAJC,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;KAC5B;;4GANmB,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAd,cAAc,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBADnC,SAAS;;;ACHV;;AAEG;;;;"}
@@ -0,0 +1,25 @@
1
+ const wrThemeColors = [
2
+ 'primary',
3
+ 'secondary',
4
+ 'success',
5
+ 'warning',
6
+ 'danger',
7
+ 'light',
8
+ 'medium',
9
+ 'dark',
10
+ ];
11
+
12
+ function isThemeColor(color) {
13
+ const is = wrThemeColors.indexOf(color) !== -1;
14
+ if (!is) {
15
+ console.warn(`${color} is not NGWR theme color`);
16
+ }
17
+ return is;
18
+ }
19
+
20
+ /**
21
+ * Generated bundle index. Do not edit.
22
+ */
23
+
24
+ export { isThemeColor, wrThemeColors };
25
+ //# sourceMappingURL=ngwr-core-color.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngwr-core-color.mjs","sources":["../../../projects/lib/core/color/color.ts","../../../projects/lib/core/color/is-theme-color.ts","../../../projects/lib/core/color/ngwr-core-color.ts"],"sourcesContent":["export const wrThemeColors = [\n 'primary',\n 'secondary',\n 'success',\n 'warning',\n 'danger',\n 'light',\n 'medium',\n 'dark',\n] as const;\n\nexport type WrThemeColor = typeof wrThemeColors[number];\n","import { SafeAny } from 'ngwr/core/types';\n\nimport { wrThemeColors, WrThemeColor } from './color';\n\nexport function isThemeColor(color: string): color is WrThemeColor {\n const is: boolean = wrThemeColors.indexOf(color as SafeAny) !== -1;\n\n if (!is) {\n console.warn(`${color} is not NGWR theme color`);\n }\n\n return is;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAa,MAAA,aAAa,GAAG;IAC3B,SAAS;IACT,WAAW;IACX,SAAS;IACT,SAAS;IACT,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,MAAM;;;ACJF,SAAU,YAAY,CAAC,KAAa,EAAA;IACxC,MAAM,EAAE,GAAY,aAAa,CAAC,OAAO,CAAC,KAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,IAAI,CAAC,EAAE,EAAE;AACP,QAAA,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA,wBAAA,CAA0B,CAAC,CAAC;AAClD,KAAA;AAED,IAAA,OAAO,EAAE,CAAC;AACZ;;ACZA;;AAEG;;;;"}