@seniorsistemas/angular-components 17.15.5 → 17.16.1

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 (35) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +374 -2
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/dynamic-form/configurations/fields/select-field.d.ts +2 -0
  6. package/components/index.d.ts +1 -0
  7. package/components/picklist/index.d.ts +4 -0
  8. package/components/picklist/picklist/models/picklist-models.d.ts +8 -0
  9. package/components/picklist/picklist/picklist.component.d.ts +71 -0
  10. package/components/picklist/picklist.module.d.ts +2 -0
  11. package/esm2015/components/dynamic-form/components/fields/select/select-field.component.js +2 -2
  12. package/esm2015/components/dynamic-form/configurations/fields/select-field.js +2 -1
  13. package/esm2015/components/index.js +2 -1
  14. package/esm2015/components/picklist/index.js +5 -0
  15. package/esm2015/components/picklist/picklist/models/picklist-models.js +6 -0
  16. package/esm2015/components/picklist/picklist/picklist.component.js +305 -0
  17. package/esm2015/components/picklist/picklist.module.js +25 -0
  18. package/esm2015/locale/fallback.js +7 -2
  19. package/esm2015/seniorsistemas-angular-components.js +2 -1
  20. package/esm5/components/dynamic-form/components/fields/select/select-field.component.js +2 -2
  21. package/esm5/components/dynamic-form/configurations/fields/select-field.js +2 -1
  22. package/esm5/components/index.js +2 -1
  23. package/esm5/components/picklist/index.js +5 -0
  24. package/esm5/components/picklist/picklist/models/picklist-models.js +6 -0
  25. package/esm5/components/picklist/picklist/picklist.component.js +339 -0
  26. package/esm5/components/picklist/picklist.module.js +28 -0
  27. package/esm5/locale/fallback.js +7 -2
  28. package/esm5/seniorsistemas-angular-components.js +2 -1
  29. package/fesm2015/seniorsistemas-angular-components.js +330 -4
  30. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  31. package/fesm5/seniorsistemas-angular-components.js +367 -4
  32. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  33. package/package.json +1 -1
  34. package/seniorsistemas-angular-components.d.ts +1 -0
  35. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -6696,6 +6696,7 @@
6696
6696
  _this.onChange = config.onChange;
6697
6697
  _this.emptyMessage = config.emptyMessage;
6698
6698
  _this.editable = config.editable;
6699
+ _this.filter = config.filter;
6699
6700
  return _this;
6700
6701
  }
6701
6702
  return SelectField;
@@ -10763,7 +10764,7 @@
10763
10764
  ], SelectFieldComponent.prototype, "formControl", void 0);
10764
10765
  SelectFieldComponent = __decorate([
10765
10766
  core.Component({
10766
- template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<p-dropdown\n *ngIf=\"!field.multiple\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [placeholder]=\"field.placeholder || ' '\"\n [formControl]=\"formControl\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [showClear]=\"field.showClear\"\n dataKey=\"{{field.dataKey}}\"\n optionLabel=\"{{field.optionLabel}}\"\n [autoDisplayFirst]=\"field.autoDisplayFirst\"\n [appendTo]=\"field.appendTo || 'body'\"\n [editable]=\"field.editable\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-dropdown>\n<p-multiSelect\n *ngIf=\"field.multiple\"\n [formControl]=\"formControl\"\n [name]=\"field.name\"\n [inputId]=\"(field.id || field.name)\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [defaultLabel]=\"field.placeholder\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [emptyFilterMessage]=\"field.emptyMessage || 'platform.angular_components.no_records_found' | translate\"\n [showDelay]=\"500\"\n [selectedItemsLabel]=\"field.multipleSelectedLabel || 'platform.angular_components.total_records_selected' | translate\"\n [appendTo]=\"field.appendTo || 'body'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-multiSelect>\n\n"
10767
+ template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<p-dropdown\n *ngIf=\"!field.multiple\"\n [filter]=\"field.filter\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [placeholder]=\"field.placeholder || ' '\"\n [formControl]=\"formControl\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [showClear]=\"field.showClear\"\n dataKey=\"{{field.dataKey}}\"\n optionLabel=\"{{field.optionLabel}}\"\n [autoDisplayFirst]=\"field.autoDisplayFirst\"\n [appendTo]=\"field.appendTo || 'body'\"\n [editable]=\"field.editable\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-dropdown>\n<p-multiSelect\n *ngIf=\"field.multiple\"\n [formControl]=\"formControl\"\n [name]=\"field.name\"\n [inputId]=\"(field.id || field.name)\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [defaultLabel]=\"field.placeholder\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [emptyFilterMessage]=\"field.emptyMessage || 'platform.angular_components.no_records_found' | translate\"\n [showDelay]=\"500\"\n [selectedItemsLabel]=\"field.multipleSelectedLabel || 'platform.angular_components.total_records_selected' | translate\"\n [appendTo]=\"field.appendTo || 'body'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-multiSelect>\n\n"
10767
10768
  })
10768
10769
  ], SelectFieldComponent);
