ngssm-store 16.1.11 → 16.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.
@@ -40,10 +40,10 @@ export class CachedItemReducer {
40
40
  }
41
41
  return state;
42
42
  }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CachedItemReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
44
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CachedItemReducer }); }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CachedItemReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
44
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CachedItemReducer }); }
45
45
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CachedItemReducer, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CachedItemReducer, decorators: [{
47
47
  type: Injectable
48
48
  }] });
49
49
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkLWl0ZW0ucmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXN0b3JlL2NhY2hpbmcvc3JjL3JlZHVjZXJzL2NhY2hlZC1pdGVtLnJlZHVjZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsc0JBQXNCLEVBQThDLE1BQU0sWUFBWSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMxRSxPQUFPLEVBQWMsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBR3hELE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFa0IscUJBQWdCLEdBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLENBQUMsZUFBZSxDQUFDLENBQUM7S0F1QzdIO0lBckNRLFdBQVcsQ0FBQyxLQUFZLEVBQUUsTUFBYztRQUM3QyxRQUFRLE1BQU0sQ0FBQyxJQUFJLEVBQUU7WUFDbkIsS0FBSyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDekMsTUFBTSxtQkFBbUIsR0FBRyxNQUE2QixDQUFDO2dCQUMxRCxJQUFJLHFCQUFxQixDQUFDLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsS0FBSyxTQUFTLEVBQUU7b0JBQ2pGLE1BQU0sVUFBVSxHQUFlO3dCQUM3QixNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTt3QkFDL0IsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVO3FCQUNsQyxDQUFDO29CQUNGLE9BQU8sdUJBQXVCLENBQUMsS0FBSyxFQUFFO3dCQUNwQyxNQUFNLEVBQUU7NEJBQ04sQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7eUJBQzFEO3FCQUNGLENBQUMsQ0FBQztpQkFDSjtnQkFFRCxPQUFPLHVCQUF1QixDQUFDLEtBQUssRUFBRTtvQkFDcEMsTUFBTSxFQUFFO3dCQUNOLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLENBQUMsVUFBVSxFQUFFO3FCQUNoRjtpQkFDRixDQUFDLENBQUM7YUFDSjtZQUVELEtBQUssc0JBQXNCLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQzNDLE1BQU0scUJBQXFCLEdBQUcsTUFBK0IsQ0FBQztnQkFDOUQsSUFBSSxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUscUJBQXFCLENBQUMsYUFBYSxDQUFDLEtBQUssU0FBUyxFQUFFO29CQUNuRixPQUFPLEtBQUssQ0FBQztpQkFDZDtnQkFFRCxPQUFPLHVCQUF1QixDQUFDLEtBQUssRUFBRTtvQkFDcEMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMscUJBQXFCLENBQUMsYUFBYSxDQUFDLEVBQUU7aUJBQzFELENBQUMsQ0FBQzthQUNKO1NBQ0Y7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OEdBdkNVLGlCQUFpQjtrSEFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBSZWR1Y2VyLCBTdGF0ZSwgQWN0aW9uIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBOZ3NzbUNhY2hpbmdBY3Rpb25UeXBlLCBTZXRDYWNoZWRJdGVtQWN0aW9uLCBVbnNldENhY2hlZEl0ZW1BY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IHNlbGVjdE5nc3NtQ2FjaGVkSXRlbSwgdXBkYXRlTmdzc21DYWNoaW5nU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5pbXBvcnQgeyBDYWNoZWRJdGVtLCBDYWNoZWRJdGVtU3RhdHVzIH0gZnJvbSAnLi4vbW9kZWwnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2FjaGVkSXRlbVJlZHVjZXIgaW1wbGVtZW50cyBSZWR1Y2VyIHtcbiAgcHVibGljIHJlYWRvbmx5IHByb2Nlc3NlZEFjdGlvbnM6IHN0cmluZ1tdID0gW05nc3NtQ2FjaGluZ0FjdGlvblR5cGUuc2V0Q2FjaGVkSXRlbSwgTmdzc21DYWNoaW5nQWN0aW9uVHlwZS51bnNldENhY2hlZEl0ZW1dO1xuXG4gIHB1YmxpYyB1cGRhdGVTdGF0ZShzdGF0ZTogU3RhdGUsIGFjdGlvbjogQWN0aW9uKTogU3RhdGUge1xuICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgIGNhc2UgTmdzc21DYWNoaW5nQWN0aW9uVHlwZS5zZXRDYWNoZWRJdGVtOiB7XG4gICAgICAgIGNvbnN0IHNldENhY2hlZEl0ZW1BY3Rpb24gPSBhY3Rpb24gYXMgU2V0Q2FjaGVkSXRlbUFjdGlvbjtcbiAgICAgICAgaWYgKHNlbGVjdE5nc3NtQ2FjaGVkSXRlbShzdGF0ZSwgc2V0Q2FjaGVkSXRlbUFjdGlvbi5jYWNoZWRJdGVtS2V5KSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgY29uc3QgY2FjaGVkSXRlbTogQ2FjaGVkSXRlbSA9IHtcbiAgICAgICAgICAgIHN0YXR1czogQ2FjaGVkSXRlbVN0YXR1cy5ub3RTZXQsXG4gICAgICAgICAgICAuLi5zZXRDYWNoZWRJdGVtQWN0aW9uLmNhY2hlZEl0ZW1cbiAgICAgICAgICB9O1xuICAgICAgICAgIHJldHVybiB1cGRhdGVOZ3NzbUNhY2hpbmdTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgICAgY2FjaGVzOiB7XG4gICAgICAgICAgICAgIFtzZXRDYWNoZWRJdGVtQWN0aW9uLmNhY2hlZEl0ZW1LZXldOiB7ICRzZXQ6IGNhY2hlZEl0ZW0gfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHVwZGF0ZU5nc3NtQ2FjaGluZ1N0YXRlKHN0YXRlLCB7XG4gICAgICAgICAgY2FjaGVzOiB7XG4gICAgICAgICAgICBbc2V0Q2FjaGVkSXRlbUFjdGlvbi5jYWNoZWRJdGVtS2V5XTogeyAkbWVyZ2U6IHNldENhY2hlZEl0ZW1BY3Rpb24uY2FjaGVkSXRlbSB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBOZ3NzbUNhY2hpbmdBY3Rpb25UeXBlLnVuc2V0Q2FjaGVkSXRlbToge1xuICAgICAgICBjb25zdCB1bnNldENhY2hlZEl0ZW1BY3Rpb24gPSBhY3Rpb24gYXMgVW5zZXRDYWNoZWRJdGVtQWN0aW9uO1xuICAgICAgICBpZiAoc2VsZWN0Tmdzc21DYWNoZWRJdGVtKHN0YXRlLCB1bnNldENhY2hlZEl0ZW1BY3Rpb24uY2FjaGVkSXRlbUtleSkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB1cGRhdGVOZ3NzbUNhY2hpbmdTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgIGNhY2hlczogeyAkdW5zZXQ6IFt1bnNldENhY2hlZEl0ZW1BY3Rpb24uY2FjaGVkSXRlbUtleV0gfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cbn1cbiJdfQ==
@@ -32,10 +32,10 @@ export class ConsoleAppender {
32
32
  stop() {
33
33
  this.stopEvent$.next(true);
34
34
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleAppender, deps: [{ token: i1.Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
36
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleAppender, providedIn: 'root' }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConsoleAppender, deps: [{ token: i1.Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConsoleAppender, providedIn: 'root' }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleAppender, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConsoleAppender, decorators: [{
39
39
  type: Injectable,
40
40
  args: [{
41
41
  providedIn: 'root'
@@ -25,10 +25,10 @@ export class Logger {
25
25
  payload
26
26
  });
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Logger, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Logger, providedIn: 'root' }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Logger, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Logger, providedIn: 'root' }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Logger, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Logger, decorators: [{
32
32
  type: Injectable,
33
33
  args: [{
34
34
  providedIn: 'root'
@@ -23,10 +23,10 @@ export class NgSsmComponent {
23
23
  dispatchActionType(actionType) {
24
24
  this.store.dispatchActionType(actionType);
25
25
  }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgSsmComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
27
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NgSsmComponent, ngImport: i0 }); }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgSsmComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
27
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: NgSsmComponent, ngImport: i0 }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgSsmComponent, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgSsmComponent, decorators: [{
30
30
  type: Directive,
31
31
  args: [{}]
32
32
  }], ctorParameters: function () { return [{ type: i1.Store }]; } });
@@ -108,10 +108,10 @@ export class Store {
108
108
  setTimeout(() => this.processNextAction());
109
109
  }
110
110
  }
111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Store, deps: [{ token: i1.Logger }, { token: NGSSM_REDUCER, optional: true }, { token: NGSSM_EFFECT, optional: true }, { token: NGSSM_STATE_INITIALIZER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
112
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Store, providedIn: 'root' }); }
111
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Store, deps: [{ token: i1.Logger }, { token: NGSSM_REDUCER, optional: true }, { token: NGSSM_EFFECT, optional: true }, { token: NGSSM_STATE_INITIALIZER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
112
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Store, providedIn: 'root' }); }
113
113
  }
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Store, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Store, decorators: [{
115
115
  type: Injectable,
116
116
  args: [{
117
117
  providedIn: 'root'
@@ -13,10 +13,10 @@ export class HideElementDirective {
13
13
  this.store.dispatchAction(new HideElementAction(elementKey));
14
14
  }
15
15
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: HideElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
17
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: HideElementDirective, isStandalone: true, selector: "[hideElement]", inputs: { key: ["hideElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: HideElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
17
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: HideElementDirective, isStandalone: true, selector: "[hideElement]", inputs: { key: ["hideElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: HideElementDirective, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: HideElementDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -2,4 +2,5 @@ export * from './toggle-element-visibility.directive';
2
2
  export * from './is-element-visible.pipe';
3
3
  export * from './show-element.directive';
4
4
  export * from './hide-element.directive';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1zdG9yZS92aXNpYmlsaXR5L3NyYy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RvZ2dsZS1lbGVtZW50LXZpc2liaWxpdHkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtZWxlbWVudC12aXNpYmxlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaG93LWVsZW1lbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaGlkZS1lbGVtZW50LmRpcmVjdGl2ZSc7XG4iXX0=
5
+ export * from './visibility-toggle-group/visibility-toggle-group.component';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1zdG9yZS92aXNpYmlsaXR5L3NyYy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw2REFBNkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdG9nZ2xlLWVsZW1lbnQtdmlzaWJpbGl0eS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1lbGVtZW50LXZpc2libGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3Nob3ctZWxlbWVudC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9oaWRlLWVsZW1lbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdmlzaWJpbGl0eS10b2dnbGUtZ3JvdXAvdmlzaWJpbGl0eS10b2dnbGUtZ3JvdXAuY29tcG9uZW50JztcbiJdfQ==
@@ -5,10 +5,10 @@ export class IsElementVisiblePipe {
5
5
  transform(value, ...args) {
6
6
  return selectNgssmVisibilityState(value).elements[args[0]] === true;
7
7
  }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: IsElementVisiblePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: IsElementVisiblePipe, isStandalone: true, name: "isElementVisible" }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: IsElementVisiblePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.2", ngImport: i0, type: IsElementVisiblePipe, isStandalone: true, name: "isElementVisible" }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: IsElementVisiblePipe, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: IsElementVisiblePipe, decorators: [{
12
12
  type: Pipe,
13
13
  args: [{
14
14
  name: 'isElementVisible',
@@ -13,10 +13,10 @@ export class ShowElementDirective {
13
13
  this.store.dispatchAction(new ShowElementAction(elementKey));
14
14
  }
15
15
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ShowElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
17
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ShowElementDirective, isStandalone: true, selector: "[showElement]", inputs: { key: ["showElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ShowElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
17
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: ShowElementDirective, isStandalone: true, selector: "[showElement]", inputs: { key: ["showElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ShowElementDirective, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ShowElementDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -13,10 +13,10 @@ export class ToggleElementVisibilityDirective {
13
13
  this.store.dispatchAction(new ToggleElementVisibilityAction(elementKey));
14
14
  }
15
15
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ToggleElementVisibilityDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
17
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ToggleElementVisibilityDirective, isStandalone: true, selector: "[toggleElementVisibility]", inputs: { key: ["toggleElementVisibility", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ToggleElementVisibilityDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
17
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: ToggleElementVisibilityDirective, isStandalone: true, selector: "[toggleElementVisibility]", inputs: { key: ["toggleElementVisibility", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ToggleElementVisibilityDirective, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ToggleElementVisibilityDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -0,0 +1,25 @@
1
+ import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatButtonToggleModule } from '@angular/material/button-toggle';
4
+ import { NgSsmComponent } from 'ngssm-store';
5
+ import { ToggleElementVisibilityDirective } from '../toggle-element-visibility.directive';
6
+ import { IsElementVisiblePipe } from '../is-element-visible.pipe';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "ngssm-store";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "@angular/material/button-toggle";
11
+ export class VisibilityToggleGroupComponent extends NgSsmComponent {
12
+ constructor(store) {
13
+ super(store);
14
+ this.items = [];
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityToggleGroupComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: VisibilityToggleGroupComponent, isStandalone: true, selector: "ngssm-visibility-toggle-group", inputs: { items: "items" }, usesInheritance: true, ngImport: i0, template: "<mat-button-toggle-group [multiple]=\"true\">\n <mat-button-toggle *ngFor=\"let item of items\" [toggleElementVisibility]=\"item.key\"\n [checked]=\"store.state() | isElementVisible:item.key\">\n {{item.label}}\n </mat-button-toggle>\n</mat-button-toggle-group>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i3.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i3.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: ToggleElementVisibilityDirective, selector: "[toggleElementVisibility]", inputs: ["toggleElementVisibility"] }, { kind: "pipe", type: IsElementVisiblePipe, name: "isElementVisible" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityToggleGroupComponent, decorators: [{
20
+ type: Component,
21
+ args: [{ selector: 'ngssm-visibility-toggle-group', standalone: true, imports: [CommonModule, MatButtonToggleModule, ToggleElementVisibilityDirective, IsElementVisiblePipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-button-toggle-group [multiple]=\"true\">\n <mat-button-toggle *ngFor=\"let item of items\" [toggleElementVisibility]=\"item.key\"\n [checked]=\"store.state() | isElementVisible:item.key\">\n {{item.label}}\n </mat-button-toggle>\n</mat-button-toggle-group>" }]
22
+ }], ctorParameters: function () { return [{ type: i1.Store }]; }, propDecorators: { items: [{
23
+ type: Input
24
+ }] } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaWJpbGl0eS10b2dnbGUtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tc3RvcmUvdmlzaWJpbGl0eS9zcmMvY29tcG9uZW50cy92aXNpYmlsaXR5LXRvZ2dsZS1ncm91cC92aXNpYmlsaXR5LXRvZ2dsZS1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1zdG9yZS92aXNpYmlsaXR5L3NyYy9jb21wb25lbnRzL3Zpc2liaWxpdHktdG9nZ2xlLWdyb3VwL3Zpc2liaWxpdHktdG9nZ2xlLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsY0FBYyxFQUFTLE1BQU0sYUFBYSxDQUFDO0FBRXBELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7OztBQVVsRSxNQUFNLE9BQU8sOEJBQStCLFNBQVEsY0FBYztJQUdoRSxZQUFZLEtBQVk7UUFDdEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSEMsVUFBSyxHQUFxQyxFQUFFLENBQUM7SUFJN0QsQ0FBQzs4R0FMVSw4QkFBOEI7a0dBQTlCLDhCQUE4Qiw0SUNqQjNDLDJSQUswQiwyQ0RPZCxZQUFZLDJKQUFFLHFCQUFxQix1aEJBQUUsZ0NBQWdDLHNHQUFFLG9CQUFvQjs7MkZBSzFGLDhCQUE4QjtrQkFSMUMsU0FBUzsrQkFDRSwrQkFBK0IsY0FDN0IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHFCQUFxQixFQUFFLGdDQUFnQyxFQUFFLG9CQUFvQixDQUFDLG1CQUdyRix1QkFBdUIsQ0FBQyxNQUFNOzRGQUcvQixLQUFLO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlJztcblxuaW1wb3J0IHsgTmdTc21Db21wb25lbnQsIFN0b3JlIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBUb2dnbGVFbGVtZW50VmlzaWJpbGl0eURpcmVjdGl2ZSB9IGZyb20gJy4uL3RvZ2dsZS1lbGVtZW50LXZpc2liaWxpdHkuZGlyZWN0aXZlJztcbmltcG9ydCB7IElzRWxlbWVudFZpc2libGVQaXBlIH0gZnJvbSAnLi4vaXMtZWxlbWVudC12aXNpYmxlLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3NzbS12aXNpYmlsaXR5LXRvZ2dsZS1ncm91cCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSwgVG9nZ2xlRWxlbWVudFZpc2liaWxpdHlEaXJlY3RpdmUsIElzRWxlbWVudFZpc2libGVQaXBlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3Zpc2liaWxpdHktdG9nZ2xlLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVmlzaWJpbGl0eVRvZ2dsZUdyb3VwQ29tcG9uZW50IGV4dGVuZHMgTmdTc21Db21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgaXRlbXM6IHsgbGFiZWw6IHN0cmluZzsga2V5OiBzdHJpbmcgfVtdID0gW107XG5cbiAgY29uc3RydWN0b3Ioc3RvcmU6IFN0b3JlKSB7XG4gICAgc3VwZXIoc3RvcmUpO1xuICB9XG59XG4iLCI8bWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXAgW211bHRpcGxlXT1cInRydWVcIj5cbiAgICA8bWF0LWJ1dHRvbi10b2dnbGUgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXNcIiBbdG9nZ2xlRWxlbWVudFZpc2liaWxpdHldPVwiaXRlbS5rZXlcIlxuICAgICAgICBbY2hlY2tlZF09XCJzdG9yZS5zdGF0ZSgpIHwgaXNFbGVtZW50VmlzaWJsZTppdGVtLmtleVwiPlxuICAgICAgICB7e2l0ZW0ubGFiZWx9fVxuICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG48L21hdC1idXR0b24tdG9nZ2xlLWdyb3VwPiJdfQ==
@@ -74,10 +74,10 @@ export class VisibilityReducer {
74
74
  elements: elementsCommand
75
75
  });
76
76
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: VisibilityReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
78
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: VisibilityReducer }); }
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
78
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityReducer }); }
79
79
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: VisibilityReducer, decorators: [{
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityReducer, decorators: [{
81
81
  type: Injectable
82
82
  }] });
83
83
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaWJpbGl0eS5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tc3RvcmUvdmlzaWJpbGl0eS9zcmMvcmVkdWNlcnMvdmlzaWJpbGl0eS5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNM0MsT0FBTyxFQUdMLHlCQUF5QixFQUcxQixNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBR2xGLE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFa0IscUJBQWdCLEdBQWE7WUFDM0MseUJBQXlCLENBQUMsdUJBQXVCO1lBQ2pELHlCQUF5QixDQUFDLFdBQVc7WUFDckMseUJBQXlCLENBQUMsV0FBVztZQUNyQyx5QkFBeUIsQ0FBQyxtQkFBbUI7U0FDOUMsQ0FBQztLQTRFSDtJQTFFUSxXQUFXLENBQUMsS0FBWSxFQUFFLE1BQWM7UUFDN0MsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ25CLEtBQUsseUJBQXlCLENBQUMsdUJBQXVCLENBQUMsQ0FBQztnQkFDdEQsTUFBTSxzQkFBc0IsR0FBRyxNQUF1QyxDQUFDO2dCQUN2RSxJQUFJLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLENBQUMsS0FBSyxJQUFJLEVBQUU7b0JBQzFGLE9BQU8sMEJBQTBCLENBQUMsS0FBSyxFQUFFO3dCQUN2QyxRQUFRLEVBQUU7NEJBQ1IsQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7eUJBQ3JEO3FCQUNGLENBQUMsQ0FBQztpQkFDSjtnQkFFRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsc0JBQXNCLENB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QUFFO1lBQ3ZDLFFBQVEsRUFBRSxlQUFlO1NBQzFCLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBakZVLGlCQUFpQjtrSEFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTcGVjIH0gZnJvbSAnaW1tdXRhYmlsaXR5LWhlbHBlcic7XG5cbmltcG9ydCB7IFJlZHVjZXIsIFN0YXRlLCBBY3Rpb24gfSBmcm9tICduZ3NzbS1zdG9yZSc7XG5cbmltcG9ydCB7XG4gIERlZmluZUVsZW1lbnRzR3JvdXBBY3Rpb24sXG4gIEhpZGVFbGVtZW50QWN0aW9uLFxuICBOZ3NzbVZpc2liaWxpdHlBY3Rpb25UeXBlLFxuICBTaG93RWxlbWVudEFjdGlvbixcbiAgVG9nZ2xlRWxlbWVudFZpc2liaWxpdHlBY3Rpb25cbn0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBzZWxlY3ROZ3NzbVZpc2liaWxpdHlTdGF0ZSwgdXBkYXRlTmdzc21WaXNpYmlsaXR5U3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBWaXNpYmlsaXR5UmVkdWNlciBpbXBsZW1lbnRzIFJlZHVjZXIge1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvY2Vzc2VkQWN0aW9uczogc3RyaW5nW10gPSBbXG4gICAgTmdzc21WaXNpYmlsaXR5QWN0aW9uVHlwZS50b2dnbGVFbGVtZW50VmlzaWJpbGl0eSxcbiAgICBOZ3NzbVZpc2liaWxpdHlBY3Rpb25UeXBlLnNob3dFbGVtZW50LFxuICAgIE5nc3NtVmlzaWJpbGl0eUFjdGlvblR5cGUuaGlkZUVsZW1lbnQsXG4gICAgTmdzc21WaXNpYmlsaXR5QWN0aW9uVHlwZS5kZWZpbmVFbGVtZW50c0dyb3VwXG4gIF07XG5cbiAgcHVibGljIHVwZGF0ZVN0YXRlKHN0YXRlOiBTdGF0ZSwgYWN0aW9uOiBBY3Rpb24pOiBTdGF0ZSB7XG4gICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgY2FzZSBOZ3NzbVZpc2liaWxpdHlBY3Rpb25UeXBlLnRvZ2dsZUVsZW1lbnRWaXNpYmlsaXR5OiB7XG4gICAgICAgIGNvbnN0IHRvZ2dsZVZpc2liaWxpdHlBY3Rpb24gPSBhY3Rpb24gYXMgVG9nZ2xlRWxlbWVudFZpc2liaWxpdHlBY3Rpb247XG4gICAgICAgIGlmIChzZWxlY3ROZ3NzbVZpc2liaWxpdHlTdGF0ZShzdGF0ZSkuZWxlbWVudHNbdG9nZ2xlVmlzaWJpbGl0eUFjdGlvbi5lbGVtZW50S2V5XSA9PT0gdHJ1ZSkge1xuICAgICAgICAgIHJldHVybiB1cGRhdGVOZ3NzbVZpc2liaWxpdHlTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgICAgZWxlbWVudHM6IHtcbiAgICAgICAgICAgICAgW3RvZ2dsZVZpc2liaWxpdHlBY3Rpb24uZWxlbWVudEtleV06IHsgJHNldDogZmFsc2UgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc2V0RWxlbWVudFZpc2libGUoc3RhdGUsIHRvZ2dsZVZpc2liaWxpdHlBY3Rpb24uZWxlbWVudEtleSk7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgTmdzc21WaXNpYmlsaXR5QWN0aW9uVHlwZS5zaG93RWxlbWVudDoge1xuICAgICAgICBjb25zdCBzaG93QWN0aW9uID0gYWN0aW9uIGFzIFNob3dFbGVtZW50QWN0aW9uO1xuICAgICAgICByZXR1cm4gdGhpcy5zZXRFbGVtZW50VmlzaWJsZShzdGF0ZSwgc2hvd0FjdGlvbi5lbGVtZW50S2V5KTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBOZ3NzbVZpc2liaWxpdHlBY3Rpb25UeXBlLmhpZGVFbGVtZW50OiB7XG4gICAgICAgIGNvbnN0IGhpZGVBY3Rpb24gPSBhY3Rpb24gYXMgSGlkZUVsZW1lbnRBY3Rpb247XG4gICAgICAgIHJldHVybiB1cGRhdGVOZ3NzbVZpc2liaWxpdHlTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgIGVsZW1lbnRzOiB7XG4gICAgICAgICAgICBbaGlkZUFjdGlvbi5lbGVtZW50S2V5XTogeyAkc2V0OiBmYWxzZSB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBOZ3NzbVZpc2liaWxpdHlBY3Rpb25UeXBlLmRlZmluZUVsZW1lbnRzR3JvdXA6IHtcbiAgICAgICAgY29uc3QgZGVmaW5lRWxlbWVudHNHcm91cEFjdGlvbiA9IGFjdGlvbiBhcyBEZWZpbmVFbGVtZW50c0dyb3VwQWN0aW9uO1xuICAgICAgICBjb25zdCBrZXlzID0gWy4uLmRlZmluZUVsZW1lbnRzR3JvdXBBY3Rpb24uZWxlbWVudEtleXNdO1xuICAgICAgICBrZXlzLnNvcnQoKTtcbiAgICAgICAgaWYgKHRoaXMuZ3JvdXBFeGlzdHMoa2V5cywgc2VsZWN0Tmdzc21WaXNpYmlsaXR5U3RhdGUoc3RhdGUpLmVsZW1lbnRzR3JvdXBzKSkge1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHVwZGF0ZU5nc3NtVmlzaWJpbGl0eVN0YXRlKHN0YXRlLCB7XG4gICAgICAgICAgZWxlbWVudHNHcm91cHM6IHsgJHB1c2g6IFtrZXlzXSB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ3JvdXBFeGlzdHMoa2V5czogc3RyaW5nW10sIGdyb3Vwczogc3RyaW5nW11bXSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGluZGV4ID0gZ3JvdXBzLmZpbmRJbmRleCgoZ3JvdXApID0+IHtcbiAgICAgIGdyb3VwLmxlbmd0aCA9PT0ga2V5cy5sZW5ndGggJiYgZ3JvdXAuZmluZEluZGV4KChrLCBpKSA9PiBrICE9PSBrZXlzW2ldKSA9PT0gLTE7XG4gICAgfSk7XG4gICAgcmV0dXJuIGluZGV4ICE9PSAtMTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RWxlbWVudHNLZXlzR3JvdXBlZFdpdGgoa2V5OiBzdHJpbmcsIGdyb3Vwczogc3RyaW5nW11bXSk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBrZXlzID0gZ3JvdXBzLmZpbHRlcigoZykgPT4gZy5pbmNsdWRlcyhrZXkpKS5mbGF0TWFwKChnKSA9PiBnKTtcbiAgICBjb25zdCBkaXN0aW5jdEtleXMgPSBuZXcgU2V0PHN0cmluZz4oa2V5cyk7XG4gICAgZGlzdGluY3RLZXlzLmRlbGV0ZShrZXkpO1xuICAgIHJldHVybiBbLi4uZGlzdGluY3RLZXlzXTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RWxlbWVudFZpc2libGUoc3RhdGU6IFN0YXRlLCBrZXk6IHN0cmluZyk6IFN0YXRlIHtcbiAgICBjb25zdCBlbGVtZW50c0NvbW1hbmQ6IFNwZWM8eyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0sIG5ldmVyPiA9IHtcbiAgICAgIFtrZXldOiB7ICRzZXQ6IHRydWUgfVxuICAgIH07XG5cbiAgICBjb25zdCBhc3NvY2lhdGVkRWxlbWVudHMgPSB0aGlzLmdldEVsZW1lbnRzS2V5c0dyb3VwZWRXaXRoKGtleSwgc2VsZWN0Tmdzc21WaXNpYmlsaXR5U3RhdGUoc3RhdGUpLmVsZW1lbnRzR3JvdXBzKTtcbiAgICBhc3NvY2lhdGVkRWxlbWVudHMuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgIGVsZW1lbnRzQ29tbWFuZFtlbF0gPSB7ICRzZXQ6IGZhbHNlIH07XG4gICAgfSk7XG5cbiAgICByZXR1cm4gdXBkYXRlTmdzc21WaXNpYmlsaXR5U3RhdGUoc3RhdGUsIHtcbiAgICAgIGVsZW1lbnRzOiBlbGVtZW50c0NvbW1hbmRcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -91,10 +91,10 @@ class CachedItemReducer {
91
91
  }
92
92
  return state;
93
93
  }
94
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CachedItemReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
95
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CachedItemReducer }); }
94
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CachedItemReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
95
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CachedItemReducer }); }
96
96
  }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CachedItemReducer, decorators: [{
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CachedItemReducer, decorators: [{
98
98
  type: Injectable
99
99
  }] });
100
100
 
@@ -1,9 +1,13 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, makeEnvironmentProviders, Directive, Input, HostListener, Pipe } from '@angular/core';
2
+ import { Injectable, makeEnvironmentProviders, Directive, Input, HostListener, Pipe, Component, ChangeDetectionStrategy } from '@angular/core';
3
3
  import * as i1 from 'ngssm-store';
4
- import { NgSsmFeatureState, provideReducers } from 'ngssm-store';
4
+ import { NgSsmFeatureState, provideReducers, NgSsmComponent } from 'ngssm-store';
5
5
  import { __decorate } from 'tslib';
6
6
  import update from 'immutability-helper';
7
+ import * as i2 from '@angular/common';
8
+ import { CommonModule } from '@angular/common';
9
+ import * as i3 from '@angular/material/button-toggle';
10
+ import { MatButtonToggleModule } from '@angular/material/button-toggle';
7
11
 
8
12
  var NgssmVisibilityActionType;
9
13
  (function (NgssmVisibilityActionType) {
@@ -133,10 +137,10 @@ class VisibilityReducer {
133
137
  elements: elementsCommand
134
138
  });
135
139
  }
136
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: VisibilityReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
137
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: VisibilityReducer }); }
140
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
141
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityReducer }); }
138
142
  }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: VisibilityReducer, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityReducer, decorators: [{
140
144
  type: Injectable
141
145
  }] });
