primeng 17.1.0 → 17.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/contextmenu/contextmenu.d.ts +11 -1
  2. package/esm2022/accordion/accordion.mjs +7 -3
  3. package/esm2022/autocomplete/autocomplete.mjs +8 -8
  4. package/esm2022/blockui/blockui.mjs +6 -3
  5. package/esm2022/contextmenu/contextmenu.mjs +46 -10
  6. package/esm2022/dropdown/dropdown.mjs +3 -3
  7. package/esm2022/galleria/galleria.mjs +10 -6
  8. package/esm2022/icons/sortamountdown/sortamountdown.mjs +3 -43
  9. package/esm2022/icons/sortamountupalt/sortamountupalt.mjs +3 -43
  10. package/esm2022/inputgroup/inputgroup.mjs +22 -7
  11. package/esm2022/inputgroupaddon/inputgroupaddon.mjs +22 -7
  12. package/esm2022/inputnumber/inputnumber.mjs +4 -1
  13. package/esm2022/multiselect/multiselect.mjs +7 -1
  14. package/esm2022/panelmenu/panelmenu.mjs +35 -53
  15. package/esm2022/picklist/picklist.mjs +5 -3
  16. package/esm2022/table/columnfilter.interface.mjs +2 -0
  17. package/esm2022/table/public_api.mjs +2 -1
  18. package/esm2022/table/table.mjs +121 -10
  19. package/esm2022/tristatecheckbox/tristatecheckbox.mjs +3 -3
  20. package/fesm2022/primeng-accordion.mjs +6 -2
  21. package/fesm2022/primeng-accordion.mjs.map +1 -1
  22. package/fesm2022/primeng-autocomplete.mjs +7 -7
  23. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  24. package/fesm2022/primeng-blockui.mjs +5 -2
  25. package/fesm2022/primeng-blockui.mjs.map +1 -1
  26. package/fesm2022/primeng-contextmenu.mjs +45 -9
  27. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  28. package/fesm2022/primeng-dropdown.mjs +2 -2
  29. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  30. package/fesm2022/primeng-galleria.mjs +9 -5
  31. package/fesm2022/primeng-galleria.mjs.map +1 -1
  32. package/fesm2022/primeng-icons-sortamountdown.mjs +2 -42
  33. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  34. package/fesm2022/primeng-icons-sortamountupalt.mjs +2 -42
  35. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  36. package/fesm2022/primeng-inputgroup.mjs +21 -6
  37. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  38. package/fesm2022/primeng-inputgroupaddon.mjs +21 -6
  39. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  40. package/fesm2022/primeng-inputnumber.mjs +3 -0
  41. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  42. package/fesm2022/primeng-multiselect.mjs +6 -0
  43. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  44. package/fesm2022/primeng-panelmenu.mjs +34 -52
  45. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  46. package/fesm2022/primeng-picklist.mjs +4 -2
  47. package/fesm2022/primeng-picklist.mjs.map +1 -1
  48. package/fesm2022/primeng-table.mjs +120 -9
  49. package/fesm2022/primeng-table.mjs.map +1 -1
  50. package/fesm2022/primeng-tristatecheckbox.mjs +2 -2
  51. package/fesm2022/primeng-tristatecheckbox.mjs.map +1 -1
  52. package/galleria/galleria.d.ts +1 -0
  53. package/inputgroup/inputgroup.d.ts +13 -1
  54. package/inputgroupaddon/inputgroupaddon.d.ts +13 -1
  55. package/package.json +242 -242
  56. package/panelmenu/panelmenu.d.ts +8 -11
  57. package/resources/themes/arya-blue/theme.css +12 -16
  58. package/resources/themes/arya-green/theme.css +12 -16
  59. package/resources/themes/arya-orange/theme.css +12 -16
  60. package/resources/themes/arya-purple/theme.css +12 -16
  61. package/resources/themes/bootstrap4-dark-blue/theme.css +12 -16
  62. package/resources/themes/bootstrap4-dark-purple/theme.css +12 -16
  63. package/resources/themes/bootstrap4-light-blue/theme.css +12 -16
  64. package/resources/themes/bootstrap4-light-purple/theme.css +12 -16
  65. package/resources/themes/fluent-light/theme.css +12 -16
  66. package/resources/themes/lara-dark-blue/theme.css +12 -16
  67. package/resources/themes/lara-dark-indigo/theme.css +12 -16
  68. package/resources/themes/lara-dark-purple/theme.css +12 -16
  69. package/resources/themes/lara-dark-teal/theme.css +12 -16
  70. package/resources/themes/lara-light-blue/theme.css +12 -16
  71. package/resources/themes/lara-light-indigo/theme.css +12 -16
  72. package/resources/themes/lara-light-purple/theme.css +12 -16
  73. package/resources/themes/lara-light-teal/theme.css +55 -59
  74. package/resources/themes/luna-amber/theme.css +12 -16
  75. package/resources/themes/luna-blue/theme.css +12 -16
  76. package/resources/themes/luna-green/theme.css +12 -16
  77. package/resources/themes/luna-pink/theme.css +12 -16
  78. package/resources/themes/md-dark-deeppurple/theme.css +12 -16
  79. package/resources/themes/md-dark-indigo/theme.css +12 -16
  80. package/resources/themes/md-light-deeppurple/theme.css +12 -16
  81. package/resources/themes/md-light-indigo/theme.css +12 -16
  82. package/resources/themes/mdc-dark-deeppurple/theme.css +12 -16
  83. package/resources/themes/mdc-dark-indigo/theme.css +12 -16
  84. package/resources/themes/mdc-light-deeppurple/theme.css +12 -16
  85. package/resources/themes/mdc-light-indigo/theme.css +12 -16
  86. package/resources/themes/mira/theme.css +12 -16
  87. package/resources/themes/nano/theme.css +12 -16
  88. package/resources/themes/nova/theme.css +12 -16
  89. package/resources/themes/nova-accent/theme.css +12 -16
  90. package/resources/themes/nova-alt/theme.css +12 -16
  91. package/resources/themes/rhea/theme.css +12 -16
  92. package/resources/themes/saga-blue/theme.css +12 -16
  93. package/resources/themes/saga-green/theme.css +12 -16
  94. package/resources/themes/saga-orange/theme.css +12 -16
  95. package/resources/themes/saga-purple/theme.css +12 -16
  96. package/resources/themes/soho-dark/theme.css +12 -16
  97. package/resources/themes/soho-light/theme.css +12 -16
  98. package/resources/themes/tailwind-light/theme.css +12 -16
  99. package/resources/themes/vela-blue/theme.css +12 -16
  100. package/resources/themes/vela-green/theme.css +12 -16
  101. package/resources/themes/vela-orange/theme.css +12 -16
  102. package/resources/themes/vela-purple/theme.css +12 -16
  103. package/resources/themes/viva-dark/theme.css +12 -16
  104. package/resources/themes/viva-light/theme.css +12 -16
  105. package/table/columnfilter.interface.d.ts +35 -0
  106. package/table/public_api.d.ts +1 -0
  107. package/table/table.d.ts +106 -0
