@omegagrid/tree 0.10.1 → 0.10.2

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 (85) hide show
  1. package/package.json +3 -3
  2. package/dist/adapters/dateAdapter.d.ts +0 -35
  3. package/dist/adapters/dateAdapter.d.ts.map +0 -1
  4. package/dist/adapters/dateAdapter.js +0 -222
  5. package/dist/adapters/dateAdapter.js.map +0 -1
  6. package/dist/adapters/index.d.ts +0 -2
  7. package/dist/adapters/index.d.ts.map +0 -1
  8. package/dist/adapters/index.js +0 -2
  9. package/dist/adapters/index.js.map +0 -1
  10. package/dist/constants.d.ts +0 -53
  11. package/dist/constants.d.ts.map +0 -1
  12. package/dist/constants.js +0 -11
  13. package/dist/constants.js.map +0 -1
  14. package/dist/index.d.ts +0 -6
  15. package/dist/index.d.ts.map +0 -1
  16. package/dist/index.js +0 -5
  17. package/dist/index.js.map +0 -1
  18. package/dist/model/filterModel.d.ts +0 -17
  19. package/dist/model/filterModel.d.ts.map +0 -1
  20. package/dist/model/filterModel.js +0 -60
  21. package/dist/model/filterModel.js.map +0 -1
  22. package/dist/model/index.d.ts +0 -5
  23. package/dist/model/index.d.ts.map +0 -1
  24. package/dist/model/index.js +0 -5
  25. package/dist/model/index.js.map +0 -1
  26. package/dist/model/nodeModel.d.ts +0 -100
  27. package/dist/model/nodeModel.d.ts.map +0 -1
  28. package/dist/model/nodeModel.js +0 -59
  29. package/dist/model/nodeModel.js.map +0 -1
  30. package/dist/model/selectionModel.d.ts +0 -39
  31. package/dist/model/selectionModel.d.ts.map +0 -1
  32. package/dist/model/selectionModel.js +0 -199
  33. package/dist/model/selectionModel.js.map +0 -1
  34. package/dist/model/treeAdapter.d.ts +0 -10
  35. package/dist/model/treeAdapter.d.ts.map +0 -1
  36. package/dist/model/treeAdapter.js +0 -10
  37. package/dist/model/treeAdapter.js.map +0 -1
  38. package/dist/model/treeModel.d.ts +0 -27
  39. package/dist/model/treeModel.d.ts.map +0 -1
  40. package/dist/model/treeModel.js +0 -97
  41. package/dist/model/treeModel.js.map +0 -1
  42. package/dist/options.d.ts +0 -35
  43. package/dist/options.d.ts.map +0 -1
  44. package/dist/options.js +0 -30
  45. package/dist/options.js.map +0 -1
  46. package/dist/types.d.ts +0 -42
  47. package/dist/types.d.ts.map +0 -1
  48. package/dist/types.js +0 -15
  49. package/dist/types.js.map +0 -1
  50. package/dist/ui/dropdown.d.ts +0 -68
  51. package/dist/ui/dropdown.d.ts.map +0 -1
  52. package/dist/ui/dropdown.js +0 -383
  53. package/dist/ui/dropdown.js.map +0 -1
  54. package/dist/ui/dropdown.style.d.ts +0 -2
  55. package/dist/ui/dropdown.style.d.ts.map +0 -1
  56. package/dist/ui/dropdown.style.js +0 -68
  57. package/dist/ui/dropdown.style.js.map +0 -1
  58. package/dist/ui/index.d.ts +0 -6
  59. package/dist/ui/index.d.ts.map +0 -1
  60. package/dist/ui/index.js +0 -6
  61. package/dist/ui/index.js.map +0 -1
  62. package/dist/ui/levels.d.ts +0 -13
  63. package/dist/ui/levels.d.ts.map +0 -1
  64. package/dist/ui/levels.js +0 -64
  65. package/dist/ui/levels.js.map +0 -1
  66. package/dist/ui/menu.d.ts +0 -14
  67. package/dist/ui/menu.d.ts.map +0 -1
  68. package/dist/ui/menu.js +0 -89
  69. package/dist/ui/menu.js.map +0 -1
  70. package/dist/ui/search.d.ts +0 -18
  71. package/dist/ui/search.d.ts.map +0 -1
  72. package/dist/ui/search.js +0 -82
  73. package/dist/ui/search.js.map +0 -1
  74. package/dist/ui/tree.d.ts +0 -86
  75. package/dist/ui/tree.d.ts.map +0 -1
  76. package/dist/ui/tree.js +0 -482
  77. package/dist/ui/tree.js.map +0 -1
  78. package/dist/ui/tree.renderer.d.ts +0 -7
  79. package/dist/ui/tree.renderer.d.ts.map +0 -1
  80. package/dist/ui/tree.renderer.js +0 -114
  81. package/dist/ui/tree.renderer.js.map +0 -1
  82. package/dist/ui/tree.style.d.ts +0 -3
  83. package/dist/ui/tree.style.d.ts.map +0 -1
  84. package/dist/ui/tree.style.js +0 -147
  85. package/dist/ui/tree.style.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omegagrid/tree",
3
- "version": "0.10.1",
3
+ "version": "0.10.2",
4
4
  "license": "UNLICENSED",
5
5
  "description": "Universal treeview component",
6
6
  "main": "./dist/index.js",
@@ -27,8 +27,8 @@
27
27
  "_prepublish": "yarn test && yarn lint"
28
28
  },
