@agorapulse/ui-components 16.0.8 → 16.1.1-beta

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 (84) hide show
  1. package/agorapulse-ui-components-16.1.1-beta.tgz +0 -0
  2. package/badge/badge.component.d.ts +7 -0
  3. package/badge/index.d.ts +5 -0
  4. package/badge/public_api.d.ts +1 -0
  5. package/counter/counter.component.d.ts +17 -0
  6. package/counter/index.d.ts +5 -0
  7. package/counter/public_api.d.ts +1 -0
  8. package/esm2022/badge/agorapulse-ui-components-badge.mjs +5 -0
  9. package/esm2022/badge/badge.component.mjs +17 -0
  10. package/esm2022/badge/public_api.mjs +2 -0
  11. package/esm2022/checkbox/checkbox.component.mjs +3 -3
  12. package/esm2022/counter/agorapulse-ui-components-counter.mjs +5 -0
  13. package/esm2022/counter/counter.component.mjs +59 -0
  14. package/esm2022/counter/public_api.mjs +2 -0
  15. package/esm2022/index.mjs +9 -1
  16. package/esm2022/input/agorapulse-ui-components-input.mjs +5 -0
  17. package/esm2022/input/input.component.mjs +162 -0
  18. package/esm2022/input/public_api.mjs +2 -0
  19. package/esm2022/labels/label-list.component.mjs +4 -4
  20. package/esm2022/labels/label.component.mjs +18 -25
  21. package/esm2022/labels-selector/labels-selector.component.mjs +2 -2
  22. package/esm2022/select/agorapulse-ui-components-select.mjs +5 -0
  23. package/esm2022/select/public_api.mjs +2 -0
  24. package/esm2022/select/select.component.mjs +347 -0
  25. package/esm2022/status/agorapulse-ui-components-status.mjs +5 -0
  26. package/esm2022/status/public_api.mjs +2 -0
  27. package/esm2022/status/status.component.mjs +22 -0
  28. package/esm2022/status-card/agorapulse-ui-components-status-card.mjs +5 -0
  29. package/esm2022/status-card/public_api.mjs +2 -0
  30. package/esm2022/status-card/status-card.component.mjs +25 -0
  31. package/esm2022/tag/agorapulse-ui-components-tag.mjs +5 -0
  32. package/esm2022/tag/public_api.mjs +2 -0
  33. package/esm2022/tag/tag.component.mjs +33 -0
  34. package/esm2022/textarea/agorapulse-ui-components-textarea.mjs +5 -0
  35. package/esm2022/textarea/public_api.mjs +2 -0
  36. package/esm2022/textarea/textarea.component.mjs +152 -0
  37. package/fesm2022/agorapulse-ui-components-badge.mjs +24 -0
  38. package/fesm2022/agorapulse-ui-components-badge.mjs.map +1 -0
  39. package/fesm2022/agorapulse-ui-components-checkbox.mjs +2 -2
  40. package/fesm2022/agorapulse-ui-components-checkbox.mjs.map +1 -1
  41. package/fesm2022/agorapulse-ui-components-counter.mjs +66 -0
  42. package/fesm2022/agorapulse-ui-components-counter.mjs.map +1 -0
  43. package/fesm2022/agorapulse-ui-components-input.mjs +169 -0
  44. package/fesm2022/agorapulse-ui-components-input.mjs.map +1 -0
  45. package/fesm2022/agorapulse-ui-components-labels-selector.mjs +1 -1
  46. package/fesm2022/agorapulse-ui-components-labels-selector.mjs.map +1 -1
  47. package/fesm2022/agorapulse-ui-components-labels.mjs +22 -30
  48. package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -1
  49. package/fesm2022/agorapulse-ui-components-select.mjs +354 -0
  50. package/fesm2022/agorapulse-ui-components-select.mjs.map +1 -0
  51. package/fesm2022/agorapulse-ui-components-status-card.mjs +32 -0
  52. package/fesm2022/agorapulse-ui-components-status-card.mjs.map +1 -0
  53. package/fesm2022/agorapulse-ui-components-status.mjs +29 -0
  54. package/fesm2022/agorapulse-ui-components-status.mjs.map +1 -0
  55. package/fesm2022/agorapulse-ui-components-tag.mjs +40 -0
  56. package/fesm2022/agorapulse-ui-components-tag.mjs.map +1 -0
  57. package/fesm2022/agorapulse-ui-components-textarea.mjs +159 -0
  58. package/fesm2022/agorapulse-ui-components-textarea.mjs.map +1 -0
  59. package/fesm2022/agorapulse-ui-components.mjs +8 -0
  60. package/fesm2022/agorapulse-ui-components.mjs.map +1 -1
  61. package/index.d.ts +8 -0
  62. package/input/index.d.ts +5 -0
  63. package/input/input.component.d.ts +56 -0
  64. package/input/public_api.d.ts +1 -0
  65. package/labels/label-list.component.d.ts +3 -1
  66. package/labels/label.component.d.ts +11 -9
  67. package/package.json +70 -22
  68. package/select/index.d.ts +5 -0
  69. package/select/public_api.d.ts +1 -0
  70. package/select/select.component.d.ts +96 -0
  71. package/snackbars-thread/component/snackbars-thread.component.d.ts +1 -1
  72. package/status/index.d.ts +5 -0
  73. package/status/public_api.d.ts +1 -0
  74. package/status/status.component.d.ts +9 -0
  75. package/status-card/index.d.ts +5 -0
  76. package/status-card/public_api.d.ts +1 -0
  77. package/status-card/status-card.component.d.ts +13 -0
  78. package/tag/index.d.ts +5 -0
  79. package/tag/public_api.d.ts +1 -0
  80. package/tag/tag.component.d.ts +17 -0
  81. package/textarea/index.d.ts +5 -0
  82. package/textarea/public_api.d.ts +1 -0
  83. package/textarea/textarea.component.d.ts +50 -0
  84. package/agorapulse-ui-components-16.0.8.tgz +0 -0
