@sebgroup/green-angular 3.5.2 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/esm2020/index.mjs CHANGED
@@ -12,6 +12,7 @@ export * from './lib/shared';
12
12
  export * from './lib/slider';
13
13
  export * from './lib/in-page-wizard';
14
14
  export * from './lib/context-menu';
15
+ export * from './lib/sortable-list';
15
16
  export * from './lib/cell-table';
16
17
  export * from './lib/shared/core-element';
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGFBQWEsQ0FBQTtBQUMzQixjQUFjLGNBQWMsQ0FBQTtBQUM1QixjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxhQUFhLENBQUE7QUFDM0IsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMseUJBQXlCLENBQUE7QUFDdkMsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMsa0JBQWtCLENBQUE7QUFFaEMsY0FBYywyQkFBMkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2dyZWVuLWFuZ3VsYXIubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWNjb3JkaW9uJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFkZ2UnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b24nXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlcGlja2VyJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24nXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RhbCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2luYXRpb24nXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wcm9ncmVzcy1jaXJjbGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZWdtZW50ZWQtY29udHJvbCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NsaWRlcidcbmV4cG9ydCAqIGZyb20gJy4vbGliL2luLXBhZ2Utd2l6YXJkJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udGV4dC1tZW51J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2VsbC10YWJsZSdcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL2NvcmUtZWxlbWVudCdcbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGFBQWEsQ0FBQTtBQUMzQixjQUFjLGNBQWMsQ0FBQTtBQUM1QixjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxhQUFhLENBQUE7QUFDM0IsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMseUJBQXlCLENBQUE7QUFDdkMsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMscUJBQXFCLENBQUE7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQTtBQUVoQyxjQUFjLDJCQUEyQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZ3JlZW4tYW5ndWxhci5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY2NvcmRpb24nXG5leHBvcnQgKiBmcm9tICcuL2xpYi9iYWRnZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbidcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGVwaWNrZXInXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bidcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGFsJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnaW5hdGlvbidcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Byb2dyZXNzLWNpcmNsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlZ21lbnRlZC1jb250cm9sJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2xpZGVyJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW4tcGFnZS13aXphcmQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250ZXh0LW1lbnUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zb3J0YWJsZS1saXN0J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2VsbC10YWJsZSdcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL2NvcmUtZWxlbWVudCdcbiJdfQ==
@@ -12,6 +12,7 @@ import { NggProgressCircleModule } from './progress-circle/progress-circle.modul
12
12
  import { NggSegmentedControlModule } from './segmented-control/segmented-control.module';
13
13
  import { NggSharedModule } from './shared/shared.module';
14
14
  import { NggSliderModule } from './slider/slider.module';
15
+ import { NggSortableListModule } from './sortable-list/sortable-list.module';
15
16
  import { NggCellTableModule } from './cell-table';
16
17
  import * as i0 from "@angular/core";
17
18
  export class NggModule {
@@ -29,7 +30,8 @@ NggModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.
29
30
  NggContextMenuModule,
30
31
  NggInPageWizardModule,
31
32
  NggCellTableModule,
32
- NggSharedModule] });
33
+ NggSharedModule,
34
+ NggSortableListModule] });
33
35
  NggModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggModule, imports: [CommonModule, NggAccordionModule,
34
36
  NggBadgeModule,
35
37
  NggButtonModule,
@@ -42,7 +44,8 @@ NggModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.
42
44
  NggContextMenuModule,
43
45
  NggInPageWizardModule,
44
46
  NggCellTableModule,
45
- NggSharedModule] });
47
+ NggSharedModule,
48
+ NggSortableListModule] });
46
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggModule, decorators: [{
47
50
  type: NgModule,
48
51
  args: [{
@@ -62,7 +65,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
62
65
  NggInPageWizardModule,
63
66
  NggCellTableModule,
64
67
  NggSharedModule,
68
+ NggSortableListModule,
65
69
  ],
66
70
  }]
67
71
  }] });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JlZW4tYW5ndWxhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9ncmVlbi1hbmd1bGFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUM5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFBOztBQXFCakQsTUFBTSxPQUFPLFNBQVM7O3NHQUFULFNBQVM7dUdBQVQsU0FBUyxZQWpCVixZQUFZLGFBRXBCLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsY0FBYztRQUNkLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIsZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGVBQWU7dUdBR04sU0FBUyxZQWpCVixZQUFZLEVBRXBCLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsY0FBYztRQUNkLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIsZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGVBQWU7MkZBR04sU0FBUztrQkFuQnJCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFO3dCQUNQLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixjQUFjO3dCQUNkLHVCQUF1Qjt3QkFDdkIseUJBQXlCO3dCQUN6QixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLGVBQWU7cUJBQ2hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdnQWNjb3JkaW9uTW9kdWxlIH0gZnJvbSAnLi9hY2NvcmRpb24nXG5pbXBvcnQgeyBOZ2dCYWRnZU1vZHVsZSB9IGZyb20gJy4vYmFkZ2UvYmFkZ2UubW9kdWxlJ1xuaW1wb3J0IHsgTmdnQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi9idXR0b24vYnV0dG9uLm1vZHVsZSdcbmltcG9ydCB7IE5nZ0NvbnRleHRNZW51TW9kdWxlIH0gZnJvbSAnLi9jb250ZXh0LW1lbnUnXG5pbXBvcnQgeyBOZ2dEYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnLi9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJ1xuaW1wb3J0IHsgTmdnRHJvcGRvd25Nb2R1bGUgfSBmcm9tICcuL2Ryb3Bkb3duL2Ryb3Bkb3duLm1vZHVsZSdcbmltcG9ydCB7IE5nZ0luUGFnZVdpemFyZE1vZHVsZSB9IGZyb20gJy4vaW4tcGFnZS13aXphcmQnXG5pbXBvcnQgeyBOZ2dNb2RhbE1vZHVsZSB9IGZyb20gJy4vbW9kYWwnXG5pbXBvcnQgeyBOZ2dQcm9ncmVzc0NpcmNsZU1vZHVsZSB9IGZyb20gJy4vcHJvZ3Jlc3MtY2lyY2xlL3Byb2dyZXNzLWNpcmNsZS5tb2R1bGUnXG5pbXBvcnQgeyBOZ2dTZWdtZW50ZWRDb250cm9sTW9kdWxlIH0gZnJvbSAnLi9zZWdtZW50ZWQtY29udHJvbC9zZWdtZW50ZWQtY29udHJvbC5tb2R1bGUnXG5pbXBvcnQgeyBOZ2dTaGFyZWRNb2R1bGUgfSBmcm9tICcuL3NoYXJlZC9zaGFyZWQubW9kdWxlJ1xuaW1wb3J0IHsgTmdnU2xpZGVyTW9kdWxlIH0gZnJvbSAnLi9zbGlkZXIvc2xpZGVyLm1vZHVsZSdcbmltcG9ydCB7IE5nZ0NlbGxUYWJsZU1vZHVsZSB9IGZyb20gJy4vY2VsbC10YWJsZSdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBOZ2dBY2NvcmRpb25Nb2R1bGUsXG4gICAgTmdnQmFkZ2VNb2R1bGUsXG4gICAgTmdnQnV0dG9uTW9kdWxlLFxuICAgIE5nZ0RhdGVwaWNrZXJNb2R1bGUsXG4gICAgTmdnRHJvcGRvd25Nb2R1bGUsXG4gICAgTmdnTW9kYWxNb2R1bGUsXG4gICAgTmdnUHJvZ3Jlc3NDaXJjbGVNb2R1bGUsXG4gICAgTmdnU2VnbWVudGVkQ29udHJvbE1vZHVsZSxcbiAgICBOZ2dTbGlkZXJNb2R1bGUsXG4gICAgTmdnQ29udGV4dE1lbnVNb2R1bGUsXG4gICAgTmdnSW5QYWdlV2l6YXJkTW9kdWxlLFxuICAgIE5nZ0NlbGxUYWJsZU1vZHVsZSxcbiAgICBOZ2dTaGFyZWRNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ01vZHVsZSB7fVxuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JlZW4tYW5ndWxhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9ncmVlbi1hbmd1bGFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUM5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFBOztBQXNCakQsTUFBTSxPQUFPLFNBQVM7O3NHQUFULFNBQVM7dUdBQVQsU0FBUyxZQWxCVixZQUFZLGFBRXBCLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsY0FBYztRQUNkLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIsZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixxQkFBcUI7dUdBR1osU0FBUyxZQWxCVixZQUFZLEVBRXBCLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsY0FBYztRQUNkLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIsZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixxQkFBcUI7MkZBR1osU0FBUztrQkFwQnJCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFO3dCQUNQLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixjQUFjO3dCQUNkLHVCQUF1Qjt3QkFDdkIseUJBQXlCO3dCQUN6QixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YscUJBQXFCO3FCQUN0QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nZ0FjY29yZGlvbk1vZHVsZSB9IGZyb20gJy4vYWNjb3JkaW9uJ1xuaW1wb3J0IHsgTmdnQmFkZ2VNb2R1bGUgfSBmcm9tICcuL2JhZGdlL2JhZGdlLm1vZHVsZSdcbmltcG9ydCB7IE5nZ0J1dHRvbk1vZHVsZSB9IGZyb20gJy4vYnV0dG9uL2J1dHRvbi5tb2R1bGUnXG5pbXBvcnQgeyBOZ2dDb250ZXh0TWVudU1vZHVsZSB9IGZyb20gJy4vY29udGV4dC1tZW51J1xuaW1wb3J0IHsgTmdnRGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJy4vZGF0ZXBpY2tlci9kYXRlcGlja2VyLm1vZHVsZSdcbmltcG9ydCB7IE5nZ0Ryb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi9kcm9wZG93bi9kcm9wZG93bi5tb2R1bGUnXG5pbXBvcnQgeyBOZ2dJblBhZ2VXaXphcmRNb2R1bGUgfSBmcm9tICcuL2luLXBhZ2Utd2l6YXJkJ1xuaW1wb3J0IHsgTmdnTW9kYWxNb2R1bGUgfSBmcm9tICcuL21vZGFsJ1xuaW1wb3J0IHsgTmdnUHJvZ3Jlc3NDaXJjbGVNb2R1bGUgfSBmcm9tICcuL3Byb2dyZXNzLWNpcmNsZS9wcm9ncmVzcy1jaXJjbGUubW9kdWxlJ1xuaW1wb3J0IHsgTmdnU2VnbWVudGVkQ29udHJvbE1vZHVsZSB9IGZyb20gJy4vc2VnbWVudGVkLWNvbnRyb2wvc2VnbWVudGVkLWNvbnRyb2wubW9kdWxlJ1xuaW1wb3J0IHsgTmdnU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSdcbmltcG9ydCB7IE5nZ1NsaWRlck1vZHVsZSB9IGZyb20gJy4vc2xpZGVyL3NsaWRlci5tb2R1bGUnXG5pbXBvcnQgeyBOZ2dTb3J0YWJsZUxpc3RNb2R1bGUgfSBmcm9tICcuL3NvcnRhYmxlLWxpc3Qvc29ydGFibGUtbGlzdC5tb2R1bGUnXG5pbXBvcnQgeyBOZ2dDZWxsVGFibGVNb2R1bGUgfSBmcm9tICcuL2NlbGwtdGFibGUnXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgTmdnQWNjb3JkaW9uTW9kdWxlLFxuICAgIE5nZ0JhZGdlTW9kdWxlLFxuICAgIE5nZ0J1dHRvbk1vZHVsZSxcbiAgICBOZ2dEYXRlcGlja2VyTW9kdWxlLFxuICAgIE5nZ0Ryb3Bkb3duTW9kdWxlLFxuICAgIE5nZ01vZGFsTW9kdWxlLFxuICAgIE5nZ1Byb2dyZXNzQ2lyY2xlTW9kdWxlLFxuICAgIE5nZ1NlZ21lbnRlZENvbnRyb2xNb2R1bGUsXG4gICAgTmdnU2xpZGVyTW9kdWxlLFxuICAgIE5nZ0NvbnRleHRNZW51TW9kdWxlLFxuICAgIE5nZ0luUGFnZVdpemFyZE1vZHVsZSxcbiAgICBOZ2dDZWxsVGFibGVNb2R1bGUsXG4gICAgTmdnU2hhcmVkTW9kdWxlLFxuICAgIE5nZ1NvcnRhYmxlTGlzdE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmdnTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './sortable-list.component';
