jsl-ui 9.18.2 → 9.18.3

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.
Files changed (214) hide show
  1. package/lib/grid.css +0 -8
  2. package/lib/index.css.map +1 -1
  3. package/lib/index.js +10198 -61
  4. package/lib/index.js.map +1 -1
  5. package/package.json +1 -1
  6. package/lib/components/IntervalComponent.d.ts +0 -17
  7. package/lib/components/IntervalComponent.js +0 -68
  8. package/lib/components/auto-suggest/AutoSuggestComponent.d.ts +0 -22
  9. package/lib/components/auto-suggest/AutoSuggestComponent.js +0 -49
  10. package/lib/components/button/ButtonComponent.d.ts +0 -18
  11. package/lib/components/button/ButtonComponent.js +0 -46
  12. package/lib/components/checkbox/CheckBoxComponent.d.ts +0 -28
  13. package/lib/components/checkbox/CheckBoxComponent.js +0 -94
  14. package/lib/components/checkbox/CheckBoxStyle.scss +0 -86
  15. package/lib/components/date/DateComponent.d.ts +0 -32
  16. package/lib/components/date/DateComponent.js +0 -106
  17. package/lib/components/date-range/DateRangeComponent.d.ts +0 -35
  18. package/lib/components/date-range/DateRangeComponent.js +0 -136
  19. package/lib/components/date-range/DateRangeStyle.scss +0 -12
  20. package/lib/components/date-time/DateTimeComponent.d.ts +0 -15
  21. package/lib/components/date-time/DateTimeComponent.js +0 -53
  22. package/lib/components/date-time/DateTimeStyle.scss +0 -7
  23. package/lib/components/dialog/DialogComponent.d.ts +0 -67
  24. package/lib/components/dialog/DialogComponent.js +0 -242
  25. package/lib/components/drop-down/DropDownComponent.d.ts +0 -27
  26. package/lib/components/drop-down/DropDownComponent.js +0 -74
  27. package/lib/components/expander/ExpanderComponent.d.ts +0 -27
  28. package/lib/components/expander/ExpanderComponent.js +0 -90
  29. package/lib/components/expander/ExpanderStyle.scss +0 -47
  30. package/lib/components/expander/OldExpanderStyle.scss +0 -37
  31. package/lib/components/form-field/FormComponent.d.ts +0 -12
  32. package/lib/components/form-field/FormComponent.js +0 -26
  33. package/lib/components/form-field/FormFieldComponent.d.ts +0 -38
  34. package/lib/components/form-field/FormFieldComponent.js +0 -139
  35. package/lib/components/form-field/FormFieldStyle.scss +0 -87
  36. package/lib/components/grid/GridComponent.d.ts +0 -26
  37. package/lib/components/grid/GridComponent.js +0 -116
  38. package/lib/components/input/InputComponent.d.ts +0 -33
  39. package/lib/components/input/InputComponent.js +0 -144
  40. package/lib/components/loading/LoadingComponent.d.ts +0 -8
  41. package/lib/components/loading/LoadingComponent.js +0 -22
  42. package/lib/components/loading/LoadingStyle.css +0 -29
  43. package/lib/components/navigation/NavigationComponent.d.ts +0 -34
  44. package/lib/components/navigation/NavigationComponent.js +0 -70
  45. package/lib/components/navigation/NavigationStyle.scss +0 -226
  46. package/lib/components/notification/Notification.d.ts +0 -17
  47. package/lib/components/notification/Notification.js +0 -56
  48. package/lib/components/notification/Notification.scss +0 -19
  49. package/lib/components/number/NumberComponent.d.ts +0 -25
  50. package/lib/components/number/NumberComponent.js +0 -87
  51. package/lib/components/overlay/OverlayComponent.d.ts +0 -27
  52. package/lib/components/overlay/OverlayComponent.js +0 -149
  53. package/lib/components/overlay/overlay.css +0 -57
  54. package/lib/components/progress/ProgressComponent.d.ts +0 -18
  55. package/lib/components/progress/ProgressComponent.js +0 -42
  56. package/lib/components/progress/ProgressStyle.scss +0 -15
  57. package/lib/components/ribbon-menu/RibbonMenuComponent.d.ts +0 -12
  58. package/lib/components/ribbon-menu/RibbonMenuComponent.js +0 -34
  59. package/lib/components/ribbon-menu/RibbonMenuStyle.scss +0 -76
  60. package/lib/components/select/SelectComponent.d.ts +0 -79
  61. package/lib/components/select/SelectComponent.js +0 -362
  62. package/lib/components/select/SelectDDAreaComponent.d.ts +0 -32
  63. package/lib/components/select/SelectDDAreaComponent.js +0 -317
  64. package/lib/components/select/SelectStyle.scss +0 -187
  65. package/lib/components/slider/nouislider.css +0 -310
  66. package/lib/components/slider/nouislider.d.ts +0 -44
  67. package/lib/components/slider/nouislider.js +0 -2158
  68. package/lib/components/stack-panel/SplitterComponent.d.ts +0 -21
  69. package/lib/components/stack-panel/SplitterComponent.js +0 -126
  70. package/lib/components/stack-panel/SplitterStyle.scss +0 -45
  71. package/lib/components/stack-panel/StackPanelComponent.d.ts +0 -20
  72. package/lib/components/stack-panel/StackPanelComponent.js +0 -64
  73. package/lib/components/stack-panel/StackPanelStyle.scss +0 -53
  74. package/lib/components/tabs/TabsComponent.d.ts +0 -39
  75. package/lib/components/tabs/TabsComponent.js +0 -177
  76. package/lib/components/tabs/TabsStyle.scss +0 -76
  77. package/lib/components/time/TimeComponent.d.ts +0 -29
  78. package/lib/components/time/TimeComponent.js +0 -113
  79. package/lib/components/time/TimeComponent.scss +0 -4
  80. package/lib/components/tree-view/TreeViewComponent.d.ts +0 -23
  81. package/lib/components/tree-view/TreeViewComponent.js +0 -45
  82. package/lib/components/tree-view/TreeViewStyle.scss +0 -96
  83. package/lib/components/virtual-render/VirtualRenderComponent.d.ts +0 -30
  84. package/lib/components/virtual-render/VirtualRenderComponent.js +0 -104
  85. package/lib/components/virtual-render/VirtualRenderStyle.scss +0 -9
  86. package/lib/core/culture.d.ts +0 -5
  87. package/lib/core/culture.js +0 -385
  88. package/lib/core/date.d.ts +0 -14
  89. package/lib/core/date.js +0 -350
  90. package/lib/core/helper.d.ts +0 -12
  91. package/lib/core/helper.js +0 -101
  92. package/lib/core/jq.d.ts +0 -37
  93. package/lib/core/jq.js +0 -371
  94. package/lib/core/lang.d.ts +0 -24
  95. package/lib/core/lang.js +0 -28
  96. package/lib/core/numeric.d.ts +0 -7
  97. package/lib/core/numeric.js +0 -143
  98. package/lib/core/polyfills.d.ts +0 -0
  99. package/lib/core/polyfills.js +0 -22
  100. package/lib/core.d.ts +0 -6
  101. package/lib/core.js +0 -6
  102. package/lib/grid/controls/slick.columnpicker.css +0 -46
  103. package/lib/grid/controls/slick.draggablegrouping.css +0 -52
  104. package/lib/grid/controls/slick.gridmenu.css +0 -127
  105. package/lib/grid/controls/slick.pager.css +0 -41
  106. package/lib/grid/examples/examples.css +0 -203
  107. package/lib/grid/filterDialogs/dateRangeFilter.d.ts +0 -7
  108. package/lib/grid/filterDialogs/dateRangeFilter.js +0 -156
  109. package/lib/grid/filterDialogs/excelFilter.d.ts +0 -9
  110. package/lib/grid/filterDialogs/excelFilter.js +0 -313
  111. package/lib/grid/plugins/ext.overlay.css +0 -28
  112. package/lib/grid/plugins/ext.overlay.d.ts +0 -2
  113. package/lib/grid/plugins/ext.overlay.js +0 -291
  114. package/lib/grid/plugins/slick.cellrangedecorator.d.ts +0 -12
  115. package/lib/grid/plugins/slick.cellrangedecorator.js +0 -68
  116. package/lib/grid/plugins/slick.cellrangeselector.d.ts +0 -1
  117. package/lib/grid/plugins/slick.cellrangeselector.js +0 -144
  118. package/lib/grid/plugins/slick.cellselectionmodel.d.ts +0 -1
  119. package/lib/grid/plugins/slick.cellselectionmodel.js +0 -194
  120. package/lib/grid/plugins/slick.headerbuttons.css +0 -40
  121. package/lib/grid/plugins/slick.headerbuttons.d.ts +0 -55
  122. package/lib/grid/plugins/slick.headerbuttons.js +0 -156
  123. package/lib/grid/plugins/slick.headermenu.css +0 -101
  124. package/lib/grid/plugins/slick.headermenu.d.ts +0 -74
  125. package/lib/grid/plugins/slick.headermenu.js +0 -260
  126. package/lib/grid/plugins/slick.rowdetailview.css +0 -37
  127. package/lib/grid/plugins/slick.rowmovemanager.css +0 -8
  128. package/lib/grid/plugins/slick.rowmovemanager.d.ts +0 -18
  129. package/lib/grid/plugins/slick.rowmovemanager.js +0 -249
  130. package/lib/grid/plugins/slick.rowselectionmodel.d.ts +0 -1
  131. package/lib/grid/plugins/slick.rowselectionmodel.js +0 -167
  132. package/lib/grid/slick-default-theme.css +0 -154
  133. package/lib/grid/slick.core.d.ts +0 -90
  134. package/lib/grid/slick.core.js +0 -574
  135. package/lib/grid/slick.creator.d.ts +0 -80
  136. package/lib/grid/slick.creator.js +0 -723
  137. package/lib/grid/slick.dataview.d.ts +0 -71
  138. package/lib/grid/slick.dataview.js +0 -1080
  139. package/lib/grid/slick.editors.core.d.ts +0 -4
  140. package/lib/grid/slick.editors.core.js +0 -232
  141. package/lib/grid/slick.editors.date.d.ts +0 -2
  142. package/lib/grid/slick.editors.date.js +0 -125
  143. package/lib/grid/slick.editors.lookup.d.ts +0 -14
  144. package/lib/grid/slick.editors.lookup.js +0 -353
  145. package/lib/grid/slick.editors.nav.d.ts +0 -6
  146. package/lib/grid/slick.editors.nav.js +0 -22
  147. package/lib/grid/slick.formatters.d.ts +0 -17
  148. package/lib/grid/slick.formatters.js +0 -137
  149. package/lib/grid/slick.grid.css +0 -325
  150. package/lib/grid/slick.grid.d.ts +0 -284
  151. package/lib/grid/slick.grid.js +0 -5395
  152. package/lib/grid/slick.groupitemmetadataprovider.d.ts +0 -39
  153. package/lib/grid/slick.groupitemmetadataprovider.js +0 -165
  154. package/lib/grid/slick.tree.css +0 -20
  155. package/lib/grid/slick.tree.d.ts +0 -33
  156. package/lib/grid/slick.tree.js +0 -220
  157. package/lib/grid.d.ts +0 -13
  158. package/lib/grid.js +0 -13
  159. package/lib/index.css +0 -2584
  160. package/lib/index.d.ts +0 -56
  161. package/lib/interaction/dataconverter.d.ts +0 -4
  162. package/lib/interaction/dataconverter.js +0 -1
  163. package/lib/interaction/eventhandler.d.ts +0 -13
  164. package/lib/interaction/eventhandler.js +0 -42
  165. package/lib/interaction/moveable.css +0 -0
  166. package/lib/interaction/moveable.d.ts +0 -39
  167. package/lib/interaction/moveable.js +0 -172
  168. package/lib/interaction/resizable.css +0 -33
  169. package/lib/interaction/resizable.d.ts +0 -37
  170. package/lib/interaction/resizable.js +0 -123
  171. package/lib/ui/auto.suggest.css +0 -14
  172. package/lib/ui/auto.suggest.d.ts +0 -17
  173. package/lib/ui/auto.suggest.js +0 -255
  174. package/lib/ui/base.css +0 -150
  175. package/lib/ui/date.picker/css/date-range-picker.css +0 -87
  176. package/lib/ui/date.picker/css/tiny-date-picker.css +0 -326
  177. package/lib/ui/date.picker/date-picker-options.d.ts +0 -11
  178. package/lib/ui/date.picker/date-picker-options.js +0 -76
  179. package/lib/ui/date.picker/lib/date-manip.d.ts +0 -74
  180. package/lib/ui/date.picker/lib/date-manip.js +0 -120
  181. package/lib/ui/date.picker/lib/dom.d.ts +0 -23
  182. package/lib/ui/date.picker/lib/dom.js +0 -28
  183. package/lib/ui/date.picker/lib/emitter.d.ts +0 -13
  184. package/lib/ui/date.picker/lib/emitter.js +0 -49
  185. package/lib/ui/date.picker/lib/fns.d.ts +0 -23
  186. package/lib/ui/date.picker/lib/fns.js +0 -43
  187. package/lib/ui/date.picker/mode/base-mode.d.ts +0 -26
  188. package/lib/ui/date.picker/mode/base-mode.js +0 -248
  189. package/lib/ui/date.picker/mode/dropdown-mode.d.ts +0 -28
  190. package/lib/ui/date.picker/mode/dropdown-mode.js +0 -50
  191. package/lib/ui/date.picker/mode/index.d.ts +0 -28
  192. package/lib/ui/date.picker/mode/index.js +0 -18
  193. package/lib/ui/date.picker/mode/modal-mode.d.ts +0 -25
  194. package/lib/ui/date.picker/mode/modal-mode.js +0 -17
  195. package/lib/ui/date.picker/mode/permanent-mode.d.ts +0 -29
  196. package/lib/ui/date.picker/mode/permanent-mode.js +0 -19
  197. package/lib/ui/date.picker/views/day-picker.d.ts +0 -40
  198. package/lib/ui/date.picker/views/day-picker.js +0 -155
  199. package/lib/ui/date.picker/views/month-picker.d.ts +0 -26
  200. package/lib/ui/date.picker/views/month-picker.js +0 -65
  201. package/lib/ui/date.picker/views/year-picker.d.ts +0 -20
  202. package/lib/ui/date.picker/views/year-picker.js +0 -66
  203. package/lib/ui/date.picker.d.ts +0 -66
  204. package/lib/ui/date.picker.js +0 -32
  205. package/lib/ui/dialog.css +0 -109
  206. package/lib/ui/dialog.d.ts +0 -22
  207. package/lib/ui/dialog.js +0 -113
  208. package/lib/ui/drop.down.css +0 -472
  209. package/lib/ui/drop.down.d.ts +0 -52
  210. package/lib/ui/drop.down.js +0 -2112
  211. package/lib/ui/number.input.css +0 -3
  212. package/lib/ui/number.input.d.ts +0 -12
  213. package/lib/ui/number.input.js +0 -64
  214. package/lib/ui/tabs.css +0 -53
