@tft/crispr-forms 12.2.14 → 12.2.18
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.
- package/bundles/tft-crispr-forms.umd.js +10 -7
- package/bundles/tft-crispr-forms.umd.js.map +1 -1
- package/esm2015/lib/crispr-forms.module.ngfactory.js.map +1 -1
- package/esm2015/lib/form-group-list/form-group-list.component.js +2 -2
- package/esm2015/lib/form-group-list/form-group-list.component.js.map +1 -1
- package/esm2015/lib/form-group-list/form-group-list.component.metadata.json +1 -1
- package/esm2015/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.js +7 -4
- package/esm2015/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.js.map +1 -1
- package/esm2015/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.metadata.json +1 -1
- package/esm2015/lib/material/material.module.ngfactory.js.map +1 -1
- package/esm2015/lib/material/option/option.component.js +1 -1
- package/esm2015/lib/material/option/option.component.js.map +1 -1
- package/esm2015/lib/material/option/option.component.metadata.json +1 -1
- package/esm2015/lib/models/autocomplete-chiplist-field.config.js.map +1 -1
- package/esm2015/lib/models/form-group-list.config.js.map +1 -1
- package/fesm2015/tft-crispr-forms.js +10 -8
- package/fesm2015/tft-crispr-forms.js.map +1 -1
- package/lib/models/autocomplete-chiplist-field.config.d.ts +2 -1
- package/lib/models/form-group-list.config.d.ts +2 -0
- package/package.json +1 -1
- package/tft-crispr-forms-12.2.18.tgz +0 -0
- package/tft-crispr-forms.metadata.json +1 -1
- package/tft-crispr-forms-12.2.14.tgz +0 -0
|
@@ -754,14 +754,16 @@
|
|
|
754
754
|
autoInputRef: [{ type: core.ViewChild, args: ['autoInput',] }]
|
|
755
755
|
};
|
|
756
756
|
|
|
757
|
+
var ɵ0 = function (chip, option) { return chip.value === option.value; };
|
|
757
758
|
var defaultConfig$7 = {
|
|
758
759
|
chipsSelectable: true,
|
|
759
760
|
areChipsRemovable: true,
|
|
760
761
|
tabToSelect: true,
|
|
761
|
-
autoActiveFirstOption:
|
|
762
|
+
autoActiveFirstOption: true,
|
|
762
763
|
imageUrlParam: 'image',
|
|
763
764
|
typeDebounceTime: 500,
|
|
764
765
|
allowDuplicates: false,
|
|
766
|
+
duplicateCompareFunction: ɵ0,
|
|
765
767
|
separatorKeyCodes: [keycodes.ENTER],
|
|
766
768
|
emptyOptionsMessage: DEFAULT_EMPTY_OPTIONS_MESSAGE,
|
|
767
769
|
};
|
|
@@ -787,7 +789,7 @@
|
|
|
787
789
|
return _this.config.allowDuplicates
|
|
788
790
|
? options
|
|
789
791
|
: options === null || options === void 0 ? void 0 : options.filter(function (option) {
|
|
790
|
-
return !chips.some(function (chip) { return chip
|
|
792
|
+
return !chips.some(function (chip) { return _this.config.duplicateCompareFunction(chip, option); });
|
|
791
793
|
});
|
|
792
794
|
}));
|
|
793
795
|
};
|
|
@@ -841,9 +843,9 @@
|
|
|
841
843
|
AutocompleteChiplistFieldComponent.decorators = [
|
|
842
844
|
{ type: core.Component, args: [{
|
|
843
845
|
selector: 'crispr-autocomplete-chiplist-field',
|
|
844
|
-
template: "<crispr-field-container\n [config]=\"config\"\n [group]=\"group\">\n\n <mat-form-field\n [color]=\"config.color\"\n [appearance]=\"config.appearance\">\n <mat-label *ngIf=\"config.label\">\n {{config.label}}\n </mat-label>\n\n <mat-chip-list\n #chipList>\n <mat-chip\n class=\"refinement-chip\"\n *ngFor=\"let chip of controlValue$ | async\"\n [selectable]=\"config.chipsSelectable\"\n [removable]=\"config.areChipsRemovable\"\n (removed)=\"removeChip(chip)\">\n {{chip.label}}\n <mat-icon\n matChipRemove\n *ngIf=\"config.areChipsRemovable\">\n cancel\n </mat-icon>\n </mat-chip>\n\n <input\n matInput\n [formControl]=\"autocompleteInputControl\"\n [placeholder]=\"config.placeholder\"\n [matChipInputFor]=\"chipList\"\n [matAutocomplete]=\"auto\"\n (keydown.tab)=\"handleTab($event)\"\n [matChipInputSeparatorKeyCodes]=\"config.separatorKeyCodes\"\n (matChipInputTokenEnd)=\"handleTokenEnd($event)\"\n role=\"searchbox\"\n type=\"text\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n #autoInput/>\n <span *ngIf=\"config.fieldSuffix\" matSuffix>{{config.fieldSuffix}}</span>\n <crispr-info\n *ngIf=\"config.info\"\n matSuffix\n [info]=\"config.info \">\n </crispr-info>\n\n </mat-chip-list>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [autoActiveFirstOption]=\"this.config.autoActiveFirstOption\"\n (optionSelected)=\"handleSelect($event)\"\n [displayWith]=\"mapToLabel\">\n <ng-container *ngIf=\"remainingOptions$ | async as remainingOptions; else emptyOption\">\n <ng-container *ngIf=\"remainingOptions.length > 0; else emptyOption\">\n <mat-option\n *ngFor=\"let option of remainingOptions$ | async\"\n [value]=\"option\">\n <crispr-option [option]=\"option\"></crispr-option>\n </mat-option>\n </ng-container>\n\n </ng-container>\n <ng-template #emptyOption>\n <mat-option disabled=\"true\">\n {{config.emptyOptionsMessage}}\n </mat-option>\n </ng-template>\n </mat-autocomplete>\n\n\n </mat-form-field>\n</crispr-field-container>\n",
|
|
846
|
+
template: "<crispr-field-container\n [config]=\"config\"\n [group]=\"group\">\n\n <mat-form-field\n [color]=\"config.color\"\n [appearance]=\"config.appearance\">\n <mat-label *ngIf=\"config.label\">\n {{config.label}}\n </mat-label>\n\n <mat-chip-list\n #chipList>\n <mat-chip\n class=\"refinement-chip\"\n *ngFor=\"let chip of controlValue$ | async\"\n [selectable]=\"config.chipsSelectable\"\n [removable]=\"config.areChipsRemovable\"\n (removed)=\"removeChip(chip)\">\n <span *ngIf=\"chip.imageUrl as imageUrl\" class=\"image-container\">\n <img [src]=\"imageUrl\" alt=\"image of {{chip.label}}\">\n </span>\n {{chip.label}}\n <mat-icon\n matChipRemove\n *ngIf=\"config.areChipsRemovable\">\n cancel\n </mat-icon>\n </mat-chip>\n\n <input\n matInput\n [formControl]=\"autocompleteInputControl\"\n [placeholder]=\"config.placeholder\"\n [matChipInputFor]=\"chipList\"\n [matAutocomplete]=\"auto\"\n (keydown.tab)=\"handleTab($event)\"\n [matChipInputSeparatorKeyCodes]=\"config.separatorKeyCodes\"\n (matChipInputTokenEnd)=\"handleTokenEnd($event)\"\n role=\"searchbox\"\n type=\"text\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n #autoInput/>\n <span *ngIf=\"config.fieldSuffix\" matSuffix>{{config.fieldSuffix}}</span>\n <crispr-info\n *ngIf=\"config.info\"\n matSuffix\n [info]=\"config.info \">\n </crispr-info>\n\n </mat-chip-list>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [autoActiveFirstOption]=\"this.config.autoActiveFirstOption\"\n (optionSelected)=\"handleSelect($event)\"\n [displayWith]=\"mapToLabel\">\n <ng-container *ngIf=\"remainingOptions$ | async as remainingOptions; else emptyOption\">\n <ng-container *ngIf=\"remainingOptions.length > 0; else emptyOption\">\n <mat-option\n *ngFor=\"let option of remainingOptions$ | async\"\n [value]=\"option\">\n <crispr-option [option]=\"option\"></crispr-option>\n </mat-option>\n </ng-container>\n\n </ng-container>\n <ng-template #emptyOption>\n <mat-option disabled=\"true\">\n {{config.emptyOptionsMessage}}\n </mat-option>\n </ng-template>\n </mat-autocomplete>\n\n\n </mat-form-field>\n</crispr-field-container>\n",
|
|
845
847
|
changeDetection: core.ChangeDetectionStrategy.OnPush,
|
|
846
|
-
styles: [""]
|
|
848
|
+
styles: [".refinement-chip .image-container{width:26px;height:26px;border-radius:50%;overflow:hidden;margin:-2px 4px -2px -8px}.refinement-chip .image-container img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}"]
|
|
847
849
|
},] }
|
|
848
850
|
];
|
|
849
851
|
AutocompleteChiplistFieldComponent.propDecorators = {
|
|
@@ -1300,7 +1302,7 @@
|
|
|
1300
1302
|
OptionComponent.decorators = [
|
|
1301
1303
|
{ type: core.Component, args: [{
|
|
1302
1304
|
selector: 'crispr-option',
|
|
1303
|
-
template: "<img\n *ngIf=\"option.imageUrl\"\n [src]=\"option.imageUrl\"\n style=\"vertical-align:middle;\"\n aria-hidden\n height=\"25\"/>\n{{ option.label }}\n",
|
|
1305
|
+
template: "<img\n *ngIf=\"option.imageUrl\"\n [src]=\"option.imageUrl\"\n alt=\"image of {{option.label}}\"\n style=\"vertical-align:middle;\"\n aria-hidden\n height=\"25\"/>\n{{ option.label }}\n",
|
|
1304
1306
|
changeDetection: core.ChangeDetectionStrategy.OnPush,
|
|
1305
1307
|
styles: [""]
|
|
1306
1308
|
},] }
|
|
@@ -1497,9 +1499,9 @@
|
|
|
1497
1499
|
FormGroupListComponent.decorators = [
|
|
1498
1500
|
{ type: core.Component, args: [{
|
|
1499
1501
|
selector: 'crispr-form-group-list',
|
|
1500
|
-
template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n <!-- TODO: add sortBy function -->\n <div *ngFor=\"let control of formArray?.controls; let i = index;\">\n <!-- TODO: use content projection to allow custom item label component -->\n <span class=\"mat-
|
|
1502
|
+
template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n <!-- TODO: add sortBy function -->\n <div *ngFor=\"let control of formArray?.controls; let i = index;\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\" *ngIf=\"config.itemLabelBuilder\"> {{ config.itemLabelBuilder(i) }} </span>\n <button\n mat-icon-button\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"deleteGroup(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroupName]=\"i\">\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [config]=\"field\"\n [value]=\"value && value[i] | initialControlValue : field\"\n [group]=\"control\">\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"addGroup()\">\n {{config.addItemLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n",
|
|
1501
1503
|
changeDetection: core.ChangeDetectionStrategy.OnPush,
|
|
1502
|
-
styles: [""]
|
|
1504
|
+
styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}"]
|
|
1503
1505
|
},] }
|
|
1504
1506
|
];
|
|
1505
1507
|
|
|
@@ -1681,6 +1683,7 @@
|
|
|
1681
1683
|
exports.filterOptionsByLabel = filterOptionsByLabel;
|
|
1682
1684
|
exports.isControlConfig = isControlConfig;
|
|
1683
1685
|
exports.observablifyOptions = observablifyOptions;
|
|
1686
|
+
exports.ɵ0 = ɵ0;
|
|
1684
1687
|
exports.ɵa = MaterialModule;
|
|
1685
1688
|
exports.ɵb = FieldContainerComponent;
|
|
1686
1689
|
exports.ɵc = InputFieldComponent;
|