carbon-components-angular 5.41.0 → 5.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/docs/documentation/classes/CheckboxExportedTests.html +1 -1
  2. package/docs/documentation/components/ComboBox.html +4 -4
  3. package/docs/documentation/components/TextareaLabelComponent.html +346 -128
  4. package/docs/documentation/coverage.html +6 -6
  5. package/docs/documentation/directives/RouterLinkExtendedDirective.html +1 -1
  6. package/docs/documentation/directives/TextArea.html +58 -0
  7. package/docs/documentation/js/search/search_index.js +2 -2
  8. package/docs/documentation/modules/ComboBoxModule/dependencies.svg +4 -4
  9. package/docs/documentation/modules/ComboBoxModule.html +4 -4
  10. package/docs/documentation/modules/ContentSwitcherModule/dependencies.svg +4 -4
  11. package/docs/documentation/modules/ContentSwitcherModule.html +4 -4
  12. package/docs/documentation/modules/DatePickerInputModule/dependencies.svg +41 -37
  13. package/docs/documentation/modules/DatePickerInputModule.html +41 -37
  14. package/docs/documentation/modules/DatePickerModule/dependencies.svg +38 -38
  15. package/docs/documentation/modules/DatePickerModule.html +38 -38
  16. package/docs/documentation/modules/GridModule/dependencies.svg +60 -60
  17. package/docs/documentation/modules/GridModule.html +60 -60
  18. package/docs/documentation/modules/LoadingModule/dependencies.svg +4 -4
  19. package/docs/documentation/modules/LoadingModule.html +4 -4
  20. package/docs/documentation/modules/NFormsModule/dependencies.svg +4 -4
  21. package/docs/documentation/modules/NFormsModule.html +4 -4
  22. package/docs/documentation/modules/NumberModule/dependencies.svg +4 -4
  23. package/docs/documentation/modules/NumberModule.html +4 -4
  24. package/docs/documentation/modules/ProgressIndicatorModule/dependencies.svg +4 -4
  25. package/docs/documentation/modules/ProgressIndicatorModule.html +4 -4
  26. package/docs/documentation/modules/RadioModule/dependencies.svg +4 -4
  27. package/docs/documentation/modules/RadioModule.html +4 -4
  28. package/docs/documentation/modules/SelectModule/dependencies.svg +58 -58
  29. package/docs/documentation/modules/SelectModule.html +58 -58
  30. package/docs/documentation/modules/SliderModule/dependencies.svg +4 -4
  31. package/docs/documentation/modules/SliderModule.html +4 -4
  32. package/docs/documentation/modules/TableModule/dependencies.svg +216 -216
  33. package/docs/documentation/modules/TableModule.html +216 -216
  34. package/docs/documentation/modules/TabsModule/dependencies.svg +69 -69
  35. package/docs/documentation/modules/TabsModule.html +69 -69
  36. package/docs/documentation/modules/TagModule/dependencies.svg +4 -4
  37. package/docs/documentation/modules/TagModule.html +4 -4
  38. package/docs/documentation/modules/ThemeModule/dependencies.svg +4 -4
  39. package/docs/documentation/modules/ThemeModule.html +4 -4
  40. package/docs/documentation/modules/TilesModule/dependencies.svg +86 -86
  41. package/docs/documentation/modules/TilesModule.html +86 -86
  42. package/docs/documentation/modules/TimePickerSelectModule/dependencies.svg +40 -44
  43. package/docs/documentation/modules/TimePickerSelectModule.html +40 -44
  44. package/docs/documentation/modules/ToggleModule/dependencies.svg +42 -46
  45. package/docs/documentation/modules/ToggleModule.html +42 -46
  46. package/docs/documentation/modules/ToggletipModule/dependencies.svg +4 -4
  47. package/docs/documentation/modules/ToggletipModule.html +4 -4
  48. package/docs/documentation/modules/TooltipModule/dependencies.svg +4 -4
  49. package/docs/documentation/modules/TooltipModule.html +4 -4
  50. package/docs/documentation/modules/TreeviewModule/dependencies.svg +35 -35
  51. package/docs/documentation/modules/TreeviewModule.html +35 -35
  52. package/docs/documentation/modules/UIShellModule/dependencies.svg +4 -4
  53. package/docs/documentation/modules/UIShellModule.html +4 -4
  54. package/docs/documentation.json +200 -108
  55. package/docs/storybook/1250.47c381c1.iframe.bundle.js +1 -0
  56. package/docs/storybook/1277.4be2b1a4.iframe.bundle.js +1 -0
  57. package/docs/storybook/{1345.9eabf5e2.iframe.bundle.js → 1345.ec2701f8.iframe.bundle.js} +1 -1
  58. package/docs/storybook/{6765.2096c92a.iframe.bundle.js → 6765.2c6ceeb0.iframe.bundle.js} +1 -1
  59. package/docs/storybook/{combobox-combobox-stories.3bbada2d.iframe.bundle.js → combobox-combobox-stories.84acbfa0.iframe.bundle.js} +1 -1
  60. package/docs/storybook/iframe.html +2 -2
  61. package/docs/storybook/index.json +1 -1
  62. package/docs/storybook/input-textarea-stories.f6532f41.iframe.bundle.js +1 -0
  63. package/docs/storybook/main.a2b57351.iframe.bundle.js +1 -0
  64. package/docs/storybook/project.json +1 -1
  65. package/docs/storybook/runtime~main.f3aed674.iframe.bundle.js +1 -0
  66. package/docs/storybook/stories.json +1 -1
  67. package/esm2020/combobox/combobox.component.mjs +3 -3
  68. package/esm2020/input/label.component.mjs +1 -1
  69. package/esm2020/input/text-area.directive.mjs +8 -2
  70. package/esm2020/input/textarea-label.component.mjs +186 -106
  71. package/esm2020/ui-shell/sidenav/routerlink-extended.directive.mjs +2 -2
  72. package/fesm2015/carbon-components-angular-combobox.mjs +2 -2
  73. package/fesm2015/carbon-components-angular-combobox.mjs.map +1 -1
  74. package/fesm2015/carbon-components-angular-input.mjs +193 -107
  75. package/fesm2015/carbon-components-angular-input.mjs.map +1 -1
  76. package/fesm2015/carbon-components-angular-ui-shell.mjs +1 -1
  77. package/fesm2015/carbon-components-angular-ui-shell.mjs.map +1 -1
  78. package/fesm2020/carbon-components-angular-combobox.mjs +2 -2
  79. package/fesm2020/carbon-components-angular-combobox.mjs.map +1 -1
  80. package/fesm2020/carbon-components-angular-input.mjs +193 -107
  81. package/fesm2020/carbon-components-angular-input.mjs.map +1 -1
  82. package/fesm2020/carbon-components-angular-ui-shell.mjs +1 -1
  83. package/fesm2020/carbon-components-angular-ui-shell.mjs.map +1 -1
  84. package/input/text-area.directive.d.ts +1 -0
  85. package/input/textarea-label.component.d.ts +7 -1
  86. package/package.json +1 -1
  87. package/docs/storybook/7529.5272f30b.iframe.bundle.js +0 -1
  88. package/docs/storybook/input-textarea-stories.1a3b5e80.iframe.bundle.js +0 -1
  89. package/docs/storybook/main.7f34f466.iframe.bundle.js +0 -1
  90. package/docs/storybook/runtime~main.d2952d59.iframe.bundle.js +0 -1
