@idevs/corelib 0.0.58 → 0.0.60
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/dist/globals/index.d.ts
CHANGED
|
@@ -56,9 +56,10 @@ export declare function updateDateQuickFilterProxyValue(name: string, dateValue:
|
|
|
56
56
|
export declare function toSqlDateString(date: Date): string;
|
|
57
57
|
export declare enum AggregateType {
|
|
58
58
|
LABEL = 0,
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
GROUP = 1,
|
|
60
|
+
AVERAGE = 2,
|
|
61
|
+
COUNT = 3,
|
|
62
|
+
SUM = 4
|
|
62
63
|
}
|
|
63
64
|
export type AggreateColumn = {
|
|
64
65
|
title?: string;
|
package/dist/globals/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isEmptyOrNull } from '@serenity-is/corelib/q';
|
|
2
|
+
import { Modal } from 'bootstrap';
|
|
2
3
|
Date.prototype.toSqlDate = function () {
|
|
3
4
|
const date = this.valueOf();
|
|
4
5
|
return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString();
|
|
@@ -212,7 +213,7 @@ export function addDateQuickFilterProxy(name, width) {
|
|
|
212
213
|
*/
|
|
213
214
|
export function updateDateQuickFilterProxyValue(name, dateValue, locale) {
|
|
214
215
|
const target = document.querySelector(`#${name}-2`);
|
|
215
|
-
target.value = new Date(dateValue).toLocaleString(locale, dateStringOption());
|
|
216
|
+
target.value = isEmptyOrNull(dateValue) ? '' : new Date(dateValue).toLocaleString(locale, dateStringOption());
|
|
216
217
|
}
|
|
217
218
|
export function toSqlDateString(date) {
|
|
218
219
|
const offset = date.getTimezoneOffset();
|
|
@@ -222,9 +223,10 @@ export function toSqlDateString(date) {
|
|
|
222
223
|
export var AggregateType;
|
|
223
224
|
(function (AggregateType) {
|
|
224
225
|
AggregateType[AggregateType["LABEL"] = 0] = "LABEL";
|
|
225
|
-
AggregateType[AggregateType["
|
|
226
|
-
AggregateType[AggregateType["
|
|
227
|
-
AggregateType[AggregateType["
|
|
226
|
+
AggregateType[AggregateType["GROUP"] = 1] = "GROUP";
|
|
227
|
+
AggregateType[AggregateType["AVERAGE"] = 2] = "AVERAGE";
|
|
228
|
+
AggregateType[AggregateType["COUNT"] = 3] = "COUNT";
|
|
229
|
+
AggregateType[AggregateType["SUM"] = 4] = "SUM";
|
|
228
230
|
})(AggregateType || (AggregateType = {}));
|
|
229
231
|
export function createExportToolButton(options) {
|
|
230
232
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/globals/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataGrid, ListRequest, ToolButton } from '@serenity-is/corelib'\nimport { Modal } from 'bootstrap'\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/consistent-type-definitions\n interface Number {\n toDecimal(precision?: number): string\n toTimeString(): string\n }\n\n // eslint-disable-next-line @typescript-eslint/consistent-type-definitions\n interface String {\n truncate(maxLength?: number): string\n toNumber(): number\n toMethodRound(method?: number): number\n }\n\n // eslint-disable-next-line @typescript-eslint/consistent-type-definitions\n interface Date {\n toSqlDate(): string\n toNumber(): number\n }\n\n type IModalOptions = {\n events?: IEvent[]\n }\n\n type IEvent = {\n event: string\n callback: (e: Event) => Promise<unknown>\n }\n}\n\nDate.prototype.toSqlDate = function (): string {\n const date = this.valueOf()\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString()\n}\n\nDate.prototype.toNumber = function (): number {\n const date = this.valueOf()\n const hours = date.getHours()\n const minutes = date.getMinutes()\n const seconds = date.getSeconds()\n return hours * 60 + minutes + seconds / 60\n}\n\nNumber.prototype.toTimeString = function (): string {\n const value = this.valueOf()\n const hours = `0${Math.floor(value / 60)}`.slice(-2)\n const minutes = `0${value % 60}`.slice(-2)\n return `${hours}:${minutes}`\n}\n\nNumber.prototype.toDecimal = function (precision?: number): string {\n const numb = precision || 0\n const options = {\n style: 'decimal',\n minimumFractionDigits: numb,\n maximumFractionDigits: numb,\n }\n let value = Intl.NumberFormat('en-US', options).format(this.valueOf())\n value = parseFloat(value.replace(/,/g, '')).toString()\n return Intl.NumberFormat('en-US', options).format(parseFloat(value))\n}\n\nString.prototype.truncate = function (maxLength: number) {\n const str = String(this)\n return str.length > maxLength ? str.substring(0, maxLength - 1) + '…' : str\n}\n\nString.prototype.toNumber = function () {\n return this.valueOf() ? parseFloat(this.valueOf().replace(/,/g, '')) : 0\n}\n\nString.prototype.toMethodRound = function (method: number): number {\n const input = parseFloat(this.valueOf())\n let value = isNaN(input) ? 0 : input\n if (value == 0) return 0\n\n const r = parseFloat(value.toFixed(2))\n switch (method) {\n case 1:\n value = r - (parseFloat(((r % 1) * 100).toFixed(2)) % 25) / 100\n break\n\n case 2:\n value = r - (parseFloat(((r % 1) * 100).toFixed(2)) % 50) / 100\n break\n\n case 3:\n value = Math.floor(r)\n break\n\n case 4:\n value = Math.floor(r) + (Math.floor((r % 1) * 100) + (25 - (Math.floor((r % 1) * 100) % 25))) / 100\n break\n\n case 5:\n value = Math.floor(r) + (Math.floor((r % 1) * 100) + (50 - (Math.floor((r % 1) * 100) % 50))) / 100\n break\n\n case 6:\n value = Math.ceil(r)\n break\n\n case 7:\n value = Math.floor(r) + (parseFloat((parseFloat(((r % 1) * 100).toString()) / 25).toFixed(0)) * 25) / 100\n break\n\n case 8:\n value = Math.floor(r) + (parseFloat((parseFloat(((r % 1) * 100).toString()) / 50).toFixed(0)) * 50) / 100\n break\n\n case 9:\n value = parseFloat(r.toFixed(0))\n break\n\n default:\n value = r\n break\n }\n\n return value\n}\n\nexport function ToTimeString(value: number): string {\n const hours = `0${Math.floor(value / 60)}`.slice(-2)\n const minutes = `0${value % 60}`.slice(-2)\n return `${hours}:${minutes}`\n}\n\nexport function ToNumber(date: Date): number {\n const hours = date.getHours()\n const minutes = date.getMinutes()\n const seconds = date.getSeconds()\n return hours * 60 + minutes * 60 + seconds\n}\n\nexport function GetElementWidth(element?: HTMLElement): number {\n if (element) {\n return element.clientWidth\n }\n\n return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth\n}\n\nexport function GetElementHeight(element?: HTMLElement): number {\n if (element) {\n return element.clientHeight\n }\n\n return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight\n}\n\nexport function RemoveChildren(parent?: HTMLElement): void {\n if (!parent) {\n return\n }\n\n while (parent.firstChild) {\n parent.removeChild(parent.firstChild)\n }\n}\n\nexport function IsOverflow(el: HTMLElement): boolean {\n return el.scrollHeight > el.clientHeight || el.scrollWidth > el.clientWidth\n}\n\nexport function IsOverflowY(el: HTMLElement): boolean {\n return el.scrollHeight > el.clientHeight\n}\n\nexport function IsOverflowX(el: HTMLElement): boolean {\n return el.scrollWidth > el.clientWidth\n}\n\nexport function InnerDimensions(el: HTMLElement | null): [number, number] {\n if (!el) {\n return [0, 0]\n }\n\n const style = getComputedStyle(el)\n let width = el.clientWidth\n let height = el.clientHeight\n\n height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom)\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight)\n\n return [height, width]\n}\n\nexport function neededTarget(el: HTMLElement, target: string): HTMLElement {\n if (target.slice(0, 1) == '.') {\n if (el.classList.contains(target.slice(1)) === false) {\n el = el.closest(target) as HTMLElement\n }\n } else {\n if (el.tagName.toLowerCase() !== target.toLowerCase()) {\n el = el.closest(target) as HTMLElement\n }\n }\n return el\n}\n\nexport function dateStringOption(): Intl.DateTimeFormatOptions {\n return {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n }\n}\n\nexport function toDateString(date: Date): string {\n return date.toLocaleString('en-GB', dateStringOption())\n}\n\nexport function GetModal(name: string, options?: IModalOptions): Modal {\n const el = document.querySelector(name) as HTMLElement\n if (options?.events?.length) {\n options.events.forEach(callback => {\n el.addEventListener(\n callback.event,\n (e: Event) => {\n callback.callback(e)\n },\n { once: true },\n )\n })\n }\n\n return Modal.getOrCreateInstance(el, { backdrop: 'static' })\n}\n\nexport const setCookie = (name: string, value: string, expires?: number): void => {\n let cookie = `${name}=${value}`\n if (expires) {\n const date = new Date()\n date.setTime(date.getTime() + expires * 24 * 60 * 60 * 1000)\n const exp = `expires=${date.toUTCString()}`\n cookie = `${cookie}; ${exp}`\n }\n document.cookie = `${cookie}; path=/`\n}\n\nexport function doProxyInput(name: string): HTMLInputElement {\n const input: HTMLInputElement = document.querySelector(`input[name=\"${name}\"]`)\n const cloneInput: HTMLInputElement = input.cloneNode(true) as HTMLInputElement\n cloneInput.setAttribute('name', `${name}-2`)\n cloneInput.setAttribute('id', `${input.getAttribute('id')}-2`)\n cloneInput.classList.remove('customValidate')\n cloneInput.classList.remove('dateQ')\n\n input.parentNode.insertBefore(cloneInput, input.nextSibling)\n input.classList.add('d-none')\n\n return cloneInput\n}\n\n/**\n * addDateQuickFilterProxy\n *\n * @export\n * @param {string} name\n * @param {number} width\n */\nexport function addDateQuickFilterProxy(name: string, width: number): void {\n const input: HTMLInputElement = document.querySelector(`input[name=\"${name}\"]`)\n const cloneInput: HTMLInputElement = input.cloneNode(true) as HTMLInputElement\n cloneInput.setAttribute('name', `${name}-2`)\n cloneInput.setAttribute('id', `${input.getAttribute('id')}-2`)\n cloneInput.setAttribute('readonly', 'readonly')\n cloneInput.classList.remove('customValidate')\n cloneInput.classList.remove('s-DateEditor')\n cloneInput.classList.remove('s-Serenity-DateEditor')\n cloneInput.classList.remove('dateQ')\n cloneInput.classList.remove('hasDatepicker')\n cloneInput.style.width = `${width}px`\n\n input.parentNode.insertBefore(cloneInput, input.nextSibling)\n input.classList.add('d-none')\n}\n\n/**\n * updateDateQuickFilterProxyValue\n *\n * @export\n * @param {string} name of source element\n * @param {string} locale\n */\nexport function updateDateQuickFilterProxyValue(name: string, dateValue: string, locale: string): void {\n const target = document.querySelector(`#${name}-2`) as HTMLInputElement\n target.value = new Date(dateValue).toLocaleString(locale, dateStringOption())\n}\n\nexport function toSqlDateString(date: Date): string {\n const offset = date.getTimezoneOffset()\n date = new Date(date.getTime() - offset * 60 * 1000)\n return date.toISOString().split('T')[0]\n}\n\nexport enum AggregateType {\n LABEL = 0,\n AVERAGE = 1,\n COUNT = 2,\n SUM = 3,\n}\n\nexport type AggreateColumn = {\n title?: string\n columnName?: string\n aggregateType: AggregateType\n}\n\nexport type IdevsExportRequest = ListRequest & {\n viewName?: string\n companyName?: string\n reportName?: string\n selectionRange?: string\n logo?: string\n entity?: unknown\n aggregateColumns?: AggreateColumn[]\n}\n\nexport type IdevsExportOptions = IdevsExportRequest & {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n grid: DataGrid<any, any>\n service: string\n}\n\nexport type ExportOptions = IdevsExportOptions & {\n title?: string\n hint?: string\n separator?: boolean\n exportType: 'PDF' | 'XLSX'\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onClick?: (e: any) => void\n}\n\nexport function createExportToolButton(options: ExportOptions): ToolButton {\n return {\n hint: options.hint || options.exportType,\n title: options.title || '',\n cssClass: `export-${options.exportType.toLowerCase()}-button`,\n onClick: options.onClick,\n separator: options.separator,\n }\n}\n\nexport class globals {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n public static load() { }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/globals/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataGrid, ListRequest, ToolButton } from '@serenity-is/corelib'\nimport { isEmptyOrNull } from '@serenity-is/corelib/q'\nimport { Modal } from 'bootstrap'\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/consistent-type-definitions\n interface Number {\n toDecimal(precision?: number): string\n toTimeString(): string\n }\n\n // eslint-disable-next-line @typescript-eslint/consistent-type-definitions\n interface String {\n truncate(maxLength?: number): string\n toNumber(): number\n toMethodRound(method?: number): number\n }\n\n // eslint-disable-next-line @typescript-eslint/consistent-type-definitions\n interface Date {\n toSqlDate(): string\n toNumber(): number\n }\n\n type IModalOptions = {\n events?: IEvent[]\n }\n\n type IEvent = {\n event: string\n callback: (e: Event) => Promise<unknown>\n }\n}\n\nDate.prototype.toSqlDate = function (): string {\n const date = this.valueOf()\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString()\n}\n\nDate.prototype.toNumber = function (): number {\n const date = this.valueOf()\n const hours = date.getHours()\n const minutes = date.getMinutes()\n const seconds = date.getSeconds()\n return hours * 60 + minutes + seconds / 60\n}\n\nNumber.prototype.toTimeString = function (): string {\n const value = this.valueOf()\n const hours = `0${Math.floor(value / 60)}`.slice(-2)\n const minutes = `0${value % 60}`.slice(-2)\n return `${hours}:${minutes}`\n}\n\nNumber.prototype.toDecimal = function (precision?: number): string {\n const numb = precision || 0\n const options = {\n style: 'decimal',\n minimumFractionDigits: numb,\n maximumFractionDigits: numb,\n }\n let value = Intl.NumberFormat('en-US', options).format(this.valueOf())\n value = parseFloat(value.replace(/,/g, '')).toString()\n return Intl.NumberFormat('en-US', options).format(parseFloat(value))\n}\n\nString.prototype.truncate = function (maxLength: number) {\n const str = String(this)\n return str.length > maxLength ? str.substring(0, maxLength - 1) + '…' : str\n}\n\nString.prototype.toNumber = function () {\n return this.valueOf() ? parseFloat(this.valueOf().replace(/,/g, '')) : 0\n}\n\nString.prototype.toMethodRound = function (method: number): number {\n const input = parseFloat(this.valueOf())\n let value = isNaN(input) ? 0 : input\n if (value == 0) return 0\n\n const r = parseFloat(value.toFixed(2))\n switch (method) {\n case 1:\n value = r - (parseFloat(((r % 1) * 100).toFixed(2)) % 25) / 100\n break\n\n case 2:\n value = r - (parseFloat(((r % 1) * 100).toFixed(2)) % 50) / 100\n break\n\n case 3:\n value = Math.floor(r)\n break\n\n case 4:\n value = Math.floor(r) + (Math.floor((r % 1) * 100) + (25 - (Math.floor((r % 1) * 100) % 25))) / 100\n break\n\n case 5:\n value = Math.floor(r) + (Math.floor((r % 1) * 100) + (50 - (Math.floor((r % 1) * 100) % 50))) / 100\n break\n\n case 6:\n value = Math.ceil(r)\n break\n\n case 7:\n value = Math.floor(r) + (parseFloat((parseFloat(((r % 1) * 100).toString()) / 25).toFixed(0)) * 25) / 100\n break\n\n case 8:\n value = Math.floor(r) + (parseFloat((parseFloat(((r % 1) * 100).toString()) / 50).toFixed(0)) * 50) / 100\n break\n\n case 9:\n value = parseFloat(r.toFixed(0))\n break\n\n default:\n value = r\n break\n }\n\n return value\n}\n\nexport function ToTimeString(value: number): string {\n const hours = `0${Math.floor(value / 60)}`.slice(-2)\n const minutes = `0${value % 60}`.slice(-2)\n return `${hours}:${minutes}`\n}\n\nexport function ToNumber(date: Date): number {\n const hours = date.getHours()\n const minutes = date.getMinutes()\n const seconds = date.getSeconds()\n return hours * 60 + minutes * 60 + seconds\n}\n\nexport function GetElementWidth(element?: HTMLElement): number {\n if (element) {\n return element.clientWidth\n }\n\n return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth\n}\n\nexport function GetElementHeight(element?: HTMLElement): number {\n if (element) {\n return element.clientHeight\n }\n\n return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight\n}\n\nexport function RemoveChildren(parent?: HTMLElement): void {\n if (!parent) {\n return\n }\n\n while (parent.firstChild) {\n parent.removeChild(parent.firstChild)\n }\n}\n\nexport function IsOverflow(el: HTMLElement): boolean {\n return el.scrollHeight > el.clientHeight || el.scrollWidth > el.clientWidth\n}\n\nexport function IsOverflowY(el: HTMLElement): boolean {\n return el.scrollHeight > el.clientHeight\n}\n\nexport function IsOverflowX(el: HTMLElement): boolean {\n return el.scrollWidth > el.clientWidth\n}\n\nexport function InnerDimensions(el: HTMLElement | null): [number, number] {\n if (!el) {\n return [0, 0]\n }\n\n const style = getComputedStyle(el)\n let width = el.clientWidth\n let height = el.clientHeight\n\n height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom)\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight)\n\n return [height, width]\n}\n\nexport function neededTarget(el: HTMLElement, target: string): HTMLElement {\n if (target.slice(0, 1) == '.') {\n if (el.classList.contains(target.slice(1)) === false) {\n el = el.closest(target) as HTMLElement\n }\n } else {\n if (el.tagName.toLowerCase() !== target.toLowerCase()) {\n el = el.closest(target) as HTMLElement\n }\n }\n return el\n}\n\nexport function dateStringOption(): Intl.DateTimeFormatOptions {\n return {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n }\n}\n\nexport function toDateString(date: Date): string {\n return date.toLocaleString('en-GB', dateStringOption())\n}\n\nexport function GetModal(name: string, options?: IModalOptions): Modal {\n const el = document.querySelector(name) as HTMLElement\n if (options?.events?.length) {\n options.events.forEach(callback => {\n el.addEventListener(\n callback.event,\n (e: Event) => {\n callback.callback(e)\n },\n { once: true },\n )\n })\n }\n\n return Modal.getOrCreateInstance(el, { backdrop: 'static' })\n}\n\nexport const setCookie = (name: string, value: string, expires?: number): void => {\n let cookie = `${name}=${value}`\n if (expires) {\n const date = new Date()\n date.setTime(date.getTime() + expires * 24 * 60 * 60 * 1000)\n const exp = `expires=${date.toUTCString()}`\n cookie = `${cookie}; ${exp}`\n }\n document.cookie = `${cookie}; path=/`\n}\n\nexport function doProxyInput(name: string): HTMLInputElement {\n const input: HTMLInputElement = document.querySelector(`input[name=\"${name}\"]`)\n const cloneInput: HTMLInputElement = input.cloneNode(true) as HTMLInputElement\n cloneInput.setAttribute('name', `${name}-2`)\n cloneInput.setAttribute('id', `${input.getAttribute('id')}-2`)\n cloneInput.classList.remove('customValidate')\n cloneInput.classList.remove('dateQ')\n\n input.parentNode.insertBefore(cloneInput, input.nextSibling)\n input.classList.add('d-none')\n\n return cloneInput\n}\n\n/**\n * addDateQuickFilterProxy\n *\n * @export\n * @param {string} name\n * @param {number} width\n */\nexport function addDateQuickFilterProxy(name: string, width: number): void {\n const input: HTMLInputElement = document.querySelector(`input[name=\"${name}\"]`)\n const cloneInput: HTMLInputElement = input.cloneNode(true) as HTMLInputElement\n cloneInput.setAttribute('name', `${name}-2`)\n cloneInput.setAttribute('id', `${input.getAttribute('id')}-2`)\n cloneInput.setAttribute('readonly', 'readonly')\n cloneInput.classList.remove('customValidate')\n cloneInput.classList.remove('s-DateEditor')\n cloneInput.classList.remove('s-Serenity-DateEditor')\n cloneInput.classList.remove('dateQ')\n cloneInput.classList.remove('hasDatepicker')\n cloneInput.style.width = `${width}px`\n\n input.parentNode.insertBefore(cloneInput, input.nextSibling)\n input.classList.add('d-none')\n}\n\n/**\n * updateDateQuickFilterProxyValue\n *\n * @export\n * @param {string} name of source element\n * @param {string} locale\n */\nexport function updateDateQuickFilterProxyValue(name: string, dateValue: string, locale: string): void {\n const target = document.querySelector(`#${name}-2`) as HTMLInputElement\n target.value = isEmptyOrNull(dateValue) ? '' : new Date(dateValue).toLocaleString(locale, dateStringOption())\n}\n\nexport function toSqlDateString(date: Date): string {\n const offset = date.getTimezoneOffset()\n date = new Date(date.getTime() - offset * 60 * 1000)\n return date.toISOString().split('T')[0]\n}\n\nexport enum AggregateType {\n LABEL = 0,\n GROUP = 1,\n AVERAGE = 2,\n COUNT = 3,\n SUM = 4,\n}\n\nexport type AggreateColumn = {\n title?: string\n columnName?: string\n aggregateType: AggregateType\n}\n\nexport type IdevsExportRequest = ListRequest & {\n viewName?: string\n companyName?: string\n reportName?: string\n selectionRange?: string\n logo?: string\n entity?: unknown\n aggregateColumns?: AggreateColumn[]\n}\n\nexport type IdevsExportOptions = IdevsExportRequest & {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n grid: DataGrid<any, any>\n service: string\n}\n\nexport type ExportOptions = IdevsExportOptions & {\n title?: string\n hint?: string\n separator?: boolean\n exportType: 'PDF' | 'XLSX'\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onClick?: (e: any) => void\n}\n\nexport function createExportToolButton(options: ExportOptions): ToolButton {\n return {\n hint: options.hint || options.exportType,\n title: options.title || '',\n cssClass: `export-${options.exportType.toLowerCase()}-button`,\n onClick: options.onClick,\n separator: options.separator,\n }\n}\n\nexport class globals {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n public static load() { }\n}\n"]}
|
package/package.json
CHANGED
package/src/globals/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DataGrid, ListRequest, ToolButton } from '@serenity-is/corelib'
|
|
2
|
+
import { isEmptyOrNull } from '@serenity-is/corelib/q'
|
|
2
3
|
import { Modal } from 'bootstrap'
|
|
3
4
|
|
|
4
5
|
declare global {
|
|
@@ -289,7 +290,7 @@ export function addDateQuickFilterProxy(name: string, width: number): void {
|
|
|
289
290
|
*/
|
|
290
291
|
export function updateDateQuickFilterProxyValue(name: string, dateValue: string, locale: string): void {
|
|
291
292
|
const target = document.querySelector(`#${name}-2`) as HTMLInputElement
|
|
292
|
-
target.value = new Date(dateValue).toLocaleString(locale, dateStringOption())
|
|
293
|
+
target.value = isEmptyOrNull(dateValue) ? '' : new Date(dateValue).toLocaleString(locale, dateStringOption())
|
|
293
294
|
}
|
|
294
295
|
|
|
295
296
|
export function toSqlDateString(date: Date): string {
|
|
@@ -300,9 +301,10 @@ export function toSqlDateString(date: Date): string {
|
|
|
300
301
|
|
|
301
302
|
export enum AggregateType {
|
|
302
303
|
LABEL = 0,
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
304
|
+
GROUP = 1,
|
|
305
|
+
AVERAGE = 2,
|
|
306
|
+
COUNT = 3,
|
|
307
|
+
SUM = 4,
|
|
306
308
|
}
|
|
307
309
|
|
|
308
310
|
export type AggreateColumn = {
|