suis 0.19.0 → 0.20.0

Sign up to get free protection for your applications and to get access to all the features.
package/README.md CHANGED
@@ -35,6 +35,7 @@ Modern UI component library. Supports Angular in version 16 and uses its latest
35
35
  | NavigationGroupItem | SuisNavigationGroupItem | suis-navigation-group-item | 0.17.0 |
36
36
  | Breadcrumbs | SuisBreadcrumbs | suis-breadcrumbs | 0.18.0 |
37
37
  | Title | SuisTitle | suis-title | 0.19.0 |
38
+ | Table | SuisTable | suis-table | 0.20.0 |
38
39
 
39
40
  ## Pipes
40
41
 
@@ -22,5 +22,6 @@ export * from './suis-select-option';
22
22
  export * from './suis-select-multi';
23
23
  export * from './suis-spinner';
24
24
  export * from './suis-spinner-container';
25
+ export * from './suis-table';
25
26
  export * from './suis-title';
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3Vpcy1hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtYm94JztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1icmVhZGNydW1icyc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtYnV0dG9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1jaGlwJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1jb250YWluZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWZvcm0tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWljb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWlucHV0LWNoaXBzJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1pbnB1dC1udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWlucHV0LXRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWxhYmVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1uYXZpZ2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1uYXZpZ2F0aW9uLWdyb3VwJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLW5hdmlnYXRpb24taXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1ub3RpZmljYXRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1wcm9ncmVzcy1iYXInO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLXNlbGVjdCc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtc2VsZWN0LW9wdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtc2VsZWN0LW11bHRpJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1zcGlubmVyJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1zcGlubmVyLWNvbnRhaW5lcic7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtdGl0bGUnO1xuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3Vpcy1hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtYm94JztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1icmVhZGNydW1icyc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtYnV0dG9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1jaGlwJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1jb250YWluZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWZvcm0tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWljb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWlucHV0LWNoaXBzJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1pbnB1dC1udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWlucHV0LXRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLWxhYmVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1uYXZpZ2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1uYXZpZ2F0aW9uLWdyb3VwJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLW5hdmlnYXRpb24taXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1ub3RpZmljYXRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1wcm9ncmVzcy1iYXInO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLXNlbGVjdCc7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtc2VsZWN0LW9wdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtc2VsZWN0LW11bHRpJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1zcGlubmVyJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy1zcGlubmVyLWNvbnRhaW5lcic7XG5leHBvcnQgKiBmcm9tICcuL3N1aXMtdGFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLXRpdGxlJztcbiJdfQ==
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
59
59
  type: HostListener,
60
60
  args: ['click']
61
61
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zdWlzL3NyYy9saWIvY29tcG9uZW50cy9zdWlzLWJ1dHRvbi9zdWlzLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL3N1aXMtYnV0dG9uL3N1aXMtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBRXRELE1BZWEsbUJBQ1gsU0FBUSxjQUFjO0lBR3RCLGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQzdCLGdCQUFnQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQzdCLENBQUM7SUFDSixDQUFDOzhHQVZVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLDBNQ3pCaEMscU1BTUEsMDRERFFZLFlBQVk7O1NBV1gsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBZi9CLFNBQVM7K0JBRUUsb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBRS9CO3dCQUNKLGlCQUFpQixFQUFFLGtCQUFrQjt3QkFDckMsaUJBQWlCLEVBQUUsbUJBQW1CO3FCQUN2Qzs7QUFlSCxNQWVhLDJCQUNYLFNBQVEsY0FBYztJQUd0QixlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUM3QixzQkFBc0IsQ0FDdkIsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IseUJBQXlCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDdEMsQ0FBQztJQUNKLENBQUM7OEdBYlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsa05DckR4QyxxTUFNQSx1dEVEb0NZLFlBQVk7O1NBV1gsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBZnZDLFNBQVM7K0JBRUUsNEJBQTRCLGNBQzFCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBRS9CO3dCQUNKLGlCQUFpQixFQUFFLGtCQUFrQjt3QkFDckMsaUJBQWlCLEVBQUUsbUJBQW1CO3FCQUN2Qzs7QUFrQkgsTUFjYSx5QkFDWCxTQUFRLGNBQWM7SUFHdEIsZUFBZTtRQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IsZ0JBQWdCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDN0IsQ0FBQztJQUNKLENBQUM7SUFHRCxPQUFPLENBQUMsS0FBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQzs4R0FsQlUseUJBQXlCO2tHQUF6Qix5QkFBeUIscU1DbkZ0QyxxTUFNQSwwNEREbUVZLFlBQVk7O1NBVVgseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBZHJDLFNBQVM7K0JBRUUsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBRS9CO3dCQUNKLGlCQUFpQixFQUFFLG1CQUFtQjtxQkFDdkM7OEJBZUQsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBIb3N0TGlzdGVuZXIsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTdWlzQnV0dG9uQmFzZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9jbGFzc2VzJztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnYnV0dG9uW3N1aXNCdXR0b25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9zdWlzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N1aXMtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWhvc3QtbWV0YWRhdGEtcHJvcGVydHlcbiAgaG9zdDoge1xuICAgICdbYXR0ci5kaXNhYmxlZF0nOiAnZGlzYWJsZWQgfHwgbnVsbCcsXG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdkaXNhYmxlZCA/IC0xIDogMCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFN1aXNCdXR0b25Db21wb25lbnRcbiAgZXh0ZW5kcyBTdWlzQnV0dG9uQmFzZVxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcbntcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnc3Vpcy1idXR0b24nKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hZGRDbGFzcyhcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgYHN1aXMtYnV0dG9uLS0ke3RoaXMuY29sb3J9YFxuICAgICk7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnYnV0dG9uW3N1aXNCdXR0b25PdXRsaW5lZF0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3N1aXMtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3Vpcy1idXR0b24tb3V0bGluZWQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxuICBob3N0OiB7XG4gICAgJ1thdHRyLmRpc2FibGVkXSc6ICdkaXNhYmxlZCB8fCBudWxsJyxcbiAgICAnW2F0dHIudGFiaW5kZXhdJzogJ2Rpc2FibGVkID8gLTEgOiAwJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU3Vpc0J1dHRvbk91dGxpbmVkQ29tcG9uZW50XG4gIGV4dGVuZHMgU3Vpc0J1dHRvbkJhc2VcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0XG57XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyMi5hZGRDbGFzcyhcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgJ3N1aXMtYnV0dG9uLW91dGxpbmVkJ1xuICAgICk7XG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3MoXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgIGBzdWlzLWJ1dHRvbi1vdXRsaW5lZC0tJHt0aGlzLmNvbG9yfWBcbiAgICApO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2Fbc3Vpc0J1dHRvbl0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3N1aXMtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3Vpcy1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxuICBob3N0OiB7XG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdkaXNhYmxlZCA/IC0xIDogMCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFN1aXNBbmNob3JCdXR0b25Db21wb25lbnRcbiAgZXh0ZW5kcyBTdWlzQnV0dG9uQmFzZVxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcbntcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnc3Vpcy1idXR0b24nKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hZGRDbGFzcyhcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgYHN1aXMtYnV0dG9uLS0ke3RoaXMuY29sb3J9YFxuICAgICk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIG9uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9hZGluZzsgZWxzZSBzcGlubmVyXCI+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXRlbXBsYXRlICNzcGlubmVyPlxyXG4gIDwhLS0gVE9ETzogPHN1aXMtc3Bpbm5lcj48L3N1aXMtc3Bpbm5lcj4gLS0+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zdWlzL3NyYy9saWIvY29tcG9uZW50cy9zdWlzLWJ1dHRvbi9zdWlzLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL3N1aXMtYnV0dG9uL3N1aXMtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBRXRELE1BZWEsbUJBQ1gsU0FBUSxjQUFjO0lBR3RCLGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQzdCLGdCQUFnQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQzdCLENBQUM7SUFDSixDQUFDOzhHQVZVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLDBNQ3pCaEMscU1BTUEsMDRERFFZLFlBQVk7O1NBV1gsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBZi9CLFNBQVM7K0JBRUUsb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBRS9CO3dCQUNKLGlCQUFpQixFQUFFLGtCQUFrQjt3QkFDckMsaUJBQWlCLEVBQUUsbUJBQW1CO3FCQUN2Qzs7QUFlSCxNQWVhLDJCQUNYLFNBQVEsY0FBYztJQUd0QixlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUM3QixzQkFBc0IsQ0FDdkIsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IseUJBQXlCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDdEMsQ0FBQztJQUNKLENBQUM7OEdBYlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsa05DckR4QyxxTUFNQSx1dEVEb0NZLFlBQVk7O1NBV1gsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBZnZDLFNBQVM7K0JBRUUsNEJBQTRCLGNBQzFCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBRS9CO3dCQUNKLGlCQUFpQixFQUFFLGtCQUFrQjt3QkFDckMsaUJBQWlCLEVBQUUsbUJBQW1CO3FCQUN2Qzs7QUFrQkgsTUFjYSx5QkFDWCxTQUFRLGNBQWM7SUFHdEIsZUFBZTtRQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IsZ0JBQWdCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDN0IsQ0FBQztJQUNKLENBQUM7SUFHRCxPQUFPLENBQUMsS0FBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQzs4R0FsQlUseUJBQXlCO2tHQUF6Qix5QkFBeUIscU1DbkZ0QyxxTUFNQSwwNEREbUVZLFlBQVk7O1NBVVgseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBZHJDLFNBQVM7K0JBRUUsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBRS9CO3dCQUNKLGlCQUFpQixFQUFFLG1CQUFtQjtxQkFDdkM7OEJBZUQsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU3Vpc0J1dHRvbkJhc2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvY2xhc3Nlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnYnV0dG9uW3N1aXNCdXR0b25dJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdWlzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3Vpcy1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGhvc3Q6IHtcclxuICAgICdbYXR0ci5kaXNhYmxlZF0nOiAnZGlzYWJsZWQgfHwgbnVsbCcsXHJcbiAgICAnW2F0dHIudGFiaW5kZXhdJzogJ2Rpc2FibGVkID8gLTEgOiAwJyxcclxuICB9LFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vpc0J1dHRvbkNvbXBvbmVudFxyXG4gIGV4dGVuZHMgU3Vpc0J1dHRvbkJhc2VcclxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcclxue1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnc3Vpcy1idXR0b24nKTtcclxuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKFxyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcclxuICAgICAgYHN1aXMtYnV0dG9uLS0ke3RoaXMuY29sb3J9YFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdidXR0b25bc3Vpc0J1dHRvbk91dGxpbmVkXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3Vpcy1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N1aXMtYnV0dG9uLW91dGxpbmVkLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWhvc3QtbWV0YWRhdGEtcHJvcGVydHlcclxuICBob3N0OiB7XHJcbiAgICAnW2F0dHIuZGlzYWJsZWRdJzogJ2Rpc2FibGVkIHx8IG51bGwnLFxyXG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdkaXNhYmxlZCA/IC0xIDogMCcsXHJcbiAgfSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN1aXNCdXR0b25PdXRsaW5lZENvbXBvbmVudFxyXG4gIGV4dGVuZHMgU3Vpc0J1dHRvbkJhc2VcclxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcclxue1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKFxyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcclxuICAgICAgJ3N1aXMtYnV0dG9uLW91dGxpbmVkJ1xyXG4gICAgKTtcclxuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKFxyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcclxuICAgICAgYHN1aXMtYnV0dG9uLW91dGxpbmVkLS0ke3RoaXMuY29sb3J9YFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdhW3N1aXNCdXR0b25dJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdWlzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3Vpcy1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGhvc3Q6IHtcclxuICAgICdbYXR0ci50YWJpbmRleF0nOiAnZGlzYWJsZWQgPyAtMSA6IDAnLFxyXG4gIH0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdWlzQW5jaG9yQnV0dG9uQ29tcG9uZW50XHJcbiAgZXh0ZW5kcyBTdWlzQnV0dG9uQmFzZVxyXG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdFxyXG57XHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdzdWlzLWJ1dHRvbicpO1xyXG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3MoXHJcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxyXG4gICAgICBgc3Vpcy1idXR0b24tLSR7dGhpcy5jb2xvcn1gXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxyXG4gIG9uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsb2FkaW5nOyBlbHNlIHNwaW5uZXJcIj5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI3NwaW5uZXI+XHJcbiAgPCEtLSBUT0RPOiA8c3Vpcy1zcGlubmVyPjwvc3Vpcy1zcGlubmVyPiAtLT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -0,0 +1,5 @@
1
+ export * from './suis-table.component';
2
+ export * from './suis-table-column.directive';
3
+ export * from './suis-table-cell.directive';
4
+ export * from './suis-table.interfaces';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL3N1aXMtdGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3Vpcy10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLXRhYmxlLWNvbHVtbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWlzLXRhYmxlLWNlbGwuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3Vpcy10YWJsZS5pbnRlcmZhY2VzJztcbiJdfQ==
@@ -0,0 +1,22 @@
1
+ import { Directive, TemplateRef, inject } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ class SuisTableCellDirective {
4
+ constructor() {
5
+ /**
6
+ * Template of the table cell.
7
+ */
8
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
+ this.templateRef = inject((TemplateRef));
10
+ }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
12
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SuisTableCellDirective, isStandalone: true, selector: "[suisTableCell]", ngImport: i0 }); }
13
+ }
14
+ export { SuisTableCellDirective };
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableCellDirective, decorators: [{
16
+ type: Directive,
17
+ args: [{
18
+ selector: '[suisTableCell]',
19
+ standalone: true,
20
+ }]
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy10YWJsZS1jZWxsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc3Vpcy9zcmMvbGliL2NvbXBvbmVudHMvc3Vpcy10YWJsZS9zdWlzLXRhYmxlLWNlbGwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFL0QsTUFJYSxzQkFBc0I7SUFKbkM7UUFLRTs7V0FFRztRQUNILDhEQUE4RDtRQUM5QyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxDQUFBLFdBQWdCLENBQUEsQ0FBQyxDQUFDO0tBQ3hEOzhHQU5ZLHNCQUFzQjtrR0FBdEIsc0JBQXNCOztTQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3N1aXNUYWJsZUNlbGxdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU3Vpc1RhYmxlQ2VsbERpcmVjdGl2ZSB7XG4gIC8qKlxuICAgKiBUZW1wbGF0ZSBvZiB0aGUgdGFibGUgY2VsbC5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHB1YmxpYyByZWFkb25seSB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZjxhbnk+KTtcbn1cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { ContentChild, Directive, Input } from '@angular/core';
2
+ import { SuisTableCellDirective } from './suis-table-cell.directive';
3
+ import * as i0 from "@angular/core";
4
+ class SuisTableColumnDirective {
5
+ constructor() {
6
+ this._name = '';
7
+ this._orderProperty = '';
8
+ }
9
+ /** Unique name for this column. */
10
+ get name() {
11
+ return this._name;
12
+ }
13
+ set name(name) {
14
+ this._name = name;
15
+ }
16
+ get orderProperty() {
17
+ return this._orderProperty;
18
+ }
19
+ set orderProperty(orderProperty) {
20
+ this._orderProperty = orderProperty;
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SuisTableColumnDirective, isStandalone: true, selector: "[suisTableColumn]", inputs: { name: ["suisTableColumn", "name"], orderProperty: ["suisTableColumnOrderProperty", "orderProperty"] }, queries: [{ propertyName: "cell", first: true, predicate: SuisTableCellDirective, descendants: true }], ngImport: i0 }); }
24
+ }
25
+ export { SuisTableColumnDirective };
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableColumnDirective, decorators: [{
27
+ type: Directive,
28
+ args: [{
29
+ selector: '[suisTableColumn]',
30
+ standalone: true,
31
+ }]
32
+ }], propDecorators: { cell: [{
33
+ type: ContentChild,
34
+ args: [SuisTableCellDirective]
35
+ }], name: [{
36
+ type: Input,
37
+ args: ['suisTableColumn']
38
+ }], orderProperty: [{
39
+ type: Input,
40
+ args: ['suisTableColumnOrderProperty']
41
+ }] } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy10YWJsZS1jb2x1bW4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zdWlzL3NyYy9saWIvY29tcG9uZW50cy9zdWlzLXRhYmxlL3N1aXMtdGFibGUtY29sdW1uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBRXJFLE1BSWEsd0JBQXdCO0lBSnJDO1FBT1ksVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixtQkFBYyxHQUFXLEVBQUUsQ0FBQztLQW9CdkM7SUFsQkMsbUNBQW1DO0lBQ25DLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsSUFBWTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFDSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxhQUFxQjtRQUNyQyxJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQztJQUN0QyxDQUFDOzhHQXZCVSx3QkFBd0I7a0dBQXhCLHdCQUF3QixnT0FDckIsc0JBQXNCOztTQUR6Qix3QkFBd0I7MkZBQXhCLHdCQUF3QjtrQkFKcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBRXVDLElBQUk7c0JBQXpDLFlBQVk7dUJBQUMsc0JBQXNCO2dCQU9oQyxJQUFJO3NCQURQLEtBQUs7dUJBQUMsaUJBQWlCO2dCQVVwQixhQUFhO3NCQURoQixLQUFLO3VCQUFDLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vpc1RhYmxlQ2VsbERpcmVjdGl2ZSB9IGZyb20gJy4vc3Vpcy10YWJsZS1jZWxsLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzdWlzVGFibGVDb2x1bW5dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU3Vpc1RhYmxlQ29sdW1uRGlyZWN0aXZlIHtcbiAgQENvbnRlbnRDaGlsZChTdWlzVGFibGVDZWxsRGlyZWN0aXZlKSBjZWxsPzogU3Vpc1RhYmxlQ2VsbERpcmVjdGl2ZTtcblxuICBwcm90ZWN0ZWQgX25hbWU6IHN0cmluZyA9ICcnO1xuICBwcm90ZWN0ZWQgX29yZGVyUHJvcGVydHk6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBVbmlxdWUgbmFtZSBmb3IgdGhpcyBjb2x1bW4uICovXG4gIEBJbnB1dCgnc3Vpc1RhYmxlQ29sdW1uJylcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuXG4gIHNldCBuYW1lKG5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuX25hbWUgPSBuYW1lO1xuICB9XG5cbiAgQElucHV0KCdzdWlzVGFibGVDb2x1bW5PcmRlclByb3BlcnR5JylcbiAgZ2V0IG9yZGVyUHJvcGVydHkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fb3JkZXJQcm9wZXJ0eTtcbiAgfVxuXG4gIHNldCBvcmRlclByb3BlcnR5KG9yZGVyUHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMuX29yZGVyUHJvcGVydHkgPSBvcmRlclByb3BlcnR5O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,71 @@
1
+ import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Input, Output, QueryList, } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SuisSpinnerContainerComponent } from '../suis-spinner-container';
4
+ import { SuisTableColumnDirective } from './suis-table-column.directive';
5
+ import { SuisIconComponent, SuisIconType } from '../suis-icon';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ class SuisTableComponent {
9
+ constructor() {
10
+ /** @internal */
11
+ this.SuisIconType = SuisIconType;
12
+ /**
13
+ * Data items collection. Type of SuisTableDataItem[]. By default set to empty array. Required input.
14
+ */
15
+ this.data = [];
16
+ /**
17
+ * Specifies property that data is ordered. By default set to empty string.
18
+ */
19
+ this.orderBy = '';
20
+ /**
21
+ * Specifies sort condition. Accepted values - 'asc' and 'desc'. By default set to 'asc'.
22
+ */
23
+ this.sortBy = 'asc';
24
+ /**
25
+ * Shows loading spinner and blurs data. By default set to false.
26
+ */
27
+ this.loading = false;
28
+ /**
29
+ * Emits value on sort condition change.
30
+ */
31
+ this.sortByChange = new EventEmitter();
32
+ /**
33
+ * Emits value on order property change.
34
+ */
35
+ this.orderByChange = new EventEmitter();
36
+ }
37
+ onColumnClick(property) {
38
+ if (this.orderBy !== property) {
39
+ this.orderBy = property;
40
+ this.orderByChange.emit(this.orderBy);
41
+ }
42
+ else {
43
+ this.sortBy = this.sortBy === 'asc' ? 'desc' : 'asc';
44
+ this.sortByChange.emit(this.sortBy);
45
+ }
46
+ }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SuisTableComponent, isStandalone: true, selector: "suis-table", inputs: { data: "data", orderBy: "orderBy", sortBy: "sortBy", loading: "loading" }, outputs: { sortByChange: "sortByChange", orderByChange: "orderByChange" }, queries: [{ propertyName: "columns", predicate: SuisTableColumnDirective }], ngImport: i0, template: "<table *ngIf=\"columns\" class=\"suis-table\">\n <thead>\n <tr>\n <th\n *ngFor=\"let column of columns\"\n [class.pointer]=\"column.orderProperty\"\n (click)=\"\n column.orderProperty ? onColumnClick(column.orderProperty) : undefined\n \"\n >\n <div class=\"suis-table__header\">\n <span>\n {{ column.name }}\n </span>\n <suis-icon\n *ngIf=\"column.orderProperty === orderBy\"\n [type]=\"\n sortBy === 'asc'\n ? SuisIconType.CHEVRON_DOWN\n : SuisIconType.CHEVRON_UP\n \"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\">\n <td *ngFor=\"let column of columns\">\n <ng-container\n *ngTemplateOutlet=\"\n column.cell!.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </td>\n </tr>\n <suis-spinner-container\n *ngIf=\"loading\"\n [absolute]=\"true\"\n [blur]=\"true\"\n ></suis-spinner-container>\n </tbody>\n</table>\n\n<!-- TODO: <suis-pagination></suis-pagination> -->\n", styles: ["*{margin:0;padding:0;box-sizing:border-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.suis-table{width:100%;border-collapse:collapse}.suis-table thead{background-color:#273c75;color:#fff}.suis-table thead tr th{font-weight:600;padding:.75rem 1rem}.suis-table thead tr th:first-child{border-top-left-radius:.25rem}.suis-table thead tr th:last-child{border-top-right-radius:.25rem}.suis-table thead tr th.pointer{cursor:pointer}.suis-table thead tr th>.suis-table__header{display:flex;align-items:center}.suis-table thead tr th>.suis-table__header suis-icon{display:block;margin-left:.125rem}.suis-table tbody{position:relative;background-color:#f5f6fa}.suis-table tbody tr{border-bottom:.0625rem solid #dcdde1}.suis-table tbody tr:hover{background-color:#dcdde1d9}.suis-table tbody tr td{padding:.375rem 1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SuisIconComponent, selector: "suis-icon", inputs: ["size", "color", "type", "outlined", "filled", "pointer", "bold"] }, { kind: "component", type: SuisSpinnerContainerComponent, selector: "suis-spinner-container", inputs: ["size", "color", "blur", "absolute"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
49
+ }
50
+ export { SuisTableComponent };
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableComponent, decorators: [{
52
+ type: Component,
53
+ args: [{ selector: 'suis-table', standalone: true, imports: [CommonModule, SuisIconComponent, SuisSpinnerContainerComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<table *ngIf=\"columns\" class=\"suis-table\">\n <thead>\n <tr>\n <th\n *ngFor=\"let column of columns\"\n [class.pointer]=\"column.orderProperty\"\n (click)=\"\n column.orderProperty ? onColumnClick(column.orderProperty) : undefined\n \"\n >\n <div class=\"suis-table__header\">\n <span>\n {{ column.name }}\n </span>\n <suis-icon\n *ngIf=\"column.orderProperty === orderBy\"\n [type]=\"\n sortBy === 'asc'\n ? SuisIconType.CHEVRON_DOWN\n : SuisIconType.CHEVRON_UP\n \"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\">\n <td *ngFor=\"let column of columns\">\n <ng-container\n *ngTemplateOutlet=\"\n column.cell!.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </td>\n </tr>\n <suis-spinner-container\n *ngIf=\"loading\"\n [absolute]=\"true\"\n [blur]=\"true\"\n ></suis-spinner-container>\n </tbody>\n</table>\n\n<!-- TODO: <suis-pagination></suis-pagination> -->\n", styles: ["*{margin:0;padding:0;box-sizing:border-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.suis-table{width:100%;border-collapse:collapse}.suis-table thead{background-color:#273c75;color:#fff}.suis-table thead tr th{font-weight:600;padding:.75rem 1rem}.suis-table thead tr th:first-child{border-top-left-radius:.25rem}.suis-table thead tr th:last-child{border-top-right-radius:.25rem}.suis-table thead tr th.pointer{cursor:pointer}.suis-table thead tr th>.suis-table__header{display:flex;align-items:center}.suis-table thead tr th>.suis-table__header suis-icon{display:block;margin-left:.125rem}.suis-table tbody{position:relative;background-color:#f5f6fa}.suis-table tbody tr{border-bottom:.0625rem solid #dcdde1}.suis-table tbody tr:hover{background-color:#dcdde1d9}.suis-table tbody tr td{padding:.375rem 1rem}\n"] }]
54
+ }], propDecorators: { columns: [{
55
+ type: ContentChildren,
56
+ args: [SuisTableColumnDirective]
57
+ }], data: [{
58
+ type: Input,
59
+ args: [{ required: true }]
60
+ }], orderBy: [{
61
+ type: Input
62
+ }], sortBy: [{
63
+ type: Input
64
+ }], loading: [{
65
+ type: Input
66
+ }], sortByChange: [{
67
+ type: Output
68
+ }], orderByChange: [{
69
+ type: Output
70
+ }] } });
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL3N1aXMtdGFibGUvc3Vpcy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N1aXMvc3JjL2xpYi9jb21wb25lbnRzL3N1aXMtdGFibGUvc3Vpcy10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFFL0QsTUFRYSxrQkFBa0I7SUFSL0I7UUFTRSxnQkFBZ0I7UUFDUCxpQkFBWSxHQUFHLFlBQVksQ0FBQztRQU1yQzs7V0FFRztRQUN3QixTQUFJLEdBQXdCLEVBQUUsQ0FBQztRQUUxRDs7V0FFRztRQUNNLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFFOUI7O1dBRUc7UUFDTSxXQUFNLEdBQW1CLEtBQUssQ0FBQztRQUV4Qzs7V0FFRztRQUNNLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFbEM7O1dBRUc7UUFDTyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFcEQ7O1dBRUc7UUFDTyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0FXdEQ7SUFUQyxhQUFhLENBQUMsUUFBZ0I7UUFDNUIsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFFBQVEsRUFBRTtZQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztZQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDdkM7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3JELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7OEdBOUNVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDZQQUtaLHdCQUF3Qiw2QkM1QjNDLG13Q0FnREEsNjNCRDlCWSxZQUFZLHVhQUFFLGlCQUFpQixrSUFBRSw2QkFBNkI7O1NBSzdELGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQVI5QixTQUFTOytCQUNFLFlBQVksY0FDVixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsNkJBQTZCLENBQUMsbUJBR3hELHVCQUF1QixDQUFDLE1BQU07OEJBUS9DLE9BQU87c0JBRE4sZUFBZTt1QkFBQyx3QkFBd0I7Z0JBTWQsSUFBSTtzQkFBOUIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBS2hCLE9BQU87c0JBQWYsS0FBSztnQkFLRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csT0FBTztzQkFBZixLQUFLO2dCQUtJLFlBQVk7c0JBQXJCLE1BQU07Z0JBS0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFN1aXNTcGlubmVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vc3Vpcy1zcGlubmVyLWNvbnRhaW5lcic7XG5pbXBvcnQgeyBTdWlzVGFibGVEYXRhSXRlbSB9IGZyb20gJy4vc3Vpcy10YWJsZS5pbnRlcmZhY2VzJztcbmltcG9ydCB7IFN1aXNUYWJsZUNvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4vc3Vpcy10YWJsZS1jb2x1bW4uZGlyZWN0aXZlJztcbmltcG9ydCB7IFN1aXNJY29uQ29tcG9uZW50LCBTdWlzSWNvblR5cGUgfSBmcm9tICcuLi9zdWlzLWljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzdWlzLXRhYmxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU3Vpc0ljb25Db21wb25lbnQsIFN1aXNTcGlubmVyQ29udGFpbmVyQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL3N1aXMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdWlzLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTdWlzVGFibGVDb21wb25lbnQge1xuICAvKiogQGludGVybmFsICovXG4gIHJlYWRvbmx5IFN1aXNJY29uVHlwZSA9IFN1aXNJY29uVHlwZTtcblxuICAvKiogQGludGVybmFsICovXG4gIEBDb250ZW50Q2hpbGRyZW4oU3Vpc1RhYmxlQ29sdW1uRGlyZWN0aXZlKVxuICBjb2x1bW5zPzogUXVlcnlMaXN0PFN1aXNUYWJsZUNvbHVtbkRpcmVjdGl2ZT47XG5cbiAgLyoqXG4gICAqIERhdGEgaXRlbXMgY29sbGVjdGlvbi4gVHlwZSBvZiBTdWlzVGFibGVEYXRhSXRlbVtdLiBCeSBkZWZhdWx0IHNldCB0byBlbXB0eSBhcnJheS4gUmVxdWlyZWQgaW5wdXQuXG4gICAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBkYXRhOiBTdWlzVGFibGVEYXRhSXRlbVtdID0gW107XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBwcm9wZXJ0eSB0aGF0IGRhdGEgaXMgb3JkZXJlZC4gQnkgZGVmYXVsdCBzZXQgdG8gZW1wdHkgc3RyaW5nLlxuICAgKi9cbiAgQElucHV0KCkgb3JkZXJCeTogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBzb3J0IGNvbmRpdGlvbi4gQWNjZXB0ZWQgdmFsdWVzIC0gJ2FzYycgYW5kICdkZXNjJy4gQnkgZGVmYXVsdCBzZXQgdG8gJ2FzYycuXG4gICAqL1xuICBASW5wdXQoKSBzb3J0Qnk6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYyc7XG5cbiAgLyoqXG4gICAqIFNob3dzIGxvYWRpbmcgc3Bpbm5lciBhbmQgYmx1cnMgZGF0YS4gQnkgZGVmYXVsdCBzZXQgdG8gZmFsc2UuXG4gICAqL1xuICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHZhbHVlIG9uIHNvcnQgY29uZGl0aW9uIGNoYW5nZS5cbiAgICovXG4gIEBPdXRwdXQoKSBzb3J0QnlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvKipcbiAgICogRW1pdHMgdmFsdWUgb24gb3JkZXIgcHJvcGVydHkgY2hhbmdlLlxuICAgKi9cbiAgQE91dHB1dCgpIG9yZGVyQnlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBvbkNvbHVtbkNsaWNrKHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vcmRlckJ5ICE9PSBwcm9wZXJ0eSkge1xuICAgICAgdGhpcy5vcmRlckJ5ID0gcHJvcGVydHk7XG4gICAgICB0aGlzLm9yZGVyQnlDaGFuZ2UuZW1pdCh0aGlzLm9yZGVyQnkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNvcnRCeSA9IHRoaXMuc29ydEJ5ID09PSAnYXNjJyA/ICdkZXNjJyA6ICdhc2MnO1xuICAgICAgdGhpcy5zb3J0QnlDaGFuZ2UuZW1pdCh0aGlzLnNvcnRCeSk7XG4gICAgfVxuICB9XG59XG4iLCI8dGFibGUgKm5nSWY9XCJjb2x1bW5zXCIgY2xhc3M9XCJzdWlzLXRhYmxlXCI+XG4gIDx0aGVhZD5cbiAgICA8dHI+XG4gICAgICA8dGhcbiAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zXCJcbiAgICAgICAgW2NsYXNzLnBvaW50ZXJdPVwiY29sdW1uLm9yZGVyUHJvcGVydHlcIlxuICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgY29sdW1uLm9yZGVyUHJvcGVydHkgPyBvbkNvbHVtbkNsaWNrKGNvbHVtbi5vcmRlclByb3BlcnR5KSA6IHVuZGVmaW5lZFxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic3Vpcy10YWJsZV9faGVhZGVyXCI+XG4gICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICB7eyBjb2x1bW4ubmFtZSB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3Vpcy1pY29uXG4gICAgICAgICAgICAqbmdJZj1cImNvbHVtbi5vcmRlclByb3BlcnR5ID09PSBvcmRlckJ5XCJcbiAgICAgICAgICAgIFt0eXBlXT1cIlxuICAgICAgICAgICAgICBzb3J0QnkgPT09ICdhc2MnXG4gICAgICAgICAgICAgICAgPyBTdWlzSWNvblR5cGUuQ0hFVlJPTl9ET1dOXG4gICAgICAgICAgICAgICAgOiBTdWlzSWNvblR5cGUuQ0hFVlJPTl9VUFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIHNpemU9XCJsZ1wiXG4gICAgICAgICAgICBjb2xvcj1cIndoaXRlXCJcbiAgICAgICAgICA+PC9zdWlzLWljb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC90aD5cbiAgICA8L3RyPlxuICA8L3RoZWFkPlxuICA8dGJvZHk+XG4gICAgPHRyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFcIj5cbiAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICBjb2x1bW4uY2VsbCEudGVtcGxhdGVSZWY7XG4gICAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XG4gICAgICAgICAgXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICAgIDxzdWlzLXNwaW5uZXItY29udGFpbmVyXG4gICAgICAqbmdJZj1cImxvYWRpbmdcIlxuICAgICAgW2Fic29sdXRlXT1cInRydWVcIlxuICAgICAgW2JsdXJdPVwidHJ1ZVwiXG4gICAgPjwvc3Vpcy1zcGlubmVyLWNvbnRhaW5lcj5cbiAgPC90Ym9keT5cbjwvdGFibGU+XG5cbjwhLS0gVE9ETzogPHN1aXMtcGFnaW5hdGlvbj48L3N1aXMtcGFnaW5hdGlvbj4gLS0+XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy10YWJsZS5pbnRlcmZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zdWlzL3NyYy9saWIvY29tcG9uZW50cy9zdWlzLXRhYmxlL3N1aXMtdGFibGUuaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTdWlzVGFibGVEYXRhSXRlbSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cbiJdfQ==
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
32
32
  }], loading: [{
33
33
  type: Input
34
34
  }] } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy1idXR0b24uYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc3Vpcy9zcmMvbGliL3NoYXJlZC9jbGFzc2VzL3N1aXMtYnV0dG9uLmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR2hGLE1BQ3NCLGNBQWM7SUFEcEM7UUFFRSxnQkFBZ0I7UUFDRyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRW5ELGdCQUFnQjtRQUNHLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFakQ7O1dBRUc7UUFDTSxVQUFLLEdBQXFDLFNBQVMsQ0FBQztRQUU3RDs7V0FFRztRQUNNLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFbkM7O1dBRUc7UUFDTSxZQUFPLEdBQVksS0FBSyxDQUFDO0tBQ25DOzhHQXJCcUIsY0FBYztrR0FBZCxjQUFjOztTQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEbkMsU0FBUzs4QkFXQyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vpc0luZm9Db2xvciwgU3Vpc1BhbGxldGVDb2xvciB9IGZyb20gJy4uLy4uL3R5cGVzL3N1aXMtY29sb3IudHlwZSc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN1aXNCdXR0b25CYXNlIHtcbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAvKiogQGludGVybmFsICovXG4gIHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICAvKipcbiAgICogU2V0cyBidXR0b24ncyBjb2xvciB0aGVtZS4gVHlwZSBvZiBTdWlzUGFsbGV0ZUNvbG9yIHwgU3Vpc0luZm9Db2xvci4gQnkgZGVmYXVsdCBzZXQgdG8gJ3ByaW1hcnknLlxuICAgKi9cbiAgQElucHV0KCkgY29sb3I6IFN1aXNQYWxsZXRlQ29sb3IgfCBTdWlzSW5mb0NvbG9yID0gJ3ByaW1hcnknO1xuXG4gIC8qKlxuICAgKiBTZXRzIGJ1dHRvbidzIGRpc2FibGVkIGF0dHJpYnV0ZS4gQnkgZGVmYXVsdCBzZXQgdG8gZmFsc2UuXG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTaG93cyBsb2FkaW5nIHNwaW5uZXIgaW5zdGVhZCBvZiBjb250ZW50IHByb2plY3Rpb24uIEJ5IGRlZmF1bHQgc2V0IHRvIGZhbHNlLlxuICAgKi9cbiAgQElucHV0KCkgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xufVxuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vpcy1idXR0b24uYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc3Vpcy9zcmMvbGliL3NoYXJlZC9jbGFzc2VzL3N1aXMtYnV0dG9uLmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR2hGLE1BQ3NCLGNBQWM7SUFEcEM7UUFFRSxnQkFBZ0I7UUFDRyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRW5ELGdCQUFnQjtRQUNHLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFakQ7O1dBRUc7UUFDTSxVQUFLLEdBQXFDLFNBQVMsQ0FBQztRQUU3RDs7V0FFRztRQUNNLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFbkM7O1dBRUc7UUFDTSxZQUFPLEdBQVksS0FBSyxDQUFDO0tBQ25DOzhHQXJCcUIsY0FBYztrR0FBZCxjQUFjOztTQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEbkMsU0FBUzs4QkFXQyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWlzSW5mb0NvbG9yLCBTdWlzUGFsbGV0ZUNvbG9yIH0gZnJvbSAnLi4vLi4vdHlwZXMvc3Vpcy1jb2xvci50eXBlJztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU3Vpc0J1dHRvbkJhc2Uge1xyXG4gIC8qKiBAaW50ZXJuYWwgKi9cclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcclxuXHJcbiAgLyoqIEBpbnRlcm5hbCAqL1xyXG4gIHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyBidXR0b24ncyBjb2xvciB0aGVtZS4gVHlwZSBvZiBTdWlzUGFsbGV0ZUNvbG9yIHwgU3Vpc0luZm9Db2xvci4gQnkgZGVmYXVsdCBzZXQgdG8gJ3ByaW1hcnknLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNvbG9yOiBTdWlzUGFsbGV0ZUNvbG9yIHwgU3Vpc0luZm9Db2xvciA9ICdwcmltYXJ5JztcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyBidXR0b24ncyBkaXNhYmxlZCBhdHRyaWJ1dGUuIEJ5IGRlZmF1bHQgc2V0IHRvIGZhbHNlLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3dzIGxvYWRpbmcgc3Bpbm5lciBpbnN0ZWFkIG9mIGNvbnRlbnQgcHJvamVjdGlvbi4gQnkgZGVmYXVsdCBzZXQgdG8gZmFsc2UuXHJcbiAgICovXHJcbiAgQElucHV0KCkgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG59XHJcbiJdfQ==