2
+ export * from './sortable-list.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zb3J0YWJsZS1saXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUE7QUFDekMsY0FBYyx3QkFBd0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc29ydGFibGUtbGlzdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL3NvcnRhYmxlLWxpc3QubW9kdWxlJ1xuIl19
@@ -0,0 +1,181 @@
1
+ import { Component, ElementRef, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
2
+ import { moveItemInArray, transferArrayItem, } from '@angular/cdk/drag-drop';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/cdk/drag-drop";
6
+ export class NggSortableListComponent {
7
+ constructor() {
8
+ this.groups = [];
9
+ this.shouldDisplayCheckboxes = false;
10
+ this.isReadOnly = false;
11
+ this.isDraggable = true;
12
+ this.description = '';
13
+ this.suffixTemplate = null;
14
+ this.itemSelectionChanged = new EventEmitter();
15
+ this.itemOrderChanged = new EventEmitter();
16
+ this.focusedIndex = { 0: 0 };
17
+ }
18
+ /**
19
+ * Toggles the selection of a checklist item and updates its position in the list.
20
+ *
21
+ * @param item - The checklist item to update.
22
+ */
23
+ toggleSelection(item) {
24
+ item.selected = !item.selected;
25
+ this.emitCheckListItem(item);
26
+ }
27
+ /**
28
+ * Handles the onDragDrop event.
29
+ *
30
+ * @param event - The drag and drop event.
31
+ */
32
+ onDragDrop(event) {
33
+ if (event.previousContainer === event.container) {
34
+ moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
35
+ }
36
+ else {
37
+ transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);
38
+ }
39
+ this.emitItemOrderChanged([Number(event.previousContainer.id), event.previousIndex], [Number(event.container.id), event.currentIndex]);
40
+ }
41
+ /**
42
+ * Handles moving items up or down using the alt + arrow up or alt + arrow down keys.
43
+ *
44
+ * @param groupIndex - The index of the group.
45
+ * @param currentItemIndex - The current index of the item.
46
+ * @param newItemIndex - The new index of the item.
47
+ */
48
+ onAltArrowKeydown(groupIndex, currentItemIndex, newItemIndex, event) {
49
+ event.preventDefault();
50
+ let newIndex = newItemIndex;
51
+ let newGroupIndex = groupIndex;
52
+ let transfer = false;
53
+ if (newIndex > this.groups[groupIndex].items.length - 1) {
54
+ newIndex = 0;
55
+ newGroupIndex = groupIndex + 1;
56
+ transfer = true;
57
+ this.focusedIndex[groupIndex] = this.groups[groupIndex].items.length - 2;
58
+ }
59
+ else if (newIndex < 0) {
60
+ newGroupIndex = groupIndex - 1;
61
+ newIndex = this.groups[newGroupIndex].items.length;
62
+ transfer = true;
63
+ this.focusedIndex[groupIndex] = 0;
64
+ }
65
+ if (transfer) {
66
+ transferArrayItem(this.groups[groupIndex].items, this.groups[newGroupIndex].items, currentItemIndex, newIndex);
67
+ }
68
+ else {
69
+ moveItemInArray(this.groups[groupIndex].items, currentItemIndex, newIndex);
70
+ }
71
+ this.emitItemOrderChanged([groupIndex, currentItemIndex], [newGroupIndex, newIndex]);
72
+ setTimeout(() => {
73
+ this.focusItem(newGroupIndex, newIndex);
74
+ });
75
+ }
76
+ /**
77
+ * Handles focus by arrow keydown event.
78
+ *
79
+ * @param groupIndex - The index of the group.
80
+ * @param itemIndex - The index of the item.
81
+ * @param event - The keyboard event.
82
+ */
83
+ onArrowKeydown(groupIndex, itemIndex, event) {
84
+ event.preventDefault();
85
+ setTimeout(() => {
86
+ let gi = groupIndex;
87
+ if (itemIndex > this.groups[groupIndex].items.length - 1) {
88
+ gi = groupIndex + 1;
89
+ itemIndex = 0;
90
+ }
91
+ if (itemIndex < 0) {
92
+ gi = groupIndex - 1;
93
+ if (gi < 0) {
94
+ return;
95
+ }
96
+ itemIndex = this.groups[gi].items.length - 1;
97
+ }
98
+ this.focusItem(gi, itemIndex);
99
+ });
100
+ }
101
+ /**
102
+ * Emits the item order changed event.
103
+ *
104
+ * @param previousIndex - The previous index of the item.
105
+ * @param currentIndex - The current index of the item.
106
+ */
107
+ emitItemOrderChanged(previousIndex, currentIndex) {
108
+ this.itemOrderChanged.emit({
109
+ previousIndex,
110
+ currentIndex,
111
+ groups: [...this.groups],
112
+ });
113
+ }
114
+ /**
115
+ * Emits the selected checklist item through an event.
116
+ *
117
+ * @param item - The checklist item to emit.
118
+ */
119
+ emitCheckListItem(item) {
120
+ this.itemSelectionChanged.emit({ changedItem: item, groups: this.groups });
121
+ }
122
+ /**
123
+ * Focuses on a specific item in the sortable list.
124
+ *
125
+ * @param groupIndex - The index of the group.
126
+ * @param itemIndex - The index of the item.
127
+ */
128
+ focusItem(groupIndex, itemIndex) {
129
+ const groupElements = this.sortableListGroups.nativeElement.querySelectorAll('.item-list-group');
130
+ if (groupElements && groupElements.length > groupIndex) {
131
+ const itemElements = groupElements[groupIndex].querySelectorAll('.item');
132
+ if (itemElements && itemElements.length > itemIndex) {
133
+ if (this.shouldDisplayCheckboxes) {
134
+ itemElements[itemIndex].querySelector('input').focus();
135
+ }
136
+ else {
137
+ itemElements[itemIndex].focus();
138
+ }
139
+ this.focusedIndex[groupIndex] = itemIndex;
140
+ }
141
+ }
142
+ }
143
+ /**
144
+ * Checks if an item has focus.
145
+ *
146
+ * @param groupIndex - The index of the group.
147
+ * @param itemIndex - The index of the item.
148
+ */
149
+ itemHasFocus(groupIndex, itemIndex) {
150
+ if (!this.focusedIndex[groupIndex]) {
151
+ this.focusedIndex[groupIndex] = 0;
152
+ }
153
+ return this.focusedIndex[groupIndex] === itemIndex;
154
+ }
155
+ }
156
+ NggSortableListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
157
+ NggSortableListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NggSortableListComponent, selector: "ngg-sortable-list", inputs: { groups: "groups", shouldDisplayCheckboxes: "shouldDisplayCheckboxes", isReadOnly: "isReadOnly", isDraggable: "isDraggable", description: "description", suffixTemplate: "suffixTemplate" }, outputs: { itemSelectionChanged: "itemSelectionChanged", itemOrderChanged: "itemOrderChanged" }, viewQueries: [{ propertyName: "sortableListGroups", first: true, predicate: ["sortableListGroups"], descendants: true }], ngImport: i0, template: "<div class=\"item-list\">\n <ng-container>\n <p class=\"item-list-header\">\n <span class=\"item-list-header-title\">{{ description }}</span>\n </p>\n <div #sortableListGroups cdkDropListGroup>\n <div\n *ngFor=\"let group of groups; let g_i = index\"\n class=\"item-list-group\"\n [class.drag-enabled]=\"isDraggable && !isReadOnly\"\n role=\"list\"\n cdkDropList\n [cdkDropListData]=\"group.items\"\n [id]=\"g_i.toString()\"\n (cdkDropListDropped)=\"onDragDrop($event)\"\n >\n <p\n *ngIf=\"group.title && group.title.length > 0\"\n class=\"item-list-header\"\n >\n <span class=\"item-list-header-title\">{{ group.title }}</span>\n </p>\n <p\n *ngIf=\"group.description && group.description.length > 0\"\n class=\"item-list-header-description\"\n >\n {{ group.description }}\n </p>\n <div\n *ngFor=\"let checklistItem of group.items; let i = index\"\n [cdkDragDisabled]=\"!isDraggable || isReadOnly\"\n [cdkDragData]=\"checklistItem\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n class=\"item-box\"\n role=\"listitem\"\n >\n <div *cdkDragPlaceholder class=\"item-custom-placeholder\"></div>\n <label\n (keydown.alt.arrowDown)=\"onAltArrowKeydown(g_i, i, i + 1, $event)\"\n (keydown.alt.arrowUp)=\"onAltArrowKeydown(g_i, i, i - 1, $event)\"\n (keydown.arrowDown)=\"onArrowKeydown(g_i, i + 1, $event)\"\n (keydown.arrowUp)=\"onArrowKeydown(g_i, i - 1, $event)\"\n class=\"form-control item-control align-items-center item\"\n [tabindex]=\"shouldDisplayCheckboxes ? '-1' : '0'\"\n >\n <div class=\"form-control\">\n <input\n (change)=\"toggleSelection(checklistItem)\"\n [checked]=\"checklistItem.selected\"\n [disabled]=\"isReadOnly\"\n [type]=\"shouldDisplayCheckboxes ? 'checkbox' : 'hidden'\"\n />\n <div class=\"item-box-title\">\n <span name=\"agendaItemName\"\n >{{ checklistItem.name }}\n <span\n *ngIf=\"checklistItem.hasCustomSuffix\"\n class=\"item-list-suffix\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n suffixTemplate;\n context: { $implicit: checklistItem }\n \"\n class=\"user-icon\"\n >\n </ng-container>\n </span>\n </span>\n <br />\n <span *ngIf=\"!!checklistItem.description\">\n <span class=\"item-list-suffix\" name=\"agendaItemToolTip\">\n {{ checklistItem.description }}\n </span>\n <br />\n </span>\n </div>\n <i></i>\n </div>\n <div *ngIf=\"isDraggable && !isReadOnly\" class=\"item-grip-icon\">\n <i class=\"sg-icon sg-icon-grip-vertical text-primary\"></i>\n </div>\n </label>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n", styles: [".item-list{width:100%;display:block}label.item{padding:0!important}.item-box{background-color:var(--sg-card-background);color:var(--text-primary-color);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;font-size:14px;margin:5px 0;border:1px solid var(--border-color);border-radius:4px}.form-control{line-height:20px;font-size:16px;font-weight:500}.item-list-header{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:1rem}.item-list-header-title{font-weight:600;font-size:1rem;line-height:1.25rem;font-style:normal}.item-list-header-subtitle{font-size:.75rem;color:var(--text-primary-color);display:flex;justify-content:center;align-content:center}.item-list-suffix{font-weight:400;font-size:.85rem}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.item-grip-icon{font-weight:400;padding:.75rem 1rem .75rem 0rem}.cdk-drop-list.cdk-drop-list-dragging{cursor:grabbing!important;pointer-events:all!important}.item-custom-placeholder.cdk-drag-placeholder{pointer-events:all!important}.cdk-drop-list.drag-enabled:not(.cdk-drag-placeholder) label{cursor:grab}.cdk-drop-list label:focus-visible{outline-color:#333;outline-offset:4px}.item-list.cdk-drop-list-dragging .item-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);pointer-events:all!important}.item-custom-placeholder{border:dotted 1px #999;min-height:44px;transition:transform .25s cubic-bezier(0,0,.2,1);border-radius:4px;margin:5px 0;padding:12px 12px 12px 16px}.user-icon{margin-right:.5rem}.item-control{width:100%;display:flex;flex-direction:row;justify-content:space-between}.form-control.item-layout{display:flex;justify-content:space-between}\n"], dependencies: [{ 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: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }] });
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListComponent, decorators: [{
159
+ type: Component,
160
+ args: [{ selector: 'ngg-sortable-list', template: "<div class=\"item-list\">\n <ng-container>\n <p class=\"item-list-header\">\n <span class=\"item-list-header-title\">{{ description }}</span>\n </p>\n <div #sortableListGroups cdkDropListGroup>\n <div\n *ngFor=\"let group of groups; let g_i = index\"\n class=\"item-list-group\"\n [class.drag-enabled]=\"isDraggable && !isReadOnly\"\n role=\"list\"\n cdkDropList\n [cdkDropListData]=\"group.items\"\n [id]=\"g_i.toString()\"\n (cdkDropListDropped)=\"onDragDrop($event)\"\n >\n <p\n *ngIf=\"group.title && group.title.length > 0\"\n class=\"item-list-header\"\n >\n <span class=\"item-list-header-title\">{{ group.title }}</span>\n </p>\n <p\n *ngIf=\"group.description && group.description.length > 0\"\n class=\"item-list-header-description\"\n >\n {{ group.description }}\n </p>\n <div\n *ngFor=\"let checklistItem of group.items; let i = index\"\n [cdkDragDisabled]=\"!isDraggable || isReadOnly\"\n [cdkDragData]=\"checklistItem\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n class=\"item-box\"\n role=\"listitem\"\n >\n <div *cdkDragPlaceholder class=\"item-custom-placeholder\"></div>\n <label\n (keydown.alt.arrowDown)=\"onAltArrowKeydown(g_i, i, i + 1, $event)\"\n (keydown.alt.arrowUp)=\"onAltArrowKeydown(g_i, i, i - 1, $event)\"\n (keydown.arrowDown)=\"onArrowKeydown(g_i, i + 1, $event)\"\n (keydown.arrowUp)=\"onArrowKeydown(g_i, i - 1, $event)\"\n class=\"form-control item-control align-items-center item\"\n [tabindex]=\"shouldDisplayCheckboxes ? '-1' : '0'\"\n >\n <div class=\"form-control\">\n <input\n (change)=\"toggleSelection(checklistItem)\"\n [checked]=\"checklistItem.selected\"\n [disabled]=\"isReadOnly\"\n [type]=\"shouldDisplayCheckboxes ? 'checkbox' : 'hidden'\"\n />\n <div class=\"item-box-title\">\n <span name=\"agendaItemName\"\n >{{ checklistItem.name }}\n <span\n *ngIf=\"checklistItem.hasCustomSuffix\"\n class=\"item-list-suffix\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n suffixTemplate;\n context: { $implicit: checklistItem }\n \"\n class=\"user-icon\"\n >\n </ng-container>\n </span>\n </span>\n <br />\n <span *ngIf=\"!!checklistItem.description\">\n <span class=\"item-list-suffix\" name=\"agendaItemToolTip\">\n {{ checklistItem.description }}\n </span>\n <br />\n </span>\n </div>\n <i></i>\n </div>\n <div *ngIf=\"isDraggable && !isReadOnly\" class=\"item-grip-icon\">\n <i class=\"sg-icon sg-icon-grip-vertical text-primary\"></i>\n </div>\n </label>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n", styles: [".item-list{width:100%;display:block}label.item{padding:0!important}.item-box{background-color:var(--sg-card-background);color:var(--text-primary-color);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;font-size:14px;margin:5px 0;border:1px solid var(--border-color);border-radius:4px}.form-control{line-height:20px;font-size:16px;font-weight:500}.item-list-header{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:1rem}.item-list-header-title{font-weight:600;font-size:1rem;line-height:1.25rem;font-style:normal}.item-list-header-subtitle{font-size:.75rem;color:var(--text-primary-color);display:flex;justify-content:center;align-content:center}.item-list-suffix{font-weight:400;font-size:.85rem}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.item-grip-icon{font-weight:400;padding:.75rem 1rem .75rem 0rem}.cdk-drop-list.cdk-drop-list-dragging{cursor:grabbing!important;pointer-events:all!important}.item-custom-placeholder.cdk-drag-placeholder{pointer-events:all!important}.cdk-drop-list.drag-enabled:not(.cdk-drag-placeholder) label{cursor:grab}.cdk-drop-list label:focus-visible{outline-color:#333;outline-offset:4px}.item-list.cdk-drop-list-dragging .item-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);pointer-events:all!important}.item-custom-placeholder{border:dotted 1px #999;min-height:44px;transition:transform .25s cubic-bezier(0,0,.2,1);border-radius:4px;margin:5px 0;padding:12px 12px 12px 16px}.user-icon{margin-right:.5rem}.item-control{width:100%;display:flex;flex-direction:row;justify-content:space-between}.form-control.item-layout{display:flex;justify-content:space-between}\n"] }]
161
+ }], propDecorators: { groups: [{
162
+ type: Input
163
+ }], shouldDisplayCheckboxes: [{
164
+ type: Input
165
+ }], isReadOnly: [{
166
+ type: Input
167
+ }], isDraggable: [{
168
+ type: Input
169
+ }], description: [{
170
+ type: Input
171
+ }], suffixTemplate: [{
172
+ type: Input
173
+ }], itemSelectionChanged: [{
174
+ type: Output
175
+ }], itemOrderChanged: [{
176
+ type: Output
177
+ }], sortableListGroups: [{
178
+ type: ViewChild,
179
+ args: ['sortableListGroups']
180
+ }] } });
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGFibGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zb3J0YWJsZS1saXN0L3NvcnRhYmxlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvc29ydGFibGUtbGlzdC9zb3J0YWJsZS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBRUwsZUFBZSxFQUNmLGlCQUFpQixHQUNsQixNQUFNLHdCQUF3QixDQUFBOzs7O0FBcUIvQixNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBTVcsV0FBTSxHQUF3QixFQUFFLENBQUE7UUFDaEMsNEJBQXVCLEdBQUcsS0FBSyxDQUFBO1FBQy9CLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFDbEIsZ0JBQVcsR0FBRyxJQUFJLENBQUE7UUFDbEIsZ0JBQVcsR0FBRyxFQUFFLENBQUE7UUFDaEIsbUJBQWMsR0FBNEIsSUFBSSxDQUFBO1FBRTdDLHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUc3QyxDQUFBO1FBQ00scUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBSXpDLENBQUE7UUFJSixpQkFBWSxHQUEyQixFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQTtLQXFMaEQ7SUFuTEM7Ozs7T0FJRztJQUNILGVBQWUsQ0FBQyxJQUFzQjtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQTtRQUM5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFV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QUFnQjtzQkFBekIsTUFBTTtnQkFNMEIsa0JBQWtCO3NCQUFsRCxTQUFTO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgQ2RrRHJhZ0Ryb3AsXG4gIG1vdmVJdGVtSW5BcnJheSxcbiAgdHJhbnNmZXJBcnJheUl0ZW0sXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnXG5cbmV4cG9ydCBpbnRlcmZhY2UgU29ydGFibGVMaXN0SXRlbSB7XG4gIGlkOiBhbnlcbiAgbmFtZTogc3RyaW5nXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4gIHNlbGVjdGVkPzogYm9vbGVhblxuICBoYXNDdXN0b21TdWZmaXg/OiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29ydGFibGVMaXN0R3JvdXAge1xuICBpdGVtczogU29ydGFibGVMaXN0SXRlbVtdXG4gIHRpdGxlOiBzdHJpbmdcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdnLXNvcnRhYmxlLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vc29ydGFibGUtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NvcnRhYmxlLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTmdnU29ydGFibGVMaXN0Q29tcG9uZW50IHtcbiAgQElucHV0KCkgZ3JvdXBzOiBTb3J0YWJsZUxpc3RHcm91cFtdID0gW11cbiAgQElucHV0KCkgc2hvdWxkRGlzcGxheUNoZWNrYm94ZXMgPSBmYWxzZVxuICBASW5wdXQoKSBpc1JlYWRPbmx5ID0gZmFsc2VcbiAgQElucHV0KCkgaXNEcmFnZ2FibGUgPSB0cnVlXG4gIEBJbnB1dCgpIGRlc2NyaXB0aW9uID0gJydcbiAgQElucHV0KCkgc3VmZml4VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbFxuXG4gIEBPdXRwdXQoKSBpdGVtU2VsZWN0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIGNoYW5nZWRJdGVtOiBTb3J0YWJsZUxpc3RJdGVtXG4gICAgZ3JvdXBzOiBTb3J0YWJsZUxpc3RHcm91cFtdXG4gIH0+KClcbiAgQE91dHB1dCgpIGl0ZW1PcmRlckNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHtcbiAgICBwcmV2aW91c0luZGV4OiBbbnVtYmVyLCBudW1iZXJdXG4gICAgY3VycmVudEluZGV4OiBbbnVtYmVyLCBudW1iZXJdXG4gICAgZ3JvdXBzOiBTb3J0YWJsZUxpc3RHcm91cFtdXG4gIH0+KClcblxuICBAVmlld0NoaWxkKCdzb3J0YWJsZUxpc3RHcm91cHMnKSBzb3J0YWJsZUxpc3RHcm91cHMhOiBFbGVtZW50UmVmXG5cbiAgZm9jdXNlZEluZGV4OiBSZWNvcmQ8bnVtYmVyLCBudW1iZXI+ID0geyAwOiAwIH1cblxuICAvKipcbiAgICogVG9nZ2xlcyB0aGUgc2VsZWN0aW9uIG9mIGEgY2hlY2tsaXN0IGl0ZW0gYW5kIHVwZGF0ZXMgaXRzIHBvc2l0aW9uIGluIHRoZSBsaXN0LlxuICAgKlxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBjaGVja2xpc3QgaXRlbSB0byB1cGRhdGUuXG4gICAqL1xuICB0b2dnbGVTZWxlY3Rpb24oaXRlbTogU29ydGFibGVMaXN0SXRlbSkge1xuICAgIGl0ZW0uc2VsZWN0ZWQgPSAhaXRlbS5zZWxlY3RlZFxuICAgIHRoaXMuZW1pdENoZWNrTGlzdEl0ZW0oaXRlbSlcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHRoZSBvbkRyYWdEcm9wIGV2ZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnQgLSBUaGUgZHJhZyBhbmQgZHJvcCBldmVudC5cbiAgICovXG4gIG9uRHJhZ0Ryb3AoZXZlbnQ6IENka0RyYWdEcm9wPFNvcnRhYmxlTGlzdEl0ZW1bXT4pIHtcbiAgICBpZiAoZXZlbnQucHJldmlvdXNDb250YWluZXIgPT09IGV2ZW50LmNvbnRhaW5lcikge1xuICAgICAgbW92ZUl0ZW1JbkFycmF5KFxuICAgICAgICBldmVudC5jb250YWluZXIuZGF0YSxcbiAgICAgICAgZXZlbnQucHJldmlvdXNJbmRleCxcbiAgICAgICAgZXZlbnQuY3VycmVudEluZGV4XG4gICAgICApXG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zZmVyQXJyYXlJdGVtKFxuICAgICAgICBldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhLFxuICAgICAgICBldmVudC5jb250YWluZXIuZGF0YSxcbiAgICAgICAgZXZlbnQucHJldmlvdXNJbmRleCxcbiAgICAgICAgZXZlbnQuY3VycmVudEluZGV4XG4gICAgICApXG4gICAgfVxuXG4gICAgdGhpcy5lbWl0SXRlbU9yZGVyQ2hhbmdlZChcbiAgICAgIFtOdW1iZXIoZXZlbnQucHJldmlvdXNDb250YWluZXIuaWQpLCBldmVudC5wcmV2aW91c0luZGV4XSxcbiAgICAgIFtOdW1iZXIoZXZlbnQuY29udGFpbmVyLmlkKSwgZXZlbnQuY3VycmVudEluZGV4XVxuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIG1vdmluZyBpdGVtcyB1cCBvciBkb3duIHVzaW5nIHRoZSBhbHQgKyBhcnJvdyB1cCBvciBhbHQgKyBhcnJvdyBkb3duIGtleXMuXG4gICAqXG4gICAqIEBwYXJhbSBncm91cEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBncm91cC5cbiAgICogQHBhcmFtIGN1cnJlbnRJdGVtSW5kZXggLSBUaGUgY3VycmVudCBpbmRleCBvZiB0aGUgaXRlbS5cbiAgICogQHBhcmFtIG5ld0l0ZW1JbmRleCAtIFRoZSBuZXcgaW5kZXggb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBvbkFsdEFycm93S2V5ZG93bihcbiAgICBncm91cEluZGV4OiBudW1iZXIsXG4gICAgY3VycmVudEl0ZW1JbmRleDogbnVtYmVyLFxuICAgIG5ld0l0ZW1JbmRleDogbnVtYmVyLFxuICAgIGV2ZW50OiBhbnlcbiAgKSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuXG4gICAgbGV0IG5ld0luZGV4ID0gbmV3SXRlbUluZGV4XG4gICAgbGV0IG5ld0dyb3VwSW5kZXggPSBncm91cEluZGV4XG4gICAgbGV0IHRyYW5zZmVyID0gZmFsc2VcblxuICAgIGlmIChuZXdJbmRleCA+IHRoaXMuZ3JvdXBzW2dyb3VwSW5kZXhdLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgICAgIG5ld0luZGV4ID0gMFxuICAgICAgbmV3R3JvdXBJbmRleCA9IGdyb3VwSW5kZXggKyAxXG4gICAgICB0cmFuc2ZlciA9IHRydWVcbiAgICAgIHRoaXMuZm9jdXNlZEluZGV4W2dyb3VwSW5kZXhdID0gdGhpcy5ncm91cHNbZ3JvdXBJbmRleF0uaXRlbXMubGVuZ3RoIC0gMlxuICAgIH0gZWxzZSBpZiAobmV3SW5kZXggPCAwKSB7XG4gICAgICBuZXdHcm91cEluZGV4ID0gZ3JvdXBJbmRleCAtIDFcbiAgICAgIG5ld0luZGV4ID0gdGhpcy5ncm91cHNbbmV3R3JvdXBJbmRleF0uaXRlbXMubGVuZ3RoXG4gICAgICB0cmFuc2ZlciA9IHRydWVcbiAgICAgIHRoaXMuZm9jdXNlZEluZGV4W2dyb3VwSW5kZXhdID0gMFxuICAgIH1cblxuICAgIGlmICh0cmFuc2Zlcikge1xuICAgICAgdHJhbnNmZXJBcnJheUl0ZW0oXG4gICAgICAgIHRoaXMuZ3JvdXBzW2dyb3VwSW5kZXhdLml0ZW1zLFxuICAgICAgICB0aGlzLmdyb3Vwc1tuZXdHcm91cEluZGV4XS5pdGVtcyxcbiAgICAgICAgY3VycmVudEl0ZW1JbmRleCxcbiAgICAgICAgbmV3SW5kZXhcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuZ3JvdXBzW2dyb3VwSW5kZXhdLml0ZW1zLCBjdXJyZW50SXRlbUluZGV4LCBuZXdJbmRleClcbiAgICB9XG5cbiAgICB0aGlzLmVtaXRJdGVtT3JkZXJDaGFuZ2VkKFxuICAgICAgW2dyb3VwSW5kZXgsIGN1cnJlbnRJdGVtSW5kZXhdLFxuICAgICAgW25ld0dyb3VwSW5kZXgsIG5ld0luZGV4XVxuICAgIClcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5mb2N1c0l0ZW0obmV3R3JvdXBJbmRleCwgbmV3SW5kZXgpXG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGZvY3VzIGJ5IGFycm93IGtleWRvd24gZXZlbnQuXG4gICAqXG4gICAqIEBwYXJhbSBncm91cEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBncm91cC5cbiAgICogQHBhcmFtIGl0ZW1JbmRleCAtIFRoZSBpbmRleCBvZiB0aGUgaXRlbS5cbiAgICogQHBhcmFtIGV2ZW50IC0gVGhlIGtleWJvYXJkIGV2ZW50LlxuICAgKi9cbiAgb25BcnJvd0tleWRvd24oZ3JvdXBJbmRleDogbnVtYmVyLCBpdGVtSW5kZXg6IG51bWJlciwgZXZlbnQ6IEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgbGV0IGdpID0gZ3JvdXBJbmRleFxuXG4gICAgICBpZiAoaXRlbUluZGV4ID4gdGhpcy5ncm91cHNbZ3JvdXBJbmRleF0uaXRlbXMubGVuZ3RoIC0gMSkge1xuICAgICAgICBnaSA9IGdyb3VwSW5kZXggKyAxXG4gICAgICAgIGl0ZW1JbmRleCA9IDBcbiAgICAgIH1cblxuICAgICAgaWYgKGl0ZW1JbmRleCA8IDApIHtcbiAgICAgICAgZ2kgPSBncm91cEluZGV4IC0gMVxuICAgICAgICBpZiAoZ2kgPCAwKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgaXRlbUluZGV4ID0gdGhpcy5ncm91cHNbZ2ldLml0ZW1zLmxlbmd0aCAtIDFcbiAgICAgIH1cblxuICAgICAgdGhpcy5mb2N1c0l0ZW0oZ2ksIGl0ZW1JbmRleClcbiAgICB9KVxuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBpdGVtIG9yZGVyIGNoYW5nZWQgZXZlbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwcmV2aW91c0luZGV4IC0gVGhlIHByZXZpb3VzIGluZGV4IG9mIHRoZSBpdGVtLlxuICAgKiBAcGFyYW0gY3VycmVudEluZGV4IC0gVGhlIGN1cnJlbnQgaW5kZXggb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBwcml2YXRlIGVtaXRJdGVtT3JkZXJDaGFuZ2VkKFxuICAgIHByZXZpb3VzSW5kZXg6IFtudW1iZXIsIG51bWJlcl0sXG4gICAgY3VycmVudEluZGV4OiBbbnVtYmVyLCBudW1iZXJdXG4gICkge1xuICAgIHRoaXMuaXRlbU9yZGVyQ2hhbmdlZC5lbWl0KHtcbiAgICAgIHByZXZpb3VzSW5kZXgsXG4gICAgICBjdXJyZW50SW5kZXgsXG4gICAgICBncm91cHM6IFsuLi50aGlzLmdyb3Vwc10sXG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgc2VsZWN0ZWQgY2hlY2tsaXN0IGl0ZW0gdGhyb3VnaCBhbiBldmVudC5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW0gLSBUaGUgY2hlY2tsaXN0IGl0ZW0gdG8gZW1pdC5cbiAgICovXG4gIHByaXZhdGUgZW1pdENoZWNrTGlzdEl0ZW0oaXRlbTogU29ydGFibGVMaXN0SXRlbSkge1xuICAgIHRoaXMuaXRlbVNlbGVjdGlvbkNoYW5nZWQuZW1pdCh7IGNoYW5nZWRJdGVtOiBpdGVtLCBncm91cHM6IHRoaXMuZ3JvdXBzIH0pXG4gIH1cblxuICAvKipcbiAgICogRm9jdXNlcyBvbiBhIHNwZWNpZmljIGl0ZW0gaW4gdGhlIHNvcnRhYmxlIGxpc3QuXG4gICAqXG4gICAqIEBwYXJhbSBncm91cEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBncm91cC5cbiAgICogQHBhcmFtIGl0ZW1JbmRleCAtIFRoZSBpbmRleCBvZiB0aGUgaXRlbS5cbiAgICovXG4gIHByaXZhdGUgZm9jdXNJdGVtKGdyb3VwSW5kZXg6IG51bWJlciwgaXRlbUluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCBncm91cEVsZW1lbnRzID1cbiAgICAgIHRoaXMuc29ydGFibGVMaXN0R3JvdXBzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLml0ZW0tbGlzdC1ncm91cCcpXG5cbiAgICBpZiAoZ3JvdXBFbGVtZW50cyAmJiBncm91cEVsZW1lbnRzLmxlbmd0aCA+IGdyb3VwSW5kZXgpIHtcbiAgICAgIGNvbnN0IGl0ZW1FbGVtZW50cyA9IGdyb3VwRWxlbWVudHNbZ3JvdXBJbmRleF0ucXVlcnlTZWxlY3RvckFsbCgnLml0ZW0nKVxuICAgICAgaWYgKGl0ZW1FbGVtZW50cyAmJiBpdGVtRWxlbWVudHMubGVuZ3RoID4gaXRlbUluZGV4KSB7XG4gICAgICAgIGlmICh0aGlzLnNob3VsZERpc3BsYXlDaGVja2JveGVzKSB7XG4gICAgICAgICAgaXRlbUVsZW1lbnRzW2l0ZW1JbmRleF0ucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXRlbUVsZW1lbnRzW2l0ZW1JbmRleF0uZm9jdXMoKVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZm9jdXNlZEluZGV4W2dyb3VwSW5kZXhdID0gaXRlbUluZGV4XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBhbiBpdGVtIGhhcyBmb2N1cy5cbiAgICpcbiAgICogQHBhcmFtIGdyb3VwSW5kZXggLSBUaGUgaW5kZXggb2YgdGhlIGdyb3VwLlxuICAgKiBAcGFyYW0gaXRlbUluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBpdGVtLlxuICAgKi9cbiAgaXRlbUhhc0ZvY3VzKGdyb3VwSW5kZXg6IG51bWJlciwgaXRlbUluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAoIXRoaXMuZm9jdXNlZEluZGV4W2dyb3VwSW5kZXhdKSB7XG4gICAgICB0aGlzLmZvY3VzZWRJbmRleFtncm91cEluZGV4XSA9IDBcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZm9jdXNlZEluZGV4W2dyb3VwSW5kZXhdID09PSBpdGVtSW5kZXhcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIml0ZW0tbGlzdFwiPlxuICA8bmctY29udGFpbmVyPlxuICAgIDxwIGNsYXNzPVwiaXRlbS1saXN0LWhlYWRlclwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLWxpc3QtaGVhZGVyLXRpdGxlXCI+e3sgZGVzY3JpcHRpb24gfX08L3NwYW4+XG4gICAgPC9wPlxuICAgIDxkaXYgI3NvcnRhYmxlTGlzdEdyb3VwcyBjZGtEcm9wTGlzdEdyb3VwPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgZ3JvdXBzOyBsZXQgZ19pID0gaW5kZXhcIlxuICAgICAgICBjbGFzcz1cIml0ZW0tbGlzdC1ncm91cFwiXG4gICAgICAgIFtjbGFzcy5kcmFnLWVuYWJsZWRdPVwiaXNEcmFnZ2FibGUgJiYgIWlzUmVhZE9ubHlcIlxuICAgICAgICByb2xlPVwibGlzdFwiXG4gICAgICAgIGNka0Ryb3BMaXN0XG4gICAgICAgIFtjZGtEcm9wTGlzdERhdGFdPVwiZ3JvdXAuaXRlbXNcIlxuICAgICAgICBbaWRdPVwiZ19pLnRvU3RyaW5nKClcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uRHJhZ0Ryb3AoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxwXG4gICAgICAgICAgKm5nSWY9XCJncm91cC50aXRsZSAmJiBncm91cC50aXRsZS5sZW5ndGggPiAwXCJcbiAgICAgICAgICBjbGFzcz1cIml0ZW0tbGlzdC1oZWFkZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLWxpc3QtaGVhZGVyLXRpdGxlXCI+e3sgZ3JvdXAudGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDwvcD5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cImdyb3VwLmRlc2NyaXB0aW9uICYmIGdyb3VwLmRlc2NyaXB0aW9uLmxlbmd0aCA+IDBcIlxuICAgICAgICAgIGNsYXNzPVwiaXRlbS1saXN0LWhlYWRlci1kZXNjcmlwdGlvblwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBncm91cC5kZXNjcmlwdGlvbiB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgY2hlY2tsaXN0SXRlbSBvZiBncm91cC5pdGVtczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCIhaXNEcmFnZ2FibGUgfHwgaXNSZWFkT25seVwiXG4gICAgICAgICAgW2Nka0RyYWdEYXRhXT1cImNoZWNrbGlzdEl0ZW1cIlxuICAgICAgICAgIGNka0RyYWdcbiAgICAgICAgICBjZGtEcmFnTG9ja0F4aXM9XCJ5XCJcbiAgICAgICAgICBjbGFzcz1cIml0ZW0tYm94XCJcbiAgICAgICAgICByb2xlPVwibGlzdGl0ZW1cIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiAqY2RrRHJhZ1BsYWNlaG9sZGVyIGNsYXNzPVwiaXRlbS1jdXN0b20tcGxhY2Vob2xkZXJcIj48L2Rpdj5cbiAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIChrZXlkb3duLmFsdC5hcnJvd0Rvd24pPVwib25BbHRBcnJvd0tleWRvd24oZ19pLCBpLCBpICsgMSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAoa2V5ZG93bi5hbHQuYXJyb3dVcCk9XCJvbkFsdEFycm93S2V5ZG93bihnX2ksIGksIGkgLSAxLCAkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXlkb3duLmFycm93RG93bik9XCJvbkFycm93S2V5ZG93bihnX2ksIGkgKyAxLCAkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXlkb3duLmFycm93VXApPVwib25BcnJvd0tleWRvd24oZ19pLCBpIC0gMSwgJGV2ZW50KVwiXG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBpdGVtLWNvbnRyb2wgYWxpZ24taXRlbXMtY2VudGVyIGl0ZW1cIlxuICAgICAgICAgICAgW3RhYmluZGV4XT1cInNob3VsZERpc3BsYXlDaGVja2JveGVzID8gJy0xJyA6ICcwJ1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbFwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInRvZ2dsZVNlbGVjdGlvbihjaGVja2xpc3RJdGVtKVwiXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiY2hlY2tsaXN0SXRlbS5zZWxlY3RlZFwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzUmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgIFt0eXBlXT1cInNob3VsZERpc3BsYXlDaGVja2JveGVzID8gJ2NoZWNrYm94JyA6ICdoaWRkZW4nXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0tYm94LXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gbmFtZT1cImFnZW5kYUl0ZW1OYW1lXCJcbiAgICAgICAgICAgICAgICAgID57eyBjaGVja2xpc3RJdGVtLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2hlY2tsaXN0SXRlbS5oYXNDdXN0b21TdWZmaXhcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIml0ZW0tbGlzdC1zdWZmaXhcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1ZmZpeFRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IGNoZWNrbGlzdEl0ZW0gfVxuICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1c2VyLWljb25cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiEhY2hlY2tsaXN0SXRlbS5kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLWxpc3Qtc3VmZml4XCIgbmFtZT1cImFnZW5kYUl0ZW1Ub29sVGlwXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGNoZWNrbGlzdEl0ZW0uZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxpPjwvaT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlzRHJhZ2dhYmxlICYmICFpc1JlYWRPbmx5XCIgY2xhc3M9XCJpdGVtLWdyaXAtaWNvblwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cInNnLWljb24gc2ctaWNvbi1ncmlwLXZlcnRpY2FsIHRleHQtcHJpbWFyeVwiPjwvaT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { NggSortableListComponent } from './sortable-list.component';
5
+ import { DragDropModule } from '@angular/cdk/drag-drop';
6
+ import * as i0 from "@angular/core";
7
+ export class NggSortableListModule {
8
+ }
9
+ NggSortableListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ NggSortableListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, declarations: [NggSortableListComponent], imports: [CommonModule, FormsModule, DragDropModule], exports: [NggSortableListComponent] });
11
+ NggSortableListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, imports: [CommonModule, FormsModule, DragDropModule] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ imports: [CommonModule, FormsModule, DragDropModule],
16
+ exports: [NggSortableListComponent],
17
+ declarations: [NggSortableListComponent],
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGFibGUtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zb3J0YWJsZS1saXN0L3NvcnRhYmxlLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7O0FBT3ZELE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7bUhBQXJCLHFCQUFxQixpQkFGakIsd0JBQXdCLGFBRjdCLFlBQVksRUFBRSxXQUFXLEVBQUUsY0FBYyxhQUN6Qyx3QkFBd0I7bUhBR3ZCLHFCQUFxQixZQUp0QixZQUFZLEVBQUUsV0FBVyxFQUFFLGNBQWM7MkZBSXhDLHFCQUFxQjtrQkFMakMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGNBQWMsQ0FBQztvQkFDcEQsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ25DLFlBQVksRUFBRSxDQUFDLHdCQUF3QixDQUFDO2lCQUN6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBOZ2dTb3J0YWJsZUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3NvcnRhYmxlLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJ1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgRHJhZ0Ryb3BNb2R1bGVdLFxuICBleHBvcnRzOiBbTmdnU29ydGFibGVMaXN0Q29tcG9uZW50XSxcbiAgZGVjbGFyYXRpb25zOiBbTmdnU29ydGFibGVMaXN0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTmdnU29ydGFibGVMaXN0TW9kdWxlIHt9XG4iXX0=
@@ -15,6 +15,8 @@ import * as i1$2 from '@angular/router';
15
15
  import { RouterModule } from '@angular/router';
