@seniorsistemas/angular-components 14.14.0 → 14.14.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.
- package/bundles/seniorsistemas-angular-components.umd.js +81 -7
- package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
- package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
- package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
- package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.d.ts +1 -0
- package/components/dynamic-form/components/lookup/lookup.component.d.ts +2 -0
- package/components/dynamic-form/configurations/dynamic-type.d.ts +1 -0
- package/components/dynamic-form/configurations/field-type.d.ts +1 -0
- package/components/locale/options/index.d.ts +9 -0
- package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.js +3 -1
- package/esm2015/components/custom-fields/custom-fields.component.js +10 -1
- package/esm2015/components/dynamic-form/components/lookup/lookup.component.js +50 -3
- package/esm2015/components/dynamic-form/configurations/dynamic-config.js +2 -1
- package/esm2015/components/dynamic-form/configurations/dynamic-type.js +2 -1
- package/esm2015/components/dynamic-form/configurations/field-type.js +2 -1
- package/esm2015/components/dynamic-form/configurations/fields/bignumber-field.js +3 -3
- package/esm2015/components/dynamic-form/configurations/fields/calendar-field.js +3 -3
- package/esm2015/components/dynamic-form/configurations/fields/currency-field.js +3 -3
- package/esm2015/components/dynamic-form/configurations/fields/decimal-field.js +3 -3
- package/esm2015/components/dynamic-form/configurations/fields/number-field.js +3 -3
- package/esm2015/components/dynamic-form/configurations/form-field.js +2 -1
- package/esm2015/components/dynamic-form/dynamic-form.js +6 -1
- package/esm2015/components/locale/options/index.js +10 -1
- package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.js +3 -1
- package/esm5/components/custom-fields/custom-fields.component.js +10 -1
- package/esm5/components/dynamic-form/components/lookup/lookup.component.js +50 -3
- package/esm5/components/dynamic-form/configurations/dynamic-config.js +2 -1
- package/esm5/components/dynamic-form/configurations/dynamic-type.js +2 -1
- package/esm5/components/dynamic-form/configurations/field-type.js +2 -1
- package/esm5/components/dynamic-form/configurations/fields/bignumber-field.js +3 -3
- package/esm5/components/dynamic-form/configurations/fields/calendar-field.js +3 -3
- package/esm5/components/dynamic-form/configurations/fields/currency-field.js +3 -3
- package/esm5/components/dynamic-form/configurations/fields/decimal-field.js +3 -3
- package/esm5/components/dynamic-form/configurations/fields/number-field.js +3 -3
- package/esm5/components/dynamic-form/configurations/form-field.js +2 -1
- package/esm5/components/dynamic-form/dynamic-form.js +6 -1
- package/esm5/components/locale/options/index.js +10 -1
- package/fesm2015/seniorsistemas-angular-components.js +81 -7
- package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
- package/fesm5/seniorsistemas-angular-components.js +81 -7
- package/fesm5/seniorsistemas-angular-components.js.map +1 -1
- package/package.json +1 -1
- package/seniorsistemas-angular-components.metadata.json +1 -1
|
@@ -1002,6 +1002,7 @@ var FieldType;
|
|
|
1002
1002
|
FieldType["Chips"] = "Chips";
|
|
1003
1003
|
FieldType["Date"] = "Date";
|
|
1004
1004
|
FieldType["DateTime"] = "DateTime";
|
|
1005
|
+
FieldType["LocalDateTime"] = "LocalDateTime";
|
|
1005
1006
|
/**
|
|
1006
1007
|
* @deprecated Should use 'Number' instead
|
|
1007
1008
|
*/
|
|
@@ -1123,8 +1124,17 @@ var LocaleOptions = /** @class */ (function () {
|
|
|
1123
1124
|
}
|
|
1124
1125
|
return LocaleOptions;
|
|
1125
1126
|
}());
|
|
1127
|
+
/**
|
|
1128
|
+
* @deprecated
|
|
1129
|
+
*/
|
|
1126
1130
|
var DEFAULT_CALENDAR_LOCALE_OPTIONS = new CalendarLocaleOptions();
|
|
1131
|
+
/**
|
|
1132
|
+
* @deprecated
|
|
1133
|
+
*/
|
|
1127
1134
|
var DEFAULT_NUMBER_LOCALE_OPTIONS = new NumberLocaleOptions();
|
|
1135
|
+
/**
|
|
1136
|
+
* @deprecated
|
|
1137
|
+
*/
|
|
1128
1138
|
var DEFAULT_LOCALE_OPTIONS = new LocaleOptions();
|
|
1129
1139
|
|
|
1130
1140
|
var moment = moment_; // @HACK Necessary because of https://github.com/rollup/rollup/issues/670
|
|
@@ -1458,7 +1468,7 @@ var BignumberField = /** @class */ (function (_super) {
|
|
|
1458
1468
|
function BignumberField(config) {
|
|
1459
1469
|
var _a;
|
|
1460
1470
|
var _this = _super.call(this, config) || this;
|
|
1461
|
-
_this.numberLocaleOptions = config.numberLocaleOptions ||
|
|
1471
|
+
_this.numberLocaleOptions = config.numberLocaleOptions || new NumberLocaleOptions();
|
|
1462
1472
|
_this.browserAutocomplete = config.browserAutocomplete;
|
|
1463
1473
|
_this.precision = config.precision;
|
|
1464
1474
|
_this.scale = (_a = config.scale) !== null && _a !== void 0 ? _a : 2;
|
|
@@ -1526,7 +1536,7 @@ var CalendarField = /** @class */ (function (_super) {
|
|
|
1526
1536
|
_this.maxDate = config.maxDate;
|
|
1527
1537
|
_this.appendTo = config.appendTo;
|
|
1528
1538
|
_this.showOnFocus = typeof config.showOnFocus === "boolean" ? config.showOnFocus : true;
|
|
1529
|
-
_this.calendarLocaleOptions = config.calendarLocaleOptions ||
|
|
1539
|
+
_this.calendarLocaleOptions = config.calendarLocaleOptions || new CalendarLocaleOptions();
|
|
1530
1540
|
_this.onBlur = config.onBlur;
|
|
1531
1541
|
_this.onFocus = config.onFocus;
|
|
1532
1542
|
_this.onSelect = config.onSelect;
|
|
@@ -1705,7 +1715,7 @@ var NumberField = /** @class */ (function (_super) {
|
|
|
1705
1715
|
__extends(NumberField, _super);
|
|
1706
1716
|
function NumberField(config) {
|
|
1707
1717
|
var _this = _super.call(this, config) || this;
|
|
1708
|
-
_this.numberLocaleOptions = config.numberLocaleOptions ||
|
|
1718
|
+
_this.numberLocaleOptions = config.numberLocaleOptions || new NumberLocaleOptions();
|
|
1709
1719
|
_this.browserAutocomplete = config.browserAutocomplete;
|
|
1710
1720
|
_this.precision = config.precision;
|
|
1711
1721
|
_this.alignTo = config.alignTo || NumberAlignmentOption.LEFT;
|
|
@@ -1728,7 +1738,7 @@ var DecimalField = /** @class */ (function (_super) {
|
|
|
1728
1738
|
__extends(DecimalField, _super);
|
|
1729
1739
|
function DecimalField(config) {
|
|
1730
1740
|
var _this = _super.call(this, config) || this;
|
|
1731
|
-
_this.numberLocaleOptions = config.numberLocaleOptions ||
|
|
1741
|
+
_this.numberLocaleOptions = config.numberLocaleOptions || new NumberLocaleOptions();
|
|
1732
1742
|
_this.alignTo = config.alignTo || NumberAlignmentOption.RIGHT;
|
|
1733
1743
|
_this.scale = config.scale || config.scale === 0 ? config.scale : 2;
|
|
1734
1744
|
return _this;
|
|
@@ -1743,7 +1753,7 @@ var CurrencyField = /** @class */ (function (_super) {
|
|
|
1743
1753
|
__extends(CurrencyField, _super);
|
|
1744
1754
|
function CurrencyField(config) {
|
|
1745
1755
|
var _this = _super.call(this, config) || this;
|
|
1746
|
-
_this.numberLocaleOptions = config.numberLocaleOptions ||
|
|
1756
|
+
_this.numberLocaleOptions = config.numberLocaleOptions || new NumberLocaleOptions();
|
|
1747
1757
|
return _this;
|
|
1748
1758
|
}
|
|
1749
1759
|
return CurrencyField;
|
|
@@ -1903,6 +1913,7 @@ var FormField = /** @class */ (function () {
|
|
|
1903
1913
|
return new BooleanField(config);
|
|
1904
1914
|
case FieldType.Date:
|
|
1905
1915
|
case FieldType.DateTime:
|
|
1916
|
+
case FieldType.LocalDateTime:
|
|
1906
1917
|
case FieldType.Time:
|
|
1907
1918
|
return new CalendarField(config);
|
|
1908
1919
|
case FieldType.Lookup:
|
|
@@ -1964,9 +1975,24 @@ var LookupComponent = /** @class */ (function () {
|
|
|
1964
1975
|
LookupComponent_1 = LookupComponent;
|
|
1965
1976
|
LookupComponent.prototype.ngOnInit = function () {
|
|
1966
1977
|
var _this = this;
|
|
1978
|
+
if (!this.searchGridFields) {
|
|
1979
|
+
this.searchGridFields = this.searchFields.map(function (item) { return new FormField(__assign({}, item)); });
|
|
1980
|
+
}
|
|
1967
1981
|
this.searchFields = this.searchFields.map(function (value) { return new FormField(__assign(__assign({}, value), { size: { sm: 12, md: 12, lg: 12, xl: 12 } })); });
|
|
1968
|
-
this.searchGridFields =
|
|
1982
|
+
this.searchGridFields = this.searchGridFields.map(function (gridField) {
|
|
1969
1983
|
gridField["width"] = _this.getColWidth(gridField.label);
|
|
1984
|
+
var calendarOptions = new CalendarLocaleOptions(__assign({}, gridField.calendarLocaleOptions));
|
|
1985
|
+
if (calendarOptions === null || calendarOptions === void 0 ? void 0 : calendarOptions.dateFormat) {
|
|
1986
|
+
switch (gridField.type) {
|
|
1987
|
+
case FieldType.Date:
|
|
1988
|
+
calendarOptions.dateFormat = _this._convertToMomentDateFormat(calendarOptions.dateFormat);
|
|
1989
|
+
break;
|
|
1990
|
+
case FieldType.Time:
|
|
1991
|
+
calendarOptions.dateFormat = _this._convertToMomentHourFormat(calendarOptions.hourFormat, calendarOptions.dateFormat);
|
|
1992
|
+
break;
|
|
1993
|
+
}
|
|
1994
|
+
gridField.calendarLocaleOptions = calendarOptions;
|
|
1995
|
+
}
|
|
1970
1996
|
return gridField;
|
|
1971
1997
|
});
|
|
1972
1998
|
var formGroup = this.searchFields.reduce(function (result, field) {
|
|
@@ -1992,6 +2018,36 @@ var LookupComponent = /** @class */ (function () {
|
|
|
1992
2018
|
_this.onChange(newValue);
|
|
1993
2019
|
});
|
|
1994
2020
|
};
|
|
2021
|
+
LookupComponent.prototype._convertToMomentHourFormat = function (hourFormat, format) {
|
|
2022
|
+
if (format === "dd/mm/yy") { // valor padrão para o format.
|
|
2023
|
+
return "LTS";
|
|
2024
|
+
}
|
|
2025
|
+
if (hourFormat === "12") {
|
|
2026
|
+
return format
|
|
2027
|
+
.replace(/\bH\b/, "h") // hour (12 hour time) (no leading zero)
|
|
2028
|
+
.replace(/\bHH\b/, "hh"); // hour (12 hour time)
|
|
2029
|
+
}
|
|
2030
|
+
if (hourFormat === "24") {
|
|
2031
|
+
return format
|
|
2032
|
+
.replace(/\bh\b/, "H") // hour (24 hour time) (no leading zero)
|
|
2033
|
+
.replace(/\bhh\b/, "HH"); // hour (24 hour time)
|
|
2034
|
+
}
|
|
2035
|
+
return format;
|
|
2036
|
+
};
|
|
2037
|
+
LookupComponent.prototype._convertToMomentDateFormat = function (format) {
|
|
2038
|
+
// A ordem dos replaces é importante.
|
|
2039
|
+
return format
|
|
2040
|
+
.replace(/\bd\b/, "D") // day of month (no leading zero)
|
|
2041
|
+
.replace(/\bdd\b/, "DD") // day of month
|
|
2042
|
+
.replace(/\bo\b/, "DDD") // day of the year (no leading zero)
|
|
2043
|
+
.replace(/\boo\b/, "DDDD") // day of the year
|
|
2044
|
+
.replace(/\bM\b/, "MMM") // month name short
|
|
2045
|
+
.replace(/\bMM\b/, "MMMM") // month name long
|
|
2046
|
+
.replace(/\bm\b/, "M") // month of year (no leading)
|
|
2047
|
+
.replace(/\bmm\b/, "MM") // month of year
|
|
2048
|
+
.replace(/\by\b/, "YY") // year (two digits)
|
|
2049
|
+
.replace(/\byy\b/, "YYYY"); // year (four digits)
|
|
2050
|
+
};
|
|
1995
2051
|
LookupComponent.prototype.ngAfterViewInit = function () {
|
|
1996
2052
|
this.autocomplete.onOverlayAnimationDone = function (event) { };
|
|
1997
2053
|
};
|
|
@@ -2310,7 +2366,7 @@ var LookupComponent = /** @class */ (function () {
|
|
|
2310
2366
|
LookupComponent = LookupComponent_1 = __decorate([
|
|
2311
2367
|
Component({
|
|
2312
2368
|
selector: "s-lookup",
|
|
2313
|
-
template: "<div [ngClass]=\"{ inputgroup: showSearch }\">\n <p-autoComplete\n #autocomplete\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [dataKey]=\"dataKey\"\n [multiple]=\"multiple\"\n [inputId]=\"id + '-autocomplete'\"\n [forceSelection]=\"true\"\n [suggestions]=\"getLookupSuggestions()\"\n (completeMethod)=\"lazyLoadLookup($event)\"\n (onSelect)=\"onSelect.next($event)\"\n (onBlur)=\"onBlur.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onUnselect)=\"onUnselect.next($event)\"\n (onClear)=\"onClear.next($event)\"\n (onKeyUp)=\"onKeyUp.next($event)\"\n [field]=\"lookupDisplayField\"\n [emptyMessage]=\"lookupEmptyMessage\"\n [dropdown]=\"!showSearch\"\n [appendTo]=\"lookupAppendTo\"\n [placeholder]=\"placeholder || ' '\"\n [autoHighlight]=\"true\"\n inputStyleClass=\"mousetrap\"\n >\n <ng-template let-item pTemplate=\"selectedItem\">\n <span class=\"ui-autocomplete-token-label ng-tns-c65-43 ng-star-inserted\" \n [pTooltip]=\"lookupDisplayFieldTooltip ? item[lookupDisplayField] : null\" \n tooltipPosition=\"top\">\n {{item[lookupDisplayField]}}\n </span>\n </ng-template>\n </p-autoComplete>\n\n <button\n *ngIf=\"showSearch\"\n pButton\n type=\"button\"\n icon=\"fa fa-search\"\n class=\"button-addon\"\n [disabled]=\"disabled\"\n (click)=\"showDialog()\"\n ></button>\n</div>\n\n<p-dialog\n appendTo=\"body\"\n styleClass=\"s-lookup-modal\"\n [header]=\"searchTitle\"\n [(visible)]=\"dialogVisible\"\n [modal]=\"true\"\n (onHide)=\"hideDialog()\"\n [blockScroll]=\"true\"\n [focusOnShow]=\"true\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n #dialog\n>\n <div *ngIf=\"dialogVisible\" class=\"s-lookup-modal-container\">\n <div *ngIf=\"searchFields && searchFields.length\" class=\"filter\"\n [@collapseContent]=\"collapsed ? {value: 'hidden', params: {transitionParams: transitionOptions }} : {value: 'visible', params: {transitionParams: transitionOptions}}\"\n (@collapseContent.done)=\"onToggleDone()\">\n <form [formGroup]=\"formGroupDialog\" novalidate autocomplete=\"off\">\n <div *ngIf=\"!collapsed\"\n [@childCollapseContent]=\"collapsed ? {value: ':leave', params: {transitionParams: transitionOptions }} : {value: ':enter', params: {transitionParams: transitionOptions}}\"\n class=\"form-content\">\n <div class=\"filter-title sds-section-title\">{{ filterTitle }}</div>\n <div class=\"form-fields\">\n <s-dynamic-form [fields]=\"searchFields\" [form]=\"formGroupDialog\"></s-dynamic-form>\n </div>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n [id]=\"id + '-filter-button'\"\n type=\"submit\"\n [label]=\"filterLabel\"\n (onClick)=\"search()\"\n pTooltip=\"(ALT + SHIFT + F)\"\n showDelay=\"500\"\n ></s-button>\n <s-button\n [id]=\"id + '-clear-button'\"\n type=\"button\"\n [label]=\"clearLabel\"\n (onClick)=\"clear()\"\n priority=\"link\"\n pTooltip=\"(ALT + SHIFT + L)\"\n showDelay=\"500\"\n ></s-button>\n </div>\n </div>\n </div>\n </form> \n </div>\n <div *ngIf=\"searchFields && searchFields.length\" class=\"filter-toggle\">\n <div class=\"filter-toggle--start-border-mask\"></div>\n <button [id]=\"id + '-filter-toggle-button'\" type=\"button\" (click)=\"filterToggle()\">\n <span class=\"fa\" [ngClass]=\"{'fa-chevron-left': !collapsed, 'fa-chevron-right': collapsed}\"\n aria-hidden=\"true\"></span>\n </button>\n <div class=\"filter-toggle--end-border-mask\"></div>\n </div>\n <div class=\"content\" [ngClass]=\"{'empty-content': !searchTotalRecords && !loading}\">\n <s-empty-state\n [id]=\"id + '-empty-state'\"\n *ngIf=\"!searchTotalRecords && !loading\"\n [title]=\"searchEmptyTitle\"\n [description]=\"searchEmptyDescription\"\n iconClass=\"fa fa-search\"\n ></s-empty-state>\n\n <p-table\n [dataKey]=\"dataKey\"\n [value]=\"getGridData()\"\n [columns]=\"searchGridFields\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n sortMode=\"multiple\"\n [totalRecords]=\"searchTotalRecords\"\n [rows]=\"10\"\n [selection]=\"selected\"\n (onLazyLoad)=\"lazyLoadGrid($event)\"\n *sLoadingState=\"loading\"\n [multiSortMeta]=\"multiSortMeta\"\n [attr.data-hidden]=\"!searchTotalRecords && !loading\"\n [selectionMode]=\"multiple ? 'multiple' : 'single'\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col *ngIf=\"multiple\" style=\"width: 50px\" />\n <col *ngFor=\"let col of columns\" [style.width]=\"col.width\" />\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngIf=\"multiple\" style=\"width: 50px\">\n <s-table-header-checkbox [useAllObject]=\"lookupRowProps ? false : true\" [rowProps]=\"lookupRowProps\"></s-table-header-checkbox>\n </th>\n <th\n [style.width]=\"col.width\"\n *ngFor=\"let col of columns\"\n [pSortableColumn]=\"col.name\"\n [pSortableColumnDisabled]=\"sortableColumnsDisabled?.includes(col.name)\"\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.label }}</span>\n <p-sortIcon [field]=\"col.name\" *ngIf=\"!sortableColumnsDisabled?.includes(col.name)\"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-columns let-rowIndex=\"rowIndex\">\n <tr\n sNavigation\n [pSelectableRow]=\"rowData\"\n [pSelectableRowIndex]=\"rowIndex\"\n sDoubleClick (onDoubleClick)=\"onTableRowDoubleClick(rowData)\"\n >\n <td *ngIf=\"multiple\" style=\"width: 50px\" tabindex=\"0\">\n <p-tableCheckbox [value]=\"rowData\" [pSelectableRow]=\"rowData\"></p-tableCheckbox>\n </td>\n <td\n [style.width]=\"col['width']\"\n *ngFor=\"let col of searchGridFields\"\n [ngSwitch]=\"col.type\"\n tabindex=\"0\"\n >\n <ng-container *ngSwitchCase=\"'Boolean'\">\n <ng-container *ngIf=\"isBooleanValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getBooleanLabel(rowData, col.name, col.optionsLabel) }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Date'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedDate: col.calendarLocaleOptions?.dateFormat || \"L\" | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'DateTime'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedDate | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Time'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedTime: col.calendarLocaleOptions?.dateFormat || \"LTS\" | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Double'\">\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span> {{ getFieldValue(rowData, col.name) | localizedNumber: getScale(col.scale) | async }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Money'\">\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span> {{ getFieldValue(rowData, col.name) | localizedCurrency | async }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Number'\">\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span> {{ getFieldValue(rowData, col.name) | localizedBignumber: getNumberMaskConfig(col) | async }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Enum'\">\n <ng-container\n *ngIf=\"getLabelForValue(getFieldValue(rowData, col.name), col.options); else emptyTemplate\"\n >\n <span> {{ getLabelForValue(getFieldValue(rowData, col.name), col.options) }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <ng-container *ngIf=\"col.mask && col.mask()\">\n <ng-container *ngIf=\"(isNumber(rowData, col.name) || getFieldValue(rowData, col.name))\">\n <span>{{ getFieldValue(rowData, col.name) | sMaskFormatter: col.mask() }}</span>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!(col.mask && col.mask())\">\n <ng-container *ngIf=\"(isNumber(rowData, col.name) || getFieldValue(rowData, col.name)); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) }}</span>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span [attr.data-hidden]=\"loading\">\n {{\n searchTotalRecordsLabel ||\n searchTotalRecords?.toString() + (searchTotalRecords === 1 ? recordLabel : recordsLabel)\n }}\n </span>\n </ng-template>\n </p-table>\n </div>\n </div>\n\n <p-footer>\n <s-button\n [id]=\"id + '-select-button'\"\n type=\"button\"\n [label]=\"selectLabel\"\n (onClick)=\"select()\"\n pTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\"\n [disabled]=\"!selected?.length\"\n ></s-button>\n <s-button\n [id]=\"id + '-cancel-button'\"\n type=\"button\"\n priority=\"link\"\n [label]=\"cancelLabel\"\n (onClick)=\"hideDialog()\"\n pTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\"\n ></s-button>\n </p-footer>\n</p-dialog>\n\n<ng-template #emptyTemplate>\n <span [ngClass]=\"'sds-empty-value'\">{{ emptyFieldLabel }}</span>\n</ng-template>\n",
|
|
2369
|
+
template: "<div [ngClass]=\"{ inputgroup: showSearch }\">\n <p-autoComplete\n #autocomplete\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [dataKey]=\"dataKey\"\n [multiple]=\"multiple\"\n [inputId]=\"id + '-autocomplete'\"\n [forceSelection]=\"true\"\n [suggestions]=\"getLookupSuggestions()\"\n (completeMethod)=\"lazyLoadLookup($event)\"\n (onSelect)=\"onSelect.next($event)\"\n (onBlur)=\"onBlur.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onUnselect)=\"onUnselect.next($event)\"\n (onClear)=\"onClear.next($event)\"\n (onKeyUp)=\"onKeyUp.next($event)\"\n [field]=\"lookupDisplayField\"\n [emptyMessage]=\"lookupEmptyMessage\"\n [dropdown]=\"!showSearch\"\n [appendTo]=\"lookupAppendTo\"\n [placeholder]=\"placeholder || ' '\"\n [autoHighlight]=\"true\"\n inputStyleClass=\"mousetrap\"\n >\n <ng-template let-item pTemplate=\"selectedItem\">\n <span class=\"ui-autocomplete-token-label ng-tns-c65-43 ng-star-inserted\"\n [pTooltip]=\"lookupDisplayFieldTooltip ? item[lookupDisplayField] : null\"\n tooltipPosition=\"top\">\n {{item[lookupDisplayField]}}\n </span>\n </ng-template>\n </p-autoComplete>\n\n <button\n *ngIf=\"showSearch\"\n pButton\n type=\"button\"\n icon=\"fa fa-search\"\n class=\"button-addon\"\n [disabled]=\"disabled\"\n (click)=\"showDialog()\"\n ></button>\n</div>\n\n<p-dialog\n appendTo=\"body\"\n styleClass=\"s-lookup-modal\"\n [header]=\"searchTitle\"\n [(visible)]=\"dialogVisible\"\n [modal]=\"true\"\n (onHide)=\"hideDialog()\"\n [blockScroll]=\"true\"\n [focusOnShow]=\"true\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n #dialog\n>\n <div *ngIf=\"dialogVisible\" class=\"s-lookup-modal-container\">\n <div *ngIf=\"searchFields && searchFields.length\" class=\"filter\"\n [@collapseContent]=\"collapsed \n ? { value: 'hidden', params: { transitionParams: transitionOptions } }\n : { value: 'visible', params: { transitionParams: transitionOptions } }\"\n (@collapseContent.done)=\"onToggleDone()\">\n <form [formGroup]=\"formGroupDialog\" novalidate autocomplete=\"off\">\n <div *ngIf=\"!collapsed\"\n [@childCollapseContent]=\"collapsed\n ? { value: ':leave', params: { transitionParams: transitionOptions } }\n : { value: ':enter', params: { transitionParams: transitionOptions } }\"\n class=\"form-content\">\n <div class=\"filter-title sds-section-title\">{{ filterTitle }}</div>\n <div class=\"form-fields\">\n <s-dynamic-form [fields]=\"searchFields\" [form]=\"formGroupDialog\"></s-dynamic-form>\n </div>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n [id]=\"id + '-filter-button'\"\n type=\"submit\"\n [label]=\"filterLabel\"\n (onClick)=\"search()\"\n pTooltip=\"(ALT + SHIFT + F)\"\n showDelay=\"500\"\n ></s-button>\n <s-button\n [id]=\"id + '-clear-button'\"\n type=\"button\"\n [label]=\"clearLabel\"\n (onClick)=\"clear()\"\n priority=\"link\"\n pTooltip=\"(ALT + SHIFT + L)\"\n showDelay=\"500\"\n ></s-button>\n </div>\n </div>\n </div>\n </form>\n </div>\n <div *ngIf=\"searchFields && searchFields.length\" class=\"filter-toggle\">\n <div class=\"filter-toggle--start-border-mask\"></div>\n <button [id]=\"id + '-filter-toggle-button'\" type=\"button\" (click)=\"filterToggle()\">\n <span class=\"fa\" [ngClass]=\"{'fa-chevron-left': !collapsed, 'fa-chevron-right': collapsed}\"\n aria-hidden=\"true\"></span>\n </button>\n <div class=\"filter-toggle--end-border-mask\"></div>\n </div>\n <div class=\"content\" [ngClass]=\"{'empty-content': !searchTotalRecords && !loading}\">\n <s-empty-state\n [id]=\"id + '-empty-state'\"\n *ngIf=\"!searchTotalRecords && !loading\"\n [title]=\"searchEmptyTitle\"\n [description]=\"searchEmptyDescription\"\n iconClass=\"fa fa-search\"\n ></s-empty-state>\n\n <p-table\n [dataKey]=\"dataKey\"\n [value]=\"getGridData()\"\n [columns]=\"searchGridFields\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n sortMode=\"multiple\"\n [totalRecords]=\"searchTotalRecords\"\n [rows]=\"10\"\n [selection]=\"selected\"\n (onLazyLoad)=\"lazyLoadGrid($event)\"\n *sLoadingState=\"loading\"\n [multiSortMeta]=\"multiSortMeta\"\n [attr.data-hidden]=\"!searchTotalRecords && !loading\"\n [selectionMode]=\"multiple ? 'multiple' : 'single'\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col *ngIf=\"multiple\" style=\"width: 50px\" />\n <col *ngFor=\"let col of columns\" [style.width]=\"col.width\" />\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngIf=\"multiple\" style=\"width: 50px\">\n <s-table-header-checkbox [useAllObject]=\"lookupRowProps ? false : true\" [rowProps]=\"lookupRowProps\"></s-table-header-checkbox>\n </th>\n <th\n [style.width]=\"col.width\"\n *ngFor=\"let col of columns\"\n [pSortableColumn]=\"col.name\"\n [pSortableColumnDisabled]=\"sortableColumnsDisabled?.includes(col.name)\"\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.label }}</span>\n <p-sortIcon [field]=\"col.name\" *ngIf=\"!sortableColumnsDisabled?.includes(col.name)\"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-columns let-rowIndex=\"rowIndex\">\n <tr\n sNavigation\n [pSelectableRow]=\"rowData\"\n [pSelectableRowIndex]=\"rowIndex\"\n sDoubleClick (onDoubleClick)=\"onTableRowDoubleClick(rowData)\"\n >\n <td *ngIf=\"multiple\" style=\"width: 50px\" tabindex=\"0\">\n <p-tableCheckbox [value]=\"rowData\" [pSelectableRow]=\"rowData\"></p-tableCheckbox>\n </td>\n <td\n [style.width]=\"col['width']\"\n *ngFor=\"let col of searchGridFields\"\n [ngSwitch]=\"col.type\"\n tabindex=\"0\"\n >\n <ng-container *ngSwitchCase=\"'Boolean'\">\n <ng-container *ngIf=\"isBooleanValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getBooleanLabel(rowData, col.name, col.optionsLabel) }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Date'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedDate: col.calendarLocaleOptions?.dateFormat || \"L\" | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'DateTime'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedDate | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'LocalDateTime'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedDate | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Time'\">\n <ng-container *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) | localizedTime: col.calendarLocaleOptions?.dateFormat || \"LTS\" | async }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Double'\">\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span> {{ getFieldValue(rowData, col.name) | localizedNumber: getScale(col.scale) | async }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Money'\">\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span> {{ getFieldValue(rowData, col.name) | localizedCurrency | async }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Number'\">\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span> {{ getFieldValue(rowData, col.name) | localizedBignumber: getNumberMaskConfig(col) | async }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Enum'\">\n <ng-container\n *ngIf=\"getLabelForValue(getFieldValue(rowData, col.name), col.options); else emptyTemplate\"\n >\n <span> {{ getLabelForValue(getFieldValue(rowData, col.name), col.options) }} </span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <ng-container *ngIf=\"col.mask && col.mask()\">\n <ng-container *ngIf=\"(isNumber(rowData, col.name) || getFieldValue(rowData, col.name))\">\n <span>{{ getFieldValue(rowData, col.name) | sMaskFormatter: col.mask() }}</span>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!(col.mask && col.mask())\">\n <ng-container *ngIf=\"(isNumber(rowData, col.name) || getFieldValue(rowData, col.name)); else emptyTemplate\">\n <span>{{ getFieldValue(rowData, col.name) }}</span>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span [attr.data-hidden]=\"loading\">\n {{\n searchTotalRecordsLabel ||\n searchTotalRecords?.toString() + (searchTotalRecords === 1 ? recordLabel : recordsLabel)\n }}\n </span>\n </ng-template>\n </p-table>\n </div>\n </div>\n\n <p-footer>\n <s-button\n [id]=\"id + '-select-button'\"\n type=\"button\"\n [label]=\"selectLabel\"\n (onClick)=\"select()\"\n pTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\"\n [disabled]=\"!selected?.length\"\n ></s-button>\n <s-button\n [id]=\"id + '-cancel-button'\"\n type=\"button\"\n priority=\"link\"\n [label]=\"cancelLabel\"\n (onClick)=\"hideDialog()\"\n pTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\"\n ></s-button>\n </p-footer>\n</p-dialog>\n\n<ng-template #emptyTemplate>\n <span [ngClass]=\"'sds-empty-value'\">{{ emptyFieldLabel }}</span>\n</ng-template>\n",
|
|
2314
2370
|
providers: [
|
|
2315
2371
|
{
|
|
2316
2372
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -2366,6 +2422,7 @@ var DynamicType;
|
|
|
2366
2422
|
DynamicType["Chips"] = "Chips";
|
|
2367
2423
|
DynamicType["Date"] = "Date";
|
|
2368
2424
|
DynamicType["DateTime"] = "DateTime";
|
|
2425
|
+
DynamicType["LocalDateTime"] = "LocalDateTime";
|
|
2369
2426
|
DynamicType["Double"] = "Double";
|
|
2370
2427
|
DynamicType["Enum"] = "Enum";
|
|
2371
2428
|
DynamicType["Fieldset"] = "Fieldset";
|
|
@@ -2436,6 +2493,7 @@ var DynamicConfig = /** @class */ (function () {
|
|
|
2436
2493
|
return new ChipsField(config);
|
|
2437
2494
|
case DynamicType.Date:
|
|
2438
2495
|
case DynamicType.DateTime:
|
|
2496
|
+
case DynamicType.LocalDateTime:
|
|
2439
2497
|
case DynamicType.Time:
|
|
2440
2498
|
return new CalendarField(config);
|
|
2441
2499
|
case DynamicType.Double:
|
|
@@ -4940,6 +4998,10 @@ var DynamicField = /** @class */ (function (_super) {
|
|
|
4940
4998
|
component.instance.showTime = true;
|
|
4941
4999
|
component.instance.showSeconds = true;
|
|
4942
5000
|
break;
|
|
5001
|
+
case FieldType.LocalDateTime:
|
|
5002
|
+
component.instance.showTime = true;
|
|
5003
|
+
component.instance.showSeconds = true;
|
|
5004
|
+
break;
|
|
4943
5005
|
case FieldType.Time:
|
|
4944
5006
|
component.instance.timeOnly = true;
|
|
4945
5007
|
component.instance.showSeconds = true;
|
|
@@ -4964,6 +5026,7 @@ var DynamicField = /** @class */ (function (_super) {
|
|
|
4964
5026
|
return ChipsFieldComponent;
|
|
4965
5027
|
case FieldType.Date:
|
|
4966
5028
|
case FieldType.DateTime:
|
|
5029
|
+
case FieldType.LocalDateTime:
|
|
4967
5030
|
case FieldType.Time:
|
|
4968
5031
|
return CalendarFieldComponent;
|
|
4969
5032
|
case FieldType.Double:
|
|
@@ -5366,6 +5429,7 @@ var CustomFieldType;
|
|
|
5366
5429
|
CustomFieldType["Double"] = "Double";
|
|
5367
5430
|
CustomFieldType["Date"] = "Date";
|
|
5368
5431
|
CustomFieldType["DateTime"] = "DateTime";
|
|
5432
|
+
CustomFieldType["LocalDateTime"] = "LocalDateTime";
|
|
5369
5433
|
CustomFieldType["Time"] = "Time";
|
|
5370
5434
|
CustomFieldType["Money"] = "Money";
|
|
5371
5435
|
CustomFieldType["Blob"] = "Blob";
|
|
@@ -5442,6 +5506,7 @@ var CustomFieldsComponent = /** @class */ (function () {
|
|
|
5442
5506
|
defaults[CustomFieldType.Money] = {};
|
|
5443
5507
|
defaults[CustomFieldType.Date] = {};
|
|
5444
5508
|
defaults[CustomFieldType.DateTime] = {};
|
|
5509
|
+
defaults[CustomFieldType.LocalDateTime] = {};
|
|
5445
5510
|
defaults[CustomFieldType.Time] = {};
|
|
5446
5511
|
defaults[CustomFieldType.Blob] = {};
|
|
5447
5512
|
defaults[CustomFieldType.Enum] = {};
|
|
@@ -5465,6 +5530,7 @@ var CustomFieldsComponent = /** @class */ (function () {
|
|
|
5465
5530
|
CustomFieldType.Money,
|
|
5466
5531
|
CustomFieldType.Date,
|
|
5467
5532
|
CustomFieldType.DateTime,
|
|
5533
|
+
CustomFieldType.LocalDateTime,
|
|
5468
5534
|
CustomFieldType.Time
|
|
5469
5535
|
];
|
|
5470
5536
|
var validators = [];
|
|
@@ -5535,6 +5601,9 @@ var CustomFieldsComponent = /** @class */ (function () {
|
|
|
5535
5601
|
case FieldType.DateTime:
|
|
5536
5602
|
parsedValues[name] = moment$3(value).toDate();
|
|
5537
5603
|
break;
|
|
5604
|
+
case FieldType.LocalDateTime:
|
|
5605
|
+
parsedValues[name] = moment$3(value, "YYYY-MM-DD[T]HH:mm:ss.SSS").toDate();
|
|
5606
|
+
break;
|
|
5538
5607
|
case FieldType.Time:
|
|
5539
5608
|
parsedValues[name] = moment$3(value, "HH:mm:ss").toDate();
|
|
5540
5609
|
break;
|
|
@@ -5574,6 +5643,9 @@ var CustomFieldsComponent = /** @class */ (function () {
|
|
|
5574
5643
|
case FieldType.DateTime:
|
|
5575
5644
|
value = moment$3(value).format();
|
|
5576
5645
|
break;
|
|
5646
|
+
case FieldType.LocalDateTime:
|
|
5647
|
+
value = moment$3(value).format("YYYY-MM-DD[T]HH:mm:ss.SSS");
|
|
5648
|
+
break;
|
|
5577
5649
|
case FieldType.Time:
|
|
5578
5650
|
value = moment$3(value).format("HH:mm:ss");
|
|
5579
5651
|
break;
|
|
@@ -7714,6 +7786,8 @@ var MetaType;
|
|
|
7714
7786
|
MetaType["DATE"] = "DATE";
|
|
7715
7787
|
// DateTime
|
|
7716
7788
|
MetaType["DATETIME"] = "DATETIME";
|
|
7789
|
+
// DateTime
|
|
7790
|
+
MetaType["LOCALDATETIME"] = "LOCALDATETIME";
|
|
7717
7791
|
// Time
|
|
7718
7792
|
MetaType["TIME"] = "TIME";
|
|
7719
7793
|
// Boolean
|