@@ -139,9 +139,12 @@ class TextArea {
139
139
  get isLightTheme() {
140
140
  return this.theme === "light";
141
141
  }
142
+ get getInvalidAttr() {
143
+ return this.invalid ? true : undefined;
144
+ }
142
145
  }
143
146
  TextArea.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextArea, deps: [], target: i0.ɵɵFactoryTarget.Directive });
144
- TextArea.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: { theme: "theme", invalid: "invalid", skeleton: "skeleton" }, host: { properties: { "class.cds--text-area": "this.baseClass", "class.cds--text-area--invalid": "this.invalid", "class.cds--skeleton": "this.skeleton", "class.cds--text-area--light": "this.isLightTheme" } }, ngImport: i0 });
147
+ TextArea.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: { theme: "theme", invalid: "invalid", skeleton: "skeleton" }, host: { properties: { "class.cds--text-area": "this.baseClass", "class.cds--text-area--invalid": "this.invalid", "class.cds--skeleton": "this.skeleton", "class.cds--text-area--light": "this.isLightTheme", "attr.data-invalid": "this.getInvalidAttr" } }, ngImport: i0 });
145
148
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextArea, decorators: [{
146
149
  type: Directive,
147
150
  args: [{
@@ -165,6 +168,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
165
168
  }], isLightTheme: [{
166
169
  type: HostBinding,
167
170
  args: ["class.cds--text-area--light"]
171
+ }], getInvalidAttr: [{
172
+ type: HostBinding,
173
+ args: ["attr.data-invalid"]
168
174
  }] } });