16
16
  import { Subject, fromEvent, interval } from 'rxjs';
17
17
  import { takeUntil, throttle } from 'rxjs/operators';
18
+ import * as i2$1 from '@angular/cdk/drag-drop';
19
+ import { moveItemInArray, transferArrayItem, DragDropModule } from '@angular/cdk/drag-drop';
18
20
  import * as i1$3 from '@angular/platform-browser';
19
21
 
20
22
  class NggAccordionListItemComponent {
@@ -1449,6 +1451,196 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
1449
1451
  }]
1450
1452
  }] });
1451
1453
 
1454
+ class NggSortableListComponent {
1455
+ constructor() {
1456
+ this.groups = [];
1457
+ this.shouldDisplayCheckboxes = false;
1458
+ this.isReadOnly = false;
1459
+ this.isDraggable = true;
1460
+ this.description = '';
1461
+ this.suffixTemplate = null;
1462
+ this.itemSelectionChanged = new EventEmitter();
1463
+ this.itemOrderChanged = new EventEmitter();
1464
+ this.focusedIndex = { 0: 0 };
1465
+ }
1466
+ /**
1467
+ * Toggles the selection of a checklist item and updates its position in the list.
1468
+ *
1469
+ * @param item - The checklist item to update.
1470
+ */
1471
+ toggleSelection(item) {
1472
+ item.selected = !item.selected;
1473
+ this.emitCheckListItem(item);
1474
+ }
1475
+ /**
1476
+ * Handles the onDragDrop event.
1477
+ *
1478
+ * @param event - The drag and drop event.
1479
+ */
1480
+ onDragDrop(event) {
1481
+ if (event.previousContainer === event.container) {
1482
+ moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
1483
+ }
1484
+ else {
1485
+ transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);
1486
+ }
1487
+ this.emitItemOrderChanged([Number(event.previousContainer.id), event.previousIndex], [Number(event.container.id), event.currentIndex]);
1488
+ }
1489
+ /**
1490
+ * Handles moving items up or down using the alt + arrow up or alt + arrow down keys.
1491
+ *
1492
+ * @param groupIndex - The index of the group.
1493
+ * @param currentItemIndex - The current index of the item.
1494
+ * @param newItemIndex - The new index of the item.
1495
+ */
1496
+ onAltArrowKeydown(groupIndex, currentItemIndex, newItemIndex, event) {
1497
+ event.preventDefault();
1498
+ let newIndex = newItemIndex;
1499
+ let newGroupIndex = groupIndex;
1500
+ let transfer = false;
1501
+ if (newIndex > this.groups[groupIndex].items.length - 1) {
1502
+ newIndex = 0;
1503
+ newGroupIndex = groupIndex + 1;
1504
+ transfer = true;
1505
+ this.focusedIndex[groupIndex] = this.groups[groupIndex].items.length - 2;
1506
+ }
1507
+ else if (newIndex < 0) {
1508
+ newGroupIndex = groupIndex - 1;
1509
+ newIndex = this.groups[newGroupIndex].items.length;
1510
+ transfer = true;
1511
+ this.focusedIndex[groupIndex] = 0;
1512
+ }
1513
+ if (transfer) {
1514
+ transferArrayItem(this.groups[groupIndex].items, this.groups[newGroupIndex].items, currentItemIndex, newIndex);
1515
+ }
1516
+ else {
1517
+ moveItemInArray(this.groups[groupIndex].items, currentItemIndex, newIndex);
1518
+ }
1519
+ this.emitItemOrderChanged([groupIndex, currentItemIndex], [newGroupIndex, newIndex]);
1520
+ setTimeout(() => {
1521
+ this.focusItem(newGroupIndex, newIndex);
1522
+ });
1523
+ }
1524
+ /**
1525
+ * Handles focus by arrow keydown event.
1526
+ *
1527
+ * @param groupIndex - The index of the group.
1528
+ * @param itemIndex - The index of the item.
1529
+ * @param event - The keyboard event.
1530
+ */
1531
+ onArrowKeydown(groupIndex, itemIndex, event) {
1532
+ event.preventDefault();
1533
+ setTimeout(() => {
1534
+ let gi = groupIndex;
1535
+ if (itemIndex > this.groups[groupIndex].items.length - 1) {
1536
+ gi = groupIndex + 1;
1537
+ itemIndex = 0;
1538
+ }
1539
+ if (itemIndex < 0) {
1540
+ gi = groupIndex - 1;
1541
+ if (gi < 0) {
1542
+ return;
1543
+ }
1544
+ itemIndex = this.groups[gi].items.length - 1;
1545
+ }
1546
+ this.focusItem(gi, itemIndex);
1547
+ });
1548
+ }
1549
+ /**
1550
+ * Emits the item order changed event.
1551
+ *
1552
+ * @param previousIndex - The previous index of the item.
1553
+ * @param currentIndex - The current index of the item.
1554
+ */
1555
+ emitItemOrderChanged(previousIndex, currentIndex) {
1556
+ this.itemOrderChanged.emit({
1557
+ previousIndex,
1558
+ currentIndex,
1559
+ groups: [...this.groups],
1560
+ });
1561
+ }
1562
+ /**
1563
+ * Emits the selected checklist item through an event.
1564
+ *
1565
+ * @param item - The checklist item to emit.
1566
+ */
1567
+ emitCheckListItem(item) {
1568
+ this.itemSelectionChanged.emit({ changedItem: item, groups: this.groups });
1569
+ }
1570
+ /**
1571
+ * Focuses on a specific item in the sortable list.
1572
+ *
1573
+ * @param groupIndex - The index of the group.
1574
+ * @param itemIndex - The index of the item.
1575
+ */
1576
+ focusItem(groupIndex, itemIndex) {
1577
+ const groupElements = this.sortableListGroups.nativeElement.querySelectorAll('.item-list-group');
1578
+ if (groupElements && groupElements.length > groupIndex) {
1579
+ const itemElements = groupElements[groupIndex].querySelectorAll('.item');
1580
+ if (itemElements && itemElements.length > itemIndex) {
1581
+ if (this.shouldDisplayCheckboxes) {
1582
+ itemElements[itemIndex].querySelector('input').focus();
1583
+ }
1584
+ else {
1585
+ itemElements[itemIndex].focus();
1586
+ }
1587
+ this.focusedIndex[groupIndex] = itemIndex;
1588
+ }
1589
+ }
1590
+ }
1591
+ /**
1592
+ * Checks if an item has focus.
1593
+ *
1594
+ * @param groupIndex - The index of the group.
1595
+ * @param itemIndex - The index of the item.
1596
+ */
1597
+ itemHasFocus(groupIndex, itemIndex) {
1598
+ if (!this.focusedIndex[groupIndex]) {
1599
+ this.focusedIndex[groupIndex] = 0;
1600
+ }
1601
+ return this.focusedIndex[groupIndex] === itemIndex;
1602
+ }
1603
+ }
1604
+ NggSortableListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1605
+ NggSortableListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NggSortableListComponent, selector: "ngg-sortable-list", inputs: { groups: "groups", shouldDisplayCheckboxes: "shouldDisplayCheckboxes", isReadOnly: "isReadOnly", isDraggable: "isDraggable", description: "description", suffixTemplate: "suffixTemplate" }, outputs: { itemSelectionChanged: "itemSelectionChanged", itemOrderChanged: "itemOrderChanged" }, viewQueries: [{ propertyName: "sortableListGroups", first: true, predicate: ["sortableListGroups"], descendants: true }], ngImport: i0, template: "<div class=\"item-list\">\n <ng-container>\n <p class=\"item-list-header\">\n <span class=\"item-list-header-title\">{{ description }}</span>\n </p>\n <div #sortableListGroups cdkDropListGroup>\n <div\n *ngFor=\"let group of groups; let g_i = index\"\n class=\"item-list-group\"\n [class.drag-enabled]=\"isDraggable && !isReadOnly\"\n role=\"list\"\n cdkDropList\n [cdkDropListData]=\"group.items\"\n [id]=\"g_i.toString()\"\n (cdkDropListDropped)=\"onDragDrop($event)\"\n >\n <p\n *ngIf=\"group.title && group.title.length > 0\"\n class=\"item-list-header\"\n >\n <span class=\"item-list-header-title\">{{ group.title }}</span>\n </p>\n <p\n *ngIf=\"group.description && group.description.length > 0\"\n class=\"item-list-header-description\"\n >\n {{ group.description }}\n </p>\n <div\n *ngFor=\"let checklistItem of group.items; let i = index\"\n [cdkDragDisabled]=\"!isDraggable || isReadOnly\"\n [cdkDragData]=\"checklistItem\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n class=\"item-box\"\n role=\"listitem\"\n >\n <div *cdkDragPlaceholder class=\"item-custom-placeholder\"></div>\n <label\n (keydown.alt.arrowDown)=\"onAltArrowKeydown(g_i, i, i + 1, $event)\"\n (keydown.alt.arrowUp)=\"onAltArrowKeydown(g_i, i, i - 1, $event)\"\n (keydown.arrowDown)=\"onArrowKeydown(g_i, i + 1, $event)\"\n (keydown.arrowUp)=\"onArrowKeydown(g_i, i - 1, $event)\"\n class=\"form-control item-control align-items-center item\"\n [tabindex]=\"shouldDisplayCheckboxes ? '-1' : '0'\"\n >\n <div class=\"form-control\">\n <input\n (change)=\"toggleSelection(checklistItem)\"\n [checked]=\"checklistItem.selected\"\n [disabled]=\"isReadOnly\"\n [type]=\"shouldDisplayCheckboxes ? 'checkbox' : 'hidden'\"\n />\n <div class=\"item-box-title\">\n <span name=\"agendaItemName\"\n >{{ checklistItem.name }}\n <span\n *ngIf=\"checklistItem.hasCustomSuffix\"\n class=\"item-list-suffix\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n suffixTemplate;\n context: { $implicit: checklistItem }\n \"\n class=\"user-icon\"\n >\n </ng-container>\n </span>\n </span>\n <br />\n <span *ngIf=\"!!checklistItem.description\">\n <span class=\"item-list-suffix\" name=\"agendaItemToolTip\">\n {{ checklistItem.description }}\n </span>\n <br />\n </span>\n </div>\n <i></i>\n </div>\n <div *ngIf=\"isDraggable && !isReadOnly\" class=\"item-grip-icon\">\n <i class=\"sg-icon sg-icon-grip-vertical text-primary\"></i>\n </div>\n </label>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n", styles: [".item-list{width:100%;display:block}label.item{padding:0!important}.item-box{background-color:var(--sg-card-background);color:var(--text-primary-color);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;font-size:14px;margin:5px 0;border:1px solid var(--border-color);border-radius:4px}.form-control{line-height:20px;font-size:16px;font-weight:500}.item-list-header{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:1rem}.item-list-header-title{font-weight:600;font-size:1rem;line-height:1.25rem;font-style:normal}.item-list-header-subtitle{font-size:.75rem;color:var(--text-primary-color);display:flex;justify-content:center;align-content:center}.item-list-suffix{font-weight:400;font-size:.85rem}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.item-grip-icon{font-weight:400;padding:.75rem 1rem .75rem 0rem}.cdk-drop-list.cdk-drop-list-dragging{cursor:grabbing!important;pointer-events:all!important}.item-custom-placeholder.cdk-drag-placeholder{pointer-events:all!important}.cdk-drop-list.drag-enabled:not(.cdk-drag-placeholder) label{cursor:grab}.cdk-drop-list label:focus-visible{outline-color:#333;outline-offset:4px}.item-list.cdk-drop-list-dragging .item-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);pointer-events:all!important}.item-custom-placeholder{border:dotted 1px #999;min-height:44px;transition:transform .25s cubic-bezier(0,0,.2,1);border-radius:4px;margin:5px 0;padding:12px 12px 12px 16px}.user-icon{margin-right:.5rem}.item-control{width:100%;display:flex;flex-direction:row;justify-content:space-between}.form-control.item-layout{display:flex;justify-content:space-between}\n"], dependencies: [{ 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: "directive", type: i2$1.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$1.CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: i2$1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$1.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }] });
1606
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListComponent, decorators: [{
1607
+ type: Component,
1608
+ args: [{ selector: 'ngg-sortable-list', template: "<div class=\"item-list\">\n <ng-container>\n <p class=\"item-list-header\">\n <span class=\"item-list-header-title\">{{ description }}</span>\n </p>\n <div #sortableListGroups cdkDropListGroup>\n <div\n *ngFor=\"let group of groups; let g_i = index\"\n class=\"item-list-group\"\n [class.drag-enabled]=\"isDraggable && !isReadOnly\"\n role=\"list\"\n cdkDropList\n [cdkDropListData]=\"group.items\"\n [id]=\"g_i.toString()\"\n (cdkDropListDropped)=\"onDragDrop($event)\"\n >\n <p\n *ngIf=\"group.title && group.title.length > 0\"\n class=\"item-list-header\"\n >\n <span class=\"item-list-header-title\">{{ group.title }}</span>\n </p>\n <p\n *ngIf=\"group.description && group.description.length > 0\"\n class=\"item-list-header-description\"\n >\n {{ group.description }}\n </p>\n <div\n *ngFor=\"let checklistItem of group.items; let i = index\"\n [cdkDragDisabled]=\"!isDraggable || isReadOnly\"\n [cdkDragData]=\"checklistItem\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n class=\"item-box\"\n role=\"listitem\"\n >\n <div *cdkDragPlaceholder class=\"item-custom-placeholder\"></div>\n <label\n (keydown.alt.arrowDown)=\"onAltArrowKeydown(g_i, i, i + 1, $event)\"\n (keydown.alt.arrowUp)=\"onAltArrowKeydown(g_i, i, i - 1, $event)\"\n (keydown.arrowDown)=\"onArrowKeydown(g_i, i + 1, $event)\"\n (keydown.arrowUp)=\"onArrowKeydown(g_i, i - 1, $event)\"\n class=\"form-control item-control align-items-center item\"\n [tabindex]=\"shouldDisplayCheckboxes ? '-1' : '0'\"\n >\n <div class=\"form-control\">\n <input\n (change)=\"toggleSelection(checklistItem)\"\n [checked]=\"checklistItem.selected\"\n [disabled]=\"isReadOnly\"\n [type]=\"shouldDisplayCheckboxes ? 'checkbox' : 'hidden'\"\n />\n <div class=\"item-box-title\">\n <span name=\"agendaItemName\"\n >{{ checklistItem.name }}\n <span\n *ngIf=\"checklistItem.hasCustomSuffix\"\n class=\"item-list-suffix\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n suffixTemplate;\n context: { $implicit: checklistItem }\n \"\n class=\"user-icon\"\n >\n </ng-container>\n </span>\n </span>\n <br />\n <span *ngIf=\"!!checklistItem.description\">\n <span class=\"item-list-suffix\" name=\"agendaItemToolTip\">\n {{ checklistItem.description }}\n </span>\n <br />\n </span>\n </div>\n <i></i>\n </div>\n <div *ngIf=\"isDraggable && !isReadOnly\" class=\"item-grip-icon\">\n <i class=\"sg-icon sg-icon-grip-vertical text-primary\"></i>\n </div>\n </label>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n", styles: [".item-list{width:100%;display:block}label.item{padding:0!important}.item-box{background-color:var(--sg-card-background);color:var(--text-primary-color);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;font-size:14px;margin:5px 0;border:1px solid var(--border-color);border-radius:4px}.form-control{line-height:20px;font-size:16px;font-weight:500}.item-list-header{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:1rem}.item-list-header-title{font-weight:600;font-size:1rem;line-height:1.25rem;font-style:normal}.item-list-header-subtitle{font-size:.75rem;color:var(--text-primary-color);display:flex;justify-content:center;align-content:center}.item-list-suffix{font-weight:400;font-size:.85rem}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.item-grip-icon{font-weight:400;padding:.75rem 1rem .75rem 0rem}.cdk-drop-list.cdk-drop-list-dragging{cursor:grabbing!important;pointer-events:all!important}.item-custom-placeholder.cdk-drag-placeholder{pointer-events:all!important}.cdk-drop-list.drag-enabled:not(.cdk-drag-placeholder) label{cursor:grab}.cdk-drop-list label:focus-visible{outline-color:#333;outline-offset:4px}.item-list.cdk-drop-list-dragging .item-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);pointer-events:all!important}.item-custom-placeholder{border:dotted 1px #999;min-height:44px;transition:transform .25s cubic-bezier(0,0,.2,1);border-radius:4px;margin:5px 0;padding:12px 12px 12px 16px}.user-icon{margin-right:.5rem}.item-control{width:100%;display:flex;flex-direction:row;justify-content:space-between}.form-control.item-layout{display:flex;justify-content:space-between}\n"] }]
1609
+ }], propDecorators: { groups: [{
1610
+ type: Input
1611
+ }], shouldDisplayCheckboxes: [{
1612
+ type: Input
1613
+ }], isReadOnly: [{
1614
+ type: Input
1615
+ }], isDraggable: [{
1616
+ type: Input
1617
+ }], description: [{
1618
+ type: Input
1619
+ }], suffixTemplate: [{
1620
+ type: Input
1621
+ }], itemSelectionChanged: [{
1622
+ type: Output
1623
+ }], itemOrderChanged: [{
1624
+ type: Output
1625
+ }], sortableListGroups: [{
1626
+ type: ViewChild,
1627
+ args: ['sortableListGroups']
1628
+ }] } });
1629
+
1630
+ class NggSortableListModule {
1631
+ }
1632
+ NggSortableListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1633
+ NggSortableListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, declarations: [NggSortableListComponent], imports: [CommonModule, FormsModule, DragDropModule], exports: [NggSortableListComponent] });
1634
+ NggSortableListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, imports: [CommonModule, FormsModule, DragDropModule] });
1635
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggSortableListModule, decorators: [{
1636
+ type: NgModule,
1637
+ args: [{
1638
+ imports: [CommonModule, FormsModule, DragDropModule],
1639
+ exports: [NggSortableListComponent],
1640
+ declarations: [NggSortableListComponent],
1641
+ }]
1642
+ }] });
1643
+
1452
1644
  class SlidingUnderlineDirective {
1453
1645
  constructor(element) {
1454
1646
  this.element = element;
@@ -1724,7 +1916,8 @@ NggModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.
1724
1916
  NggContextMenuModule,
1725
1917
  NggInPageWizardModule,
1726
1918
  NggCellTableModule,
1727
- NggSharedModule] });
1919
+ NggSharedModule,
1920
+ NggSortableListModule] });
1728
1921
  NggModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggModule, imports: [CommonModule, NggAccordionModule,
1729
1922
  NggBadgeModule,
1730
1923
  NggButtonModule,
@@ -1737,7 +1930,8 @@ NggModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.
1737
1930
  NggContextMenuModule,
1738
1931
  NggInPageWizardModule,
1739
1932
  NggCellTableModule,
1740
- NggSharedModule] });
1933
+ NggSharedModule,
1934
+ NggSortableListModule] });
1741
1935
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NggModule, decorators: [{
1742
1936
  type: NgModule,
1743
1937
  args: [{
@@ -1757,6 +1951,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
1757
1951
  NggInPageWizardModule,
1758
1952
  NggCellTableModule,
1759
1953
  NggSharedModule,
1954
+ NggSortableListModule,
1760
1955
  ],
1761
1956
  }]
1762
1957
  }] });