10769
10770
  return SelectFieldComponent;
@@ -20256,6 +20257,363 @@
20256
20257
  return LabelValueModule;
20257
20258
  }());
20258
20259
 
20260
+
20261
+ (function (PicklistTemplateTypes) {
20262
+ PicklistTemplateTypes["ItemToSelect"] = "item-to-select";
20263
+ PicklistTemplateTypes["SelectedItem"] = "selected-item";
20264
+ })(exports.PicklistTemplateTypes || (exports.PicklistTemplateTypes = {}));
20265
+
20266
+ var PicklistComponent = /** @class */ (function () {
20267
+ function PicklistComponent(cdr) {
20268
+ this.cdr = cdr;
20269
+ this.itensToSelect = [];
20270
+ this.selectedItens = [];
20271
+ this.showCheckbox = false;
20272
+ this.filterBy = '';
20273
+ this.selectedItensChange = new core.EventEmitter();
20274
+ this.itensToSelectChange = new core.EventEmitter();
20275
+ this.availableItensFilter = '';
20276
+ this.selectedItensFilter = '';
20277
+ this.itensToSelectFilterUtil = {
20278
+ rawItensToSelect: [],
20279
+ filteredItensToSelect: [],
20280
+ };
20281
+ this.selectedItensFilterUtil = {
20282
+ rawSelectedItens: [],
20283
+ filteredSelectedItens: [],
20284
+ };
20285
+ this.selectedItensMap = new Set();
20286
+ this.itensToSelectId = randomHash('itensToSelect');
20287
+ this.selectedItensId = randomHash('selectedItens');
20288
+ }
20289
+ PicklistComponent.prototype.ngAfterViewInit = function () {
20290
+ var _a, _b;
20291
+ this.itemToSelectTemplate = (_a = this.templates.find(function (x) { return x.type === exports.PicklistTemplateTypes.ItemToSelect; })) === null || _a === void 0 ? void 0 : _a.template;
20292
+ this.itemSelectedTemplate = (_b = this.templates.find(function (x) { return x.type === exports.PicklistTemplateTypes.SelectedItem; })) === null || _b === void 0 ? void 0 : _b.template;
20293
+ if (!this.itemToSelectTemplate) {
20294
+ console.error("Missing template for " + exports.PicklistTemplateTypes.ItemToSelect + " add this template using sTemplate directive.");
20295
+ }
20296
+ if (!this.itemSelectedTemplate) {
20297
+ console.error("Missing template for " + exports.PicklistTemplateTypes.SelectedItem + " add this template using sTemplate directive.");
20298
+ }
20299
+ this.cdr.detectChanges();
20300
+ };
20301
+ PicklistComponent.prototype.ngOnChanges = function (changes) {
20302
+ if (changes.itensToSelect && changes.itensToSelect.firstChange) {
20303
+ this.itensToSelectFilterUtil = {
20304
+ rawItensToSelect: this.itensToSelect,
20305
+ filteredItensToSelect: this.itensToSelect,
20306
+ };
20307
+ }
20308
+ if (changes.selectedItens && changes.selectedItens.firstChange) {
20309
+ this.selectedItensFilterUtil = {
20310
+ filteredSelectedItens: this.selectedItens,
20311
+ rawSelectedItens: this.selectedItens
20312
+ };
20313
+ }
20314
+ };
20315
+ PicklistComponent.prototype.toggleSelected = function (internalPicklistItem, containerListId) {
20316
+ if (internalPicklistItem.disabled) {
20317
+ return;
20318
+ }
20319
+ this.unselectedItensByListId(this.getOppositiveId(containerListId));
20320
+ internalPicklistItem.selected = !internalPicklistItem.selected;
20321
+ if (internalPicklistItem.selected) {
20322
+ this.selectedItensMap.add(internalPicklistItem);
20323
+ }
20324
+ else {
20325
+ this.selectedItensMap.delete(internalPicklistItem);
20326
+ }
20327
+ this.cdr.detectChanges();
20328
+ };
20329
+ PicklistComponent.prototype.remove = function (all) {
20330
+ var _this = this;
20331
+ if (all === void 0) { all = false; }
20332
+ var itens = filterEnabled((all ? this.selectedItensFilterUtil.rawSelectedItens : this.selectedItensMap));
20333
+ if (!itens.length) {
20334
+ return;
20335
+ }
20336
+ itens.forEach(function (itemRemove) {
20337
+ _this.itensToSelect.push(itemRemove);
20338
+ itemRemove.selected = false;
20339
+ _this.selectedItensMap.delete(itemRemove);
20340
+ });
20341
+ this.selectedItens = this.selectedItens.filter(function (x) { return !itens.includes(x); });
20342
+ this.selectedItensFilterUtil.rawSelectedItens = this.selectedItens;
20343
+ this.filterSelectedItens();
20344
+ this.filterItensToSelect();
20345
+ this.emitData();
20346
+ this.cdr.detectChanges();
20347
+ };
20348
+ PicklistComponent.prototype.add = function (all) {
20349
+ var _this = this;
20350
+ if (all === void 0) { all = false; }
20351
+ var itens = filterEnabled((all ? this.itensToSelectFilterUtil.rawItensToSelect : this.selectedItensMap));
20352
+ if (!itens.length) {
20353
+ return;
20354
+ }
20355
+ itens.forEach(function (itemRemove) {
20356
+ _this.selectedItens.push(itemRemove);
20357
+ itemRemove.selected = false;
20358
+ _this.selectedItensMap.delete(itemRemove);
20359
+ });
20360
+ this.itensToSelect = this.itensToSelect.filter(function (x) { return !itens.includes(x); });
20361
+ this.itensToSelectFilterUtil.rawItensToSelect = this.itensToSelect;
20362
+ this.filterSelectedItens();
20363
+ this.filterItensToSelect();
20364
+ this.emitData();
20365
+ this.cdr.detectChanges();
20366
+ };
20367
+ PicklistComponent.prototype.filterItensToSelect = function () {
20368
+ var _this = this;
20369
+ var searchTerm = this.availableItensFilter;
20370
+ searchTerm = searchTerm.trim();
20371
+ if (searchTerm) {
20372
+ this.itensToSelectFilterUtil.filteredItensToSelect = this.itensToSelectFilterUtil.rawItensToSelect
20373
+ .filter(function (item) { return compareStrings(item.data[_this.filterBy], searchTerm); });
20374
+ }
20375
+ else {
20376
+ this.itensToSelectFilterUtil.filteredItensToSelect = this.itensToSelectFilterUtil.rawItensToSelect;
20377
+ }
20378
+ this.cdr.detectChanges();
20379
+ };
20380
+ PicklistComponent.prototype.filterSelectedItens = function () {
20381
+ var _this = this;
20382
+ var searchTerm = this.selectedItensFilter;
20383
+ searchTerm = searchTerm.trim();
20384
+ if (searchTerm) {
20385
+ this.selectedItensFilterUtil.filteredSelectedItens = this.selectedItensFilterUtil.rawSelectedItens
20386
+ .filter(function (item) { return compareStrings(item.data[_this.filterBy], searchTerm); });
20387
+ }
20388
+ else {
20389
+ this.selectedItensFilterUtil.filteredSelectedItens = this.selectedItensFilterUtil.rawSelectedItens;
20390
+ }
20391
+ };
20392
+ PicklistComponent.prototype.drop = function (event) {
20393
+ var isDifferentContainer = event.container !== event.previousContainer;
20394
+ if (!isDifferentContainer) {
20395
+ return;
20396
+ }
20397
+ var isRemovedItens = event.previousContainer.id === this.selectedItensId;
20398
+ if (isRemovedItens) {
20399
+ this.remove();
20400
+ }
20401
+ else {
20402
+ this.add();
20403
+ }
20404
+ this.cdr.detectChanges();
20405
+ };
20406
+ PicklistComponent.prototype.onDragStart = function (event, dragListId) {
20407
+ this.unselectedItensByListId(this.getOppositiveId(dragListId));
20408
+ event.source.data.selected = true;
20409
+ this.selectedItensMap.add(event.source.data);
20410
+ this.selectedItensMap.forEach(function (x) { return x.invisible = true; });
20411
+ this.cdr.detectChanges();
20412
+ };
20413
+ PicklistComponent.prototype.onDragRelease = function () {
20414
+ this.selectedItensMap.forEach(function (item) { return item.invisible = false; });
20415
+ };
20416
+ PicklistComponent.prototype.checkAllAvailableItensChange = function (checked) {
20417
+ this._checkAllSelectedItensChange(checked, this.itensToSelectFilterUtil.filteredItensToSelect, this.itensToSelectId);
20418
+ };
20419
+ PicklistComponent.prototype.checkAllSelectedItensChange = function (checked) {
20420
+ this._checkAllSelectedItensChange(checked, this.selectedItensFilterUtil.filteredSelectedItens, this.selectedItensId);
20421
+ };
20422
+ Object.defineProperty(PicklistComponent.prototype, "disableSelectedItensCheckbox", {
20423
+ get: function () {
20424
+ return filterEnabled(this.selectedItensFilterUtil.filteredSelectedItens).length === 0;
20425
+ },
20426
+ enumerable: true,
20427
+ configurable: true
20428
+ });
20429
+ Object.defineProperty(PicklistComponent.prototype, "disableItensToSelectCheckbox", {
20430
+ get: function () {
20431
+ return filterEnabled(this.itensToSelectFilterUtil.filteredItensToSelect).length === 0;
20432
+ },
20433
+ enumerable: true,
20434
+ configurable: true
20435
+ });
20436
+ Object.defineProperty(PicklistComponent.prototype, "itensToSelectAllSelected", {
20437
+ get: function () {
20438
+ return this._checkAllSelectedByList(this.itensToSelectFilterUtil.filteredItensToSelect);
20439
+ },
20440
+ enumerable: true,
20441
+ configurable: true
20442
+ });
20443
+ Object.defineProperty(PicklistComponent.prototype, "selectedItensAllSelected", {
20444
+ get: function () {
20445
+ return this._checkAllSelectedByList(this.selectedItensFilterUtil.filteredSelectedItens);
20446
+ },
20447
+ enumerable: true,
20448
+ configurable: true
20449
+ });
20450
+ Object.defineProperty(PicklistComponent.prototype, "canAddItens", {
20451
+ get: function () {
20452
+ return this.itensToSelect.filter(function (x) { return x === null || x === void 0 ? void 0 : x.selected; }).length > 0;
20453
+ },
20454
+ enumerable: true,
20455
+ configurable: true
20456
+ });
20457
+ Object.defineProperty(PicklistComponent.prototype, "canRemoveItens", {
20458
+ get: function () {
20459
+ return this.selectedItens.filter(function (x) { return x === null || x === void 0 ? void 0 : x.selected; }).length > 0;
20460
+ },
20461
+ enumerable: true,
20462
+ configurable: true
20463
+ });
20464
+ PicklistComponent.prototype._checkAllSelectedByList = function (list) {
20465
+ var _listItens = filterEnabled(list);
20466
+ if (!_listItens.length) {
20467
+ return false;
20468
+ }
20469
+ else {
20470
+ return _listItens.every(function (x) { return x.selected; });
20471
+ }
20472
+ };
20473
+ PicklistComponent.prototype._checkAllSelectedItensChange = function (checked, list, listId) {
20474
+ var _this = this;
20475
+ this.unselectedItensByListId(listId === this.selectedItensId ? this.itensToSelectId : this.selectedItensId);
20476
+ filterEnabled(list).forEach(function (item) {
20477
+ item.selected = checked;
20478
+ _this.selectedItensMap.add(item);
20479
+ });
20480
+ this.cdr.detectChanges();
20481
+ };
20482
+ PicklistComponent.prototype.unselectedItensByListId = function (listId) {
20483
+ var _this = this;
20484
+ var clearList = this.getAllElementsByListId(listId);
20485
+ clearList.forEach(function (x) {
20486
+ x.selected = false;
20487
+ _this.selectedItensMap.delete(x);
20488
+ });
20489
+ this.cdr.detectChanges();
20490
+ };
20491
+ PicklistComponent.prototype.getAllElementsByListId = function (listId) {
20492
+ return listId === this.selectedItensId ? this.selectedItensFilterUtil.rawSelectedItens : this.itensToSelectFilterUtil.rawItensToSelect;
20493
+ };
20494
+ PicklistComponent.prototype.getOppositiveId = function (listId) {
20495
+ return listId === this.selectedItensId ? this.itensToSelectId : this.selectedItensId;
20496
+ };
20497
+ PicklistComponent.prototype.emitData = function () {
20498
+ this.itensToSelectChange.emit(parseValueEmit(this.itensToSelect));
20499
+ this.selectedItensChange.emit(parseValueEmit(this.selectedItens));
20500
+ };
20501
+ PicklistComponent.ctorParameters = function () { return [
20502
+ { type: core.ChangeDetectorRef }
20503
+ ]; };
20504
+ __decorate([
20505
+ core.Input()
20506
+ ], PicklistComponent.prototype, "itensToSelect", void 0);
20507
+ __decorate([
20508
+ core.Input()
20509
+ ], PicklistComponent.prototype, "selectedItens", void 0);
20510
+ __decorate([
20511
+ core.Input()
20512
+ ], PicklistComponent.prototype, "availableItensLabel", void 0);
20513
+ __decorate([
20514
+ core.Input()
20515
+ ], PicklistComponent.prototype, "availableItensPlaceholder", void 0);
20516
+ __decorate([
20517
+ core.Input()
20518
+ ], PicklistComponent.prototype, "addSelectedItensLabel", void 0);
20519
+ __decorate([
20520
+ core.Input()
20521
+ ], PicklistComponent.prototype, "addAllItensLabel", void 0);
20522
+ __decorate([
20523
+ core.Input()
20524
+ ], PicklistComponent.prototype, "selectedItensLabel", void 0);
20525
+ __decorate([
20526
+ core.Input()
20527
+ ], PicklistComponent.prototype, "selectedItensPlaceholder", void 0);
20528
+ __decorate([
20529
+ core.Input()
20530
+ ], PicklistComponent.prototype, "removeSelectedItemsLabel", void 0);
20531
+ __decorate([
20532
+ core.Input()
20533
+ ], PicklistComponent.prototype, "removeAllItemsLabel", void 0);
20534
+ __decorate([
20535
+ core.Input()
20536
+ ], PicklistComponent.prototype, "showCheckbox", void 0);
20537
+ __decorate([
20538
+ core.Input()
20539
+ ], PicklistComponent.prototype, "filterBy", void 0);
20540
+ __decorate([
20541
+ core.Output()
20542
+ ], PicklistComponent.prototype, "selectedItensChange", void 0);
20543
+ __decorate([
20544
+ core.Output()
20545
+ ], PicklistComponent.prototype, "itensToSelectChange", void 0);
20546
+ __decorate([
20547
+ core.ContentChildren(TemplateDirective)
20548
+ ], PicklistComponent.prototype, "templates", void 0);
20549
+ PicklistComponent = __decorate([
20550
+ core.Component({
20551
+ selector: 's-picklist',
20552
+ template: "<ng-template #previewRender let-itens=\"itens\" let-template=\"template\">\n <section class=\"picklist-items\">\n <ng-container *ngFor=\"let item of itens\">\n <ng-container *ngTemplateOutlet=\"template; context: { item: item.data }\"></ng-container>\n </ng-container>\n </section>\n</ng-template>\n\n<ng-template #picklistItensRender let-id=\"id\" let-itens=\"itens\" let-template=\"template\" let-listConnectedTo=\"listConnectedTo\">\n <div\n class=\"picklist-items\"\n cdkDropList\n [id]=\"id\"\n [cdkDropListSortingDisabled]=\"true\"\n [cdkDropListData]=\"itens\"\n [cdkDropListConnectedTo]=\"listConnectedTo\"\n (cdkDropListDropped)=\"drop($event)\">\n <div\n *ngFor=\"let item of itens\"\n cdkDrag\n [cdkDragDisabled]=\"item.disabled\"\n [cdkDragData]=\"item\"\n (click)=\"toggleSelected(item, id)\"\n (cdkDragStarted)=\"onDragStart($event, id)\"\n (cdkDragReleased)=\"onDragRelease()\"\n class=\"picklist-item\"\n [class.picklist-disabled]=\"item.disabled\"\n [class.picklist-item-invisible]=\"item.invisible\"\n [class.picklist-item-active]=\"item.selected\">\n <input\n type=\"checkbox\"\n class=\"input-checkbox\"\n [(ngModel)]=\"item.selected\"\n [disabled]=\"item.disabled\"\n *ngIf=\"showCheckbox\">\n <div class=\"picklist-content\">\n <ng-container *ngTemplateOutlet=\"template; context: { item: item.data, selected: item.selected, disabled: item.disabled }\"></ng-container>\n </div>\n <ng-container *cdkDragPreview>\n <ng-container *ngTemplateOutlet=\"previewRender; context: { itens: selectedItensMap, template: template }\"></ng-container>\n </ng-container>\n </div>\n</div>\n</ng-template>\n\n<ng-template #checkboxTitleRender let-disabled=\"disabled\" let-checked=\"checked\" let-changeFn=\"changeFn\">\n <input\n *ngIf=\"showCheckbox\"\n class=\"input-checkbox\"\n type=\"checkbox\"\n [disabled]=\"disabled\"\n [checked]=\"checked\"\n (change)=\"changeFn($event.target.checked)\">\n</ng-template>\n\n<div class=\"picklist-container\">\n <div class=\"picklist-item-container\">\n <div class=\"picklist-box\">\n <div class=\"picklist-title-container\">\n <ng-container *ngIf=\"!filterBy\">\n <ng-container *ngTemplateOutlet=\"checkboxTitleRender; context: { disabled: disableItensToSelectCheckbox, checked: itensToSelectAllSelected, changeFn: checkAllAvailableItensChange.bind(this) }\"></ng-container>\n </ng-container>\n <span class=\"picklist-title\">\n {{ availableItensLabel || 'platform.angular_components.available-items' | translate }}\n </span>\n </div>\n <div class=\"picklist-filter\" *ngIf=\"filterBy && showCheckbox\">\n <ng-container *ngTemplateOutlet=\"checkboxTitleRender; context: { disabled: disableItensToSelectCheckbox, checked: itensToSelectAllSelected, changeFn: checkAllAvailableItensChange.bind(this) }\"></ng-container>\n <input\n *ngIf=\"filterBy\"\n type=\"text\"\n class=\"input-search\"\n [(ngModel)]=\"availableItensFilter\"\n (ngModelChange)=\"filterItensToSelect()\"\n [placeholder]=\"availableItensPlaceholder || 'plataform.angular_components.picklist-placeholder' | translate\">\n </div>\n <ng-container *ngTemplateOutlet=\"picklistItensRender;\n context: {\n id: itensToSelectId,\n itens: itensToSelectFilterUtil.filteredItensToSelect,\n template: itemToSelectTemplate,\n listConnectedTo: selectedItensId\n }\">\n </ng-container>\n </div>\n <div class=\"buttons-container\">\n <s-button\n [label]=\"addSelectedItensLabel || 'platform.angular_components.add' | translate\"\n priority=\"primary\"\n rightIconClass=\"fa fa-fw fa-arrow-right\"\n [disabled]=\"!canAddItens\"\n (onClick)=\"add()\"\n [auxiliary]=\"false\"\n [caret]=\"false\">\n </s-button>\n <s-button\n [label]=\"addAllItensLabel || 'platform.angular_components.add_all' | translate\"\n priority=\"link\"\n (onClick)=\"add(true)\"\n [auxiliary]=\"false\">\n </s-button>\n </div>\n </div>\n <div class=\"picklist-item-container\">\n <div class=\"picklist-box\">\n <div class=\"picklist-title-container\">\n <ng-container *ngIf=\"!filterBy\">\n <ng-container *ngTemplateOutlet=\"checkboxTitleRender; context: { disabled: disableSelectedItensCheckbox, checked: selectedItensAllSelected, changeFn: checkAllSelectedItensChange.bind(this) }\"></ng-container>\n </ng-container>\n <span class=\"picklist-title\">\n {{ selectedItensLabel || 'platform.angular_components.selected-items' | translate }}\n </span>\n </div>\n <div class=\"picklist-filter\" *ngIf=\"filterBy && showCheckbox\">\n <ng-container *ngTemplateOutlet=\"checkboxTitleRender; context: { disabled: disableSelectedItensCheckbox, checked: selectedItensAllSelected, changeFn: checkAllSelectedItensChange.bind(this) }\"></ng-container>\n <input\n *ngIf=\"filterBy\"\n type=\"text\"\n class=\"input-search\"\n [(ngModel)]=\"selectedItensFilter\"\n (ngModelChange)=\"filterSelectedItens()\"\n [placeholder]=\"selectedItensPlaceholder || 'plataform.angular_components.picklist-placeholder' | translate\">\n </div>\n <ng-container *ngTemplateOutlet=\"picklistItensRender;\n context: {\n id: selectedItensId,\n itens: selectedItensFilterUtil.filteredSelectedItens,\n template: itemSelectedTemplate,\n listConnectedTo: itensToSelectId\n }\">\n\n </ng-container>\n </div>\n <div class=\"buttons-container\">\n <s-button\n [label]=\"removeSelectedItemsLabel || 'platform.angular_components.remove' | translate\"\n priority=\"primary\"\n iconClass=\"fa fa-fw fa-arrow-left\"\n [disabled]=\"!canRemoveItens\"\n [auxiliary]=\"false\"\n (onClick)=\"remove()\"\n [caret]=\"false\">\n </s-button>\n <s-button\n [label]=\"removeAllItemsLabel || 'platform.angular_components.remove_all' | translate\"\n priority=\"link\"\n (onClick)=\"remove(true)\"\n [auxiliary]=\"false\">\n </s-button>\n </div>\n </div>\n</div>\n",
20553
+ styles: [".picklist-container{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;border-radius:4px solid #dedce5;width:100%;background-color:#fff;gap:20px;padding:8px}.picklist-container .picklist-item-container{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1}.picklist-container .picklist-item-container .picklist-box{border:1px solid #dedce5;padding:8px;height:100%;min-width:200px}.picklist-container .picklist-item-container .picklist-box .picklist-filter{display:-ms-flexbox;display:flex;width:100%}.picklist-container .picklist-item-container .picklist-box .picklist-filter .input-search{border:1px solid #dedce5;min-height:35px;width:100%;border-radius:3px;margin-bottom:10px;margin-top:10px;padding:0 8px;-ms-flex:1;flex:1}.picklist-container .picklist-item-container .picklist-box .picklist-title-container{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.picklist-container .picklist-item-container .picklist-box .picklist-title-container .picklist-title{font-family:Open Sans;font-size:14px;font-weight:700;line-height:21px;text-underline-position:from-font;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}.picklist-container .picklist-item-container .picklist-box .picklist-items{max-height:23em;overflow:auto;height:100%;min-height:55px}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-content{width:100%;height:100%;padding-right:8px;border-radius:3px;margin-bottom:8px}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-item{height:55px;border:3px;display:-ms-flexbox;display:flex}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-item:not(.picklist-disabled){cursor:pointer}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-item:hover:not(.picklist-disabled,.picklist-item-active,.picklist-item-invisible){background-color:#f1f7f8}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-item-active:not(.picklist-item-invisible){background-color:#d5e8ec}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-disabled{opacity:.5;background-color:#fbfafc}.picklist-container .picklist-item-container .picklist-box .picklist-items .picklist-item-invisible{display:none!important}.picklist-container .picklist-item-container .buttons-container{padding-top:10px;display:-ms-flexbox;display:flex}.picklist-container .picklist-item-container .input-checkbox{margin:12px}"]
20554
+ })
20555
+ ], PicklistComponent);
20556
+ return PicklistComponent;
20557
+ }());
20558
+ var normalizeString = function (str) {
20559
+ return str.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase();
20560
+ };
20561
+ var ɵ0$3 = normalizeString;
20562
+ /**
20563
+ * Compares two strings by normalizing them to a case-insensitive and accent-free form,
20564
+ * and checks if the main string contains the substring.
20565
+ *
20566
+ * @param mainString - The string to be searched.
20567
+ * @param substring - The string to search for within the main string.
20568
+ * @returns A boolean indicating whether the normalized main string contains the normalized substring.
20569
+ */
20570
+ var compareStrings = function (mainString, substring) {
20571
+ return normalizeString(mainString).includes(normalizeString(substring));
20572
+ };
20573
+ var ɵ1$2 = compareStrings;
20574
+ var randomHash = function (prefix) {
20575
+ if (prefix === void 0) { prefix = 'id'; }
20576
+ return prefix + "-" + Math.random().toString(36).substring(2, 9) + "-" + Date.now().toString(36);
20577
+ };
20578
+ var ɵ2$1 = randomHash;
20579
+ var filterEnabled = function (list) {
20580
+ var _list = list instanceof Set ? Array.from(list) : list;
20581
+ return _list.filter(function (x) { return !x.disabled; });
20582
+ };
20583
+ var ɵ3 = filterEnabled;
20584
+ var mapData = function (list) {
20585
+ return list.map(function (x) { return x.data; });
20586
+ };
20587
+ var ɵ4 = mapData;
20588
+ var parseValueEmit = rxjs.pipe(filterEnabled, mapData);
20589
+ var parseItensPickList = function (array, disabledFn) {
20590
+ return array.map(function (x) {
20591
+ return {
20592
+ data: x,
20593
+ disabled: disabledFn ? disabledFn(x) : false
20594
+ };
20595
+ });
20596
+ };
20597
+
20598
+ var PicklistModule = /** @class */ (function () {
20599
+ function PicklistModule() {
20600
+ }
20601
+ PicklistModule = __decorate([
20602
+ core.NgModule({
20603
+ declarations: [PicklistComponent],
20604
+ imports: [
20605
+ common.CommonModule,
20606
+ core$1.TranslateModule,
20607
+ dragDrop.DragDropModule,
20608
+ forms.FormsModule,
20609
+ ButtonModule,
20610
+ ],
20611
+ exports: [PicklistComponent]
20612
+ })
20613
+ ], PicklistModule);
20614
+ return PicklistModule;
20615
+ }());
20616
+
20259
20617
  var fallback = {
20260
20618
  "platform.angular_components.drag_your_photo_or": "Arraste sua foto ou",
20261
20619
  "platform.angular_components.select_a_file": "selecione um arquivo",
@@ -20570,7 +20928,12 @@
20570
20928
  "platform.angular_components.country_name_tm": "Turquemenistão",
20571
20929
  "platform.angular_components.country_name_uz": "Uzbequistão",
20572
20930
  "platform.angular_components.country_name_ve": "Venezuela",
20573
- "platform.angular_components.date_modified_custom_blob": "Enviado às {{hour}}:{{minutes}} de {{day}}/{{month}}/{{fullYear}}"
20931
+ "platform.angular_components.date_modified_custom_blob": "Enviado às {{hour}}:{{minutes}} de {{day}}/{{month}}/{{fullYear}}",
20932
+ "platform.angular_components.available-items": "Itens disponíveis",
20933
+ "platform.angular_components.selected-items": "Itens selecionados",
20934
+ "plataform.angular_components.picklist-placeholder": "Busque pelo nome ou termo",
20935
+ "platform.angular_components.add_all": "Adicionar todos",
20936
+ "platform.angular_components.remove_all": "Remover todos"
20574
20937
  };