package/fesm2022/suis.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Pipe, Component, ChangeDetectionStrategy, Input, EventEmitter, Output, inject, ElementRef, Renderer2, Directive, ChangeDetectorRef, TemplateRef, ContentChild, HostListener, ViewEncapsulation, forwardRef, ViewChild, signal, Injectable } from '@angular/core';
2
+ import { Pipe, Component, ChangeDetectionStrategy, Input, EventEmitter, Output, inject, ElementRef, Renderer2, Directive, ChangeDetectorRef, TemplateRef, ContentChild, HostListener, ViewEncapsulation, forwardRef, ViewChild, signal, Injectable, ContentChildren } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import * as i2 from '@angular/router';
@@ -1407,6 +1407,126 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
1407
1407
  type: Input
1408
1408
  }] } });
1409
1409
 
1410
+ class SuisTableCellDirective {
1411
+ constructor() {
1412
+ /**
1413
+ * Template of the table cell.
1414
+ */
1415
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1416
+ this.templateRef = inject((TemplateRef));
1417
+ }
1418
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1419
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SuisTableCellDirective, isStandalone: true, selector: "[suisTableCell]", ngImport: i0 }); }
1420
+ }
1421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableCellDirective, decorators: [{
1422
+ type: Directive,
1423
+ args: [{
1424
+ selector: '[suisTableCell]',
1425
+ standalone: true,
1426
+ }]
1427
+ }] });
1428
+
1429
+ class SuisTableColumnDirective {
1430
+ constructor() {
1431
+ this._name = '';
1432
+ this._orderProperty = '';
1433
+ }
1434
+ /** Unique name for this column. */
1435
+ get name() {
1436
+ return this._name;
1437
+ }
1438
+ set name(name) {
1439
+ this._name = name;
1440
+ }
1441
+ get orderProperty() {
1442
+ return this._orderProperty;
1443
+ }
1444
+ set orderProperty(orderProperty) {
1445
+ this._orderProperty = orderProperty;
1446
+ }
1447
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1448
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SuisTableColumnDirective, isStandalone: true, selector: "[suisTableColumn]", inputs: { name: ["suisTableColumn", "name"], orderProperty: ["suisTableColumnOrderProperty", "orderProperty"] }, queries: [{ propertyName: "cell", first: true, predicate: SuisTableCellDirective, descendants: true }], ngImport: i0 }); }
1449
+ }
1450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableColumnDirective, decorators: [{
1451
+ type: Directive,
1452
+ args: [{
1453
+ selector: '[suisTableColumn]',
1454
+ standalone: true,
1455
+ }]
1456
+ }], propDecorators: { cell: [{
1457
+ type: ContentChild,
1458
+ args: [SuisTableCellDirective]
1459
+ }], name: [{
1460
+ type: Input,
1461
+ args: ['suisTableColumn']
1462
+ }], orderProperty: [{
1463
+ type: Input,
1464
+ args: ['suisTableColumnOrderProperty']
1465
+ }] } });
1466
+
1467
+ class SuisTableComponent {
1468
+ constructor() {
1469
+ /** @internal */
1470
+ this.SuisIconType = SuisIconType;
1471
+ /**
1472
+ * Data items collection. Type of SuisTableDataItem[]. By default set to empty array. Required input.
1473
+ */
1474
+ this.data = [];
1475
+ /**
1476
+ * Specifies property that data is ordered. By default set to empty string.
1477
+ */
1478
+ this.orderBy = '';
1479
+ /**
1480
+ * Specifies sort condition. Accepted values - 'asc' and 'desc'. By default set to 'asc'.
1481
+ */
1482
+ this.sortBy = 'asc';
1483
+ /**
1484
+ * Shows loading spinner and blurs data. By default set to false.
1485
+ */
1486
+ this.loading = false;
1487
+ /**
1488
+ * Emits value on sort condition change.
1489
+ */
1490
+ this.sortByChange = new EventEmitter();
1491
+ /**
1492
+ * Emits value on order property change.
1493
+ */
1494
+ this.orderByChange = new EventEmitter();
1495
+ }
1496
+ onColumnClick(property) {
1497
+ if (this.orderBy !== property) {
1498
+ this.orderBy = property;
1499
+ this.orderByChange.emit(this.orderBy);
1500
+ }
1501
+ else {
1502
+ this.sortBy = this.sortBy === 'asc' ? 'desc' : 'asc';
1503
+ this.sortByChange.emit(this.sortBy);
1504
+ }
1505
+ }
1506
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1507
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SuisTableComponent, isStandalone: true, selector: "suis-table", inputs: { data: "data", orderBy: "orderBy", sortBy: "sortBy", loading: "loading" }, outputs: { sortByChange: "sortByChange", orderByChange: "orderByChange" }, queries: [{ propertyName: "columns", predicate: SuisTableColumnDirective }], ngImport: i0, template: "<table *ngIf=\"columns\" class=\"suis-table\">\n <thead>\n <tr>\n <th\n *ngFor=\"let column of columns\"\n [class.pointer]=\"column.orderProperty\"\n (click)=\"\n column.orderProperty ? onColumnClick(column.orderProperty) : undefined\n \"\n >\n <div class=\"suis-table__header\">\n <span>\n {{ column.name }}\n </span>\n <suis-icon\n *ngIf=\"column.orderProperty === orderBy\"\n [type]=\"\n sortBy === 'asc'\n ? SuisIconType.CHEVRON_DOWN\n : SuisIconType.CHEVRON_UP\n \"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\">\n <td *ngFor=\"let column of columns\">\n <ng-container\n *ngTemplateOutlet=\"\n column.cell!.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </td>\n </tr>\n <suis-spinner-container\n *ngIf=\"loading\"\n [absolute]=\"true\"\n [blur]=\"true\"\n ></suis-spinner-container>\n </tbody>\n</table>\n\n<!-- TODO: <suis-pagination></suis-pagination> -->\n", styles: ["*{margin:0;padding:0;box-sizing:border-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.suis-table{width:100%;border-collapse:collapse}.suis-table thead{background-color:#273c75;color:#fff}.suis-table thead tr th{font-weight:600;padding:.75rem 1rem}.suis-table thead tr th:first-child{border-top-left-radius:.25rem}.suis-table thead tr th:last-child{border-top-right-radius:.25rem}.suis-table thead tr th.pointer{cursor:pointer}.suis-table thead tr th>.suis-table__header{display:flex;align-items:center}.suis-table thead tr th>.suis-table__header suis-icon{display:block;margin-left:.125rem}.suis-table tbody{position:relative;background-color:#f5f6fa}.suis-table tbody tr{border-bottom:.0625rem solid #dcdde1}.suis-table tbody tr:hover{background-color:#dcdde1d9}.suis-table tbody tr td{padding:.375rem 1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SuisIconComponent, selector: "suis-icon", inputs: ["size", "color", "type", "outlined", "filled", "pointer", "bold"] }, { kind: "component", type: SuisSpinnerContainerComponent, selector: "suis-spinner-container", inputs: ["size", "color", "blur", "absolute"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1508
+ }
1509
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SuisTableComponent, decorators: [{
1510
+ type: Component,
1511
+ args: [{ selector: 'suis-table', standalone: true, imports: [CommonModule, SuisIconComponent, SuisSpinnerContainerComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<table *ngIf=\"columns\" class=\"suis-table\">\n <thead>\n <tr>\n <th\n *ngFor=\"let column of columns\"\n [class.pointer]=\"column.orderProperty\"\n (click)=\"\n column.orderProperty ? onColumnClick(column.orderProperty) : undefined\n \"\n >\n <div class=\"suis-table__header\">\n <span>\n {{ column.name }}\n </span>\n <suis-icon\n *ngIf=\"column.orderProperty === orderBy\"\n [type]=\"\n sortBy === 'asc'\n ? SuisIconType.CHEVRON_DOWN\n : SuisIconType.CHEVRON_UP\n \"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\">\n <td *ngFor=\"let column of columns\">\n <ng-container\n *ngTemplateOutlet=\"\n column.cell!.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </td>\n </tr>\n <suis-spinner-container\n *ngIf=\"loading\"\n [absolute]=\"true\"\n [blur]=\"true\"\n ></suis-spinner-container>\n </tbody>\n</table>\n\n<!-- TODO: <suis-pagination></suis-pagination> -->\n", styles: ["*{margin:0;padding:0;box-sizing:border-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.suis-table{width:100%;border-collapse:collapse}.suis-table thead{background-color:#273c75;color:#fff}.suis-table thead tr th{font-weight:600;padding:.75rem 1rem}.suis-table thead tr th:first-child{border-top-left-radius:.25rem}.suis-table thead tr th:last-child{border-top-right-radius:.25rem}.suis-table thead tr th.pointer{cursor:pointer}.suis-table thead tr th>.suis-table__header{display:flex;align-items:center}.suis-table thead tr th>.suis-table__header suis-icon{display:block;margin-left:.125rem}.suis-table tbody{position:relative;background-color:#f5f6fa}.suis-table tbody tr{border-bottom:.0625rem solid #dcdde1}.suis-table tbody tr:hover{background-color:#dcdde1d9}.suis-table tbody tr td{padding:.375rem 1rem}\n"] }]
1512
+ }], propDecorators: { columns: [{
1513
+ type: ContentChildren,
1514
+ args: [SuisTableColumnDirective]
1515
+ }], data: [{
1516
+ type: Input,
1517
+ args: [{ required: true }]
1518
+ }], orderBy: [{
1519
+ type: Input
1520
+ }], sortBy: [{
1521
+ type: Input
1522
+ }], loading: [{
1523
+ type: Input
1524
+ }], sortByChange: [{
1525
+ type: Output
1526
+ }], orderByChange: [{
1527
+ type: Output
1528
+ }] } });
1529
+
1410
1530
  class SuisTitleComponent {
1411
1531
  constructor() {
1412
1532
  /**
@@ -1428,5 +1548,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
1428
1548
  * Generated bundle index. Do not edit.
1429
1549
  */
1430
1550
 
1431
- export { SuisAlertComponent, SuisAnchorButtonComponent, SuisBoxComponent, SuisBreadcrumbsComponent, SuisButtonComponent, SuisButtonOutlinedComponent, SuisChipComponent, SuisContainerComponent, SuisFormFieldComponent, SuisIconComponent, SuisIconType, SuisInputChipsComponent, SuisInputNumberComponent, SuisInputTextComponent, SuisLabelComponent, SuisNavigationComponent, SuisNavigationGroupComponent, SuisNavigationGroupItemComponent, SuisNavigationItemComponent, SuisNavigationItemDirective, SuisNgClassPipe, SuisNotificationComponent, SuisNotificationService, SuisNotificationsComponent, SuisProgressBarComponent, SuisSelectComponent, SuisSelectMultiComponent, SuisSelectOptionComponent, SuisSelectOptionDirective, SuisSpinnerComponent, SuisSpinnerContainerComponent, SuisTitleComponent };
1551
+ export { SuisAlertComponent, SuisAnchorButtonComponent, SuisBoxComponent, SuisBreadcrumbsComponent, SuisButtonComponent, SuisButtonOutlinedComponent, SuisChipComponent, SuisContainerComponent, SuisFormFieldComponent, SuisIconComponent, SuisIconType, SuisInputChipsComponent, SuisInputNumberComponent, SuisInputTextComponent, SuisLabelComponent, SuisNavigationComponent, SuisNavigationGroupComponent, SuisNavigationGroupItemComponent, SuisNavigationItemComponent, SuisNavigationItemDirective, SuisNgClassPipe, SuisNotificationComponent, SuisNotificationService, SuisNotificationsComponent, SuisProgressBarComponent, SuisSelectComponent, SuisSelectMultiComponent, SuisSelectOptionComponent, SuisSelectOptionDirective, SuisSpinnerComponent, SuisSpinnerContainerComponent, SuisTableCellDirective, SuisTableColumnDirective, SuisTableComponent, SuisTitleComponent };
1432
1552
  //# sourceMappingURL=suis.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"suis.mjs","sources":["../../../../libs/suis/src/lib/pipes/suis-ng-class.pipe.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon.enums.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon-type.pipe.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon.component.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon.component.html","../../../../libs/suis/src/lib/components/suis-alert/suis-alert.component.ts","../../../../libs/suis/src/lib/components/suis-alert/suis-alert.component.html","../../../../libs/suis/src/lib/components/suis-box/suis-box.component.ts","../../../../libs/suis/src/lib/components/suis-box/suis-box.component.html","../../../../libs/suis/src/lib/components/suis-breadcrumbs/suis-breadcrumbs.component.ts","../../../../libs/suis/src/lib/components/suis-breadcrumbs/suis-breadcrumbs.component.html","../../../../libs/suis/src/lib/shared/classes/suis-button.base.ts","../../../../libs/suis/src/lib/shared/classes/suis-input.base.ts","../../../../libs/suis/src/lib/components/suis-select-option/suis-select-option.directive.ts","../../../../libs/suis/src/lib/shared/classes/suis-select.base.ts","../../../../libs/suis/src/lib/components/suis-button/suis-button.component.ts","../../../../libs/suis/src/lib/components/suis-button/suis-button.component.html","../../../../libs/suis/src/lib/components/suis-chip/suis-chip.component.ts","../../../../libs/suis/src/lib/components/suis-chip/suis-chip.component.html","../../../../libs/suis/src/lib/components/suis-container/suis-container.component.ts","../../../../libs/suis/src/lib/components/suis-container/suis-container.component.html","../../../../libs/suis/src/lib/components/suis-form-field/suis-form-field.component.ts","../../../../libs/suis/src/lib/components/suis-form-field/suis-form-field.component.html","../../../../libs/suis/src/lib/components/suis-input-text/suis-input-text.component.ts","../../../../libs/suis/src/lib/components/suis-input-text/suis-input-text.component.html","../../../../libs/suis/src/lib/components/suis-input-chips/suis-input-chips.component.ts","../../../../libs/suis/src/lib/components/suis-input-chips/suis-input-chips.component.html","../../../../libs/suis/src/lib/components/suis-input-number/suis-input-number.component.ts","../../../../libs/suis/src/lib/components/suis-input-number/suis-input-number.component.html","../../../../libs/suis/src/lib/components/suis-label/suis-label.component.ts","../../../../libs/suis/src/lib/components/suis-label/suis-label.component.html","../../../../libs/suis/src/lib/components/suis-navigation-item/suis-navigation-item.component.ts","../../../../libs/suis/src/lib/components/suis-navigation-item/suis-navigation-item.component.html","../../../../libs/suis/src/lib/components/suis-navigation-item/suis-navigation-item.directive.ts","../../../../libs/suis/src/lib/components/suis-navigation-group-item/suis-navigation-group-item.component.ts","../../../../libs/suis/src/lib/components/suis-navigation-group-item/suis-navigation-group-item.component.html","../../../../libs/suis/src/lib/components/suis-navigation-group/suis-navigation-group.component.ts","../../../../libs/suis/src/lib/components/suis-navigation-group/suis-navigation-group.component.html","../../../../libs/suis/src/lib/components/suis-navigation/suis-navigation.component.ts","../../../../libs/suis/src/lib/components/suis-navigation/suis-navigation.component.html","../../../../libs/suis/src/lib/components/suis-notification/suis-notification.component.ts","../../../../libs/suis/src/lib/components/suis-notification/suis-notification.component.html","../../../../libs/suis/src/lib/services/suis-notification.service.ts","../../../../libs/suis/src/lib/components/suis-notifications/suis-notifications.component.ts","../../../../libs/suis/src/lib/components/suis-notifications/suis-notifications.component.html","../../../../libs/suis/src/lib/components/suis-progress-bar/suis-progress-bar.pipe.ts","../../../../libs/suis/src/lib/components/suis-progress-bar/suis-progress-bar.component.ts","../../../../libs/suis/src/lib/components/suis-progress-bar/suis-progress-bar.component.html","../../../../libs/suis/src/lib/components/suis-select/suis-select-label.pipe.ts","../../../../libs/suis/src/lib/components/suis-select/suis-select-is-selected.pipe.ts","../../../../libs/suis/src/lib/components/suis-select-option/suis-select-option.component.ts","../../../../libs/suis/src/lib/components/suis-select-option/suis-select-option.component.html","../../../../libs/suis/src/lib/shared/pipes/suis-select-sort-options.pipe.ts","../../../../libs/suis/src/lib/shared/pipes/suis-select-filter-options.pipe.ts","../../../../libs/suis/src/lib/components/suis-select/suis-select.component.ts","../../../../libs/suis/src/lib/components/suis-select/suis-select.component.html","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi-chips.pipe.ts","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi-is-selected.pipe.ts","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi.component.ts","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi.component.html","../../../../libs/suis/src/lib/components/suis-spinner/suis-spinner.component.ts","../../../../libs/suis/src/lib/components/suis-spinner/suis-spinner.component.html","../../../../libs/suis/src/lib/components/suis-spinner-container/suis-spinner-container.component.ts","../../../../libs/suis/src/lib/components/suis-spinner-container/suis-spinner-container.component.html","../../../../libs/suis/src/lib/components/suis-title/suis-title.component.ts","../../../../libs/suis/src/lib/components/suis-title/suis-title.component.html","../../../../libs/suis/src/suis.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisNgClass',\n})\nexport class SuisNgClassPipe implements PipeTransform {\n transform(prefix: string, ...args: string[]): string[] {\n const classes: string[] = [];\n args.forEach((arg) => classes.push(`${prefix}--${arg}`));\n return classes;\n }\n}\n","export enum SuisIconType {\n INFO = 'info',\n WARNING = 'warning',\n CHECK = 'check',\n CROSS = 'cross',\n PLUS = 'plus',\n MINUS = 'minus',\n ARROW_UP = 'arrow-up',\n ARROW_LEFT = 'arrow-left',\n ARROW_RIGHT = 'arrow-right',\n ARROW_DOWN = 'arrow-down',\n CHEVRON_UP = 'chevron-up',\n CHEVRON_DOWN = 'chevron-down',\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisIconType } from './suis-icon.enums';\n\n@Pipe({\n standalone: true,\n name: 'suisIconType',\n})\nexport class SuisIconTypePipe implements PipeTransform {\n transform(type: SuisIconType): string {\n switch (type) {\n case SuisIconType.INFO:\n return '&quest;';\n case SuisIconType.WARNING:\n return '&excl;';\n case SuisIconType.CHECK:\n return '&check;';\n case SuisIconType.CROSS:\n return '&times;';\n case SuisIconType.PLUS:\n return '&plus;';\n case SuisIconType.MINUS:\n return '&minus;';\n case SuisIconType.ARROW_LEFT:\n return '&#8592;';\n case SuisIconType.ARROW_UP:\n return '&#8593;';\n case SuisIconType.ARROW_RIGHT:\n return '&#8594;';\n case SuisIconType.ARROW_DOWN:\n return '&#8595;';\n case SuisIconType.CHEVRON_UP:\n return '&lsaquo;';\n case SuisIconType.CHEVRON_DOWN:\n return '&rsaquo;';\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisIconType } from './suis-icon.enums';\nimport { SuisIconTypePipe } from './suis-icon-type.pipe';\nimport { SuisNgClassPipe } from '../../pipes/suis-ng-class.pipe';\nimport { SuisSize } from '../../types/suis-size.type';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-icon',\n standalone: true,\n imports: [CommonModule, SuisIconTypePipe, SuisNgClassPipe],\n templateUrl: './suis-icon.component.html',\n styleUrls: ['./suis-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisIconComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Sets the font size of the HTML Entity itself. Type of SuisSize. By default set to 'md'.\n */\n @Input() size: SuisSize = 'md';\n\n /**\n * Sets the color pallette of the icon and surroundings. Type of SuisColor. By default set to 'dark'.\n */\n @Input() color: SuisColor = 'dark';\n\n /**\n * Sets the HTML Entity displayed in content. Type of SuisIconType. By default set to SuisIconType.INFO.\n */\n @Input() type: SuisIconType = SuisIconType.INFO;\n\n /**\n * Shows the circled border around the icon. By default set to false. Can not be combined with filled (will be overriden then).\n */\n @Input() outlined: boolean = false;\n\n /**\n * Shows the circled background behind the icon. By default set to false. Overrides outlined behavior if used at the sime time.\n */\n @Input() filled: boolean = false;\n\n /**\n * Shows the pointer cursor when hovered. By default set to false.\n */\n @Input() pointer: boolean = false;\n\n /**\n * Sets HTML Entity font weight to bold. By default set to false.\n */\n @Input() bold: boolean = false;\n}\n","<div\n class=\"suis-icon\"\n [class.suis-icon--outlined]=\"outlined\"\n [class.suis-icon--filled]=\"filled\"\n [class.suis-icon--pointer]=\"pointer\"\n [class.suis-icon--bold]=\"bold\"\n [class.suis-icon--rotate]=\"\n type === SuisIconType.CHEVRON_UP || type === SuisIconType.CHEVRON_DOWN\n \"\n [ngClass]=\"'suis-icon' | suisNgClass : color : size\"\n>\n <span [innerHTML]=\"type | suisIconType\"></span>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisInfoColor } from '../../types';\nimport { SuisNgClassPipe } from '../../pipes';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\n\n@Component({\n selector: 'suis-alert',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe, SuisIconComponent],\n templateUrl: './suis-alert.component.html',\n styleUrls: ['./suis-alert.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisAlertComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Controls visibilty of the alert. By default set to false.\n */\n @Input() hidden: boolean = false;\n\n /**\n * Emits change of hidden state.\n */\n @Output() hiddenChange = new EventEmitter<boolean>();\n\n /**\n * Sets the color pallette of the alert. Type of SuisInfoColor. By default set to 'danger'.\n */\n @Input() color: SuisInfoColor = 'danger';\n\n onCancel() {\n this.hidden = true;\n this.hiddenChange.emit(true);\n }\n}\n","<div\n *ngIf=\"!hidden\"\n class=\"suis-alert\"\n [ngClass]=\"'suis-alert' | suisNgClass : color\"\n>\n <ng-content></ng-content>\n <button class=\"suis-alert__cancel\" type=\"button\" (click)=\"onCancel()\">\n <suis-icon\n [type]=\"SuisIconType.CROSS\"\n [color]=\"'white'\"\n [size]=\"'lg'\"\n ></suis-icon>\n </button>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'suis-box',\n standalone: true,\n imports: [],\n templateUrl: './suis-box.component.html',\n styleUrls: ['./suis-box.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisBoxComponent {\n /**\n * Adds a padding around the content. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<div class=\"suis-box\" [class.suis-box--spacing]=\"spacing\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisBreadcrumbItem } from './suis-breadcrumbs.interface';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n selector: 'suis-breadcrumbs',\n standalone: true,\n imports: [CommonModule, RouterModule],\n templateUrl: './suis-breadcrumbs.component.html',\n styleUrls: ['./suis-breadcrumbs.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisBreadcrumbsComponent {\n /**\n * List of breadcrumbs items. Type of SuisBreadcrumbItem[]. By default set to empty array.\n */\n @Input() items: SuisBreadcrumbItem[] = [];\n\n /**\n * Adds a bottom margin below the breadcrumbs. By default set to false.\n */\n @Input() spacing: boolean = false;\n\n /** @internal */\n itemTrackBy(index: number, item: SuisBreadcrumbItem): string {\n return `${item.label}-${index}`;\n }\n}\n","<div class=\"suis-breadcrumbs\" [class.suis-breadcrumbs--spacing]=\"spacing\">\n <ng-container\n *ngFor=\"let item of items; let last = last; trackBy: itemTrackBy\"\n >\n <a [routerLink]=\"last ? undefined : item.link\">\n {{ item.label }}\n </a>\n <span *ngIf=\"!last\">/</span>\n </ng-container>\n</div>\n","import { Directive, ElementRef, Input, Renderer2, inject } from '@angular/core';\nimport { SuisInfoColor, SuisPalleteColor } from '../../types/suis-color.type';\n\n@Directive()\nexport abstract class SuisButtonBase {\n /** @internal */\n protected readonly elementRef = inject(ElementRef);\n\n /** @internal */\n protected readonly renderer2 = inject(Renderer2);\n\n /**\n * Sets button's color theme. Type of SuisPalleteColor | SuisInfoColor. By default set to 'primary'.\n */\n @Input() color: SuisPalleteColor | SuisInfoColor = 'primary';\n\n /**\n * Sets button's disabled attribute. By default set to false.\n */\n @Input() disabled: boolean = false;\n\n /**\n * Shows loading spinner instead of content projection. By default set to false.\n */\n @Input() loading: boolean = false;\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n inject,\n} from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Directive()\nexport abstract class SuisInputBase implements ControlValueAccessor {\n /** @internal */\n protected readonly cdRef = inject(ChangeDetectorRef);\n\n /** @internal */\n protected readonly elRef = inject(ElementRef);\n\n /**\n * Sets input disabled state. By default set to false.\n */\n @Input() readonly: boolean = false;\n\n /**\n * Adds invalid styling to the input. By default set to false.\n */\n @Input() invalid: boolean = false;\n\n /**\n * Emits on value changed.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Output() changed = new EventEmitter<any>();\n\n /**\n * Emits on input touched.\n */\n @Output() touched = new EventEmitter<void>();\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any\n _onChange = (value: any) => {};\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n _onTouched = () => {};\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n abstract writeValue(obj: any): void;\n\n /** @internal */\n onTouch(): void {\n this._onTouched();\n this.touched.emit();\n this.cdRef.markForCheck();\n }\n}\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { SuisSelectOption } from './suis-select-option.interfaces';\n\n@Directive({\n selector: '[suisSelectOption]',\n standalone: true,\n})\nexport class SuisSelectOptionDirective<T> {\n /**\n * Custom template of the option.\n */\n public readonly templateRef = inject(\n TemplateRef<{ $implicit: SuisSelectOption<T> }>\n );\n}\n","import {\n ContentChild,\n Directive,\n EventEmitter,\n HostListener,\n Input,\n Output,\n} from '@angular/core';\nimport { SuisInputBase } from './suis-input.base';\nimport { SuisSelectOption } from '../../components/suis-select-option/suis-select-option.interfaces';\nimport { SuisSelectOptionDirective } from '../../components/suis-select-option/suis-select-option.directive';\nimport { SuisIconType } from '../../components/suis-icon/suis-icon.enums';\n\n@Directive()\nexport abstract class SuisSelectBase<T> extends SuisInputBase {\n /** @internal */\n @ContentChild(SuisSelectOptionDirective)\n suisSelectOption?: SuisSelectOptionDirective<T>;\n\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /** @internal */\n protected searchPhrase: string = '';\n\n /** @internal */\n protected expanded: boolean = false;\n\n /**\n * Options displayed in dropdown list. Type of SuisSelectOption[].\n */\n @Input() options: SuisSelectOption<T>[] = [];\n\n /**\n * Displays search input above options. By default set to true.\n */\n @Input() search: boolean = true;\n\n /**\n * Placeholder text displayed in options search. By default set to 'Search...'.\n */\n @Input() searchPlaceholder: string = 'Search...';\n\n /**\n * Placeholder text displayed when value is not selected. By default set to 'Select option...'.\n */\n @Input() placeholder: string = 'Select option...';\n\n /**\n * Emits on search phrase changed.\n */\n @Output() searchPhraseChanged = new EventEmitter<string>();\n\n abstract onSelect(value: T): void;\n\n abstract clearValue(): void;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n abstract setValue(value: any): void;\n\n onClear(event: Event): void {\n this.clearValue();\n event.stopPropagation();\n }\n\n onSearchPhraseChange(text: string): void {\n this.searchPhrase = text;\n this.searchPhraseChanged.emit(text);\n }\n\n onExpand(): void {\n this.toggle(!this.expanded);\n this.onTouch();\n }\n\n toggle(value: boolean): void {\n this.expanded = value;\n this.searchPhrase = '';\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.elRef.nativeElement.contains(event.target)) {\n this.expanded = false;\n }\n }\n\n /** @internal */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n optionTrackBy(index: number, option: SuisSelectOption<any>): string {\n return `${JSON.stringify(option.value)}`;\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n HostListener,\n ViewEncapsulation,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisButtonBase } from '../../shared/classes';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'button[suisButton]',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-button.component.html',\n styleUrls: ['./suis-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '[attr.disabled]': 'disabled || null',\n '[attr.tabindex]': 'disabled ? -1 : 0',\n },\n})\nexport class SuisButtonComponent\n extends SuisButtonBase\n implements AfterViewInit\n{\n ngAfterViewInit(): void {\n this.renderer2.addClass(this.elementRef.nativeElement, 'suis-button');\n this.renderer2.addClass(\n this.elementRef.nativeElement,\n `suis-button--${this.color}`\n );\n }\n}\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'button[suisButtonOutlined]',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-button.component.html',\n styleUrls: ['./suis-button-outlined.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '[attr.disabled]': 'disabled || null',\n '[attr.tabindex]': 'disabled ? -1 : 0',\n },\n})\nexport class SuisButtonOutlinedComponent\n extends SuisButtonBase\n implements AfterViewInit\n{\n ngAfterViewInit(): void {\n this.renderer2.addClass(\n this.elementRef.nativeElement,\n 'suis-button-outlined'\n );\n this.renderer2.addClass(\n this.elementRef.nativeElement,\n `suis-button-outlined--${this.color}`\n );\n }\n}\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'a[suisButton]',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-button.component.html',\n styleUrls: ['./suis-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '[attr.tabindex]': 'disabled ? -1 : 0',\n },\n})\nexport class SuisAnchorButtonComponent\n extends SuisButtonBase\n implements AfterViewInit\n{\n ngAfterViewInit(): void {\n this.renderer2.addClass(this.elementRef.nativeElement, 'suis-button');\n this.renderer2.addClass(\n this.elementRef.nativeElement,\n `suis-button--${this.color}`\n );\n }\n\n @HostListener('click')\n onClick(event: Event): void {\n if (this.disabled) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n }\n}\n","<ng-container *ngIf=\"!loading; else spinner\">\r\n <ng-content></ng-content>\r\n</ng-container>\r\n<ng-template #spinner>\r\n <!-- TODO: <suis-spinner></suis-spinner> -->\r\n</ng-template>\r\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\nimport { SuisColor } from '../../types/suis-color.type';\nimport { SuisNgClassPipe } from '../../pipes/suis-ng-class.pipe';\n\n@Component({\n selector: 'suis-chip',\n standalone: true,\n imports: [CommonModule, SuisIconComponent, SuisNgClassPipe],\n templateUrl: './suis-chip.component.html',\n styleUrls: ['./suis-chip.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisChipComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Sets the color pallette of the chip. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n\n /**\n * Sets the color of the cross icon. Visible only if removable set to true. Type of SuisColor. By default set to 'white'.\n */\n @Input() iconColor: SuisColor = 'white';\n\n /**\n * Shows cross icon with remove action. By default set to false.\n */\n @Input() removable: boolean = false;\n\n /**\n * Emits on cross icon click.\n */\n @Output() remove = new EventEmitter<void>();\n\n /** @internal */\n onRemove(): void {\n this.remove.emit();\n }\n}\n","<div class=\"suis-chip\" [ngClass]=\"'suis-chip' | suisNgClass : color\">\n <ng-content></ng-content>\n <button\n *ngIf=\"removable\"\n class=\"suis-chip__remove\"\n type=\"button\"\n (click)=\"onRemove()\"\n >\n <suis-icon\n [color]=\"iconColor\"\n [type]=\"SuisIconType.CROSS\"\n [pointer]=\"true\"\n [size]=\"'md'\"\n ></suis-icon>\n </button>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-container',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-container.component.html',\n styleUrls: ['./suis-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisContainerComponent {\n /**\n * Adds a padding around the container. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<div class=\"suis-container\" [class.suis-container--spacing]=\"spacing\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-form-field',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-form-field.component.html',\n styleUrls: ['./suis-form-field.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisFormFieldComponent {\n /**\n * Template to be added below the field with error message.\n */\n @Input() errorTemplate?: TemplateRef<HTMLElement>;\n\n /**\n * Adds a bottom margin below the field. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<div class=\"suis-form-field\" [class.suis-form-field--spacing]=\"spacing\">\n <ng-content></ng-content>\n <div *ngIf=\"errorTemplate\" class=\"suis-form-field__error\">\n <ng-container [ngTemplateOutlet]=\"errorTemplate\"></ng-container>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SuisInputTextType } from './suis-input-text.types';\nimport { SuisInputBase } from '../../shared/classes/suis-input.base';\n\n@Component({\n selector: 'suis-input-text',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-input-text.component.html',\n styleUrls: ['./suis-input-text.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisInputTextComponent),\n },\n ],\n})\nexport class SuisInputTextComponent extends SuisInputBase {\n /**\n * Sets input's type to one of the accepted values - 'text' or 'password'. By default set to 'text'.\n */\n @Input() type: SuisInputTextType = 'text';\n\n /**\n * Placeholder text displayed in input. By default set to empty string.\n */\n @Input() placeholder: string = '';\n\n /**\n * Emits on keydown enter input event.\n */\n @Output() enterPressed = new EventEmitter<void>();\n\n /** @internal */\n value: string = '';\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override writeValue(obj: string): void {\n this.value = obj;\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.value = target.value;\n this._onChange(this.value);\n this.changed.emit(this.value);\n this.cdRef.markForCheck();\n }\n\n onEnter(): void {\n this.enterPressed.emit();\n }\n}\n","<input\n class=\"suis-input-text\"\n [class.suis-input-text--invalid]=\"invalid\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"readonly\"\n (input)=\"onChange($event)\"\n (focus)=\"onTouch()\"\n (keydown.enter)=\"onEnter()\"\n/>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Input,\n ViewChild,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n FormControl,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SuisChipComponent } from '../suis-chip';\nimport { SuisInputTextComponent } from '../suis-input-text';\nimport { SuisInputBase } from '../../shared/classes/suis-input.base';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-input-chips',\n standalone: true,\n imports: [\n CommonModule,\n ReactiveFormsModule,\n SuisChipComponent,\n SuisInputTextComponent,\n ],\n templateUrl: './suis-input-chips.component.html',\n styleUrls: ['./suis-input-chips.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisInputChipsComponent),\n },\n ],\n})\nexport class SuisInputChipsComponent extends SuisInputBase {\n /** @internal */\n @ViewChild('input') inputEl?: ElementRef;\n\n /**\n * Placeholder text displayed in input. By default set to empty string.\n */\n @Input() placeholder: string = '';\n\n /**\n * Sets the color pallette of the chips. Type of SuisColor. By default set to 'primary'.\n */\n @Input() chipColor: SuisColor = 'primary';\n\n /**\n * Sets the color of the chips' cross icon. Type of SuisColor. By default set to 'white'.\n */\n @Input() chipIconColor: SuisColor = 'white';\n\n /** @internal */\n value: string[] = [];\n\n /** @internal */\n inputControl = new FormControl<string>('', { nonNullable: true });\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(obj: string[]): void {\n this.value = obj || [];\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n addItem(value: string): void {\n const values = value.split(',').filter((v) => !!v);\n this.value = this.value.concat(values);\n this._onChange(this.value);\n this.changed.emit(this.value);\n this.cdRef.markForCheck();\n }\n\n removeItem(value: string): void {\n this.value = this.value.filter((v) => v !== value);\n }\n\n submitValue() {\n const inputValue = this.inputControl.value;\n this.inputControl.reset();\n this.addItem(inputValue);\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event) {\n if (!this.inputEl?.nativeElement.contains(event.target)) this.submitValue();\n }\n}\n","<div class=\"suis-input-chips\">\n <div #input class=\"suis-input-chips__input\">\n <suis-input-text\n [formControl]=\"inputControl\"\n [readonly]=\"readonly\"\n [invalid]=\"invalid\"\n [placeholder]=\"placeholder\"\n (touched)=\"onTouch()\"\n (enterPressed)=\"submitValue()\"\n ></suis-input-text>\n </div>\n <div *ngIf=\"value.length\" class=\"suis-input-chips__chips\">\n <suis-chip\n [removable]=\"readonly ? false : true\"\n [color]=\"chipColor\"\n [iconColor]=\"chipIconColor\"\n (remove)=\"removeItem(item)\"\n *ngFor=\"let item of value\"\n >\n {{ item }}\n </suis-chip>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisInputBase } from '../../shared/classes';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'suis-input-number',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-input-number.component.html',\n styleUrls: ['./suis-input-number.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisInputNumberComponent),\n },\n ],\n})\nexport class SuisInputNumberComponent extends SuisInputBase {\n /**\n * Placeholder text displayed in input. By default set to empty string.\n */\n @Input() placeholder: string = '';\n\n /** @internal */\n value: number | null = null;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override writeValue(obj: number | null): void {\n this.value = obj;\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.value = target.value ? Number(target.value) : null;\n this._onChange(this.value);\n this.changed.emit(this.value);\n this.cdRef.markForCheck();\n }\n}\n","<input\n class=\"suis-input-number\"\n [class.suis-input-number--invalid]=\"invalid\"\n type=\"number\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"readonly\"\n (input)=\"onChange($event)\"\n (focus)=\"onTouch()\"\n/>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-label',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-label.component.html',\n styleUrls: ['./suis-label.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisLabelComponent {\n /**\n * Adds a red colored asterisk after the label. By default set to false.\n */\n @Input() required: boolean = false;\n\n /**\n * Adds a bottom margin below the label. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<label class=\"suis-label\" [class.suis-label--spacing]=\"spacing\">\n <ng-content></ng-content>\n <span *ngIf=\"required\" class=\"suis-label__asterisk\">*</span>\n <ng-content select=\"[suisLabelAside]\"></ng-content>\n</label>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { SuisNavigationItem } from './suis-navigation-item.interfaces';\n\n@Component({\n selector: 'suis-navigation-item',\n standalone: true,\n imports: [CommonModule, RouterModule],\n templateUrl: './suis-navigation-item.component.html',\n styleUrls: ['./suis-navigation-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationItemComponent {\n /**\n * Navigation item data. Type of SuisNavigationItem.\n */\n @Input() item?: SuisNavigationItem;\n\n /**\n * Template to be displayed instead of item's label.\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisNavigationItem }>;\n}\n","<a\n *ngIf=\"item\"\n class=\"suis-navigation-item\"\n [routerLink]=\"item.link\"\n routerLinkActive=\"active\"\n>\n <div class=\"suis-navigation-item__content\">\n <ng-container *ngIf=\"templateRef; else label\">\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #label>\n {{ item.label }}\n </ng-template>\n </div>\n</a>\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { SuisNavigationItem } from './suis-navigation-item.interfaces';\n\n@Directive({\n selector: '[suisNavigationItem]',\n standalone: true,\n})\nexport class SuisNavigationItemDirective {\n /**\n * Custom template of the item.\n */\n public readonly templateRef = inject(\n TemplateRef<{ $implicit: SuisNavigationItem }>\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n SuisNavigationGroupItem,\n SuisNavigationItem,\n} from '../suis-navigation-item';\nimport { SuisIconType } from '../suis-icon/suis-icon.enums';\nimport { SuisIconComponent } from '../suis-icon/suis-icon.component';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n selector: 'suis-navigation-group-item',\n standalone: true,\n imports: [CommonModule, SuisIconComponent, RouterModule],\n templateUrl: './suis-navigation-group-item.component.html',\n styleUrls: ['./suis-navigation-group-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationGroupItemComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Navigation item data. Type of SuisNavigationGroupItem.\n */\n @Input() item?: SuisNavigationGroupItem;\n\n /**\n * Template to be displayed instead of item's label.s\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisNavigationItem }>;\n\n /**\n * Controlls styling of the item based on expanded state of group. By default set to true.\n */\n @Input() expanded: boolean = true;\n\n /**\n * Adds expand / collapse logic to item. By default set to false.\n */\n @Input() expandable: boolean = false;\n\n /**\n * Emits when expanded value of the item has been changed.\n */\n @Output() expandedChange = new EventEmitter<boolean>();\n\n onToggle(): void {\n if (!this.expandable) return;\n\n this.expanded = !this.expanded;\n this.expandedChange.emit(this.expanded);\n }\n}\n","<a\n *ngIf=\"item\"\n class=\"suis-navigation-group-item\"\n [routerLink]=\"expandable ? undefined : item.link\"\n routerLinkActive=\"active\"\n (click)=\"onToggle()\"\n>\n <div class=\"suis-navigation-group-item__content\">\n <ng-container *ngIf=\"templateRef; else label\">\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #label>\n {{ item.label }}\n </ng-template>\n </div>\n <div *ngIf=\"expandable\" class=\"suis-navigation-group-item__actions\">\n <suis-icon\n [type]=\"expanded ? SuisIconType.CHEVRON_UP : SuisIconType.CHEVRON_DOWN\"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n</a>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNavigationItemComponent } from '../suis-navigation-item';\nimport { RouterModule } from '@angular/router';\nimport {\n SuisNavigationGroupItem,\n SuisNavigationItem,\n} from '../suis-navigation-item/suis-navigation-item.interfaces';\nimport { SuisNavigationGroupItemComponent } from '../suis-navigation-group-item/suis-navigation-group-item.component';\n\n@Component({\n selector: 'suis-navigation-group',\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n SuisNavigationItemComponent,\n SuisNavigationGroupItemComponent,\n ],\n templateUrl: './suis-navigation-group.component.html',\n styleUrls: ['./suis-navigation-group.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationGroupComponent {\n /**\n * Navigation item data. Type of SuisNavigationGroupItem.\n */\n @Input() item?: SuisNavigationGroupItem;\n\n /**\n * Template to be displayed instead of item's label.\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisNavigationItem }>;\n\n /**\n * Expanded state of the navigation group. By default set to true.\n */\n @Input() expanded: boolean = true;\n\n /**\n * Adds expand / collapse logic to group header items. By default set to false.\n */\n @Input() expandable: boolean = false;\n\n /** @internal */\n itemTrackBy(index: number, item: SuisNavigationGroupItem): string {\n return `${item.label}-${index}`;\n }\n}\n","<div *ngIf=\"item\" class=\"suis-navigation-group\">\n <div class=\"suis-navigation-group__header\">\n <suis-navigation-group-item\n [item]=\"item\"\n [templateRef]=\"templateRef\"\n [expandable]=\"expandable && !!item.children\"\n [(expanded)]=\"expanded\"\n ></suis-navigation-group-item>\n </div>\n <div *ngIf=\"expanded\" class=\"suis-navigation-group__children\">\n <suis-navigation-item\n *ngFor=\"let childItem of item.children; trackBy: itemTrackBy\"\n [item]=\"childItem\"\n [templateRef]=\"templateRef\"\n ></suis-navigation-item>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Input,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNavigationGroupItem } from '../suis-navigation-item/suis-navigation-item.interfaces';\nimport { SuisNavigationItemDirective } from '../suis-navigation-item';\nimport { SuisNavigationGroupComponent } from '../suis-navigation-group';\n\n@Component({\n selector: 'suis-navigation',\n standalone: true,\n imports: [CommonModule, SuisNavigationGroupComponent],\n templateUrl: './suis-navigation.component.html',\n styleUrls: ['./suis-navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationComponent {\n /** @internal */\n @ContentChild(SuisNavigationItemDirective)\n suisNavigationItem?: SuisNavigationItemDirective;\n\n /**\n * List of navigation items. Type of SuisNavigationGroupItem[]. By default set to empty array.\n */\n @Input() items: SuisNavigationGroupItem[] = [];\n\n /**\n * Condition to expand groups at view initialization. By default set to true.\n */\n @Input() expandedGroups: boolean = true;\n\n /**\n * Adds expand / collapse logic to group header items. By default set to false.\n */\n @Input() expandable: boolean = false;\n\n /** @internal */\n groupItemTrackBy(index: number, groupItem: SuisNavigationGroupItem): string {\n return `${groupItem.label}-${index}`;\n }\n}\n","<div class=\"suis-navigation\">\n <suis-navigation-group\n *ngFor=\"let groupItem of items; trackBy: groupItemTrackBy\"\n [item]=\"groupItem\"\n [templateRef]=\"suisNavigationItem?.templateRef\"\n [expanded]=\"expandedGroups\"\n [expandable]=\"expandable\"\n ></suis-navigation-group>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNotification } from './suis-notification.interfaces';\nimport { SuisNgClassPipe } from '../../pipes';\nimport { SuisIconType } from '../suis-icon/suis-icon.enums';\nimport { SuisIconComponent } from '../suis-icon';\n\n@Component({\n selector: 'suis-notification',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe, SuisIconComponent],\n templateUrl: './suis-notification.component.html',\n styleUrls: ['./suis-notification.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNotificationComponent {\n /** @internal */\n SuisIconType = SuisIconType;\n\n /**\n * Notification item data. Type of SuisNotification.\n */\n @Input({ required: true }) notification?: SuisNotification;\n\n /**\n * Emits on close button action.\n */\n @Output() closed = new EventEmitter<void>();\n\n onClose() {\n this.closed.emit();\n }\n}\n","<div\n *ngIf=\"notification\"\n class=\"suis-notification\"\n [ngClass]=\"'suis-notification' | suisNgClass : notification.type\"\n>\n <button class=\"suis-notification__close\" type=\"button\" (click)=\"onClose()\">\n <suis-icon\n [type]=\"SuisIconType.CROSS\"\n [color]=\"'white'\"\n [size]=\"'lg'\"\n ></suis-icon>\n </button>\n <div class=\"suis-notification__message\">\n {{ notification.message }}\n </div>\n</div>\n","import { Injectable, WritableSignal, signal, Signal } from '@angular/core';\nimport { SuisNotification } from '../components/suis-notification/suis-notification.interfaces';\nimport { SuisNotificationType } from '../components/suis-notification/suis-notification.types';\n\nlet UNIQUE_ID = 1;\n\n@Injectable()\nexport class SuisNotificationService {\n private notifications: WritableSignal<SuisNotification[]> = signal([]);\n\n /**\n * @returns array of the current notifications. Type of SuisNotification[].\n */\n getNotifications(): Signal<SuisNotification[]> {\n return this.notifications.asReadonly();\n }\n\n /**\n * Adds success notification\n * @param message text displayed in the notification\n * @param delay time in ms after notification will be destroyed\n */\n success(message: string, delay: number = 2500): void {\n this.addNotification(message, delay, 'success');\n }\n\n /**\n * Adds warning notification\n * @param message text displayed in the notification\n * @param delay time in ms after notification will be destroyed\n */\n warning(message: string, delay: number = 2500): void {\n this.addNotification(message, delay, 'warning');\n }\n\n /**\n * Adds danger notification\n * @param message text displayed in the notification\n * @param delay time in ms after notification will be destroyed\n */\n danger(message: string, delay: number = 2500): void {\n this.addNotification(message, delay, 'danger');\n }\n\n /**\n * Removes notification immediately\n * @param id id of the notification to be removed\n */\n forceRemoveNotification(id: string): void {\n this.removeNotification(id);\n }\n\n /** @internal */\n private getId(): string {\n return `suis-notification--${UNIQUE_ID++}`;\n }\n\n /** @internal */\n private addNotification(\n message: string,\n delay: number,\n type: SuisNotificationType\n ): void {\n const notification: SuisNotification = {\n id: this.getId(),\n message: message,\n delay: delay,\n type: type,\n };\n\n this.notifications.set([...this.notifications(), notification]);\n\n this.removeNotificationWithDelay(notification.id, notification.delay);\n }\n\n /** @internal */\n private removeNotification(id: string): void {\n this.notifications.set([\n ...this.notifications().filter((notification) => notification.id !== id),\n ]);\n }\n\n /** @internal */\n private removeNotificationWithDelay(id: string, delay: number): void {\n setTimeout(() => {\n this.removeNotification(id);\n }, delay);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Signal,\n inject,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNotification } from '../suis-notification/suis-notification.interfaces';\nimport { SuisNotificationComponent } from '../suis-notification/suis-notification.component';\nimport { SuisNotificationService } from '../../services/suis-notification.service';\n\n@Component({\n selector: 'suis-notifications',\n standalone: true,\n imports: [CommonModule, SuisNotificationComponent],\n templateUrl: './suis-notifications.component.html',\n styleUrls: ['./suis-notifications.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNotificationsComponent {\n private readonly notificationService = inject(SuisNotificationService);\n\n notifications: Signal<SuisNotification[]> =\n this.notificationService.getNotifications();\n\n remove(id: string): void {\n this.notificationService.forceRemoveNotification(id);\n }\n\n /** @internal */\n notificationTrackBy(index: number, notification: SuisNotification): string {\n return notification.id;\n }\n}\n","<suis-notification\n *ngFor=\"let notification of notifications(); trackBy: notificationTrackBy\"\n [notification]=\"notification\"\n (closed)=\"remove(notification.id)\"\n></suis-notification>\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisProgressBar',\n})\nexport class SuisProgressBarPipe implements PipeTransform {\n transform(value: number): string {\n return `${(value / 100) * 100}%`;\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisProgressBarPipe } from './suis-progress-bar.pipe';\nimport { SuisColor } from '../../types';\nimport { SuisNgClassPipe } from '../../pipes';\n\n@Component({\n selector: 'suis-progress-bar',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe, SuisProgressBarPipe],\n templateUrl: './suis-progress-bar.component.html',\n styleUrls: ['./suis-progress-bar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisProgressBarComponent {\n /** @internal */\n _value: number = 0;\n\n /** @internal */\n get value(): number {\n return this._value;\n }\n\n /**\n * Width of the progress bar in percentage (value >= 0 && value <= 100). By default set to 0.\n */\n @Input() set value(value: number) {\n if (value >= 0 && value <= 100) {\n this._value = value;\n } else if (value > 100) {\n this._value = 100;\n } else {\n this._value = 0;\n }\n }\n\n /**\n * Sets the color of the progress bar. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n\n /**\n * Sets the background color of the progress bar. Type of SuisColor. By default set to 'tertiary'.\n */\n @Input() backgroundColor: SuisColor = 'tertiary';\n}\n","<div\n class=\"suis-progress-bar\"\n [ngClass]=\"'suis-progress-bar' | suisNgClass : backgroundColor\"\n>\n <div\n class=\"suis-progress-bar__progress\"\n [style]=\"{ width: value | suisProgressBar }\"\n [ngClass]=\"'suis-progress-bar__progress' | suisNgClass : color\"\n ></div>\n</div>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../suis-select-option/suis-select-option.interfaces';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectLabel',\n})\nexport class SuisSelectLabelPipe<T> implements PipeTransform {\n transform(\n value: T,\n options: SuisSelectOption<T>[],\n placeholder: string\n ): string {\n if (!value) return placeholder;\n const selectedOption = options.find(\n (option) => JSON.stringify(option.value) === JSON.stringify(value)\n );\n if (!selectedOption)\n throw Error(\n '[SuisSelectLabelPipe] Provided value does not belong to valid values'\n );\n return selectedOption.label;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectIsSelected',\n})\nexport class SuisSelectIsSelectedPipe<T> implements PipeTransform {\n transform(optionValue: T, value: T): boolean {\n return JSON.stringify(optionValue) === JSON.stringify(value);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSelectOption } from './suis-select-option.interfaces';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\n\n@Component({\n selector: 'suis-select-option',\n standalone: true,\n imports: [CommonModule, SuisIconComponent],\n templateUrl: './suis-select-option.component.html',\n styleUrls: ['./suis-select-option.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisSelectOptionComponent<T> {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Option data. Type of SuisSelectOption<T>. Required input.\n */\n @Input({ required: true }) option?: SuisSelectOption<T>;\n\n /**\n * Template to be displayed instead of option's label.\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisSelectOption<T> }>;\n\n /**\n * Adds checkmark icon to checkbox (if checkbox input set to true). By default set to false.\n */\n @Input() selected: boolean = false;\n\n /**\n * Display checkbox next to option label. By default set to true.\n */\n @Input() checkbox: boolean = true;\n\n /**\n * Emits on option selected.\n */\n @Output() clicked = new EventEmitter<void>();\n\n /** @internal */\n onClick(): void {\n this.clicked.emit();\n }\n}\n","<button\n class=\"suis-select-option\"\n type=\"button\"\n tabindex=\"-1\"\n (click)=\"onClick()\"\n>\n <span\n class=\"suis-select-option__checkbox\"\n [class.suis-select-option__checkbox--selected]=\"selected\"\n *ngIf=\"checkbox\"\n >\n <suis-icon\n *ngIf=\"selected\"\n [bold]=\"true\"\n color=\"primary\"\n [type]=\"SuisIconType.CHECK\"\n size=\"sm\"\n ></suis-icon>\n </span>\n <span class=\"suis-select-option__label\">\n <ng-container *ngIf=\"templateRef; else label\">\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: option }\"\n ></ng-container>\n </ng-container>\n <ng-template #label>\n {{ option?.label }}\n </ng-template>\n </span>\n</button>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../../components/suis-select-option';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectSortOptions',\n})\nexport class SuisSelectSortOptionsPipe<T> implements PipeTransform {\n transform(options: SuisSelectOption<T>[]): SuisSelectOption<T>[] {\n return options.sort((a, b) => a.label.localeCompare(b.label));\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../../components/suis-select-option';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectFilterOptions',\n})\nexport class SuisSelectFilterOptionsPipe<T> implements PipeTransform {\n transform(\n options: SuisSelectOption<T>[],\n phrase: string\n ): SuisSelectOption<T>[] {\n if (!phrase) return options;\n return options.filter((option) =>\n option.label.toLocaleLowerCase().includes(phrase.toLocaleLowerCase())\n );\n }\n}\n","import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SuisIconComponent } from '../suis-icon';\nimport { SuisSelectLabelPipe } from './suis-select-label.pipe';\nimport { SuisSelectIsSelectedPipe } from './suis-select-is-selected.pipe';\nimport { SuisSelectOptionComponent } from '../suis-select-option';\nimport { SuisSelectSortOptionsPipe } from '../../shared/pipes/suis-select-sort-options.pipe';\nimport { SuisSelectFilterOptionsPipe } from '../../shared/pipes/suis-select-filter-options.pipe';\nimport { SuisSelectBase } from '../../shared/classes/suis-select.base';\n\n@Component({\n selector: 'suis-select',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n SuisIconComponent,\n SuisSelectOptionComponent,\n SuisSelectLabelPipe,\n SuisSelectIsSelectedPipe,\n SuisSelectSortOptionsPipe,\n SuisSelectFilterOptionsPipe,\n ],\n templateUrl: './suis-select.component.html',\n styleUrls: ['./suis-select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisSelectComponent),\n },\n ],\n})\nexport class SuisSelectComponent<T> extends SuisSelectBase<T> {\n /** @internal */\n value: T | null = null;\n\n override writeValue(obj: T): void {\n this.value = obj;\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n override onSelect(value: T) {\n if (JSON.stringify(this.value) === JSON.stringify(value))\n return this.clearValue();\n this.setValue(value);\n }\n\n override clearValue() {\n this.setValue(null);\n }\n\n override setValue(value: T | null) {\n this.value = value;\n this.toggle(false);\n this._onChange(this.value);\n this.changed.emit();\n this.cdRef.markForCheck();\n }\n}\n","<div class=\"suis-select\">\n <button\n type=\"button\"\n (click)=\"onExpand()\"\n class=\"suis-select__button\"\n [class.suis-select__button--invalid]=\"invalid\"\n [disabled]=\"readonly\"\n >\n <span class=\"suis-select__button__value\">\n {{ value | suisSelectLabel : options : placeholder }}\n </span>\n <span class=\"suis-select__button__actions\">\n <suis-icon\n *ngIf=\"value\"\n class=\"suis-select__button__cross\"\n [type]=\"SuisIconType.CROSS\"\n size=\"lg\"\n color=\"primary\"\n (click)=\"onClear($event)\"\n ></suis-icon>\n <suis-icon\n class=\"suis-select__button__chevron\"\n [type]=\"expanded ? SuisIconType.CHEVRON_UP : SuisIconType.CHEVRON_DOWN\"\n size=\"lg\"\n color=\"primary\"\n ></suis-icon>\n </span>\n </button>\n <div *ngIf=\"expanded\" class=\"suis-select__list\">\n <input\n *ngIf=\"search\"\n [ngModel]=\"searchPhrase\"\n (ngModelChange)=\"onSearchPhraseChange($event)\"\n class=\"suis-select__list__search\"\n type=\"search\"\n [placeholder]=\"searchPlaceholder\"\n />\n <suis-select-option\n *ngFor=\"\n let option of options\n | suisSelectSortOptions\n | suisSelectFilterOptions : searchPhrase;\n trackBy: optionTrackBy\n \"\n [option]=\"option\"\n [templateRef]=\"suisSelectOption?.templateRef\"\n [selected]=\"option.value | suisSelectIsSelected : value\"\n (clicked)=\"onSelect(option.value)\"\n ></suis-select-option>\n </div>\n</div>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../suis-select-option/suis-select-option.interfaces';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectMultiChips',\n})\nexport class SuisSelectMultiChipsPipe<T> implements PipeTransform {\n transform(values: T[], options: SuisSelectOption<T>[]): string[] {\n const selectedOptions: string[] = [];\n\n values.forEach((value) => {\n const selectedOption = options.find(\n (option) => JSON.stringify(option.value) === JSON.stringify(value)\n );\n if (!selectedOption)\n throw Error(\n '[SuisSelectMultiLabelPipe] Provided value does not belong to valid values'\n );\n selectedOptions.push(selectedOption.label);\n });\n\n return selectedOptions;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectMultiIsSelected',\n})\nexport class SuisSelectMultiIsSelectedPipe<T> implements PipeTransform {\n transform(optionValue: T, values: T[]): boolean {\n return values.some(\n (value) => JSON.stringify(value) === JSON.stringify(optionValue)\n );\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSelectBase } from '../../shared/classes/suis-select.base';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SuisIconComponent } from '../suis-icon/suis-icon.component';\nimport { SuisSelectOptionComponent } from '../suis-select-option/suis-select-option.component';\nimport { SuisSelectSortOptionsPipe } from '../../shared/pipes/suis-select-sort-options.pipe';\nimport { SuisSelectFilterOptionsPipe } from '../../shared/pipes/suis-select-filter-options.pipe';\nimport { SuisSelectMultiChipsPipe } from './suis-select-multi-chips.pipe';\nimport { SuisSelectMultiIsSelectedPipe } from './suis-select-multi-is-selected.pipe';\nimport { SuisChipComponent } from '../suis-chip';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-select-multi',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n SuisIconComponent,\n SuisChipComponent,\n SuisSelectOptionComponent,\n SuisSelectMultiChipsPipe,\n SuisSelectMultiIsSelectedPipe,\n SuisSelectSortOptionsPipe,\n SuisSelectFilterOptionsPipe,\n ],\n templateUrl: './suis-select-multi.component.html',\n styleUrls: ['./suis-select-multi.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisSelectMultiComponent),\n },\n ],\n})\nexport class SuisSelectMultiComponent<T> extends SuisSelectBase<T> {\n /** @internal */\n values: T[] = [];\n\n /**\n * Allows to select duplicated values and remove checkboxes next to options' label. By default set to false.\n */\n @Input() duplicate: boolean = false;\n\n /**\n * Sets the color pallette of the chips. Type of SuisColor. By default set to 'primary'.\n */\n @Input() chipColor: SuisColor = 'primary';\n\n /**\n * Sets the color of the chips' cross icon. Type of SuisColor. By default set to 'white'.\n */\n @Input() chipIconColor: SuisColor = 'white';\n\n override writeValue(obj: T[]): void {\n this.values = obj;\n this._onChange(this.values);\n this.cdRef.markForCheck();\n }\n\n override onSelect(value: T): void {\n if (\n this.duplicate ||\n !this.values.some(\n (value) => JSON.stringify(value) === JSON.stringify(value)\n )\n ) {\n this.setValue([...this.values, value]);\n } else {\n this.setValue([\n ...this.values.filter(\n (value) => JSON.stringify(value) !== JSON.stringify(value)\n ),\n ]);\n }\n }\n\n onRemove(index: number): void {\n const values = [...this.values];\n values.splice(index, 1);\n this.setValue([...values]);\n }\n\n override clearValue(): void {\n this.setValue([]);\n }\n\n override setValue(value: T[]): void {\n this.values = value;\n this._onChange(this.values);\n this.changed.emit();\n this.cdRef.markForCheck();\n }\n}\n","<div class=\"suis-select-multi\">\n <button\n type=\"button\"\n (click)=\"onExpand()\"\n class=\"suis-select-multi__button\"\n [class.suis-select-multi__button--invalid]=\"invalid\"\n [class.suis-select-multi__button--valid]=\"values.length > 0\"\n [disabled]=\"readonly\"\n >\n <span class=\"suis-select-multi__button__value\">\n <ng-container *ngIf=\"!values?.length\">\n {{ placeholder }}\n </ng-container>\n <ng-container *ngIf=\"values?.length\">\n <suis-chip\n *ngFor=\"\n let value of values | suisSelectMultiChips : options;\n let index = index\n \"\n [removable]=\"true\"\n [color]=\"chipColor\"\n [iconColor]=\"chipIconColor\"\n (remove)=\"onRemove(index)\"\n >\n {{ value }}\n </suis-chip>\n </ng-container>\n </span>\n <span class=\"suis-select-multi__button__actions\">\n <suis-icon\n *ngIf=\"values?.length\"\n class=\"suis-select-multi__button__cross\"\n [type]=\"SuisIconType.CROSS\"\n size=\"lg\"\n color=\"primary\"\n (click)=\"onClear($event)\"\n tabindex=\"0\"\n ></suis-icon>\n <suis-icon\n class=\"suis-select-multi__button__chevron\"\n [type]=\"expanded ? SuisIconType.CHEVRON_UP : SuisIconType.CHEVRON_DOWN\"\n size=\"lg\"\n color=\"primary\"\n tabindex=\"0\"\n ></suis-icon>\n </span>\n </button>\n <div *ngIf=\"expanded\" class=\"suis-select-multi__list\">\n <input\n *ngIf=\"search\"\n [ngModel]=\"searchPhrase\"\n (ngModelChange)=\"onSearchPhraseChange($event)\"\n class=\"suis-select-multi__list__search\"\n type=\"search\"\n [placeholder]=\"searchPlaceholder\"\n />\n <suis-select-option\n *ngFor=\"\n let option of options\n | suisSelectSortOptions\n | suisSelectFilterOptions : searchPhrase;\n trackBy: optionTrackBy\n \"\n [option]=\"option\"\n [templateRef]=\"suisSelectOption?.templateRef\"\n [selected]=\"option.value | suisSelectMultiIsSelected : values\"\n [checkbox]=\"!duplicate\"\n (clicked)=\"onSelect(option.value)\"\n ></suis-select-option>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNgClassPipe } from '../../pipes';\nimport { SuisSize } from '../../types/suis-size.type';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-spinner',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe],\n templateUrl: './suis-spinner.component.html',\n styleUrls: ['./suis-spinner.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisSpinnerComponent {\n /**\n * Sets the size of the spinner. Type of SuisSize. By default set to 'sm'.\n */\n @Input() size: SuisSize = 'sm';\n\n /**\n * Sets the color of the spinner. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n}\n","<div\n class=\"suis-spinner\"\n [ngClass]=\"'suis-spinner' | suisNgClass : size : color\"\n></div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSize } from '../../types/suis-size.type';\nimport { SuisColor } from '../../types/suis-color.type';\nimport { SuisSpinnerComponent } from '../suis-spinner/suis-spinner.component';\n\n@Component({\n selector: 'suis-spinner-container',\n standalone: true,\n imports: [CommonModule, SuisSpinnerComponent],\n templateUrl: './suis-spinner-container.component.html',\n styleUrls: ['./suis-spinner-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisSpinnerContainerComponent {\n /**\n * Sets the size of the spinner. Type of SuisSize. By default set to 'sm'.\n */\n @Input() size: SuisSize = 'sm';\n\n /**\n * Sets the color of the spinner. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n\n /**\n * Adds blur effect to the container background. By default set to false.\n */\n @Input() blur: boolean = false;\n\n /**\n * Position absolute to the parent element (must have relative position). By default set to false.\n */\n @Input() absolute: boolean = false;\n}\n","<div\n class=\"suis-spinner-container\"\n [class.suis-spinner-container--blur]=\"blur\"\n [class.suis-spinner-container--absolute]=\"absolute\"\n>\n <suis-spinner [size]=\"size\" [color]=\"color\"></suis-spinner>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-title',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-title.component.html',\n styleUrls: ['./suis-title.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisTitleComponent {\n /**\n * Adds a bottom margin below the title. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<h1 class=\"suis-title\" [class.suis-title--spacing]=\"spacing\">\n <ng-content></ng-content>\n</h1>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"suis.mjs","sources":["../../../../libs/suis/src/lib/pipes/suis-ng-class.pipe.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon.enums.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon-type.pipe.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon.component.ts","../../../../libs/suis/src/lib/components/suis-icon/suis-icon.component.html","../../../../libs/suis/src/lib/components/suis-alert/suis-alert.component.ts","../../../../libs/suis/src/lib/components/suis-alert/suis-alert.component.html","../../../../libs/suis/src/lib/components/suis-box/suis-box.component.ts","../../../../libs/suis/src/lib/components/suis-box/suis-box.component.html","../../../../libs/suis/src/lib/components/suis-breadcrumbs/suis-breadcrumbs.component.ts","../../../../libs/suis/src/lib/components/suis-breadcrumbs/suis-breadcrumbs.component.html","../../../../libs/suis/src/lib/shared/classes/suis-button.base.ts","../../../../libs/suis/src/lib/shared/classes/suis-input.base.ts","../../../../libs/suis/src/lib/components/suis-select-option/suis-select-option.directive.ts","../../../../libs/suis/src/lib/shared/classes/suis-select.base.ts","../../../../libs/suis/src/lib/components/suis-button/suis-button.component.ts","../../../../libs/suis/src/lib/components/suis-button/suis-button.component.html","../../../../libs/suis/src/lib/components/suis-chip/suis-chip.component.ts","../../../../libs/suis/src/lib/components/suis-chip/suis-chip.component.html","../../../../libs/suis/src/lib/components/suis-container/suis-container.component.ts","../../../../libs/suis/src/lib/components/suis-container/suis-container.component.html","../../../../libs/suis/src/lib/components/suis-form-field/suis-form-field.component.ts","../../../../libs/suis/src/lib/components/suis-form-field/suis-form-field.component.html","../../../../libs/suis/src/lib/components/suis-input-text/suis-input-text.component.ts","../../../../libs/suis/src/lib/components/suis-input-text/suis-input-text.component.html","../../../../libs/suis/src/lib/components/suis-input-chips/suis-input-chips.component.ts","../../../../libs/suis/src/lib/components/suis-input-chips/suis-input-chips.component.html","../../../../libs/suis/src/lib/components/suis-input-number/suis-input-number.component.ts","../../../../libs/suis/src/lib/components/suis-input-number/suis-input-number.component.html","../../../../libs/suis/src/lib/components/suis-label/suis-label.component.ts","../../../../libs/suis/src/lib/components/suis-label/suis-label.component.html","../../../../libs/suis/src/lib/components/suis-navigation-item/suis-navigation-item.component.ts","../../../../libs/suis/src/lib/components/suis-navigation-item/suis-navigation-item.component.html","../../../../libs/suis/src/lib/components/suis-navigation-item/suis-navigation-item.directive.ts","../../../../libs/suis/src/lib/components/suis-navigation-group-item/suis-navigation-group-item.component.ts","../../../../libs/suis/src/lib/components/suis-navigation-group-item/suis-navigation-group-item.component.html","../../../../libs/suis/src/lib/components/suis-navigation-group/suis-navigation-group.component.ts","../../../../libs/suis/src/lib/components/suis-navigation-group/suis-navigation-group.component.html","../../../../libs/suis/src/lib/components/suis-navigation/suis-navigation.component.ts","../../../../libs/suis/src/lib/components/suis-navigation/suis-navigation.component.html","../../../../libs/suis/src/lib/components/suis-notification/suis-notification.component.ts","../../../../libs/suis/src/lib/components/suis-notification/suis-notification.component.html","../../../../libs/suis/src/lib/services/suis-notification.service.ts","../../../../libs/suis/src/lib/components/suis-notifications/suis-notifications.component.ts","../../../../libs/suis/src/lib/components/suis-notifications/suis-notifications.component.html","../../../../libs/suis/src/lib/components/suis-progress-bar/suis-progress-bar.pipe.ts","../../../../libs/suis/src/lib/components/suis-progress-bar/suis-progress-bar.component.ts","../../../../libs/suis/src/lib/components/suis-progress-bar/suis-progress-bar.component.html","../../../../libs/suis/src/lib/components/suis-select/suis-select-label.pipe.ts","../../../../libs/suis/src/lib/components/suis-select/suis-select-is-selected.pipe.ts","../../../../libs/suis/src/lib/components/suis-select-option/suis-select-option.component.ts","../../../../libs/suis/src/lib/components/suis-select-option/suis-select-option.component.html","../../../../libs/suis/src/lib/shared/pipes/suis-select-sort-options.pipe.ts","../../../../libs/suis/src/lib/shared/pipes/suis-select-filter-options.pipe.ts","../../../../libs/suis/src/lib/components/suis-select/suis-select.component.ts","../../../../libs/suis/src/lib/components/suis-select/suis-select.component.html","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi-chips.pipe.ts","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi-is-selected.pipe.ts","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi.component.ts","../../../../libs/suis/src/lib/components/suis-select-multi/suis-select-multi.component.html","../../../../libs/suis/src/lib/components/suis-spinner/suis-spinner.component.ts","../../../../libs/suis/src/lib/components/suis-spinner/suis-spinner.component.html","../../../../libs/suis/src/lib/components/suis-spinner-container/suis-spinner-container.component.ts","../../../../libs/suis/src/lib/components/suis-spinner-container/suis-spinner-container.component.html","../../../../libs/suis/src/lib/components/suis-table/suis-table-cell.directive.ts","../../../../libs/suis/src/lib/components/suis-table/suis-table-column.directive.ts","../../../../libs/suis/src/lib/components/suis-table/suis-table.component.ts","../../../../libs/suis/src/lib/components/suis-table/suis-table.component.html","../../../../libs/suis/src/lib/components/suis-title/suis-title.component.ts","../../../../libs/suis/src/lib/components/suis-title/suis-title.component.html","../../../../libs/suis/src/suis.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisNgClass',\n})\nexport class SuisNgClassPipe implements PipeTransform {\n transform(prefix: string, ...args: string[]): string[] {\n const classes: string[] = [];\n args.forEach((arg) => classes.push(`${prefix}--${arg}`));\n return classes;\n }\n}\n","export enum SuisIconType {\n INFO = 'info',\n WARNING = 'warning',\n CHECK = 'check',\n CROSS = 'cross',\n PLUS = 'plus',\n MINUS = 'minus',\n ARROW_UP = 'arrow-up',\n ARROW_LEFT = 'arrow-left',\n ARROW_RIGHT = 'arrow-right',\n ARROW_DOWN = 'arrow-down',\n CHEVRON_UP = 'chevron-up',\n CHEVRON_DOWN = 'chevron-down',\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisIconType } from './suis-icon.enums';\n\n@Pipe({\n standalone: true,\n name: 'suisIconType',\n})\nexport class SuisIconTypePipe implements PipeTransform {\n transform(type: SuisIconType): string {\n switch (type) {\n case SuisIconType.INFO:\n return '&quest;';\n case SuisIconType.WARNING:\n return '&excl;';\n case SuisIconType.CHECK:\n return '&check;';\n case SuisIconType.CROSS:\n return '&times;';\n case SuisIconType.PLUS:\n return '&plus;';\n case SuisIconType.MINUS:\n return '&minus;';\n case SuisIconType.ARROW_LEFT:\n return '&#8592;';\n case SuisIconType.ARROW_UP:\n return '&#8593;';\n case SuisIconType.ARROW_RIGHT:\n return '&#8594;';\n case SuisIconType.ARROW_DOWN:\n return '&#8595;';\n case SuisIconType.CHEVRON_UP:\n return '&lsaquo;';\n case SuisIconType.CHEVRON_DOWN:\n return '&rsaquo;';\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisIconType } from './suis-icon.enums';\nimport { SuisIconTypePipe } from './suis-icon-type.pipe';\nimport { SuisNgClassPipe } from '../../pipes/suis-ng-class.pipe';\nimport { SuisSize } from '../../types/suis-size.type';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-icon',\n standalone: true,\n imports: [CommonModule, SuisIconTypePipe, SuisNgClassPipe],\n templateUrl: './suis-icon.component.html',\n styleUrls: ['./suis-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisIconComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Sets the font size of the HTML Entity itself. Type of SuisSize. By default set to 'md'.\n */\n @Input() size: SuisSize = 'md';\n\n /**\n * Sets the color pallette of the icon and surroundings. Type of SuisColor. By default set to 'dark'.\n */\n @Input() color: SuisColor = 'dark';\n\n /**\n * Sets the HTML Entity displayed in content. Type of SuisIconType. By default set to SuisIconType.INFO.\n */\n @Input() type: SuisIconType = SuisIconType.INFO;\n\n /**\n * Shows the circled border around the icon. By default set to false. Can not be combined with filled (will be overriden then).\n */\n @Input() outlined: boolean = false;\n\n /**\n * Shows the circled background behind the icon. By default set to false. Overrides outlined behavior if used at the sime time.\n */\n @Input() filled: boolean = false;\n\n /**\n * Shows the pointer cursor when hovered. By default set to false.\n */\n @Input() pointer: boolean = false;\n\n /**\n * Sets HTML Entity font weight to bold. By default set to false.\n */\n @Input() bold: boolean = false;\n}\n","<div\n class=\"suis-icon\"\n [class.suis-icon--outlined]=\"outlined\"\n [class.suis-icon--filled]=\"filled\"\n [class.suis-icon--pointer]=\"pointer\"\n [class.suis-icon--bold]=\"bold\"\n [class.suis-icon--rotate]=\"\n type === SuisIconType.CHEVRON_UP || type === SuisIconType.CHEVRON_DOWN\n \"\n [ngClass]=\"'suis-icon' | suisNgClass : color : size\"\n>\n <span [innerHTML]=\"type | suisIconType\"></span>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisInfoColor } from '../../types';\nimport { SuisNgClassPipe } from '../../pipes';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\n\n@Component({\n selector: 'suis-alert',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe, SuisIconComponent],\n templateUrl: './suis-alert.component.html',\n styleUrls: ['./suis-alert.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisAlertComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Controls visibilty of the alert. By default set to false.\n */\n @Input() hidden: boolean = false;\n\n /**\n * Emits change of hidden state.\n */\n @Output() hiddenChange = new EventEmitter<boolean>();\n\n /**\n * Sets the color pallette of the alert. Type of SuisInfoColor. By default set to 'danger'.\n */\n @Input() color: SuisInfoColor = 'danger';\n\n onCancel() {\n this.hidden = true;\n this.hiddenChange.emit(true);\n }\n}\n","<div\n *ngIf=\"!hidden\"\n class=\"suis-alert\"\n [ngClass]=\"'suis-alert' | suisNgClass : color\"\n>\n <ng-content></ng-content>\n <button class=\"suis-alert__cancel\" type=\"button\" (click)=\"onCancel()\">\n <suis-icon\n [type]=\"SuisIconType.CROSS\"\n [color]=\"'white'\"\n [size]=\"'lg'\"\n ></suis-icon>\n </button>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'suis-box',\n standalone: true,\n imports: [],\n templateUrl: './suis-box.component.html',\n styleUrls: ['./suis-box.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisBoxComponent {\n /**\n * Adds a padding around the content. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<div class=\"suis-box\" [class.suis-box--spacing]=\"spacing\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisBreadcrumbItem } from './suis-breadcrumbs.interface';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n selector: 'suis-breadcrumbs',\n standalone: true,\n imports: [CommonModule, RouterModule],\n templateUrl: './suis-breadcrumbs.component.html',\n styleUrls: ['./suis-breadcrumbs.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisBreadcrumbsComponent {\n /**\n * List of breadcrumbs items. Type of SuisBreadcrumbItem[]. By default set to empty array.\n */\n @Input() items: SuisBreadcrumbItem[] = [];\n\n /**\n * Adds a bottom margin below the breadcrumbs. By default set to false.\n */\n @Input() spacing: boolean = false;\n\n /** @internal */\n itemTrackBy(index: number, item: SuisBreadcrumbItem): string {\n return `${item.label}-${index}`;\n }\n}\n","<div class=\"suis-breadcrumbs\" [class.suis-breadcrumbs--spacing]=\"spacing\">\n <ng-container\n *ngFor=\"let item of items; let last = last; trackBy: itemTrackBy\"\n >\n <a [routerLink]=\"last ? undefined : item.link\">\n {{ item.label }}\n </a>\n <span *ngIf=\"!last\">/</span>\n </ng-container>\n</div>\n","import { Directive, ElementRef, Input, Renderer2, inject } from '@angular/core';\r\nimport { SuisInfoColor, SuisPalleteColor } from '../../types/suis-color.type';\r\n\r\n@Directive()\r\nexport abstract class SuisButtonBase {\r\n /** @internal */\r\n protected readonly elementRef = inject(ElementRef);\r\n\r\n /** @internal */\r\n protected readonly renderer2 = inject(Renderer2);\r\n\r\n /**\r\n * Sets button's color theme. Type of SuisPalleteColor | SuisInfoColor. By default set to 'primary'.\r\n */\r\n @Input() color: SuisPalleteColor | SuisInfoColor = 'primary';\r\n\r\n /**\r\n * Sets button's disabled attribute. By default set to false.\r\n */\r\n @Input() disabled: boolean = false;\r\n\r\n /**\r\n * Shows loading spinner instead of content projection. By default set to false.\r\n */\r\n @Input() loading: boolean = false;\r\n}\r\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n inject,\n} from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Directive()\nexport abstract class SuisInputBase implements ControlValueAccessor {\n /** @internal */\n protected readonly cdRef = inject(ChangeDetectorRef);\n\n /** @internal */\n protected readonly elRef = inject(ElementRef);\n\n /**\n * Sets input disabled state. By default set to false.\n */\n @Input() readonly: boolean = false;\n\n /**\n * Adds invalid styling to the input. By default set to false.\n */\n @Input() invalid: boolean = false;\n\n /**\n * Emits on value changed.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Output() changed = new EventEmitter<any>();\n\n /**\n * Emits on input touched.\n */\n @Output() touched = new EventEmitter<void>();\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any\n _onChange = (value: any) => {};\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n _onTouched = () => {};\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n abstract writeValue(obj: any): void;\n\n /** @internal */\n onTouch(): void {\n this._onTouched();\n this.touched.emit();\n this.cdRef.markForCheck();\n }\n}\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { SuisSelectOption } from './suis-select-option.interfaces';\n\n@Directive({\n selector: '[suisSelectOption]',\n standalone: true,\n})\nexport class SuisSelectOptionDirective<T> {\n /**\n * Custom template of the option.\n */\n public readonly templateRef = inject(\n TemplateRef<{ $implicit: SuisSelectOption<T> }>\n );\n}\n","import {\n ContentChild,\n Directive,\n EventEmitter,\n HostListener,\n Input,\n Output,\n} from '@angular/core';\nimport { SuisInputBase } from './suis-input.base';\nimport { SuisSelectOption } from '../../components/suis-select-option/suis-select-option.interfaces';\nimport { SuisSelectOptionDirective } from '../../components/suis-select-option/suis-select-option.directive';\nimport { SuisIconType } from '../../components/suis-icon/suis-icon.enums';\n\n@Directive()\nexport abstract class SuisSelectBase<T> extends SuisInputBase {\n /** @internal */\n @ContentChild(SuisSelectOptionDirective)\n suisSelectOption?: SuisSelectOptionDirective<T>;\n\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /** @internal */\n protected searchPhrase: string = '';\n\n /** @internal */\n protected expanded: boolean = false;\n\n /**\n * Options displayed in dropdown list. Type of SuisSelectOption[].\n */\n @Input() options: SuisSelectOption<T>[] = [];\n\n /**\n * Displays search input above options. By default set to true.\n */\n @Input() search: boolean = true;\n\n /**\n * Placeholder text displayed in options search. By default set to 'Search...'.\n */\n @Input() searchPlaceholder: string = 'Search...';\n\n /**\n * Placeholder text displayed when value is not selected. By default set to 'Select option...'.\n */\n @Input() placeholder: string = 'Select option...';\n\n /**\n * Emits on search phrase changed.\n */\n @Output() searchPhraseChanged = new EventEmitter<string>();\n\n abstract onSelect(value: T): void;\n\n abstract clearValue(): void;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n abstract setValue(value: any): void;\n\n onClear(event: Event): void {\n this.clearValue();\n event.stopPropagation();\n }\n\n onSearchPhraseChange(text: string): void {\n this.searchPhrase = text;\n this.searchPhraseChanged.emit(text);\n }\n\n onExpand(): void {\n this.toggle(!this.expanded);\n this.onTouch();\n }\n\n toggle(value: boolean): void {\n this.expanded = value;\n this.searchPhrase = '';\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.elRef.nativeElement.contains(event.target)) {\n this.expanded = false;\n }\n }\n\n /** @internal */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n optionTrackBy(index: number, option: SuisSelectOption<any>): string {\n return `${JSON.stringify(option.value)}`;\n }\n}\n","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n Component,\r\n HostListener,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SuisButtonBase } from '../../shared/classes';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'button[suisButton]',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './suis-button.component.html',\r\n styleUrls: ['./suis-button.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\r\n host: {\r\n '[attr.disabled]': 'disabled || null',\r\n '[attr.tabindex]': 'disabled ? -1 : 0',\r\n },\r\n})\r\nexport class SuisButtonComponent\r\n extends SuisButtonBase\r\n implements AfterViewInit\r\n{\r\n ngAfterViewInit(): void {\r\n this.renderer2.addClass(this.elementRef.nativeElement, 'suis-button');\r\n this.renderer2.addClass(\r\n this.elementRef.nativeElement,\r\n `suis-button--${this.color}`\r\n );\r\n }\r\n}\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'button[suisButtonOutlined]',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './suis-button.component.html',\r\n styleUrls: ['./suis-button-outlined.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\r\n host: {\r\n '[attr.disabled]': 'disabled || null',\r\n '[attr.tabindex]': 'disabled ? -1 : 0',\r\n },\r\n})\r\nexport class SuisButtonOutlinedComponent\r\n extends SuisButtonBase\r\n implements AfterViewInit\r\n{\r\n ngAfterViewInit(): void {\r\n this.renderer2.addClass(\r\n this.elementRef.nativeElement,\r\n 'suis-button-outlined'\r\n );\r\n this.renderer2.addClass(\r\n this.elementRef.nativeElement,\r\n `suis-button-outlined--${this.color}`\r\n );\r\n }\r\n}\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'a[suisButton]',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './suis-button.component.html',\r\n styleUrls: ['./suis-button.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\r\n host: {\r\n '[attr.tabindex]': 'disabled ? -1 : 0',\r\n },\r\n})\r\nexport class SuisAnchorButtonComponent\r\n extends SuisButtonBase\r\n implements AfterViewInit\r\n{\r\n ngAfterViewInit(): void {\r\n this.renderer2.addClass(this.elementRef.nativeElement, 'suis-button');\r\n this.renderer2.addClass(\r\n this.elementRef.nativeElement,\r\n `suis-button--${this.color}`\r\n );\r\n }\r\n\r\n @HostListener('click')\r\n onClick(event: Event): void {\r\n if (this.disabled) {\r\n event.preventDefault();\r\n event.stopImmediatePropagation();\r\n }\r\n }\r\n}\r\n","<ng-container *ngIf=\"!loading; else spinner\">\r\n <ng-content></ng-content>\r\n</ng-container>\r\n<ng-template #spinner>\r\n <!-- TODO: <suis-spinner></suis-spinner> -->\r\n</ng-template>\r\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\nimport { SuisColor } from '../../types/suis-color.type';\nimport { SuisNgClassPipe } from '../../pipes/suis-ng-class.pipe';\n\n@Component({\n selector: 'suis-chip',\n standalone: true,\n imports: [CommonModule, SuisIconComponent, SuisNgClassPipe],\n templateUrl: './suis-chip.component.html',\n styleUrls: ['./suis-chip.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisChipComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Sets the color pallette of the chip. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n\n /**\n * Sets the color of the cross icon. Visible only if removable set to true. Type of SuisColor. By default set to 'white'.\n */\n @Input() iconColor: SuisColor = 'white';\n\n /**\n * Shows cross icon with remove action. By default set to false.\n */\n @Input() removable: boolean = false;\n\n /**\n * Emits on cross icon click.\n */\n @Output() remove = new EventEmitter<void>();\n\n /** @internal */\n onRemove(): void {\n this.remove.emit();\n }\n}\n","<div class=\"suis-chip\" [ngClass]=\"'suis-chip' | suisNgClass : color\">\n <ng-content></ng-content>\n <button\n *ngIf=\"removable\"\n class=\"suis-chip__remove\"\n type=\"button\"\n (click)=\"onRemove()\"\n >\n <suis-icon\n [color]=\"iconColor\"\n [type]=\"SuisIconType.CROSS\"\n [pointer]=\"true\"\n [size]=\"'md'\"\n ></suis-icon>\n </button>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-container',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-container.component.html',\n styleUrls: ['./suis-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisContainerComponent {\n /**\n * Adds a padding around the container. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<div class=\"suis-container\" [class.suis-container--spacing]=\"spacing\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-form-field',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-form-field.component.html',\n styleUrls: ['./suis-form-field.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisFormFieldComponent {\n /**\n * Template to be added below the field with error message.\n */\n @Input() errorTemplate?: TemplateRef<HTMLElement>;\n\n /**\n * Adds a bottom margin below the field. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<div class=\"suis-form-field\" [class.suis-form-field--spacing]=\"spacing\">\n <ng-content></ng-content>\n <div *ngIf=\"errorTemplate\" class=\"suis-form-field__error\">\n <ng-container [ngTemplateOutlet]=\"errorTemplate\"></ng-container>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SuisInputTextType } from './suis-input-text.types';\nimport { SuisInputBase } from '../../shared/classes/suis-input.base';\n\n@Component({\n selector: 'suis-input-text',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-input-text.component.html',\n styleUrls: ['./suis-input-text.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisInputTextComponent),\n },\n ],\n})\nexport class SuisInputTextComponent extends SuisInputBase {\n /**\n * Sets input's type to one of the accepted values - 'text' or 'password'. By default set to 'text'.\n */\n @Input() type: SuisInputTextType = 'text';\n\n /**\n * Placeholder text displayed in input. By default set to empty string.\n */\n @Input() placeholder: string = '';\n\n /**\n * Emits on keydown enter input event.\n */\n @Output() enterPressed = new EventEmitter<void>();\n\n /** @internal */\n value: string = '';\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override writeValue(obj: string): void {\n this.value = obj;\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.value = target.value;\n this._onChange(this.value);\n this.changed.emit(this.value);\n this.cdRef.markForCheck();\n }\n\n onEnter(): void {\n this.enterPressed.emit();\n }\n}\n","<input\n class=\"suis-input-text\"\n [class.suis-input-text--invalid]=\"invalid\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"readonly\"\n (input)=\"onChange($event)\"\n (focus)=\"onTouch()\"\n (keydown.enter)=\"onEnter()\"\n/>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Input,\n ViewChild,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n FormControl,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SuisChipComponent } from '../suis-chip';\nimport { SuisInputTextComponent } from '../suis-input-text';\nimport { SuisInputBase } from '../../shared/classes/suis-input.base';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-input-chips',\n standalone: true,\n imports: [\n CommonModule,\n ReactiveFormsModule,\n SuisChipComponent,\n SuisInputTextComponent,\n ],\n templateUrl: './suis-input-chips.component.html',\n styleUrls: ['./suis-input-chips.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisInputChipsComponent),\n },\n ],\n})\nexport class SuisInputChipsComponent extends SuisInputBase {\n /** @internal */\n @ViewChild('input') inputEl?: ElementRef;\n\n /**\n * Placeholder text displayed in input. By default set to empty string.\n */\n @Input() placeholder: string = '';\n\n /**\n * Sets the color pallette of the chips. Type of SuisColor. By default set to 'primary'.\n */\n @Input() chipColor: SuisColor = 'primary';\n\n /**\n * Sets the color of the chips' cross icon. Type of SuisColor. By default set to 'white'.\n */\n @Input() chipIconColor: SuisColor = 'white';\n\n /** @internal */\n value: string[] = [];\n\n /** @internal */\n inputControl = new FormControl<string>('', { nonNullable: true });\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(obj: string[]): void {\n this.value = obj || [];\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n addItem(value: string): void {\n const values = value.split(',').filter((v) => !!v);\n this.value = this.value.concat(values);\n this._onChange(this.value);\n this.changed.emit(this.value);\n this.cdRef.markForCheck();\n }\n\n removeItem(value: string): void {\n this.value = this.value.filter((v) => v !== value);\n }\n\n submitValue() {\n const inputValue = this.inputControl.value;\n this.inputControl.reset();\n this.addItem(inputValue);\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event) {\n if (!this.inputEl?.nativeElement.contains(event.target)) this.submitValue();\n }\n}\n","<div class=\"suis-input-chips\">\n <div #input class=\"suis-input-chips__input\">\n <suis-input-text\n [formControl]=\"inputControl\"\n [readonly]=\"readonly\"\n [invalid]=\"invalid\"\n [placeholder]=\"placeholder\"\n (touched)=\"onTouch()\"\n (enterPressed)=\"submitValue()\"\n ></suis-input-text>\n </div>\n <div *ngIf=\"value.length\" class=\"suis-input-chips__chips\">\n <suis-chip\n [removable]=\"readonly ? false : true\"\n [color]=\"chipColor\"\n [iconColor]=\"chipIconColor\"\n (remove)=\"removeItem(item)\"\n *ngFor=\"let item of value\"\n >\n {{ item }}\n </suis-chip>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisInputBase } from '../../shared/classes';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'suis-input-number',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-input-number.component.html',\n styleUrls: ['./suis-input-number.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisInputNumberComponent),\n },\n ],\n})\nexport class SuisInputNumberComponent extends SuisInputBase {\n /**\n * Placeholder text displayed in input. By default set to empty string.\n */\n @Input() placeholder: string = '';\n\n /** @internal */\n value: number | null = null;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override writeValue(obj: number | null): void {\n this.value = obj;\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.value = target.value ? Number(target.value) : null;\n this._onChange(this.value);\n this.changed.emit(this.value);\n this.cdRef.markForCheck();\n }\n}\n","<input\n class=\"suis-input-number\"\n [class.suis-input-number--invalid]=\"invalid\"\n type=\"number\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"readonly\"\n (input)=\"onChange($event)\"\n (focus)=\"onTouch()\"\n/>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-label',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-label.component.html',\n styleUrls: ['./suis-label.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisLabelComponent {\n /**\n * Adds a red colored asterisk after the label. By default set to false.\n */\n @Input() required: boolean = false;\n\n /**\n * Adds a bottom margin below the label. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<label class=\"suis-label\" [class.suis-label--spacing]=\"spacing\">\n <ng-content></ng-content>\n <span *ngIf=\"required\" class=\"suis-label__asterisk\">*</span>\n <ng-content select=\"[suisLabelAside]\"></ng-content>\n</label>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { SuisNavigationItem } from './suis-navigation-item.interfaces';\n\n@Component({\n selector: 'suis-navigation-item',\n standalone: true,\n imports: [CommonModule, RouterModule],\n templateUrl: './suis-navigation-item.component.html',\n styleUrls: ['./suis-navigation-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationItemComponent {\n /**\n * Navigation item data. Type of SuisNavigationItem.\n */\n @Input() item?: SuisNavigationItem;\n\n /**\n * Template to be displayed instead of item's label.\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisNavigationItem }>;\n}\n","<a\n *ngIf=\"item\"\n class=\"suis-navigation-item\"\n [routerLink]=\"item.link\"\n routerLinkActive=\"active\"\n>\n <div class=\"suis-navigation-item__content\">\n <ng-container *ngIf=\"templateRef; else label\">\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #label>\n {{ item.label }}\n </ng-template>\n </div>\n</a>\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { SuisNavigationItem } from './suis-navigation-item.interfaces';\n\n@Directive({\n selector: '[suisNavigationItem]',\n standalone: true,\n})\nexport class SuisNavigationItemDirective {\n /**\n * Custom template of the item.\n */\n public readonly templateRef = inject(\n TemplateRef<{ $implicit: SuisNavigationItem }>\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n SuisNavigationGroupItem,\n SuisNavigationItem,\n} from '../suis-navigation-item';\nimport { SuisIconType } from '../suis-icon/suis-icon.enums';\nimport { SuisIconComponent } from '../suis-icon/suis-icon.component';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n selector: 'suis-navigation-group-item',\n standalone: true,\n imports: [CommonModule, SuisIconComponent, RouterModule],\n templateUrl: './suis-navigation-group-item.component.html',\n styleUrls: ['./suis-navigation-group-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationGroupItemComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Navigation item data. Type of SuisNavigationGroupItem.\n */\n @Input() item?: SuisNavigationGroupItem;\n\n /**\n * Template to be displayed instead of item's label.s\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisNavigationItem }>;\n\n /**\n * Controlls styling of the item based on expanded state of group. By default set to true.\n */\n @Input() expanded: boolean = true;\n\n /**\n * Adds expand / collapse logic to item. By default set to false.\n */\n @Input() expandable: boolean = false;\n\n /**\n * Emits when expanded value of the item has been changed.\n */\n @Output() expandedChange = new EventEmitter<boolean>();\n\n onToggle(): void {\n if (!this.expandable) return;\n\n this.expanded = !this.expanded;\n this.expandedChange.emit(this.expanded);\n }\n}\n","<a\n *ngIf=\"item\"\n class=\"suis-navigation-group-item\"\n [routerLink]=\"expandable ? undefined : item.link\"\n routerLinkActive=\"active\"\n (click)=\"onToggle()\"\n>\n <div class=\"suis-navigation-group-item__content\">\n <ng-container *ngIf=\"templateRef; else label\">\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #label>\n {{ item.label }}\n </ng-template>\n </div>\n <div *ngIf=\"expandable\" class=\"suis-navigation-group-item__actions\">\n <suis-icon\n [type]=\"expanded ? SuisIconType.CHEVRON_UP : SuisIconType.CHEVRON_DOWN\"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n</a>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNavigationItemComponent } from '../suis-navigation-item';\nimport { RouterModule } from '@angular/router';\nimport {\n SuisNavigationGroupItem,\n SuisNavigationItem,\n} from '../suis-navigation-item/suis-navigation-item.interfaces';\nimport { SuisNavigationGroupItemComponent } from '../suis-navigation-group-item/suis-navigation-group-item.component';\n\n@Component({\n selector: 'suis-navigation-group',\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n SuisNavigationItemComponent,\n SuisNavigationGroupItemComponent,\n ],\n templateUrl: './suis-navigation-group.component.html',\n styleUrls: ['./suis-navigation-group.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationGroupComponent {\n /**\n * Navigation item data. Type of SuisNavigationGroupItem.\n */\n @Input() item?: SuisNavigationGroupItem;\n\n /**\n * Template to be displayed instead of item's label.\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisNavigationItem }>;\n\n /**\n * Expanded state of the navigation group. By default set to true.\n */\n @Input() expanded: boolean = true;\n\n /**\n * Adds expand / collapse logic to group header items. By default set to false.\n */\n @Input() expandable: boolean = false;\n\n /** @internal */\n itemTrackBy(index: number, item: SuisNavigationGroupItem): string {\n return `${item.label}-${index}`;\n }\n}\n","<div *ngIf=\"item\" class=\"suis-navigation-group\">\n <div class=\"suis-navigation-group__header\">\n <suis-navigation-group-item\n [item]=\"item\"\n [templateRef]=\"templateRef\"\n [expandable]=\"expandable && !!item.children\"\n [(expanded)]=\"expanded\"\n ></suis-navigation-group-item>\n </div>\n <div *ngIf=\"expanded\" class=\"suis-navigation-group__children\">\n <suis-navigation-item\n *ngFor=\"let childItem of item.children; trackBy: itemTrackBy\"\n [item]=\"childItem\"\n [templateRef]=\"templateRef\"\n ></suis-navigation-item>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Input,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNavigationGroupItem } from '../suis-navigation-item/suis-navigation-item.interfaces';\nimport { SuisNavigationItemDirective } from '../suis-navigation-item';\nimport { SuisNavigationGroupComponent } from '../suis-navigation-group';\n\n@Component({\n selector: 'suis-navigation',\n standalone: true,\n imports: [CommonModule, SuisNavigationGroupComponent],\n templateUrl: './suis-navigation.component.html',\n styleUrls: ['./suis-navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNavigationComponent {\n /** @internal */\n @ContentChild(SuisNavigationItemDirective)\n suisNavigationItem?: SuisNavigationItemDirective;\n\n /**\n * List of navigation items. Type of SuisNavigationGroupItem[]. By default set to empty array.\n */\n @Input() items: SuisNavigationGroupItem[] = [];\n\n /**\n * Condition to expand groups at view initialization. By default set to true.\n */\n @Input() expandedGroups: boolean = true;\n\n /**\n * Adds expand / collapse logic to group header items. By default set to false.\n */\n @Input() expandable: boolean = false;\n\n /** @internal */\n groupItemTrackBy(index: number, groupItem: SuisNavigationGroupItem): string {\n return `${groupItem.label}-${index}`;\n }\n}\n","<div class=\"suis-navigation\">\n <suis-navigation-group\n *ngFor=\"let groupItem of items; trackBy: groupItemTrackBy\"\n [item]=\"groupItem\"\n [templateRef]=\"suisNavigationItem?.templateRef\"\n [expanded]=\"expandedGroups\"\n [expandable]=\"expandable\"\n ></suis-navigation-group>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNotification } from './suis-notification.interfaces';\nimport { SuisNgClassPipe } from '../../pipes';\nimport { SuisIconType } from '../suis-icon/suis-icon.enums';\nimport { SuisIconComponent } from '../suis-icon';\n\n@Component({\n selector: 'suis-notification',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe, SuisIconComponent],\n templateUrl: './suis-notification.component.html',\n styleUrls: ['./suis-notification.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNotificationComponent {\n /** @internal */\n SuisIconType = SuisIconType;\n\n /**\n * Notification item data. Type of SuisNotification.\n */\n @Input({ required: true }) notification?: SuisNotification;\n\n /**\n * Emits on close button action.\n */\n @Output() closed = new EventEmitter<void>();\n\n onClose() {\n this.closed.emit();\n }\n}\n","<div\n *ngIf=\"notification\"\n class=\"suis-notification\"\n [ngClass]=\"'suis-notification' | suisNgClass : notification.type\"\n>\n <button class=\"suis-notification__close\" type=\"button\" (click)=\"onClose()\">\n <suis-icon\n [type]=\"SuisIconType.CROSS\"\n [color]=\"'white'\"\n [size]=\"'lg'\"\n ></suis-icon>\n </button>\n <div class=\"suis-notification__message\">\n {{ notification.message }}\n </div>\n</div>\n","import { Injectable, WritableSignal, signal, Signal } from '@angular/core';\nimport { SuisNotification } from '../components/suis-notification/suis-notification.interfaces';\nimport { SuisNotificationType } from '../components/suis-notification/suis-notification.types';\n\nlet UNIQUE_ID = 1;\n\n@Injectable()\nexport class SuisNotificationService {\n private notifications: WritableSignal<SuisNotification[]> = signal([]);\n\n /**\n * @returns array of the current notifications. Type of SuisNotification[].\n */\n getNotifications(): Signal<SuisNotification[]> {\n return this.notifications.asReadonly();\n }\n\n /**\n * Adds success notification\n * @param message text displayed in the notification\n * @param delay time in ms after notification will be destroyed\n */\n success(message: string, delay: number = 2500): void {\n this.addNotification(message, delay, 'success');\n }\n\n /**\n * Adds warning notification\n * @param message text displayed in the notification\n * @param delay time in ms after notification will be destroyed\n */\n warning(message: string, delay: number = 2500): void {\n this.addNotification(message, delay, 'warning');\n }\n\n /**\n * Adds danger notification\n * @param message text displayed in the notification\n * @param delay time in ms after notification will be destroyed\n */\n danger(message: string, delay: number = 2500): void {\n this.addNotification(message, delay, 'danger');\n }\n\n /**\n * Removes notification immediately\n * @param id id of the notification to be removed\n */\n forceRemoveNotification(id: string): void {\n this.removeNotification(id);\n }\n\n /** @internal */\n private getId(): string {\n return `suis-notification--${UNIQUE_ID++}`;\n }\n\n /** @internal */\n private addNotification(\n message: string,\n delay: number,\n type: SuisNotificationType\n ): void {\n const notification: SuisNotification = {\n id: this.getId(),\n message: message,\n delay: delay,\n type: type,\n };\n\n this.notifications.set([...this.notifications(), notification]);\n\n this.removeNotificationWithDelay(notification.id, notification.delay);\n }\n\n /** @internal */\n private removeNotification(id: string): void {\n this.notifications.set([\n ...this.notifications().filter((notification) => notification.id !== id),\n ]);\n }\n\n /** @internal */\n private removeNotificationWithDelay(id: string, delay: number): void {\n setTimeout(() => {\n this.removeNotification(id);\n }, delay);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Signal,\n inject,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNotification } from '../suis-notification/suis-notification.interfaces';\nimport { SuisNotificationComponent } from '../suis-notification/suis-notification.component';\nimport { SuisNotificationService } from '../../services/suis-notification.service';\n\n@Component({\n selector: 'suis-notifications',\n standalone: true,\n imports: [CommonModule, SuisNotificationComponent],\n templateUrl: './suis-notifications.component.html',\n styleUrls: ['./suis-notifications.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisNotificationsComponent {\n private readonly notificationService = inject(SuisNotificationService);\n\n notifications: Signal<SuisNotification[]> =\n this.notificationService.getNotifications();\n\n remove(id: string): void {\n this.notificationService.forceRemoveNotification(id);\n }\n\n /** @internal */\n notificationTrackBy(index: number, notification: SuisNotification): string {\n return notification.id;\n }\n}\n","<suis-notification\n *ngFor=\"let notification of notifications(); trackBy: notificationTrackBy\"\n [notification]=\"notification\"\n (closed)=\"remove(notification.id)\"\n></suis-notification>\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisProgressBar',\n})\nexport class SuisProgressBarPipe implements PipeTransform {\n transform(value: number): string {\n return `${(value / 100) * 100}%`;\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisProgressBarPipe } from './suis-progress-bar.pipe';\nimport { SuisColor } from '../../types';\nimport { SuisNgClassPipe } from '../../pipes';\n\n@Component({\n selector: 'suis-progress-bar',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe, SuisProgressBarPipe],\n templateUrl: './suis-progress-bar.component.html',\n styleUrls: ['./suis-progress-bar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisProgressBarComponent {\n /** @internal */\n _value: number = 0;\n\n /** @internal */\n get value(): number {\n return this._value;\n }\n\n /**\n * Width of the progress bar in percentage (value >= 0 && value <= 100). By default set to 0.\n */\n @Input() set value(value: number) {\n if (value >= 0 && value <= 100) {\n this._value = value;\n } else if (value > 100) {\n this._value = 100;\n } else {\n this._value = 0;\n }\n }\n\n /**\n * Sets the color of the progress bar. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n\n /**\n * Sets the background color of the progress bar. Type of SuisColor. By default set to 'tertiary'.\n */\n @Input() backgroundColor: SuisColor = 'tertiary';\n}\n","<div\n class=\"suis-progress-bar\"\n [ngClass]=\"'suis-progress-bar' | suisNgClass : backgroundColor\"\n>\n <div\n class=\"suis-progress-bar__progress\"\n [style]=\"{ width: value | suisProgressBar }\"\n [ngClass]=\"'suis-progress-bar__progress' | suisNgClass : color\"\n ></div>\n</div>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../suis-select-option/suis-select-option.interfaces';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectLabel',\n})\nexport class SuisSelectLabelPipe<T> implements PipeTransform {\n transform(\n value: T,\n options: SuisSelectOption<T>[],\n placeholder: string\n ): string {\n if (!value) return placeholder;\n const selectedOption = options.find(\n (option) => JSON.stringify(option.value) === JSON.stringify(value)\n );\n if (!selectedOption)\n throw Error(\n '[SuisSelectLabelPipe] Provided value does not belong to valid values'\n );\n return selectedOption.label;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectIsSelected',\n})\nexport class SuisSelectIsSelectedPipe<T> implements PipeTransform {\n transform(optionValue: T, value: T): boolean {\n return JSON.stringify(optionValue) === JSON.stringify(value);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSelectOption } from './suis-select-option.interfaces';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\n\n@Component({\n selector: 'suis-select-option',\n standalone: true,\n imports: [CommonModule, SuisIconComponent],\n templateUrl: './suis-select-option.component.html',\n styleUrls: ['./suis-select-option.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisSelectOptionComponent<T> {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /**\n * Option data. Type of SuisSelectOption<T>. Required input.\n */\n @Input({ required: true }) option?: SuisSelectOption<T>;\n\n /**\n * Template to be displayed instead of option's label.\n */\n @Input() templateRef?: TemplateRef<{ $implicit: SuisSelectOption<T> }>;\n\n /**\n * Adds checkmark icon to checkbox (if checkbox input set to true). By default set to false.\n */\n @Input() selected: boolean = false;\n\n /**\n * Display checkbox next to option label. By default set to true.\n */\n @Input() checkbox: boolean = true;\n\n /**\n * Emits on option selected.\n */\n @Output() clicked = new EventEmitter<void>();\n\n /** @internal */\n onClick(): void {\n this.clicked.emit();\n }\n}\n","<button\n class=\"suis-select-option\"\n type=\"button\"\n tabindex=\"-1\"\n (click)=\"onClick()\"\n>\n <span\n class=\"suis-select-option__checkbox\"\n [class.suis-select-option__checkbox--selected]=\"selected\"\n *ngIf=\"checkbox\"\n >\n <suis-icon\n *ngIf=\"selected\"\n [bold]=\"true\"\n color=\"primary\"\n [type]=\"SuisIconType.CHECK\"\n size=\"sm\"\n ></suis-icon>\n </span>\n <span class=\"suis-select-option__label\">\n <ng-container *ngIf=\"templateRef; else label\">\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: option }\"\n ></ng-container>\n </ng-container>\n <ng-template #label>\n {{ option?.label }}\n </ng-template>\n </span>\n</button>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../../components/suis-select-option';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectSortOptions',\n})\nexport class SuisSelectSortOptionsPipe<T> implements PipeTransform {\n transform(options: SuisSelectOption<T>[]): SuisSelectOption<T>[] {\n return options.sort((a, b) => a.label.localeCompare(b.label));\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../../components/suis-select-option';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectFilterOptions',\n})\nexport class SuisSelectFilterOptionsPipe<T> implements PipeTransform {\n transform(\n options: SuisSelectOption<T>[],\n phrase: string\n ): SuisSelectOption<T>[] {\n if (!phrase) return options;\n return options.filter((option) =>\n option.label.toLocaleLowerCase().includes(phrase.toLocaleLowerCase())\n );\n }\n}\n","import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SuisIconComponent } from '../suis-icon';\nimport { SuisSelectLabelPipe } from './suis-select-label.pipe';\nimport { SuisSelectIsSelectedPipe } from './suis-select-is-selected.pipe';\nimport { SuisSelectOptionComponent } from '../suis-select-option';\nimport { SuisSelectSortOptionsPipe } from '../../shared/pipes/suis-select-sort-options.pipe';\nimport { SuisSelectFilterOptionsPipe } from '../../shared/pipes/suis-select-filter-options.pipe';\nimport { SuisSelectBase } from '../../shared/classes/suis-select.base';\n\n@Component({\n selector: 'suis-select',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n SuisIconComponent,\n SuisSelectOptionComponent,\n SuisSelectLabelPipe,\n SuisSelectIsSelectedPipe,\n SuisSelectSortOptionsPipe,\n SuisSelectFilterOptionsPipe,\n ],\n templateUrl: './suis-select.component.html',\n styleUrls: ['./suis-select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisSelectComponent),\n },\n ],\n})\nexport class SuisSelectComponent<T> extends SuisSelectBase<T> {\n /** @internal */\n value: T | null = null;\n\n override writeValue(obj: T): void {\n this.value = obj;\n this._onChange(this.value);\n this.cdRef.markForCheck();\n }\n\n override onSelect(value: T) {\n if (JSON.stringify(this.value) === JSON.stringify(value))\n return this.clearValue();\n this.setValue(value);\n }\n\n override clearValue() {\n this.setValue(null);\n }\n\n override setValue(value: T | null) {\n this.value = value;\n this.toggle(false);\n this._onChange(this.value);\n this.changed.emit();\n this.cdRef.markForCheck();\n }\n}\n","<div class=\"suis-select\">\n <button\n type=\"button\"\n (click)=\"onExpand()\"\n class=\"suis-select__button\"\n [class.suis-select__button--invalid]=\"invalid\"\n [disabled]=\"readonly\"\n >\n <span class=\"suis-select__button__value\">\n {{ value | suisSelectLabel : options : placeholder }}\n </span>\n <span class=\"suis-select__button__actions\">\n <suis-icon\n *ngIf=\"value\"\n class=\"suis-select__button__cross\"\n [type]=\"SuisIconType.CROSS\"\n size=\"lg\"\n color=\"primary\"\n (click)=\"onClear($event)\"\n ></suis-icon>\n <suis-icon\n class=\"suis-select__button__chevron\"\n [type]=\"expanded ? SuisIconType.CHEVRON_UP : SuisIconType.CHEVRON_DOWN\"\n size=\"lg\"\n color=\"primary\"\n ></suis-icon>\n </span>\n </button>\n <div *ngIf=\"expanded\" class=\"suis-select__list\">\n <input\n *ngIf=\"search\"\n [ngModel]=\"searchPhrase\"\n (ngModelChange)=\"onSearchPhraseChange($event)\"\n class=\"suis-select__list__search\"\n type=\"search\"\n [placeholder]=\"searchPlaceholder\"\n />\n <suis-select-option\n *ngFor=\"\n let option of options\n | suisSelectSortOptions\n | suisSelectFilterOptions : searchPhrase;\n trackBy: optionTrackBy\n \"\n [option]=\"option\"\n [templateRef]=\"suisSelectOption?.templateRef\"\n [selected]=\"option.value | suisSelectIsSelected : value\"\n (clicked)=\"onSelect(option.value)\"\n ></suis-select-option>\n </div>\n</div>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SuisSelectOption } from '../suis-select-option/suis-select-option.interfaces';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectMultiChips',\n})\nexport class SuisSelectMultiChipsPipe<T> implements PipeTransform {\n transform(values: T[], options: SuisSelectOption<T>[]): string[] {\n const selectedOptions: string[] = [];\n\n values.forEach((value) => {\n const selectedOption = options.find(\n (option) => JSON.stringify(option.value) === JSON.stringify(value)\n );\n if (!selectedOption)\n throw Error(\n '[SuisSelectMultiLabelPipe] Provided value does not belong to valid values'\n );\n selectedOptions.push(selectedOption.label);\n });\n\n return selectedOptions;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: true,\n name: 'suisSelectMultiIsSelected',\n})\nexport class SuisSelectMultiIsSelectedPipe<T> implements PipeTransform {\n transform(optionValue: T, values: T[]): boolean {\n return values.some(\n (value) => JSON.stringify(value) === JSON.stringify(optionValue)\n );\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n forwardRef,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSelectBase } from '../../shared/classes/suis-select.base';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SuisIconComponent } from '../suis-icon/suis-icon.component';\nimport { SuisSelectOptionComponent } from '../suis-select-option/suis-select-option.component';\nimport { SuisSelectSortOptionsPipe } from '../../shared/pipes/suis-select-sort-options.pipe';\nimport { SuisSelectFilterOptionsPipe } from '../../shared/pipes/suis-select-filter-options.pipe';\nimport { SuisSelectMultiChipsPipe } from './suis-select-multi-chips.pipe';\nimport { SuisSelectMultiIsSelectedPipe } from './suis-select-multi-is-selected.pipe';\nimport { SuisChipComponent } from '../suis-chip';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-select-multi',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n SuisIconComponent,\n SuisChipComponent,\n SuisSelectOptionComponent,\n SuisSelectMultiChipsPipe,\n SuisSelectMultiIsSelectedPipe,\n SuisSelectSortOptionsPipe,\n SuisSelectFilterOptionsPipe,\n ],\n templateUrl: './suis-select-multi.component.html',\n styleUrls: ['./suis-select-multi.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SuisSelectMultiComponent),\n },\n ],\n})\nexport class SuisSelectMultiComponent<T> extends SuisSelectBase<T> {\n /** @internal */\n values: T[] = [];\n\n /**\n * Allows to select duplicated values and remove checkboxes next to options' label. By default set to false.\n */\n @Input() duplicate: boolean = false;\n\n /**\n * Sets the color pallette of the chips. Type of SuisColor. By default set to 'primary'.\n */\n @Input() chipColor: SuisColor = 'primary';\n\n /**\n * Sets the color of the chips' cross icon. Type of SuisColor. By default set to 'white'.\n */\n @Input() chipIconColor: SuisColor = 'white';\n\n override writeValue(obj: T[]): void {\n this.values = obj;\n this._onChange(this.values);\n this.cdRef.markForCheck();\n }\n\n override onSelect(value: T): void {\n if (\n this.duplicate ||\n !this.values.some(\n (value) => JSON.stringify(value) === JSON.stringify(value)\n )\n ) {\n this.setValue([...this.values, value]);\n } else {\n this.setValue([\n ...this.values.filter(\n (value) => JSON.stringify(value) !== JSON.stringify(value)\n ),\n ]);\n }\n }\n\n onRemove(index: number): void {\n const values = [...this.values];\n values.splice(index, 1);\n this.setValue([...values]);\n }\n\n override clearValue(): void {\n this.setValue([]);\n }\n\n override setValue(value: T[]): void {\n this.values = value;\n this._onChange(this.values);\n this.changed.emit();\n this.cdRef.markForCheck();\n }\n}\n","<div class=\"suis-select-multi\">\n <button\n type=\"button\"\n (click)=\"onExpand()\"\n class=\"suis-select-multi__button\"\n [class.suis-select-multi__button--invalid]=\"invalid\"\n [class.suis-select-multi__button--valid]=\"values.length > 0\"\n [disabled]=\"readonly\"\n >\n <span class=\"suis-select-multi__button__value\">\n <ng-container *ngIf=\"!values?.length\">\n {{ placeholder }}\n </ng-container>\n <ng-container *ngIf=\"values?.length\">\n <suis-chip\n *ngFor=\"\n let value of values | suisSelectMultiChips : options;\n let index = index\n \"\n [removable]=\"true\"\n [color]=\"chipColor\"\n [iconColor]=\"chipIconColor\"\n (remove)=\"onRemove(index)\"\n >\n {{ value }}\n </suis-chip>\n </ng-container>\n </span>\n <span class=\"suis-select-multi__button__actions\">\n <suis-icon\n *ngIf=\"values?.length\"\n class=\"suis-select-multi__button__cross\"\n [type]=\"SuisIconType.CROSS\"\n size=\"lg\"\n color=\"primary\"\n (click)=\"onClear($event)\"\n tabindex=\"0\"\n ></suis-icon>\n <suis-icon\n class=\"suis-select-multi__button__chevron\"\n [type]=\"expanded ? SuisIconType.CHEVRON_UP : SuisIconType.CHEVRON_DOWN\"\n size=\"lg\"\n color=\"primary\"\n tabindex=\"0\"\n ></suis-icon>\n </span>\n </button>\n <div *ngIf=\"expanded\" class=\"suis-select-multi__list\">\n <input\n *ngIf=\"search\"\n [ngModel]=\"searchPhrase\"\n (ngModelChange)=\"onSearchPhraseChange($event)\"\n class=\"suis-select-multi__list__search\"\n type=\"search\"\n [placeholder]=\"searchPlaceholder\"\n />\n <suis-select-option\n *ngFor=\"\n let option of options\n | suisSelectSortOptions\n | suisSelectFilterOptions : searchPhrase;\n trackBy: optionTrackBy\n \"\n [option]=\"option\"\n [templateRef]=\"suisSelectOption?.templateRef\"\n [selected]=\"option.value | suisSelectMultiIsSelected : values\"\n [checkbox]=\"!duplicate\"\n (clicked)=\"onSelect(option.value)\"\n ></suis-select-option>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisNgClassPipe } from '../../pipes';\nimport { SuisSize } from '../../types/suis-size.type';\nimport { SuisColor } from '../../types/suis-color.type';\n\n@Component({\n selector: 'suis-spinner',\n standalone: true,\n imports: [CommonModule, SuisNgClassPipe],\n templateUrl: './suis-spinner.component.html',\n styleUrls: ['./suis-spinner.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisSpinnerComponent {\n /**\n * Sets the size of the spinner. Type of SuisSize. By default set to 'sm'.\n */\n @Input() size: SuisSize = 'sm';\n\n /**\n * Sets the color of the spinner. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n}\n","<div\n class=\"suis-spinner\"\n [ngClass]=\"'suis-spinner' | suisNgClass : size : color\"\n></div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSize } from '../../types/suis-size.type';\nimport { SuisColor } from '../../types/suis-color.type';\nimport { SuisSpinnerComponent } from '../suis-spinner/suis-spinner.component';\n\n@Component({\n selector: 'suis-spinner-container',\n standalone: true,\n imports: [CommonModule, SuisSpinnerComponent],\n templateUrl: './suis-spinner-container.component.html',\n styleUrls: ['./suis-spinner-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisSpinnerContainerComponent {\n /**\n * Sets the size of the spinner. Type of SuisSize. By default set to 'sm'.\n */\n @Input() size: SuisSize = 'sm';\n\n /**\n * Sets the color of the spinner. Type of SuisColor. By default set to 'primary'.\n */\n @Input() color: SuisColor = 'primary';\n\n /**\n * Adds blur effect to the container background. By default set to false.\n */\n @Input() blur: boolean = false;\n\n /**\n * Position absolute to the parent element (must have relative position). By default set to false.\n */\n @Input() absolute: boolean = false;\n}\n","<div\n class=\"suis-spinner-container\"\n [class.suis-spinner-container--blur]=\"blur\"\n [class.suis-spinner-container--absolute]=\"absolute\"\n>\n <suis-spinner [size]=\"size\" [color]=\"color\"></suis-spinner>\n</div>\n","import { Directive, TemplateRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[suisTableCell]',\n standalone: true,\n})\nexport class SuisTableCellDirective {\n /**\n * Template of the table cell.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public readonly templateRef = inject(TemplateRef<any>);\n}\n","import { ContentChild, Directive, Input } from '@angular/core';\nimport { SuisTableCellDirective } from './suis-table-cell.directive';\n\n@Directive({\n selector: '[suisTableColumn]',\n standalone: true,\n})\nexport class SuisTableColumnDirective {\n @ContentChild(SuisTableCellDirective) cell?: SuisTableCellDirective;\n\n protected _name: string = '';\n protected _orderProperty: string = '';\n\n /** Unique name for this column. */\n @Input('suisTableColumn')\n get name(): string {\n return this._name;\n }\n\n set name(name: string) {\n this._name = name;\n }\n\n @Input('suisTableColumnOrderProperty')\n get orderProperty(): string {\n return this._orderProperty;\n }\n\n set orderProperty(orderProperty: string) {\n this._orderProperty = orderProperty;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuisSpinnerContainerComponent } from '../suis-spinner-container';\nimport { SuisTableDataItem } from './suis-table.interfaces';\nimport { SuisTableColumnDirective } from './suis-table-column.directive';\nimport { SuisIconComponent, SuisIconType } from '../suis-icon';\n\n@Component({\n selector: 'suis-table',\n standalone: true,\n imports: [CommonModule, SuisIconComponent, SuisSpinnerContainerComponent],\n templateUrl: './suis-table.component.html',\n styleUrls: ['./suis-table.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisTableComponent {\n /** @internal */\n readonly SuisIconType = SuisIconType;\n\n /** @internal */\n @ContentChildren(SuisTableColumnDirective)\n columns?: QueryList<SuisTableColumnDirective>;\n\n /**\n * Data items collection. Type of SuisTableDataItem[]. By default set to empty array. Required input.\n */\n @Input({ required: true }) data: SuisTableDataItem[] = [];\n\n /**\n * Specifies property that data is ordered. By default set to empty string.\n */\n @Input() orderBy: string = '';\n\n /**\n * Specifies sort condition. Accepted values - 'asc' and 'desc'. By default set to 'asc'.\n */\n @Input() sortBy: 'asc' | 'desc' = 'asc';\n\n /**\n * Shows loading spinner and blurs data. By default set to false.\n */\n @Input() loading: boolean = false;\n\n /**\n * Emits value on sort condition change.\n */\n @Output() sortByChange = new EventEmitter<string>();\n\n /**\n * Emits value on order property change.\n */\n @Output() orderByChange = new EventEmitter<string>();\n\n onColumnClick(property: string): void {\n if (this.orderBy !== property) {\n this.orderBy = property;\n this.orderByChange.emit(this.orderBy);\n } else {\n this.sortBy = this.sortBy === 'asc' ? 'desc' : 'asc';\n this.sortByChange.emit(this.sortBy);\n }\n }\n}\n","<table *ngIf=\"columns\" class=\"suis-table\">\n <thead>\n <tr>\n <th\n *ngFor=\"let column of columns\"\n [class.pointer]=\"column.orderProperty\"\n (click)=\"\n column.orderProperty ? onColumnClick(column.orderProperty) : undefined\n \"\n >\n <div class=\"suis-table__header\">\n <span>\n {{ column.name }}\n </span>\n <suis-icon\n *ngIf=\"column.orderProperty === orderBy\"\n [type]=\"\n sortBy === 'asc'\n ? SuisIconType.CHEVRON_DOWN\n : SuisIconType.CHEVRON_UP\n \"\n size=\"lg\"\n color=\"white\"\n ></suis-icon>\n </div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\">\n <td *ngFor=\"let column of columns\">\n <ng-container\n *ngTemplateOutlet=\"\n column.cell!.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </td>\n </tr>\n <suis-spinner-container\n *ngIf=\"loading\"\n [absolute]=\"true\"\n [blur]=\"true\"\n ></suis-spinner-container>\n </tbody>\n</table>\n\n<!-- TODO: <suis-pagination></suis-pagination> -->\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'suis-title',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './suis-title.component.html',\n styleUrls: ['./suis-title.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SuisTitleComponent {\n /**\n * Adds a bottom margin below the title. By default set to false.\n */\n @Input() spacing: boolean = false;\n}\n","<h1 class=\"suis-title\" [class.suis-title--spacing]=\"spacing\">\n <ng-content></ng-content>\n</h1>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
@@ -22,4 +22,5 @@ export * from './suis-select-option';
22
22
  export * from './suis-select-multi';
23
23
  export * from './suis-spinner';
24
24
  export * from './suis-spinner-container';
25
+ export * from './suis-table';
25
26
  export * from './suis-title';
@@ -0,0 +1,4 @@
1
+ export * from './suis-table.component';
2
+ export * from './suis-table-column.directive';
3
+ export * from './suis-table-cell.directive';
4
+ export * from './suis-table.interfaces';
@@ -0,0 +1,10 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class SuisTableCellDirective {
4
+ /**
5
+ * Template of the table cell.
6
+ */
7
+ readonly templateRef: TemplateRef<any>;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<SuisTableCellDirective, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SuisTableCellDirective, "[suisTableCell]", never, {}, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,14 @@
1
+ import { SuisTableCellDirective } from './suis-table-cell.directive';
2
+ import * as i0 from "@angular/core";
3
+ export declare class SuisTableColumnDirective {
4
+ cell?: SuisTableCellDirective;
5
+ protected _name: string;
6
+ protected _orderProperty: string;
7
+ /** Unique name for this column. */
8
+ get name(): string;
9
+ set name(name: string);
10
+ get orderProperty(): string;
11
+ set orderProperty(orderProperty: string);
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<SuisTableColumnDirective, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SuisTableColumnDirective, "[suisTableColumn]", never, { "name": { "alias": "suisTableColumn"; "required": false; }; "orderProperty": { "alias": "suisTableColumnOrderProperty"; "required": false; }; }, {}, ["cell"], never, true, never>;
14
+ }
@@ -0,0 +1,38 @@
1
+ import { EventEmitter, QueryList } from '@angular/core';
2
+ import { SuisTableDataItem } from './suis-table.interfaces';
3
+ import { SuisTableColumnDirective } from './suis-table-column.directive';
4
+ import { SuisIconType } from '../suis-icon';
5
+ import * as i0 from "@angular/core";
6
+ export declare class SuisTableComponent {
7
+ /** @internal */
8
+ readonly SuisIconType: typeof SuisIconType;
9
+ /** @internal */
10
+ columns?: QueryList<SuisTableColumnDirective>;
11
+ /**
12
+ * Data items collection. Type of SuisTableDataItem[]. By default set to empty array. Required input.
13
+ */
14
+ data: SuisTableDataItem[];
15
+ /**
16
+ * Specifies property that data is ordered. By default set to empty string.
17
+ */
18
+ orderBy: string;
19
+ /**
20
+ * Specifies sort condition. Accepted values - 'asc' and 'desc'. By default set to 'asc'.
21
+ */
22
+ sortBy: 'asc' | 'desc';
23
+ /**
24
+ * Shows loading spinner and blurs data. By default set to false.
25
+ */
26
+ loading: boolean;
27
+ /**
28
+ * Emits value on sort condition change.
29
+ */
30
+ sortByChange: EventEmitter<string>;
31
+ /**
32
+ * Emits value on order property change.
33
+ */
34
+ orderByChange: EventEmitter<string>;
35
+ onColumnClick(property: string): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<SuisTableComponent, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<SuisTableComponent, "suis-table", never, { "data": { "alias": "data"; "required": true; }; "orderBy": { "alias": "orderBy"; "required": false; }; "sortBy": { "alias": "sortBy"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; }, { "sortByChange": "sortByChange"; "orderByChange": "orderByChange"; }, ["columns"], never, true, never>;
38
+ }
@@ -0,0 +1,3 @@
1
+ export interface SuisTableDataItem {
2
+ [key: string]: any;
3
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "suis",
3
- "version": "0.19.0",
3
+ "version": "0.20.0",
4
4
  "main": "src/index.ts",
5
5
  "author": "Karol Jaskółka",
6
6
  "description": "SUIS (Standalone UI + Signals) Angular 16+ Component Library",
@@ -12,13 +12,13 @@
12
12
  "dashboard"
13
13
  ],
14
14
  "peerDependencies": {
15
- "@angular/common": "^16.0.0",
16
- "@angular/core": "^16.0.0",
15
+ "@angular/common": ">=16.0.0",
16
+ "@angular/core": ">=16.0.0",
17
17
  "@angular/router": "16.0.0",
18
18
  "@angular/forms": "16.0.0"
19
19
  },
20
20
  "dependencies": {
21
- "tslib": "^2.3.0"
21
+ "tslib": ">=2.3.0"
22
22
  },
23
23
  "sideEffects": false,
24
24
  "module": "fesm2022/suis.mjs",