@wavemaker/app-runtime-wm-build 11.4.2-rc.5403 → 11.4.2-rc.5559
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.
- app-runtime-wm-build/package.json +1 -1
- app-runtime-wm-build/wmapp/scripts/wm-libs.js +488 -204
- app-runtime-wm-build/wmapp/scripts/wm-libs.min.js +186 -174
- app-runtime-wm-build/wmapp/scripts/wm-loader.js +24 -24
- app-runtime-wm-build/wmapp/scripts/wm-loader.min.js +6 -6
- app-runtime-wm-build/wmapp/styles/css/wm-style.css +1 -1
- app-runtime-wm-build/wmmobile/scripts/wm-libs.js +488 -204
- app-runtime-wm-build/wmmobile/scripts/wm-libs.min.js +209 -197
- app-runtime-wm-build/wmmobile/scripts/wm-mobileloader.js +24 -24
- app-runtime-wm-build/wmmobile/scripts/wm-mobileloader.min.js +6 -6
- app-runtime-wm-build/wmmobile/styles/css/wm-style.css +1 -1
|
@@ -17071,7 +17071,9 @@
|
|
|
17071
17071
|
};
|
|
17072
17072
|
BaseFormCustomComponent.prototype.invokeOnChange = function(value, $event, valid) {
|
|
17073
17073
|
this._onChange(value);
|
|
17074
|
-
|
|
17074
|
+
if (valid) {
|
|
17075
|
+
_super.prototype.invokeOnChange.call(this, value, $event);
|
|
17076
|
+
}
|
|
17075
17077
|
};
|
|
17076
17078
|
BaseFormCustomComponent.prototype.invokeOnTouched = function($event) {
|
|
17077
17079
|
this._onTouched();
|
|
@@ -22705,7 +22707,7 @@
|
|
|
22705
22707
|
type: core$1.Component,
|
|
22706
22708
|
args: [ {
|
|
22707
22709
|
selector: "[wmSearch]",
|
|
22708
|
-
template: '<ng-template #customItemTemplate let-model="item" let-index="index" let-query="query" let-match="match">\n \x3c!-- Default item template --\x3e\n <a *ngIf="!content">\n <img *ngIf="model.imgSrc" [src]="model.imgSrc" alt="Search" [style.width]="imagewidth">\n <span [title]="model.label" [innerHtml]="highlight(match, query) || model.label"></span>\n </a>\n \x3c!-- Custom partial template --\x3e\n <a *ngIf="content" [ngClass]="{customTemplate: content}" partialContainer [wmItemTemplate]="content" [userComponentParams]="match.item">\n <div partial-container-target></div>\n </a>\n</ng-template>\n\n<ng-template #customListTemplate let-matches="matches" let-itemTemplate="itemTemplate" let-query="query">\n <ul #ulElement class="app-search dropdown-menu" scrollable>\n <li #liElements *ngFor="let match of matches" [ngClass]="{active: typeaheadContainer && typeaheadContainer.isActive(match), \'list-group-header\': match && match.isHeader()}"\n (mouseenter)="typeaheadContainer.selectActive(match);"\n (click)="match && !match.isHeader() && typeaheadContainer.selectMatch(match, $event); $typeaheadEvent = $event; notifySubscriber();">\n \x3c!-- itemTemplate comes from the <input> --\x3e\n <h4 *ngIf="match.isHeader()" class="group-title">{{match.value}}</h4>\n <ng-container *ngIf="!match.isHeader()" [ngTemplateOutlet]="itemTemplate"\n [ngTemplateOutletContext]="{item: match.item, index: i, match: match, query: query}">\n </ng-container>\n </li>\n <div class="status" [hidden]="_loadingItems || !(datacompletemsg && dataProvider.isLastPage)">\n <span [textContent]="datacompletemsg"></span>\n </div>\n <div class="status" [hidden]="!_loadingItems">\n <i class="fa fa-circle-o-notch fa-spin"></i>\n <span [textContent]="loadingdatamsg"></span>\n </div>\n </ul>\n</ng-template>\n\n\x3c!--This template is for search inside mobile navbar.--\x3e\n<ng-container *ngIf="navsearchbar; else searchTemplate">\n <input [title]="query || \'\'" type="text" class="app-textbox form-control list-of-objs app-search-input" [placeholder]="placeholder || \'\'"\n focus-target\n container="body"\n [disabled]="disabled"\n autocomplete="off"\n [(ngModel)]="query"\n [readonly]="readonly"\n [disabled]="disabled"\n [typeahead]="typeaheadDataSource"\n [typeaheadWaitMs]="debouncetime"\n [typeaheadItemTemplate]="customItemTemplate"\n [optionsListTemplate]="customListTemplate"\n (input)="onInputChange($event)"\n (keydown)="listenQuery = true"\n (keydown.enter)="$typeaheadEvent = $event;handleEnterEvent($event)"\n (keydown.arrowdown)="selectNext($event)"\n (blur)="invokeOnTouched($event)"\n (click)="handleFocus($event);"\n (focus)="_unsubscribeDv = false; listenQuery = true; handleFocus($event); invokeOnFocus($event);"\n (focusout)="onFocusOut()"\n [typeaheadMinLength]="minchars"\n [typeaheadOptionsLimit]="limit"\n (typeaheadLoading)="_loadingItems"\n (typeaheadOnSelect)="typeaheadOnSelect($event)"\n typeaheadOptionField="label"\n [typeaheadGroupField]="groupby ? \'groupby\' : null"\n [typeaheadAsync]="true"\n [typeaheadScrollable]="true"\n [
|
|
22710
|
+
template: '<ng-template #customItemTemplate let-model="item" let-index="index" let-query="query" let-match="match">\n \x3c!-- Default item template --\x3e\n <a *ngIf="!content">\n <img *ngIf="model.imgSrc" [src]="model.imgSrc" alt="Search" [style.width]="imagewidth">\n <span [title]="model.label" [innerHtml]="highlight(match, query) || model.label"></span>\n </a>\n \x3c!-- Custom partial template --\x3e\n <a *ngIf="content" [ngClass]="{customTemplate: content}" partialContainer [wmItemTemplate]="content" [userComponentParams]="match.item">\n <div partial-container-target></div>\n </a>\n</ng-template>\n\n<ng-template #customListTemplate let-matches="matches" let-itemTemplate="itemTemplate" let-query="query">\n <ul #ulElement class="app-search dropdown-menu" scrollable>\n <li #liElements *ngFor="let match of matches" [ngClass]="{active: typeaheadContainer && typeaheadContainer.isActive(match), \'list-group-header\': match && match.isHeader()}"\n (mouseenter)="typeaheadContainer.selectActive(match);"\n (click)="match && !match.isHeader() && typeaheadContainer.selectMatch(match, $event); $typeaheadEvent = $event; notifySubscriber();">\n \x3c!-- itemTemplate comes from the <input> --\x3e\n <h4 *ngIf="match.isHeader()" class="group-title">{{match.value}}</h4>\n <ng-container *ngIf="!match.isHeader()" [ngTemplateOutlet]="itemTemplate"\n [ngTemplateOutletContext]="{item: match.item, index: i, match: match, query: query}">\n </ng-container>\n </li>\n <div class="status" [hidden]="_loadingItems || !(datacompletemsg && dataProvider.isLastPage)">\n <span [textContent]="datacompletemsg"></span>\n </div>\n <div class="status" [hidden]="!_loadingItems">\n <i class="fa fa-circle-o-notch fa-spin"></i>\n <span [textContent]="loadingdatamsg"></span>\n </div>\n </ul>\n</ng-template>\n\n\x3c!--This template is for search inside mobile navbar.--\x3e\n<ng-container *ngIf="navsearchbar; else searchTemplate">\n <input [title]="query || \'\'" type="text" class="app-textbox form-control list-of-objs app-search-input" [placeholder]="placeholder || \'\'"\n focus-target\n container="body"\n [disabled]="disabled"\n autocomplete="off"\n [(ngModel)]="query"\n [readonly]="readonly"\n [disabled]="disabled"\n [typeahead]="typeaheadDataSource"\n [typeaheadWaitMs]="debouncetime"\n [typeaheadItemTemplate]="customItemTemplate"\n [optionsListTemplate]="customListTemplate"\n (input)="onInputChange($event)"\n (keydown)="listenQuery = true"\n (keydown.enter)="$typeaheadEvent = $event;handleEnterEvent($event)"\n (keydown.arrowdown)="selectNext($event)"\n (blur)="invokeOnTouched($event)"\n (click)="handleFocus($event);"\n (focus)="_unsubscribeDv = false; listenQuery = true; handleFocus($event); invokeOnFocus($event);"\n (focusout)="onFocusOut()"\n [typeaheadMinLength]="minchars"\n [typeaheadOptionsLimit]="limit"\n (typeaheadLoading)="_loadingItems"\n (typeaheadOnSelect)="typeaheadOnSelect($event)"\n typeaheadOptionField="label"\n [typeaheadGroupField]="groupby ? \'groupby\' : null"\n [typeaheadAsync]="true"\n [typeaheadScrollable]="true"\n [typeaheadOptionsInScrollableView]="optionslimitinscrollableview"\n [dropup]="dropup"\n [tabindex]="tabindex"\n [attr.name]="name"\n [attr.aria-label]="hint || \'Search field\'"/>\n <i class="btn-close wi wi-cancel" [hidden]="!showClosebtn" (click)="clearSearch($event);"></i>\n</ng-container>\n\x3c!--This template is for both web and fullscreen mode in mobile.--\x3e\n<ng-template #searchTemplate>\n <span class="wi wi-arrow-left form-control-feedback back-btn" aria-hidden="true" (click)="closeSearch()"></span>\n <span class="sr-only">Back button</span>\n <input [title]="query || \'\'" type="text" class="app-textbox form-control list-of-objs app-search-input" [placeholder]="placeholder || \'\'"\n focus-target\n [container]="containerTarget || \'body\'"\n [disabled]="disabled"\n autocomplete="off"\n [(ngModel)]="query"\n [readonly]="readonly"\n [typeahead]="typeaheadDataSource"\n [typeaheadWaitMs]="debouncetime"\n [typeaheadItemTemplate]="customItemTemplate"\n [optionsListTemplate]="customListTemplate"\n (input)="onInputChange($event)"\n (keydown)="listenQuery = true"\n (keydown.enter)="$typeaheadEvent = $event;handleEnterEvent($event)"\n (keydown.arrowdown)="selectNext($event)"\n (blur)="invokeOnTouched($event); onFocusOut()"\n (click)="handleFocus($event);"\n (focus)="_unsubscribeDv = false; listenQuery = true; handleFocus($event); invokeOnFocus($event)"\n [typeaheadMinLength]="minchars"\n [typeaheadOptionsLimit]="limit"\n (typeaheadLoading)="_loadingItems"\n (typeaheadOnSelect)="typeaheadOnSelect($event)"\n typeaheadOptionField="label"\n [typeaheadGroupField]="groupby ? \'groupby\' : null"\n [typeaheadAsync]="true"\n [typeaheadScrollable]="true"\n [typeaheadOptionsInScrollableView]="optionslimitinscrollableview"\n [tabindex]="tabindex"\n [dropup]="dropup"\n [attr.name]="name"\n [attr.aria-label]="hint || \'Search field\'">\n <input class="model-holder" ng-model="proxyModel" ng-required="required" tabindex="-1" aria-hidden="true">\n <span *ngIf="_loadingItems" aria-hidden="true" class="fa fa-circle-o-notch fa-spin form-control-feedback"></span>\n <span class="wi wi-close form-control-feedback clear-btn" [ngClass]="{\'show-btn\': isQueryEntered()}" (click)="clearSearch($event, true)"></span>\n <span class="sr-only">Clear button</span>\n <span *ngIf="showsearchicon" class="input-group-addon" aria-label="search icon" [ngClass]="{\'disabled\': disabled}">\n <form>\n <button title="Search" [disabled]="disabled" class="app-search-button wm-sl-l sl-search" type="submit"\n (click)="onSearchSelect($event)"></button>\n </form>\n </span>\n</ng-template>\n',
|
|
22709
22711
|
providers: [ base.provideAs(SearchComponent, forms.NG_VALUE_ACCESSOR, true), base.provideAs(SearchComponent, forms.NG_VALIDATORS, true), base.provideAsWidgetRef(SearchComponent) ]
|
|
22710
22712
|
} ]
|
|
22711
22713
|
} ];
|
|
@@ -28148,7 +28150,7 @@
|
|
|
28148
28150
|
}, base.PROP_BOOLEAN) ], [ "clearbutton", Object.assign({
|
|
28149
28151
|
value: true
|
|
28150
28152
|
}, base.PROP_BOOLEAN) ], [ "adaptiveposition", Object.assign({
|
|
28151
|
-
value:
|
|
28153
|
+
value: false
|
|
28152
28154
|
}, base.PROP_BOOLEAN) ], [ "todaybuttonlabel", Object.assign({
|
|
28153
28155
|
value: "LABEL_TODAY_DATE"
|
|
28154
28156
|
}, base.PROP_STRING) ], [ "clearbuttonlabel", Object.assign({
|
|
@@ -28442,7 +28444,7 @@
|
|
|
28442
28444
|
}, base.PROP_BOOLEAN) ], [ "clearbutton", Object.assign({
|
|
28443
28445
|
value: true
|
|
28444
28446
|
}, base.PROP_BOOLEAN) ], [ "adaptiveposition", Object.assign({
|
|
28445
|
-
value:
|
|
28447
|
+
value: false
|
|
28446
28448
|
}, base.PROP_BOOLEAN) ], [ "todaybuttonlabel", Object.assign({
|
|
28447
28449
|
value: "LABEL_TODAY_DATE"
|
|
28448
28450
|
}, base.PROP_STRING) ], [ "clearbuttonlabel", Object.assign({
|
|
@@ -38073,9 +38075,10 @@
|
|
|
38073
38075
|
value;
|
|
38074
38076
|
}
|
|
38075
38077
|
var registerProps = function() {
|
|
38076
|
-
base.register("wm-dialog", new Map([ [ "animation", base.PROP_STRING ], [ "class", base.PROP_STRING ], [ "closable",
|
|
38077
|
-
value: true
|
|
38078
|
-
|
|
38078
|
+
base.register("wm-dialog", new Map([ [ "animation", base.PROP_STRING ], [ "class", base.PROP_STRING ], [ "closable", {
|
|
38079
|
+
value: true,
|
|
38080
|
+
PROP_BOOLEAN: base.PROP_BOOLEAN
|
|
38081
|
+
} ], [ "iconclass", {
|
|
38079
38082
|
value: "wi wi-file-text",
|
|
38080
38083
|
PROP_STRING: base.PROP_STRING
|
|
38081
38084
|
} ], [ "iconheight", base.PROP_STRING ], [ "iconmargin", base.PROP_STRING ], [ "iconurl", base.PROP_STRING ], [ "iconwidth", base.PROP_STRING ], [ "modal", Object.assign({
|
|
@@ -38110,7 +38113,7 @@
|
|
|
38110
38113
|
_this = _super.call(this, inj, WIDGET_INFO, {
|
|
38111
38114
|
class: DIALOG_CLS + " " + (dialogClass || ""),
|
|
38112
38115
|
backdrop: backdrop,
|
|
38113
|
-
keyboard:
|
|
38116
|
+
keyboard: !core.toBoolean(modal)
|
|
38114
38117
|
}) || this;
|
|
38115
38118
|
return _this;
|
|
38116
38119
|
}
|
|
@@ -46913,9 +46916,6 @@
|
|
|
46913
46916
|
}
|
|
46914
46917
|
} else {
|
|
46915
46918
|
this.resetPageNavigation();
|
|
46916
|
-
if (newVal === "" || newVal === undefined || _.get(this.datasource, "category") === "wm.Variable") {
|
|
46917
|
-
this.variableInflight = false;
|
|
46918
|
-
}
|
|
46919
46919
|
if (!this.variableInflight) {
|
|
46920
46920
|
this.callDataGridMethod("setStatus", "nodata", this.nodatamessage);
|
|
46921
46921
|
}
|
|
@@ -47055,7 +47055,7 @@
|
|
|
47055
47055
|
};
|
|
47056
47056
|
TableComponent.prototype.setGridData = function(serverData) {
|
|
47057
47057
|
var data = this.filternullrecords ? this.removeEmptyRecords(serverData) : serverData;
|
|
47058
|
-
if (_.get(this.datasource, "category") === "wm.Variable"
|
|
47058
|
+
if (_.get(this.datasource, "category") === "wm.Variable") {
|
|
47059
47059
|
this.variableInflight = false;
|
|
47060
47060
|
}
|
|
47061
47061
|
if (!this.variableInflight) {
|
|
@@ -58673,14 +58673,14 @@
|
|
|
58673
58673
|
$event: $event
|
|
58674
58674
|
});
|
|
58675
58675
|
};
|
|
58676
|
-
TabPaneComponent.prototype.select = function($event) {
|
|
58676
|
+
TabPaneComponent.prototype.select = function($event, isKeyBoardEvent) {
|
|
58677
58677
|
if (this.isActive || this.disabled) {
|
|
58678
58678
|
return;
|
|
58679
58679
|
}
|
|
58680
58680
|
this.isActive = true;
|
|
58681
58681
|
this.$lazyLoad();
|
|
58682
58682
|
this.redrawChildren();
|
|
58683
|
-
this.notifyParent($event);
|
|
58683
|
+
this.notifyParent($event, isKeyBoardEvent);
|
|
58684
58684
|
};
|
|
58685
58685
|
TabPaneComponent.prototype.tabpaneHeaderClick = function($event, paneIndex) {
|
|
58686
58686
|
this.invokeEventCallback("headerclick", {
|
|
@@ -58718,8 +58718,8 @@
|
|
|
58718
58718
|
}
|
|
58719
58719
|
}), 100);
|
|
58720
58720
|
};
|
|
58721
|
-
TabPaneComponent.prototype.notifyParent = function(evt) {
|
|
58722
|
-
this.tabsRef.notifyChange(this, evt);
|
|
58721
|
+
TabPaneComponent.prototype.notifyParent = function(evt, isKeyBoardEvent) {
|
|
58722
|
+
this.tabsRef.notifyChange(this, evt, isKeyBoardEvent);
|
|
58723
58723
|
};
|
|
58724
58724
|
TabPaneComponent.prototype.handleSwipeLeft = function() {
|
|
58725
58725
|
this.tabsRef.next();
|
|
@@ -58917,7 +58917,7 @@
|
|
|
58917
58917
|
paneRef.remove();
|
|
58918
58918
|
}
|
|
58919
58919
|
};
|
|
58920
|
-
TabsComponent.prototype.notifyChange = function(paneRef, evt) {
|
|
58920
|
+
TabsComponent.prototype.notifyChange = function(paneRef, evt, isKeyBoardEvent) {
|
|
58921
58921
|
if (!this.isSelectableTab(paneRef)) {
|
|
58922
58922
|
return;
|
|
58923
58923
|
}
|
|
@@ -58949,7 +58949,7 @@
|
|
|
58949
58949
|
if (!evt || !headerElement || !headerElement.length) {
|
|
58950
58950
|
headerElement = this.nativeElement.querySelector("li[data-paneid=" + paneRef.widgetId + "]");
|
|
58951
58951
|
var insideTabs = !!$(headerElement).closest(".app-tabs").parent().closest(".app-tabs").length;
|
|
58952
|
-
if (!insideTabs) {
|
|
58952
|
+
if (!insideTabs && isKeyBoardEvent) {
|
|
58953
58953
|
$(headerElement).children().focus();
|
|
58954
58954
|
}
|
|
58955
58955
|
}
|
|
@@ -59021,16 +59021,16 @@
|
|
|
59021
59021
|
}
|
|
59022
59022
|
}
|
|
59023
59023
|
};
|
|
59024
|
-
TabsComponent.prototype.next = function($event) {
|
|
59024
|
+
TabsComponent.prototype.next = function($event, isKeyBoardEvent) {
|
|
59025
59025
|
var pane = this.getSelectableTabAfterIndex(this.getActiveTabIndex());
|
|
59026
59026
|
if (pane) {
|
|
59027
|
-
pane.select($event);
|
|
59027
|
+
pane.select($event, isKeyBoardEvent);
|
|
59028
59028
|
}
|
|
59029
59029
|
};
|
|
59030
|
-
TabsComponent.prototype.prev = function($event) {
|
|
59030
|
+
TabsComponent.prototype.prev = function($event, isKeyBoardEvent) {
|
|
59031
59031
|
var pane = this.getSelectableTabBeforeIndex(this.getActiveTabIndex());
|
|
59032
59032
|
if (pane) {
|
|
59033
|
-
pane.select($event);
|
|
59033
|
+
pane.select($event, isKeyBoardEvent);
|
|
59034
59034
|
}
|
|
59035
59035
|
};
|
|
59036
59036
|
TabsComponent.prototype.selectDefaultPaneByIndex = function(index) {
|
|
@@ -59119,13 +59119,13 @@
|
|
|
59119
59119
|
switch (event.key) {
|
|
59120
59120
|
case "ArrowLeft":
|
|
59121
59121
|
case "ArrowUp":
|
|
59122
|
-
this.prev();
|
|
59122
|
+
this.prev(null, true);
|
|
59123
59123
|
event.preventDefault();
|
|
59124
59124
|
break;
|
|
59125
59125
|
|
|
59126
59126
|
case "ArrowRight":
|
|
59127
59127
|
case "ArrowDown":
|
|
59128
|
-
this.next();
|
|
59128
|
+
this.next(null, true);
|
|
59129
59129
|
event.preventDefault();
|
|
59130
59130
|
break;
|
|
59131
59131
|
|