@zeedhi/common 1.50.0 → 1.53.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.
@@ -2317,7 +2317,12 @@ class Container extends ComponentRender {
2317
2317
  * Removes viewport maximum-width size breakpoints.
2318
2318
  */
2319
2319
  this.fluid = true;
2320
+ /**
2321
+ * Define if the container is a scroll view
2322
+ */
2323
+ this.scrollView = false;
2320
2324
  this.fluid = this.getInitValue('fluid', props.fluid, this.fluid);
2325
+ this.scrollView = this.getInitValue('scrollView', props.scrollView, this.scrollView);
2321
2326
  this.fillHeight = this.getInitValue('fillHeight', props.fillHeight, this.fillHeight);
2322
2327
  this.height = this.getInitValue('height', props.height, this.height);
2323
2328
  this.maxHeight = this.getInitValue('maxHeight', props.maxHeight, this.maxHeight);
@@ -4456,8 +4461,8 @@ class Frame extends ComponentRender {
4456
4461
  this.metadata = this.overrideNamedPropsFunc(this.metadata);
4457
4462
  }
4458
4463
  }
4459
- catch (_a) {
4460
- this.notFoundError();
4464
+ catch (e) {
4465
+ this.notFoundError(e);
4461
4466
  }
4462
4467
  finally {
4463
4468
  this.loading = false;
@@ -4478,7 +4483,10 @@ class Frame extends ComponentRender {
4478
4483
  this.getMetadata();
4479
4484
  });
4480
4485
  }
