monkey-style-guide-v2 0.0.27 → 0.0.29

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 (143) hide show
  1. package/assets/scss/directives/_index.scss +3 -3
  2. package/assets/scss/input/_index.scss +1 -1
  3. package/assets/scss/partials/_breakpoints.scss +145 -0
  4. package/assets/scss/partials/_grid-system.scss +5069 -0
  5. package/assets/scss/partials/_helper-classes.scss +335 -0
  6. package/assets/scss/partials/_index.scss +8 -3
  7. package/assets/scss/partials/_scrollbars.scss +30 -0
  8. package/assets/scss/partials/_skeleton-loading.scss +67 -0
  9. package/assets/scss/partials/_style-reset.scss +11 -9
  10. package/assets/scss/partials/_variables.scss +49 -111
  11. package/assets/scss/table/_index.scss +1 -1
  12. package/assets/scss/theme.scss +12 -18
  13. package/assets/scss/typography/_index.scss +1 -3
  14. package/assets/scss/typography/_styles.scss +103 -103
  15. package/fesm2022/monkey-style-guide-v2.mjs +288 -279
  16. package/fesm2022/monkey-style-guide-v2.mjs.map +1 -1
  17. package/lib/components/form-field/form-field-control.d.ts +1 -1
  18. package/lib/components/input-phone/input-phone.component.d.ts +0 -2
  19. package/monkey-style-guide-v2-0.0.29.tgz +0 -0
  20. package/package.json +8 -10
  21. package/assets/scss/typography/_function.scss +0 -23
  22. package/assets/scss/typography/_mixins.scss +0 -111
  23. package/esm2022/lib/components/accordion/accordion.component.mjs +0 -93
  24. package/esm2022/lib/components/accordion/index.mjs +0 -7
  25. package/esm2022/lib/components/action-bar/action-bar.component.mjs +0 -46
  26. package/esm2022/lib/components/action-bar/index.mjs +0 -7
  27. package/esm2022/lib/components/alert/alert.component.mjs +0 -50
  28. package/esm2022/lib/components/alert/index.mjs +0 -7
  29. package/esm2022/lib/components/avatar/avatar.component.mjs +0 -55
  30. package/esm2022/lib/components/avatar/index.mjs +0 -7
  31. package/esm2022/lib/components/badge/badge.component.mjs +0 -74
  32. package/esm2022/lib/components/badge/index.mjs +0 -7
  33. package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +0 -56
  34. package/esm2022/lib/components/breadcrumb/index.mjs +0 -7
  35. package/esm2022/lib/components/button/button.component.mjs +0 -59
  36. package/esm2022/lib/components/button/index.mjs +0 -7
  37. package/esm2022/lib/components/checkbox/checkbox.component.mjs +0 -215
  38. package/esm2022/lib/components/checkbox/index.mjs +0 -7
  39. package/esm2022/lib/components/date-range/date-range.component.mjs +0 -239
  40. package/esm2022/lib/components/date-range/index.mjs +0 -7
  41. package/esm2022/lib/components/date-range/month/index.mjs +0 -7
  42. package/esm2022/lib/components/date-range/month/month.component.mjs +0 -148
  43. package/esm2022/lib/components/date-range/quick-actions/index.mjs +0 -7
  44. package/esm2022/lib/components/date-range/quick-actions/quick-actions.component.mjs +0 -48
  45. package/esm2022/lib/components/date-range/utils.mjs +0 -102
  46. package/esm2022/lib/components/divider/divider.component.mjs +0 -44
  47. package/esm2022/lib/components/divider/index.mjs +0 -7
  48. package/esm2022/lib/components/form-field/form-field-control.mjs +0 -15
  49. package/esm2022/lib/components/form-field/form-field.component.mjs +0 -265
  50. package/esm2022/lib/components/form-field/form-field.module.mjs +0 -23
  51. package/esm2022/lib/components/form-field/index.mjs +0 -10
  52. package/esm2022/lib/components/form-field/utils.mjs +0 -16
  53. package/esm2022/lib/components/icon/icon.component.mjs +0 -51
  54. package/esm2022/lib/components/icon/index.mjs +0 -7
  55. package/esm2022/lib/components/icon-button/icon-button.component.mjs +0 -59
  56. package/esm2022/lib/components/icon-button/index.mjs +0 -7
  57. package/esm2022/lib/components/index.mjs +0 -34
  58. package/esm2022/lib/components/input/index.mjs +0 -9
  59. package/esm2022/lib/components/input/input-currency.directive.mjs +0 -185
  60. package/esm2022/lib/components/input/input.directive.mjs +0 -185
  61. package/esm2022/lib/components/input/input.module.mjs +0 -24
  62. package/esm2022/lib/components/input/validators.mjs +0 -22
  63. package/esm2022/lib/components/input-code/index.mjs +0 -7
  64. package/esm2022/lib/components/input-code/input-code.component.mjs +0 -232
  65. package/esm2022/lib/components/input-phone/index.mjs +0 -7
  66. package/esm2022/lib/components/input-phone/input-phone.component.mjs +0 -324
  67. package/esm2022/lib/components/input-upload/index.mjs +0 -7
  68. package/esm2022/lib/components/input-upload/input-upload.component.mjs +0 -238
  69. package/esm2022/lib/components/modal/components/confirmation.component.mjs +0 -73
  70. package/esm2022/lib/components/modal/components/default.mjs +0 -65
  71. package/esm2022/lib/components/modal/directives/actions.mjs +0 -29
  72. package/esm2022/lib/components/modal/directives/content.mjs +0 -26
  73. package/esm2022/lib/components/modal/directives/subtitle.mjs +0 -26
  74. package/esm2022/lib/components/modal/directives/title.mjs +0 -26
  75. package/esm2022/lib/components/modal/index.mjs +0 -16
  76. package/esm2022/lib/components/modal/modal-config.mjs +0 -19
  77. package/esm2022/lib/components/modal/modal-ref.mjs +0 -56
  78. package/esm2022/lib/components/modal/modal.component.mjs +0 -119
  79. package/esm2022/lib/components/modal/modal.module.mjs +0 -56
  80. package/esm2022/lib/components/modal/modal.service.mjs +0 -150
  81. package/esm2022/lib/components/modal/utils.mjs +0 -24
  82. package/esm2022/lib/components/option/index.mjs +0 -7
  83. package/esm2022/lib/components/option/option.component.mjs +0 -70
  84. package/esm2022/lib/components/radio-button/index.mjs +0 -7
  85. package/esm2022/lib/components/radio-button/radio-button.component.mjs +0 -190
  86. package/esm2022/lib/components/security-level/index.mjs +0 -7
  87. package/esm2022/lib/components/security-level/security-level.component.mjs +0 -57
  88. package/esm2022/lib/components/select/index.mjs +0 -7
  89. package/esm2022/lib/components/select/select.component.mjs +0 -444
  90. package/esm2022/lib/components/status/index.mjs +0 -7
  91. package/esm2022/lib/components/status/status.component.mjs +0 -45
  92. package/esm2022/lib/components/table/components/pagination-action/pagination-action.mjs +0 -53
  93. package/esm2022/lib/components/table/components/pagination-label/pagination-label.mjs +0 -34
  94. package/esm2022/lib/components/table/components/pagination-size/pagination-size.mjs +0 -57
  95. package/esm2022/lib/components/table/directives/column-checked.mjs +0 -109
  96. package/esm2022/lib/components/table/directives/column-expansible.mjs +0 -134
  97. package/esm2022/lib/components/table/directives/column-sortable.mjs +0 -97
  98. package/esm2022/lib/components/table/directives/column-stick.mjs +0 -28
  99. package/esm2022/lib/components/table/index.mjs +0 -15
  100. package/esm2022/lib/components/table/table.component.mjs +0 -133
  101. package/esm2022/lib/components/table/table.module.mjs +0 -63
  102. package/esm2022/lib/components/toast/index.mjs +0 -7
  103. package/esm2022/lib/components/toast/toast.component.mjs +0 -79
  104. package/esm2022/lib/components/toggle/index.mjs +0 -7
  105. package/esm2022/lib/components/toggle/toggle.component.mjs +0 -74
  106. package/esm2022/lib/components/toggle-line/index.mjs +0 -8
  107. package/esm2022/lib/components/toggle-line/toggle-line-button/index.mjs +0 -7
  108. package/esm2022/lib/components/toggle-line/toggle-line-button/toggle-line-button.component.mjs +0 -24
  109. package/esm2022/lib/components/toggle-line/toggle-line.component.mjs +0 -85
  110. package/esm2022/lib/components/tooltip/index.mjs +0 -8
  111. package/esm2022/lib/components/tooltip/tooltip/index.mjs +0 -7
  112. package/esm2022/lib/components/tooltip/tooltip/tooltip.component.mjs +0 -58
  113. package/esm2022/lib/components/tooltip/tooltip.directive.mjs +0 -189
  114. package/esm2022/lib/directives/badge.mjs +0 -74
  115. package/esm2022/lib/directives/error.mjs +0 -18
  116. package/esm2022/lib/directives/helper.mjs +0 -18
  117. package/esm2022/lib/directives/index.mjs +0 -15
  118. package/esm2022/lib/directives/info.mjs +0 -18
  119. package/esm2022/lib/directives/label.mjs +0 -18
  120. package/esm2022/lib/directives/module.mjs +0 -61
  121. package/esm2022/lib/directives/popover.mjs +0 -385
  122. package/esm2022/lib/directives/prefix.mjs +0 -18
  123. package/esm2022/lib/directives/suffix.mjs +0 -43
  124. package/esm2022/lib/interfaces/alert.mjs +0 -2
  125. package/esm2022/lib/interfaces/breadcrumb.mjs +0 -2
  126. package/esm2022/lib/interfaces/button.mjs +0 -2
  127. package/esm2022/lib/interfaces/index.mjs +0 -13
  128. package/esm2022/lib/interfaces/popover.mjs +0 -2
  129. package/esm2022/lib/interfaces/sizes.mjs +0 -2
  130. package/esm2022/lib/interfaces/table.mjs +0 -2
  131. package/esm2022/lib/interfaces/toast.mjs +0 -10
  132. package/esm2022/lib/services/dictionary.service.mjs +0 -224
  133. package/esm2022/lib/services/index.mjs +0 -7
  134. package/esm2022/lib/services/toast.service.mjs +0 -79
  135. package/esm2022/lib/tokens/index.mjs +0 -10
  136. package/esm2022/monkey-style-guide-v2.mjs +0 -5
  137. package/esm2022/public-api.mjs +0 -11
  138. package/esm2022/utils/icon.mjs +0 -277
  139. package/esm2022/utils/id-generator.mjs +0 -20
  140. package/esm2022/utils/index.mjs +0 -5
  141. package/esm2022/utils/tests-utils.mjs +0 -4
  142. package/esm2022/utils/utils.mjs +0 -41
  143. package/monkey-style-guide-v2-0.0.27.tgz +0 -0