20575
20938
 
20576
20939
  exports.AccordionComponent = AccordionComponent;
@@ -20698,6 +21061,8 @@
20698
21061
  exports.PasswordStrengthComponent = PasswordStrengthComponent;
20699
21062
  exports.PasswordStrengthDirective = PasswordStrengthDirective;
20700
21063
  exports.PasswordStrengthModule = PasswordStrengthModule;
21064
+ exports.PicklistComponent = PicklistComponent;
21065
+ exports.PicklistModule = PicklistModule;
20701
21066
  exports.ProductHeaderComponent = ProductHeaderComponent;
20702
21067
  exports.ProductHeaderModule = ProductHeaderModule;
20703
21068
  exports.ProfilePicturePickerComponent = ProfilePicturePickerComponent;
@@ -20759,6 +21124,12 @@
20759
21124
  exports.convertToMomentDateFormat = convertToMomentDateFormat;
20760
21125
  exports.countries = countries;
20761
21126
  exports.fallback = fallback;
21127
+ exports.parseItensPickList = parseItensPickList;
21128
+ exports.ɵ0 = ɵ0$3;
21129
+ exports.ɵ1 = ɵ1$2;
21130
+ exports.ɵ2 = ɵ2$1;
21131
+ exports.ɵ3 = ɵ3;
21132
+ exports.ɵ4 = ɵ4;
20762
21133
  exports.ɵa = TooltipComponent;
20763
21134
  exports.ɵb = TooltipDirective;
20764
21135
  exports.ɵba = TablePagingComponent;
@@ -20846,6 +21217,7 @@
20846
21217
  exports.ɵec = CollapseOptionComponent;
20847
21218
  exports.ɵed = CollapsedItemsComponent;
20848
21219
  exports.ɵee = VerticalItemsComponent;
21220
+ exports.ɵef = ButtonModule;
20849
21221
  exports.ɵf = TieredMenuComponent;
20850
21222
  exports.ɵg = TieredMenuNestedComponent;
20851
21223
  exports.ɵh = TieredMenuItemComponent;