4481
- notFoundError() { }
4486
+ notFoundError(e) {
4487
+ if (this.rejectLoad)
4488
+ this.rejectLoad(e);
4489
+ }
4482
4490
  requestPage() {
4483
4491
  return __awaiter(this, void 0, void 0, function* () {
4484
4492
  if (!this.cache) {
@@ -4504,6 +4512,8 @@ class Frame extends ComponentRender {
4504
4512
  * @param element
4505
4513
  */
4506
4514
  afterLoad(event, element) {
4515
+ if (this.resolveLoad)
4516
+ this.resolveLoad(this.metadata);
4507
4517
  this.callEvent('onAfterLoad', {
4508
4518
  event, element, component: this,
4509
4519
  });
@@ -4544,6 +4554,18 @@ class Frame extends ComponentRender {
4544
4554
  return caches.delete(Frame.cacheName);
4545
4555
  });
4546
4556
  }
4557
+ waitLoading() {
4558
+ return __awaiter(this, void 0, void 0, function* () {
4559
+ return new Promise((resolve, reject) => {
4560
+ if (!this.loading) {
4561
+ resolve(this.metadata);
4562
+ return;
4563
+ }
4564
+ this.resolveLoad = resolve;
4565
+ this.rejectLoad = reject;
4566
+ });
4567
+ });
4568
+ }
4547
4569
  }
4548
4570
  Frame.cacheName = 'zd-frame-cache';
4549
4571
 
@@ -4557,8 +4579,8 @@ class FramePage extends Frame {
4557
4579
  this.notFoundRoute = this.getInitValue('notFoundRoute', props.notFoundRoute, this.notFoundRoute);
4558
4580
  this.createAccessors();
4559
4581
  }
4560
- notFoundError() {
4561
- super.notFoundError();
4582
+ notFoundError(e) {
4583
+ super.notFoundError(e);
4562
4584
  Router.replace(this.notFoundRoute);
4563
4585
  }
4564
4586
  /**
@@ -4780,6 +4802,23 @@ class ColumnNotFoundError extends Error {
4780
4802
  }
4781
4803
  }
4782
4804
 
4805
+ class IterableController {
4806
+ constructor(iterable) {
4807
+ this.searchInValue = undefined;
4808
+ this.columns = iterable.columns;
4809
+ }
4810
+ get searchIn() {
4811
+ return this.searchInValue || this.columns.reduce((result, column) => {
4812
+ if (column.type !== 'action' && column.isVisible)
4813
+ result.push(column.name);
4814
+ return result;
4815
+ }, []);
4816
+ }
4817
+ set searchIn(value) {
4818
+ this.searchInValue = value;
4819
+ }
4820
+ }
4821
+
4783
4822
  /**
4784
4823
  * Base class for Iterable components.
4785
4824
  */
@@ -4815,16 +4854,14 @@ class Iterable extends ComponentRender {
4815
4854
  */
4816
4855
  this.actionsApplied = {};
4817
4856
  this.columns = this.getColumns(props.columns || this.columns);
4818
- this.datasource = DatasourceFactory.factory(Object.assign(Object.assign({}, props.datasource), { searchIn: ((_a = props.datasource) === null || _a === void 0 ? void 0 : _a.searchIn) || this.getSearchColumns() }));
4857
+ this.createController();
4858
+ this.datasource = DatasourceFactory.factory(Object.assign(Object.assign({}, props.datasource), { searchIn: ((_a = props.datasource) === null || _a === void 0 ? void 0 : _a.searchIn) || `{{IterableController_${this.name}.searchIn}}` }));
4819
4859
  this.pageSizes = this.getInitValue('pageSizes', props.pageSizes, this.pageSizes);
4820
4860
  this.virtualScroll = this.getInitValue('virtualScroll', props.virtualScroll, this.virtualScroll);
4821
4861
  }
4822
- getSearchColumns() {
4823
- return this.columns.reduce((result, column) => {
4824
- if (column.type !== 'action')
4825
- result.push(column.name);
4826
- return result;
4827
- }, []);
4862
+ createController() {
4863
+ const controller = new IterableController(this);
4864
+ Loader.addController(`IterableController_${this.name}`, controller);
4828
4865
  }
4829
4866
  /**
4830
4867
  * Retrieves columns instances
@@ -5635,6 +5672,7 @@ class GridEditable extends Grid {
5635
5672
  });
5636
5673
  }
5637
5674
  } });
5675
+ this.updateOriginalRow(key, row);
5638
5676
  return Object.assign(Object.assign({}, componentProps), { name: compName, parent: this, align: column.align, showLabel: false, showHelper: false, dense: true, value: colValue, events: newEvents, autofill: false });
5639
5677
  }
5640
5678
  checkLookupData(column, row, componentProps) {
@@ -5682,6 +5720,10 @@ class GridEditable extends Grid {
5682
5720
  this.editedRows = rows;
5683
5721
  }
5684
5722
  }
5723
+ updateOriginalRow(key, row) {
5724
+ if (this.editedRows[key] !== undefined)
5725
+ this.editedRows[key].originalRow = row;
5726
+ }
5685
5727
  /**
5686
5728
  * Checks if column is edited
5687
5729
  * @param column Column
@@ -9258,6 +9300,7 @@ class SelectTree extends TextInput {
9258
9300
  * Uses delayed loading to load tree branches
9259
9301
  */
9260
9302
  this.fetchOnDemand = false;
9303
+ this.savedNodes = undefined;
9261
9304
  this.nodes = this.getInitValue('nodes', props.nodes, this.nodes);
9262
9305
  this.alwaysOpen = this.getInitValue('alwaysOpen', props.alwaysOpen, this.alwaysOpen);
9263
9306
  this.flattenSearchResults = this.getInitValue('flattenSearchResults', props.flattenSearchResults, this.flattenSearchResults);
@@ -9334,7 +9377,7 @@ class SelectTree extends TextInput {
9334
9377
  }
9335
9378
  createNodeFromRow(row) {
9336
9379
  let children;
9337
- if (this.fetchOnDemand) {
9380
+ if (this.fetchOnDemand && !this.datasource.search) {
9338
9381
  children = null;
9339
9382
  }
9340
9383
  else {
@@ -9414,6 +9457,26 @@ class SelectTree extends TextInput {
9414
9457
  * Triggered after the search query changes
9415
9458
  */
9416
9459
  searchChange(searchQuery, element) {
9460
+ if (this.fetchOnDemand) {
9461
+ if (!searchQuery && this.savedNodes) {
9462
+ this.nodes = this.savedNodes;
9463
+ this.savedNodes = undefined;
9464
+ this.datasource.search = '';
9465
+ }
9466
+ else {
9467
+ if (!this.savedNodes) {
9468
+ this.savedNodes = [...this.nodes];
9469
+ }
9470
+ this.datasource.setSearch(searchQuery).then(() => {
9471
+ const treeData = this.treeDataStructure.treeData.map((item) => {
9472
+ delete item[this.parentField];
9473
+ item.tree__children = [];
9474
+ return item;
9475
+ });
9476
+ this.nodes = this.createChildrenNodes(treeData);
9477
+ });
9478
+ }
9479
+ }
9417
9480
  this.callEvent('onSearchChange', { element, component: this, searchQuery });
9418
9481
  }
9419
9482
  isDisable(node) {
@@ -9443,7 +9506,7 @@ class SelectTree extends TextInput {
9443
9506
  return !hasError;
9444
9507
  }
9445
9508
  /**
9446
- * Triggered when the data is inputted.
9509
+ * Triggered when the data is inputed.
9447
9510
  * @param value search value
9448
9511
  * @param event DOM event
9449
9512
  * @param element Element focused
@@ -9452,6 +9515,7 @@ class SelectTree extends TextInput {
9452
9515
  if (value !== this.lastInputValue) {
9453
9516
  this.lastInputValue = value;
9454
9517
  this.callInputEvent({ element, component: this });
9518
+ this.searchChange(value, element);
9455
9519
  }
9456
9520
  }
9457
9521
  get searchValue() {
@@ -9926,9 +9990,11 @@ class Tab extends Component {
9926
9990
  super(props);
9927
9991
  this.disabled = false;
9928
9992
  this.tabTitle = '';
9993
+ this.lazyLoad = true;
9929
9994
  this.tabTitle = this.getInitValue('tabTitle', props.tabTitle, this.tabTitle);
9930
9995
  this.disabled = this.getInitValue('disabled', props.disabled, this.disabled);
9931
9996
  this.flex = this.getInitValue('flex', props.flex, this.flex);
9997
+ this.lazyLoad = this.getInitValue('lazyLoad', props.lazyLoad, this.lazyLoad);
9932
9998
  this.createAccessors();
9933
9999
  }
9934
10000
  }
@@ -11192,8 +11258,13 @@ class TreeGridEditable extends TreeGrid {
11192
11258
  });
11193
11259
  }
11194
11260
  } });
11261
+ this.updateOriginalRow(key, row);
11195
11262
  return Object.assign(Object.assign({}, componentProps), { name: compName, parent: this, align: column.align, showLabel: false, showHelper: false, dense: true, value: colValue, events: newEvents, autofill: false });
11196
11263
  }
11264
+ updateOriginalRow(key, row) {
11265
+ if (this.editedRows[key] !== undefined)
11266
+ this.editedRows[key].originalRow = row;
11267
+ }
11197
11268
  checkLookupData(column, row, componentProps) {
11198
11269
  if (row[column.name] && column.lookupData && componentProps.datasource) {
11199
11270
  componentProps.datasource.data = componentProps.datasource.data || [];
@@ -12564,7 +12635,7 @@ class Report {
12564
12635
  const { route } = reportType;
12565
12636
  const { name, columns, datasource } = this.iterable;
12566
12637
  const { groupedData } = Object.assign({}, this.iterable);
12567
- const formattedColumns = this.removeActionColumns(columns);
12638
+ const formattedColumns = this.removeColumns(columns);
12568
12639
  const metadataObj = yield reportType.buildMetadata(name, this.title, formattedColumns, datasource.filter, portrait);
12569
12640
  let dataset;
12570
12641
  if ((reportType instanceof XLS2Report || reportType instanceof XLS3Report) && groupedData) {
@@ -12606,8 +12677,8 @@ class Report {
12606
12677
  return new URL(reportFile, this.fileEndPoint).href;
12607
12678
  });
12608
12679
  }
12609
- removeActionColumns(columns) {
12610
- return columns.filter((item) => item.type !== 'action');
12680
+ removeColumns(columns) {
12681
+ return columns.filter((item) => (item.type !== 'action' && item.isVisible));
12611
12682
  }
12612
12683
  }
12613
12684
 
@@ -2324,7 +2324,12 @@
2324
2324
  * Removes viewport maximum-width size breakpoints.
2325
2325
  */
2326
2326
  this.fluid = true;
2327
+ /**
2328
+ * Define if the container is a scroll view
2329
+ */
2330
+ this.scrollView = false;
2327
2331
  this.fluid = this.getInitValue('fluid', props.fluid, this.fluid);
2332
+ this.scrollView = this.getInitValue('scrollView', props.scrollView, this.scrollView);
2328
2333
  this.fillHeight = this.getInitValue('fillHeight', props.fillHeight, this.fillHeight);
2329
2334
  this.height = this.getInitValue('height', props.height, this.height);
2330
2335
  this.maxHeight = this.getInitValue('maxHeight', props.maxHeight, this.maxHeight);
@@ -4463,8 +4468,8 @@
4463
4468
  this.metadata = this.overrideNamedPropsFunc(this.metadata);
4464
4469
  }
4465
4470
  }
4466
- catch (_a) {
4467
- this.notFoundError();
4471
+ catch (e) {
4472
+ this.notFoundError(e);
4468
4473
  }
4469
4474
  finally {
4470
4475
  this.loading = false;
@@ -4485,7 +4490,10 @@
4485
4490
  this.getMetadata();
4486
4491
  });
4487
4492
  }
4488
- notFoundError() { }
4493
+ notFoundError(e) {
4494
+ if (this.rejectLoad)
4495
+ this.rejectLoad(e);
4496
+ }
4489
4497
  requestPage() {
4490
4498
  return __awaiter(this, void 0, void 0, function* () {
4491
4499
  if (!this.cache) {
@@ -4511,6 +4519,8 @@
4511
4519
  * @param element
4512
4520
  */
4513
4521
  afterLoad(event, element) {
4522
+ if (this.resolveLoad)
4523
+ this.resolveLoad(this.metadata);
4514
4524
  this.callEvent('onAfterLoad', {
4515
4525
  event, element, component: this,
4516
4526
  });
@@ -4551,6 +4561,18 @@
4551
4561
  return caches.delete(Frame.cacheName);
4552
4562
  });
4553
4563
  }
4564
+ waitLoading() {
4565
+ return __awaiter(this, void 0, void 0, function* () {
4566
+ return new Promise((resolve, reject) => {
4567
+ if (!this.loading) {
4568
+ resolve(this.metadata);
4569
+ return;
4570
+ }
4571
+ this.resolveLoad = resolve;
4572
+ this.rejectLoad = reject;
4573
+ });
4574
+ });
4575
+ }
4554
4576
  }
4555
4577
  Frame.cacheName = 'zd-frame-cache';
4556
4578
 
@@ -4564,8 +4586,8 @@
4564
4586
  this.notFoundRoute = this.getInitValue('notFoundRoute', props.notFoundRoute, this.notFoundRoute);
4565
4587
  this.createAccessors();
4566
4588
  }
4567
- notFoundError() {
4568
- super.notFoundError();
4589
+ notFoundError(e) {
4590
+ super.notFoundError(e);
4569
4591
  core.Router.replace(this.notFoundRoute);
4570
4592
  }
4571
4593
  /**
@@ -4787,6 +4809,23 @@
4787
4809
  }
4788
4810
  }
4789
4811
 
4812
+ class IterableController {
4813
+ constructor(iterable) {
4814
+ this.searchInValue = undefined;
4815
+ this.columns = iterable.columns;
4816
+ }
4817
+ get searchIn() {
4818
+ return this.searchInValue || this.columns.reduce((result, column) => {
4819
+ if (column.type !== 'action' && column.isVisible)
4820
+ result.push(column.name);
4821
+ return result;
4822
+ }, []);
4823
+ }
4824
+ set searchIn(value) {
4825
+ this.searchInValue = value;
4826
+ }
4827
+ }
4828
+
4790
4829
  /**
4791
4830
  * Base class for Iterable components.
4792
4831
  */
@@ -4822,16 +4861,14 @@
4822
4861
  */
4823
4862
  this.actionsApplied = {};
4824
4863
  this.columns = this.getColumns(props.columns || this.columns);
4825
- this.datasource = core.DatasourceFactory.factory(Object.assign(Object.assign({}, props.datasource), { searchIn: ((_a = props.datasource) === null || _a === void 0 ? void 0 : _a.searchIn) || this.getSearchColumns() }));
4864
+ this.createController();
4865
+ this.datasource = core.DatasourceFactory.factory(Object.assign(Object.assign({}, props.datasource), { searchIn: ((_a = props.datasource) === null || _a === void 0 ? void 0 : _a.searchIn) || `{{IterableController_${this.name}.searchIn}}` }));
4826
4866
  this.pageSizes = this.getInitValue('pageSizes', props.pageSizes, this.pageSizes);
4827
4867
  this.virtualScroll = this.getInitValue('virtualScroll', props.virtualScroll, this.virtualScroll);
4828
4868
  }
4829
- getSearchColumns() {
4830
- return this.columns.reduce((result, column) => {
4831
- if (column.type !== 'action')
4832
- result.push(column.name);
4833
- return result;
4834
- }, []);
4869
+ createController() {
4870
+ const controller = new IterableController(this);
4871
+ core.Loader.addController(`IterableController_${this.name}`, controller);
4835
4872
  }
4836
4873
  /**
4837
4874
  * Retrieves columns instances
@@ -5642,6 +5679,7 @@
5642
5679
  });
5643
5680
  }
5644
5681
  } });
5682
+ this.updateOriginalRow(key, row);
5645
5683
  return Object.assign(Object.assign({}, componentProps), { name: compName, parent: this, align: column.align, showLabel: false, showHelper: false, dense: true, value: colValue, events: newEvents, autofill: false });
5646
5684
  }
5647
5685
  checkLookupData(column, row, componentProps) {
@@ -5689,6 +5727,10 @@
5689
5727
  this.editedRows = rows;
5690
5728
  }
5691
5729
  }
5730
+ updateOriginalRow(key, row) {
5731
+ if (this.editedRows[key] !== undefined)
5732
+ this.editedRows[key].originalRow = row;
5733
+ }
5692
5734
  /**
5693
5735
  * Checks if column is edited
5694
5736
  * @param column Column
@@ -9265,6 +9307,7 @@
9265
9307
  * Uses delayed loading to load tree branches
9266
9308
  */
9267
9309
  this.fetchOnDemand = false;
9310
+ this.savedNodes = undefined;
9268
9311
  this.nodes = this.getInitValue('nodes', props.nodes, this.nodes);
9269
9312
  this.alwaysOpen = this.getInitValue('alwaysOpen', props.alwaysOpen, this.alwaysOpen);
9270
9313
  this.flattenSearchResults = this.getInitValue('flattenSearchResults', props.flattenSearchResults, this.flattenSearchResults);
@@ -9341,7 +9384,7 @@
9341
9384
  }
9342
9385
  createNodeFromRow(row) {
9343
9386
  let children;
9344
- if (this.fetchOnDemand) {
9387
+ if (this.fetchOnDemand && !this.datasource.search) {
9345
9388
  children = null;
9346
9389
  }
9347
9390
  else {
@@ -9421,6 +9464,26 @@
9421
9464
  * Triggered after the search query changes
9422
9465
  */
9423
9466
  searchChange(searchQuery, element) {
9467
+ if (this.fetchOnDemand) {
9468
+ if (!searchQuery && this.savedNodes) {
9469
+ this.nodes = this.savedNodes;
9470
+ this.savedNodes = undefined;
9471
+ this.datasource.search = '';
9472
+ }
9473
+ else {
9474
+ if (!this.savedNodes) {
9475
+ this.savedNodes = [...this.nodes];
9476
+ }
9477
+ this.datasource.setSearch(searchQuery).then(() => {
9478
+ const treeData = this.treeDataStructure.treeData.map((item) => {
9479
+ delete item[this.parentField];
9480
+ item.tree__children = [];
9481
+ return item;
9482
+ });
9483
+ this.nodes = this.createChildrenNodes(treeData);
9484
+ });
9485
+ }
9486
+ }
9424
9487
  this.callEvent('onSearchChange', { element, component: this, searchQuery });
9425
9488
  }
9426
9489
  isDisable(node) {
@@ -9450,7 +9513,7 @@
9450
9513
  return !hasError;
9451
9514
  }
9452
9515
  /**
9453
- * Triggered when the data is inputted.
9516
+ * Triggered when the data is inputed.
9454
9517
  * @param value search value
9455
9518
  * @param event DOM event
9456
9519
  * @param element Element focused
@@ -9459,6 +9522,7 @@
9459
9522
  if (value !== this.lastInputValue) {
9460
9523
  this.lastInputValue = value;
9461
9524
  this.callInputEvent({ element, component: this });
9525
+ this.searchChange(value, element);
9462
9526
  }
9463
9527
  }
9464
9528
  get searchValue() {
@@ -9933,9 +9997,11 @@
9933
9997
  super(props);
9934
9998
  this.disabled = false;
9935
9999
  this.tabTitle = '';
10000
+ this.lazyLoad = true;
9936
10001
  this.tabTitle = this.getInitValue('tabTitle', props.tabTitle, this.tabTitle);
9937
10002
  this.disabled = this.getInitValue('disabled', props.disabled, this.disabled);
9938
10003
  this.flex = this.getInitValue('flex', props.flex, this.flex);
10004
+ this.lazyLoad = this.getInitValue('lazyLoad', props.lazyLoad, this.lazyLoad);
9939
10005
  this.createAccessors();
9940
10006
  }
9941
10007
  }
@@ -11199,8 +11265,13 @@
11199
11265
  });
11200
11266
  }
11201
11267
  } });
11268
+ this.updateOriginalRow(key, row);
11202
11269
  return Object.assign(Object.assign({}, componentProps), { name: compName, parent: this, align: column.align, showLabel: false, showHelper: false, dense: true, value: colValue, events: newEvents, autofill: false });
11203
11270
  }
11271
+ updateOriginalRow(key, row) {
11272
+ if (this.editedRows[key] !== undefined)
11273
+ this.editedRows[key].originalRow = row;
11274
+ }
11204
11275
  checkLookupData(column, row, componentProps) {
11205
11276
  if (row[column.name] && column.lookupData && componentProps.datasource) {
11206
11277
  componentProps.datasource.data = componentProps.datasource.data || [];
@@ -12571,7 +12642,7 @@
12571
12642
  const { route } = reportType;
12572
12643
  const { name, columns, datasource } = this.iterable;
12573
12644
  const { groupedData } = Object.assign({}, this.iterable);
12574
- const formattedColumns = this.removeActionColumns(columns);
12645
+ const formattedColumns = this.removeColumns(columns);
12575
12646
  const metadataObj = yield reportType.buildMetadata(name, this.title, formattedColumns, datasource.filter, portrait);
12576
12647
  let dataset;
12577
12648
  if ((reportType instanceof XLS2Report || reportType instanceof XLS3Report) && groupedData) {
@@ -12613,8 +12684,8 @@
12613
12684
  return new URL(reportFile, this.fileEndPoint).href;
12614
12685
  });
12615
12686
  }
12616
- removeActionColumns(columns) {
12617
- return columns.filter((item) => item.type !== 'action');
12687
+ removeColumns(columns) {
12688
+ return columns.filter((item) => (item.type !== 'action' && item.isVisible));
12618
12689
  }
12619
12690
  }
12620
12691
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeedhi/common",
3
- "version": "1.50.0",
3
+ "version": "1.53.0",
4
4
  "description": "Zeedhi Common",
5
5
  "author": "Zeedhi <zeedhi@teknisa.com>",
6
6
  "license": "ISC",
@@ -37,5 +37,5 @@
37
37
  "lodash.times": "^4.3.2",
38
38
  "mockdate": "^3.0.2"
39
39
  },
40
- "gitHead": "47f7e1870055d3ad9bba54c0f96b1e34176b70b6"
40
+ "gitHead": "ec0c81b4691fc0b6bc813f8ff7c49512a319f9e4"
41
41
  }
@@ -24,6 +24,10 @@ export declare class Container extends ComponentRender implements IContainer {
24
24
  * Removes viewport maximum-width size breakpoints.
25
25
  */
26
26
  fluid: boolean;
27
+ /**
28
+ * Define if the container is a scroll view
29
+ */
30
+ scrollView: boolean;
27
31
  /**
28
32
  * Creates a new Container.
29
33
  * @param props Container properties
@@ -5,4 +5,5 @@ export interface IContainer extends IComponentRender {
5
5
  height?: number | string;
6
6
  maxHeight?: number | string;
7
7
  minHeight?: number | string;
8
+ scrollView?: boolean;
8
9
  }
@@ -20,6 +20,8 @@ export declare class Frame extends ComponentRender implements IFrame {
20
20
  type: string;
21
21
  private readonly headerName;
22
22
  private static readonly cacheName;
23
+ protected resolveLoad?: (value: Object) => void;
24
+ protected rejectLoad?: (reason?: any) => void;
23
25
  /**
24
26
  * Creates a new Frame.
25
27
  * @param props Frame properties
@@ -28,7 +30,7 @@ export declare class Frame extends ComponentRender implements IFrame {
28
30
  private getMetadata;
29
31
  overrideNamedPropsFunc(metadata: object): any;
30
32
  reload(): Promise<void>;
31
- protected notFoundError(): void;
33
+ protected notFoundError(e: unknown): void;
32
34
  private requestPage;
33
35
  /**
34
36
  * Triggered when frame is load.
@@ -52,4 +54,5 @@ export declare class Frame extends ComponentRender implements IFrame {
52
54
  * Deletes all frame cached requests
53
55
  */
54
56
  static deleteCache(): Promise<boolean>;
57
+ waitLoading(): Promise<Object>;
55
58
  }
@@ -6,7 +6,7 @@ export declare class FramePage extends Frame implements IFramePage {
6
6
  */
7
7
  notFoundRoute: string;
8
8
  constructor(props: IFramePage);
9
- protected notFoundError(): void;
9
+ protected notFoundError(e: unknown): void;
10
10
  /**
11
11
  * Triggered before the component is destroyed.
12
12
  */
@@ -103,6 +103,7 @@ export declare class GridEditable extends Grid implements IGridEditable {
103
103
  * change event of editable components
104
104
  */
105
105
  private changeEditableComponent;
106
+ private updateOriginalRow;
106
107
  /**
107
108
  * Checks if column is edited
108
109
  * @param column Column
@@ -0,0 +1,8 @@
1
+ import { Iterable } from './iterable';
2
+ export declare class IterableController {
3
+ private columns;
4
+ private searchInValue?;
5
+ constructor(iterable: Iterable);
6
+ get searchIn(): string[] | undefined;
7
+ set searchIn(value: string[] | undefined);
8
+ }
@@ -41,7 +41,7 @@ export declare class Iterable extends ComponentRender implements IIterable {
41
41
  * @param props Iterable properties
42
42
  */
43
43
  constructor(props: IIterable);
44
- protected getSearchColumns(): string[];
44
+ protected createController(): void;
45
45
  /**
46
46
  * Retrieves columns instances
47
47
  * @param columns Columns property
@@ -117,16 +117,17 @@ export declare class SelectTree extends TextInput implements ISelectTree {
117
117
  * Triggered after selecting an node
118
118
  */
119
119
  select(node: ISelectTreeNode<IDictionary>, element?: any): void;
120
+ private savedNodes?;
120
121
  /**
121
122
  * Triggered after the search query changes
122
123
  */
123
- searchChange(searchQuery: String, element?: any): void;
124
+ searchChange(searchQuery: string, element?: any): void;
124
125
  private isDisable;
125
126
  private getDisabledNodes;
126
127
  getNodes(): ISelectTreeNode<IDictionary>[];
127
128
  validate(): boolean;
128
129
  /**
129
- * Triggered when the data is inputted.
130
+ * Triggered when the data is inputed.
130
131
  * @param value search value
131
132
  * @param event DOM event
132
133
  * @param element Element focused
@@ -14,6 +14,7 @@ export interface ITab extends IComponent {
14
14
  tabTitle: string;
15
15
  disabled?: boolean;
16
16
  flex?: boolean;
17
+ lazyLoad?: boolean;
17
18
  }
18
19
  export interface ITabs extends IComponentRender {
19
20
  activeTab?: number;
@@ -10,6 +10,7 @@ export declare class Tab extends Component implements ITab {
10
10
  * Defines if is flex mode.
11
11
  */
12
12
  flex?: boolean;
13
+ lazyLoad: boolean;
13
14
  /**
14
15
  * Create a new Tab.
15
16
  * @param props Tab properties
@@ -90,6 +90,7 @@ export declare class TreeGridEditable extends TreeGrid implements ITreeGridEdita
90
90
  events: any;
91
91
  autofill: boolean;
92
92
  };
93
+ private updateOriginalRow;
93
94
  private checkLookupData;
94
95
  private checkCompValidity;
95
96
  /**
@@ -11,5 +11,5 @@ export declare class Report implements IReport {
11
11
  private getData;
12
12
  private getReportType;
13
13
  getReport(type: string, portrait?: boolean, rowObj?: any): Promise<string>;
14
- private removeActionColumns;
14
+ private removeColumns;
15
15
  }