@@ -0,0 +1,32 @@
1
+ import { AvatarComponent } from '@agorapulse/ui-components/avatar';
2
+ import { NgIf, NgFor } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, HostBinding, Input } from '@angular/core';
5
+
6
+ class StatusCardComponent {
7
+ color = 'blue';
8
+ linkText;
9
+ linkUrl;
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: StatusCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: StatusCardComponent, isStandalone: true, selector: "ap-status-card", inputs: { color: "color", linkText: "linkText", linkUrl: "linkUrl" }, host: { properties: { "class": "this.color" } }, ngImport: i0, template: "<div class=\"upper\">\n <ng-content select=\"ap-symbol\"></ng-content>\n <ng-content select=\".flow\"></ng-content>\n <ng-container *ngIf=\"linkText && linkUrl\">\n <a\n rel=\"noopener noreferrer\"\n target=\"__blank\"\n class=\"standalone\"\n [href]=\"linkUrl\">\n {{ linkText }}\n </a>\n </ng-container>\n</div>\n<ng-content select=\"p\"></ng-content>\n", styles: ["ap-status-card{--comp-icon-size: 16px;--comp-avatar-size: 16px;--comp-border-size: 1px;container:infobox/inline-size;display:flex;flex-direction:column;box-sizing:border-box;width:100%;min-width:100%;border-bottom-style:solid;border-bottom-width:var(--comp-border-size);padding:var(--comp-status-card-padding-horizontal) var(--comp-status-card-padding-vertical) calc(var(--comp-status-card-padding-horizontal) - var(--comp-border-size)) var(--comp-status-card-padding-vertical);gap:var(--comp-status-card-spacing-vertical)}ap-status-card ap-symbol{height:var(--comp-icon-size);min-height:var(--comp-icon-size);max-height:var(--comp-icon-size);width:var(--comp-icon-size);min-width:var(--comp-icon-size);max-width:var(--comp-icon-size)}ap-status-card.blue{background-color:var(--comp-status-card-blue-background-color);border-color:var(--comp-status-card-blue-border-color)}ap-status-card.blue ap-symbol{color:var(--comp-status-card-blue-icon-color)}ap-status-card.tagOrange{background-color:var(--comp-status-card-tag-orange-background-color);border-color:var(--comp-status-card-tag-orange-border-color)}ap-status-card.tagOrange ap-symbol{color:var(--comp-status-card-tag-orange-icon-color)}ap-status-card.green{background-color:var(--comp-status-card-green-background-color);border-color:var(--comp-status-card-green-border-color)}ap-status-card.green ap-symbol{color:var(--comp-status-card-green-icon-color)}ap-status-card.orange{background-color:var(--comp-status-card-orange-background-color);border-color:var(--comp-status-card-orange-border-color)}ap-status-card.orange ap-symbol{color:var(--comp-status-card-orange-icon-color)}ap-status-card.grey{background-color:var(--comp-status-card-grey-background-color);border-color:var(--comp-status-card-grey-border-color)}ap-status-card.grey ap-symbol{color:var(--comp-status-card-grey-icon-color)}ap-status-card.red{background-color:var(--comp-status-card-red-background-color);border-color:var(--comp-status-card-red-border-color)}ap-status-card.red ap-symbol{color:var(--comp-status-card-red-icon-color)}ap-status-card .upper{display:flex;align-items:center;justify-content:space-between;gap:var(--comp-status-card-spacing-horizontal);height:var(--comp-status-card-text-style-line-height)}ap-status-card .flow{display:flex;align-items:center;gap:var(--comp-status-card-content-spacing);flex:1;color:var(--comp-status-card-text-color);font-family:var(--comp-status-card-text-style-font-family);font-size:var(--comp-status-card-text-style-size);font-weight:var(--comp-status-card-text-style-font-weight);line-height:var(--comp-status-card-text-style-line-height)}ap-status-card .flow ap-avatar{height:var(--comp-avatar-size);min-height:var(--comp-avatar-size);max-height:var(--comp-avatar-size);width:var(--comp-avatar-size);min-width:var(--comp-avatar-size);max-width:var(--comp-avatar-size)}ap-status-card .flow ap-avatar img{height:var(--comp-avatar-size);min-height:var(--comp-avatar-size);max-height:var(--comp-avatar-size);width:var(--comp-avatar-size);min-width:var(--comp-avatar-size);max-width:var(--comp-avatar-size)}ap-status-card .flow span{font-family:var(--comp-status-card-user-text-style-font-family);font-size:var(--comp-status-card-user-text-style-size);font-weight:var(--comp-status-card-user-text-style-font-weight);line-height:var(--comp-status-card-user-text-style-line-height)}ap-status-card p{margin:0;color:var(--comp-status-card-text-color);font-family:var(--comp-status-card-text-style-font-family);font-size:var(--comp-status-text-style-size);font-weight:var(--comp-status-card-text-style-font-weight);font-style:italic}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: StatusCardComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-status-card', standalone: true, imports: [NgIf, NgFor, AvatarComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"upper\">\n <ng-content select=\"ap-symbol\"></ng-content>\n <ng-content select=\".flow\"></ng-content>\n <ng-container *ngIf=\"linkText && linkUrl\">\n <a\n rel=\"noopener noreferrer\"\n target=\"__blank\"\n class=\"standalone\"\n [href]=\"linkUrl\">\n {{ linkText }}\n </a>\n </ng-container>\n</div>\n<ng-content select=\"p\"></ng-content>\n", styles: ["ap-status-card{--comp-icon-size: 16px;--comp-avatar-size: 16px;--comp-border-size: 1px;container:infobox/inline-size;display:flex;flex-direction:column;box-sizing:border-box;width:100%;min-width:100%;border-bottom-style:solid;border-bottom-width:var(--comp-border-size);padding:var(--comp-status-card-padding-horizontal) var(--comp-status-card-padding-vertical) calc(var(--comp-status-card-padding-horizontal) - var(--comp-border-size)) var(--comp-status-card-padding-vertical);gap:var(--comp-status-card-spacing-vertical)}ap-status-card ap-symbol{height:var(--comp-icon-size);min-height:var(--comp-icon-size);max-height:var(--comp-icon-size);width:var(--comp-icon-size);min-width:var(--comp-icon-size);max-width:var(--comp-icon-size)}ap-status-card.blue{background-color:var(--comp-status-card-blue-background-color);border-color:var(--comp-status-card-blue-border-color)}ap-status-card.blue ap-symbol{color:var(--comp-status-card-blue-icon-color)}ap-status-card.tagOrange{background-color:var(--comp-status-card-tag-orange-background-color);border-color:var(--comp-status-card-tag-orange-border-color)}ap-status-card.tagOrange ap-symbol{color:var(--comp-status-card-tag-orange-icon-color)}ap-status-card.green{background-color:var(--comp-status-card-green-background-color);border-color:var(--comp-status-card-green-border-color)}ap-status-card.green ap-symbol{color:var(--comp-status-card-green-icon-color)}ap-status-card.orange{background-color:var(--comp-status-card-orange-background-color);border-color:var(--comp-status-card-orange-border-color)}ap-status-card.orange ap-symbol{color:var(--comp-status-card-orange-icon-color)}ap-status-card.grey{background-color:var(--comp-status-card-grey-background-color);border-color:var(--comp-status-card-grey-border-color)}ap-status-card.grey ap-symbol{color:var(--comp-status-card-grey-icon-color)}ap-status-card.red{background-color:var(--comp-status-card-red-background-color);border-color:var(--comp-status-card-red-border-color)}ap-status-card.red ap-symbol{color:var(--comp-status-card-red-icon-color)}ap-status-card .upper{display:flex;align-items:center;justify-content:space-between;gap:var(--comp-status-card-spacing-horizontal);height:var(--comp-status-card-text-style-line-height)}ap-status-card .flow{display:flex;align-items:center;gap:var(--comp-status-card-content-spacing);flex:1;color:var(--comp-status-card-text-color);font-family:var(--comp-status-card-text-style-font-family);font-size:var(--comp-status-card-text-style-size);font-weight:var(--comp-status-card-text-style-font-weight);line-height:var(--comp-status-card-text-style-line-height)}ap-status-card .flow ap-avatar{height:var(--comp-avatar-size);min-height:var(--comp-avatar-size);max-height:var(--comp-avatar-size);width:var(--comp-avatar-size);min-width:var(--comp-avatar-size);max-width:var(--comp-avatar-size)}ap-status-card .flow ap-avatar img{height:var(--comp-avatar-size);min-height:var(--comp-avatar-size);max-height:var(--comp-avatar-size);width:var(--comp-avatar-size);min-width:var(--comp-avatar-size);max-width:var(--comp-avatar-size)}ap-status-card .flow span{font-family:var(--comp-status-card-user-text-style-font-family);font-size:var(--comp-status-card-user-text-style-size);font-weight:var(--comp-status-card-user-text-style-font-weight);line-height:var(--comp-status-card-user-text-style-line-height)}ap-status-card p{margin:0;color:var(--comp-status-card-text-color);font-family:var(--comp-status-card-text-style-font-family);font-size:var(--comp-status-text-style-size);font-weight:var(--comp-status-card-text-style-font-weight);font-style:italic}\n"] }]
16
+ }], propDecorators: { color: [{
17
+ type: HostBinding,
18
+ args: ['class']
19
+ }, {
20
+ type: Input
21
+ }], linkText: [{
22
+ type: Input
23
+ }], linkUrl: [{
24
+ type: Input
25
+ }] } });
26
+
27
+ /**
28
+ * Generated bundle index. Do not edit.
29
+ */
30
+
31
+ export { StatusCardComponent };
32
+ //# sourceMappingURL=agorapulse-ui-components-status-card.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agorapulse-ui-components-status-card.mjs","sources":["../../../libs/ui-components/status-card/src/status-card.component.ts","../../../libs/ui-components/status-card/src/status-card.component.html","../../../libs/ui-components/status-card/src/agorapulse-ui-components-status-card.ts"],"sourcesContent":["import { AvatarComponent } from '@agorapulse/ui-components/avatar';\nimport { NgFor, NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\n\nexport type StatusCardColor = 'green' | 'red' | 'tagOrange' | 'grey' | 'blue' | 'orange';\nexport type StatusCardActor = {\n imageUrl: string;\n name: string;\n};\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-status-card',\n standalone: true,\n templateUrl: './status-card.component.html',\n imports: [NgIf, NgFor, AvatarComponent],\n styleUrls: ['./status-card.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class StatusCardComponent {\n @HostBinding('class')\n @Input()\n color: StatusCardColor = 'blue';\n\n @Input() linkText?: string;\n @Input() linkUrl?: string;\n}\n","<div class=\"upper\">\n <ng-content select=\"ap-symbol\"></ng-content>\n <ng-content select=\".flow\"></ng-content>\n <ng-container *ngIf=\"linkText && linkUrl\">\n <a\n rel=\"noopener noreferrer\"\n target=\"__blank\"\n class=\"standalone\"\n [href]=\"linkUrl\">\n {{ linkText }}\n </a>\n </ng-container>\n</div>\n<ng-content select=\"p\"></ng-content>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;MAmBa,mBAAmB,CAAA;IAG5B,KAAK,GAAoB,MAAM,CAAC;AAEvB,IAAA,QAAQ,CAAU;AAClB,IAAA,OAAO,CAAU;wGANjB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4FAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECnBhC,sbAcA,EAAA,MAAA,EAAA,CAAA,mhHAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDCc,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAIL,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAT/B,SAAS;AACW,YAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EACrC,gBAAgB,EAAA,UAAA,EACd,IAAI,EAEP,OAAA,EAAA,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,EAExB,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,sbAAA,EAAA,MAAA,EAAA,CAAA,mhHAAA,CAAA,EAAA,CAAA;8BAKrC,KAAK,EAAA,CAAA;sBAFJ,WAAW;uBAAC,OAAO,CAAA;;sBACnB,KAAK;gBAGG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;;;AEzBV;;AAEG;;;;"}
@@ -0,0 +1,29 @@
1
+ import { NgIf } from '@angular/common';
2
+ import * as i0 from '@angular/core';
3
+ import { booleanAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, HostBinding, Input } from '@angular/core';
4
+
5
+ class StatusComponent {
6
+ color = 'blue';
7
+ dot = true;
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: StatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.10", type: StatusComponent, isStandalone: true, selector: "ap-status", inputs: { color: "color", dot: ["dot", "dot", booleanAttribute] }, host: { properties: { "class": "this.color" } }, ngImport: i0, template: "<div\n *ngIf=\"dot\"\n class=\"dot\"></div>\n<ng-content></ng-content>\n", styles: ["ap-status{--dot-size: 8px;display:flex;align-items:center;justify-content:center;padding:0 var(--comp-status-padding-horizontal);gap:var(--comp-status-spacing);width:-moz-fit-content;width:fit-content;height:var(--comp-status-height);border-radius:var(--comp-status-height);color:var(--comp-status-color)}ap-status .dot{display:flex;width:var(--dot-size);min-width:var(--dot-size);max-width:var(--dot-size);height:var(--dot-size);min-height:var(--dot-size);max-height:var(--dot-size);border-radius:100%}ap-status.blue{background-color:var(--comp-status-blue-background-color)}ap-status.blue .dot{background-color:var(--comp-status-blue-dot-background-color)}ap-status.green{background-color:var(--comp-status-green-background-color)}ap-status.green .dot{background-color:var(--comp-status-green-dot-background-color)}ap-status.orange{background-color:var(--comp-status-orange-background-color)}ap-status.orange .dot{background-color:var(--comp-status-orange-dot-background-color)}ap-status.tagOrange{background-color:var(--comp-status-tag-orange-background-color)}ap-status.tagOrange .dot{background-color:var(--comp-status-tag-orange-dot-background-color)}ap-status.grey{background-color:var(--comp-status-grey-background-color)}ap-status.grey .dot{background-color:var(--comp-status-grey-dot-background-color)}ap-status.red{background-color:var(--comp-status-red-background-color)}ap-status.red .dot{background-color:var(--comp-status-red-dot-background-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: StatusComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-status', standalone: true, imports: [NgIf], encapsulation: ViewEncapsulation.None, template: "<div\n *ngIf=\"dot\"\n class=\"dot\"></div>\n<ng-content></ng-content>\n", styles: ["ap-status{--dot-size: 8px;display:flex;align-items:center;justify-content:center;padding:0 var(--comp-status-padding-horizontal);gap:var(--comp-status-spacing);width:-moz-fit-content;width:fit-content;height:var(--comp-status-height);border-radius:var(--comp-status-height);color:var(--comp-status-color)}ap-status .dot{display:flex;width:var(--dot-size);min-width:var(--dot-size);max-width:var(--dot-size);height:var(--dot-size);min-height:var(--dot-size);max-height:var(--dot-size);border-radius:100%}ap-status.blue{background-color:var(--comp-status-blue-background-color)}ap-status.blue .dot{background-color:var(--comp-status-blue-dot-background-color)}ap-status.green{background-color:var(--comp-status-green-background-color)}ap-status.green .dot{background-color:var(--comp-status-green-dot-background-color)}ap-status.orange{background-color:var(--comp-status-orange-background-color)}ap-status.orange .dot{background-color:var(--comp-status-orange-dot-background-color)}ap-status.tagOrange{background-color:var(--comp-status-tag-orange-background-color)}ap-status.tagOrange .dot{background-color:var(--comp-status-tag-orange-dot-background-color)}ap-status.grey{background-color:var(--comp-status-grey-background-color)}ap-status.grey .dot{background-color:var(--comp-status-grey-dot-background-color)}ap-status.red{background-color:var(--comp-status-red-background-color)}ap-status.red .dot{background-color:var(--comp-status-red-dot-background-color)}\n"] }]
14
+ }], propDecorators: { color: [{
15
+ type: HostBinding,
16
+ args: ['class']
17
+ }, {
18
+ type: Input
19
+ }], dot: [{
20
+ type: Input,
21
+ args: [{ transform: booleanAttribute }]
22
+ }] } });
23
+
24
+ /**
25
+ * Generated bundle index. Do not edit.
26
+ */
27
+
28
+ export { StatusComponent };
29
+ //# sourceMappingURL=agorapulse-ui-components-status.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agorapulse-ui-components-status.mjs","sources":["../../../libs/ui-components/status/src/status.component.ts","../../../libs/ui-components/status/src/status.component.html","../../../libs/ui-components/status/src/agorapulse-ui-components-status.ts"],"sourcesContent":["import { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation, booleanAttribute } from '@angular/core';\n\nexport type StatusColor = 'blue' | 'orange' | 'grey' | 'tagOrange' | 'red' | 'green';\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-status',\n standalone: true,\n templateUrl: './status.component.html',\n imports: [NgIf],\n styleUrls: ['./status.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class StatusComponent {\n @HostBinding('class')\n @Input()\n color: StatusColor = 'blue';\n\n @Input({ transform: booleanAttribute }) dot: boolean = true;\n}\n","<div\n *ngIf=\"dot\"\n class=\"dot\"></div>\n<ng-content></ng-content>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;MAaa,eAAe,CAAA;IAGxB,KAAK,GAAgB,MAAM,CAAC;IAEY,GAAG,GAAY,IAAI,CAAC;wGALnD,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,EAKJ,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,gBAAgB,CClBxC,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,gFAIA,m/CDKc,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAIL,eAAe,EAAA,UAAA,EAAA,CAAA;kBAT3B,SAAS;AACW,YAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACrC,QAAA,EAAA,WAAW,EACT,UAAA,EAAA,IAAI,EAEP,OAAA,EAAA,CAAC,IAAI,CAAC,EAEA,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,gFAAA,EAAA,MAAA,EAAA,CAAA,27CAAA,CAAA,EAAA,CAAA;8BAKrC,KAAK,EAAA,CAAA;sBAFJ,WAAW;uBAAC,OAAO,CAAA;;sBACnB,KAAK;gBAGkC,GAAG,EAAA,CAAA;sBAA1C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA;;;AElB1C;;AAEG;;;;"}
@@ -0,0 +1,40 @@
1
+ import { SymbolRegistry, apClose, SymbolComponent } from '@agorapulse/ui-symbol';
2
+ import { NgIf } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { inject, ElementRef, EventEmitter, booleanAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output } from '@angular/core';
5
+
6
+ class TagComponent {
7
+ elementRef = inject(ElementRef);
8
+ symbolRegistry = inject(SymbolRegistry);
9
+ constructor() {
10
+ this.symbolRegistry.registerSymbols([apClose]);
11
+ }
12
+ clearable = false;
13
+ color = 'blue';
14
+ clear = new EventEmitter();
15
+ onClear($event) {
16
+ $event.stopImmediatePropagation();
17
+ this.elementRef.nativeElement.remove();
18
+ this.clear.emit({ $event });
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.10", type: TagComponent, isStandalone: true, selector: "ap-tag", inputs: { clearable: ["clearable", "clearable", booleanAttribute], color: "color" }, outputs: { clear: "clear" }, ngImport: i0, template: "<div\n [class.blue]=\"color === 'blue'\"\n [class.menthol]=\"color === 'menthol'\"\n [class.grey]=\"color === 'grey'\"\n [class.tagOrange]=\"color === 'tagOrange'\"\n [class.green]=\"color === 'green'\"\n [class.red]=\"color === 'red'\"\n [class.clearable]=\"clearable\">\n <ng-content select=\"ap-symbol\"></ng-content>\n <ng-content select=\"ap-avatar\"></ng-content>\n\n <span>\n <ng-content></ng-content>\n </span>\n <ng-container *ngIf=\"clearable\">\n <button\n *ngIf=\"clearable\"\n type=\"button\"\n class=\"delete-button\"\n (click)=\"onClear($event)\">\n <ap-symbol\n symbolId=\"delete-no-circle\"\n size=\"micro\" />\n </button>\n </ng-container>\n</div>\n", styles: ["ap-tag{--avatar-size: 16px;--button-size: 20px;display:inline-flex;vertical-align:middle}ap-tag>div{display:flex;align-items:center;justify-content:center;height:var(--comp-tag-height);max-height:var(--height);box-sizing:border-box;border-width:1px;border-style:solid;padding:0 var(--comp-tag-padding-right) 0 var(--comp-tag-padding-left);border-radius:var(--comp-tag-border-radius);gap:var(--ref-spacing-xxxs)}ap-tag>div.clearable{padding:0 calc(var(--comp-tag-closable-padding-right) - 1px) 0 var(--comp-tag-padding-left)}ap-tag>div ap-symbol{width:16px;height:16px}ap-tag>div span{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--comp-tag-text-style-size);line-height:var(--comp-tag-text-style-line-height);font-weight:var(--comp-tag-text-style-font-weight);font-family:var(--comp-tag-text-style-font-family)}ap-tag>div ap-avatar{min-width:var(--avatar-size);width:var(--avatar-size);max-width:var(--avatar-size);min-height:var(--avatar-size);height:var(--avatar-size);max-height:var(--avatar-size)}ap-tag>div ap-avatar img{width:var(--avatar-size);height:var(--avatar-size)}ap-tag>div button{display:flex;align-items:center;justify-content:center;border:none;background:transparent;align-self:center;cursor:pointer;max-width:var(--button-size);width:var(--button-size);height:var(--button-size);border-radius:var(--ref-spacing-xxxs)}ap-tag>div button ap-symbol{color:var(--ref-color-grey-80);width:16px;height:16px}ap-tag>div button:hover{background-color:#3445631a}ap-tag>div button:hover ap-symbol{color:var(--ref-color-grey-100)}ap-tag>div button:focus{box-shadow:0 0 0 1px var(--ref-color-white),0 0 0 3px var(--ref-color-electric-blue-100)}ap-tag>div button:active{background-color:#34456333}ap-tag>div button:active ap-symbol{color:var(--ref-color-grey-100)}ap-tag>div.blue{background-color:var(--comp-tag-blue-background-color);border-color:var(--comp-tag-blue-border-color);color:var(--comp-tag-blue-text-color)}ap-tag>div.grey{background-color:var(--comp-tag-grey-background-color);border-color:var(--comp-tag-grey-border-color);color:var(--comp-tag-grey-text-color)}ap-tag>div.tagOrange{background-color:var(--comp-tag-tag-orange-background-color);border-color:var(--comp-tag-tag-orange-border-color);color:var(--comp-tag-tag-orange-text-color)}ap-tag>div.menthol{background-color:var(--comp-tag-menthol-background-color);border-color:var(--comp-tag-menthol-border-color);color:var(--comp-tag-menthol-text-color)}ap-tag>div.green{background-color:var(--comp-tag-green-background-color);border-color:var(--comp-tag-green-border-color);color:var(--comp-tag-green-text-color)}ap-tag>div.red{background-color:var(--comp-tag-red-background-color);border-color:var(--comp-tag-red-border-color);color:var(--comp-tag-red-text-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TagComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-tag', standalone: true, imports: [NgIf, SymbolComponent], encapsulation: ViewEncapsulation.None, template: "<div\n [class.blue]=\"color === 'blue'\"\n [class.menthol]=\"color === 'menthol'\"\n [class.grey]=\"color === 'grey'\"\n [class.tagOrange]=\"color === 'tagOrange'\"\n [class.green]=\"color === 'green'\"\n [class.red]=\"color === 'red'\"\n [class.clearable]=\"clearable\">\n <ng-content select=\"ap-symbol\"></ng-content>\n <ng-content select=\"ap-avatar\"></ng-content>\n\n <span>\n <ng-content></ng-content>\n </span>\n <ng-container *ngIf=\"clearable\">\n <button\n *ngIf=\"clearable\"\n type=\"button\"\n class=\"delete-button\"\n (click)=\"onClear($event)\">\n <ap-symbol\n symbolId=\"delete-no-circle\"\n size=\"micro\" />\n </button>\n </ng-container>\n</div>\n", styles: ["ap-tag{--avatar-size: 16px;--button-size: 20px;display:inline-flex;vertical-align:middle}ap-tag>div{display:flex;align-items:center;justify-content:center;height:var(--comp-tag-height);max-height:var(--height);box-sizing:border-box;border-width:1px;border-style:solid;padding:0 var(--comp-tag-padding-right) 0 var(--comp-tag-padding-left);border-radius:var(--comp-tag-border-radius);gap:var(--ref-spacing-xxxs)}ap-tag>div.clearable{padding:0 calc(var(--comp-tag-closable-padding-right) - 1px) 0 var(--comp-tag-padding-left)}ap-tag>div ap-symbol{width:16px;height:16px}ap-tag>div span{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--comp-tag-text-style-size);line-height:var(--comp-tag-text-style-line-height);font-weight:var(--comp-tag-text-style-font-weight);font-family:var(--comp-tag-text-style-font-family)}ap-tag>div ap-avatar{min-width:var(--avatar-size);width:var(--avatar-size);max-width:var(--avatar-size);min-height:var(--avatar-size);height:var(--avatar-size);max-height:var(--avatar-size)}ap-tag>div ap-avatar img{width:var(--avatar-size);height:var(--avatar-size)}ap-tag>div button{display:flex;align-items:center;justify-content:center;border:none;background:transparent;align-self:center;cursor:pointer;max-width:var(--button-size);width:var(--button-size);height:var(--button-size);border-radius:var(--ref-spacing-xxxs)}ap-tag>div button ap-symbol{color:var(--ref-color-grey-80);width:16px;height:16px}ap-tag>div button:hover{background-color:#3445631a}ap-tag>div button:hover ap-symbol{color:var(--ref-color-grey-100)}ap-tag>div button:focus{box-shadow:0 0 0 1px var(--ref-color-white),0 0 0 3px var(--ref-color-electric-blue-100)}ap-tag>div button:active{background-color:#34456333}ap-tag>div button:active ap-symbol{color:var(--ref-color-grey-100)}ap-tag>div.blue{background-color:var(--comp-tag-blue-background-color);border-color:var(--comp-tag-blue-border-color);color:var(--comp-tag-blue-text-color)}ap-tag>div.grey{background-color:var(--comp-tag-grey-background-color);border-color:var(--comp-tag-grey-border-color);color:var(--comp-tag-grey-text-color)}ap-tag>div.tagOrange{background-color:var(--comp-tag-tag-orange-background-color);border-color:var(--comp-tag-tag-orange-border-color);color:var(--comp-tag-tag-orange-text-color)}ap-tag>div.menthol{background-color:var(--comp-tag-menthol-background-color);border-color:var(--comp-tag-menthol-border-color);color:var(--comp-tag-menthol-text-color)}ap-tag>div.green{background-color:var(--comp-tag-green-background-color);border-color:var(--comp-tag-green-border-color);color:var(--comp-tag-green-text-color)}ap-tag>div.red{background-color:var(--comp-tag-red-background-color);border-color:var(--comp-tag-red-border-color);color:var(--comp-tag-red-text-color)}\n"] }]
26
+ }], ctorParameters: function () { return []; }, propDecorators: { clearable: [{
27
+ type: Input,
28
+ args: [{ transform: booleanAttribute }]
29
+ }], color: [{
30
+ type: Input
31
+ }], clear: [{
32
+ type: Output
33
+ }] } });
34
+
35
+ /**
36
+ * Generated bundle index. Do not edit.
37
+ */
38
+
39
+ export { TagComponent };
40
+ //# sourceMappingURL=agorapulse-ui-components-tag.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agorapulse-ui-components-tag.mjs","sources":["../../../libs/ui-components/tag/src/tag.component.ts","../../../libs/ui-components/tag/src/tag.component.html","../../../libs/ui-components/tag/src/agorapulse-ui-components-tag.ts"],"sourcesContent":["import { SymbolComponent, SymbolRegistry, apClose } from '@agorapulse/ui-symbol';\nimport { NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n} from '@angular/core';\n\nexport type TagColor = 'blue' | 'grey' | 'menthol' | 'tagOrange' | 'red' | 'green';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-tag',\n standalone: true,\n templateUrl: './tag.component.html',\n imports: [NgIf, SymbolComponent],\n styleUrls: ['./tag.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class TagComponent {\n private readonly elementRef: ElementRef = inject(ElementRef);\n private readonly symbolRegistry: SymbolRegistry = inject(SymbolRegistry);\n\n constructor() {\n this.symbolRegistry.registerSymbols([apClose]);\n }\n\n @Input({ transform: booleanAttribute }) clearable: boolean = false;\n @Input() color: TagColor = 'blue';\n\n @Output() clear = new EventEmitter<{ $event: MouseEvent | PointerEvent }>();\n\n onClear($event: MouseEvent | PointerEvent): void {\n $event.stopImmediatePropagation();\n this.elementRef.nativeElement.remove();\n this.clear.emit({ $event });\n }\n}\n","<div\n [class.blue]=\"color === 'blue'\"\n [class.menthol]=\"color === 'menthol'\"\n [class.grey]=\"color === 'grey'\"\n [class.tagOrange]=\"color === 'tagOrange'\"\n [class.green]=\"color === 'green'\"\n [class.red]=\"color === 'red'\"\n [class.clearable]=\"clearable\">\n <ng-content select=\"ap-symbol\"></ng-content>\n <ng-content select=\"ap-avatar\"></ng-content>\n\n <span>\n <ng-content></ng-content>\n </span>\n <ng-container *ngIf=\"clearable\">\n <button\n *ngIf=\"clearable\"\n type=\"button\"\n class=\"delete-button\"\n (click)=\"onClear($event)\">\n <ap-symbol\n symbolId=\"delete-no-circle\"\n size=\"micro\" />\n </button>\n </ng-container>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;MAyBa,YAAY,CAAA;AACJ,IAAA,UAAU,GAAe,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5C,IAAA,cAAc,GAAmB,MAAM,CAAC,cAAc,CAAC,CAAC;AAEzE,IAAA,WAAA,GAAA;QACI,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;KAClD;IAEuC,SAAS,GAAY,KAAK,CAAC;IAC1D,KAAK,GAAa,MAAM,CAAC;AAExB,IAAA,KAAK,GAAG,IAAI,YAAY,EAAyC,CAAC;AAE5E,IAAA,OAAO,CAAC,MAAiC,EAAA;QACrC,MAAM,CAAC,wBAAwB,EAAE,CAAC;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;KAC/B;wGAjBQ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,YAAY,0FAQD,gBAAgB,CAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjCxC,8yBA0BA,EDLc,MAAA,EAAA,CAAA,guFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAI,6FAAE,eAAe,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAItB,YAAY,EAAA,UAAA,EAAA,CAAA;kBATxB,SAAS;AACW,YAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACrC,QAAA,EAAA,QAAQ,cACN,IAAI,EAAA,OAAA,EAEP,CAAC,IAAI,EAAE,eAAe,CAAC,EAEjB,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,8yBAAA,EAAA,MAAA,EAAA,CAAA,guFAAA,CAAA,EAAA,CAAA;0EAUG,SAAS,EAAA,CAAA;sBAAhD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA;gBAC7B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEI,KAAK,EAAA,CAAA;sBAAd,MAAM;;;AEpCX;;AAEG;;;;"}
@@ -0,0 +1,159 @@
1
+ import { SymbolRegistry, apAlertCircle, apCheckCircle, SymbolComponent } from '@agorapulse/ui-symbol';
2
+ import { NgIf } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { forwardRef, inject, ElementRef, signal, booleanAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, Input } from '@angular/core';
5
+ import * as i1 from '@angular/forms';
6
+ import { NG_VALUE_ACCESSOR, NG_VALIDATORS, ReactiveFormsModule, FormsModule } from '@angular/forms';
7
+
8
+ const AP_TEXTAREA_CONTROL_VALUE_ACCESSOR = {
9
+ provide: NG_VALUE_ACCESSOR,
10
+ useExisting: forwardRef(() => TextareaComponent),
11
+ multi: true,
12
+ };
13
+ class TextareaComponent {
14
+ elementRef = inject(ElementRef);
15
+ symbolRegistry = inject(SymbolRegistry);
16
+ symbols;
17
+ ariaLabel;
18
+ ariaLabelledBy;
19
+ ariaDescribedBy;
20
+ disabled = false;
21
+ textareaId;
22
+ name;
23
+ label;
24
+ description;
25
+ rows = 3;
26
+ cols = 20;
27
+ autoresize = false;
28
+ required = false;
29
+ placeholder;
30
+ errorMessage;
31
+ successMessage;
32
+ resize = false;
33
+ symbolPosition = 'right';
34
+ _controlValueAccessorChangeFn;
35
+ hostDataTest = signal(undefined);
36
+ value;
37
+ onTouched;
38
+ constructor() {
39
+ if (this.label && !this.textareaId) {
40
+ throw Error('You have to provide an textarea id id if you want to use a label.');
41
+ }
42
+ this.hostDataTest.set(this.elementRef.nativeElement.getAttribute('data-test'));
43
+ this.elementRef.nativeElement.removeAttribute('data-test');
44
+ this.symbolRegistry.registerSymbols([apAlertCircle, apCheckCircle]);
45
+ }
46
+ ngOnInit() {
47
+ if (this.label && !this.textareaId) {
48
+ throw Error('You have to provide an textarea id if you want to use a label.');
49
+ }
50
+ this.hostDataTest.set(this.elementRef.nativeElement.getAttribute('data-test'));
51
+ this.elementRef.nativeElement.removeAttribute('data-test');
52
+ }
53
+ // Sometimes attributes like the id, or the data-test are dynamic and can change between the constructor and the initialization.
54
+ // In order to have the last attributes value we check if it changes, and if it does, we run a mark for check to update the view.
55
+ ngAfterViewInit() {
56
+ const hostDataTest = this.elementRef.nativeElement.getAttribute('data-test');
57
+ if (hostDataTest && this.hostDataTest() !== hostDataTest) {
58
+ this.hostDataTest.set(hostDataTest);
59
+ this.elementRef.nativeElement.removeAttribute('data-test');
60
+ }
61
+ }
62
+ validate({ value }) {
63
+ const isNotValid = !this.value && this.required;
64
+ return (isNotValid && {
65
+ invalid: true,
66
+ });
67
+ }
68
+ onValueChange() {
69
+ if (this.onTouched) {
70
+ this.onTouched();
71
+ }
72
+ if (!this.disabled) {
73
+ if (this._controlValueAccessorChangeFn) {
74
+ this._controlValueAccessorChangeFn(this.value);
75
+ }
76
+ }
77
+ }
78
+ writeValue(value) {
79
+ this.value = value;
80
+ }
81
+ registerOnChange(fn) {
82
+ this._controlValueAccessorChangeFn = fn;
83
+ }
84
+ registerOnTouched(fn) {
85
+ this.onTouched = fn;
86
+ }
87
+ setDisabledState(isDisabled) {
88
+ this.disabled = isDisabled;
89
+ }
90
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
91
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.10", type: TextareaComponent, isStandalone: true, selector: "ap-textarea", inputs: { ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", ariaDescribedBy: "ariaDescribedBy", disabled: "disabled", textareaId: "textareaId", name: "name", label: "label", description: "description", rows: "rows", cols: "cols", autoresize: ["autoresize", "autoresize", booleanAttribute], required: ["required", "required", booleanAttribute], placeholder: "placeholder", errorMessage: "errorMessage", successMessage: "successMessage", resize: "resize", symbolPosition: "symbolPosition" }, providers: [
92
+ AP_TEXTAREA_CONTROL_VALUE_ACCESSOR,
93
+ {
94
+ provide: NG_VALIDATORS,
95
+ useExisting: TextareaComponent,
96
+ multi: true,
97
+ },
98
+ ], queries: [{ propertyName: "symbols", predicate: SymbolComponent }], ngImport: i0, template: "<label\n *ngIf=\"label\"\n [for]=\"textareaId\">\n <span>\n {{ label }}\n </span>\n <span\n *ngIf=\"description\"\n class=\"description\">\n {{ description }}\n </span>\n</label>\n\n<textarea\n [class.with-error]=\"errorMessage\"\n [class.with-success]=\"successMessage\"\n [class.with-resize]=\"resize\"\n [placeholder]=\"placeholder\"\n [attr.data-test]=\"hostDataTest() ? hostDataTest() : name\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [id]=\"textareaId\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [attr.aria-disabled]=\"disabled?.toString()\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange()\"></textarea>\n<div\n *ngIf=\"errorMessage\"\n class=\"form-message error\">\n <ap-symbol\n symbolId=\"alert-circle\"\n size=\"micro\" />\n <span>\n {{ errorMessage }}\n </span>\n</div>\n\n<div\n *ngIf=\"successMessage\"\n class=\"form-message success\">\n <ap-symbol\n symbolId=\"check-circle\"\n size=\"micro\" />\n <span>\n {{ successMessage }}\n </span>\n</div>\n", styles: ["ap-textarea{display:flex;flex-direction:column;gap:var(--ref-spacing-xxs);--border-width: 1px}ap-textarea label{display:flex;flex-direction:column;gap:var(--comp-forms-label-spacing-vertical);font-size:var(--comp-forms-label-size);font-weight:var(--comp-forms-label-font-weight);line-height:var(--comp-forms-label-line-height);font-family:var(--comp-forms-label-font-family);color:var(--comp-forms-label-text-color)}ap-textarea label .description{font-size:var(--comp-forms-label-description-text-size);font-weight:var(--comp-forms-label-description-text-font-weight);line-height:var(--comp-forms-label-description-text-line-height);font-family:var(--comp-forms-label-description-text-font-family);color:var(--comp-forms-label-description-text-color)}ap-textarea textarea{resize:none;width:256px;border:1px solid var(--ref-color-grey-60);background-color:var(--ref-color-white);padding:var(--ref-spacing-xxs) var(--ref-spacing-xs) var(--ref-spacing-xxs) var(--ref-spacing-xs);border-radius:var(--ref-border-radius-sm)}ap-textarea textarea::placeholder{color:var(--ref-color-grey-80)}ap-textarea textarea:not(.transparent):not(.valid):not(.invalid):not(:focus):not([disabled]):hover{border-color:var(--ref-color-grey-80)}ap-textarea textarea:active{border-color:var(--ref-color-electric-blue-100)}ap-textarea textarea:disabled{border-color:var(--ref-color-grey-20);background-color:var(--ref-color-grey-20);cursor:default}ap-textarea textarea.with-error{border-color:var(--ref-color-red-100)}ap-textarea textarea.with-success{border-color:var(--ref-color-green-100)}ap-textarea textarea.with-resize{resize:vertical}.form-message{font-size:var(--sys-text-style-body-size);font-weight:var(--sys-text-style-body-weight);line-height:var(--sys-text-style-body-line-height);font-family:var(--sys-text-style-body-font-family);margin:0;display:flex;gap:var(--ref-spacing-xxxs)}.form-message.error{color:var(--ref-color-red-100)}.form-message.error ap-symbol{color:var(--ref-color-red-100)}.form-message.success{color:var(--ref-color-green-150)}.form-message.success ap-symbol{color:var(--ref-color-green-100)}form.ng-submitted ap-textarea.ng-valid textarea{border-color:var(--ref-color-green-100)}form.ng-submitted ap-textarea.ng-invalid textarea{border-color:var(--ref-color-red-100)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
99
+ }
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TextareaComponent, decorators: [{
101
+ type: Component,
102
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-textarea', standalone: true, imports: [NgIf, ReactiveFormsModule, FormsModule, SymbolComponent], providers: [
103
+ AP_TEXTAREA_CONTROL_VALUE_ACCESSOR,
104
+ {
105
+ provide: NG_VALIDATORS,
106
+ useExisting: TextareaComponent,
107
+ multi: true,
108
+ },
109
+ ], encapsulation: ViewEncapsulation.None, template: "<label\n *ngIf=\"label\"\n [for]=\"textareaId\">\n <span>\n {{ label }}\n </span>\n <span\n *ngIf=\"description\"\n class=\"description\">\n {{ description }}\n </span>\n</label>\n\n<textarea\n [class.with-error]=\"errorMessage\"\n [class.with-success]=\"successMessage\"\n [class.with-resize]=\"resize\"\n [placeholder]=\"placeholder\"\n [attr.data-test]=\"hostDataTest() ? hostDataTest() : name\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [id]=\"textareaId\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [attr.aria-disabled]=\"disabled?.toString()\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange()\"></textarea>\n<div\n *ngIf=\"errorMessage\"\n class=\"form-message error\">\n <ap-symbol\n symbolId=\"alert-circle\"\n size=\"micro\" />\n <span>\n {{ errorMessage }}\n </span>\n</div>\n\n<div\n *ngIf=\"successMessage\"\n class=\"form-message success\">\n <ap-symbol\n symbolId=\"check-circle\"\n size=\"micro\" />\n <span>\n {{ successMessage }}\n </span>\n</div>\n", styles: ["ap-textarea{display:flex;flex-direction:column;gap:var(--ref-spacing-xxs);--border-width: 1px}ap-textarea label{display:flex;flex-direction:column;gap:var(--comp-forms-label-spacing-vertical);font-size:var(--comp-forms-label-size);font-weight:var(--comp-forms-label-font-weight);line-height:var(--comp-forms-label-line-height);font-family:var(--comp-forms-label-font-family);color:var(--comp-forms-label-text-color)}ap-textarea label .description{font-size:var(--comp-forms-label-description-text-size);font-weight:var(--comp-forms-label-description-text-font-weight);line-height:var(--comp-forms-label-description-text-line-height);font-family:var(--comp-forms-label-description-text-font-family);color:var(--comp-forms-label-description-text-color)}ap-textarea textarea{resize:none;width:256px;border:1px solid var(--ref-color-grey-60);background-color:var(--ref-color-white);padding:var(--ref-spacing-xxs) var(--ref-spacing-xs) var(--ref-spacing-xxs) var(--ref-spacing-xs);border-radius:var(--ref-border-radius-sm)}ap-textarea textarea::placeholder{color:var(--ref-color-grey-80)}ap-textarea textarea:not(.transparent):not(.valid):not(.invalid):not(:focus):not([disabled]):hover{border-color:var(--ref-color-grey-80)}ap-textarea textarea:active{border-color:var(--ref-color-electric-blue-100)}ap-textarea textarea:disabled{border-color:var(--ref-color-grey-20);background-color:var(--ref-color-grey-20);cursor:default}ap-textarea textarea.with-error{border-color:var(--ref-color-red-100)}ap-textarea textarea.with-success{border-color:var(--ref-color-green-100)}ap-textarea textarea.with-resize{resize:vertical}.form-message{font-size:var(--sys-text-style-body-size);font-weight:var(--sys-text-style-body-weight);line-height:var(--sys-text-style-body-line-height);font-family:var(--sys-text-style-body-font-family);margin:0;display:flex;gap:var(--ref-spacing-xxxs)}.form-message.error{color:var(--ref-color-red-100)}.form-message.error ap-symbol{color:var(--ref-color-red-100)}.form-message.success{color:var(--ref-color-green-150)}.form-message.success ap-symbol{color:var(--ref-color-green-100)}form.ng-submitted ap-textarea.ng-valid textarea{border-color:var(--ref-color-green-100)}form.ng-submitted ap-textarea.ng-invalid textarea{border-color:var(--ref-color-red-100)}\n"] }]
110
+ }], ctorParameters: function () { return []; }, propDecorators: { symbols: [{
111
+ type: ContentChildren,
112
+ args: [SymbolComponent]
113
+ }], ariaLabel: [{
114
+ type: Input
115
+ }], ariaLabelledBy: [{
116
+ type: Input
117
+ }], ariaDescribedBy: [{
118
+ type: Input
119
+ }], disabled: [{
120
+ type: Input
121
+ }], textareaId: [{
122
+ type: Input
123
+ }], name: [{
124
+ type: Input,
125
+ args: [{
126
+ required: true,
127
+ }]
128
+ }], label: [{
129
+ type: Input
130
+ }], description: [{
131
+ type: Input
132
+ }], rows: [{
133
+ type: Input
134
+ }], cols: [{
135
+ type: Input
136
+ }], autoresize: [{
137
+ type: Input,
138
+ args: [{ transform: booleanAttribute }]
139
+ }], required: [{
140
+ type: Input,
141
+ args: [{ transform: booleanAttribute }]
142
+ }], placeholder: [{
143
+ type: Input
144
+ }], errorMessage: [{
145
+ type: Input
146
+ }], successMessage: [{
147
+ type: Input
148
+ }], resize: [{
149
+ type: Input
150
+ }], symbolPosition: [{
151
+ type: Input
152
+ }] } });
153
+
154
+ /**
155
+ * Generated bundle index. Do not edit.
156
+ */
157
+
158
+ export { AP_TEXTAREA_CONTROL_VALUE_ACCESSOR, TextareaComponent };
159
+ //# sourceMappingURL=agorapulse-ui-components-textarea.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agorapulse-ui-components-textarea.mjs","sources":["../../../libs/ui-components/textarea/src/textarea.component.ts","../../../libs/ui-components/textarea/src/textarea.component.html","../../../libs/ui-components/textarea/src/agorapulse-ui-components-textarea.ts"],"sourcesContent":["import { SymbolComponent, SymbolRegistry, apAlertCircle, apCheckCircle } from '@agorapulse/ui-symbol';\nimport { NgIf } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnInit,\n QueryList,\n ViewEncapsulation,\n WritableSignal,\n booleanAttribute,\n forwardRef,\n inject,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, FormControl, FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\n\nexport const AP_TEXTAREA_CONTROL_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TextareaComponent),\n multi: true,\n};\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-textarea',\n styleUrls: ['./textarea.component.scss'],\n standalone: true,\n imports: [NgIf, ReactiveFormsModule, FormsModule, SymbolComponent],\n providers: [\n AP_TEXTAREA_CONTROL_VALUE_ACCESSOR,\n {\n provide: NG_VALIDATORS,\n useExisting: TextareaComponent,\n multi: true,\n },\n ],\n templateUrl: './textarea.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class TextareaComponent implements OnInit, AfterViewInit, ControlValueAccessor {\n readonly elementRef: ElementRef = inject(ElementRef);\n readonly symbolRegistry: SymbolRegistry = inject(SymbolRegistry);\n\n @ContentChildren(SymbolComponent) symbols!: QueryList<SymbolComponent>;\n\n @Input() ariaLabel!: string;\n\n @Input() ariaLabelledBy!: string;\n\n @Input() ariaDescribedBy!: string;\n\n @Input() disabled: boolean = false;\n\n @Input() textareaId?: string;\n\n @Input({\n required: true,\n })\n name!: string;\n\n @Input() label?: string;\n\n @Input() description?: string;\n\n @Input() rows: number = 3;\n\n @Input() cols: number = 20;\n\n @Input({ transform: booleanAttribute }) autoresize: boolean = false;\n\n @Input({ transform: booleanAttribute }) required: boolean = false;\n\n @Input()\n placeholder!: string;\n\n @Input() errorMessage?: string;\n\n @Input() successMessage?: string;\n\n @Input() resize: boolean = false;\n\n @Input() symbolPosition: 'left' | 'right' = 'right';\n\n private _controlValueAccessorChangeFn!: (value: string | null) => void;\n\n hostDataTest: WritableSignal<string | undefined> = signal<string | undefined>(undefined);\n\n value!: string | null;\n\n onTouched!: () => void;\n\n constructor() {\n if (this.label && !this.textareaId) {\n throw Error('You have to provide an textarea id id if you want to use a label.');\n }\n this.hostDataTest.set(this.elementRef.nativeElement.getAttribute('data-test'));\n this.elementRef.nativeElement.removeAttribute('data-test');\n this.symbolRegistry.registerSymbols([apAlertCircle, apCheckCircle]);\n }\n\n ngOnInit(): void {\n if (this.label && !this.textareaId) {\n throw Error('You have to provide an textarea id if you want to use a label.');\n }\n this.hostDataTest.set(this.elementRef.nativeElement.getAttribute('data-test'));\n this.elementRef.nativeElement.removeAttribute('data-test');\n }\n\n // Sometimes attributes like the id, or the data-test are dynamic and can change between the constructor and the initialization.\n // In order to have the last attributes value we check if it changes, and if it does, we run a mark for check to update the view.\n ngAfterViewInit(): void {\n const hostDataTest = this.elementRef.nativeElement.getAttribute('data-test');\n if (hostDataTest && this.hostDataTest() !== hostDataTest) {\n this.hostDataTest.set(hostDataTest);\n this.elementRef.nativeElement.removeAttribute('data-test');\n }\n }\n\n validate({ value }: FormControl) {\n const isNotValid = !this.value && this.required;\n return (\n isNotValid && {\n invalid: true,\n }\n );\n }\n\n onValueChange() {\n if (this.onTouched) {\n this.onTouched();\n }\n\n if (!this.disabled) {\n if (this._controlValueAccessorChangeFn) {\n this._controlValueAccessorChangeFn(this.value);\n }\n }\n }\n\n writeValue(value: string): void {\n this.value = value;\n }\n\n registerOnChange(fn: (value: string | null) => void): void {\n this._controlValueAccessorChangeFn = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","<label\n *ngIf=\"label\"\n [for]=\"textareaId\">\n <span>\n {{ label }}\n </span>\n <span\n *ngIf=\"description\"\n class=\"description\">\n {{ description }}\n </span>\n</label>\n\n<textarea\n [class.with-error]=\"errorMessage\"\n [class.with-success]=\"successMessage\"\n [class.with-resize]=\"resize\"\n [placeholder]=\"placeholder\"\n [attr.data-test]=\"hostDataTest() ? hostDataTest() : name\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [id]=\"textareaId\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [attr.aria-disabled]=\"disabled?.toString()\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange()\"></textarea>\n<div\n *ngIf=\"errorMessage\"\n class=\"form-message error\">\n <ap-symbol\n symbolId=\"alert-circle\"\n size=\"micro\" />\n <span>\n {{ errorMessage }}\n </span>\n</div>\n\n<div\n *ngIf=\"successMessage\"\n class=\"form-message success\">\n <ap-symbol\n symbolId=\"check-circle\"\n size=\"micro\" />\n <span>\n {{ successMessage }}\n </span>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -47,6 +47,14 @@ export { ToggleComponent } from '@agorapulse/ui-components/toggle';
47
47
  export { ButtonComponent } from '@agorapulse/ui-components/button';
