@fundamental-ngx/core 0.46.2-rc.7 → 0.46.2-rc.9
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/combobox/combobox-item.directive.d.ts +16 -0
- package/combobox/combobox.component.d.ts +10 -6
- package/combobox/combobox.interface.d.ts +4 -0
- package/combobox/combobox.module.d.ts +3 -2
- package/combobox/index.d.ts +1 -0
- package/esm2022/combobox/combobox-item.directive.mjs +24 -0
- package/esm2022/combobox/combobox.component.mjs +14 -7
- package/esm2022/combobox/combobox.interface.mjs +1 -1
- package/esm2022/combobox/combobox.module.mjs +5 -4
- package/esm2022/combobox/index.mjs +2 -1
- package/esm2022/multi-combobox/index.mjs +2 -1
- package/esm2022/multi-combobox/multi-announcer/multi-announcer.directive.mjs +74 -0
- package/esm2022/multi-combobox/multi-combobox.component.mjs +6 -4
- package/esm2022/multi-combobox/multi-combobox.module.mjs +5 -4
- package/esm2022/multi-input/multi-input.component.mjs +6 -4
- package/fesm2022/fundamental-ngx-core-combobox.mjs +38 -10
- package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +82 -11
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-input.mjs +5 -3
- package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fundamental-ngx-core-v0.46.2-rc.9.tgz +0 -0
- package/multi-combobox/index.d.ts +1 -0
- package/multi-combobox/multi-announcer/multi-announcer.directive.d.ts +23 -0
- package/multi-combobox/multi-combobox.module.d.ts +2 -1
- package/package.json +3 -3
- package/schematics/add-dependencies/index.js +4 -4
- package/fundamental-ngx-core-v0.46.2-rc.7.tgz +0 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/member-ordering */
|
|
2
|
+
import { LiveAnnouncer } from '@angular/cdk/a11y';
|
|
3
|
+
import { Directive, HostListener, inject, Input } from '@angular/core';
|
|
4
|
+
import { KeyUtil } from '@fundamental-ngx/cdk/utils';
|
|
5
|
+
import { resolveTranslationSyncFn } from '@fundamental-ngx/i18n';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class MultiAnnouncerDirective {
|
|
8
|
+
constructor() {
|
|
9
|
+
/** @hidden */
|
|
10
|
+
this._noResultsAnnounced = false;
|
|
11
|
+
/** @hidden */
|
|
12
|
+
this._resultsAnnounced = false;
|
|
13
|
+
/** @hidden */
|
|
14
|
+
this._announcement = '';
|
|
15
|
+
/** @hidden */
|
|
16
|
+
this._liveAnnouncer = inject(LiveAnnouncer);
|
|
17
|
+
/** @hidden */
|
|
18
|
+
this._resolveTranslation = resolveTranslationSyncFn();
|
|
19
|
+
}
|
|
20
|
+
/** @hidden */
|
|
21
|
+
_makeSearchTermChangeAnnouncements(event) {
|
|
22
|
+
if (KeyUtil.isKeyType(event, 'alphabetical') || KeyUtil.isKeyType(event, 'numeric')) {
|
|
23
|
+
this._liveAnnouncer.clear();
|
|
24
|
+
if (!this.multiAnnouncerOptions.length && !this._noResultsAnnounced) {
|
|
25
|
+
this._buildAnnouncement(this._resolveTranslation('coreMultiInput.noResults'));
|
|
26
|
+
this._noResultsAnnounced = true;
|
|
27
|
+
this._resultsAnnounced = false;
|
|
28
|
+
}
|
|
29
|
+
else if (this.multiAnnouncerOptions.length) {
|
|
30
|
+
if (this.multiAnnouncerOptions.length === 1) {
|
|
31
|
+
this._buildAnnouncement(this._resolveTranslation('coreMultiInput.countListResultsSingular', { count: 1 }));
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this._buildAnnouncement(this._resolveTranslation('coreMultiInput.countListResultsPlural', {
|
|
35
|
+
count: this.multiAnnouncerOptions.length
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
if (!this._resultsAnnounced) {
|
|
39
|
+
this._buildAnnouncement(this._resolveTranslation('coreMultiInput.navigateSelectionsWithArrows'));
|
|
40
|
+
this._noResultsAnnounced = false;
|
|
41
|
+
this._resultsAnnounced = true;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
this._buildAnnouncement(this._resolveTranslation('coreMultiInput.escapeNavigateTokens'));
|
|
45
|
+
this._makeAnnouncement(this._announcement);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/** @hidden */
|
|
49
|
+
_buildAnnouncement(message) {
|
|
50
|
+
this._announcement = this._announcement + message + ' ';
|
|
51
|
+
}
|
|
52
|
+
/** @hidden */
|
|
53
|
+
async _makeAnnouncement(message) {
|
|
54
|
+
await this._liveAnnouncer.announce(message, 'assertive').then(() => {
|
|
55
|
+
this._announcement = '';
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MultiAnnouncerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
59
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: MultiAnnouncerDirective, isStandalone: true, selector: "[fdMultiAnnouncer]", inputs: { multiAnnouncerOptions: "multiAnnouncerOptions" }, host: { listeners: { "keyup": "_makeSearchTermChangeAnnouncements($event)" } }, exportAs: ["fdMultiAnnouncer"], ngImport: i0 }); }
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MultiAnnouncerDirective, decorators: [{
|
|
62
|
+
type: Directive,
|
|
63
|
+
args: [{
|
|
64
|
+
selector: '[fdMultiAnnouncer]',
|
|
65
|
+
exportAs: 'fdMultiAnnouncer',
|
|
66
|
+
standalone: true
|
|
67
|
+
}]
|
|
68
|
+
}], propDecorators: { multiAnnouncerOptions: [{
|
|
69
|
+
type: Input
|
|
70
|
+
}], _makeSearchTermChangeAnnouncements: [{
|
|
71
|
+
type: HostListener,
|
|
72
|
+
args: ['keyup', ['$event']]
|
|
73
|
+
}] } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktYW5ub3VuY2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL211bHRpLWNvbWJvYm94L211bHRpLWFubm91bmNlci9tdWx0aS1hbm5vdW5jZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyx1QkFBdUI7SUFMcEM7UUFVSSxjQUFjO1FBQ04sd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRXBDLGNBQWM7UUFDTixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFbEMsY0FBYztRQUNOLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRTNCLGNBQWM7UUFDRyxtQkFBYyxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFdkUsY0FBYztRQUNOLHdCQUFtQixHQUFHLHdCQUF3QixFQUFFLENBQUM7S0E2QzVEO0lBM0NHLGNBQWM7SUFFTixrQ0FBa0MsQ0FBQyxLQUFvQjtRQUMzRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFO1lBQ2pGLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ2pFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDO2dCQUM5RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO2FBQ2xDO2lCQUFNLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRTtnQkFDMUMsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtvQkFDekMsSUFBSSxDQUFDLGtCQUFrQixDQUNuQixJQUFJLENBQUMsbUJBQW1CLENBQUMseUNBQXlDLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FDcEYsQ0FBQztpQkFDTDtxQkFBTTtvQkFDSCxJQUFJLENBQUMsa0JBQWtCLENBQ25CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx1Q0FBdUMsRUFBRTt3QkFDOUQsS0FBSyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNO3FCQUMzQyxDQUFDLENBQ0wsQ0FBQztpQkFDTDtnQkFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO29CQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDZDQUE2QyxDQUFDLENBQUMsQ0FBQztvQkFDakcsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztvQkFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztpQkFDakM7YUFDSjtZQUNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMscUNBQXFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDOUM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNOLGtCQUFrQixDQUFDLE9BQWU7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sR0FBRyxHQUFHLENBQUM7SUFDNUQsQ0FBQztJQUVELGNBQWM7SUFDTixLQUFLLENBQUMsaUJBQWlCLENBQUMsT0FBZTtRQUMzQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQy9ELElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0E5RFEsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQUlHLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFvQkUsa0NBQWtDO3NCQUR6QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmcgKi9cbmltcG9ydCB7IExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS2V5VXRpbCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IHJlc29sdmVUcmFuc2xhdGlvblN5bmNGbiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTXVsdGlBbm5vdW5jZXJdJyxcbiAgICBleHBvcnRBczogJ2ZkTXVsdGlBbm5vdW5jZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlBbm5vdW5jZXJEaXJlY3RpdmUge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQElucHV0KClcbiAgICBtdWx0aUFubm91bmNlck9wdGlvbnM6IGFueVtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ub1Jlc3VsdHNBbm5vdW5jZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVzdWx0c0Fubm91bmNlZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hbm5vdW5jZW1lbnQgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbGl2ZUFubm91bmNlcjogTGl2ZUFubm91bmNlciA9IGluamVjdChMaXZlQW5ub3VuY2VyKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVzb2x2ZVRyYW5zbGF0aW9uID0gcmVzb2x2ZVRyYW5zbGF0aW9uU3luY0ZuKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleXVwJywgWyckZXZlbnQnXSlcbiAgICBwcml2YXRlIF9tYWtlU2VhcmNoVGVybUNoYW5nZUFubm91bmNlbWVudHMoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlUeXBlKGV2ZW50LCAnYWxwaGFiZXRpY2FsJykgfHwgS2V5VXRpbC5pc0tleVR5cGUoZXZlbnQsICdudW1lcmljJykpIHtcbiAgICAgICAgICAgIHRoaXMuX2xpdmVBbm5vdW5jZXIuY2xlYXIoKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5tdWx0aUFubm91bmNlck9wdGlvbnMubGVuZ3RoICYmICF0aGlzLl9ub1Jlc3VsdHNBbm5vdW5jZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudCh0aGlzLl9yZXNvbHZlVHJhbnNsYXRpb24oJ2NvcmVNdWx0aUlucHV0Lm5vUmVzdWx0cycpKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9ub1Jlc3VsdHNBbm5vdW5jZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Jlc3VsdHNBbm5vdW5jZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5tdWx0aUFubm91bmNlck9wdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubXVsdGlBbm5vdW5jZXJPcHRpb25zLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudChcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3Jlc29sdmVUcmFuc2xhdGlvbignY29yZU11bHRpSW5wdXQuY291bnRMaXN0UmVzdWx0c1Npbmd1bGFyJywgeyBjb3VudDogMSB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2J1aWxkQW5ub3VuY2VtZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fcmVzb2x2ZVRyYW5zbGF0aW9uKCdjb3JlTXVsdGlJbnB1dC5jb3VudExpc3RSZXN1bHRzUGx1cmFsJywge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50OiB0aGlzLm11bHRpQW5ub3VuY2VyT3B0aW9ucy5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fcmVzdWx0c0Fubm91bmNlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudCh0aGlzLl9yZXNvbHZlVHJhbnNsYXRpb24oJ2NvcmVNdWx0aUlucHV0Lm5hdmlnYXRlU2VsZWN0aW9uc1dpdGhBcnJvd3MnKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25vUmVzdWx0c0Fubm91bmNlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZXN1bHRzQW5ub3VuY2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudCh0aGlzLl9yZXNvbHZlVHJhbnNsYXRpb24oJ2NvcmVNdWx0aUlucHV0LmVzY2FwZU5hdmlnYXRlVG9rZW5zJykpO1xuICAgICAgICAgICAgdGhpcy5fbWFrZUFubm91bmNlbWVudCh0aGlzLl9hbm5vdW5jZW1lbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9idWlsZEFubm91bmNlbWVudChtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fYW5ub3VuY2VtZW50ID0gdGhpcy5fYW5ub3VuY2VtZW50ICsgbWVzc2FnZSArICcgJztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgYXN5bmMgX21ha2VBbm5vdW5jZW1lbnQobWVzc2FnZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuX2xpdmVBbm5vdW5jZXIuYW5ub3VuY2UobWVzc2FnZSwgJ2Fzc2VydGl2ZScpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fYW5ub3VuY2VtZW50ID0gJyc7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|