@@ -1,39 +0,0 @@
1
- /***
2
- * Provides item metadata for group (Slick.Group) and totals (Slick.Totals) rows produced by the DataView.
3
- * This metadata overrides the default behavior and formatting of those rows so that they appear and function
4
- * correctly when processed by the grid.
5
- *
6
- * This class also acts as a grid plugin providing event handlers to expand & collapse groups.
7
- * If "grid.registerPlugin(...)" is not called, expand & collapse will not work.
8
- *
9
- * @class GroupItemMetadataProvider
10
- * @module Data
11
- * @namespace Slick.Data
12
- * @constructor
13
- * @param options
14
- */
15
- export declare function GroupItemMetadataProvider(options?: any): {
16
- init: (grid: any) => void;
17
- destroy: () => void;
18
- getGroupRowMetadata: (item: any) => {
19
- selectable: boolean;
20
- focusable: any;
21
- cssClasses: any;
22
- columns: {
23
- 0: {
24
- colspan: string;
25
- formatter: any;
26
- editor: any;
27
- };
28
- };
29
- height: any;
30
- };
31
- getTotalsRowMetadata: (item: any) => {
32
- selectable: boolean;
33
- focusable: any;
34
- cssClasses: any;
35
- formatter: any;
36
- editor: any;
37
- height: any;
38
- };
39
- };
@@ -1,165 +0,0 @@
1
- import { jQueryReplacement } from "../core/jq";
2
- import { Slick } from "./slick.core";
3
- var $ = jQueryReplacement;
4
- $.deepExtend(Slick, {
5
- Data: {
6
- GroupItemMetadataProvider: GroupItemMetadataProvider
7
- }
8
- });
9
- /***
10
- * Provides item metadata for group (Slick.Group) and totals (Slick.Totals) rows produced by the DataView.
11
- * This metadata overrides the default behavior and formatting of those rows so that they appear and function
12
- * correctly when processed by the grid.
13
- *
14
- * This class also acts as a grid plugin providing event handlers to expand & collapse groups.
15
- * If "grid.registerPlugin(...)" is not called, expand & collapse will not work.
16
- *
17
- * @class GroupItemMetadataProvider
18
- * @module Data
19
- * @namespace Slick.Data
20
- * @constructor
21
- * @param options
22
- */
23
- export function GroupItemMetadataProvider(options) {
24
- var _grid;
25
- var _defaults = {
26
- checkboxSelect: false,
27
- checkboxSelectCssClass: "slick-group-select-checkbox",
28
- checkboxSelectPlugin: null,
29
- groupCssClass: "slick-group",
30
- groupTitleCssClass: "slick-group-title",
31
- totalsCssClass: "slick-group-totals",
32
- groupFocusable: true,
33
- totalsFocusable: false,
34
- toggleCssClass: "slick-group-toggle",
35
- toggleExpandedCssClass: "expanded",
36
- toggleCollapsedCssClass: "collapsed",
37
- enableExpandCollapse: true,
38
- groupFormatter: defaultGroupCellFormatter,
39
- totalsFormatter: defaultTotalsCellFormatter
40
- };
41
- options = $.deepExtend({}, _defaults, options);
42
- function defaultGroupCellFormatter(row, cell, value, columnDef, item, grid) {
43
- if (!options.enableExpandCollapse) {
44
- return item.title;
45
- }
46
- var indentation = item.level * 15 + "px";
47
- return (options.checkboxSelect ? '<span class="' + options.checkboxSelectCssClass +
48
- ' ' + (item.selectChecked ? 'checked' : 'unchecked') + '"></span>' : '') +
49
- "<span class='" + options.toggleCssClass + " " +
50
- (item.collapsed ? options.toggleCollapsedCssClass : options.toggleExpandedCssClass) +
51
- "' style='margin-left:" + indentation + "'>" +
52
- "</span>" +
53
- "<span class='" + options.groupTitleCssClass + "' level='" + item.level + "'>" +
54
- item.title +
55
- "</span>";
56
- }
57
- function defaultTotalsCellFormatter(row, cell, value, columnDef, item, grid) {
58
- var formatter_res;
59
- if (columnDef.groupTotalsFormatter) {
60
- formatter_res = columnDef.groupTotalsFormatter(item, columnDef, grid) || "";
61
- }
62
- else {
63
- var res = (item.avg && item.avg[columnDef.field])
64
- || (item.sum && item.sum[columnDef.field])
65
- || (item.max && item.max[columnDef.field])
66
- || (item.min && item.min[columnDef.field]);
67
- formatter_res = (columnDef.formatter ? columnDef.formatter(row, cell, res, columnDef, item) : "");
68
- }
69
- return formatter_res;
70
- //return (Object.prototype.toString.call(formatter_res) !== '[object Object]' ? (<string>formatter_res) : (<ISlickFormatterResult>formatter_res).text);
71
- }
72
- function init(grid) {
73
- _grid = grid;
74
- _grid.onClick.subscribe(handleGridClick);
75
- _grid.onKeyDown.subscribe(handleGridKeyDown);
76
- }
77
- function destroy() {
78
- if (_grid) {
79
- _grid.onClick.unsubscribe(handleGridClick);
80
- _grid.onKeyDown.unsubscribe(handleGridKeyDown);
81
- }
82
- }
83
- function handleGridClick(e, args) {
84
- var $target = $(e.target);
85
- var item = this.getDataItem(args.row);
86
- if (item && item instanceof Slick.Group && $target.hasClass(options.toggleCssClass)) {
87
- var range = _grid.getRenderedRange();
88
- this.dataView.setRefreshHints({
89
- ignoreDiffsBefore: range.top,
90
- ignoreDiffsAfter: range.bottom + 1
91
- });
92
- if (item.collapsed) {
93
- this.dataView.expandGroup(item.groupingKey);
94
- }
95
- else {
96
- this.dataView.collapseGroup(item.groupingKey);
97
- }
98
- e.stopImmediatePropagation();
99
- e.preventDefault();
100
- }
101
- if (item && item instanceof Slick.Group && $target.hasClass(options.checkboxSelectCssClass)) {
102
- item.selectChecked = !item.selectChecked;
103
- $target.removeClass((item.selectChecked ? "unchecked" : "checked"));
104
- $target.addClass((item.selectChecked ? "checked" : "unchecked"));
105
- // get rowIndexes array
106
- var rowIndexes = _grid.dataView.mapItemsToRows(item.rows);
107
- (item.selectChecked ? options.checkboxSelectPlugin.selectRows : options.checkboxSelectPlugin.deSelectRows)(rowIndexes);
108
- }
109
- }
110
- // TODO: add -/+ handling
111
- function handleGridKeyDown(e, args) {
112
- if (options.enableExpandCollapse && (e.which == Slick.keyCode.SPACE)) {
113
- var activeCell = this.getActiveCell();
114
- if (activeCell) {
115
- var item = this.getDataItem(activeCell.row);
116
- if (item && item instanceof Slick.Group) {
117
- var range = _grid.getRenderedRange();
118
- this.dataView.setRefreshHints({
119
- ignoreDiffsBefore: range.top,
120
- ignoreDiffsAfter: range.bottom + 1
121
- });
122
- if (item.collapsed) {
123
- this.dataView.expandGroup(item.groupingKey);
124
- }
125
- else {
126
- this.dataView.collapseGroup(item.groupingKey);
127
- }
128
- e.stopImmediatePropagation();
129
- e.preventDefault();
130
- }
131
- }
132
- }
133
- }
134
- function getGroupRowMetadata(item) {
135
- return {
136
- selectable: false,
137
- focusable: options.groupFocusable,
138
- cssClasses: options.groupCssClass,
139
- columns: {
140
- 0: {
141
- colspan: "*",
142
- formatter: options.groupFormatter,
143
- editor: null
144
- }
145
- },
146
- height: options.calcGroupHeight ? options.calcGroupHeight(item) : undefined
147
- };
148
- }
149
- function getTotalsRowMetadata(item) {
150
- return {
151
- selectable: false,
152
- focusable: options.totalsFocusable,
153
- cssClasses: options.totalsCssClass,
154
- formatter: options.totalsFormatter,
155
- editor: null,
156
- height: options.calcTotalsHeight ? options.calcTotalsHeight(item) : undefined
157
- };
158
- }
159
- return {
160
- "init": init,
161
- "destroy": destroy,
162
- "getGroupRowMetadata": getGroupRowMetadata,
163
- "getTotalsRowMetadata": getTotalsRowMetadata
164
- };
165
- }
@@ -1,20 +0,0 @@
1
- .slick-cell .jsl-toggle {
2
- color: #888888;
3
- /* font-size: 0.8em; */
4
- width: 1.2em;
5
- box-sizing: border-box;
6
- display: inline-block;
7
- cursor: pointer;
8
- height: 100%;
9
- }
10
-
11
- .slick-cell .jsl-toggle-spacer {
12
- min-width: 1.2em;
13
- display: inline-block;
14
- box-sizing: border-box;
15
- }
16
-
17
- .slick-cell .jsl-indent {
18
- display: inline-block;
19
- position: relative;
20
- }
@@ -1,33 +0,0 @@
1
- import "./slick.tree.css";
2
- import { IJSLGrid } from "./slick.creator";
3
- import { ISlickFormatter } from "./slick.core";
4
- export interface IGridTreeOptions {
5
- parentColumn: string;
6
- indentInRem?: number;
7
- enableCollapsing?: boolean;
8
- hiddenStateField?: string;
9
- collapsedStateField?: string;
10
- expandIconHTML?: string;
11
- collapseIconHTML?: string;
12
- }
13
- export declare let IndentFormatter: ISlickFormatter;
14
- export declare class GridTree<T> {
15
- private grid;
16
- private primaryKey;
17
- private options;
18
- constructor(grid: IJSLGrid<T>, o: IGridTreeOptions);
19
- getOptions(): IGridTreeOptions;
20
- getLevel(item: T): number;
21
- getParent(item: T): T;
22
- hasChildren(item: T): boolean;
23
- getDirectChildren(item: T): T[];
24
- getAllChildren(item: T): T[];
25
- rowHasChildren(row: number): boolean;
26
- toggleExpand(item: T): void;
27
- expand(item: T): void;
28
- indent(rows: T[]): void;
29
- outdent(rows: T[]): void;
30
- filterChildren(rows: T[]): T[];
31
- collapse(item: T): void;
32
- private initEvents;
33
- }
@@ -1,220 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import "./slick.tree.css";
13
- export var IndentFormatter = function (row, cell, value, columnDef, dataContext, grid) {
14
- var result = "";
15
- var hierachy = grid._hierachy;
16
- if (hierachy != null) {
17
- var options = hierachy.getOptions();
18
- var level = hierachy.getLevel(dataContext);
19
- if (level > 0) {
20
- result += "<span class='jsl-indent' style='min-width:" + (level * hierachy.getOptions().indentInRem) + "rem;'></span>";
21
- }
22
- if (options.enableCollapsing) {
23
- var hasChildren = hierachy.hasChildren(dataContext);
24
- if (hasChildren) {
25
- if (dataContext[options.collapsedStateField]) {
26
- result += "<span class='jsl-toggle'>" + options.expandIconHTML + "</span>";
27
- }
28
- else {
29
- result += "<span class='jsl-toggle'>" + options.collapseIconHTML + "</span>";
30
- }
31
- }
32
- else {
33
- result += "<span class='jsl-toggle-spacer'></span>";
34
- }
35
- }
36
- }
37
- if (value != null) {
38
- result += (value + "").replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
39
- }
40
- return result;
41
- };
42
- var GridTree = /** @class */ (function () {
43
- function GridTree(grid, o) {
44
- this.grid = grid;
45
- this.options = __assign({
46
- enableCollapsing: true,
47
- indentInRem: 1,
48
- hiddenStateField: "_hidden_by_h",
49
- collapsedStateField: "_callapsed",
50
- expandIconHTML: "▶",
51
- collapseIconHTML: "▼" // "˅"
52
- }, o);
53
- this.primaryKey = this.grid.getOptions().primaryKey;
54
- grid._hierachy = this;
55
- grid.refresh();
56
- this.initEvents();
57
- }
58
- GridTree.prototype.getOptions = function () {
59
- return this.options;
60
- };
61
- GridTree.prototype.getLevel = function (item) {
62
- var level = 0;
63
- var parent = this.getParent(item);
64
- while (parent != null) {
65
- parent = this.getParent(parent);
66
- level++;
67
- }
68
- return level;
69
- };
70
- GridTree.prototype.getParent = function (item) {
71
- return this.grid.dataView.getItemById(item[this.options.parentColumn]);
72
- };
73
- GridTree.prototype.hasChildren = function (item) {
74
- return this.rowHasChildren(this.grid.dataView.getIdxByItem(item));
75
- };
76
- GridTree.prototype.getDirectChildren = function (item) {
77
- var id = item[this.primaryKey];
78
- var result = [];
79
- var data = this.grid.getData();
80
- for (var i = 0; i < data.length; i++) {
81
- var pid = data[i][this.options.parentColumn];
82
- if (pid === id) {
83
- result.push(data[i]);
84
- }
85
- }
86
- return result;
87
- };
88
- GridTree.prototype.getAllChildren = function (item) {
89
- var parentid = item[this.primaryKey];
90
- var result = [];
91
- var data = this.grid.getData();
92
- for (var i = 0; i < data.length; i++) {
93
- if (data[i][this.options.parentColumn] === parentid) {
94
- result.push(data[i]);
95
- result.push.apply(result, this.getAllChildren(data[i]));
96
- }
97
- }
98
- return result;
99
- };
100
- GridTree.prototype.rowHasChildren = function (row) {
101
- var data = this.grid.getData();
102
- if (data.length > row + 1) {
103
- return data[row + 1][this.options.parentColumn] === data[row][this.primaryKey];
104
- }
105
- return false;
106
- };
107
- GridTree.prototype.toggleExpand = function (item) {
108
- if (item[this.options.collapsedStateField]) {
109
- this.expand(item);
110
- }
111
- else {
112
- this.collapse(item);
113
- }
114
- };
115
- GridTree.prototype.expand = function (item) {
116
- item[this.options.collapsedStateField] = false;
117
- var data = this.grid.getData();
118
- var i = this.grid.dataView.getIdxByItem(item);
119
- while (i < data.length) {
120
- data[i][this.options.hiddenStateField] = false;
121
- if (this.rowHasChildren(i)) {
122
- if (data[i][this.options.collapsedStateField]) {
123
- //skip children
124
- i += this.getAllChildren(data[i]).length;
125
- }
126
- }
127
- i++;
128
- }
129
- this.grid.refreshData();
130
- };
131
- GridTree.prototype.indent = function (rows) {
132
- var realRows = this.filterChildren(rows);
133
- var data = this.grid.getData();
134
- //get indexes of rows
135
- var indexes = [];
136
- for (var i = 0; i < realRows.length; i++) {
137
- indexes.push(this.grid.dataView.getIdxByItem(realRows[i]));
138
- }
139
- //sort indexes
140
- indexes.sort(function (a, b) { return a > b ? 1 : (a < b ? -1 : 0); });
141
- //change parents to indent rows
142
- for (var i = 0; i < indexes.length; i++) {
143
- var rowIdx = indexes[i];
144
- var parentID = data[rowIdx][this.options.parentColumn];
145
- for (var tmp = rowIdx - 1; tmp >= 0; tmp--) {
146
- if (data[tmp][this.options.parentColumn] === parentID) {
147
- data[rowIdx][this.options.parentColumn] = data[tmp][this.primaryKey];
148
- break;
149
- }
150
- }
151
- }
152
- this.grid.refreshData();
153
- };
154
- GridTree.prototype.outdent = function (rows) {
155
- var rows2 = this.filterChildren(rows);
156
- var data = this.grid.getData();
157
- for (var i = 0; i < rows2.length; i++) {
158
- var row = rows2[i];
159
- var oldparent = row[this.options.parentColumn];
160
- if (oldparent) {
161
- var newparent = data[this.grid.dataView.getIdxById(oldparent)][this.options.parentColumn];
162
- row[this.options.parentColumn] = newparent;
163
- //make all subsequent items with same ParentID have current row as new parentid
164
- var idx = this.grid.dataView.getIdxById(row[this.primaryKey]);
165
- while (++idx < data.length) {
166
- if (data[idx][this.options.parentColumn] === oldparent) {
167
- data[idx][this.options.parentColumn] = row[this.primaryKey];
168
- }
169
- //TODO: optimize -> break sooner
170
- }
171
- }
172
- }
173
- this.grid.refreshData();
174
- };
175
- GridTree.prototype.filterChildren = function (rows) {
176
- var result = [];
177
- var dict = {};
178
- for (var i = 0; i < rows.length; i++) {
179
- dict[rows[i][this.primaryKey]] = true;
180
- }
181
- for (var i = 0; i < rows.length; i++) {
182
- var row = rows[i];
183
- var parentid = row[this.options.parentColumn];
184
- if (!parentid || !dict[parentid]) {
185
- result.push(row);
186
- }
187
- }
188
- return result;
189
- };
190
- GridTree.prototype.collapse = function (item) {
191
- item[this.options.collapsedStateField] = true;
192
- var children = this.getAllChildren(item);
193
- for (var i = 0; i < children.length; i++) {
194
- children[i][this.options.hiddenStateField] = true;
195
- }
196
- this.grid.refreshData();
197
- };
198
- GridTree.prototype.initEvents = function () {
199
- var _this = this;
200
- // collapse / expand click events
201
- if (this.options.enableCollapsing) {
202
- this.grid.onClick.subscribe(function (e, args) {
203
- if (e.target.classList.contains("jsl-toggle")) {
204
- e.stopImmediatePropagation();
205
- _this.toggleExpand(_this.grid.dataView.getItem(args.row));
206
- }
207
- });
208
- }
209
- // filters
210
- var hiddenFilter = {
211
- field: this.options.hiddenStateField,
212
- match: function (itm, field) {
213
- return !itm[_this.options.hiddenStateField];
214
- }
215
- };
216
- this.grid.addFilter(hiddenFilter);
217
- };
218
- return GridTree;
219
- }());
220
- export { GridTree };
package/lib/grid.d.ts DELETED
@@ -1,13 +0,0 @@
1
- export * from "./grid/slick.core";
2
- export * from "./grid/slick.creator";
3
- export * from "./grid/slick.dataview";
4
- export * from "./grid/slick.editors.core";
5
- export * from "./grid/slick.formatters";
6
- export * from "./grid/slick.grid";
7
- export * from "./grid/slick.groupitemmetadataprovider";
8
- export * from "./grid/slick.tree";
9
- export * from "./grid/plugins/slick.cellrangedecorator";
10
- export * from "./grid/plugins/slick.cellrangeselector";
11
- export * from "./grid/plugins/slick.cellselectionmodel";
12
- export * from "./grid/plugins/slick.headermenu";
13
- export * from "./grid/plugins/slick.rowselectionmodel";
package/lib/grid.js DELETED
@@ -1,13 +0,0 @@
1
- export * from "./grid/slick.core";
2
- export * from "./grid/slick.creator";
3
- export * from "./grid/slick.dataview";
4
- export * from "./grid/slick.editors.core";
5
- export * from "./grid/slick.formatters";
6
- export * from "./grid/slick.grid";
7
- export * from "./grid/slick.groupitemmetadataprovider";
8
- export * from "./grid/slick.tree";
9
- export * from "./grid/plugins/slick.cellrangedecorator";
10
- export * from "./grid/plugins/slick.cellrangeselector";
11
- export * from "./grid/plugins/slick.cellselectionmodel";
12
- export * from "./grid/plugins/slick.headermenu";
13
- export * from "./grid/plugins/slick.rowselectionmodel";