48
48
  export { SocialButtonComponent } from '@agorapulse/ui-components/social-button';
49
49
  export { RadioComponent } from '@agorapulse/ui-components/radio';
50
+ export { TagComponent } from '@agorapulse/ui-components/tag';
51
+ export { BadgeComponent } from '@agorapulse/ui-components/badge';
52
+ export { CounterComponent } from '@agorapulse/ui-components/counter';
53
+ export { StatusComponent } from '@agorapulse/ui-components/status';
54
+ export { StatusCardComponent } from '@agorapulse/ui-components/status-card';
55
+ export { InputComponent } from '@agorapulse/ui-components/input';
56
+ export { SelectComponent } from '@agorapulse/ui-components/select';
57
+ export { TextareaComponent } from '@agorapulse/ui-components/textarea';
50
58
 
51
59
  // Modules
52
60
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"agorapulse-ui-components.mjs","sources":["../../../libs/ui-components/src/lib/agorapulse-ui-components.module.ts","../../../libs/ui-components/index.ts","../../../libs/ui-components/agorapulse-ui-components.ts"],"sourcesContent":["// Modules\nimport { AddCommentComponent } from '@agorapulse/ui-components/add-comment';\nimport { AvatarComponent } from '@agorapulse/ui-components/avatar';\nimport { ConfirmModalComponent } from '@agorapulse/ui-components/confirm-modal';\nimport { DatepickerComponent } from '@agorapulse/ui-components/datepicker';\nimport {\n AutosizeTextareaDirective,\n DefaultImageDirective,\n EllipsisDirective,\n EqualValidatorDirective,\n FrozenGifDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n} from '@agorapulse/ui-components/directives';\nimport { DotsStepperComponent } from '@agorapulse/ui-components/dots-stepper';\nimport { InfoboxComponent } from '@agorapulse/ui-components/infobox';\nimport { LabelComponent, LabelListComponent } from '@agorapulse/ui-components/labels';\nimport { LabelsSelectorComponent } from '@agorapulse/ui-components/labels-selector';\nimport { MediaDisplayOverlayDialogComponent } from '@agorapulse/ui-components/media-display-overlay';\nimport { ModalComponent } from '@agorapulse/ui-components/modal';\nimport { DayDisabledPipe, NeoDatepickerComponent } from '@agorapulse/ui-components/neo-datepicker';\nimport { NotificationComponent } from '@agorapulse/ui-components/notification';\nimport { PaginatorButtonComponent, PaginatorComponent } from '@agorapulse/ui-components/paginator';\nimport { PasswordInputComponent } from '@agorapulse/ui-components/password-input';\nimport { PopmenuModule } from '@agorapulse/ui-components/popmenu';\nimport { SlideToggleComponent } from '@agorapulse/ui-components/slide-toggle';\nimport { SnackbarsThreadComponent } from '@agorapulse/ui-components/snackbars-thread';\nimport { StepperComponent } from '@agorapulse/ui-components/stepper';\nimport { TooltipDirective } from '@agorapulse/ui-components/tooltip';\nimport { NgModule } from '@angular/core';\nimport { MAT_TABS_CONFIG } from '@angular/material/tabs';\n\n/**\n * @deprecated for better tree-shaking, use standalone component import instead\n */\n@NgModule({\n declarations: [],\n imports: [\n // Components\n AvatarComponent,\n StepperComponent,\n ConfirmModalComponent,\n DatepickerComponent,\n DotsStepperComponent,\n EllipsisDirective,\n InfoboxComponent,\n LabelListComponent,\n LabelsSelectorComponent,\n NeoDatepickerComponent,\n MediaDisplayOverlayDialogComponent,\n ModalComponent,\n PasswordInputComponent,\n LabelComponent,\n NotificationComponent,\n PaginatorComponent,\n PaginatorButtonComponent,\n SlideToggleComponent,\n SnackbarsThreadComponent,\n // Directives\n DefaultImageDirective,\n FrozenGifDirective,\n SlideToggleComponent,\n EqualValidatorDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n TooltipDirective,\n AddCommentComponent,\n AutosizeTextareaDirective,\n // Pipes\n DayDisabledPipe,\n ],\n exports: [\n // Components\n AddCommentComponent,\n AvatarComponent,\n StepperComponent,\n ConfirmModalComponent,\n DatepickerComponent,\n NeoDatepickerComponent,\n DotsStepperComponent,\n EllipsisDirective,\n InfoboxComponent,\n LabelComponent,\n LabelListComponent,\n MediaDisplayOverlayDialogComponent,\n ModalComponent,\n PasswordInputComponent,\n LabelsSelectorComponent,\n NotificationComponent,\n PaginatorComponent,\n PaginatorButtonComponent,\n SlideToggleComponent,\n SnackbarsThreadComponent,\n // Pipes\n DayDisabledPipe,\n // Directives\n AutosizeTextareaDirective,\n DefaultImageDirective,\n FrozenGifDirective,\n EqualValidatorDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n TooltipDirective,\n // Modules\n PopmenuModule,\n ],\n providers: [\n // Disable ripple effect\n // {provide: MAT_RIPPLE_GLOBAL_OPTIONS, useValue: {disabled: true}},\n // Disable tabs animation\n { provide: MAT_TABS_CONFIG, useValue: { animationDuration: '0ms' } },\n ],\n})\nexport class AgorapulseUiComponentsModule {}\n","/*\n * Public API Surface of ui\n */\n\n// Module\nexport { AgorapulseUiComponentsModule } from './src/lib/agorapulse-ui-components.module';\nexport { PopmenuModule } from '@agorapulse/ui-components/popmenu';\n\n// Directive\nexport {\n AutosizeTextareaDirective,\n DefaultImageDirective,\n EllipsisDirective,\n FrozenGifDirective,\n EqualValidatorDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n} from '@agorapulse/ui-components/directives';\nexport { PopmenuDirective } from '@agorapulse/ui-components/popmenu';\nexport { TooltipDirective } from '@agorapulse/ui-components/tooltip';\n\n// Component\nexport { AddCommentComponent } from '@agorapulse/ui-components/add-comment';\nexport { AvatarComponent } from '@agorapulse/ui-components/avatar';\nexport { StepperComponent } from '@agorapulse/ui-components/stepper';\nexport { ConfirmModalComponent } from '@agorapulse/ui-components/confirm-modal';\nexport { DatepickerComponent, DatepickerMode, I18nDatePicker, Period } from '@agorapulse/ui-components/datepicker';\nexport {\n NeoDatepickerComponent,\n NeoDatePickerStartsOn,\n NeoDatePickerMode,\n NeoDatePickerLocale,\n DayDisabledPipe,\n} from '@agorapulse/ui-components/neo-datepicker';\nexport { DotsStepperComponent } from '@agorapulse/ui-components/dots-stepper';\nexport { InfoboxComponent } from '@agorapulse/ui-components/infobox';\nexport { LabelComponent } from '@agorapulse/ui-components/labels';\nexport { LabelListComponent } from '@agorapulse/ui-components/labels';\nexport { LabelsSelectorComponent } from '@agorapulse/ui-components/labels-selector';\nexport { MediaDisplayOverlayDialogComponent } from '@agorapulse/ui-components/media-display-overlay';\nexport { ModalComponent, ModalConfig } from '@agorapulse/ui-components/modal';\nexport { PaginatorComponent } from '@agorapulse/ui-components/paginator';\nexport { PasswordInputComponent } from '@agorapulse/ui-components/password-input';\nexport { PopmenuComponent } from '@agorapulse/ui-components/popmenu';\nexport { NotificationComponent } from '@agorapulse/ui-components/notification';\nexport { PaginatorButtonComponent } from '@agorapulse/ui-components/paginator';\nexport { SlideToggleComponent } from '@agorapulse/ui-components/slide-toggle';\nexport { SnackbarsThreadComponent } from '@agorapulse/ui-components/snackbars-thread';\nexport { CheckboxComponent } from '@agorapulse/ui-components/checkbox';\nexport { IconButtonComponent } from '@agorapulse/ui-components/icon-button';\nexport { ToggleComponent } from '@agorapulse/ui-components/toggle';\nexport { ButtonComponent } from '@agorapulse/ui-components/button';\nexport { SocialButtonComponent } from '@agorapulse/ui-components/social-button';\nexport { RadioComponent } from '@agorapulse/ui-components/radio';\n\n// Service\nexport { SnackbarsThreadService } from '@agorapulse/ui-components/snackbars-thread';\n\n// Model\nexport { Step } from '@agorapulse/ui-components/stepper';\nexport { ConfirmModalTexts } from '@agorapulse/ui-components/confirm-modal';\nexport {\n generateCodeStatus,\n CodeStatus,\n SnackbarsThreadBase,\n SnackbarTypeValues,\n externalSnackbarTypeAllowed,\n} from '@agorapulse/ui-components/snackbars-thread';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agorapulse-ui-components.mjs","sources":["../../../libs/ui-components/src/lib/agorapulse-ui-components.module.ts","../../../libs/ui-components/index.ts","../../../libs/ui-components/agorapulse-ui-components.ts"],"sourcesContent":["// Modules\nimport { AddCommentComponent } from '@agorapulse/ui-components/add-comment';\nimport { AvatarComponent } from '@agorapulse/ui-components/avatar';\nimport { ConfirmModalComponent } from '@agorapulse/ui-components/confirm-modal';\nimport { DatepickerComponent } from '@agorapulse/ui-components/datepicker';\nimport {\n AutosizeTextareaDirective,\n DefaultImageDirective,\n EllipsisDirective,\n EqualValidatorDirective,\n FrozenGifDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n} from '@agorapulse/ui-components/directives';\nimport { DotsStepperComponent } from '@agorapulse/ui-components/dots-stepper';\nimport { InfoboxComponent } from '@agorapulse/ui-components/infobox';\nimport { LabelComponent, LabelListComponent } from '@agorapulse/ui-components/labels';\nimport { LabelsSelectorComponent } from '@agorapulse/ui-components/labels-selector';\nimport { MediaDisplayOverlayDialogComponent } from '@agorapulse/ui-components/media-display-overlay';\nimport { ModalComponent } from '@agorapulse/ui-components/modal';\nimport { DayDisabledPipe, NeoDatepickerComponent } from '@agorapulse/ui-components/neo-datepicker';\nimport { NotificationComponent } from '@agorapulse/ui-components/notification';\nimport { PaginatorButtonComponent, PaginatorComponent } from '@agorapulse/ui-components/paginator';\nimport { PasswordInputComponent } from '@agorapulse/ui-components/password-input';\nimport { PopmenuModule } from '@agorapulse/ui-components/popmenu';\nimport { SlideToggleComponent } from '@agorapulse/ui-components/slide-toggle';\nimport { SnackbarsThreadComponent } from '@agorapulse/ui-components/snackbars-thread';\nimport { StepperComponent } from '@agorapulse/ui-components/stepper';\nimport { TooltipDirective } from '@agorapulse/ui-components/tooltip';\nimport { NgModule } from '@angular/core';\nimport { MAT_TABS_CONFIG } from '@angular/material/tabs';\n\n/**\n * @deprecated for better tree-shaking, use standalone component import instead\n */\n@NgModule({\n declarations: [],\n imports: [\n // Components\n AvatarComponent,\n StepperComponent,\n ConfirmModalComponent,\n DatepickerComponent,\n DotsStepperComponent,\n EllipsisDirective,\n InfoboxComponent,\n LabelListComponent,\n LabelsSelectorComponent,\n NeoDatepickerComponent,\n MediaDisplayOverlayDialogComponent,\n ModalComponent,\n PasswordInputComponent,\n LabelComponent,\n NotificationComponent,\n PaginatorComponent,\n PaginatorButtonComponent,\n SlideToggleComponent,\n SnackbarsThreadComponent,\n // Directives\n DefaultImageDirective,\n FrozenGifDirective,\n SlideToggleComponent,\n EqualValidatorDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n TooltipDirective,\n AddCommentComponent,\n AutosizeTextareaDirective,\n // Pipes\n DayDisabledPipe,\n ],\n exports: [\n // Components\n AddCommentComponent,\n AvatarComponent,\n StepperComponent,\n ConfirmModalComponent,\n DatepickerComponent,\n NeoDatepickerComponent,\n DotsStepperComponent,\n EllipsisDirective,\n InfoboxComponent,\n LabelComponent,\n LabelListComponent,\n MediaDisplayOverlayDialogComponent,\n ModalComponent,\n PasswordInputComponent,\n LabelsSelectorComponent,\n NotificationComponent,\n PaginatorComponent,\n PaginatorButtonComponent,\n SlideToggleComponent,\n SnackbarsThreadComponent,\n // Pipes\n DayDisabledPipe,\n // Directives\n AutosizeTextareaDirective,\n DefaultImageDirective,\n FrozenGifDirective,\n EqualValidatorDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n TooltipDirective,\n // Modules\n PopmenuModule,\n ],\n providers: [\n // Disable ripple effect\n // {provide: MAT_RIPPLE_GLOBAL_OPTIONS, useValue: {disabled: true}},\n // Disable tabs animation\n { provide: MAT_TABS_CONFIG, useValue: { animationDuration: '0ms' } },\n ],\n})\nexport class AgorapulseUiComponentsModule {}\n","/*\n * Public API Surface of ui\n */\n\n// Module\nexport { AgorapulseUiComponentsModule } from './src/lib/agorapulse-ui-components.module';\nexport { PopmenuModule } from '@agorapulse/ui-components/popmenu';\n\n// Directive\nexport {\n AutosizeTextareaDirective,\n DefaultImageDirective,\n EllipsisDirective,\n FrozenGifDirective,\n EqualValidatorDirective,\n MultiStyleTextDirective,\n TruncateTooltipDirective,\n} from '@agorapulse/ui-components/directives';\nexport { PopmenuDirective } from '@agorapulse/ui-components/popmenu';\nexport { TooltipDirective } from '@agorapulse/ui-components/tooltip';\n\n// Component\nexport { AddCommentComponent } from '@agorapulse/ui-components/add-comment';\nexport { AvatarComponent } from '@agorapulse/ui-components/avatar';\nexport { StepperComponent } from '@agorapulse/ui-components/stepper';\nexport { ConfirmModalComponent } from '@agorapulse/ui-components/confirm-modal';\nexport { DatepickerComponent, DatepickerMode, I18nDatePicker, Period } from '@agorapulse/ui-components/datepicker';\nexport {\n NeoDatepickerComponent,\n NeoDatePickerStartsOn,\n NeoDatePickerMode,\n NeoDatePickerLocale,\n DayDisabledPipe,\n} from '@agorapulse/ui-components/neo-datepicker';\nexport { DotsStepperComponent } from '@agorapulse/ui-components/dots-stepper';\nexport { InfoboxComponent } from '@agorapulse/ui-components/infobox';\nexport { LabelComponent } from '@agorapulse/ui-components/labels';\nexport { LabelListComponent } from '@agorapulse/ui-components/labels';\nexport { LabelsSelectorComponent } from '@agorapulse/ui-components/labels-selector';\nexport { MediaDisplayOverlayDialogComponent } from '@agorapulse/ui-components/media-display-overlay';\nexport { ModalComponent, ModalConfig } from '@agorapulse/ui-components/modal';\nexport { PaginatorComponent } from '@agorapulse/ui-components/paginator';\nexport { PasswordInputComponent } from '@agorapulse/ui-components/password-input';\nexport { PopmenuComponent } from '@agorapulse/ui-components/popmenu';\nexport { NotificationComponent } from '@agorapulse/ui-components/notification';\nexport { PaginatorButtonComponent } from '@agorapulse/ui-components/paginator';\nexport { SlideToggleComponent } from '@agorapulse/ui-components/slide-toggle';\nexport { SnackbarsThreadComponent } from '@agorapulse/ui-components/snackbars-thread';\nexport { CheckboxComponent } from '@agorapulse/ui-components/checkbox';\nexport { IconButtonComponent } from '@agorapulse/ui-components/icon-button';\nexport { ToggleComponent } from '@agorapulse/ui-components/toggle';\nexport { ButtonComponent } from '@agorapulse/ui-components/button';\nexport { SocialButtonComponent } from '@agorapulse/ui-components/social-button';\nexport { RadioComponent } from '@agorapulse/ui-components/radio';\nexport { TagComponent } from '@agorapulse/ui-components/tag';\nexport { BadgeComponent } from '@agorapulse/ui-components/badge';\nexport { CounterComponent } from '@agorapulse/ui-components/counter';\nexport { StatusComponent } from '@agorapulse/ui-components/status';\nexport { StatusCardComponent, StatusCardActor } from '@agorapulse/ui-components/status-card';\nexport { InputComponent } from '@agorapulse/ui-components/input';\nexport { SelectComponent } from '@agorapulse/ui-components/select';\nexport { TextareaComponent } from '@agorapulse/ui-components/textarea';\n\n// Service\nexport { SnackbarsThreadService } from '@agorapulse/ui-components/snackbars-thread';\n\n// Model\nexport { Step } from '@agorapulse/ui-components/stepper';\nexport { ConfirmModalTexts } from '@agorapulse/ui-components/confirm-modal';\nexport {\n generateCodeStatus,\n CodeStatus,\n SnackbarsThreadBase,\n SnackbarTypeValues,\n externalSnackbarTypeAllowed,\n} from '@agorapulse/ui-components/snackbars-thread';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -29,6 +29,14 @@ export { ToggleComponent } from '@agorapulse/ui-components/toggle';
29
29
  export { ButtonComponent } from '@agorapulse/ui-components/button';
30
30
  export { SocialButtonComponent } from '@agorapulse/ui-components/social-button';
31
31
  export { RadioComponent } from '@agorapulse/ui-components/radio';
32
+ export { TagComponent } from '@agorapulse/ui-components/tag';
33
+ export { BadgeComponent } from '@agorapulse/ui-components/badge';
34
+ export { CounterComponent } from '@agorapulse/ui-components/counter';
35
+ export { StatusComponent } from '@agorapulse/ui-components/status';
36
+ export { StatusCardComponent, StatusCardActor } from '@agorapulse/ui-components/status-card';
37
+ export { InputComponent } from '@agorapulse/ui-components/input';
38
+ export { SelectComponent } from '@agorapulse/ui-components/select';
39
+ export { TextareaComponent } from '@agorapulse/ui-components/textarea';
32
40
  export { SnackbarsThreadService } from '@agorapulse/ui-components/snackbars-thread';
33
41
  export { Step } from '@agorapulse/ui-components/stepper';
34
42
  export { ConfirmModalTexts } from '@agorapulse/ui-components/confirm-modal';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@agorapulse/ui-components/input" />
5
+ export * from './public_api';
@@ -0,0 +1,56 @@
1
+ import { SymbolComponent, SymbolRegistry } from '@agorapulse/ui-symbol';
2
+ import { AfterContentInit, AfterViewInit, ElementRef, OnInit, QueryList, WritableSignal } from '@angular/core';
3
+ import { ControlValueAccessor, FormControl } from '@angular/forms';
4
+ import * as i0 from "@angular/core";
5
+ type InputType = 'button' | 'checkbox' | 'color' | 'datetime' | 'datetime-local' | 'email' | 'file' | 'hidden' | 'image' | 'month' | 'number' | 'password' | 'radio' | 'range' | 'reset' | 'search' | 'submit' | 'text' | 'tel' | 'time' | 'url' | 'week';
6
+ export declare const AP_INPUT_CONTROL_VALUE_ACCESSOR: {
7
+ provide: import("@angular/core").InjectionToken<readonly ControlValueAccessor[]>;
8
+ useExisting: import("@angular/core").Type<any>;
9
+ multi: boolean;
10
+ };
11
+ export declare class InputComponent implements OnInit, AfterViewInit, AfterContentInit, ControlValueAccessor {
12
+ readonly elementRef: ElementRef;
13
+ readonly symbolRegistry: SymbolRegistry;
14
+ symbols: QueryList<SymbolComponent>;
15
+ symbolWrapper: ElementRef;
16
+ inputElement: ElementRef;
17
+ ariaLabel: string;
18
+ ariaLabelledBy: string;
19
+ ariaDescribedBy: string;
20
+ disabled: boolean;
21
+ clearable: boolean;
22
+ inputType: InputType;
23
+ inputId?: string;
24
+ name: string;
25
+ label?: string;
26
+ description?: string;
27
+ prefix?: string;
28
+ suffix?: string;
29
+ required: boolean;
30
+ placeholder?: string;
31
+ errorMessage?: string;
32
+ successMessage?: string;
33
+ symbolPosition: 'left' | 'right';
34
+ private _controlValueAccessorChangeFn;
35
+ iconExists: WritableSignal<boolean>;
36
+ hostDataTest: WritableSignal<string | undefined>;
37
+ value: string | null;
38
+ onTouched: () => void;
39
+ ngOnInit(): void;
40
+ ngAfterViewInit(): void;
41
+ ngAfterContentInit(): void;
42
+ validate({ value }: FormControl): false | {
43
+ invalid: boolean;
44
+ };
45
+ onValueChange(): void;
46
+ writeValue(value: string | null): void;
47
+ registerOnChange(fn: (value: string | null) => void): void;
48
+ registerOnTouched(fn: () => void): void;
49
+ setDisabledState(isDisabled: boolean): void;
50
+ focusInput(): void;
51
+ onClear(): void;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputComponent, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputComponent, "ap-input", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "inputType": { "alias": "inputType"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "name": { "alias": "name"; "required": true; }; "label": { "alias": "label"; "required": false; }; "description": { "alias": "description"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; "suffix": { "alias": "suffix"; "required": false; }; "required": { "alias": "required"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "successMessage": { "alias": "successMessage"; "required": false; }; "symbolPosition": { "alias": "symbolPosition"; "required": false; }; }, {}, ["symbols"], ["ap-symbol"], true, never>;
54
+ static ngAcceptInputType_required: unknown;
55
+ }
56
+ export {};
@@ -0,0 +1 @@
1
+ export * from './input.component';
@@ -22,7 +22,9 @@ export declare class LabelListComponent implements AfterContentInit, OnChanges,
22
22
  ngOnChanges(changes: SimpleChanges): void;
23
23
  ngOnDestroy(): void;
24
24
  onExpand(): void;
25
- onRemoveLabel(label: string): void;
25
+ onRemoveLabel({ content }: {
26
+ content: string;
27
+ }): void;
26
28
  onResize(): void;
27
29
  trackByLabelContent(_: number, entry: string): string;
28
30
  private generateResponsiveLabels;
@@ -1,22 +1,24 @@
1
- import { SymbolRegistry } from '@agorapulse/ui-symbol';
2
- import { AfterViewInit, ElementRef, EventEmitter, NgZone, OnDestroy } from '@angular/core';
1
+ import { AfterViewInit } from '@angular/core';
2
+ import { EventEmitter, OnDestroy } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class LabelComponent implements AfterViewInit, OnDestroy {
5
5
  private elementRef;
6
+ private symbolRegistry;
6
7
  private zone;
7
- symbolRegistry: SymbolRegistry;
8
- color: string | 'blue' | 'red' | 'purple' | 'orange' | 'yellow' | 'green';
9
8
  content: string;
10
- onlyText: boolean;
11
9
  selectorWidth: number;
12
10
  removable: boolean;
13
- remove: EventEmitter<string>;
11
+ remove: EventEmitter<{
12
+ content: string;
13
+ $event: MouseEvent;
14
+ }>;
14
15
  private observer;
15
16
  tooltipEnabled: boolean;
16
- constructor(elementRef: ElementRef, zone: NgZone, symbolRegistry: SymbolRegistry);
17
+ constructor();
17
18
  ngAfterViewInit(): void;
18
19
  ngOnDestroy(): void;
19
- onRemoveLabel(): void;
20
+ onClearLabel($event: MouseEvent): void;
20
21
  static ɵfac: i0.ɵɵFactoryDeclaration<LabelComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<LabelComponent, "ap-label", never, { "color": { "alias": "color"; "required": false; }; "content": { "alias": "content"; "required": true; }; "onlyText": { "alias": "onlyText"; "required": false; }; "selectorWidth": { "alias": "selectorWidth"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; }, { "remove": "remove"; }, never, never, true, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<LabelComponent, "ap-label", never, { "content": { "alias": "content"; "required": true; }; "selectorWidth": { "alias": "selectorWidth"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; }, { "remove": "remove"; }, never, never, true, never>;
23
+ static ngAcceptInputType_removable: unknown;
22
24
  }