@@ -1950,5 +2145,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
1950
2145
  * Generated bundle index. Do not edit.
1951
2146
  */
1952
2147
 
1953
- export { NggAccordionComponent, NggAccordionListItemComponent, NggAccordionModule, NggBadgeComponent, NggBadgeModule, NggButtonComponent, NggButtonModule, NggCellTableComponent, NggCellTableModule, NggContextMenuComponent, NggContextMenuModule, NggCoreElementDirective, NggCoreWrapperModule, NggDatepickerComponent, NggDatepickerModule, NggDropdownButtonDirective, NggDropdownComponent, NggDropdownModule, NggDropdownOptionDirective, NggInPageWizardModule, NggInPageWizardStepCardComponent, NggModalBodyComponent, NggModalComponent, NggModalFooterComponent, NggModalFooterDirective, NggModalHeaderComponent, NggModalHeaderDirective, NggModalModule, NggModule, NggOnScrollDirective, NggPaginationComponent, NggPaginationModule, NggProgressCircleComponent, NggProgressCircleModule, NggSegmentedControlComponent, NggSegmentedControlModule, NggSharedModule, NggSliderComponent, NggSliderModule, ON_SCROLL_TOKEN, dateValidator };
2148
+ export { NggAccordionComponent, NggAccordionListItemComponent, NggAccordionModule, NggBadgeComponent, NggBadgeModule, NggButtonComponent, NggButtonModule, NggCellTableComponent, NggCellTableModule, NggContextMenuComponent, NggContextMenuModule, NggCoreElementDirective, NggCoreWrapperModule, NggDatepickerComponent, NggDatepickerModule, NggDropdownButtonDirective, NggDropdownComponent, NggDropdownModule, NggDropdownOptionDirective, NggInPageWizardModule, NggInPageWizardStepCardComponent, NggModalBodyComponent, NggModalComponent, NggModalFooterComponent, NggModalFooterDirective, NggModalHeaderComponent, NggModalHeaderDirective, NggModalModule, NggModule, NggOnScrollDirective, NggPaginationComponent, NggPaginationModule, NggProgressCircleComponent, NggProgressCircleModule, NggSegmentedControlComponent, NggSegmentedControlModule, NggSharedModule, NggSliderComponent, NggSliderModule, NggSortableListComponent, NggSortableListModule, ON_SCROLL_TOKEN, dateValidator };
1954
2149
  //# sourceMappingURL=sebgroup-green-angular.mjs.map