29
29
  "dependencies": {
30
- "@omegagrid/core": "^0.10.1",
31
- "@omegagrid/localize": "^0.10.1",
30
+ "@omegagrid/core": "^0.10.2",
31
+ "@omegagrid/localize": "^0.10.2",
32
32
  "date-fns": "^3.2.0",
33
33
  "lit": "^3.1.1",
34
34
  "lit-html": "^3.1.1",
@@ -1,35 +0,0 @@
1
- import { TreeAdapter, TreeSource } from "../model";
2
- import { dates } from "@omegagrid/core";
3
- export type DateTreeAdapterPeriodOptions = {
4
- format?: dates.DateFormatString;
5
- collapsed?: boolean;
6
- selectable?: boolean;
7
- order?: 'asc' | 'desc';
8
- };
9
- export type DateTreeAdapterOptions = {
10
- locale?: string;
11
- minDate?: Date | string;
12
- maxDate?: Date | string;
13
- monthOffset?: number;
14
- years?: DateTreeAdapterPeriodOptions | boolean;
15
- quarters?: DateTreeAdapterPeriodOptions | boolean;
16
- months?: DateTreeAdapterPeriodOptions | boolean;
17
- weeks?: DateTreeAdapterPeriodOptions | boolean;
18
- days?: DateTreeAdapterPeriodOptions | boolean;
19
- };
20
- export type PeriodType = 'y' | 'q' | 'm' | 'w' | 'd';
21
- export declare class DateTreeAdapter extends TreeAdapter {
22
- #private;
23
- static dateMap: Map<string, TreeSource>;
24
- constructor(options?: DateTreeAdapterOptions);
25
- getDates(): [Date, {
26
- y: number;
27
- q?: number;
28
- m?: number;
29
- w?: number;
30
- d: number;
31
- dw?: number;
32
- }][];
33
- getTree(): TreeSource;
34
- }
35
- //# sourceMappingURL=dateAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/dateAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,MAAM,4BAA4B,GAAG;IAC1C,MAAM,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,KAAK,GAAC,MAAM,CAAA;CACpB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,GAAC,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,IAAI,GAAC,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,4BAA4B,GAAC,OAAO,CAAC;IAC7C,QAAQ,CAAC,EAAE,4BAA4B,GAAC,OAAO,CAAC;IAChD,MAAM,CAAC,EAAE,4BAA4B,GAAC,OAAO,CAAC;IAC9C,KAAK,CAAC,EAAE,4BAA4B,GAAC,OAAO,CAAC;IAC7C,IAAI,CAAC,EAAE,4BAA4B,GAAC,OAAO,CAAC;CAC5C,CAAC;AAiDF,MAAM,MAAM,UAAU,GAAG,GAAG,GAAC,GAAG,GAAC,GAAG,GAAC,GAAG,GAAC,GAAG,CAAC;AAM7C,qBAAa,eAAgB,SAAQ,WAAW;;IAE/C,MAAM,CAAC,OAAO,0BAAiC;gBAanC,OAAO,CAAC,EAAE,sBAAsB;IAqC5C,QAAQ;WACe,MAAM;YAAM,MAAM;YAAM,MAAM;YAAK,MAAM;WAAK,MAAM;aAAO,MAAM;;IAuDxF,OAAO,IAAK,UAAU;CAmEtB"}
@@ -1,222 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _DateTreeAdapter_options, _DateTreeAdapter_formatter, _DateTreeAdapter_years, _DateTreeAdapter_quarters, _DateTreeAdapter_months, _DateTreeAdapter_weeks, _DateTreeAdapter_days, _DateTreeAdapter_levelMap, _DateTreeAdapter_levels, _DateTreeAdapter_cacheKey;
13
- import { TreeAdapter } from "../model";
14
- import { add, sub, getISODay, startOfDay, startOfYear, endOfYear, endOfDay } from 'date-fns';
15
- import { dates } from "@omegagrid/core";
16
- const defaultYearsOptions = {
17
- format: 'yyyy',
18
- collapsed: true,
19
- selectable: false,
20
- order: 'desc'
21
- };
22
- const defaultQuartersOptions = {
23
- format: 'Q.\'Q\' yyyy',
24
- collapsed: true,
25
- selectable: false,
26
- order: 'asc'
27
- };
28
- const defaultMonthsOptions = {
29
- format: 'LLLL yyyy',
30
- collapsed: true,
31
- selectable: false,
32
- order: 'asc'
33
- };
34
- const defaultWeeksOptions = {
35
- format: 'II. yyyy',
36
- collapsed: true,
37
- selectable: false,
38
- order: 'asc'
39
- };
40
- const defaultDaysOptions = {
41
- format: 'dd.MM.yyyy',
42
- collapsed: true,
43
- selectable: true,
44
- order: 'asc'
45
- };
46
- const defaultOptions = {
47
- locale: 'cs',
48
- minDate: startOfYear(startOfDay(sub(new Date(), { years: 5 }))),
49
- maxDate: endOfYear(startOfDay(add(new Date(), { years: 5 }))),
50
- years: defaultYearsOptions,
51
- quarters: defaultQuartersOptions,
52
- months: defaultMonthsOptions,
53
- weeks: false,
54
- days: defaultDaysOptions,
55
- monthOffset: 0
56
- };
57
- const convertDate = (date) => date instanceof Date
58
- ? date
59
- : new Date(date + ' 00:00:00');
60
- export class DateTreeAdapter extends TreeAdapter {
61
- constructor(options) {
62
- super();
63
- _DateTreeAdapter_options.set(this, void 0);
64
- _DateTreeAdapter_formatter.set(this, void 0);
65
- _DateTreeAdapter_years.set(this, void 0);
66
- _DateTreeAdapter_quarters.set(this, void 0);
67
- _DateTreeAdapter_months.set(this, void 0);
68
- _DateTreeAdapter_weeks.set(this, void 0);
69
- _DateTreeAdapter_days.set(this, void 0);
70
- _DateTreeAdapter_levelMap.set(this, {});
71
- _DateTreeAdapter_levels.set(this, []);
72
- _DateTreeAdapter_cacheKey.set(this, void 0);
73
- __classPrivateFieldSet(this, _DateTreeAdapter_options, Object.assign({}, defaultOptions, options), "f");
74
- __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").minDate = convertDate(__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").minDate);
75
- __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").maxDate = convertDate(__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").maxDate);
76
- if (__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").years) {
77
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").push('y');
78
- __classPrivateFieldSet(this, _DateTreeAdapter_years, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").years ? Object.assign({}, defaultYearsOptions, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").years) : null, "f");
79
- }
80
- if (__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").quarters) {
81
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").push('q');
82
- __classPrivateFieldSet(this, _DateTreeAdapter_quarters, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").quarters ? Object.assign({}, defaultQuartersOptions, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").quarters) : null, "f");
83
- }
84
- if (__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").months) {
85
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").push('m');
86
- __classPrivateFieldSet(this, _DateTreeAdapter_months, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").months ? Object.assign({}, defaultMonthsOptions, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").months) : null, "f");
87
- }
88
- if (__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").weeks) {
89
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").push('w');
90
- __classPrivateFieldSet(this, _DateTreeAdapter_weeks, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").weeks ? Object.assign({}, defaultWeeksOptions, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").weeks) : null, "f");
91
- }
92
- if (__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").days) {
93
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").push('d');
94
- __classPrivateFieldSet(this, _DateTreeAdapter_days, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").days ? Object.assign({}, defaultDaysOptions, __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").days) : null, "f");
95
- }
96
- __classPrivateFieldSet(this, _DateTreeAdapter_formatter, dates.createDateFormatter(__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").locale), "f");
97
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").forEach((p, i) => __classPrivateFieldGet(this, _DateTreeAdapter_levelMap, "f")[p] = i);
98
- __classPrivateFieldSet(this, _DateTreeAdapter_cacheKey, btoa([
99
- __classPrivateFieldGet(this, _DateTreeAdapter_levels, "f").join(''),
100
- __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").minDate.toISOString(),
101
- __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").maxDate.toISOString()
102
- ].join('_')), "f");
103
- }
104
- getDates() {
105
- const arr = [];
106
- const maxTime = (endOfDay(__classPrivateFieldGet(this, _DateTreeAdapter_options, "f").maxDate)).getTime();
107
- let date = __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").minDate;
108
- let y, q, m, w, d, dw;
109
- const mo = __classPrivateFieldGet(this, _DateTreeAdapter_options, "f").monthOffset ?? 0;
110
- while (date.getTime() < maxTime) {
111
- [y, q, m, w, d, dw] = [null, null, null, null, null, null];
112
- if (__classPrivateFieldGet(this, _DateTreeAdapter_weeks, "f")) {
113
- [w, y] = dates.getFiscalISOWeek(date, mo);
114
- dw = getISODay(date);
115
- }
116
- else
117
- y = dates.getFiscalYear(date, mo);
118
- if (__classPrivateFieldGet(this, _DateTreeAdapter_quarters, "f"))
119
- q = dates.getFiscalQuarter(date, mo);
120
- m = date.getMonth() + 1;
121
- d = date.getDate();
122
- arr.push([date, { y, q, m, w, d, dw }]);
123
- date = add(date, { days: 1 });
124
- }
125
- const yOrd = __classPrivateFieldGet(this, _DateTreeAdapter_years, "f")?.order == 'asc' ? 1 : -1;
126
- const qOrd = __classPrivateFieldGet(this, _DateTreeAdapter_quarters, "f")?.order == 'asc' ? 1 : -1;
127
- const dOrd = __classPrivateFieldGet(this, _DateTreeAdapter_days, "f")?.order == 'asc' ? 1 : -1;
128
- const mOrd = __classPrivateFieldGet(this, _DateTreeAdapter_months, "f") ? (__classPrivateFieldGet(this, _DateTreeAdapter_months, "f").order == 'asc' ? 1 : -1) : dOrd;
129
- const wOrd = __classPrivateFieldGet(this, _DateTreeAdapter_weeks, "f")?.order == 'asc' ? 1 : -1;
130
- arr.sort((a, b) => {
131
- if (__classPrivateFieldGet(this, _DateTreeAdapter_weeks, "f")) {
132
- w = (a[1].w - b[1].w) * wOrd;
133
- y = (a[1].y - b[1].y) * yOrd;
134
- if (y != 0)
135
- return y;
136
- }
137
- else if (__classPrivateFieldGet(this, _DateTreeAdapter_years, "f")) {
138
- y = (a[1].y - b[1].y) * yOrd;
139
- if (y != 0)
140
- return y;
141
- }
142
- if (__classPrivateFieldGet(this, _DateTreeAdapter_quarters, "f")) {
143
- q = (a[1].q - b[1].q) * qOrd;
144
- if (q != 0)
145
- return q;
146
- }
147
- if (__classPrivateFieldGet(this, _DateTreeAdapter_weeks, "f")) {
148
- if (w != 0)
149
- return w;
150
- }
151
- else {
152
- m = (a[1].m - b[1].m) * mOrd;
153
- if (m != 0)
154
- return m;
155
- }
156
- return __classPrivateFieldGet(this, _DateTreeAdapter_weeks, "f") ? (a[1].dw - b[1].dw) * dOrd : (a[1].d - b[1].d) * dOrd;
157
- });
158
- return arr;
159
- }
160
- getTree() {
161
- if (DateTreeAdapter.dateMap.has(__classPrivateFieldGet(this, _DateTreeAdapter_cacheKey, "f")))
162
- return DateTreeAdapter.dateMap.get(__classPrivateFieldGet(this, _DateTreeAdapter_cacheKey, "f"));
163
- const source = [];
164
- let y = 0, q = 0, m = 0, w = 0;
165
- this.getDates().forEach(([date, opts]) => {
166
- const nextYear = opts.y != y;
167
- if (__classPrivateFieldGet(this, _DateTreeAdapter_years, "f") && nextYear) {
168
- y = opts.y;
169
- source.push({
170
- k: y.toString(),
171
- v: __classPrivateFieldGet(this, _DateTreeAdapter_formatter, "f").call(this, new Date(y, 1, 1), __classPrivateFieldGet(this, _DateTreeAdapter_years, "f").format),
172
- l: __classPrivateFieldGet(this, _DateTreeAdapter_levelMap, "f").y,
173
- ch: false,
174
- collapsed: true
175
- });
176
- }
177
- if (__classPrivateFieldGet(this, _DateTreeAdapter_quarters, "f") && (opts.q != q || nextYear)) {
178
- q = opts.q;
179
- source.push({
180
- k: opts.y.toString() + q.toString(),
181
- v: __classPrivateFieldGet(this, _DateTreeAdapter_formatter, "f").call(this, new Date(y, (q - 1) * 3, 1), __classPrivateFieldGet(this, _DateTreeAdapter_quarters, "f").format),
182
- l: __classPrivateFieldGet(this, _DateTreeAdapter_levelMap, "f").q,
183
- ch: false,
184
- collapsed: true
185
- });
186
- }
187
- if (__classPrivateFieldGet(this, _DateTreeAdapter_months, "f") && (opts.m != m || nextYear)) {
188
- m = opts.m;
189
- source.push({
190
- k: date.getFullYear() + opts.m.toString().padStart(2, '0'),
191
- v: __classPrivateFieldGet(this, _DateTreeAdapter_formatter, "f").call(this, date, __classPrivateFieldGet(this, _DateTreeAdapter_months, "f").format),
192
- l: __classPrivateFieldGet(this, _DateTreeAdapter_levelMap, "f").m,
193
- ch: false,
194
- collapsed: true
195
- });
196
- }
197
- if (__classPrivateFieldGet(this, _DateTreeAdapter_weeks, "f") && (opts.w != w || nextYear)) {
198
- w = opts.w;
199
- source.push({
200
- k: opts.y + opts.w.toString().padStart(3, '0'),
201
- v: `${opts.w.toString()}. ${opts.y}`,
202
- l: __classPrivateFieldGet(this, _DateTreeAdapter_levelMap, "f").w,
203
- ch: false,
204
- collapsed: true
205
- });
206
- }
207
- if (__classPrivateFieldGet(this, _DateTreeAdapter_days, "f")) {
208
- source.push({
209
- k: __classPrivateFieldGet(this, _DateTreeAdapter_formatter, "f").call(this, date, 'yyyyMMdd'),
210
- v: __classPrivateFieldGet(this, _DateTreeAdapter_formatter, "f").call(this, date, __classPrivateFieldGet(this, _DateTreeAdapter_days, "f").format),
211
- l: __classPrivateFieldGet(this, _DateTreeAdapter_levelMap, "f").d,
212
- });
213
- }
214
- });
215
- // TODO: consider caching to indexedDB
216
- DateTreeAdapter.dateMap.set(__classPrivateFieldGet(this, _DateTreeAdapter_cacheKey, "f"), source);
217
- return source;
218
- }
219
- }
220
- _DateTreeAdapter_options = new WeakMap(), _DateTreeAdapter_formatter = new WeakMap(), _DateTreeAdapter_years = new WeakMap(), _DateTreeAdapter_quarters = new WeakMap(), _DateTreeAdapter_months = new WeakMap(), _DateTreeAdapter_weeks = new WeakMap(), _DateTreeAdapter_days = new WeakMap(), _DateTreeAdapter_levelMap = new WeakMap(), _DateTreeAdapter_levels = new WeakMap(), _DateTreeAdapter_cacheKey = new WeakMap();
221
- DateTreeAdapter.dateMap = new Map();
222
- //# sourceMappingURL=dateAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateAdapter.js","sourceRoot":"","sources":["../../src/adapters/dateAdapter.ts"],"names":[],"mappings":"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","sourcesContent":["import { TreeAdapter, TreeSource } from \"../model\";\nimport { add, sub, getISODay, startOfDay, startOfYear, endOfYear, endOfDay } from 'date-fns';\nimport { dates } from \"@omegagrid/core\";\n\nexport type DateTreeAdapterPeriodOptions = {\n\tformat?: dates.DateFormatString,\n\tcollapsed?: boolean,\n\tselectable?: boolean,\n\torder?: 'asc'|'desc'\n};\n\nexport type DateTreeAdapterOptions = {\n\tlocale?: string,\n\tminDate?: Date|string,\n\tmaxDate?: Date|string,\n\tmonthOffset?: number,\n\tyears?: DateTreeAdapterPeriodOptions|boolean,\n\tquarters?: DateTreeAdapterPeriodOptions|boolean,\n\tmonths?: DateTreeAdapterPeriodOptions|boolean,\n\tweeks?: DateTreeAdapterPeriodOptions|boolean,\n\tdays?: DateTreeAdapterPeriodOptions|boolean,\n};\n\nconst defaultYearsOptions: DateTreeAdapterPeriodOptions = {\n\tformat: 'yyyy',\n\tcollapsed: true,\n\tselectable: false,\n\torder: 'desc'\n};\n\nconst defaultQuartersOptions: DateTreeAdapterPeriodOptions = {\n\tformat: 'Q.\\'Q\\' yyyy',\n\tcollapsed: true,\n\tselectable: false,\n\torder: 'asc'\n};\n\nconst defaultMonthsOptions: DateTreeAdapterPeriodOptions = {\n\tformat: 'LLLL yyyy',\n\tcollapsed: true,\n\tselectable: false,\n\torder: 'asc'\n};\n\nconst defaultWeeksOptions: DateTreeAdapterPeriodOptions = {\n\tformat: 'II. yyyy',\n\tcollapsed: true,\n\tselectable: false,\n\torder: 'asc'\n};\n\nconst defaultDaysOptions: DateTreeAdapterPeriodOptions = {\n\tformat: 'dd.MM.yyyy',\n\tcollapsed: true,\n\tselectable: true,\n\torder: 'asc'\n};\n\nconst defaultOptions: DateTreeAdapterOptions = {\n\tlocale: 'cs',\n\tminDate: startOfYear(startOfDay(sub(new Date(), {years: 5}))),\n\tmaxDate: endOfYear(startOfDay(add(new Date(), {years: 5}))),\n\tyears: defaultYearsOptions,\n\tquarters: defaultQuartersOptions,\n\tmonths: defaultMonthsOptions,\n\tweeks: false,\n\tdays: defaultDaysOptions,\n\tmonthOffset: 0\n};\n\nexport type PeriodType = 'y'|'q'|'m'|'w'|'d';\n\nconst convertDate = (date: Date|string) => date instanceof Date \n\t? date \n\t: new Date(date + ' 00:00:00');\n\nexport class DateTreeAdapter extends TreeAdapter {\n\n\tstatic dateMap = new Map<string, TreeSource>();\n\n\t#options: DateTreeAdapterOptions;\n\t#formatter: dates.DateFormatterFunction;\n\t#years: DateTreeAdapterPeriodOptions;\n\t#quarters: DateTreeAdapterPeriodOptions;\n\t#months: DateTreeAdapterPeriodOptions;\n\t#weeks: DateTreeAdapterPeriodOptions;\n\t#days: DateTreeAdapterPeriodOptions;\n\t#levelMap: Partial<Record<PeriodType, number>> = {};\n\t#levels: PeriodType[] = [];\n\t#cacheKey: string;\n\n\tconstructor(options?: DateTreeAdapterOptions) {\n\t\tsuper();\n\t\tthis.#options = Object.assign({}, defaultOptions, options);\n\t\tthis.#options.minDate = convertDate(this.#options.minDate);\n\t\tthis.#options.maxDate = convertDate(this.#options.maxDate);\n\n\t\tif (this.#options.years) {\n\t\t\tthis.#levels.push('y');\n\t\t\tthis.#years = this.#options.years ? Object.assign({}, defaultYearsOptions, this.#options.years) : null;\n\t\t}\n\t\tif (this.#options.quarters) {\n\t\t\tthis.#levels.push('q');\n\t\t\tthis.#quarters = this.#options.quarters ? Object.assign({}, defaultQuartersOptions, this.#options.quarters) : null;\n\t\t}\n\t\tif (this.#options.months) {\n\t\t\tthis.#levels.push('m');\n\t\t\tthis.#months = this.#options.months ? Object.assign({}, defaultMonthsOptions, this.#options.months) : null;\n\t\t}\n\t\tif (this.#options.weeks) {\n\t\t\tthis.#levels.push('w');\n\t\t\tthis.#weeks = this.#options.weeks ? Object.assign({}, defaultWeeksOptions, this.#options.weeks) : null;\n\t\t}\n\t\tif (this.#options.days) {\n\t\t\tthis.#levels.push('d');\n\t\t\tthis.#days = this.#options.days ? Object.assign({}, defaultDaysOptions, this.#options.days) : null;\n\t\t}\n\n\t\tthis.#formatter = dates.createDateFormatter(this.#options.locale);\n\t\tthis.#levels.forEach((p, i) => this.#levelMap[p] = i);\n\n\t\tthis.#cacheKey = btoa([\n\t\t\tthis.#levels.join(''),\n\t\t\tthis.#options.minDate.toISOString(),\n\t\t\tthis.#options.maxDate.toISOString()\n\t\t].join('_'));\n\t}\n\n\tgetDates() {\n\t\tconst arr: [Date, {y: number, q?: number, m?: number, w?:number, d: number, dw?: number}][] = [];\n\t\tconst maxTime = (endOfDay(this.#options.maxDate as Date)).getTime();\n\t\tlet date = this.#options.minDate as Date;\n\t\tlet y: number, q: number, m: number, w: number, d: number, dw: number;\n\t\tconst mo = this.#options.monthOffset ?? 0;\n\t\twhile (date.getTime() < maxTime) {\n\t\t\t[y, q, m, w, d, dw] = [null, null, null, null, null, null];\n\t\t\t\n\t\t\tif (this.#weeks) {\n\t\t\t\t[w, y] = dates.getFiscalISOWeek(date, mo);\n\t\t\t\tdw = getISODay(date);\n\t\t\t} else y = dates.getFiscalYear(date, mo);\n\n\t\t\tif (this.#quarters) q = dates.getFiscalQuarter(date, mo);\n\t\t\tm = date.getMonth() + 1;\n\t\t\td = date.getDate();\n\n\t\t\tarr.push([date, { y, q, m, w, d, dw }]);\n\t\t\tdate = add(date, {days: 1});\n\t\t}\n\n\t\tconst yOrd = this.#years?.order == 'asc' ? 1 : -1;\n\t\tconst qOrd = this.#quarters?.order == 'asc' ? 1 : -1;\n\t\tconst dOrd = this.#days?.order == 'asc' ? 1 : -1;\n\t\tconst mOrd = this.#months ? (this.#months.order == 'asc' ? 1 : -1) : dOrd;\n\t\tconst wOrd = this.#weeks?.order == 'asc' ? 1 : -1;\n\n\t\tarr.sort((a, b) => {\n\t\t\tif (this.#weeks) {\n\t\t\t\tw = (a[1].w - b[1].w) * wOrd;\n\t\t\t\ty = (a[1].y - b[1].y) * yOrd;\n\t\t\t\tif (y != 0) return y;\n\t\t\t} else if (this.#years) {\n\t\t\t\ty = (a[1].y - b[1].y) * yOrd;\n\t\t\t\tif (y != 0) return y;\n\t\t\t}\n\n\t\t\tif (this.#quarters) {\n\t\t\t\tq = (a[1].q - b[1].q) * qOrd;\n\t\t\t\tif (q != 0) return q;\n\t\t\t}\n\n\t\t\tif (this.#weeks) {\n\t\t\t\tif (w != 0) return w;\n\t\t\t} else {\n\t\t\t\tm = (a[1].m - b[1].m) * mOrd;\n\t\t\t\tif (m != 0) return m;\n\t\t\t}\n\t\t\t\n\t\t\treturn this.#weeks ? (a[1].dw - b[1].dw) * dOrd : (a[1].d - b[1].d) * dOrd;\n\t\t});\n\n\t\treturn arr;\n\t}\n\n\tgetTree() : TreeSource {\n\t\tif (DateTreeAdapter.dateMap.has(this.#cacheKey)) return DateTreeAdapter.dateMap.get(this.#cacheKey);\n\n\t\tconst source: TreeSource = [];\n\t\tlet y = 0, q = 0, m = 0, w = 0;\n\t\t\n\t\tthis.getDates().forEach(([date, opts]) => {\n\t\t\tconst nextYear = opts.y != y;\n\t\t\t\n\t\t\tif (this.#years && nextYear) {\n\t\t\t\ty = opts.y;\n\t\t\t\tsource.push({\n\t\t\t\t\tk: y.toString(),\n\t\t\t\t\tv: this.#formatter(new Date(y, 1, 1), this.#years.format),\n\t\t\t\t\tl: this.#levelMap.y,\n\t\t\t\t\tch: false,\n\t\t\t\t\tcollapsed: true\n\t\t\t\t});\n\t\t\t}\n\t\t\t\n\t\t\tif (this.#quarters && (opts.q != q || nextYear)) {\n\t\t\t\tq = opts.q;\n\t\t\t\tsource.push({\n\t\t\t\t\tk: opts.y.toString() + q.toString(),\n\t\t\t\t\tv: this.#formatter(new Date(y, (q - 1) * 3, 1), this.#quarters.format),\n\t\t\t\t\tl: this.#levelMap.q,\n\t\t\t\t\tch: false,\n\t\t\t\t\tcollapsed: true\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (this.#months && (opts.m != m || nextYear)) {\n\t\t\t\tm = opts.m;\n\t\t\t\tsource.push({\n\t\t\t\t\tk: date.getFullYear() + opts.m.toString().padStart(2, '0'),\n\t\t\t\t\tv: this.#formatter(date, this.#months.format),\n\t\t\t\t\tl: this.#levelMap.m,\n\t\t\t\t\tch: false,\n\t\t\t\t\tcollapsed: true\n\t\t\t\t});\n\t\t\t}\n\t\t\t\n\t\t\tif (this.#weeks && (opts.w != w || nextYear)) {\n\t\t\t\tw = opts.w;\n\t\t\t\tsource.push({\n\t\t\t\t\tk: opts.y + opts.w.toString().padStart(3, '0'),\n\t\t\t\t\tv: `${opts.w.toString()}. ${opts.y}`,\n\t\t\t\t\tl: this.#levelMap.w,\n\t\t\t\t\tch: false,\n\t\t\t\t\tcollapsed: true\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (this.#days) {\n\t\t\t\tsource.push({\n\t\t\t\t\tk: this.#formatter(date, 'yyyyMMdd'),\n\t\t\t\t\tv: this.#formatter(date, this.#days.format),\n\t\t\t\t\tl: this.#levelMap.d,\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\t// TODO: consider caching to indexedDB\n\t\tDateTreeAdapter.dateMap.set(this.#cacheKey, source);\n\t\treturn source;\n\t}\n\n}"]}
@@ -1,2 +0,0 @@
1
- export * from './dateAdapter';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './dateAdapter';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC","sourcesContent":["export * from './dateAdapter';"]}
@@ -1,53 +0,0 @@
1
- declare const _default: {
2
- PREFIX: string;
3
- DEFAULT_ACCENT_COLOR: string;
4
- DEFAULT_ACCENT_COLOR_2: import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | import("color")<string | number | any | ArrayLike<number> | {
5
- [key: string]: any;
6
- }> | ArrayLike<number> | {
7
- [key: string]: any;
8
- }> | ArrayLike<number> | {
9
- [key: string]: any;
10
- }> | ArrayLike<number> | {
11
- [key: string]: any;
12
- }> | ArrayLike<number> | {
13
- [key: string]: any;
14
- }> | ArrayLike<number> | {
15
- [key: string]: any;
16
- }> | ArrayLike<number> | {
17
- [key: string]: any;
18
- }> | ArrayLike<number> | {
19
- [key: string]: any;
20
- }> | ArrayLike<number> | {
21
- [key: string]: any;
22
- }> | ArrayLike<number> | {
23
- [key: string]: any;
24
- }> | ArrayLike<number> | {
25
- [key: string]: any;
26
- }> | ArrayLike<number> | {
27
- [key: string]: any;
28
- }>;
29
- SIZER_SIZE: number;
30
- SLIDER_SIZE: number;
31
- SLIDER_MIN_LENGTH: number;
32
- EXPANDER_SIZE: number;
33
- LIST_ITEM_HEIGHT: number;
34
- LIST_RENDERING_TRESHOLD: number;
35
- LIST_AUTOSCROLL_TRESHOLD: number;
36
- LIST_AUTOSCROLL_DELAY: number;
37
- DEFAULT_TEXT_HIGHLIGHT_COLOR: string;
38
- TOOLTIP_MARGIN: number;
39
- MENU_ITEM_HEIGHT: number;
40
- COLORPICKER_COLOR_SIZE: number;
41
- DEFAULT_NUMBER_FORMAT: string;
42
- BUTTON_HEIGHT: number;
43
- FONT_SIZE: number;
44
- FLOATING_WINDOW_MAX_WIDTH: number;
45
- DEFAULT_NODE_HEIGHT: number;
46
- DEFAULT_MAX_NODES: number;
47
- RENDERING_NODE_TRESHOLD: number;
48
- TREE_COLUMN_WIDTH: number;
49
- MAX_HIGHLIGHT_ITEM_OFFSET: number;
50
- SEARCH_DEBOUNCE_DELAY: number;
51
- };
52
- export default _default;
53
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wBAQC"}
package/dist/constants.js DELETED
@@ -1,11 +0,0 @@
1
- import { constants as coreConstants } from '@omegagrid/core';
2
- export default {
3
- DEFAULT_NODE_HEIGHT: 20,
4
- DEFAULT_MAX_NODES: 10,
5
- RENDERING_NODE_TRESHOLD: 20,
6
- TREE_COLUMN_WIDTH: 16,
7
- MAX_HIGHLIGHT_ITEM_OFFSET: 2,
8
- SEARCH_DEBOUNCE_DELAY: 300,
9
- ...coreConstants
10
- };
11
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE7D,eAAe;IACd,mBAAmB,EAAE,EAAE;IACvB,iBAAiB,EAAE,EAAE;IACrB,uBAAuB,EAAE,EAAE;IAC3B,iBAAiB,EAAE,EAAE;IACrB,yBAAyB,EAAE,CAAC;IAC5B,qBAAqB,EAAE,GAAG;IAC1B,GAAG,aAAa;CAChB,CAAA","sourcesContent":["import { constants as coreConstants } from '@omegagrid/core';\n\nexport default {\n\tDEFAULT_NODE_HEIGHT: 20,\n\tDEFAULT_MAX_NODES: 10,\n\tRENDERING_NODE_TRESHOLD: 20,\n\tTREE_COLUMN_WIDTH: 16,\n\tMAX_HIGHLIGHT_ITEM_OFFSET: 2,\n\tSEARCH_DEBOUNCE_DELAY: 300,\n\t...coreConstants\n}"]}
package/dist/index.d.ts DELETED
@@ -1,6 +0,0 @@
1
- export * from './ui';
2
- export * from './model';
3
- export * from './adapters';
4
- export * from './types';
5
- export { Options as TreeOptions } from './options';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC"}
package/dist/index.js DELETED
@@ -1,5 +0,0 @@
1
- export * from './ui';
2
- export * from './model';
3
- export * from './adapters';
4
- export * from './types';
5
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC","sourcesContent":["export * from './ui';\nexport * from './model';\nexport * from './adapters';\nexport * from './types';\nexport { Options as TreeOptions } from './options';"]}
@@ -1,17 +0,0 @@
1
- import { TreeModel } from './treeModel';
2
- export type FilterSettings = {
3
- term: string;
4
- propertyc: string;
5
- };
6
- export type Matches = [number, number][];
7
- export declare class FilterModel {
8
- model: TreeModel;
9
- private _term;
10
- private _property;
11
- get term(): string;
12
- get hasFilter(): boolean;
13
- constructor(model: TreeModel);
14
- filter(term: string): void;
15
- clear(): void;
16
- }
17
- //# sourceMappingURL=filterModel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"filterModel.d.ts","sourceRoot":"","sources":["../../src/model/filterModel.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;AAezC,qBAAa,WAAW;IASJ,KAAK,EAAE,SAAS;IAPnC,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAA4B;IAE7C,IAAI,IAAI,WAAwB;IAEhC,IAAI,SAAS,YAAoD;gBAE9C,KAAK,EAAE,SAAS;IAEnC,MAAM,CAAC,IAAI,EAAE,MAAM;IA8BnB,KAAK;CAUL"}
@@ -1,60 +0,0 @@
1
- /* eslint "@typescript-eslint/no-unused-vars": "off" */
2
- import { html, utils } from '@omegagrid/core';
3
- import { tree } from '@omegagrid/core';
4
- const createMatcher = (term, property) => {
5
- const regex = new RegExp(`${utils.escapeRegExp(utils.removeAccents(term))}`, 'ig');
6
- let match;
7
- return (item) => {
8
- const matches = [];
9
- while (match = regex.exec(utils.removeAccents((item[property] ?? "").toString()))) {
10
- matches.push([match.index, regex.lastIndex]);
11
- }
12
- return matches;
13
- };
14
- };
15
- export class FilterModel {
16
- get term() { return this._term; }
17
- get hasFilter() { return this._term == '' || this._term == null; }
18
- constructor(model) {
19
- this.model = model;
20
- this._term = null;
21
- this._property = 'value';
22
- }
23
- filter(term) {
24
- this._term = term;
25
- const matcher = createMatcher(this._term, this._property);
26
- let matches;
27
- this.model.nodes.forEach(node => {
28
- node.collapsed = false;
29
- node.htmlValue = null;
30
- if (term) {
31
- matches = matcher(node);
32
- node.filterState = matches.length > 0 ? tree.FilterState.Matched : tree.FilterState.Filtered;
33
- }
34
- else {
35
- node.filterState = tree.FilterState.Matched;
36
- node.collapse();
37
- }
38
- if (node.filterState == tree.FilterState.Matched) {
39
- node.walkUp(parentNode => {
40
- if (parentNode.filterState == tree.FilterState.Filtered)
41
- parentNode.filterState = tree.FilterState.ChildMatched;
42
- });
43
- if (term) {
44
- node.htmlValue = html.highlightText(node.value, matches);
45
- }
46
- }
47
- });
48
- this.model.indexVisibleNodes();
49
- }
50
- clear() {
51
- this._term = null;
52
- this.model.nodes.forEach(node => {
53
- node.filterState = tree.FilterState.Matched;
54
- node.collapsed = false;
55
- node.htmlValue = null;
56
- });
57
- this.model.indexVisibleNodes();
58
- }
59
- }
60
- //# sourceMappingURL=filterModel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"filterModel.js","sourceRoot":"","sources":["../../src/model/filterModel.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint \"@typescript-eslint/no-unused-vars\": \"off\" */\n\nimport { html, utils } from '@omegagrid/core';\nimport { tree } from '@omegagrid/core';\nimport { TreeModel } from './treeModel';\nimport { NodeModel } from './nodeModel';\n\nexport type FilterSettings = {\n\tterm: string;\n\tpropertyc: string;\n};\n\nexport type Matches = [number, number][];\n\nconst createMatcher = <TItem>(term: string, property: keyof TItem) => {\n\tconst regex = new RegExp(`${utils.escapeRegExp(utils.removeAccents(term))}`, 'ig');\n\tlet match: RegExpExecArray;\n\treturn (item: TItem) => {\n\t\tconst matches: Matches = [];\n\t\twhile (match = regex.exec(utils.removeAccents((item[property] ?? \"\").toString()))) {\n\t\t\tmatches.push([match.index, regex.lastIndex]);\n\t\t}\n\t\treturn matches;\n\t}\n};\n\n\nexport class FilterModel {\n\n\tprivate _term: string = null;\n\tprivate _property: keyof NodeModel = 'value';\n\n\tget term() { return this._term }\n\n\tget hasFilter() { return this._term == '' || this._term == null }\n\n\tconstructor(public model: TreeModel) { }\n\n\tfilter(term: string) {\n\t\tthis._term = term;\n\t\tconst matcher = createMatcher<NodeModel>(this._term, this._property);\n\t\tlet matches: Matches;\n\n\t\tthis.model.nodes.forEach(node => {\n\t\t\tnode.collapsed = false;\n\t\t\tnode.htmlValue = null;\n\t\t\tif (term) {\n\t\t\t\tmatches = matcher(node);\n\t\t\t\tnode.filterState = matches.length > 0 ? tree.FilterState.Matched : tree.FilterState.Filtered;\n\t\t\t} else {\n\t\t\t\tnode.filterState = tree.FilterState.Matched;\n\t\t\t\tnode.collapse();\n\t\t\t}\n\t\t\t\n\t\t\tif (node.filterState == tree.FilterState.Matched) {\n\t\t\t\tnode.walkUp(parentNode => {\n\t\t\t\t\tif (parentNode.filterState == tree.FilterState.Filtered) parentNode.filterState = tree.FilterState.ChildMatched;\n\t\t\t\t});\n\n\t\t\t\tif (term) {\n\t\t\t\t\tnode.htmlValue = html.highlightText(node.value, matches)\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis.model.indexVisibleNodes();\n\t}\n\n\tclear() {\n\t\tthis._term = null;\n\t\tthis.model.nodes.forEach(node => {\n\t\t\tnode.filterState = tree.FilterState.Matched;\n\t\t\tnode.collapsed = false;\n\t\t\tnode.htmlValue = null;\n\t\t});\n\t\tthis.model.indexVisibleNodes();\n\t}\n\n}"]}
@@ -1,5 +0,0 @@
1
- export * from './nodeModel';
2
- export * from './selectionModel';
3
- export * from './treeAdapter';
4
- export * from './treeModel';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './nodeModel';
2
- export * from './selectionModel';
3
- export * from './treeAdapter';
4
- export * from './treeModel';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC","sourcesContent":["export * from './nodeModel';\nexport * from './selectionModel';\nexport * from './treeAdapter';\nexport * from './treeModel';"]}