@@ -2111,7 +2111,7 @@ class Table {
2111
2111
  });
2112
2112
  }
2113
2113
  }
2114
- if (this.resizableColumns && this.resizeColumnElement && this.resizeColumnElement.isSameNode(this.draggedColumn)) {
2114
+ if (this.resizableColumns && this.resizeColumnElement) {
2115
2115
  let width = this.columnResizeMode === 'expand' ? this._initialColWidths : this._totalTableWidth();
2116
2116
  ObjectUtils.reorderArray(width, dragIndex + 1, dropIndex + 1);
2117
2117
  this.updateStyleElement(width, dragIndex, null, null);
@@ -5222,6 +5222,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
5222
5222
  type: HostListener,
5223
5223
  args: ['drop', ['$event']]
5224
5224
  }] } });
5225
+ /**
5226
+ * Column Filter element of Table.
5227
+ * @group Components
5228
+ */
5225
5229
  class ColumnFilter {
5226
5230
  document;
5227
5231
  el;
@@ -5230,30 +5234,131 @@ class ColumnFilter {
5230
5234
  config;
5231
5235
  overlayService;
5232
5236
  cd;
5237
+ /**
5238
+ * Property represented by the column.
5239
+ * @group Props
5240
+ */
5233
5241
  field;
5242
+ /**
5243
+ * Type of the input.
5244
+ * @group Props
5245
+ */
5234
5246
  type = 'text';
5247
+ /**
5248
+ * Filter display.
5249
+ * @group Props
5250
+ */
5235
5251
  display = 'row';
5252
+ /**
5253
+ * Decides whether to display filter menu popup.
5254
+ * @group Props
5255
+ */
5236
5256
  showMenu = true;
5257
+ /**
5258
+ * Filter match mode.
5259
+ * @group Props
5260
+ */
5237
5261
  matchMode;
5262
+ /**
5263
+ * Filter operator.
5264
+ * @defaultValue 'AND'
5265
+ * @group Props
5266
+ */
5238
5267
  operator = FilterOperator.AND;
5268
+ /**
5269
+ * Decides whether to display filter operator.
5270
+ * @group Props
5271
+ */
5239
5272
  showOperator = true;
5273
+ /**
5274
+ * Decides whether to display clear filter button.
5275
+ * @group Props
5276
+ */
5240
5277
  showClearButton = true;
5278
+ /**
5279
+ * Decides whether to display apply filter button.
5280
+ * @group Props
5281
+ */
5241
5282
  showApplyButton = true;
5283
+ /**
5284
+ * Decides whether to display filter match modes.
5285
+ * @group Props
5286
+ */
5242
5287
  showMatchModes = true;
5288
+ /**
5289
+ * Decides whether to display add filter button.
5290
+ * @group Props
5291
+ */
5243
5292
  showAddButton = true;
5293
+ /**
5294
+ * Decides whether to close popup on clear button click.
5295
+ * @group Props
5296
+ */
5244
5297
  hideOnClear = false;
5298
+ /**
5299
+ * Filter placeholder.
5300
+ * @group Props
5301
+ */
5245
5302
  placeholder;
5303
+ /**
5304
+ * Filter match mode options.
5305
+ * @group Props
5306
+ */
5246
5307
  matchModeOptions;
5308
+ /**
5309
+ * Defines maximum amount of constraints.
5310
+ * @group Props
5311
+ */
5247
5312
  maxConstraints = 2;
5313
+ /**
5314
+ * Defines minimum fraction of digits.
5315
+ * @group Props
5316
+ */
5248
5317
  minFractionDigits;
5318
+ /**
5319
+ * Defines maximum fraction of digits.
5320
+ * @group Props
5321
+ */
5249
5322
  maxFractionDigits;
5323
+ /**
5324
+ * Defines prefix of the filter.
5325
+ * @group Props
5326
+ */
5250
5327
  prefix;
5328
+ /**
5329
+ * Defines suffix of the filter.
5330
+ * @group Props
5331
+ */
5251
5332
  suffix;
5333
+ /**
5334
+ * Defines filter locale.
5335
+ * @group Props
5336
+ */
5252
5337
  locale;
5338
+ /**
5339
+ * Defines filter locale matcher.
5340
+ * @group Props
5341
+ */
5253
5342
  localeMatcher;
5343
+ /**
5344
+ * Enables currency input.
5345
+ * @group Props
5346
+ */
5254
5347
  currency;
5348
+ /**
5349
+ * Defines the display of the currency input.
5350
+ * @group Props
5351
+ */
5255
5352
  currencyDisplay;
5353
+ /**
5354
+ * Defines if filter grouping will be enabled.
5355
+ * @group Props
5356
+ */
5256
5357
  useGrouping = true;
5358
+ /**
5359
+ * Defines the visibility of buttons.
5360
+ * @group Props
5361
+ */
5257
5362
  showButtons = true;
5258
5363
  icon;
5259
5364
  clearButtonViewChild;
@@ -5265,6 +5370,7 @@ class ColumnFilter {
5265
5370
  filterIconTemplate;
5266
5371
  removeRuleIconTemplate;
5267
5372
  addRuleIconTemplate;
5373
+ clearFilterIconTemplate;
5268
5374
  operatorOptions;
5269
5375
  overlayVisible;
5270
5376
  overlay;
@@ -5370,6 +5476,9 @@ class ColumnFilter {
5370
5476
  case 'filtericon':
5371
5477
  this.filterIconTemplate = item.template;
5372
5478
  break;
5479
+ case 'clearfiltericon':
5480
+ this.clearFilterIconTemplate = item.template;
5481
+ break;
5373
5482
  case 'removeruleicon':
5374
5483
  this.removeRuleIconTemplate = item.template;
5375
5484
  break;
@@ -5696,8 +5805,8 @@ class ColumnFilter {
5696
5805
  </span>
5697
5806
  </button>
5698
5807
  <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{ 'p-hidden-space': !hasRowFilter() }" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()" [attr.aria-label]="clearButtonLabel">
5699
- <FilterSlashIcon *ngIf="!clearIconTemplate" />
5700
- <ng-template *ngTemplateOutlet="clearFilterIcon"></ng-template>
5808
+ <FilterSlashIcon *ngIf="!clearFilterIconTemplate" />
5809
+ <ng-template *ngTemplateOutlet="clearFilterIconTemplate"></ng-template>
5701
5810
  </button>
5702
5811
  <div
5703
5812
  *ngIf="showMenu && overlayVisible"
@@ -5765,6 +5874,7 @@ class ColumnFilter {
5765
5874
  (click)="removeConstraint(fieldConstraint)"
5766
5875
  pRipple
5767
5876
  [attr.aria-label]="removeRuleButtonLabel"
5877
+ [label]="removeRuleButtonLabel"
5768
5878
  >
5769
5879
  <TrashIcon *ngIf="!removeRuleIconTemplate" />
5770
5880
  <ng-template *ngTemplateOutlet="removeRuleIconTemplate"></ng-template>
@@ -5773,14 +5883,14 @@ class ColumnFilter {
5773
5883
  </div>
5774
5884
  </div>
5775
5885
  <div class="p-column-filter-add-rule" *ngIf="isShowAddConstraint">
5776
- <button type="button" pButton [attr.aria-label]="addRuleButtonLabel" class="p-column-filter-add-button p-button-text p-button-sm" (click)="addConstraint()" pRipple>
5886
+ <button type="button" pButton [label]="addRuleButtonLabel" [attr.aria-label]="addRuleButtonLabel" class="p-column-filter-add-button p-button-text p-button-sm" (click)="addConstraint()" pRipple>
5777
5887
  <PlusIcon *ngIf="!addRuleIconTemplate" />
5778
5888
  <ng-template *ngTemplateOutlet="addRuleIconTemplate"></ng-template>
5779
5889
  </button>
5780
5890
  </div>
5781
5891
  <div class="p-column-filter-buttonbar">
5782
5892
  <button #clearBtn *ngIf="showClearButton" type="button" pButton class="p-button-outlined p-button-sm" (click)="clearFilter()" [attr.aria-label]="clearButtonLabel" [label]="clearButtonLabel" pRipple></button>
5783
- <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [attr.aria-label]="applyButtonLabel" pRipple [label]="applyButtonLabel"></button>
5893
+ <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [label]="applyButtonLabel" pRipple [attr.aria-label]="applyButtonLabel"></button>
5784
5894
  </div>
5785
5895
  </ng-template>
5786
5896
  <ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>
@@ -5832,8 +5942,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
5832
5942
  </span>
5833
5943
  </button>
5834
5944
  <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{ 'p-hidden-space': !hasRowFilter() }" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()" [attr.aria-label]="clearButtonLabel">
5835
- <FilterSlashIcon *ngIf="!clearIconTemplate" />
5836
- <ng-template *ngTemplateOutlet="clearFilterIcon"></ng-template>
5945
+ <FilterSlashIcon *ngIf="!clearFilterIconTemplate" />
5946
+ <ng-template *ngTemplateOutlet="clearFilterIconTemplate"></ng-template>
5837
5947
  </button>
5838
5948
  <div
5839
5949
  *ngIf="showMenu && overlayVisible"
@@ -5901,6 +6011,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
5901
6011
  (click)="removeConstraint(fieldConstraint)"
5902
6012
  pRipple
5903
6013
  [attr.aria-label]="removeRuleButtonLabel"
6014
+ [label]="removeRuleButtonLabel"
5904
6015
  >
5905
6016
  <TrashIcon *ngIf="!removeRuleIconTemplate" />
5906
6017
  <ng-template *ngTemplateOutlet="removeRuleIconTemplate"></ng-template>
@@ -5909,14 +6020,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
5909
6020
  </div>
5910
6021
  </div>
5911
6022
  <div class="p-column-filter-add-rule" *ngIf="isShowAddConstraint">
5912
- <button type="button" pButton [attr.aria-label]="addRuleButtonLabel" class="p-column-filter-add-button p-button-text p-button-sm" (click)="addConstraint()" pRipple>
6023
+ <button type="button" pButton [label]="addRuleButtonLabel" [attr.aria-label]="addRuleButtonLabel" class="p-column-filter-add-button p-button-text p-button-sm" (click)="addConstraint()" pRipple>
5913
6024
  <PlusIcon *ngIf="!addRuleIconTemplate" />
5914
6025
  <ng-template *ngTemplateOutlet="addRuleIconTemplate"></ng-template>
5915
6026
  </button>
5916
6027
  </div>
5917
6028
  <div class="p-column-filter-buttonbar">
5918
6029
  <button #clearBtn *ngIf="showClearButton" type="button" pButton class="p-button-outlined p-button-sm" (click)="clearFilter()" [attr.aria-label]="clearButtonLabel" [label]="clearButtonLabel" pRipple></button>
5919
- <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [attr.aria-label]="applyButtonLabel" pRipple [label]="applyButtonLabel"></button>
6030
+ <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [label]="applyButtonLabel" pRipple [attr.aria-label]="applyButtonLabel"></button>
5920
6031
  </div>
5921
6032
  </ng-template>
5922
6033
  <ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>