169
175
 
170
176
  class PasswordInput {
@@ -324,12 +330,22 @@ class TextareaLabelComponent {
324
330
  * Set to `true` to show a warning (contents set by warningText)
325
331
  */
326
332
  this.warn = false;
333
+ /**
334
+ * Experimental: enable fluid state
335
+ */
336
+ this.fluid = false;
327
337
  this.labelClass = true;
328
338
  }
329
339
  get isReadonly() {
330
340
  var _a, _b, _c;
331
341
  return (_c = (_b = (_a = this.wrapper) === null || _a === void 0 ? void 0 : _a.nativeElement.querySelector("textarea")) === null || _b === void 0 ? void 0 : _b.readOnly) !== null && _c !== void 0 ? _c : false;
332
342
  }
343
+ get fluidClass() {
344
+ return this.fluid && !this.skeleton;
345
+ }
346
+ get fluidSkeletonClass() {
347
+ return this.fluid && this.skeleton;
348
+ }
333
349
  /**
334
350
  * Sets the id on the input item associated with the `Label`.
335
351
  */
@@ -365,117 +381,179 @@ class TextareaLabelComponent {
365
381
  */
366
382
  TextareaLabelComponent.labelCounter = 0;
367
383
  TextareaLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextareaLabelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
368
- TextareaLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: { labelInputID: "labelInputID", disabled: "disabled", skeleton: "skeleton", labelTemplate: "labelTemplate", textAreaTemplate: "textAreaTemplate", helperText: "helperText", invalidText: "invalidText", invalid: "invalid", warn: "warn", warnText: "warnText", ariaLabel: "ariaLabel" }, host: { properties: { "class.cds--form-item": "this.labelClass", "class.cds--text-area__wrapper--readonly": "this.isReadonly" } }, queries: [{ propertyName: "textArea", first: true, predicate: TextArea, descendants: true }], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }], ngImport: i0, template: `
369
- <label
370
- [for]="labelInputID"
371
- [attr.aria-label]="ariaLabel"
372
- class="cds--label"
373
- [ngClass]="{
374
- 'cds--label--disabled': disabled,
375
- 'cds--skeleton': skeleton
376
- }">
377
- <ng-template *ngIf="labelTemplate; else labelContent" [ngTemplateOutlet]="labelTemplate"></ng-template>
378
- <ng-template #labelContent>
379
- <ng-content></ng-content>
380
- </ng-template>
381
- </label>
382
- <div
383
- class="cds--text-area__wrapper"
384
- [ngClass]="{
385
- 'cds--text-input__field-wrapper--warning': warn
386
- }"
387
- [attr.data-invalid]="(invalid ? true : null)"
388
- #wrapper>
389
- <svg
390
- *ngIf="invalid"
391
- cdsIcon="warning--filled"
392
- size="16"
393
- class="cds--text-area__invalid-icon">
394
- </svg>
395
- <svg
396
- *ngIf="!invalid && warn"
397
- cdsIcon="warning--alt--filled"
398
- size="16"
399
- class="cds--text-input__invalid-icon cds--text-input__invalid-icon--warning">
400
- </svg>
401
- <ng-template *ngIf="textAreaTemplate; else textAreaContent" [ngTemplateOutlet]="textAreaTemplate"></ng-template>
402
- <ng-template #textAreaContent>
403
- <ng-content select="[cdsTextArea],[ibmTextArea],textarea"></ng-content>
404
- </ng-template>
405
- </div>
406
- <div
407
- *ngIf="!skeleton && helperText && !invalid && !warn"
408
- class="cds--form__helper-text"
409
- [ngClass]="{'cds--form__helper-text--disabled': disabled}">
410
- <ng-container *ngIf="!isTemplate(helperText)">{{helperText}}</ng-container>
411
- <ng-template *ngIf="isTemplate(helperText)" [ngTemplateOutlet]="helperText"></ng-template>
412
- </div>
413
- <div *ngIf="invalid" class="cds--form-requirement">
414
- <ng-container *ngIf="!isTemplate(invalidText)">{{invalidText}}</ng-container>
415
- <ng-template *ngIf="isTemplate(invalidText)" [ngTemplateOutlet]="invalidText"></ng-template>
416
- </div>
417
- <div *ngIf="!invalid && warn" class="cds--form-requirement">
418
- <ng-container *ngIf="!isTemplate(warnText)">{{warnText}}</ng-container>
419
- <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
420
- </div>
384
+ TextareaLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: { labelInputID: "labelInputID", disabled: "disabled", skeleton: "skeleton", labelTemplate: "labelTemplate", textAreaTemplate: "textAreaTemplate", helperText: "helperText", invalidText: "invalidText", invalid: "invalid", warn: "warn", warnText: "warnText", ariaLabel: "ariaLabel", fluid: "fluid" }, host: { properties: { "class.cds--form-item": "this.labelClass", "class.cds--text-area__wrapper--readonly": "this.isReadonly", "class.cds--text-area--fluid": "this.fluidClass", "class.cds--text-area--fluid__skeleton": "this.fluidSkeletonClass" } }, queries: [{ propertyName: "textArea", first: true, predicate: TextArea, descendants: true }], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }], ngImport: i0, template: `
385
+ <ng-container *ngIf="skeleton">
386
+ <span class="cds--label cds--skeleton"></span>
387
+ <div class="cds--text-area cds--skeleton"></div>
388
+ </ng-container>
389
+ <ng-container *ngIf="!skeleton">
390
+ <div class="cds--text-area__label-wrapper">
391
+ <label
392
+ [for]="labelInputID"
393
+ [attr.aria-label]="ariaLabel"
394
+ class="cds--label"
395
+ [ngClass]="{
396
+ 'cds--label--disabled': disabled
397
+ }">
398
+ <ng-template *ngIf="labelTemplate; else labelContent" [ngTemplateOutlet]="labelTemplate"></ng-template>
399
+ <ng-template #labelContent>
400
+ <ng-content></ng-content>
401
+ </ng-template>
402
+ </label>
403
+ </div>
404
+ <div
405
+ class="cds--text-area__wrapper"
406
+ [ngClass]="{
407
+ 'cds--text-area__wrapper--warn': warn
408
+ }"
409
+ [attr.data-invalid]="(invalid ? true : null)"
410
+ #wrapper>
411
+ <svg
412
+ *ngIf="!fluid && invalid"
413
+ cdsIcon="warning--filled"
414
+ size="16"
415
+ class="cds--text-area__invalid-icon">
416
+ </svg>
417
+ <svg
418
+ *ngIf="!fluid && !invalid && warn"
419
+ cdsIcon="warning--alt--filled"
420
+ size="16"
421
+ class="cds--text-area__invalid-icon cds--text-area__invalid-icon--warning">
422
+ </svg>
423
+ <ng-template *ngIf="textAreaTemplate; else textAreaContent" [ngTemplateOutlet]="textAreaTemplate"></ng-template>
424
+ <ng-template #textAreaContent>
425
+ <ng-content select="[cdsTextArea],[ibmTextArea],textarea"></ng-content>
426
+ </ng-template>
427
+
428
+ <ng-container *ngIf="fluid">
429
+ <hr class="cds--text-area__divider" />
430
+ <div *ngIf="invalid" class="cds--form-requirement">
431
+ <ng-container *ngIf="!isTemplate(invalidText)">{{invalidText}}</ng-container>
432
+ <ng-template *ngIf="isTemplate(invalidText)" [ngTemplateOutlet]="invalidText"></ng-template>
433
+ <svg
434
+ cdsIcon="warning--filled"
435
+ size="16"
436
+ class="cds--text-area__invalid-icon">
437
+ </svg>
438
+ </div>
439
+ <div *ngIf="!invalid && warn" class="cds--form-requirement">
440
+ <ng-container *ngIf="!isTemplate(warnText)">{{warnText}}</ng-container>
441
+ <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
442
+ <svg
443
+ cdsIcon="warning--alt--filled"
444
+ size="16"
445
+ class="cds--text-area__invalid-icon cds--text-area__invalid-icon--warning">
446
+ </svg>
447
+ </div>
448
+ </ng-container>
449
+ </div>
450
+ <ng-container *ngIf="!fluid">
451
+ <div
452
+ *ngIf="helperText && !invalid && !warn"
453
+ class="cds--form__helper-text"
454
+ [ngClass]="{'cds--form__helper-text--disabled': disabled}">
455
+ <ng-container *ngIf="!isTemplate(helperText)">{{helperText}}</ng-container>
456
+ <ng-template *ngIf="isTemplate(helperText)" [ngTemplateOutlet]="helperText"></ng-template>
457
+ </div>
458
+ <div *ngIf="invalid" class="cds--form-requirement">
459
+ <ng-container *ngIf="!isTemplate(invalidText)">{{invalidText}}</ng-container>
460
+ <ng-template *ngIf="isTemplate(invalidText)" [ngTemplateOutlet]="invalidText"></ng-template>
461
+ </div>
462
+ <div *ngIf="!invalid && warn" class="cds--form-requirement">
463
+ <ng-container *ngIf="!isTemplate(warnText)">{{warnText}}</ng-container>
464
+ <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
465
+ </div>
466
+ </ng-container>
467
+ </ng-container>
421
468
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }] });
422
469
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextareaLabelComponent, decorators: [{
423
470
  type: Component,
424
471
  args: [{
425
472
  selector: "cds-textarea-label, ibm-textarea-label",
426
473
  template: `
427
- <label
428
- [for]="labelInputID"
429
- [attr.aria-label]="ariaLabel"
430
- class="cds--label"
431
- [ngClass]="{
432
- 'cds--label--disabled': disabled,
433
- 'cds--skeleton': skeleton
434
- }">
435
- <ng-template *ngIf="labelTemplate; else labelContent" [ngTemplateOutlet]="labelTemplate"></ng-template>
436
- <ng-template #labelContent>
437
- <ng-content></ng-content>
438
- </ng-template>
439
- </label>
440
- <div
441
- class="cds--text-area__wrapper"
442
- [ngClass]="{
443
- 'cds--text-input__field-wrapper--warning': warn
444
- }"
445
- [attr.data-invalid]="(invalid ? true : null)"
446
- #wrapper>
447
- <svg
448
- *ngIf="invalid"
449
- cdsIcon="warning--filled"
450
- size="16"
451
- class="cds--text-area__invalid-icon">
452
- </svg>
453
- <svg
454
- *ngIf="!invalid && warn"
455
- cdsIcon="warning--alt--filled"
456
- size="16"
457
- class="cds--text-input__invalid-icon cds--text-input__invalid-icon--warning">
458
- </svg>
459
- <ng-template *ngIf="textAreaTemplate; else textAreaContent" [ngTemplateOutlet]="textAreaTemplate"></ng-template>
460
- <ng-template #textAreaContent>
461
- <ng-content select="[cdsTextArea],[ibmTextArea],textarea"></ng-content>
462
- </ng-template>
463
- </div>
464
- <div
465
- *ngIf="!skeleton && helperText && !invalid && !warn"
466
- class="cds--form__helper-text"
467
- [ngClass]="{'cds--form__helper-text--disabled': disabled}">
468
- <ng-container *ngIf="!isTemplate(helperText)">{{helperText}}</ng-container>
469
- <ng-template *ngIf="isTemplate(helperText)" [ngTemplateOutlet]="helperText"></ng-template>
470
- </div>
471
- <div *ngIf="invalid" class="cds--form-requirement">
472
- <ng-container *ngIf="!isTemplate(invalidText)">{{invalidText}}</ng-container>
473
- <ng-template *ngIf="isTemplate(invalidText)" [ngTemplateOutlet]="invalidText"></ng-template>
474
- </div>
475
- <div *ngIf="!invalid && warn" class="cds--form-requirement">
476
- <ng-container *ngIf="!isTemplate(warnText)">{{warnText}}</ng-container>
477
- <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
478
- </div>
474
+ <ng-container *ngIf="skeleton">
475
+ <span class="cds--label cds--skeleton"></span>
476
+ <div class="cds--text-area cds--skeleton"></div>
477
+ </ng-container>
478
+ <ng-container *ngIf="!skeleton">
479
+ <div class="cds--text-area__label-wrapper">
480
+ <label
481
+ [for]="labelInputID"
482
+ [attr.aria-label]="ariaLabel"
483
+ class="cds--label"
484
+ [ngClass]="{
485
+ 'cds--label--disabled': disabled
486
+ }">
487
+ <ng-template *ngIf="labelTemplate; else labelContent" [ngTemplateOutlet]="labelTemplate"></ng-template>
488
+ <ng-template #labelContent>
489
+ <ng-content></ng-content>
490
+ </ng-template>
491
+ </label>
492
+ </div>
493
+ <div
494
+ class="cds--text-area__wrapper"
495
+ [ngClass]="{
496
+ 'cds--text-area__wrapper--warn': warn
497
+ }"
498
+ [attr.data-invalid]="(invalid ? true : null)"
499
+ #wrapper>
500
+ <svg
501
+ *ngIf="!fluid && invalid"
502
+ cdsIcon="warning--filled"
503
+ size="16"
504
+ class="cds--text-area__invalid-icon">
505
+ </svg>
506
+ <svg
507
+ *ngIf="!fluid && !invalid && warn"
508
+ cdsIcon="warning--alt--filled"
509
+ size="16"
510
+ class="cds--text-area__invalid-icon cds--text-area__invalid-icon--warning">
511
+ </svg>
512
+ <ng-template *ngIf="textAreaTemplate; else textAreaContent" [ngTemplateOutlet]="textAreaTemplate"></ng-template>
513
+ <ng-template #textAreaContent>
514
+ <ng-content select="[cdsTextArea],[ibmTextArea],textarea"></ng-content>
515
+ </ng-template>
516
+
517
+ <ng-container *ngIf="fluid">
518
+ <hr class="cds--text-area__divider" />
519
+ <div *ngIf="invalid" class="cds--form-requirement">
520
+ <ng-container *ngIf="!isTemplate(invalidText)">{{invalidText}}</ng-container>
521
+ <ng-template *ngIf="isTemplate(invalidText)" [ngTemplateOutlet]="invalidText"></ng-template>
522
+ <svg
523
+ cdsIcon="warning--filled"
524
+ size="16"
525
+ class="cds--text-area__invalid-icon">
526
+ </svg>
527
+ </div>
528
+ <div *ngIf="!invalid && warn" class="cds--form-requirement">
529
+ <ng-container *ngIf="!isTemplate(warnText)">{{warnText}}</ng-container>
530
+ <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
531
+ <svg
532
+ cdsIcon="warning--alt--filled"
533
+ size="16"
534
+ class="cds--text-area__invalid-icon cds--text-area__invalid-icon--warning">
535
+ </svg>
536
+ </div>
537
+ </ng-container>
538
+ </div>
539
+ <ng-container *ngIf="!fluid">
540
+ <div
541
+ *ngIf="helperText && !invalid && !warn"
542
+ class="cds--form__helper-text"
543
+ [ngClass]="{'cds--form__helper-text--disabled': disabled}">
544
+ <ng-container *ngIf="!isTemplate(helperText)">{{helperText}}</ng-container>
545
+ <ng-template *ngIf="isTemplate(helperText)" [ngTemplateOutlet]="helperText"></ng-template>
546
+ </div>
547
+ <div *ngIf="invalid" class="cds--form-requirement">
548
+ <ng-container *ngIf="!isTemplate(invalidText)">{{invalidText}}</ng-container>
549
+ <ng-template *ngIf="isTemplate(invalidText)" [ngTemplateOutlet]="invalidText"></ng-template>
550
+ </div>
551
+ <div *ngIf="!invalid && warn" class="cds--form-requirement">
552
+ <ng-container *ngIf="!isTemplate(warnText)">{{warnText}}</ng-container>
553
+ <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
554
+ </div>
555
+ </ng-container>
556
+ </ng-container>
479
557
  `
480
558
  }]
481
559
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { labelInputID: [{
@@ -500,6 +578,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
500
578
  type: Input
501
579
  }], ariaLabel: [{
502
580
  type: Input
581
+ }], fluid: [{
582
+ type: Input
503
583
  }], wrapper: [{
504
584
  type: ViewChild,
505
585
  args: ["wrapper", { static: false }]
@@ -512,6 +592,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
512
592
  }], isReadonly: [{
513
593
  type: HostBinding,
514
594
  args: ["class.cds--text-area__wrapper--readonly"]
595
+ }], fluidClass: [{
596
+ type: HostBinding,
597
+ args: ["class.cds--text-area--fluid"]
598
+ }], fluidSkeletonClass: [{
599
+ type: HostBinding,
600
+ args: ["class.cds--text-area--fluid__skeleton"]
515
601
  }] } });
516
602
 
517
603
  /**
@@ -1274,7 +1360,7 @@ Label.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0
1274
1360
  <ng-template *ngIf="isTemplate(warnText)" [ngTemplateOutlet]="warnText"></ng-template>
1275
1361
  </div>
1276
1362
  </ng-template>
1277
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: PasswordInputLabelComponent, selector: "cds-password-label, ibm-password-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "passwordInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "hidePasswordLabel", "showPasswordLabel"] }] });
1363
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "component", type: TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: PasswordInputLabelComponent, selector: "cds-password-label, ibm-password-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "passwordInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "hidePasswordLabel", "showPasswordLabel"] }] });
1278
1364
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: Label, decorators: [{
1279
1365
  type: Component,
1280
1366
  args: [{