142
146
 
@@ -155,10 +159,10 @@ class ToggleElementVisibilityDirective {
155
159
  this.store.dispatchAction(new ToggleElementVisibilityAction(elementKey));
156
160
  }
157
161
  }
158
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ToggleElementVisibilityDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
159
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ToggleElementVisibilityDirective, isStandalone: true, selector: "[toggleElementVisibility]", inputs: { key: ["toggleElementVisibility", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ToggleElementVisibilityDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
163
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: ToggleElementVisibilityDirective, isStandalone: true, selector: "[toggleElementVisibility]", inputs: { key: ["toggleElementVisibility", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
160
164
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ToggleElementVisibilityDirective, decorators: [{
165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ToggleElementVisibilityDirective, decorators: [{
162
166
  type: Directive,
163
167
  args: [{
164
168
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -177,10 +181,10 @@ class IsElementVisiblePipe {
177
181
  transform(value, ...args) {
178
182
  return selectNgssmVisibilityState(value).elements[args[0]] === true;
179
183
  }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: IsElementVisiblePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
181
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: IsElementVisiblePipe, isStandalone: true, name: "isElementVisible" }); }
184
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: IsElementVisiblePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
185
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.2", ngImport: i0, type: IsElementVisiblePipe, isStandalone: true, name: "isElementVisible" }); }
182
186
  }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: IsElementVisiblePipe, decorators: [{
187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: IsElementVisiblePipe, decorators: [{
184
188
  type: Pipe,
185
189
  args: [{
186
190
  name: 'isElementVisible',
@@ -199,10 +203,10 @@ class ShowElementDirective {
199
203
  this.store.dispatchAction(new ShowElementAction(elementKey));
200
204
  }
201
205
  }
202
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ShowElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
203
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ShowElementDirective, isStandalone: true, selector: "[showElement]", inputs: { key: ["showElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
206
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ShowElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
207
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: ShowElementDirective, isStandalone: true, selector: "[showElement]", inputs: { key: ["showElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
204
208
  }
205
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ShowElementDirective, decorators: [{
209
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ShowElementDirective, decorators: [{
206
210
  type: Directive,
207
211
  args: [{
208
212
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -228,10 +232,10 @@ class HideElementDirective {
228
232
  this.store.dispatchAction(new HideElementAction(elementKey));
229
233
  }
230
234
  }
231
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: HideElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
232
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: HideElementDirective, isStandalone: true, selector: "[hideElement]", inputs: { key: ["hideElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
235
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: HideElementDirective, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Directive }); }
236
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: HideElementDirective, isStandalone: true, selector: "[hideElement]", inputs: { key: ["hideElement", "key"] }, host: { listeners: { "click": "toggleElementvisibility($event)" } }, ngImport: i0 }); }
233
237
  }
234
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: HideElementDirective, decorators: [{
238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: HideElementDirective, decorators: [{
235
239
  type: Directive,
236
240
  args: [{
237
241
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -246,9 +250,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
246
250
  args: ['click', ['$event']]
247
251
  }] } });
248
252
 
253
+ class VisibilityToggleGroupComponent extends NgSsmComponent {
254
+ constructor(store) {
255
+ super(store);
256
+ this.items = [];
257
+ }
258
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityToggleGroupComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
259
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: VisibilityToggleGroupComponent, isStandalone: true, selector: "ngssm-visibility-toggle-group", inputs: { items: "items" }, usesInheritance: true, ngImport: i0, template: "<mat-button-toggle-group [multiple]=\"true\">\n <mat-button-toggle *ngFor=\"let item of items\" [toggleElementVisibility]=\"item.key\"\n [checked]=\"store.state() | isElementVisible:item.key\">\n {{item.label}}\n </mat-button-toggle>\n</mat-button-toggle-group>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i3.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i3.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: ToggleElementVisibilityDirective, selector: "[toggleElementVisibility]", inputs: ["toggleElementVisibility"] }, { kind: "pipe", type: IsElementVisiblePipe, name: "isElementVisible" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
260
+ }
261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: VisibilityToggleGroupComponent, decorators: [{
262
+ type: Component,
263
+ args: [{ selector: 'ngssm-visibility-toggle-group', standalone: true, imports: [CommonModule, MatButtonToggleModule, ToggleElementVisibilityDirective, IsElementVisiblePipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-button-toggle-group [multiple]=\"true\">\n <mat-button-toggle *ngFor=\"let item of items\" [toggleElementVisibility]=\"item.key\"\n [checked]=\"store.state() | isElementVisible:item.key\">\n {{item.label}}\n </mat-button-toggle>\n</mat-button-toggle-group>" }]
264
+ }], ctorParameters: function () { return [{ type: i1.Store }]; }, propDecorators: { items: [{
265
+ type: Input
266
+ }] } });
267
+
249
268
  /**
250
269
  * Generated bundle index. Do not edit.
251
270
  */
252
271
 
253
- export { DefineElementsGroupAction, HideElementAction, HideElementDirective, IsElementVisiblePipe, NgssmVisibilityActionType, NgssmVisibilityStateSpecification, ShowElementAction, ShowElementDirective, ToggleElementVisibilityAction, ToggleElementVisibilityDirective, provideNgssmVisibility, selectNgssmVisibilityState, updateNgssmVisibilityState };
272
+ export { DefineElementsGroupAction, HideElementAction, HideElementDirective, IsElementVisiblePipe, NgssmVisibilityActionType, NgssmVisibilityStateSpecification, ShowElementAction, ShowElementDirective, ToggleElementVisibilityAction, ToggleElementVisibilityDirective, VisibilityToggleGroupComponent, provideNgssmVisibility, selectNgssmVisibilityState, updateNgssmVisibilityState };
254
273
  //# sourceMappingURL=ngssm-store-visibility.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngssm-store-visibility.mjs","sources":["../../../projects/ngssm-store/visibility/src/actions/ngssm-visibility-action-type.ts","../../../projects/ngssm-store/visibility/src/actions/toggle-element-visibility.action.ts","../../../projects/ngssm-store/visibility/src/actions/show-element.action.ts","../../../projects/ngssm-store/visibility/src/actions/hide-element.action.ts","../../../projects/ngssm-store/visibility/src/actions/define-elements-group.action.ts","../../../projects/ngssm-store/visibility/src/state/ngssm-visibility.state.ts","../../../projects/ngssm-store/visibility/src/reducers/visibility.reducer.ts","../../../projects/ngssm-store/visibility/src/provide-ngssm-visibility.ts","../../../projects/ngssm-store/visibility/src/components/toggle-element-visibility.directive.ts","../../../projects/ngssm-store/visibility/src/components/is-element-visible.pipe.ts","../../../projects/ngssm-store/visibility/src/components/show-element.directive.ts","../../../projects/ngssm-store/visibility/src/components/hide-element.directive.ts","../../../projects/ngssm-store/visibility/ngssm-store-visibility.ts"],"sourcesContent":["export enum NgssmVisibilityActionType {\n defineElementsGroup = '[NgssmVisibilityActionType] defineElementsGroup',\n toggleElementVisibility = '[NgssmVisibilityActionType] toggleElementVisibility',\n hideElement = '[NgssmVisibilityActionType] hideElement',\n showElement = '[NgssmVisibilityActionType] showElement'\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class ToggleElementVisibilityAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.toggleElementVisibility;\n\n constructor(public readonly elementKey: string) {}\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class ShowElementAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.showElement;\n\n constructor(public readonly elementKey: string) {}\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class HideElementAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.hideElement;\n\n constructor(public readonly elementKey: string) {}\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class DefineElementsGroupAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.defineElementsGroup;\n\n constructor(public readonly elementKeys: string[]) {}\n}\n","import update, { Spec } from 'immutability-helper';\n\nimport { NgSsmFeatureState, State } from 'ngssm-store';\n\nexport const selectNgssmVisibilityState = (state: State): NgssmVisibilityState =>\n state[NgssmVisibilityStateSpecification.featureStateKey] as NgssmVisibilityState;\n\nexport const updateNgssmVisibilityState = (state: State, command: Spec<NgssmVisibilityState, never>): State =>\n update(state, {\n [NgssmVisibilityStateSpecification.featureStateKey]: command\n });\n\nexport interface NgssmVisibilityState {\n elements: { [key: string]: boolean };\n elementsGroups: string[][];\n}\n\n@NgSsmFeatureState({\n featureStateKey: NgssmVisibilityStateSpecification.featureStateKey,\n initialState: NgssmVisibilityStateSpecification.initialState\n})\nexport class NgssmVisibilityStateSpecification {\n public static readonly featureStateKey = 'ngssm-visibility-state';\n public static readonly initialState: NgssmVisibilityState = {\n elements: {},\n elementsGroups: []\n };\n}\n","import { Injectable } from '@angular/core';\n\nimport { Spec } from 'immutability-helper';\n\nimport { Reducer, State, Action } from 'ngssm-store';\n\nimport {\n DefineElementsGroupAction,\n HideElementAction,\n NgssmVisibilityActionType,\n ShowElementAction,\n ToggleElementVisibilityAction\n} from '../actions';\nimport { selectNgssmVisibilityState, updateNgssmVisibilityState } from '../state';\n\n@Injectable()\nexport class VisibilityReducer implements Reducer {\n public readonly processedActions: string[] = [\n NgssmVisibilityActionType.toggleElementVisibility,\n NgssmVisibilityActionType.showElement,\n NgssmVisibilityActionType.hideElement,\n NgssmVisibilityActionType.defineElementsGroup\n ];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case NgssmVisibilityActionType.toggleElementVisibility: {\n const toggleVisibilityAction = action as ToggleElementVisibilityAction;\n if (selectNgssmVisibilityState(state).elements[toggleVisibilityAction.elementKey] === true) {\n return updateNgssmVisibilityState(state, {\n elements: {\n [toggleVisibilityAction.elementKey]: { $set: false }\n }\n });\n }\n\n return this.setElementVisible(state, toggleVisibilityAction.elementKey);\n }\n\n case NgssmVisibilityActionType.showElement: {\n const showAction = action as ShowElementAction;\n return this.setElementVisible(state, showAction.elementKey);\n }\n\n case NgssmVisibilityActionType.hideElement: {\n const hideAction = action as HideElementAction;\n return updateNgssmVisibilityState(state, {\n elements: {\n [hideAction.elementKey]: { $set: false }\n }\n });\n }\n\n case NgssmVisibilityActionType.defineElementsGroup: {\n const defineElementsGroupAction = action as DefineElementsGroupAction;\n const keys = [...defineElementsGroupAction.elementKeys];\n keys.sort();\n if (this.groupExists(keys, selectNgssmVisibilityState(state).elementsGroups)) {\n break;\n }\n\n return updateNgssmVisibilityState(state, {\n elementsGroups: { $push: [keys] }\n });\n }\n }\n\n return state;\n }\n\n private groupExists(keys: string[], groups: string[][]): boolean {\n const index = groups.findIndex((group) => {\n group.length === keys.length && group.findIndex((k, i) => k !== keys[i]) === -1;\n });\n return index !== -1;\n }\n\n private getElementsKeysGroupedWith(key: string, groups: string[][]): string[] {\n const keys = groups.filter((g) => g.includes(key)).flatMap((g) => g);\n const distinctKeys = new Set<string>(keys);\n distinctKeys.delete(key);\n return [...distinctKeys];\n }\n\n private setElementVisible(state: State, key: string): State {\n const elementsCommand: Spec<{ [key: string]: boolean }, never> = {\n [key]: { $set: true }\n };\n\n const associatedElements = this.getElementsKeysGroupedWith(key, selectNgssmVisibilityState(state).elementsGroups);\n associatedElements.forEach((el) => {\n elementsCommand[el] = { $set: false };\n });\n\n return updateNgssmVisibilityState(state, {\n elements: elementsCommand\n });\n }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\nimport { provideReducers } from 'ngssm-store';\nimport { VisibilityReducer } from './reducers';\n\nexport const provideNgssmVisibility = (): EnvironmentProviders => {\n return makeEnvironmentProviders([provideReducers(VisibilityReducer)]);\n};\n","import { Directive, HostListener, Input } from '@angular/core';\n\nimport { Store } from 'ngssm-store';\n\nimport { ToggleElementVisibilityAction } from '../actions';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[toggleElementVisibility]',\n standalone: true\n})\nexport class ToggleElementVisibilityDirective {\n @Input('toggleElementVisibility') public key: string | undefined | null = '';\n\n constructor(private store: Store) {}\n\n @HostListener('click', ['$event'])\n public toggleElementvisibility(): void {\n const elementKey = this.key;\n if (elementKey) {\n this.store.dispatchAction(new ToggleElementVisibilityAction(elementKey));\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { State } from 'ngssm-store';\nimport { selectNgssmVisibilityState } from '../state';\n\n@Pipe({\n name: 'isElementVisible',\n standalone: true\n})\nexport class IsElementVisiblePipe implements PipeTransform {\n public transform(value: State, ...args: string[]): boolean {\n return selectNgssmVisibilityState(value).elements[args[0]] === true;\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { Store } from 'ngssm-store';\nimport { ShowElementAction } from '../actions';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[showElement]',\n standalone: true\n})\nexport class ShowElementDirective {\n @Input('showElement') public key: string | undefined | null = '';\n\n constructor(private store: Store) {}\n\n @HostListener('click', ['$event'])\n public toggleElementvisibility(): void {\n const elementKey = this.key;\n if (elementKey) {\n this.store.dispatchAction(new ShowElementAction(elementKey));\n }\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { Store } from 'ngssm-store';\nimport { HideElementAction } from '../actions';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[hideElement]',\n standalone: true\n})\nexport class HideElementDirective {\n @Input('hideElement') public key: string | undefined | null = '';\n\n constructor(private store: Store) {}\n\n @HostListener('click', ['$event'])\n public toggleElementvisibility(): void {\n const elementKey = this.key;\n if (elementKey) {\n this.store.dispatchAction(new HideElementAction(elementKey));\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngssm-store-visibility.mjs","sources":["../../../projects/ngssm-store/visibility/src/actions/ngssm-visibility-action-type.ts","../../../projects/ngssm-store/visibility/src/actions/toggle-element-visibility.action.ts","../../../projects/ngssm-store/visibility/src/actions/show-element.action.ts","../../../projects/ngssm-store/visibility/src/actions/hide-element.action.ts","../../../projects/ngssm-store/visibility/src/actions/define-elements-group.action.ts","../../../projects/ngssm-store/visibility/src/state/ngssm-visibility.state.ts","../../../projects/ngssm-store/visibility/src/reducers/visibility.reducer.ts","../../../projects/ngssm-store/visibility/src/provide-ngssm-visibility.ts","../../../projects/ngssm-store/visibility/src/components/toggle-element-visibility.directive.ts","../../../projects/ngssm-store/visibility/src/components/is-element-visible.pipe.ts","../../../projects/ngssm-store/visibility/src/components/show-element.directive.ts","../../../projects/ngssm-store/visibility/src/components/hide-element.directive.ts","../../../projects/ngssm-store/visibility/src/components/visibility-toggle-group/visibility-toggle-group.component.ts","../../../projects/ngssm-store/visibility/src/components/visibility-toggle-group/visibility-toggle-group.component.html","../../../projects/ngssm-store/visibility/ngssm-store-visibility.ts"],"sourcesContent":["export enum NgssmVisibilityActionType {\n defineElementsGroup = '[NgssmVisibilityActionType] defineElementsGroup',\n toggleElementVisibility = '[NgssmVisibilityActionType] toggleElementVisibility',\n hideElement = '[NgssmVisibilityActionType] hideElement',\n showElement = '[NgssmVisibilityActionType] showElement'\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class ToggleElementVisibilityAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.toggleElementVisibility;\n\n constructor(public readonly elementKey: string) {}\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class ShowElementAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.showElement;\n\n constructor(public readonly elementKey: string) {}\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class HideElementAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.hideElement;\n\n constructor(public readonly elementKey: string) {}\n}\n","import { Action } from 'ngssm-store';\nimport { NgssmVisibilityActionType } from './ngssm-visibility-action-type';\n\nexport class DefineElementsGroupAction implements Action {\n public readonly type: string = NgssmVisibilityActionType.defineElementsGroup;\n\n constructor(public readonly elementKeys: string[]) {}\n}\n","import update, { Spec } from 'immutability-helper';\n\nimport { NgSsmFeatureState, State } from 'ngssm-store';\n\nexport const selectNgssmVisibilityState = (state: State): NgssmVisibilityState =>\n state[NgssmVisibilityStateSpecification.featureStateKey] as NgssmVisibilityState;\n\nexport const updateNgssmVisibilityState = (state: State, command: Spec<NgssmVisibilityState, never>): State =>\n update(state, {\n [NgssmVisibilityStateSpecification.featureStateKey]: command\n });\n\nexport interface NgssmVisibilityState {\n elements: { [key: string]: boolean };\n elementsGroups: string[][];\n}\n\n@NgSsmFeatureState({\n featureStateKey: NgssmVisibilityStateSpecification.featureStateKey,\n initialState: NgssmVisibilityStateSpecification.initialState\n})\nexport class NgssmVisibilityStateSpecification {\n public static readonly featureStateKey = 'ngssm-visibility-state';\n public static readonly initialState: NgssmVisibilityState = {\n elements: {},\n elementsGroups: []\n };\n}\n","import { Injectable } from '@angular/core';\n\nimport { Spec } from 'immutability-helper';\n\nimport { Reducer, State, Action } from 'ngssm-store';\n\nimport {\n DefineElementsGroupAction,\n HideElementAction,\n NgssmVisibilityActionType,\n ShowElementAction,\n ToggleElementVisibilityAction\n} from '../actions';\nimport { selectNgssmVisibilityState, updateNgssmVisibilityState } from '../state';\n\n@Injectable()\nexport class VisibilityReducer implements Reducer {\n public readonly processedActions: string[] = [\n NgssmVisibilityActionType.toggleElementVisibility,\n NgssmVisibilityActionType.showElement,\n NgssmVisibilityActionType.hideElement,\n NgssmVisibilityActionType.defineElementsGroup\n ];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case NgssmVisibilityActionType.toggleElementVisibility: {\n const toggleVisibilityAction = action as ToggleElementVisibilityAction;\n if (selectNgssmVisibilityState(state).elements[toggleVisibilityAction.elementKey] === true) {\n return updateNgssmVisibilityState(state, {\n elements: {\n [toggleVisibilityAction.elementKey]: { $set: false }\n }\n });\n }\n\n return this.setElementVisible(state, toggleVisibilityAction.elementKey);\n }\n\n case NgssmVisibilityActionType.showElement: {\n const showAction = action as ShowElementAction;\n return this.setElementVisible(state, showAction.elementKey);\n }\n\n case NgssmVisibilityActionType.hideElement: {\n const hideAction = action as HideElementAction;\n return updateNgssmVisibilityState(state, {\n elements: {\n [hideAction.elementKey]: { $set: false }\n }\n });\n }\n\n case NgssmVisibilityActionType.defineElementsGroup: {\n const defineElementsGroupAction = action as DefineElementsGroupAction;\n const keys = [...defineElementsGroupAction.elementKeys];\n keys.sort();\n if (this.groupExists(keys, selectNgssmVisibilityState(state).elementsGroups)) {\n break;\n }\n\n return updateNgssmVisibilityState(state, {\n elementsGroups: { $push: [keys] }\n });\n }\n }\n\n return state;\n }\n\n private groupExists(keys: string[], groups: string[][]): boolean {\n const index = groups.findIndex((group) => {\n group.length === keys.length && group.findIndex((k, i) => k !== keys[i]) === -1;\n });\n return index !== -1;\n }\n\n private getElementsKeysGroupedWith(key: string, groups: string[][]): string[] {\n const keys = groups.filter((g) => g.includes(key)).flatMap((g) => g);\n const distinctKeys = new Set<string>(keys);\n distinctKeys.delete(key);\n return [...distinctKeys];\n }\n\n private setElementVisible(state: State, key: string): State {\n const elementsCommand: Spec<{ [key: string]: boolean }, never> = {\n [key]: { $set: true }\n };\n\n const associatedElements = this.getElementsKeysGroupedWith(key, selectNgssmVisibilityState(state).elementsGroups);\n associatedElements.forEach((el) => {\n elementsCommand[el] = { $set: false };\n });\n\n return updateNgssmVisibilityState(state, {\n elements: elementsCommand\n });\n }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\nimport { provideReducers } from 'ngssm-store';\nimport { VisibilityReducer } from './reducers';\n\nexport const provideNgssmVisibility = (): EnvironmentProviders => {\n return makeEnvironmentProviders([provideReducers(VisibilityReducer)]);\n};\n","import { Directive, HostListener, Input } from '@angular/core';\n\nimport { Store } from 'ngssm-store';\n\nimport { ToggleElementVisibilityAction } from '../actions';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[toggleElementVisibility]',\n standalone: true\n})\nexport class ToggleElementVisibilityDirective {\n @Input('toggleElementVisibility') public key: string | undefined | null = '';\n\n constructor(private store: Store) {}\n\n @HostListener('click', ['$event'])\n public toggleElementvisibility(): void {\n const elementKey = this.key;\n if (elementKey) {\n this.store.dispatchAction(new ToggleElementVisibilityAction(elementKey));\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { State } from 'ngssm-store';\nimport { selectNgssmVisibilityState } from '../state';\n\n@Pipe({\n name: 'isElementVisible',\n standalone: true\n})\nexport class IsElementVisiblePipe implements PipeTransform {\n public transform(value: State, ...args: string[]): boolean {\n return selectNgssmVisibilityState(value).elements[args[0]] === true;\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { Store } from 'ngssm-store';\nimport { ShowElementAction } from '../actions';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[showElement]',\n standalone: true\n})\nexport class ShowElementDirective {\n @Input('showElement') public key: string | undefined | null = '';\n\n constructor(private store: Store) {}\n\n @HostListener('click', ['$event'])\n public toggleElementvisibility(): void {\n const elementKey = this.key;\n if (elementKey) {\n this.store.dispatchAction(new ShowElementAction(elementKey));\n }\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { Store } from 'ngssm-store';\nimport { HideElementAction } from '../actions';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[hideElement]',\n standalone: true\n})\nexport class HideElementDirective {\n @Input('hideElement') public key: string | undefined | null = '';\n\n constructor(private store: Store) {}\n\n @HostListener('click', ['$event'])\n public toggleElementvisibility(): void {\n const elementKey = this.key;\n if (elementKey) {\n this.store.dispatchAction(new HideElementAction(elementKey));\n }\n }\n}\n","import { Component, ChangeDetectionStrategy, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\n\nimport { NgSsmComponent, Store } from 'ngssm-store';\n\nimport { ToggleElementVisibilityDirective } from '../toggle-element-visibility.directive';\nimport { IsElementVisiblePipe } from '../is-element-visible.pipe';\n\n@Component({\n selector: 'ngssm-visibility-toggle-group',\n standalone: true,\n imports: [CommonModule, MatButtonToggleModule, ToggleElementVisibilityDirective, IsElementVisiblePipe],\n templateUrl: './visibility-toggle-group.component.html',\n styleUrls: [],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class VisibilityToggleGroupComponent extends NgSsmComponent {\n @Input() public items: { label: string; key: string }[] = [];\n\n constructor(store: Store) {\n super(store);\n }\n}\n","<mat-button-toggle-group [multiple]=\"true\">\n <mat-button-toggle *ngFor=\"let item of items\" [toggleElementVisibility]=\"item.key\"\n [checked]=\"store.state() | isElementVisible:item.key\">\n {{item.label}}\n </mat-button-toggle>\n</mat-button-toggle-group>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -51,10 +51,10 @@ class Logger {
51
51
  payload
52
52
  });
53
53
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Logger, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Logger, providedIn: 'root' }); }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Logger, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Logger, providedIn: 'root' }); }
56
56
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Logger, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Logger, decorators: [{
58
58
  type: Injectable,
59
59
  args: [{
60
60
  providedIn: 'root'
@@ -90,10 +90,10 @@ class ConsoleAppender {
90
90
  stop() {
91
91
  this.stopEvent$.next(true);
92
92
  }
93
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleAppender, deps: [{ token: Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
94
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleAppender, providedIn: 'root' }); }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConsoleAppender, deps: [{ token: Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
94
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConsoleAppender, providedIn: 'root' }); }
95
95
  }
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleAppender, decorators: [{
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConsoleAppender, decorators: [{
97
97
  type: Injectable,
98
98
  args: [{
99
99
  providedIn: 'root'
@@ -202,10 +202,10 @@ class Store {
202
202
  setTimeout(() => this.processNextAction());
203
203
  }
204
204
  }
205
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Store, deps: [{ token: Logger }, { token: NGSSM_REDUCER, optional: true }, { token: NGSSM_EFFECT, optional: true }, { token: NGSSM_STATE_INITIALIZER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
206
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Store, providedIn: 'root' }); }
205
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Store, deps: [{ token: Logger }, { token: NGSSM_REDUCER, optional: true }, { token: NGSSM_EFFECT, optional: true }, { token: NGSSM_STATE_INITIALIZER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
206
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Store, providedIn: 'root' }); }
207
207
  }
208
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: Store, decorators: [{
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: Store, decorators: [{
209
209
  type: Injectable,
210
210
  args: [{
211
211
  providedIn: 'root'
@@ -248,10 +248,10 @@ class NgSsmComponent {
248
248
  dispatchActionType(actionType) {
249
249
  this.store.dispatchActionType(actionType);
250
250
  }
251
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgSsmComponent, deps: [{ token: Store }], target: i0.ɵɵFactoryTarget.Directive }); }
252
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NgSsmComponent, ngImport: i0 }); }
251
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgSsmComponent, deps: [{ token: Store }], target: i0.ɵɵFactoryTarget.Directive }); }
252
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: NgSsmComponent, ngImport: i0 }); }
253
253
  }
254
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgSsmComponent, decorators: [{
254
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgSsmComponent, decorators: [{
255
255
  type: Directive,
256
256
  args: [{}]
257
257
  }], ctorParameters: function () { return [{ type: Store }]; } });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngssm-store",
3
- "version": "16.1.11",
3
+ "version": "16.2.0",
4
4
  "description": "NgSsm - Simple state management implementation.",
5
5
  "author": "Lion Marc",
6
6
  "license": "MIT",
@@ -2,3 +2,4 @@ export * from './toggle-element-visibility.directive';
2
2
  export * from './is-element-visible.pipe';
3
3
  export * from './show-element.directive';
4
4
  export * from './hide-element.directive';
5
+ export * from './visibility-toggle-group/visibility-toggle-group.component';
@@ -0,0 +1,11 @@
1
+ import { NgSsmComponent, Store } from 'ngssm-store';
2
+ import * as i0 from "@angular/core";
3
+ export declare class VisibilityToggleGroupComponent extends NgSsmComponent {
4
+ items: {
5
+ label: string;
6
+ key: string;
7
+ }[];
8
+ constructor(store: Store);
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisibilityToggleGroupComponent, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisibilityToggleGroupComponent, "ngssm-visibility-toggle-group", never, { "items": { "alias": "items"; "required": false; }; }, {}, never, never, true, never>;
11
+ }