@@ -1,51 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- import { CommonModule } from '@angular/common';
7
- import { Component, inject, Input, ViewEncapsulation } from '@angular/core';
8
- import { IdGenerator } from '../../../utils';
9
- import * as i0 from "@angular/core";
10
- export class MonkeyIconComponent {
11
- set icon(val) {
12
- if (val) {
13
- this._icon = `mk-i mk-i-${val}`;
14
- }
15
- }
16
- get id() {
17
- return this._id;
18
- }
19
- set id(value) {
20
- this._id = value || this._uid;
21
- }
22
- constructor() {
23
- this.size = 'lg';
24
- this._icon = '';
25
- this._uid = inject(IdGenerator).getId('monkey-icon-');
26
- // eslint-disable-next-line no-self-assign
27
- this.id = this.id;
28
- }
29
- ngOnInit() {
30
- if (!this._icon) {
31
- throw new Error('monkey-icon must have icon input');
32
- }
33
- }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MonkeyIconComponent, isStandalone: true, selector: "monkey-icon", inputs: { icon: "icon", size: "size", id: "id" }, host: { properties: { "class": "_icon+' '+size", "attr.id": "id", "id": "id" } }, ngImport: i0, template: '', isInline: true, styles: ["monkey-icon{display:inline-flex}monkey-icon.sm{font-size:16px;width:16px;height:16px}monkey-icon.md{font-size:18px;width:18px;height:18px}monkey-icon.lg{font-size:24px;width:24px;height:24px}monkey-icon.xl{font-size:32px;width:32px;height:32px}monkey-icon.xxl{font-size:48px;width:48px;height:48px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], encapsulation: i0.ViewEncapsulation.None }); }
36
- }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyIconComponent, decorators: [{
38
- type: Component,
39
- args: [{ selector: 'monkey-icon', standalone: true, imports: [CommonModule], template: '', encapsulation: ViewEncapsulation.None, host: {
40
- '[class]': `_icon+' '+size`,
41
- '[attr.id]': 'id',
42
- '[id]': 'id'
43
- }, styles: ["monkey-icon{display:inline-flex}monkey-icon.sm{font-size:16px;width:16px;height:16px}monkey-icon.md{font-size:18px;width:18px;height:18px}monkey-icon.lg{font-size:24px;width:24px;height:24px}monkey-icon.xl{font-size:32px;width:32px;height:32px}monkey-icon.xxl{font-size:48px;width:48px;height:48px}\n"] }]
44
- }], ctorParameters: () => [], propDecorators: { icon: [{
45
- type: Input
46
- }], size: [{
47
- type: Input
48
- }], id: [{
49
- type: Input
50
- }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL2ljb24vaWNvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWU3QyxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLElBQWEsSUFBSSxDQUFDLEdBQVc7UUFDM0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNSLElBQUksQ0FBQyxLQUFLLEdBQUcsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQztJQVVELElBQ0ksRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxFQUFFLENBQUMsS0FBYTtRQUNsQixJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRDtRQWpCUyxTQUFJLEdBQTZDLElBQUksQ0FBQztRQUUvRCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRUQsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFjekQsMENBQTBDO1FBQzFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDSCxDQUFDOytHQWpDVSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwyTUFUcEIsRUFBRSxxWEFERixZQUFZOzs0RkFVWCxtQkFBbUI7a0JBYi9CLFNBQVM7K0JBQ0UsYUFBYSxjQUNYLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxZQUNiLEVBQUUsaUJBRUcsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixTQUFTLEVBQUUsZ0JBQWdCO3dCQUMzQixXQUFXLEVBQUUsSUFBSTt3QkFDakIsTUFBTSxFQUFFLElBQUk7cUJBQ2I7d0RBR1ksSUFBSTtzQkFBaEIsS0FBSztnQkFNRyxJQUFJO3NCQUFaLEtBQUs7Z0JBU0YsRUFBRTtzQkFETCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqICoqKioqKioqKioqKioqKioqKioqKioqKlxuICogQ29weXJpZ2h0IE1vbmtleSBFeGNoYW5nZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZFxuICogVGhpcyBzdHlsZSBndWlkZSB3YXMgZGV2ZWxvcGVkIGJ5IE1vbmtleSBFeGNoYW5nZSBUZWFtXG4gKiBNSVQgTGljZW5jZVxuICoqKioqKioqKioqKioqKioqKioqKioqKiogKi9cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElkR2VuZXJhdG9yIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtb25rZXktaWNvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlVXJsOiAnLi9pY29uLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3NdJzogYF9pY29uKycgJytzaXplYCxcbiAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAnW2lkXSc6ICdpZCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgc2V0IGljb24odmFsOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsKSB7XG4gICAgICB0aGlzLl9pY29uID0gYG1rLWkgbWstaS0ke3ZhbH1gO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpIHNpemU6ICd4cycgfCAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnIHwgJ3h4bCcgPSAnbGcnO1xuXG4gIF9pY29uID0gJyc7XG5cbiAgcHJvdGVjdGVkIF91aWQgPSBpbmplY3QoSWRHZW5lcmF0b3IpLmdldElkKCdtb25rZXktaWNvbi0nKTtcblxuICBwcm90ZWN0ZWQgX2lkITogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9pZDtcbiAgfVxuXG4gIHNldCBpZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5faWQgPSB2YWx1ZSB8fCB0aGlzLl91aWQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1hc3NpZ25cbiAgICB0aGlzLmlkID0gdGhpcy5pZDtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faWNvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdtb25rZXktaWNvbiBtdXN0IGhhdmUgaWNvbiBpbnB1dCcpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,7 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- export * from './icon.component';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL2ljb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBQzdCLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBDb3B5cmlnaHQgTW9ua2V5IEV4Y2hhbmdlLiBBbGwgUmlnaHRzIFJlc2VydmVkXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cbiAqIE1JVCBMaWNlbmNlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuZXhwb3J0ICogZnJvbSAnLi9pY29uLmNvbXBvbmVudCc7XG4iXX0=
@@ -1,59 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- import { CommonModule } from '@angular/common';
7
- import { Component, HostListener, inject, Input, ViewEncapsulation } from '@angular/core';
8
- import { IdGenerator } from '../../../utils';
9
- import { MonkeyIconComponent } from '../icon';
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "@angular/common";
12
- export class MonkeyIconButtonComponent {
13
- get id() {
14
- return this._id;
15
- }
16
- set id(value) {
17
- this._id = value || this._uid;
18
- }
19
- constructor() {
20
- this.type = 'primary';
21
- this.size = 'md';
22
- this.disabled = false;
23
- this.icon = '';
24
- this._uid = inject(IdGenerator).getId('monkey-icon-button-');
25
- // eslint-disable-next-line no-self-assign
26
- this.id = this.id;
27
- }
28
- onClick(event) {
29
- if (this.disabled) {
30
- event.stopPropagation();
31
- event.preventDefault();
32
- event.stopImmediatePropagation();
33
- }
34
- }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyIconButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MonkeyIconButtonComponent, isStandalone: true, selector: "monkey-icon-button", inputs: { type: "type", size: "size", disabled: "disabled", icon: "icon", id: "id" }, host: { attributes: { "data-testid": "monkey-icon-button" }, listeners: { "click": "onClick($event)" }, properties: { "attr.id": "id", "id": "id" } }, ngImport: i0, template: "<button class=\"mecx-icon-button\" [ngClass]=\"type + ' ' + size\" [disabled]=\"disabled\">\n <div class=\"content\">\n <monkey-icon [icon]=\"icon\" [size]=\"size\" first></monkey-icon>\n </div>\n</button>\n", styles: ["monkey-icon-button{display:inline-block;margin:0 2px}monkey-icon-button .mecx-icon-button{width:100%;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:background-color .15s ease-out,color .15s ease-out}monkey-icon-button .mecx-icon-button .content{display:flex;align-items:center;justify-content:center;padding:12px;transition:transform .2s cubic-bezier(0,.5,.2,1)}monkey-icon-button .mecx-icon-button .content span{width:100%}monkey-icon-button .mecx-icon-button .content .mk-i{display:flex}monkey-icon-button .mecx-icon-button:disabled{background:var(--mecx-color-gray-100)!important;color:var(--mecx-color-gray-400)!important;cursor:not-allowed!important}monkey-icon-button .mecx-icon-button:disabled.secondary{background:unset!important;border:1px solid var(--mecx-color-gray-400)!important}monkey-icon-button .mecx-icon-button.primary{color:var(--mecx-color-theme-contrast-main);background:var(--mecx-color-theme-main)}monkey-icon-button .mecx-icon-button.primary:hover:not(:disabled){background:var(--mecx-color-theme-600)}monkey-icon-button .mecx-icon-button.secondary{border:2px solid var(--mecx-color-gray-400);background:unset}monkey-icon-button .mecx-icon-button.secondary:disabled{border-width:1px}monkey-icon-button .mecx-icon-button.secondary:hover:not(:disabled){color:var(--mecx-color-theme-main)}monkey-icon-button .mecx-icon-button.tertiary{background:unset}monkey-icon-button .mecx-icon-button.tertiary span{text-decoration:underline}monkey-icon-button .mecx-icon-button.tertiary:disabled{background:unset!important;border-width:1px}monkey-icon-button .mecx-icon-button.tertiary:hover:not(:disabled){color:var(--mecx-color-theme-main)}monkey-icon-button .mecx-icon-button.sm{width:32px;height:32px}monkey-icon-button .mecx-icon-button.sm .mk-i{font-size:16px}monkey-icon-button .mecx-icon-button.md{width:40px;height:40px}monkey-icon-button .mecx-icon-button.md .mk-i{font-size:18px}monkey-icon-button .mecx-icon-button.lg{width:48px;height:48px}monkey-icon-button .mecx-icon-button.lg .mk-i{font-size:24px}monkey-icon-button .mecx-icon-button.full-width{width:100%}monkey-icon-button .mecx-icon-button:focus{outline:2px solid var(--mecx-color-theme-main);outline-offset:1px}monkey-icon-button .mecx-icon-button:active:not(:disabled).primary{background:var(--mecx-color-theme-main);opacity:.8;outline:none}monkey-icon-button .mecx-icon-button:active:not(:disabled) .content{transform:scale(.8)}:host:has(.mecx-button:active) .mecx-button{outline:unset;outline-offset:unset}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MonkeyIconComponent, selector: "monkey-icon", inputs: ["icon", "size", "id"] }], encapsulation: i0.ViewEncapsulation.None }); }
37
- }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyIconButtonComponent, decorators: [{
39
- type: Component,
40
- args: [{ selector: 'monkey-icon-button', standalone: true, imports: [CommonModule, MonkeyIconComponent], encapsulation: ViewEncapsulation.None, host: {
41
- 'data-testid': 'monkey-icon-button',
42
- '[attr.id]': 'id',
43
- '[id]': 'id'
44
- }, template: "<button class=\"mecx-icon-button\" [ngClass]=\"type + ' ' + size\" [disabled]=\"disabled\">\n <div class=\"content\">\n <monkey-icon [icon]=\"icon\" [size]=\"size\" first></monkey-icon>\n </div>\n</button>\n", styles: ["monkey-icon-button{display:inline-block;margin:0 2px}monkey-icon-button .mecx-icon-button{width:100%;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:background-color .15s ease-out,color .15s ease-out}monkey-icon-button .mecx-icon-button .content{display:flex;align-items:center;justify-content:center;padding:12px;transition:transform .2s cubic-bezier(0,.5,.2,1)}monkey-icon-button .mecx-icon-button .content span{width:100%}monkey-icon-button .mecx-icon-button .content .mk-i{display:flex}monkey-icon-button .mecx-icon-button:disabled{background:var(--mecx-color-gray-100)!important;color:var(--mecx-color-gray-400)!important;cursor:not-allowed!important}monkey-icon-button .mecx-icon-button:disabled.secondary{background:unset!important;border:1px solid var(--mecx-color-gray-400)!important}monkey-icon-button .mecx-icon-button.primary{color:var(--mecx-color-theme-contrast-main);background:var(--mecx-color-theme-main)}monkey-icon-button .mecx-icon-button.primary:hover:not(:disabled){background:var(--mecx-color-theme-600)}monkey-icon-button .mecx-icon-button.secondary{border:2px solid var(--mecx-color-gray-400);background:unset}monkey-icon-button .mecx-icon-button.secondary:disabled{border-width:1px}monkey-icon-button .mecx-icon-button.secondary:hover:not(:disabled){color:var(--mecx-color-theme-main)}monkey-icon-button .mecx-icon-button.tertiary{background:unset}monkey-icon-button .mecx-icon-button.tertiary span{text-decoration:underline}monkey-icon-button .mecx-icon-button.tertiary:disabled{background:unset!important;border-width:1px}monkey-icon-button .mecx-icon-button.tertiary:hover:not(:disabled){color:var(--mecx-color-theme-main)}monkey-icon-button .mecx-icon-button.sm{width:32px;height:32px}monkey-icon-button .mecx-icon-button.sm .mk-i{font-size:16px}monkey-icon-button .mecx-icon-button.md{width:40px;height:40px}monkey-icon-button .mecx-icon-button.md .mk-i{font-size:18px}monkey-icon-button .mecx-icon-button.lg{width:48px;height:48px}monkey-icon-button .mecx-icon-button.lg .mk-i{font-size:24px}monkey-icon-button .mecx-icon-button.full-width{width:100%}monkey-icon-button .mecx-icon-button:focus{outline:2px solid var(--mecx-color-theme-main);outline-offset:1px}monkey-icon-button .mecx-icon-button:active:not(:disabled).primary{background:var(--mecx-color-theme-main);opacity:.8;outline:none}monkey-icon-button .mecx-icon-button:active:not(:disabled) .content{transform:scale(.8)}:host:has(.mecx-button:active) .mecx-button{outline:unset;outline-offset:unset}\n"] }]
45
- }], ctorParameters: () => [], propDecorators: { type: [{
46
- type: Input
47
- }], size: [{
48
- type: Input
49
- }], disabled: [{
50
- type: Input
51
- }], icon: [{
52
- type: Input
53
- }], id: [{
54
- type: Input
55
- }], onClick: [{
56
- type: HostListener,
57
- args: ['click', ['$event']]
58
- }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OzZCQUk2QjtBQUM3QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sU0FBUyxDQUFDOzs7QUFlOUMsTUFBTSxPQUFPLHlCQUF5QjtJQWFwQyxJQUNJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVELElBQUksRUFBRSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQ7UUFyQlMsU0FBSSxHQUF5QyxTQUFTLENBQUM7UUFFdkQsU0FBSSxHQUF1QixJQUFJLENBQUM7UUFFaEMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBRVQsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQWNoRSwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFHRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ25DLENBQUM7SUFDSCxDQUFDOytHQWxDVSx5QkFBeUI7bUdBQXpCLHlCQUF5QiwyVEN2QnRDLHNOQUtBLHdpRkRRWSxZQUFZLDZIQUFFLG1CQUFtQjs7NEZBVWhDLHlCQUF5QjtrQkFickMsU0FBUzsrQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLGlCQUc3QixpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CO3dCQUNKLGFBQWEsRUFBRSxvQkFBb0I7d0JBQ25DLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixNQUFNLEVBQUUsSUFBSTtxQkFDYjt3REFHUSxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQU9GLEVBQUU7c0JBREwsS0FBSztnQkFlTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqICoqKioqKioqKioqKioqKioqKioqKioqKlxuICogQ29weXJpZ2h0IE1vbmtleSBFeGNoYW5nZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZFxuICogVGhpcyBzdHlsZSBndWlkZSB3YXMgZGV2ZWxvcGVkIGJ5IE1vbmtleSBFeGNoYW5nZSBUZWFtXG4gKiBNSVQgTGljZW5jZVxuICoqKioqKioqKioqKioqKioqKioqKioqKiogKi9cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElkR2VuZXJhdG9yIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTW9ua2V5SWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtb25rZXktaWNvbi1idXR0b24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNb25rZXlJY29uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24tYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2ljb24tYnV0dG9uLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgICdkYXRhLXRlc3RpZCc6ICdtb25rZXktaWNvbi1idXR0b24nLFxuICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICdbaWRdJzogJ2lkJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleUljb25CdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSB0eXBlOiAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICd0ZXJ0aWFyeScgPSAncHJpbWFyeSc7XG5cbiAgQElucHV0KCkgc2l6ZTogJ3NtJyB8ICdtZCcgfCAnbGcnID0gJ21kJztcblxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIGljb24gPSAnJztcblxuICBwcm90ZWN0ZWQgX3VpZCA9IGluamVjdChJZEdlbmVyYXRvcikuZ2V0SWQoJ21vbmtleS1pY29uLWJ1dHRvbi0nKTtcblxuICBwcm90ZWN0ZWQgX2lkITogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9pZDtcbiAgfVxuXG4gIHNldCBpZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5faWQgPSB2YWx1ZSB8fCB0aGlzLl91aWQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1hc3NpZ25cbiAgICB0aGlzLmlkID0gdGhpcy5pZDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgb25DbGljayhldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfVxufVxuIiwiPGJ1dHRvbiBjbGFzcz1cIm1lY3gtaWNvbi1idXR0b25cIiBbbmdDbGFzc109XCJ0eXBlICsgJyAnICsgc2l6ZVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgIDxtb25rZXktaWNvbiBbaWNvbl09XCJpY29uXCIgW3NpemVdPVwic2l6ZVwiIGZpcnN0PjwvbW9ua2V5LWljb24+XG4gIDwvZGl2PlxuPC9idXR0b24+XG4iXX0=
@@ -1,7 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- export * from './icon-button.component';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL2ljb24tYnV0dG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OzZCQUk2QjtBQUM3QixjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqICoqKioqKioqKioqKioqKioqKioqKioqKlxuICogQ29weXJpZ2h0IE1vbmtleSBFeGNoYW5nZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZFxuICogVGhpcyBzdHlsZSBndWlkZSB3YXMgZGV2ZWxvcGVkIGJ5IE1vbmtleSBFeGNoYW5nZSBUZWFtXG4gKiBNSVQgTGljZW5jZVxuICoqKioqKioqKioqKioqKioqKioqKioqKiogKi9cbmV4cG9ydCAqIGZyb20gJy4vaWNvbi1idXR0b24uY29tcG9uZW50JztcbiJdfQ==
@@ -1,34 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- export * from './accordion';
7
- export * from './action-bar';
8
- export * from './alert';
9
- export * from './avatar';
10
- export * from './badge';
11
- export * from './breadcrumb';
12
- export * from './button';
13
- export * from './checkbox';
14
- export * from './date-range';
15
- export * from './divider';
16
- export * from './form-field';
17
- export * from './icon';
18
- export * from './icon-button';
19
- export * from './input';
20
- export * from './input-code';
21
- export * from './input-phone';
22
- export * from './input-upload';
23
- export * from './modal';
24
- export * from './option';
25
- export * from './radio-button';
26
- export * from './security-level';
27
- export * from './select';
28
- export * from './status';
29
- export * from './table';
30
- export * from './toast';
31
- export * from './toggle';
32
- export * from './toggle-line';
33
- export * from './tooltip';
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OzZCQUk2QjtBQUM3QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKiAqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENvcHlyaWdodCBNb25rZXkgRXhjaGFuZ2UuIEFsbCBSaWdodHMgUmVzZXJ2ZWRcbiAqIFRoaXMgc3R5bGUgZ3VpZGUgd2FzIGRldmVsb3BlZCBieSBNb25rZXkgRXhjaGFuZ2UgVGVhbVxuICogTUlUIExpY2VuY2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqICovXG5leHBvcnQgKiBmcm9tICcuL2FjY29yZGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi1iYXInO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2F2YXRhcic7XG5leHBvcnQgKiBmcm9tICcuL2JhZGdlJztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYic7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL2NoZWNrYm94JztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS1yYW5nZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpdmlkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vaWNvbic7XG5leHBvcnQgKiBmcm9tICcuL2ljb24tYnV0dG9uJztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1jb2RlJztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtcGhvbmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC11cGxvYWQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbCc7XG5leHBvcnQgKiBmcm9tICcuL29wdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3JhZGlvLWJ1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL3NlY3VyaXR5LWxldmVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdHVzJztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi90b2FzdCc7XG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZS1saW5lJztcbmV4cG9ydCAqIGZyb20gJy4vdG9vbHRpcCc7XG4iXX0=
@@ -1,9 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- export * from './input-currency.directive';
7
- export * from './input.directive';
8
- export * from './input.module';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL2lucHV0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OzZCQUk2QjtBQUM3QixjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKiAqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENvcHlyaWdodCBNb25rZXkgRXhjaGFuZ2UuIEFsbCBSaWdodHMgUmVzZXJ2ZWRcbiAqIFRoaXMgc3R5bGUgZ3VpZGUgd2FzIGRldmVsb3BlZCBieSBNb25rZXkgRXhjaGFuZ2UgVGVhbVxuICogTUlUIExpY2VuY2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqICovXG5leHBvcnQgKiBmcm9tICcuL2lucHV0LWN1cnJlbmN5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0Lm1vZHVsZSc7XG4iXX0=
@@ -1,185 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
7
- import { booleanAttribute, ChangeDetectorRef, DEFAULT_CURRENCY_CODE, DestroyRef, Directive, ElementRef, inject, Input, LOCALE_ID } from '@angular/core';
8
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
9
- import { NgControl, Validators } from '@angular/forms';
10
- import { Subject } from 'rxjs';
11
- import { IdGenerator } from '../../../utils';
12
- import { MonkeyFormFieldControl } from '../form-field';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@angular/common";
15
- export class MonkeyInputCurrencyDirective {
16
- get disabled() {
17
- if (this.ngControl && this.ngControl.disabled !== null) {
18
- return this.ngControl.disabled;
19
- }
20
- return this._disabled;
21
- }
22
- set disabled(value) {
23
- this._disabled = value;
24
- if (this.focused) {
25
- this.focused = false;
26
- this.stateChanges.next();
27
- }
28
- }
29
- get id() {
30
- return this._id;
31
- }
32
- set id(value) {
33
- this._id = value || this._uid;
34
- }
35
- get required() {
36
- return this._required ?? this.ngControl?.control?.hasValidator(Validators.required) ?? false;
37
- }
38
- set required(value) {
39
- this._required = coerceBooleanProperty(value);
40
- }
41
- get type() {
42
- return this._type;
43
- }
44
- set type(value) {
45
- this._type = value;
46
- }
47
- get currency() {
48
- return true;
49
- }
50
- get percent() {
51
- return false;
52
- }
53
- constructor(el, renderer, currencyPipe) {
54
- this.el = el;
55
- this.renderer = renderer;
56
- this.currencyPipe = currencyPipe;
57
- this._elementRef = inject(ElementRef);
58
- this._uid = inject(IdGenerator).getId('monkey-input-currency-');
59
- this.stateChanges = new Subject();
60
- this._disabled = false;
61
- this._type = 'text';
62
- this._changeDetectorRef = inject(ChangeDetectorRef);
63
- this._currencyCode = inject(DEFAULT_CURRENCY_CODE);
64
- this._localeId = inject(LOCALE_ID);
65
- this._destroyRef = inject(DestroyRef);
66
- this._rawValue = 0;
67
- this.ngControl = inject(NgControl, { self: true, optional: true });
68
- this.focused = false;
69
- // eslint-disable-next-line no-self-assign
70
- this.id = this.id;
71
- }
72
- markAsUntouched() {
73
- this.ngControl?.control?.markAsUntouched();
74
- }
75
- focus(options) {
76
- this._elementRef.nativeElement.focus(options);
77
- this.markAsUntouched();
78
- }
79
- formatValue(value) {
80
- return this.currencyPipe.transform(value, this._currencyCode || 'BRL', '', '1.2-2', this._localeId || 'pt-BR');
81
- }
82
- handleControlValue() {
83
- const value = this.ngControl?.control?.value;
84
- if (this._rawValue !== value) {
85
- this._rawValue = value;
86
- let handled = value;
87
- const decimal = `${value}`.split('.')[1];
88
- if (`${decimal}`.length >= 2) {
89
- handled = `${value}`.replace(/[^0-9]/g, '');
90
- handled = `${Number(handled) / 100}`;
91
- }
92
- this.ngControl?.control?.setValue(Number(handled), { emitEvent: false, onlySelf: true });
93
- const formattedValue = this.formatValue(handled);
94
- this.renderer.setProperty(this.el.nativeElement, 'value', formattedValue);
95
- this._changeDetectorRef.markForCheck();
96
- }
97
- }
98
- ngOnInit() {
99
- this.handleControlValue();
100
- this._valueChanges?.unsubscribe();
101
- this._valueChanges = this.ngControl?.control?.valueChanges
102
- .pipe(takeUntilDestroyed(this._destroyRef))
103
- .subscribe(() => {
104
- this.handleControlValue();
105
- });
106
- }
107
- ngOnDestroy() {
108
- this.stateChanges.complete();
109
- this._valueChanges?.unsubscribe();
110
- }
111
- ngOnChanges({ disabled }) {
112
- if (!disabled) {
113
- this.stateChanges.next();
114
- }
115
- }
116
- onContainerClick() {
117
- if (!this.focused) {
118
- this.focus();
119
- }
120
- }
121
- focusChanged(isFocused) {
122
- if (isFocused === this.focused) {
123
- return;
124
- }
125
- if (isFocused && this.disabled) {
126
- const element = this._elementRef.nativeElement;
127
- element.setSelectionRange(0, 0);
128
- }
129
- this.markAsUntouched();
130
- this.focused = isFocused;
131
- this.stateChanges.next();
132
- }
133
- focusOutChanged() {
134
- this.ngControl?.control?.markAsTouched();
135
- }
136
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyInputCurrencyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.CurrencyPipe }], target: i0.ɵɵFactoryTarget.Directive }); }
137
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.13", type: MonkeyInputCurrencyDirective, selector: "input[monkey-input-currency]", inputs: { name: "name", disabled: ["disabled", "disabled", booleanAttribute], id: "id", required: "required", type: "type" }, host: { listeners: { "focus": "focusChanged(true)", "focusout": "focusOutChanged()", "blur": "focusChanged(false)" }, properties: { "class.mecx-input-disabled": "disabled", "id": "id", "disabled": "disabled", "required": "required", "attr.name": "name || null", "attr.disabled": "disabled || null", "attr.aria-invalid": "(empty && required) ? null : errorState", "attr.aria-required": "required", "attr.id": "id" }, classAttribute: "mecx-input" }, providers: [
138
- {
139
- provide: MonkeyFormFieldControl,
140
- // eslint-disable-next-line no-use-before-define
141
- useExisting: MonkeyInputCurrencyDirective
142
- }
143
- ], exportAs: ["monkeyInput"], usesOnChanges: true, ngImport: i0 }); }
144
- }
145
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyInputCurrencyDirective, decorators: [{
146
- type: Directive,
147
- args: [{
148
- selector: 'input[monkey-input-currency]',
149
- exportAs: 'monkeyInput',
150
- host: {
151
- class: 'mecx-input',
152
- '[class.mecx-input-disabled]': 'disabled',
153
- '[id]': 'id',
154
- '[disabled]': 'disabled',
155
- '[required]': 'required',
156
- '[attr.name]': 'name || null',
157
- '[attr.disabled]': 'disabled || null',
158
- '[attr.aria-invalid]': '(empty && required) ? null : errorState',
159
- '[attr.aria-required]': 'required',
160
- '[attr.id]': 'id',
161
- '(focus)': 'focusChanged(true)',
162
- '(focusout)': 'focusOutChanged()',
163
- '(blur)': 'focusChanged(false)'
164
- },
165
- providers: [
166
- {
167
- provide: MonkeyFormFieldControl,
168
- // eslint-disable-next-line no-use-before-define
169
- useExisting: MonkeyInputCurrencyDirective
170
- }
171
- ]
172
- }]
173
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.CurrencyPipe }], propDecorators: { name: [{
174
- type: Input
175
- }], disabled: [{
176
- type: Input,
177
- args: [{ transform: booleanAttribute }]
178
- }], id: [{
179
- type: Input
180
- }], required: [{
181
- type: Input
182
- }], type: [{
183
- type: Input
184
- }] } });
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY3VycmVuY3kuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC1jdXJyZW5jeS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBRTdCLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixxQkFBcUIsRUFDckIsVUFBVSxFQUNWLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBTVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUE0QnZELE1BQU0sT0FBTyw0QkFBNEI7SUFjdkMsSUFDSSxRQUFRO1FBQ1YsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3ZELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7UUFDakMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUV2QixJ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QUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQztJQUMzQyxDQUFDOytHQW5MVSw0QkFBNEI7bUdBQTVCLDRCQUE0Qix1R0FjbkIsZ0JBQWdCLDhmQXRCekI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsc0JBQXNCO2dCQUMvQixnREFBZ0Q7Z0JBQ2hELFdBQVcsRUFBRSw0QkFBNEI7YUFDMUM7U0FDRjs7NEZBRVUsNEJBQTRCO2tCQTFCeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSxZQUFZO3dCQUNuQiw2QkFBNkIsRUFBRSxVQUFVO3dCQUN6QyxNQUFNLEVBQUUsSUFBSTt3QkFDWixZQUFZLEVBQUUsVUFBVTt3QkFDeEIsWUFBWSxFQUFFLFVBQVU7d0JBQ3hCLGFBQWEsRUFBRSxjQUFjO3dCQUM3QixpQkFBaUIsRUFBRSxrQkFBa0I7d0JBQ3JDLHFCQUFxQixFQUFFLHlDQUF5Qzt3QkFDaEUsc0JBQXNCLEVBQUUsVUFBVTt3QkFDbEMsV0FBVyxFQUFFLElBQUk7d0JBQ2pCLFNBQVMsRUFBRSxvQkFBb0I7d0JBQy9CLFlBQVksRUFBRSxtQkFBbUI7d0JBQ2pDLFFBQVEsRUFBRSxxQkFBcUI7cUJBQ2hDO29CQUNELFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsc0JBQXNCOzRCQUMvQixnREFBZ0Q7NEJBQ2hELFdBQVcsOEJBQThCO3lCQUMxQztxQkFDRjtpQkFDRjtrSUFhVSxJQUFJO3NCQUFaLEtBQUs7Z0JBR0YsUUFBUTtzQkFEWCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQWtCbEMsRUFBRTtzQkFETCxLQUFLO2dCQVVGLFFBQVE7c0JBRFgsS0FBSztnQkFjRixJQUFJO3NCQURQLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBDb3B5cmlnaHQgTW9ua2V5IEV4Y2hhbmdlLiBBbGwgUmlnaHRzIFJlc2VydmVkXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cbiAqIE1JVCBMaWNlbmNlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERFRkFVTFRfQ1VSUkVOQ1lfQ09ERSxcbiAgRGVzdHJveVJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBMT0NBTEVfSUQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFJlbmRlcmVyMixcbiAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5nQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSWRHZW5lcmF0b3IgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5pbXBvcnQgeyBNb25rZXlGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnLi4vZm9ybS1maWVsZCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W21vbmtleS1pbnB1dC1jdXJyZW5jeV0nLFxuICBleHBvcnRBczogJ21vbmtleUlucHV0JyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnbWVjeC1pbnB1dCcsXG4gICAgJ1tjbGFzcy5tZWN4LWlucHV0LWRpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgJ1tpZF0nOiAnaWQnLFxuICAgICdbZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnW3JlcXVpcmVkXSc6ICdyZXF1aXJlZCcsXG4gICAgJ1thdHRyLm5hbWVdJzogJ25hbWUgfHwgbnVsbCcsXG4gICAgJ1thdHRyLmRpc2FibGVkXSc6ICdkaXNhYmxlZCB8fCBudWxsJyxcbiAgICAnW2F0dHIuYXJpYS1pbnZhbGlkXSc6ICcoZW1wdHkgJiYgcmVxdWlyZWQpID8gbnVsbCA6IGVycm9yU3RhdGUnLFxuICAgICdbYXR0ci5hcmlhLXJlcXVpcmVkXSc6ICdyZXF1aXJlZCcsXG4gICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgJyhmb2N1cyknOiAnZm9jdXNDaGFuZ2VkKHRydWUpJyxcbiAgICAnKGZvY3Vzb3V0KSc6ICdmb2N1c091dENoYW5nZWQoKScsXG4gICAgJyhibHVyKSc6ICdmb2N1c0NoYW5nZWQoZmFsc2UpJ1xuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBNb25rZXlGb3JtRmllbGRDb250cm9sLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVzZS1iZWZvcmUtZGVmaW5lXG4gICAgICB1c2VFeGlzdGluZzogTW9ua2V5SW5wdXRDdXJyZW5jeURpcmVjdGl2ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlJbnB1dEN1cnJlbmN5RGlyZWN0aXZlXG4gIGltcGxlbWVudHMgTW9ua2V5Rm9ybUZpZWxkQ29udHJvbCwgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveVxue1xuICBwcm90ZWN0ZWQgX2VsZW1lbnRSZWYgPVxuICAgIGluamVjdDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MU2VsZWN0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICBwcm90ZWN0ZWQgX3VpZCA9IGluamVjdChJZEdlbmVyYXRvcikuZ2V0SWQoJ21vbmtleS1pbnB1dC1jdXJyZW5jeS0nKTtcblxuICBwcm90ZWN0ZWQgX2lkITogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IHN0YXRlQ2hhbmdlczogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgQElucHV0KCkgbmFtZSE6IHN0cmluZztcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm5nQ29udHJvbCAmJiB0aGlzLm5nQ29udHJvbC5kaXNhYmxlZCAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMubmdDb250cm9sLmRpc2FibGVkO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xuXG4gICAgaWYgKHRoaXMuZm9jdXNlZCkge1xuICAgICAgdGhpcy5mb2N1c2VkID0gZmFsc2U7XG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgc2V0IGlkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZCA9IHZhbHVlIHx8IHRoaXMuX3VpZDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVxdWlyZWQgPz8gdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w/Lmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSA/PyBmYWxzZTtcbiAgfVxuXG4gIHNldCByZXF1aXJlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9yZXF1aXJlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBwcm90ZWN0ZWQgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZ2V0IHR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgfVxuXG4gIHNldCB0eXBlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl90eXBlID0gdmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3R5cGUgPSAndGV4dCc7XG5cbiAgZ2V0IGN1cnJlbmN5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgZ2V0IHBlcmNlbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2N1cnJlbmN5Q29kZSA9IGluamVjdChERUZBVUxUX0NVUlJFTkNZX0NPREUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2xvY2FsZUlkID0gaW5qZWN0KExPQ0FMRV9JRCk7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICBwcml2YXRlIF92YWx1ZUNoYW5nZXM6IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIF9yYXdWYWx1ZSA9IDA7XG5cbiAgbmdDb250cm9sID0gaW5qZWN0KE5nQ29udHJvbCwgeyBzZWxmOiB0cnVlLCBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBmb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBjdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZVxuICApIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1hc3NpZ25cbiAgICB0aGlzLmlkID0gdGhpcy5pZDtcbiAgfVxuXG4gIHByaXZhdGUgbWFya0FzVW50b3VjaGVkKCkge1xuICAgIHRoaXMubmdDb250cm9sPy5jb250cm9sPy5tYXJrQXNVbnRvdWNoZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cyhvcHRpb25zKTtcbiAgICB0aGlzLm1hcmtBc1VudG91Y2hlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRWYWx1ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVuY3lQaXBlLnRyYW5zZm9ybShcbiAgICAgIHZhbHVlLFxuICAgICAgdGhpcy5fY3VycmVuY3lDb2RlIHx8ICdCUkwnLFxuICAgICAgJycsXG4gICAgICAnMS4yLTInLFxuICAgICAgdGhpcy5fbG9jYWxlSWQgfHwgJ3B0LUJSJ1xuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUNvbnRyb2xWYWx1ZSgpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMubmdDb250cm9sPy5jb250cm9sPy52YWx1ZTtcbiAgICBpZiAodGhpcy5fcmF3VmFsdWUgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLl9yYXdWYWx1ZSA9IHZhbHVlO1xuICAgICAgbGV0IGhhbmRsZWQgPSB2YWx1ZTtcbiAgICAgIGNvbnN0IGRlY2ltYWwgPSBgJHt2YWx1ZX1gLnNwbGl0KCcuJylbMV07XG4gICAgICBpZiAoYCR7ZGVjaW1hbH1gLmxlbmd0aCA+PSAyKSB7XG4gICAgICAgIGhhbmRsZWQgPSBgJHt2YWx1ZX1gLnJlcGxhY2UoL1teMC05XS9nLCAnJyk7XG4gICAgICAgIGhhbmRsZWQgPSBgJHtOdW1iZXIoaGFuZGxlZCkgLyAxMDB9YDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w/LnNldFZhbHVlKE51bWJlcihoYW5kbGVkKSwgeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZFZhbHVlID0gdGhpcy5mb3JtYXRWYWx1ZShoYW5kbGVkKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCBmb3JtYXR0ZWRWYWx1ZSk7XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZUNvbnRyb2xWYWx1ZSgpO1xuICAgIHRoaXMuX3ZhbHVlQ2hhbmdlcz8udW5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuX3ZhbHVlQ2hhbmdlcyA9IHRoaXMubmdDb250cm9sPy5jb250cm9sPy52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZUNvbnRyb2xWYWx1ZSgpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3ZhbHVlQ2hhbmdlcz8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKHsgZGlzYWJsZWQgfTogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICghZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgICB9XG4gIH1cblxuICBvbkNvbnRhaW5lckNsaWNrKCkge1xuICAgIGlmICghdGhpcy5mb2N1c2VkKSB7XG4gICAgICB0aGlzLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgZm9jdXNDaGFuZ2VkKGlzRm9jdXNlZDogYm9vbGVhbikge1xuICAgIGlmIChpc0ZvY3VzZWQgPT09IHRoaXMuZm9jdXNlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpc0ZvY3VzZWQgJiYgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgZWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSgwLCAwKTtcbiAgICB9XG5cbiAgICB0aGlzLm1hcmtBc1VudG91Y2hlZCgpO1xuICAgIHRoaXMuZm9jdXNlZCA9IGlzRm9jdXNlZDtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBmb2N1c091dENoYW5nZWQoKSB7XG4gICAgdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w/Lm1hcmtBc1RvdWNoZWQoKTtcbiAgfVxufVxuIl19
@@ -1,185 +0,0 @@
1
- /** ************************
2
- * Copyright Monkey Exchange. All Rights Reserved
3
- * This style guide was developed by Monkey Exchange Team
4
- * MIT Licence
5
- ************************* */
6
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
7
- import { booleanAttribute, Directive, ElementRef, inject, Input } from '@angular/core';
8
- import { NgControl, Validators } from '@angular/forms';
9
- import { Subject } from 'rxjs';
10
- import { IdGenerator } from '../../../utils';
11
- import { MonkeyFormFieldControl } from '../form-field';
12
- import { validateType } from './validators';
13
- import * as i0 from "@angular/core";
14
- export class MonkeyInputDirective {
15
- get disabled() {
16
- if (this.ngControl && this.ngControl.disabled !== null) {
17
- return this.ngControl.disabled;
18
- }
19
- return this._disabled;
20
- }
21
- set disabled(value) {
22
- this._disabled = value;
23
- if (this.focused) {
24
- this.focused = false;
25
- this.stateChanges.next();
26
- }
27
- }
28
- get id() {
29
- return this._id;
30
- }
31
- set id(value) {
32
- this._id = value || this._uid;
33
- }
34
- get required() {
35
- return this._required ?? this.ngControl?.control?.hasValidator(Validators.required) ?? false;
36
- }
37
- set required(value) {
38
- this._required = coerceBooleanProperty(value);
39
- }
40
- get type() {
41
- return this._type;
42
- }
43
- set type(value) {
44
- validateType(value);
45
- this._type = value || 'text';
46
- this._elementRef.nativeElement.type = this._type;
47
- }
48
- get min() {
49
- return this._min;
50
- }
51
- set min(value) {
52
- this._min = value;
53
- if (this._type === 'date') {
54
- this._elementRef.nativeElement.min = this._min;
55
- }
56
- }
57
- get max() {
58
- return this._max;
59
- }
60
- set max(value) {
61
- this._max = value;
62
- if (this._type === 'date') {
63
- this._elementRef.nativeElement.max = this._max;
64
- }
65
- }
66
- get currency() {
67
- return false;
68
- }
69
- get percent() {
70
- return this._percent;
71
- }
72
- set percent(value) {
73
- this._percent = true;
74
- }
75
- constructor() {
76
- this._elementRef = inject(ElementRef);
77
- this._uid = inject(IdGenerator).getId('monkey-input-');
78
- this.stateChanges = new Subject();
79
- this._disabled = false;
80
- this._type = 'text';
81
- this._percent = false;
82
- this.ngControl = inject(NgControl, { self: true, optional: true });
83
- this.focused = false;
84
- // eslint-disable-next-line no-self-assign
85
- this.id = this.id;
86
- }
87
- markAsUntouched() {
88
- this.ngControl?.control?.markAsUntouched();
89
- }
90
- focus(options) {
91
- this._elementRef.nativeElement.focus(options);
92
- this.markAsUntouched();
93
- }
94
- ngOnDestroy() {
95
- this.stateChanges.complete();
96
- }
97
- ngOnChanges({ disabled }) {
98
- if (!disabled) {
99
- this.stateChanges.next();
100
- }
101
- }
102
- onContainerClick() {
103
- if (!this.focused) {
104
- this.focus();
105
- }
106
- }
107
- focusChanged(isFocused) {
108
- if (isFocused === this.focused) {
109
- return;
110
- }
111
- if (isFocused && this.disabled) {
112
- const element = this._elementRef.nativeElement;
113
- if (element.type === 'number') {
114
- element.type = 'text';
115
- element.setSelectionRange(0, 0);
116
- element.type = 'number';
117
- }
118
- else {
119
- element.setSelectionRange(0, 0);
120
- }
121
- }
122
- this.markAsUntouched();
123
- this.focused = isFocused;
124
- this.stateChanges.next();
125
- }
126
- focusOutChanged() {
127
- this.ngControl?.control?.markAsTouched();
128
- }
129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyInputDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
130
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.13", type: MonkeyInputDirective, selector: "input[monkey-input],textarea[monkey-input]", inputs: { name: "name", disabled: ["disabled", "disabled", booleanAttribute], id: "id", required: "required", type: "type", min: "min", max: "max", percent: "percent" }, host: { attributes: { "data-testid": "monkey-input" }, listeners: { "focus": "focusChanged(true)", "focusout": "focusOutChanged()", "blur": "focusChanged(false)" }, properties: { "class.mecx-input-disabled": "disabled", "id": "id", "disabled": "disabled", "required": "required", "attr.name": "name || null", "attr.disabled": "disabled || null", "attr.aria-invalid": "(empty && required) ? null : errorState", "attr.aria-required": "required", "attr.id": "id" }, classAttribute: "mecx-input" }, providers: [
131
- {
132
- provide: MonkeyFormFieldControl,
133
- // eslint-disable-next-line no-use-before-define
134
- useExisting: MonkeyInputDirective
135
- }
136
- ], exportAs: ["monkeyInput"], usesOnChanges: true, ngImport: i0 }); }
137
- }
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyInputDirective, decorators: [{
139
- type: Directive,
140
- args: [{
141
- selector: 'input[monkey-input],textarea[monkey-input]',
142
- exportAs: 'monkeyInput',
143
- host: {
144
- class: 'mecx-input',
145
- 'data-testid': 'monkey-input',
146
- '[class.mecx-input-disabled]': 'disabled',
147
- '[id]': 'id',
148
- '[disabled]': 'disabled',
149
- '[required]': 'required',
150
- '[attr.name]': 'name || null',
151
- '[attr.disabled]': 'disabled || null',
152
- '[attr.aria-invalid]': '(empty && required) ? null : errorState',
153
- '[attr.aria-required]': 'required',
154
- '[attr.id]': 'id',
155
- '(focus)': 'focusChanged(true)',
156
- '(focusout)': 'focusOutChanged()',
157
- '(blur)': 'focusChanged(false)'
158
- },
159
- providers: [
160
- {
161
- provide: MonkeyFormFieldControl,
162
- // eslint-disable-next-line no-use-before-define
163
- useExisting: MonkeyInputDirective
164
- }
165
- ]
166
- }]
167
- }], ctorParameters: () => [], propDecorators: { name: [{
168
- type: Input
169
- }], disabled: [{
170
- type: Input,
171
- args: [{ transform: booleanAttribute }]
172
- }], id: [{
173
- type: Input
174
- }], required: [{
175
- type: Input
176
- }], type: [{
177
- type: Input
178
- }], min: [{
179
- type: Input
180
- }], max: [{
181
- type: Input
182
- }], percent: [{
183
- type: Input
184
- }] } });
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBRTdCLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFJTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQTZCNUMsTUFBTSxPQUFPLG9CQUFvQjtJQVkvQixJQUNJLFFBQVE7UUFDVixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDdkQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztRQUNqQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBRXZCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JC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QkFBZ0IsRUFBRTtnQkFrQmxDLEVBQUU7c0JBREwsS0FBSztnQkFVRixRQUFRO3NCQURYLEtBQUs7Z0JBY0YsSUFBSTtzQkFEUCxLQUFLO2dCQWFGLEdBQUc7c0JBRE4sS0FBSztnQkFjRixHQUFHO3NCQUROLEtBQUs7Z0JBd0JGLE9BQU87c0JBRFYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKiAqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENvcHlyaWdodCBNb25rZXkgRXhjaGFuZ2UuIEFsbCBSaWdodHMgUmVzZXJ2ZWRcbiAqIFRoaXMgc3R5bGUgZ3VpZGUgd2FzIGRldmVsb3BlZCBieSBNb25rZXkgRXhjaGFuZ2UgVGVhbVxuICogTUlUIExpY2VuY2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqICovXG5cbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IE1vbmtleUZvcm1GaWVsZENvbnRyb2wgfSBmcm9tICcuLi9mb3JtLWZpZWxkJztcbmltcG9ydCB7IHZhbGlkYXRlVHlwZSB9IGZyb20gJy4vdmFsaWRhdG9ycyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W21vbmtleS1pbnB1dF0sdGV4dGFyZWFbbW9ua2V5LWlucHV0XScsXG4gIGV4cG9ydEFzOiAnbW9ua2V5SW5wdXQnLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdtZWN4LWlucHV0JyxcbiAgICAnZGF0YS10ZXN0aWQnOiAnbW9ua2V5LWlucHV0JyxcbiAgICAnW2NsYXNzLm1lY3gtaW5wdXQtZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnW2lkXSc6ICdpZCcsXG4gICAgJ1tkaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICdbcmVxdWlyZWRdJzogJ3JlcXVpcmVkJyxcbiAgICAnW2F0dHIubmFtZV0nOiAnbmFtZSB8fCBudWxsJyxcbiAgICAnW2F0dHIuZGlzYWJsZWRdJzogJ2Rpc2FibGVkIHx8IG51bGwnLFxuICAgICdbYXR0ci5hcmlhLWludmFsaWRdJzogJyhlbXB0eSAmJiByZXF1aXJlZCkgPyBudWxsIDogZXJyb3JTdGF0ZScsXG4gICAgJ1thdHRyLmFyaWEtcmVxdWlyZWRdJzogJ3JlcXVpcmVkJyxcbiAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAnKGZvY3VzKSc6ICdmb2N1c0NoYW5nZWQodHJ1ZSknLFxuICAgICcoZm9jdXNvdXQpJzogJ2ZvY3VzT3V0Q2hhbmdlZCgpJyxcbiAgICAnKGJsdXIpJzogJ2ZvY3VzQ2hhbmdlZChmYWxzZSknXG4gIH0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1vbmtleUZvcm1GaWVsZENvbnRyb2wsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdXNlLWJlZm9yZS1kZWZpbmVcbiAgICAgIHVzZUV4aXN0aW5nOiBNb25rZXlJbnB1dERpcmVjdGl2ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlJbnB1dERpcmVjdGl2ZSBpbXBsZW1lbnRzIE1vbmtleUZvcm1GaWVsZENvbnRyb2wsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJvdGVjdGVkIF9lbGVtZW50UmVmID1cbiAgICBpbmplY3Q8RWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFNlbGVjdEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50Pj4oRWxlbWVudFJlZik7XG5cbiAgcHJvdGVjdGVkIF91aWQgPSBpbmplY3QoSWRHZW5lcmF0b3IpLmdldElkKCdtb25rZXktaW5wdXQtJyk7XG5cbiAgcHJvdGVjdGVkIF9pZCE6IHN0cmluZztcblxuICByZWFkb25seSBzdGF0ZUNoYW5nZXM6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIEBJbnB1dCgpIG5hbWUhOiBzdHJpbmc7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5uZ0NvbnRyb2wgJiYgdGhpcy5uZ0NvbnRyb2wuZGlzYWJsZWQgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbC5kaXNhYmxlZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcblxuICAgIGlmICh0aGlzLmZvY3VzZWQpIHtcbiAgICAgIHRoaXMuZm9jdXNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9pZDtcbiAgfVxuXG4gIHNldCBpZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5faWQgPSB2YWx1ZSB8fCB0aGlzLl91aWQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkID8/IHRoaXMubmdDb250cm9sPy5jb250cm9sPy5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZCkgPz8gZmFsc2U7XG4gIH1cblxuICBzZXQgcmVxdWlyZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX3JlcXVpcmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfcmVxdWlyZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgcHJvdGVjdGVkIF9kaXNhYmxlZCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB0eXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBzZXQgdHlwZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdmFsaWRhdGVUeXBlKHZhbHVlKTtcbiAgICB0aGlzLl90eXBlID0gdmFsdWUgfHwgJ3RleHQnO1xuXG4gICAgKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50KS50eXBlID0gdGhpcy5fdHlwZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBtaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbWluO1xuICB9XG5cbiAgc2V0IG1pbih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbWluID0gdmFsdWU7XG5cbiAgICBpZiAodGhpcy5fdHlwZSA9PT0gJ2RhdGUnKSB7XG4gICAgICAodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQpLm1pbiA9IHRoaXMuX21pbjtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgbWF4KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX21heDtcbiAgfVxuXG4gIHNldCBtYXgodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX21heCA9IHZhbHVlO1xuXG4gICAgaWYgKHRoaXMuX3R5cGUgPT09ICdkYXRlJykge1xuICAgICAgKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50KS5tYXggPSB0aGlzLl9tYXg7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF90eXBlID0gJ3RleHQnO1xuXG4gIHByb3RlY3RlZCBfbWluITogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBfbWF4ITogc3RyaW5nO1xuXG4gIGdldCBjdXJyZW5jeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgcGVyY2VudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcGVyY2VudDtcbiAgfVxuXG4gIHNldCBwZXJjZW50KHZhbHVlOiAnJykge1xuICAgIHRoaXMuX3BlcmNlbnQgPSB0cnVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9wZXJjZW50ID0gZmFsc2U7XG5cbiAgbmdDb250cm9sID0gaW5qZWN0KE5nQ29udHJvbCwgeyBzZWxmOiB0cnVlLCBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBmb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtYXNzaWduXG4gICAgdGhpcy5pZCA9IHRoaXMuaWQ7XG4gIH1cblxuICBwcml2YXRlIG1hcmtBc1VudG91Y2hlZCgpIHtcbiAgICB0aGlzLm5nQ29udHJvbD8uY29udHJvbD8ubWFya0FzVW50b3VjaGVkKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMob3B0aW9ucyk7XG4gICAgdGhpcy5tYXJrQXNVbnRvdWNoZWQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLmNvbXBsZXRlKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyh7IGRpc2FibGVkIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIWRpc2FibGVkKSB7XG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gICAgfVxuICB9XG5cbiAgb25Db250YWluZXJDbGljaygpIHtcbiAgICBpZiAoIXRoaXMuZm9jdXNlZCkge1xuICAgICAgdGhpcy5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIGZvY3VzQ2hhbmdlZChpc0ZvY3VzZWQ6IGJvb2xlYW4pIHtcbiAgICBpZiAoaXNGb2N1c2VkID09PSB0aGlzLmZvY3VzZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNGb2N1c2VkICYmIHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudDtcblxuICAgICAgaWYgKGVsZW1lbnQudHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgZWxlbWVudC50eXBlID0gJ3RleHQnO1xuICAgICAgICBlbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKDAsIDApO1xuICAgICAgICBlbGVtZW50LnR5cGUgPSAnbnVtYmVyJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5tYXJrQXNVbnRvdWNoZWQoKTtcbiAgICB0aGlzLmZvY3VzZWQgPSBpc0ZvY3VzZWQ7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgZm9jdXNPdXRDaGFuZ2VkKCkge1xuICAgIHRoaXMubmdDb250cm9sPy5jb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XG4gIH1cbn1cbiJdfQ==